Oliver Fabel Brings MicroPython to the Popular Flipper Zero Multitool
If JavaScript isn't your bag, this work-in-progress MicroPython port brings you an alternative way to write programs for the Flipper Zero.
Developer Oliver Fabel has brought MicroPython to Flipper Devices' popular — but divisive — electronics multi-tool, the Flipper Zero, as an alternative to its built-in support for JavaScript programs.
"A MicroPython port for the famous Flipper Zero. No need to learn C: use your favourite programming language to create apps, games and scripts," Fabel writes of the project, which has recently become available through Flipper Devices' community-driven app store. "No custom firmware [is] required, so no risk to brick your Flipper."
The Flipper Zero, unveiled four years ago as the precursor to a more powerful but yet-to-be-released device dubbed the Flipper One, is a handheld gadget designed to offer a range of useful features for hackers and tinkerers. Originally marketed under the guise of a "hacker's multitool," creator Flipper Devices has recently edged away from the H-word owing to largely overwrought concerns about its potential in the hands of criminals — a real concern of the Government of Canada.
The gadget recently received a 1.0 firmware release, which brought with it — among other improvements — support for running JavaScript programs on the device, as a more accessible alternative to having to use the official software development kit to write compatible apps in C. Fabel's port of MicroPython, brought to our attention by Adafruit, works in effectively the same way, allowing the user to write programs in a familiar language and execute them on-device.
The port allows MicroPython programs to access various features of the Flipper Zero, including its general-purpose input/output (GPIO) pins, analog to digital converter (ADC), pulse-width modulation (PWM), integrated speaker, navigation buttons, and display, with its most recent update adding infrared reception and transmission — but not yet access to the sub-gigahertz radio, Near-Field Communication (NFC), or radio-frequency ID (RFID) radios. It's also not a complete port of MicroPython, supporting only a subset of features — but enough to get simpler programs up and running.
More information on the port is available on the Flipper Lab apps store, where it can be installed onto a Flipper Zero; the source code, with examples, is published on GitHub under the permissive MIT license.