According to IEEE Spectrum, Python is ranked No. 1 in the top programming languages of 2017. The latest IEEE Spectrum shows Python retaining its lead to be the top programming language of 2020.
Python has continued its upward trajectory from 2016 and jumped two places to No. 1 in the overall ranking in 2017. While the first position is confirmed for Web and Enterprise categories, back in 2017 this amazing language still needed to explode in the Embedded category, despite the rise of Python-based embedded development platforms like Zerynth and MicroPython. Today, we have Python in the lead in both categories. Take a look at the results from 2020:
This ranking is not that surprising. Today the vast majority of embedded code is still written in C. Expert and skilled C programmers could justify this stating that “C generates a faster, more compact, and more reliable code”
if you replace C with “assembly” in that statement, you’d have exactly what an extinct generation of programmers said about 20 years ago!
Why use Python for Embedded Applications?
If you have a quick Google for something like “Python for Embedded Systems” you’ll find lots of very interesting articles like the following:
As is very well summarized in one of the articles mentioned above, we can say that:
If a problem can be solved in Python, then it can also be solved in C; the reverse is not always true. However, if the problem can be solved in Python:
— The solution (source code) will be simpler than the corresponding C code.
— It will be more “readable.”
— Perhaps, more importantly, it will be more “writeable” (this is an oft-overlooked quality!).
So, while C/C++ is slow to write, error-prone, and often unreadable, Python is known for its writability, error reduction, and readability.
For these and other reasons, according to one recent study, Python isn’t just the most popular language for introductory CS programs and hobbyist developers, it’s also the fastest-growing language for embedded computing. There’s an enormous crowd of professionals skilled in using Python “potentially” able to develop the software for the “next big thing” in IoT and to ship new amazing embedded applications in a short time.
Why you should use Zerynth for your Python-based embedded applications
Zerynth reaches beyond professional embedded developers to also offer high-level programmers, product designers, and IoT developers a complete set of high-quality embedded development tools to create interactive and connected solutions.
The free-to-download Zerynth SDK is the gateway to our toolset, which includes the Zerynth OS and the Zerynth Device Manager. With the Zerynth tools, the user can develop IoT applications, using Python and C, and securely connect them to industry-leading cloud infrastructures, in just a few lines of code.
Easy for beginners and powerful for experts
One word: simplicity! Unlike other Python implementations for microcontrollers, with Zerynth there’s no need to copy/paste creepy scripts from different web sources. No need to drag-and-drop any file in any folder or via FTP. No need to install Python on your PC and no need to install Putty or special drivers. Thanks to Zerynth, you can make your device programmable in Python with just a few clicks!
Let’s see this tutorial on how to control an industrial lamp with our EXP-RELAY development board. The user just needs to download and install Zerynth SDK, and follow the steps of the tutorial.
This is an excellent choice for beginners who are new to programming.
For advanced users, Zerynth allows mixing Python and C code in the same project.
This kind of “hybrid” programming is extremely powerful in scenarios where the project needs low-level code for time critical tasks while keeping Python flexibility and readability for non-time critical sections.
With Zerynth you haven’t to choose between development speed and runtime speed. You can have both!
Write once, run everywhere
Zerynth OS, the core element of the Zerynth stack provides a real hardware abstraction layer allowing code reuse on a wide range of 32-bit microcontrollers, the heart of embedded and IoT solutions.
The hardware independence is critical for many:
- for Product Designers, it reduces the time to market because they haven’t to re-write the code when they switch from prototyping to production;
- for System Integrators, it makes it easier to focus on the integration part and select the board that better fits with the project, without the need to worry about low-level functionalities and programmability;
- for Embedded Producers, it speeds up the adoption of new embedded hardware and opens to the huge community of Python programmers.
What you can do with the Zerynth IoT Platform
Unlike other IoT development platforms, Zerynth provides a complete “ecosystem” of tools that allow you to go from the firmware development to the cloud connection.
Need inspiration? The Zerynth Tutorials provide a list of tutorials that guide you to develop embedded and IoT solutions in Python with the Zerynth Stack. You will learn:
Beyond Arduino and Raspberry Pi…
As mentioned above, students and hobbyists migrating into the industry with experience programming in Python for drones, robots, or other projects frequently have a Raspberry Pi or an Arduino background.
Zerynth offers the benefits of microprocessor-based boards like Raspberry Pi:
- Python language (or hybrid C/Python if necessary)
- Multithreading support
along with the great advantages of microcontroller-based boards:
- lower power consumption with respect to microprocessor-based boards
- lower hardware costs in the prototyping phase
- extremely lower hardware costs in the industrialization phase
All this, with a relatively tiny footprint of 60k-80k of flash, 3-5k ram.
…for scaling up without pain
Zerynth is already used by companies and professional teams to build amazing IoT and embedded solutions in different sectors: retail, commercial refrigeration, waste management, smart devices, and much more, as you can see on our Case Studies page.
Download Zerynth SDK – it’s free, it’s easy
Now that you know all the advantages of embedded development in Python it’s time to download Zerynth SDK and start your dream project. After all, it’s free, it’s easy, and tailored to your needs.
Until next time,
The Zerynth team