RP2040 Thermal Imaging PCB
Credit-card sized thermal camera with QSPI flash and custom LiPo Battery Management System
The Objective
When I was between hardware projects for Formula, I decided to take on my own project. This project allowed me to explore discrete microcontroller architecture and construct on-board power management. My goal was to build a portable thermal camera without using premade modules or breakout boards. The idea was to get more experience in areas I hadn’t worked on with the team as well as make something practical that may assist with hardware testing in the future.
System Architecture
The imager is an MLX90640. The data from the sensor is processed by an RP2040 microcontroller. This MCU lacks internal flash memory, so an external QSPI Flash chip was placed for program storage. To make the camera more portable, a custom LiPo Battery Management System was designed. This system allowed direct power delivery via USB-C which would charge the battery, and power the device.
Design Rationale & Challenges
The main challenge was developing the device in such a way to stay mobile, thus, power path efficiency was critical. To prevent the system from constantly charging and draining the LiPo battery, a load-sharing circuit was implemented with a P-Channel MOSFET. This allowed for seamless power transitions between the battery and the USB-C power, keeping the battery healthy increasing its lifetime use. Another challenge was getting the credit-card-sized footprint. This required planning, measuring, and clever component placement and routing to ensure sensitive data lines weren’t crossed, everything was stable, and components were thermally sound.
Outcome & Validation
While this board has yet to be ordered and constructed, simulations make me confident in the design, especially around load sharing and power management. Furthermore, I was satisfied with the experience gained with routing a QSPI Flash module as well as engineering my own load sharing circuit.
Technical Specifications
- Core MCU: RP2040
- Architecture: Custom LiPo Battery Management System, and QSPI Flash Storage
- Interfaces: USB 2.0, SPI/I2C, MLX90640
- Tools Used: Altium Designer, JLCPCB, Raspberry Pi Pip Assets
Custom Battery Management System
Click to view full resolution
RP2040 and QSPI Flash
Click to view full resolution
Board Routing
Click to view full resolution
Interactive PCB Hardware
Click, drag, and zoom, or tap, two finger drag, and pinch (mobile)
to inspect board routing and component placement
> Interactive 3D .glb model pending export_