2025-02-12 09:41 PM
Hello!
I've been tasked to use the STEVAL-PROTEUS1 board with the ISM330DHCX to detect anomalous motor behavior. I've confirmed the board works fine when using other firmware and works as a WCID & MSC with datapro. However, when I try to flash the auto generated datalogger firmware from Nanoedge AI for serial data collection (via FUOTA), it does not create a COM port I can point the serial monitor at. I'd be grateful if someone could advise me of mistakes I might've made along the way, or if flashing via FUOTA does not work because there is a second flash bank or something similar. While I do currently have access to a STLINK V3-MINIE, I would prefer if flashing via FUOTA was an option, as it makes for an easier showcase.
Thanks in advance
Haze
Solved! Go to Solution.
2025-02-14 12:39 AM
Hi Haze,
Indeed, considering latest updates, you can use BLE_Ota_RFWKPCLK_LSE.bin. For a clean setup, I recommend you to flash it in wired the first time, at address 0x08000000. Then you can flash the datalogger binary from the BLE Sensor App at address 0x08007000.
Have a good day,
Julian
2025-02-13 01:36 AM
Hi @Haze ,
FUOTA flashing of a NanoEdgeAI datalogger binary should not require any specific constraint.
Did you choose as memory start address 0x08000000?
Then, make sure to connect your STEVAL-PROTEUS1 board to your PC using 2 micro-USB cables: a first one to power the board through its USB port, and the second one connected to a debugger plugged to the board' STLINK-V3 connector.
The second cable and ST-LINK are not required if you have generated a Continuous mode datalogger.
Please come back to us if you are still stuck after following these steps.
Have a good day,
Julian
2025-02-13 02:28 AM - edited 2025-02-13 02:52 AM
Hi @Julian E. !
Thank you for the speedy reply. I've attached below images from the ST BLE Sensor app of both the default address it picks to flash firmware (0x007000) and the memory out of bounds error it throws when setting the memory address to 0x08000000. Flashing other firmware mentioned above at 0x007000 works fine over OTA. The same issue is encountered when trying to flash the board using the STLINK/ DFU with boot0 pulled high via CubeProgrammer. To answer the second question, I have picked a continuous datalogger to be generated as NEAI suggests for CDC USB communication.
Thanks
Haze
2025-02-13 05:16 AM
Hello @Haze ,
Based on the last screenshots you shared, I suggest you to re-flash the FUOTA binary (Proteus_BLE_FUOTA_reference.bin) at address 0x08000000 and then flash the NanoEdgeAI datalogger binary at address 0x08007000 (not just "0x007000").
Please tell us if the board COM port is still not visible after these steps.
Have a good day,
Julian
2025-02-13 09:42 PM
Hi @Julian E.
Where do I find Proteus_BLE_FUOTA_reference.bin? I assume it is a part of the STSW proteus software kit, but looking in the projects folder, I see a BLE_Ota_RFWKPCLK_LSE.bin in the BLE section. Also, I assume I can directly do this using the app by selecting the wireless option (currently pointing to address 0x011000)?
Thanks
Haze
2025-02-14 12:39 AM
Hi Haze,
Indeed, considering latest updates, you can use BLE_Ota_RFWKPCLK_LSE.bin. For a clean setup, I recommend you to flash it in wired the first time, at address 0x08000000. Then you can flash the datalogger binary from the BLE Sensor App at address 0x08007000.
Have a good day,
Julian
2025-02-14 12:59 AM
Hi Julian!
Im glad to report that the datalogger is now working properly! Thanks for the help. I'm curious as to why the other firmware like FP-AI-PDMWBSOC 1 and 2 and datapro work despite the OTA pointing at the memory locations 0x011000 and 0x007000 (automatically picked by the app), since the datapro sheet also suggests flashing the main firmware at 0x08007000
Yours Sincerely
Haze
2025-02-19 07:59 AM
Hello @Haze ,
We contacted the team that made this FP, so it took a little bit of time but here is more information.
If the application does not start after flashing the application firmware at address 0x08007000 or 0x007000 by FUOTA, we recommend to remove power to the Proteus board and supply it again. Then, close the STBLESensor app, take care it doesn't run in the background, and relaunch it. Everything should run fine!
Have a good day,
Julian
2025-02-20 04:17 AM
Hi @Julian E.
Thanks for the update! Since I'm done working with the datalogger, I've tried flashing the PDWBMSOC fp back onto the board, both at 0x08007000 and 0x007000 via ST-LINK (the board does not appear on the sensor app after the BLE_Ota_RFWKPCLK_LSE was pushed to 0x08000000). I've updated the FUS alongside starting both it and the BLE stack, and have attached a picture of the FUS info below.
I've used stm32wb5x_BLE_Stack_full_fw.bin for the FUS at 0x080CE000, from the Coprocessor binaries in the proteus firmware package. BLE_Ota_RFWKPCLK_LSE is at 0x08000000.
I suspect a memory address is incorrect, but documentation provided in other FPs seems to indicate that we've both got the right addresses.
according to the SBRV OB, I also seem to be pushing my updates to the right locations.
To confirm that the board runs fine with the above Firmware at the current positions, I reuploaded the NEAI datalogger to it, and confirmed it works. I've also tried using another phone with the STBLE sensor app, and the stub doesn't show up in FOTA mode there either. I'm probably missing something incredibly obvious here.
Thanks in advance
Haze
2025-02-20 06:12 AM
Hello @Haze ,
To avoid mismatch about clock used by RF system wakeup, we suggest using the following FUOTA firmware: STM32CubeFunctionPack_AI_PDMWBSOC_v2.0\Utilities\BootLoader_BLEFUOTA\Proteus_BLE_FUOTA_reference.bin
Otherwise, if you use this firmware: "STSW-PROTEUS_v1.1.1\Projects\STEVAL-PROTEUS\Applications\BLE\BLE_Ota\Binary\BLE_Ota_RFWKPCLK_LSE.bin", after downloaded the FW related to PDWBMSOC you should turn off the STEVAL-PROTEUS, then turn on the board again.
Following this procedure, you should never modify the proposed address in the app during the execution of FUOTA.
Have a good day,
Julian