nRF52840 I2C Stops Working

Hi,

I have been using I2C code for almost a year to talk to a variety of sensors with complete success. Typically, we have used a Nordic BL654 module that includes an nRF52840. Recently we replaced this module with a nRF52840 chip. I2C and other usage remained identical. We built 30 boards. On approx 5 of these boards, I2C worked and then stopped working. Sometimes a power cycle recovers I2C support for a while before it fails again and sometimes it does not (I2C stays broken). Putting a scope on the SCL and SDA pins shows DC 300 mV and 3.3 Vdc on each of these pins respectively when I cycle through I2C reads and writes that work on other boards just fine. In code, TWI timeouts occur. My hardware engineer suggests that the chip is the issue. Note that it still runs code and its other interfaces seem to work fine. 

Also important - we purchased the 52840 chips through the grey market. Welcome to 2022.... sigh. I have included a pic showing the chip numbers below:

Could this chip be an eng sample or pre-release on which this kind of issue may be expected? Is there any version of the 52840 that exhibited this kind of behavior?

Thanks in advance.

Regards,

Mark J

Parents
  • Hi Mark

    If all your nRF53840 chips are marked with the QIAAD0, that points to them being production revision 2, and are not engineering or pre-release samples. See the SoC revisions and variants for information if you have chips with other markings. I assume the other 25 boards are working as intended?

    The only erratum and known issue in this revision with the I2C is erratum 219. This should only be an issue if you're using the TWIM at 400kHz though. I discussed this with some colleagues, and the initial guess would point to there being a soldering or mechanical error with these SoCs. If you'd like we can do a hardware review of the schematics and PCB design for you if you upload the files here to make sure that everything looks okay. I can set the case to private mode if you don't want to share the schematics/PCB layout publicly. One common issue is that external crystal oscillators may be mounted on the wrong way, or missing/bad components. I'd recommend you double and triple check the soldering on the malfunctioning boards. 

    Another thing you could do if you have the opportunity is to take an X-Ray of the SoCs, as since they're from the "grey market" as you say, we can't guarantee that these are production tested and verified SoCs. And would need an X-Ray to determine that these are actually functional and working nRF52840 SoCs. This isn't too likely though.

    Best regards,

    Simon

Reply
  • Hi Mark

    If all your nRF53840 chips are marked with the QIAAD0, that points to them being production revision 2, and are not engineering or pre-release samples. See the SoC revisions and variants for information if you have chips with other markings. I assume the other 25 boards are working as intended?

    The only erratum and known issue in this revision with the I2C is erratum 219. This should only be an issue if you're using the TWIM at 400kHz though. I discussed this with some colleagues, and the initial guess would point to there being a soldering or mechanical error with these SoCs. If you'd like we can do a hardware review of the schematics and PCB design for you if you upload the files here to make sure that everything looks okay. I can set the case to private mode if you don't want to share the schematics/PCB layout publicly. One common issue is that external crystal oscillators may be mounted on the wrong way, or missing/bad components. I'd recommend you double and triple check the soldering on the malfunctioning boards. 

    Another thing you could do if you have the opportunity is to take an X-Ray of the SoCs, as since they're from the "grey market" as you say, we can't guarantee that these are production tested and verified SoCs. And would need an X-Ray to determine that these are actually functional and working nRF52840 SoCs. This isn't too likely though.

    Best regards,

    Simon

Children
  • Please note that all the boards worked at one point, and then some stopped working.  It would be odd for the issue to be soldering:  all the non-working boards would have the same soldering issue that shows up after a while for just the two I2C lines - all other functionality on the board still works. Also, if there were a soldering or SoC quality or design issue, we would expect more than just I2C to fail. All other board functions still seem fine.

Related