VDD and VDIO power on sequence

I have a BMP183 chip, in the form of a breakout board, that every so often powers up in what appears to be a "stuck" mode. The pressure and temperature reported by the library are incorrect and unchanging. When this happens the other SPI devices in the system function correctly. Everything else seems fine. A reset fixes it, so it's a minor annoyance only.

Looking at the datasheet for the chip it states:

"The preferred power on sequence is VDD first. Even though VDDIO can be powered on before VDD, there is a chance of excessive power consumption (a few mA) if this sequence is used, and the state of the output pins is undefined so that the bus can be locked. Therefore, VDD must be powered before VDDIO unless the limitations above are understood and not critical."

The breakout board has a 3.3V regulator and feeds both VDD and VDIO (tied together) so I have no easy way to test to see if this is the problem. I'm not sure how I would do it anyway.

How would one arrange a power up sequence for VDD and VDDIO?

I never saw this happen when I was testing the breakout board by itself, or even in the initial form of the project. It appeared more recently with an addition of another sensor. Could this have resulted in a power glitch that occasionally triggers the lockup? I wish I had an oscilloscope.

I've had this sort of problem before. Assuming it's the same, it's called latch-up (sometimes SCR latch-up or CMOS latch-up). In my case, I needed to power the analogue 5v before the digital 5v. If I got the timing wrong, it latched up and effectively shorted 5v to ground. Something like the LM3881 power sequencer is quite useful.


Ah, thank you. I thought it would involve some complicated electronics.

There's an IC for everything!