We’ve been having a lot of trouble with Mbed Studio and Mbed OS for various reasons, so I’d like to try my hand at programming our Maxim processor of choice (MAX32630) without using Mbed Studio and Mbed OS.
I know it’s weird to ask on a forum about the thing I want to get away from, but I have seriously been unable to find any good sources on compiling and flashing code for Maxim processors without Mbed OS/Studio…
Could anybody here give me an explanation on how to get started programming Maxim microcontrollers without the giant overhead of Mbed OS?
I’d still very much like a CMSIS and a way to perhaps add the nice parts about Mbed OS such as the Serial and SPI libraries. However most importantly I need a way to easily compile with the ARMC6 compiler.
Maybe you can elaborate on the issues you’re having so we can help you fix them?
And as for your request, Maxim’s forums might be a better place.
Thanks for the suggestion on asking on the Maxim forums.
The main issue I’m having is with creating a bootloader. There is a tutorial on this in the official Mbed documentation that simply doesn’t work. I’ve checked by converting the resulting .bin file to a hexdump. The described outcome (a bootloader with a padded area of nothing - followed by the main application) is just not the case, so I’ve decided to create my own.
However, it’s not feasible to use Mbed OS for this, the resulting file size is always very big and I don’t need the overhead of an entire RTOS for a simple bootloader. Besides, when I do this, I have to create two seperate mbed OS applications and jumping from the bootloader to the main causes issues because Mbed OS is instantiated twice. Once in the bootloader and again in the main application.
For this part of the project I need to have a good idea what exactly is happening so I know I’m manipulating the memory correctly. Mbed OS just makes things too abstract.
You should take a look at MCUboot, is works great with mbed-os.
See the discussion here: Mbed OS Bootloader. · Issue #15156 · ARMmbed/mbed-os · GitHub
I see. Thanks for bringing this to my attention. I’ve taken a look at that github thread and this should prove useful!