Repolode
CoretechR

CoretechR/PicoLab

Browser-based embedded bring-up multitool for the Raspberry Pi Pico: a scope, logic analyzer, power supply and bus tools served from the board over USB.

Stars
322
Forks
35
Open issues
1
Last commit
5 days ago

What is it?

Pico.Lab turns a Raspberry Pi Pico or Pico 2 (RP2040/RP2350) into a debugging instrument. The firmware presents the board as a virtual USB Ethernet adapter and serves a window-based web interface from flash, so it can be used from any modern browser at pico.lab without installing host software or drivers.

The toolset includes a 4-channel oscilloscope, an 8-channel logic analyzer with UART, I2C and SPI decoders, a GPIO controller, a data logger that exports CSV, a UART terminal, and I2C and SPI bus masters. A serial CLI is also available for scripting. A custom Pico.Lab board adds analog inputs, adjustable rails, current measurement and protection circuitry, though the other tools run on a standard Pico.

The project is written in C on the Pico SDK, using TinyUSB and lwIP for networking. The author notes that the hardware's bandwidth is far below dedicated lab instruments, so it targets quick checks such as finding why an I2C sensor does not respond.

Key features

  • 01Browser-based interface served from the board, with no drivers or host software needed.
  • 024-channel oscilloscope using overclocked ADC and DMA, with roughly 400 kHz bandwidth.
  • 038-channel logic analyzer with up to 100 MS/s capture and UART, I2C and SPI decoders.
  • 04GPIO control, data logger with CSV export, UART terminal, and I2C/SPI bus masters.
  • 05Serial CLI for automation over a virtual COM port.

Use cases

  • Diagnosing why an I2C or SPI device does not respond on a prototype.
  • Measuring the current draw of a module such as a Wi-Fi chip during bring-up.
  • Capturing and decoding UART or bus traffic between two embedded devices.
  • Logging slow analog and digital signals to CSV for later analysis.

Quick start

  1. 1

    Download the .uf2 file for your RP2040 or RP2350 board from the project's releases

  2. 2

    Put the board into BOOTSEL mode and drop the .uf2 file onto its volume to flash it

  3. 3

    Connect the board via USB, then open http://pico.lab in your browser (or http://192.168.7.1 if local DNS does not work)

Things to know

  • Performance is limited by the RP2350 and USB 1.1, so it will not match dedicated oscilloscopes or logic analyzers.
  • The power supply controller only works with the custom Pico.Lab board, not a standard Pico.
  • Licensed under GPL-3.0, a copyleft license that requires derivative works to be open-sourced under the same terms.

In collections

Topics

#embedded#debugging#raspberry-pi-pico#logic-analyzer#oscilloscope#hardware#firmware#web-ui#3d-printing#debug

FAQ

What is PicoLab?
Browser-based embedded bring-up multitool for the Raspberry Pi Pico: a scope, logic analyzer, power supply and bus tools served from the board over USB. Pico.Lab turns a Raspberry Pi Pico or Pico 2 (RP2040/RP2350) into a debugging instrument. The firmware presents the board as a virtual USB Ethernet adapter and serves a window-based web interface from flash, so it can be used from any modern browser at pico.lab without installing host software or drivers.
Is PicoLab free to use? What license does it have?
PicoLab is open source under the GPL-3.0 license. Check the license terms before using it in commercial products.
Is PicoLab still maintained?
Actively maintained. The last commit to PicoLab was on Nov 2, 2026.
What can I use PicoLab for?
Diagnosing why an I2C or SPI device does not respond on a prototype. Measuring the current draw of a module such as a Wi-Fi chip during bring-up. Capturing and decoding UART or bus traffic between two embedded devices. Logging slow analog and digital signals to CSV for later analysis.
How do I install PicoLab?
Download the .uf2 file for your RP2040 or RP2350 board from the project's releases Put the board into BOOTSEL mode and drop the .uf2 file onto its volume to flash it Connect the board via USB, then open http://pico.lab in your browser (or http://192.168.7.1 if local DNS does not work)
Where can I get PicoLab?
The source code and installation instructions are on GitHub: https://github.com/CoretechR/PicoLab

Summary generated by AI from the project's README. GitHub stats refresh daily.

Related projects