How hard is it to add a new board?


Hi All,

I have two boards that I would like to try with Zerynth, but they are not currently supported. One is a STM32F4 Discovery board that has an STM32F407GT6 chip, and another board that appears to be a noname knockoff board (the only thing it has written on it is, and on the other side EU and some Chinese characters), with the same chip on board, i.e. STM32F407GT6. I also have a Teensy35 I would like to program with Zerynth.

My question is, how hard is it to add support for a board to Zerynth? Is it just a matter of cloning an existing definition and changing a few things for the new board? Can a complete amateur like me do it, or do I need to be a rocket scientist microcontroller engineering PhD guru to even attempt such a task? I’ve had a look at the definitions in ~/.zerynth2/dist/r2.0.10/devices, and it seems like there is a lot of information in there, most of which I don’t understand ans have no idea how to modify. On the other hand, my other favourite development platform, PlatformIO (C and 8 bit processors), doesn’t seem to require very much information at all to support a new board. Just a simple .json file, and off you go. It currently supports over 400 boards, and new ones are being added every day.



Hi mogplus8,

We’re developing our new Zerynth release (r2.1.0) where one of its new feature will be the possibility to add your own new devices.

The boards, that you can add, must be based on microcontrollers already supported by Zerynth.

All the procedure will be documented and explained with the new big release.

Stay tuned for new updates :wink:


Thanks Matteo. Looking forward to that release! What’s the timeframe for the release? Will you be supporting the STM32F407 series? Or will there be a generic Cortex-M4 framework of some sort?
Thanks, Ian


Hi Ian,

Initially, we will provide the support for single microcontrollers already supported by Zerynth, in future we will extend this feature to the chip family.

The release of the Zerynth r2.1.0 is scheduled for Q1 2018.
Stay tuned :slight_smile:


Hi Matteo,
Been away for a while doing other things, but now back to playing with Zerynth. 
In relation to defining bespoke boards, you mentioned that the function will only be available for microcontrollers already supported by Zerynth. I have recently acquired a Teensy 3.6, based on an NXP MK66FX1M0 microcontroller. This mcu is based on a a Cortex-M4 core according to the spec. I know there are some other Cortex-M4 processors supported by Zerynth, but only STM mcus. So is there a chance the NXP mcu could be supported to? Some time in the future?.. Or are you unable to answer that question with having a closer look at the Teensy?

On a completely different note, is it possible to set invisibles off in the editor as the default?



And another thing. Is it possible to start Zerynth without it asking me if I’d like to start it or reinstall it?


Hi mogplus8,

as you can see in our last announcement, r2.1.0 is out and we’re implementing new features to improve the Zerynth Experience.

Very soon everyone will be able to build his custom VMs for his own hardware solutions (more info about which microcontrollers or families of microcontrollers in few weeks).

The Zerynth Studio start procedure is necessary because, during it, the system initializes each component. it also needs to install new releases or new patches when available. The procedure is handled with a timeout so, if you don’t click anything, Zerynth Studio will start automatically with the default choice version. 

Hope this can help you :slight_smile:


Thanks Matteo, upgrading to v2.1 as I type!