Introducing the Zerynth Platform

By John Leonard March 27, 2019

Zerynth platform for IoT development

The Zerynth platform is an ecosystem of software tools that simplifies firmware programming and secure cloud connections, making it well-suited to rapid IoT development.

Zerynth is a complete collection of tools to develop and deploy cloud-connected devices using Python and/C programming languages. Zerynth comprises 4 main components: Studio, VM, ADM and App.

Click on picture for larger version 


Simplifying development with a suite of tools

Zerynth Studio is a cross-platform IDE and toolchain allowing software development in Python or C/Python hybrid. It also allows easy management of as many boards needed, from development through to deployment as a commercial product.

Zerynth VM (Virtual Machine) provides a multithreaded real-time OS allowing code reuse on any 32-bit ARM-based processor. The tiny, highly-optimized VM takes up just 60-80kB of flash memory and uses 3-5kB of RAM.

Zerynth ADM is an advanced device manager that simplifies device provisioning and enables Over-The-Air (OTA) Firmware updates and remote procedure calls. It can install on all of the best-known cloud services such as Amazon AWS, Google Cloud Platform and Microsoft Azure, as well as some of the smaller platforms. This makes it simple to bring the advanced functionality of a cloud connection to an IoT device.

Last but not least, Zerynth App is a smartphone app for iOS and Android that acts as a frontend to control and monitor devices, using a fully customizable HTML/JS-based GUI.

Find out more:

The power of Python

Most IoT development still takes place in C or C++. This gives great flexibility and leads to powerful, fast code. But changing hardware usually means having to re-write code or even switching operating system.

Zerynth development is in Python. This brings the flexibility of a high-level programming language, used by millions of developers, to the Internet of Things. Anyone who knows Python can turn a microprocessor into a fully-functional, fully-connected IoT device in an hour or two. Python has great strengths in areas such as data processing, making it ideal for many IoT applications, but there can be a time cost compared to lower-level languages like C.

One of Zerynth’s main strengths is that it also allows C/Python hybrid programming. Time-critical tasks can be coded in C while maintaining the simplicity, flexibility and readability of Python for everything else.

Despite its tiny size, Zerynth VM is a full Python implementation made small by writing the VM code from scratch and removing the compiler and REPL functions that aren’t needed for IoT implementations.

Click on picture for larger version



Code that works everywhere

General, multi-function hardware devices are used to get code working when prototyping before choosing specific components that include only the necessary hardware. This usually means re-writing code from the prototype stage to the production stage. Zerynth takes a cross-platform, hardware-independent approach to development. Instead of having to re-write code, the same code can be used throughout.

Read moreRapid prototyping: Develop the next great IoT app

This also makes it easier to select the hardware to use in a project without worrying about the ease of programming or porting earlier code. Developers can also change the hardware more easily if it becomes apparent that it doesn’t perform as expected. Another benefit is that it allows for quicker adoption of the latest components without having to start again from scratch.

In addition, the huge community of Python developers means that, over time, functions to do everything possible with embedded systems will be available to download and integrate into projects. Eventually it may even be possible for someone with only a tiny amount of coding knowledge to build complex embedded devices by using code written by other developers.

This clearly isn’t a sensible strategy for building commercial IoT products but opening up IoT to a wider range of hobbyists and professionals could bring benefits for everyone.

A quick start

Getting up and running with Zerynth is as simple as downloading and install the free Zerynth Studio and signing up for an account. You can then replace the existing firmware on one of the supported processors with the VM, including your choice of OS, and you’re ready to go. The account includes 10 free licenses to install the VM on devices, which should be enough for product development.

The Zerynth Studio includes a number of tutorials and sample projects to help get up to speed with how everything works. It also has libraries from the Zerynth team and official partners to support a large range of commonly available sensors and actuators. Adding these to the device is simple and drivers are only added to the VM when needed, to keep the size down. In addition, there are a number of community libraries, developed separately and approved by Zerynth, to support other sensors and actuators.

If you are looking for a way to streamline your development process for embedded devices, then Zerynth could be the answer. Its powerful yet simple cross-platform IDE combined with a truly hardware-independent firmware means it can remove some of the barriers to IoT development for everyone.

Nordic SoC support in Zerynth

The nRF52840 and nRF52832 SoCs are supported by Zerynth meaning you can get started with this exciting tool for building IoT applications today. 

Click on picture for larger version




Entering the Internet of Things: Opportunity, Risks & Strategy Download the free eBook now


Topics: Embedded development

John Leonard's photo

By: John Leonard

John Leonard has a B.Sc (Hons) in Electronics and Computing from the University of Portsmouth in the UK. Leonard currently works as Product Marketing Manager in Product Management with responsibility for product support needs and staff training requirements. He has worked in various roles in the 12 years he has been with Nordic Semiconductor, including Field Applications Engineer and Regional Sales Manager in both US and Europe. Previously he has worked in Systems & Software within the defense industry. Outside of work Leonard enjoys playing guitar, reading and playing football. Feel free to ask John a question in the comments below!



Get Connected Blog

This blog is for you who are new to the connected world of the Internet of Things (IoT) - whether you are a senior executive, in product development, or simply a curious soul.

Our goal is to inform you, keep you updated and help you understand the opportunities and challenges of IoT for your industry.

If you are a developer, you may want to check out our blogs and developer guides in the DevZone


New Call-to-action

Latest Posts