2024-01-31 07:26 AM
It seems STM32CubeMX has a bug related to the STM32H5's HMI BSP component. If you do not wish to use this BSP component and want to configure the affected pins manually (like with other boards that do not have this HMI BSP component), the project will not properly reload the saved settings.
Steps to reproduce:
1. Start a new STM32H5 project in STM32CubeMX (v6.10.0)
- Specify board: NUCLEO-H563ZI
- Select: "without TrustZone actived"
- Unselect: "Human Machine Interface"
2. Change the configuration of one of the pins related to the LEDs, (Blue) Push Button, or ST-LINK UART
- The related pins are:
- PB0 (LD1, Green)
- PF4 (LD2, Yellow)
- PG4 (LD3, Red)
- PC13 (Button)
- PD9 (UART RX, for STLINK VCP). It's also worth noting the label applied is "VCP_TX" here, which is confusing as it does not match the function of the pin (I think someone wanted to match net-names instead of labelling it with the pin's function).
- PD8 (UART TX, for STLINK VCP) Same as above this is labelled as "VCP_RX" and is probably a mistake.
3. Save the project.
4. Close the project.
5. Re-Open the project.
6. Notice that the changes made have been lost.
7. Inspect the .ioc file contents to see that the settings are in fact present in the file, but they have not been loaded by the tool. Pins other than the ones specified above do not appear to be affect by this issue. Thus, it appears to be an issue with the HMI BSP component's .ioc file loading logic.
Solved! Go to Solution.
2024-02-01 07:50 AM
Hello @Jon Carrier
Issue is reported internally to our team (Internal ticket number: 172379) and this will be fixed as soon as possible.
Thanks,
Souhaib
2024-01-31 08:28 AM
Hello @Jon Carrier
Thank you for bringing this issue to our attention, I will check it internally and get back to you as soon as possible.
Thx
Souhaib
2024-01-31 11:23 AM - edited 2024-01-31 11:26 AM
Thanks,
Small update, for others that may be affected by this. I am able to work around the issue by manually editing the .ioc file by making the following changes:
- Replace
board=NUCLEO-H563ZI
boardIOC=true
- With
board=custom
- Remove
BSP_IP_NAME=NUCLEO-H563ZI
- Remove
Mcu.IP15=NUCLEO-H563ZI
- Update Mcu.IPNb. Where <N> is the number of "Mcu.IP" entries listed.
Mcu.IPNb=<N>
To my understanding this is effectively making the .ioc look like a project that specified the bare-MCU instead of a Nucleo board during project creation/initialization.
2024-02-01 07:50 AM
Hello @Jon Carrier
Issue is reported internally to our team (Internal ticket number: 172379) and this will be fixed as soon as possible.
Thanks,
Souhaib