IR Programmer
ismaillgunes·IR_Programmer·hardware/IR_Programmer.kicad_pcb
About the IR Programmer PCB
IR Programmer is an open source STM32 PCB design by ismaillgunes, published on GitHub under the MIT license. It is a 2-layer board measuring 84 × 52 mm, with 42 components from 23 distinct parts.
Its main chip is the STM32L073VBTx, from the STM32 family. Other key parts include the W25Q128JVPIQ. By type, the board carries 15 resistors, 13 capacitors, 4 connectors, 3 transistors, 3 switches and 2 ICs.
It belongs with the usb & debug tools designs in this gallery.
From the project
A standalone, button-operated firmware programmer for STM32L0 microcontrollers, built on an STM32L073VBT. It stores a firmware image in its own flash and writes it to a target MCU over one of two links:
A standalone, button-operated firmware programmer for STM32L0 microcontrollers, built on an STM32L073VBT. It stores a firmware image in its own flash and writes it to a target MCU over one of two links:
Press a button, wait for the beeps, and the next board is programmed. There is no PC, no debugger and no cable to the target on the IR path.
Every STM32 ships from the factory with a system bootloader in ROM ("system memory"). It is written by ST, it lives in a read-only area and it cannot be erased or overwritten. When the target starts from system memory, this bootloader listens on its…

Main components on the IR Programmer
IR Programmer bill of materials (BOM)
42 components, 23 distinct parts.
| Qty | Part | Footprint | Refs |
|---|---|---|---|
| 1 | STM32L073VBTx | LQFP-100_14x14mm_P0.5mm | U1 |
| 1 | W25Q128JVPIQ | W25Q128JVPIQ | U2 |
| 1 | LTR-4206E | D_T-1_P2.54mm_Vertical_AnodeUp | Q1 |
| 2 | MMBT3904-TP | SOT-23-3 | Q2, Q3 |
| 1 | Conn_02x05_Odd_Even | PinHeader_2x05_P2.54mm_Vertical | J1 |
| 1 | 22035025 | MOLEX_22035025 | J2 |
| 1 | Conn_02x04_Odd_Even | PinHeader_2x04_P2.54mm_Vertical | J3 |
| 1 | PROGRAMMING_1X6 | Programming Connection | P1 |
| 1 | Buzzer | Buzzer_12x9.5RM7.6 | BZ1 |
| 2 | DS1042-03-1-8-KKR-160-10 | DS1042-03-1-8-KKR-160-10 | SW1, SW3 |
| 1 | DS1042-07-1-1KRR16008 | SW_TS24-62-14-BL-200-SMT-TR-67 | SW2 |
| 1 | LED | D_T-1_P2.54mm_Vertical_AnodeUp | D1 |
| 3 | asdasda C | C_0603_1608Metric | C1, C2, C4 |
| 8 | asdasda 100nF | C_0603_1608Metric | C3, C6, C7, C9, C10, C11, C13, C15 |
| 1 | C | C_0603_1608Metric | C5 |
| 1 | CC0603KRX7R7BB105 1uF | C_0603_1608Metric | C14 |
| 9 | 10K | R_0603_1608Metric | R1, R2, R3, R5, R6, R8, R10, R13 +1 |
| 1 | 10K | RESC1607X60N | R4 |
| 1 | 220R | R_0603_1608Metric | R7 |
| 1 | 100R | R_0603_1608Metric | R9 |
Show 3 more
| Qty | Part | Footprint | Refs |
|---|---|---|---|
| 1 | R | R_0603_1608Metric | R11 |
| 1 | 1K | R_0603_1608Metric | R12 |
| 1 | 4.7K | R_0603_1608Metric | R14 |
IR Programmer design files
The KiCad project lives in the ismaillgunes/IR_Programmer repository on GitHub; these links point at the commit this page was built from.
IR Programmer: common questions
What microcontroller does the IR Programmer use?
The IR Programmer is built around the STM32L073VBTx, from the STM32 family.
How big is the IR Programmer PCB?
The IR Programmer measures 84 × 52 mm, has 2 copper layers and is 1.6 mm thick.
How many components are on the IR Programmer?
42 components, from 23 distinct parts. The full bill of materials is listed on this page.
Where can I download the IR Programmer design files?
From the ismaillgunes/IR_Programmer repository on GitHub, which has the KiCad layout and the schematic; the links under Design files point to each one.
Can I use the IR Programmer design in my own project?
Yes, under the terms of its MIT license, which ismaillgunes chose for the repository.
Can I test firmware for the IR Programmer without the hardware?
Yes. HardLabs builds a simulation of the board from its netlist and BOM, so you can run and debug STM32 firmware against it before you order a PCB.
Similar boards
STM32
LumenPnP Motherboard
opulo-inc
149 × 95 mm296 parts4LCC-BY-SA-4.03.7kSTM32
AxxSolder
AxxAxx
39 × 82.5 mm122 parts2LGPL-3.01.7kSTM32
LibreVNA
jankae
122 × 98 mm592 parts6LGPL-3.01.6kSTM32
AIOC
skuep
21 × 31.5 mm47 parts2LMIT1.4kSTM32
Ferris
pierrechevalier83
208.8 × 86.8 mm102 parts2LSHL-2.11.3kSTM32
176 pin board
rusefi
61.8 × 73.2 mm76 parts2LGPL-3.01.2k