LIS2DW12 shared SDI and CLK lines cause current leaks
Hello!
We have developed two types of custom boards, with two different MCUs.
On board number 1, each peripheral unit has its own SPI lines dedicated to it. On board number 2, the number of GPIOs has decreased, so we decided that the CLK and MOSI (SDI) legs will be shared among peripherals, and the MCU will select the unit it talks to via different CS lines.
This should not be a problem, since pull ups are only present on the CS and SDO lines.
In practice, we see around a 5uA current draw when all peripherals are turned off, which leads us to suspect some peripheral is no setting its GPIOs to float when its is being turned off.
We tried removing each peripheral from our boards separately, and surprisingly, when removing the ST lis2dw12 from the board, the current leak stops. removing all other peripherals does not reduce power draw.
Notice- we only see this on the board where the MOSI and CLK lines are shared, not on the board where each SPI pin is separated. This is probably because in both boards, the MCU GPIOS are set to 'float', i.e high Z, disconnected when the device enters its lowest power mode, which is where we see this ~5uA leak.
So, we have the same piece of code (aside from different GPIO mapping) running on two devices, where if two SPI lines which should not be pulled are shared between devices, the Lis2dw12 leaks ~5uA of current.
Has anyone seen anything like this?
A bit of info- We're working at VDD=3V. VDD and VDDIO lines are connected to each other. The board follows the LIS2DW12 electrical connections diagram from page 19 of the Datasheet.
Thanks!
