2020-10-21 02:25 AM
Trying to figure out the best way of programming CPUs for production.
With other projects, we would normally get the microcontroller programmed before the PCB SMT stage. This service doesnt appear to be available for STM32WB (too new?), so the intention is to use 4x ST-LINK devices in parallel to program 4 boards at a time on the assembly line.
Whilst I'm fairly clear on how to achieve this using the command line tools, I would like to check this is the only / best way of doing it. The time it takes to upgrade FUS (twice? still not clear if that's required as per release notes 0.5.3 -> 1.0.2 -> 1.1.0), then flash the copro with BLE_stack_full.bin, then flash the main image is longer than we would like.
Can we combine any of the steps? Is it possible to generate an elf file that has "everything" in?
Does ST provide programming services? or chips that are already preprogrammed with the ble stack, ready for our application code?
Thanks
Solved! Go to Solution.
2020-10-26 09:53 AM
2020-10-26 09:59 AM
The READ FUS STATE boxes remain empty as this information is not accessible using the SWD port for now.
Now could you send a picture of the option bytes, especially the security ones.
I want to check is the ESE bit is set.
How old is the board?
2020-10-26 10:09 AM
The READ FUS STATE boxes remain empty as this information is not accessible using the SWD port.
Now could you send a picture of the option bytes, especially the security ones.
I want to check is the ESE bit is set.
How old is the board?
2020-10-26 01:19 PM
2020-10-26 01:29 PM
Hi Remi,
The custom board was made this year so I assume the chips are very recent. See attached for option bytes. The ESE is set on this chip. If I try to clear it, I get the message "Warning: Option Byte: ESE, does not exist" - very odd
2020-10-26 01:30 PM
2020-10-26 03:00 PM
ESE = 0 means this board is not a secure one. So Firmware Upgrade Service (FUS) is not available to upload new FUS or new encrypted RF stack.
So hard to commit on any predictable result. No FUS => No info on the FUS => No way to download anything in a secure way.
You can use this board to run your own SW (application + own RF stack) but no way to protect it and this configuration will never be used for production.
2020-10-26 03:03 PM
When ESE = 1, it is not possible to modify the value. The error message sounds a bit weird but in the end no way to roll this chip back to an non-secure configuration.
2020-10-26 03:05 PM
SFSA = F4 => The FUS is at least v1.0.2. May even be v1.1.0. For sure no RF stack is intalled on this device.
2020-10-27 03:19 AM
Hi Remi,
This is just a Nucleo so it's not for ever going to be for production. I have another Nucleo with an old stack and an old p2p server app. I was just hoping to load this Nucleo with the latest stack (stm32wb5x_BLE_Stack_full_fw.bin) and a new version of the p2p server. Are you saying that is not possible?