Could the EdgeImpulse bootloader be an Arduino Sketch?

Feature Request:

The Arduino edgeimpulse bootloader is a bit of a learning bottleneck. Beginner Arduino users have a bit of an issue installing it.

I love the very slick Arduino bootloader that can be flashed to the Portenta or Nano33Ble, but any chance it could be made as an Arduino sketch? Before someone says no, have a look at this sketch which reprograms the Portenta Murata LoRa Module.

The code takes an STM program that has been converted to a char array file using the program xxd, much like how TensorflowLite converts a .tflite file to be used by a tensorflowMicro program.

Any suggestions for how the EdgeImpulse bootloader could be easier to load onto the Portenta using the Arduino IDE? With it loaded the webBLE program works very very well for my students.

@dansitu @rjames @aurel @janjongboom

Hello @Rocksetta,

Yes, you can find them here:

Just note that it can be very long to compile it depending on your computer ressources, that’s why we provided a ready-to-flash binary.

Best regards,

Louis

1 Like

Interesting. Thanks @louis

:warning: It can take up to an hour depending on your computer resources Wow, I will have to try that on my faster animation computer (Dual GPU’s)

Does the boards.local.txt file still need to be uploaded, I thought a recent Arduino IDE fixed that.

Hi @louis you know how tensorflowLite is precompiled I might look into that for the edgeimpulse bootloader. Seems like a real pain to do, but would allow more people to access edgeimpulse from their present arduino IDE ability level.

Thanks @louis I am going to try to compile the protenta arduino sketch on both Windows and Linux (ubuntu) and then try pre-compiling it to make a library. Already having some issues with Windows (as expected), but will now try Linux.

Any suggestions would be appreciated. I do kind of now what I am doing. LOL

@louis. Off course it worked fine on Ubuntu, next step is how to pre-compile. Got this reply from Arduino

Anyone got any suggestions. The idea is to make a library so that installing the Portenta bootloader is as simple and fast as running a normal Arduino sketch.

@louis @rjames

So I can now build the Portenta firmware software on the Arduino IDE. My computer must be fairly fast as it only takes 10 min to compile. To reduce the path name length I put the github downloaded firmware-portenta into the C:\tmp folder. Also I rename the download to the same name as the sketch (delete the “-main” that the folder adds ).

I have sent an issue to Arduino to see if the boards.local.txt file can stay in the sketch folder. Students have no access to changing the boards software at our school. Arduino probably wont do this change for a while, but at least for now I can get things working.

The Firmware really makes things easier as my students can now use the WebUSB connection to EdgeImpulse.

1 Like