Program your boards from the browser and watch them come alive

pulpLab brings together the editor, USB uploading, the console, the serial monitor and the plotter. No board to hand? The virtual board answers just like a real one.

Open pulpLabRead the pulpLab help

What you can do with pulpLab

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.

File types recognised by pulpLab:

  • .plab
  • .ino
  • .py
  • .psketch
  • .hex
  • .uf2

Format details and known limitations

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.

In the same space