NOTE: The Zerynth Ecosystem has been updated to Zerynth 2.1.0. The update removes the distinction between “Zerynth Studio” and “Zerynth Studio PRO”. You can read more about it here.

Announced in June 2016, the new Bluetooth 5 specification promises significantly increased speed, and broadcast messaging capacity over current Bluetooth 4.2.

However most existing BLE development boards are not upgradable to support these.

RedBear has launched a Kickstarter campaign to enable the new generation of Bluetooth Low Energy products for makers and professional developers. The campaign includes three boards based on the Nordic nRF52832 BLE chipset, including a BLE module suitable for mass production and secure Over-the-Air Updates.

Why programming RedBear boards with Zerynth

As discussed in this post, there are more and more reasons to use Python for microcontrollers and embedded development.

But why use Zerynth?

Zerynth provides a platform for developing embedded devices in Python using paradigms and features typical of personal computer (PC) and mobile programming. It lets you make your object ‘connected’ and ‘smart’ with just a few lines of Python code and almost no wiring.

The advantages of programming RedBear Nano2/Blend2 with Zerynth include:

Coding in Python or Hybrid C/Python with a multithreaded real-time OS that requires a footprint of just a 60k-80k of flash and 3-5k RAM;

Development of flexible, scalable and customizable IoT solutions with reduced development time and guaranteed high performances and reliability;

Native mobile app and cloud connector for mobile control and cloud connection with the architectures that best fit with your needs.

All this is possible thanks to the Zerynth modular set of software tools that form the Zerynth Stack.

The main components of Zerynth are:

ZERYNTH VIRTUAL MACHINE : A multithreaded real-time OS that provides real hardware independence allowing code reuse on a wide set of 32bit chips. The VM supports most high-level features of Python like modules, classes, multi-threading, callback, timers and exceptions. In addition to these, it allows to use custom hardware-related features like interrupts, PWM and digital I/O. RTOS threads written in C can live along the VM allowing for a mixed C/Python realtime environment.

: A multithreaded real-time OS that provides real hardware independence allowing code reuse on a wide set of 32bit chips. The VM supports most high-level features of Python like modules, classes, multi-threading, callback, timers and exceptions. In addition to these, it allows to use custom hardware-related features like interrupts, PWM and digital I/O. RTOS threads written in C can live along the VM allowing for a mixed C/Python realtime environment. ZERYNTH STUDIO : an open-source browser based IDE that provides a platform for developing your Python or hybrid C/Python code and managing your boards. It includes a compiler, debugger and an editor, alongside tutorials and example projects for an easy learning experience.

: an open-source browser based IDE that provides a platform for developing your Python or hybrid C/Python code and managing your boards. It includes a compiler, debugger and an editor, alongside tutorials and example projects for an easy learning experience. ZERYNTH ADVANCED DEVICE MANAGER : A device manager compatible with many cloud providers (like Azure, Kinetis, Bluemix, Amazon), exposing a simple API based interface for data gathering, actuation and mobile integration.

: A device manager compatible with many cloud providers (like Azure, Kinetis, Bluemix, Amazon), exposing a simple API based interface for data gathering, actuation and mobile integration. ZERYNTH APP: a general purpose interface for all network- or Bluetooth-powered Zerynth objects, that turns any mobile into the controller and display for smart objects and IoT systems. You do not need to write any separate code for Android or iOS.

In order to guarantee a reliable, maintainable and scalable architecture of the Zerynth stack, the Zerynth Virtual Machine license is based on a closed source policy with distribution of binaries packags only and custom VM compilation as an online service. On the other hand, the Zerynth Studio IDE and most of Zerynth libraries and drivers are opensource. With the free version of Zerynth Studio, you will be able to program for free up to 5 Blend2 and up to 5 Nano2. Discounted/free extension packages for education are available on request.

We provide below some examples to explain 2 features of Zerynth through the LED blinking example: multithreading and code reuse.

Blinking one LED

Following the code related to the blink of one LED using Zerynth.