Skip to main content
Ponmani
Associate
March 5, 2024
Question

SPI communication of ISM330DLC with microcontroller fails

  • March 5, 2024
  • 3 replies
  • 2210 views

SPI communication of ISM330DLC with microcontroller fails rarely and randomly. Most of the time, it is observed when it is on a vibrating source. Could you pls give us some idea to know more about this issue and solving it.

This topic has been closed for replies.

3 replies

TDK
Super User
March 5, 2024

Sounds like noise could be affecting the signals. How are the chips connected? Perhaps try a slower clock speed an/dor use LVDS signaling if there is significant distance between the two chips. Better shielding may also help.

"If you feel a post has answered your question, please click ""Accept as Solution""."
Andrew Neil
Super User
March 5, 2024

@TDK wrote:

 if there is significant distance between the two chips. 


@Ponmani remember that SPI is not designed for going over significant distances - it's designed for comms between chips on a single PCB.

A complex system that works is invariably found to have evolved from a simple system that worked.A complex system designed from scratch never works and cannot be patched up to make it work.
Andrew Neil
Super User
March 5, 2024

More details needed about your setup, environment, etc.

What, exactly, is the nature of the "failures" ?

 


@Ponmani wrote:

Most of the time, it is observed when it is on a vibrating source. .


Loose connections?

 


@Ponmani wrote:

 Could you pls give us some idea to know more about this issue and solving it.


So what testing/debugging/investigations have you done so far?

Add diagnostics - eg, UART output - to give insights into what is going on ...

 

A complex system that works is invariably found to have evolved from a simple system that worked.A complex system designed from scratch never works and cannot be patched up to make it work.
Ponmani
PonmaniAuthor
Associate
March 6, 2024

This is observed when installed on a remote place, (where i dont have the ability to scope the signals). It behaved very well in the lab environment.

 

No loose connections expected as the device is perfectly sealed

Andrew Neil
Super User
March 6, 2024
@Ponmani wrote:

We have proper shielding with metal conduits for the SPI lines. I doubt if it can be noise, because, if the failure happens it continuously fails for 2 to 3 hours. Then, it auto- fixes itself.


How long are these SPI lines? Again, SPI is not designed for going over significant distances

 

@Ponmani wrote:

I doubt if it can be noise, because, if the failure happens it continuously fails for 2 to 3 hours. Then, it auto- fixes itself.


I don't think that follows.

 

@Ponmani wrote:

This is observed when installed on a remote place, (where i dont have the ability to scope the signals)


So what about UART logging? Or logging to RAM?

 

@Ponmani wrote:

It behaved very well in the lab environment


Well, of course it did - in the nice, clean sanitised conditions of a lab!

Did you do any "stress" testing?

Test at extremes of voltage, temperature, etc?

Test resilience against disruption of comms?

etc, etc, ...

 

A complex system that works is invariably found to have evolved from a simple system that worked.A complex system designed from scratch never works and cannot be patched up to make it work.