What you can do with pulpLab
- Write MicroPython or Arduino C++. An editor with highlighting, completion, search and errors underlined on the right line.
- Run MicroPython straight away. On an ESP32 or Raspberry Pi Pico, no compiler needed: the program goes over and the console answers.
- Upload an Arduino sketch from the browser. To an Uno, Nano, Mega, ESP32 or Pico over USB, with a chip check and write verification.
- Install MicroPython. Write the official firmware to an ESP32 or copy it to the Pico's drive, once you agree.
- Follow the board live. Interactive console, serial monitor with timestamps and search, and a plotter you can export to CSV.
- Try without a board. Virtual ESP32 and Pico with LEDs, NeoPixels, servos, Wi-Fi and adjustable sensors.
- Carry on in the suite. A pulpCircuit board's pinout becomes
pins.horpins.py, and pulpRobot trajectories arrive ready to upload. - Drive a GRBL machine. Line-by-line G-code sending, status, hold and emergency stop.
Who is it for?
pulpLab is for pupils, teachers, makers and anyone getting started with an ESP32, Raspberry Pi Pico or Arduino board. It works well in a classroom: nothing to install for MicroPython, and virtual boards when there is not one board per desk.
If you are looking for an online Arduino IDE, note that compiling C++ needs a small local relay, installed once together with the Arduino compiler on the computer; MicroPython works without it.
Your files
Projects are kept in your browser and saved as .plab files, a ZIP archive any tool can open. pulpLab also opens .ino sketches, .py, .h and .cpp files, programs sent by pulpRobot, .pboard boards from pulpCircuit and .hex, .bin and .uf2 firmware to upload. The monitor exports to text and the plotter to CSV.
Frequently asked questions
Do I need a particular browser?
For a real board, yes: Chrome or Edge on a computer, the only ones that give access to the serial port. Virtual boards, editing and the plotter work in any recent browser.
Does pulpLab compile Arduino C++ in the browser?
No. No browser can do that on its own: pulpLab hands compilation over to a local relay that calls the Arduino compiler installed on your computer. You can also compile elsewhere and upload the resulting .hex, .bin or .uf2 file.
Is my code sent to a server?
No. It stays in your browser. To compile C++, it is passed only to the compile relay you installed yourself. The MicroPython download contacts micropython.org, and only when you ask. If you use pulpAssist, the files it reads go to the service you configured.
Can pulpLab replace the Arduino IDE or Thonny?
For writing, uploading and monitoring programs on common boards, yes. It does not upload to STM32 boards and does not offer step-by-step debugging.