ESP32 MPY-Jama is a cross-platform MicroPython IDE specifically designed for ESP32 boards with a file manager, a REPL terminal, real-time dashboards, and various ESP32-specific features.
The IDE is an open-source Python program using pyWebView and pySerial plus some JavaScript for the user interface, and the developer of the program, Jean-Christophe Bos, provides binaries for Windows 64-bit and macOS 64-bit Arm or x86. It’s also possible to use it in Linux but needs to be built from source.
Some of the key features of the ESP32 MPY-Jama IDE include:
- MicroPython code editor with syntax highlighting
- REPL interface
- Access to information dashboards with real-time data about WiFi and Bluetooth connections, system info with GPIO status, CPU frequency, memory and SPI flash details
- Easy 2-click methods to connect to WiFi and create an access point
- Graphical interface to install a new firmware through esptool
- Ability to create, import, and run “Jama Funcs” mini-applications with customizable parameters such as BLE Scan, I2C slaves scan, or Magnet sensor.
You’ll find the source code, links to Windows and MacOS binaries, a few screenshots, and instructions to build it in Linux on GitHub.
Jean-Christophe tested it in Ubuntu 22.04, but I tried install it in Ubuntu 20.04 with similar instructions (I had to add python3.10-venv to the dependencies):
1 2 3 4 5 6 7 |
git clone https://github.com/jczic/ESP32-MPY-Jama sudo apt install libcairo2-dev libgirepository1.0-dev python3-pyqt5 python3-pyqt5.qtwebengine python3-pyqt5.qtwebchannel libqt5webkit5-dev python3.10-venv cd ESP32-MPY-Jama python3 -m venv venv . venv/bin/activate pip3 install wheel setuptools pip3 install pyserial pywebview[qt] pycairo PyGObject |
But the terminal looked stuck while building wheel (which can apparently take a while), but after several minutes my laptop completly hung. My laptop is somewhat unstable under load or when messing around with HDMI/graphics. I tried again during lunch and the same problem occurred. So I switched to a mini PC running Ubuntu 22.04 and I had it up and running within 5 minutes:
I could check out the code editor and list of Jama Funcs, but since I don’t have an ESP32 board with me I did not go further. I noticed the Firmware tools section required esptool to be installed in the Python environment:
1 |
(venv) aey@TRIGKEY-CNXSOFT:~/ESP32-MPY-Jama$ pip3 install esptool |
Note “(venv)” above. If it is already installed on your system, but not in the Python virtual environment, the program will not find esptool. All in all, it looks like a pretty nice IDE for people working with ESP32 and MicroPython.
Via Hackster.io
Jean-Luc started CNX Software in 2010 as a part-time endeavor, before quitting his job as a software engineering manager, and starting to write daily news, and reviews full time later in 2011.
Support CNX Software! Donate via cryptocurrencies, become a Patron on Patreon, or purchase goods on Amazon or Aliexpress
Thank you for this article Jean-Luc 🙂