PICSimLab: Real-Time Emulator for PIC, Arduino, ESP32 & STM32

Empower your embedded development with a versatile open-source hardware simulator. Test your firmware in a professional virtual lab environment without the need for physical boards.

✅ Open Source (GPL v2) ✅ Cross-Platform Support ✅ Virtual Peripheral Integration

PICSimLab Hub is an independent, unofficial community resource site — not the official PICSimLab website. About this site

Powerful Emulation Capabilities

PICSimLab is not just a simple simulator; it is a comprehensive virtual laboratory designed for embedded systems engineering and education.

🚀

Real-Time Simulation

Experience high-fidelity execution of your firmware. PICSimLab integrates professional backends like simavr, uCsim, and QEMU to ensure your code runs as it would on real silicon.

🔌

Virtual Spare Parts

Connect your virtual boards to a vast library of components, including LCDs (HD44780, ili9340), Keypads, Stepper Motors, SD Cards, and even Ethernet Shields (W5500).

🛠️

IDE Integration

Seamlessly integrates with your existing workflow. Support for MPLAB X, Arduino IDE, and VS Code (PlatformIO) via GDB debugger and virtual serial ports.

🌐

IoT & Connectivity

Simulation support for ESP32 and ESP32-C3 via QEMU. WiFi-related support is partial and added feature by feature; Bluetooth simulation is not documented.

📊

Signal Analysis

Built-in basic two-channel oscilloscope for viewing signals on any microcontroller pin, with voltage and frequency measurements.

💻

Remote Control

Automate your tests using the Remote Control interface. Interact with the simulator via serial commands for automated CI/CD pipelines.

Supported Boards & Architectures

PICSimLab integrates multiple simulation backends to support a wide range of development boards.

PIC Microchips
  • ✅ PIC16F628A / 16F877A
  • ✅ PIC18F452 / 18F4550
  • ✅ PIC18F4620 / 18F67J60
  • ✅ McLab2 / PICGenios Boards
Arduino & AVR
  • ✅ Arduino Uno (ATmega328p)
  • ✅ Arduino Mega (ATmega2560)
  • ✅ Arduino Nano (ATmega328P)
  • ✅ Franzininho DIY (ATtiny85)
STM32
  • ✅ Blue Pill (STM32F103C8T6)
  • ✅ STM32 H103 (STM32F103RBT6)
  • ✅ STM32F103 only (2 boards)
  • ✅ QEMU-powered Simulation
ESP32 & IoT
  • ✅ ESP32-DevKitC
  • ✅ ESP32-C3 (RISC-V)
  • ✅ Partial WiFi support (see changelog)
  • ✅ I2C / PWM / UART Support

Note: PICSimLab uses specialized forks of simavr, picsim, uCsim, and QEMU to emulate the supported boards and spare parts.

How It Works in Your Workflow

Bridge the gap between your code and virtual hardware in three simple steps.

1

Write & Compile

Use your favorite IDE (VS Code, Arduino, or MPLAB X) to write your C/C++ or Assembly code and generate the .hex or .bin file.

➜
2

Load Firmware

Open PICSimLab, select your target board (e.g., ESP32 DevKit), and load your compiled firmware file into the virtual microcontroller.

➜
3

Real-Time Debug

Interact with virtual LEDs, LCDs, and sensors. Use the built-in Oscilloscope or connect GDB for line-by-line debugging.

Compatible Ecosystem

VS Code Arduino IDE MPLAB X PlatformIO GDB Debugger

PICSimLab vs. Alternatives

How PICSimLab compares on cost, offline use and debugging.

Feature PICSimLab Proteus (Paid) Wokwi (Web)
Cost Free (GPL v2) Expensive License Free / Premium
ESP32/STM32 Support High (QEMU Integration) Limited/Complex Good (Browser-based)
Offline Use Full Support Full Support Requires Internet
GDB Debugging MPLAB X / remote GDB Excellent Basic
Peripheral Variety Ethernet/Motors/Sensors Massive Library Moderate

* PICSimLab is a free (GPL-2.0) open-source hardware emulator that integrates with local IDEs (MPLAB X, Arduino IDE, VS Code with PlatformIO) without the recurring cost of commercial software.

Frequently Asked Questions

Quick answers to common questions about PICSimLab installation and capabilities.

Is PICSimLab really free for commercial use?

Yes. PICSimLab is licensed under the GPL v2, which means it is free to use for education, personal projects, and professional development. You can download and use all its features without any subscription fees.

Does it support macOS natively?

Yes. Since v0.9.3, PICSimLab provides native macOS builds (.dmg for Intel x86_64 and Apple Silicon arm64) — see the download page. An official online version also exists, but it has no debugging or serial support and runs slower than the desktop version.

Can I simulate WiFi and Bluetooth with ESP32?

Only in part. The QEMU backend for ESP32 has gained WiFi-related features incrementally (for example, ESP32-C3 WiFi and ESP-NOW, and HTTPS over WiFi on ESP32, per the official changelog), but the official documentation does not promise full WiFi simulation, and Bluetooth simulation is not documented. Treat network features as partial and test on real hardware before relying on them.

What is the difference between Stable and Unstable versions?

The stable version (currently v0.9.3) is the tested release recommended for general use. Separately, GitHub also publishes an unstable latestbuild snapshot of the newest code, which may contain bugs. v0.9.3 itself is a stable release, not an alpha or experimental build.

Can I add my own custom components?

Yes, as an open-source project, you can develop your own spare parts. PICSimLab provides a development API and documentation for contributors to extend the library of virtual sensors and actuators.

Target Scenarios & Use Cases

Discover how PICSimLab empowers different stages of embedded development.

🎓

Academic & STEM Education

Perfect for universities and schools teaching Microprocessor Architecture. PICSimLab allows students to practice without the risk of damaging hardware or the cost of purchasing multiple development kits.

  • Virtual labs for remote learning
  • Instant reset and flash for rapid testing
  • Visualization of internal registers and I/O states
🏗️

Firmware Prototyping

Professional engineers use PICSimLab to validate logic flow and peripheral communication (I2C, SPI, UART) before the first PCB is manufactured, significantly reducing time-to-market.

  • Test edge cases without physical wiring
  • Verify UI logic on virtual LCD displays
  • Pre-validate network stacks for IoT devices

Automated CI/CD Pipelines

By utilizing the PICSimLab_NOGUI and Remote Control interface, developers can integrate hardware simulation into automated test suites. Ensure every commit passes functional tests in a virtual environment.

# Example: Remote Control Interface (rcontrol)
$ telnet localhost 5000
> help
> blist
> version

Technical Specifications

Latest Stable v0.9.3
Unstable Snapshot latestbuild (GitHub)
License GNU GPL v2.0
File Size ~60 MB (Windows)
Architecture Windows x86/x64, Linux x86_64, macOS Intel/ARM

Trusted & Verified

🛡️ Safe & Clean Downloads

Downloads on PICSimLab.com link to the official PICSimLab releases on GitHub. SHA-256 checksums for the current release are listed on the download page so you can verify your file.

  • ✔️ Primary downloads link to the official GitHub releases
  • ✔️ SHA-256 checksums listed on the download page

Need to verify your file? See how to check SHA-256 checksums on the download page.