A high-intensity IR blaster built on the RP2040.
Browser-native control. MOSFET-driven. Zero compromise.
| Ref | Value | Qty |
|---|---|---|
| C4, C5 | 15pF | 2 |
| C6–C13, C17, C18 | 100n | 10 |
| C14 | 4.7uF | 1 |
| C15 | 22uF | 1 |
| C16 | 100nF | 1 |
| C19, C20 | 1u | 2 |
| D1–D7 | LED | 7 |
| J1 | Conn_01x03_Pin | 1 |
| J2 | USB4155-03-C_REVA | 1 |
| R3, R13 | 5.1k | 2 |
| R6 | 1k (0603) | 1 |
| R7 | 1k | 1 |
| R9 | 10k | 1 |
| R10 | 100k | 1 |
| R11, R12 | 22 | 2 |
| SW2 | BOOTSEL | 1 |
| U1 | RP2040 | 1 |
| U4 | TPSM828214SILR | 1 |
| U5 | W25Q128JVSIQ | 1 |
| Y1 | 12 MHz | 1 |
Encodes raw hex address/command pairs into precise pulse-distance sequences compatible with any NEC IR receiver.
Hardware-accurate duty cycle generation passes standard consumer IR receiver filters every time — no flicker, no misses.
Control the device entirely from a browser over USB CDC. No drivers. No apps. Just a data-capable cable.
High-side MOSFET switching delivers far more output current than GPIO-alone designs, driving a full IR LED array.
Browse and transmit signals directly from the Flipper Zero IR database — the largest open-source IR signal library.
Firmware, schematics, PCB layouts and software — all fully open. Study it. Fork it. Build on it.
Hold the BOOT button on the RP2040 board and connect via a data-capable USB cable. Release once the drive mounts.
The board mounts as RPI-RP2. Drop the CircuitPython .uf2 onto its root. It reboots as CIRCUITPY.
Copy code.py and lib/ from /firmware onto the CIRCUITPY volume root.
Connect the device to your computer via USB, then open the web controller in a Chromium-based browser. Click Connect to establish the WebSerial session.
This project is designed solely for personal engineering research, hardware prototyping, and authorized testing. Only operate this device on equipment you personally own or have explicit permission to control. The creator assumes no liability for misuse, property disruption, or equipment damage. By using this project you take full responsibility for your actions.
Open the controller, connect your hardware, and start sending signals.
→ Open Controller