Skip to main content
Associate II
February 13, 2025
Solved

NEAI datalogger does not broadcast COM port when connected via USB

  • February 13, 2025
  • 2 replies
  • 4800 views

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

Best answer by Julian E.

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

2 replies

Julian E.
Technical Moderator
February 13, 2025

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

​In order to give better visibility on the answered topics, please click on 'Accept as Solution' on the reply which solved your issue or answered your question.
HazeAuthor
Associate II
February 13, 2025

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

Julian E.
Technical Moderator
February 13, 2025

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

​In order to give better visibility on the answered topics, please click on 'Accept as Solution' on the reply which solved your issue or answered your question.
Julian E.
Technical Moderator
February 19, 2025

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

​In order to give better visibility on the answered topics, please click on 'Accept as Solution' on the reply which solved your issue or answered your question.
HazeAuthor
Associate II
February 20, 2025

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.

Haze_0-1740053131278.png

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.


Haze_1-1740053458791.png

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

Julian E.
Technical Moderator
February 20, 2025

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

​In order to give better visibility on the answered topics, please click on 'Accept as Solution' on the reply which solved your issue or answered your question.