Showing results for 
Search instead for 
Did you mean: 

spi dma getting zeroes after a while when we send massive amount of data on the lines

Associate III

Hey, I'm using the STM32H743ZI device.

I have an odd issue, but I will explain the setup first.

we have 2 SPI channels with DMA that receive lots of data at a high rate from an external device.

the STM receives the data from the SPI and does a small conversion and outputs the data with UDP.

the issue:

when the STM starts (after reset), everything works perfectly we receive valid data, and I see the output data on Wireshark, after a period of time (~10 minutes) not sure what is happening but I see zeroes instead of data.

so I checked the external device to see if the data on the SPI lines was valid - and yes (checked with Saleae).
I tried to debug this with a breakpoint and for some reason after a while, there are zeroes instead of data.

not sure if this is the DMA or the SPI, but it happens only when we send lots of data on the lines.  

there is no HardFault, everything works like before instead of the data content, if I reset the device the data is ok again.

any idea what I'm doing wrong?

I tried to add a code that when the code sees zeroes it will reset the SPI or the DMA but didn't help...


pls, help! thanks😊