2020-12-10 10:40 AM
Dear ST,
I am using an LSM6DSL connected to the SPI pin of AVR (ATMEGA328PB; schematic attached). The SPI line is shared by two other devices with different CS.
I am having issues programming the AVR through SPI (raw board, all ICs new, 125kHz SPI clock). I measured the clock line and MOSI and they are fine. The MISO line (LSM6DSL SDO), is giving weird outputs. The problem disappears if I remove the LSM6DSL from the board and everything else then works fine.
I tested for shorts or bad contacts and could not fine any. The PCB board is small (5 cm, 4 layers) and I could not detect issues with the clock wave form, just with the pattern. I suspect the LSM6DSL is outputing something to the SDO line when the programmer (ATMEL-ICE) is communicating with the AVR (which is in reset mode, so the LSM6DSL CS is high-Z).
I am not sure the issue is with the LSM6DSL, but I would appreciate any feedback you could give me while I try alternatives.
Thank you,
Paulo.
2020-12-11 08:35 AM
Hi @PBitt.1 ,
quite strange this cross talk, indeed... which is the Vdd you are using (the voltage of Vgid)? Do you have the possibility to check the current consumption of the overall system with and without the LSM6DSL?
You may try to set the following configuration, before starting the SPI acquisition (also with the other sensors), in case the cross talk is effectively coming from the digital communication: in order to disable the I2C block, (I2C_disable) = 1 must be written in CTRL4_C (13h). See the datasheet, p.63.
Please let me know if this configuration can help you.
-Eleon