cancel
Showing results for 
Search instead for 
Did you mean: 

I have trouble getting ADC DMA working in cubeIDE 1.9. It was working in version 1.7

Tim Goll
Associate II

There are many guides available online that explain how to set up DMA with ADC. I followed such a guide in version 1.7 and it worked out of the box. Now I'm trying the same thing in version 1.9 and it won't work.

The first thing I noticed that the ADC Clock Prescaler setting seems to be no longer a thing.0693W00000LybcBQAR.pngThe last time I set it up, I just chose continuous conversion with a prescaler and everything worked. Even without an timer. These were my settings back then:

0693W00000LybcuQAB.png 

Note here that it is the same MCU on the same board in the same project. I only updated the cubeIDE.

I now tried it with a timer (which is preferred anyway) but this still doesn't work. The timer works as can be seen on the oscilloscope here:

0693W00000LybebQAB.jpg 

The yellow line is the timer, the blue line should have a peak triggered in the convCplt interrupt. DMA is set up with a circular buffer.

Here is the setup:

I'd really appreciate any input on this because at this point I'm not sure if I'm doing something wrong, or if there is a bug in the cubeIDE.

MCU: STM32H743ZI on a nucleo board.

1 ACCEPTED SOLUTION

Accepted Solutions
TDK
Guru
5 REPLIES 5
TDK
Guru

Sounds like this CubeMX code generation bug again:

https://community.st.com/s/question/0D73W000001O3S0SAK/detail?s1oid=00Db0000000YtG6&s1nid=0DB0X000000DYbd&emkind=chatterCommentNotification&s1uid=0050X000007vmts&emtm=1648116562796&fromEmail=1&s1ext=0

If you feel a post has answered your question, please click "Accept as Solution".
Tim Goll
Associate II

Thanks a lot, this means it's not me. But since this is known since a month with no announced update so far I have to wonder what the next step would be. Downgrade the IDE version? This could cause problems with ST-Link. But waiting a few weeks is no option either.

Next step is to wait, downgrade the IDE, or address/correct for the error within user code. Up to you.
It’s likely to be longer than a few weeks.
If you feel a post has answered your question, please click "Accept as Solution".

For anyone else reading this: I downgraded to version 1.7.0 again. Since my ioc file was updated to 1.9.0 it was no longer readable. I therefore had to change the version flags in it and everything seems to be fixed:

0693W00000LydRkQAJ.png 

Thank you again TDK. I'm a bit confused why I didn't find the open issue by myself because I did nothing but trying to solve this issue for the last two days. I honestly can't understand how a company like ST won't fix such an breaking issue within days. Or even hours. Seems highly unprofessional.

eos1d3
Associate III

The GUI just does not allow me to enable Continuous DMA mode for G031 too. This problem also happens in MX. I have to downgrade to 1.8 and change ioc version too.

This bug is not small and ST may be too big that they can't handle it.