2021-07-20 01:14 AM - last edited on 2023-07-11 09:31 AM by Kevin HUBER
My problem is, that on the one hand, the SPI3 configuration is lost after I close CubeMX.
So, what I am doing wrong here? Is there maybe another problem with the GPIO or whatever, which can lead to this unexpected behaviour? Or is this a known issue?
Thank you for the help.
Best regards,
Jan-Otto
Solved! Go to Solution.
2021-08-24 01:07 AM
Hi @JMein.1 ,
Yes I have explanation and workaround.
Problem com from that CubeMX does not handle properly the link between SPI3 and I2S3 instances.
Even if I2S3 is disable, it's by default assigned to A7NS context .. and in that case CubeMX don't accept SPI3 to be assigned to M4 context.
This assignment is reset to be aligned with I2S3 context when you open project.
It can be seen as well for SPI1 and SPI2, not for SPI4, SPI5 and SPI6 as they are not coupled with an I2S instance.
Workaround consist to untick I2S3 from A7NS context.
This is will be fixed in next CubeMX version.
Olivier
2021-07-22 05:37 AM
Hi @JMein.1 ,
can you please share CubeMX version and the MPU or Board project type reference in order I check at my end.
Thanks
Olivier
2021-07-22 11:00 PM
Hello Olivier,
the CubeMX version is 6.2.1 and the board is a STM32MP1AACx. Can the *ioc file crash in that way, that this beaviour can occur?
So, nearly all pin are set to a value and also nearly all of the peripheral is used.
I can also share the *.ioc file but only as PN because this is a company project 🙂
Best regards,
Jan-Otto
2021-07-23 12:32 AM
Hi @JMein.1 ,
Sorry "board is a STM32MP1AACx" .. missing 2 important digit : STM32MP1??AACx
And you talk about board, do you mean either a DKx or EV1 board from ST ?
Thanks for proposal to send the *.ioc. Maybe later depending on my finding.
Thx
Olivier
2021-07-23 01:09 AM
Hi Olivier,
this is a custom productive board with a STM32MP151AACX.
Best regards,
Jan-Otto
2021-07-23 05:13 AM
Hi @JMein.1 ,
I didn't noticed any issue in Saving Project feature un CubeMX ( use the latest 6.3) but I doubt it can be the problem with 6.2.1.
My SPI3 and DMA settings are properly maintained after MX closure.
Are you sure your change are properly applied by MX and does not complain about any conflits in pin assignement ?
Anything preventing to modify the ioc itself on your station ? ( write protection )
Which OS are you using ?
For a trial, can you open the .ioc in an editor and monitor that its content is evolving along change and save operation in CubeMX ?
If no progress, please attach the ioc to a private message.
Olivier
2021-07-24 02:16 AM
Hello Olivier,
I sent you a private message with the *.ioc file. I think, this explains it more in detail and hopefully, you have a solution for my problem.
Best regards,
Jan-Otto
2021-07-26 07:20 AM
Hi @JMein.1
I indeed reproduce this strange behavior with the provided ioc.
I'm escalating the point to some CubeMX expert.
Keep you posted
Olivier
2021-08-23 07:20 AM
Hello Olivier,
can you please give me an update on this issue? I hope, you have a workaround for me or this will be fixed within a newer CubeMx version?
Best regards,
Jan-Otto
2021-08-24 01:07 AM
Hi @JMein.1 ,
Yes I have explanation and workaround.
Problem com from that CubeMX does not handle properly the link between SPI3 and I2S3 instances.
Even if I2S3 is disable, it's by default assigned to A7NS context .. and in that case CubeMX don't accept SPI3 to be assigned to M4 context.
This assignment is reset to be aligned with I2S3 context when you open project.
It can be seen as well for SPI1 and SPI2, not for SPI4, SPI5 and SPI6 as they are not coupled with an I2S instance.
Workaround consist to untick I2S3 from A7NS context.
This is will be fixed in next CubeMX version.
Olivier