

Picothermal hardware
Thermal camera based on Flir Lepton with RP2040 and USB-C
- Size
- 50 × 30 mm
- Copper layers
- 4
- Thickness
- 0.8 mm
- Parts
- 121
- Nets
- 101
- Pads
- 402
- Tracks, vias
- 555, 197
- Pours
- 19
- Routed
- Yes
- KiCad
- KiCad 7 (file 20221018)
- Created
- 23 Oct 2022
- Updated
- 12 Oct 2026
Overview
Picothermal hardware is an open-source printed circuit board by icamaster, from the icamaster/picothermal repository on GitHub, published under the MIT licence. It is a 4-layer board of 50 × 30 mm with 121 parts on 101 nets, routed with 555 tracks and 197 vias.
It is built around the RP2040, TLV62569ADRL and ESD9C3.3ST5G, with the DF2S6.2FS,L3M, ECS-2520MV-250-CL-TR and MPZ1608S101ATAH0 among its other parts. Its parts include 37 capacitors, 36 resistors, 10 diodes, 7 ICs and 2 connectors. It belongs with the RP2040 boards of this library.
Main components
6RP2040
LQFN-56(7x7)12bit 133MHz 30 LQFN-56(7x7) Microcontrollers (MCU/MPU/SOC) ROHSRaspberry PiMicrocontrollers (MCU/MPU/SOC)TLV62569ADRL
SOT-563-40℃~+125℃@(TJ) 1 1.5MHz 2.5V~5.5V 2A 600mV~5.5V Adjustable Buck Built-in Overcurrent Protection Step-down type Yes SOT-563 DC-DC Converters ROHSTexas InstrumentsDC-DC ConvertersESD9C3.3ST5G
SOD-923(0402)ESD And Surge Protection (TVS/ESD)TECH PUBLICDF2S6.2FS,L3M
SOD-9231 2.5uA 32pF 5V 6.2V Bidirectional ESD IEC 61000-4-2 SOD-923 ESD and Surge Protection (TVS/ESD) ROHSToshibaESD And Surge Protection (TVS/ESD)ECS-2520MV-250-CL-TR
SMD2520-4PCrystal OscillatorsECSMPZ1608S101ATAH0
0603-55℃~+125℃ 1 100Ω@100MHz 30mΩ 3A ±25% 0603 Ferrite Beads ROHSTDKFerrite Beads
README
README.mdIntroduction
Picothermal is a WebUSB thermal camera based on a Flir Lepton 3.5 sensor that uses a RP2040 and connects to your PC or phone via USB-C.
It doesn't need any app as it uses WebUSB (which also means it doesn't support Firefox, unfortunately).

Top assembly

Hardware
The hardware and software is open-source, see the picothermal-hardware folder for the Kicad project, manufacturing files and a PDF schematic.
There are also STLs available for an enclosure in enclosure. There are two variants for the bottom piece depending on the PCB thickness (0.8mm or 1.6mm).
Firmware
For firmware, please see picothermal-fw.
Initially I wanted to write the software in C, using TinyUSB for the USB protocol. Unfortunately, due to lack of free time, I decided to rewrite this using agents in Rust, using embassy. The end result works quite good, although I expect the code to be pretty unmaintanable since it is mostly agent written.
License
MIT
Parts
121| Qty | Value | Footprint | References |
|---|---|---|---|
| 21 | 0.1uF | miscellaneous:C_0402_1005Metric | C1, C2, C12, C13, C14, C18, C19, C20, C21, C22, C23, C24, C25, C30, C31, C32 +5 |
| 10 | 100K | miscellaneous:R_0402_1005Metric | R1, R11, R19, R20, R28, R29, R30, R31, R32, R33 |
| 8 | 27R | miscellaneous:R_0402_1005Metric | R6, R7, R16, R17, R24, R25, R26, R35 |
| 8 | 4.7uF | miscellaneous:C_0603_1608Metric | C7, C10, C11, C15, C16, C17, C34, C35 |
| 8 | ESD9C3.3ST5G | Diode_SMD:D_SOD-923 | D1, D2, D4, D5, D6, D7, D8, D9 |
| 5 | 0R | miscellaneous:R_0402_1005Metric | R2, R8, R9, R22, R23 |
| 4 | 1K | miscellaneous:R_0402_1005Metric | R3, R4, R5, R10 |
| 3 | , , | ||
| 3 | 2K4 | miscellaneous:R_0402_1005Metric | R13, R18, R21 |
| 3 | Fiducial | Fiducial:Fiducial_1mm_Mask2mm | FID1, FID2, FID3 |
| 3 | GND | miscellaneous:TestPoint_Pad_D1.0mm | TP9, TP10, TP12 |
| 2 | 10pF | miscellaneous:C_0402_1005Metric | C26, C27 |
| 2 | 18pF | miscellaneous:C_0402_1005Metric | C3, C4 |
| 2 | 1uF | miscellaneous:C_0402_1005Metric | C5, C6 |
| 2 | 1uH | Inductor_SMD:L_TDK_VLS201610CX-1 | L1, L2 |
| 2 | 22uF | miscellaneous:C_0603_1608Metric | C28, C29 |
| 2 | 5.1K | miscellaneous:R_0402_1005Metric | R34, R36 |
| 2 | 7K5 | miscellaneous:R_0402_1005Metric | R12, R14 |
| 2 | AP7330-W5-7 | Package_TO_SOT_SMD:SOT-25-5 | U2, U3 |
| 2 | SW_Push | Button_Switch_SMD:SW_SPST_PTS815 | SW1, SW2 |
| 2 | TLV62569A | Package_TO_SOT_SMD:SOT-563 | U5, U6 |
| 1 | +1V1 | miscellaneous:TestPoint_Pad_D1.0mm | TP1 |
| 1 | +5V | miscellaneous:TestPoint_Pad_D1.0mm | TP8 |
| 1 | 12MHz | Crystal:Crystal_SMD_2520-4Pin_2.5x2.0mm | Y2 |
| 1 | 1V2 | miscellaneous:TestPoint_Pad_D1.0mm | TP7 |
| 1 | 25MHz | miscellaneous:TestPoint_Pad_D1.0mm | TP13 |
| 1 | 2V8 | miscellaneous:TestPoint_Pad_D1.0mm | TP3 |
| 1 | 3K | miscellaneous:R_0402_1005Metric | R15 |
| 1 | 3V0 | miscellaneous:TestPoint_Pad_D1.0mm | TP6 |
| 1 | 3V3 | miscellaneous:TestPoint_Pad_D1.0mm | TP2 |
| 1 | 402k | miscellaneous:R_0402_1005Metric | R27 |
| 1 | DF2S6.2FS,L3M | Diode_SMD:D_SOD-923 | D10 |
| 1 | ECS-2520MV-250-CL | Oscillator:Oscillator_SMD_ECS_2520MV-xxx-xx-4Pin_2.5x2.0mm | Y1 |
| 1 | Flir LEPTON | Connector_Molex:MOLEX_105028-1001 | U7 |
| 1 | G*** | kibuzzard-63AA0EB3 | kibuzzard-63AA0EB3 |
| 1 | G*** | kibuzzard-63AA0F05 | kibuzzard-63AA0F05 |
| 1 | G*** | kibuzzard-63AA0E75 | kibuzzard-63AA0E75 |
| 1 | GND | TestPoint:TestPoint_Plated_Slot_5.0x2.5 | TP11 |
| 1 | LED | LED_SMD:LED_0603_1608Metric | D3 |
| 1 | MPZ1608S101ATAH0 | miscellaneous:L_0603_1608Metric | FB1 |
| 1 | PG_1V2 | miscellaneous:TestPoint_Pad_D1.0mm | TP5 |
| 1 | PG_3V0 | miscellaneous:TestPoint_Pad_D1.0mm | TP4 |
| 1 | RP2040 | Package_DFN_QFN:QFN-56-1EP_7x7mm_P0.4mm_EP3.2x3.2mm | U4 |
| 1 | TC2030-CTX | Connector:Tag-Connect_TC2030-IDC-NL_2x03_P1.27mm_Vertical | J1 |
| 1 | USB-C Plug | Connector_USB:USB_C_Plug_GCT_USB4155 | J2 |
| 1 | W25Q16JV | Package_SON:USON-8_2x3mm | U1 |
Questions
How big is the Picothermal hardware PCB?
It measures 50 × 30 mm and has 4 copper layers, 0.8 mm thick.
What parts does the Picothermal hardware use?
121 parts, built around the RP2040, TLV62569ADRL, ESD9C3.3ST5G and DF2S6.2FS,L3M. The full list of its parts is on this page, with links to each part's symbol and footprint where PCBKit's library has them.
Where can I download the Picothermal hardware KiCad files?
From the icamaster/picothermal repository on GitHub, at the commit this page was made from: the board is picothermal-hardware/picothermal-hardware.kicad_pcb and its schematic picothermal-hardware/picothermal-hardware.kicad_sch. PCBKit opens the board in the browser, with nothing to install.
Can I use the Picothermal hardware design in my own project?
Its repository publishes it under the MIT licence: you may reuse it on that licence's terms (keep the author's notice, and for a copyleft licence share your changes alike).
Similar boards
- 4 layers100 × 100 mm

- 6 layers112 × 98 mm

- 6 layers37 × 37 mm

- 4 layers100 × 80 mm

- 4 layers39.3 × 60.8 mm

- 4 layers55.5 × 70 mm

ESP32 LoRa Wireless Node
Balamanikandan-projects/ESP32-RFM95W-LoRa-Wireless-Telemetry-Node
A compact, high-performance, 4-layer custom PCB design integrating an ESP32-WROOM-32E microcontroller with an RFM95W sub-GHz LoRa radio module.
31 parts - 4 layers40 × 40 mm

- 4 layers285.5 × 80.8 mm
