cancel
Showing results for 
Search instead for 
Did you mean: 

STM32CubeMX v.5.4.0 appears to have bug related to configuration of peripheral DMA without IRQs. Configuration is not restored properly when project is loaded from .ioc file.

MShat.2391
Associate

Steps to reproduce:

1. Configure peripheral, i.g. UART or SPI to work with DMA

2. Go to NVIC Settings Tab at peripheral. By default all interrupts are enabled.

Interrupts generated by peripheral itself can be disabled by unchecking respective checkbox

In order to disable DMA channel interrupt one has to go to NVIC peripheral and uncheck a

checkbox called "Force DMA channel interrupts".

IMHO, a need to go to seemingly unrelated place to enable a desired action, is a bad user interface

decision. But it's not a bug.

After the checkbox at NVIC is unchecked one can come back to NVIC Settings Tab at peripheral

and disable DMA channel interrupt(s).

3. Now the project can be saved and/or code can be generated and everything would be

written to files as expected.

Close project. So far so good.

4. Open project again.

DMA channel interrupt(s) are re-enabled. You can save project immediately after opening

even without touching any other user interface element except File menu - the damage is

done already and can be observed in ***.ioc. It's not the same project that you saved last time.

3 REPLIES 3
Ahmad M.Nejad
Associate III

This bug is not fixed in V5.6.0-RC6 Build: 20200218-1639 (UTC)!

ZYu.1
Associate III

this bug really exists in CubeMX version 6.0.1

Mooch
Associate II

This bug appears to be fixed in version 6.4.0. My generated code had DMA interrupts in it at the start. I uncheck the "Force DMA channels Interrupts" box, uncheck the box for the DMA interrupt, generated code, and closed cubeMX. The generated code is correct (no DMA interrupts). I re-opened cubeMX, and the check boxes are still unchecked. I generated code and it is identical to the previously generated code - no DMA interrupts.

Since '75, I been codin', stayin' proud.
I started on punch cards, now I'm takin' it to the cloud.