How maxritter/diy-thermocam works
DIY-Thermocam V3 is an open-source FLIR Lepton thermal imager, with firmware for device operation and a separate desktop live viewer. The firmware startup initializes hardware and proceeds through setup and settings into live mode; the tree also identifies thermal capture, display, file, and menu capabilities. USB file transfer is implemented as a distinct MTP mode. Wiring beyond the sampled startup and mass-storage code is shown only where supported; the remaining feature nodes reflect named modules, not inspected call paths.
Main entry points: livemode.cpp Live mode · main.cpp Firmware setup · thermal.cpp Thermal processing · create.cpp Create captures
Components 21
Device startup
- Firmware setup
firmware/3.0/src/main.cpp - Hardware initialization
firmware/3.0/src/hardware/hardware.cpp - First-start setup
firmware/3.0/src/gui/firststart.cpp
Thermal imaging
- Live mode
firmware/3.0/src/gui/livemode.cpp - Lepton sensor
firmware/3.0/src/hardware/lepton.cpp - Thermal processing
firmware/3.0/src/thermal/thermal.cpp - Temperature
firmware/3.0/src/thermal/temperature.cpp - Color schemes
firmware/3.0/src/general/colorschemes.cpp - Create captures
firmware/3.0/src/thermal/create.cpp
Device interface
- GUI framework
firmware/3.0/src/gui/gui.cpp - Menus and settings
firmware/3.0/src/gui/mainmenu.cpp - Display
firmware/3.0/src/hardware/display/display.cpp - Touch input
firmware/3.0/src/hardware/touchscreen/touchscreen.cpp
Storage and transfer
- Capture save and load
firmware/3.0/src/thermal/save.cpp - SD card
firmware/3.0/src/hardware/sdcard.cpp - MTP file transfer
firmware/3.0/src/hardware/massstorage.cpp
Desktop viewer
- Viewer launcher
software/thermal_live_viewer/3.0/main.py - Live image viewer
software/thermal_live_viewer/3.0/src/liveviewer.py - Viewer color maps
software/thermal_live_viewer/3.0/src/colorschemes.py
Other components
- Device user
- Connected computer
Connections 20
- Firmware setup → Hardware initialization: initializes
- Firmware setup → First-start setup: runs if needed
- Firmware setup → Live mode: enters
- Device user → Live mode: operates
- Live mode → Lepton sensor: reads sensor
- Live mode → Thermal processing: processes frames
- Thermal processing → Temperature: derives readings
- Thermal processing → Color schemes: colorizes image
- Live mode → GUI framework: updates interface
- GUI framework → Display: renders
- Device user → Touch input: touches
- Touch input → Menus and settings: provides input
- Menus and settings → Create captures: initiates capture
- Create captures → Capture save and load: saves capture
- Capture save and load → SD card: reads and writes
- Device user → MTP file transfer: requests transfer
- MTP file transfer → Connected computer: serves files
- Device user → Viewer launcher: launches
- Viewer launcher → Live image viewer: starts viewer
- Live image viewer → Viewer color maps: uses color maps