← New search

Other meanings of Python Anghelo

Programming

Python Anghelo

Python Anghelo is a programming language and integrated development environment (IDE) designed for robotics and embedded systems, developed by Anghelo (a pseudonymous developer) and first released in 2015. It combines a Python-like syntax with a real-time runtime and a visual editor, targeting hobbyists and educators. The language is notable for its deterministic execution and hardware abstraction layer, which simplifies control of microcontrollers and sensors. Despite its niche status, it has gained a following in STEM education and maker communities.

2015
First release
Year
2.4
Latest stable version
Version
MIT
License
License
Python-like
Syntax
Syntax
1

Design and features

Python Anghelo is designed to bridge the gap between high-level scripting and low-level hardware control. Its core is a bytecode interpreter that runs on a virtual machine with a real-time scheduler, ensuring that time-critical tasks meet deadlines. The language supports garbage collection with optional manual memory management for performance-sensitive code. A distinctive feature is the hardware abstraction layer (HAL), which provides a uniform API for GPIO, PWM, ADC, and I2C across different microcontroller platforms. The IDE includes a visual block editor that generates Python Anghelo code, making it accessible to beginners. It also offers live debugging with breakpoints and variable inspection over a serial or network connection.

2

History and development

Python Anghelo was created by Anghelo, a developer who wanted a language that combined the ease of Python with the reliability of C for robotics. The first version, released in 2015, targeted the Arduino platform. Over time, support was added for Raspberry Pi, ESP32, and STM32. The project is open-source and hosted on GitHub, with contributions from a small but active community. The 2.0 release in 2019 introduced a type system with optional static typing, and the 2.4 version (2023) added asynchronous I/O and improved multicore support. Despite its niche appeal, it has been used in several robotics competitions and university courses.

3

Lesser-known aspects

Beyond its primary use, Python Anghelo has several obscure features. It includes a built-in state machine library that is often overlooked but useful for complex robot behaviors. The language also supports live code reloading over the network, allowing developers to change code on a running robot without restarting. A lesser-known tool is the Anghelo Simulator, a 2D physics simulator that integrates with the IDE for testing algorithms. The project has a package manager called anghelo-pm that hosts community libraries, including a computer vision module and a PID controller library. The developer has also published a book titled Programming Robots with Python Anghelo (2021), which is used in some classrooms. The community maintains a wiki with tutorials and hardware compatibility lists.

4

Applications and community

Python Anghelo is primarily used in educational robotics and DIY projects. It is particularly popular in European maker spaces and Scandinavian schools, where its visual editor aids teaching. The language has been used in agricultural automation for small-scale greenhouse monitoring and in art installations that require precise sensor control. The community is small but dedicated, with an annual online conference called AngheloCon since 2018. The official documentation is comprehensive, and the GitHub repository has over 2,000 stars. However, the project remains a single-maintainer effort, which limits its growth. Despite that, it has a loyal user base that values its simplicity and reliability.

Glossary

HAL
Hardware Abstraction Layer – a uniform API for hardware peripherals.
GPIO
General-Purpose Input/Output – pins for digital signals.
PWM
Pulse-Width Modulation – used for controlling motors and LEDs.
ADC
Analog-to-Digital Converter – reads analog sensor values.
I2C
Inter-Integrated Circuit – a communication protocol for sensors.

This article is based on publicly available information about the Python Anghelo project. Some details may be incomplete due to the project's niche status.