Case study
Thermal Cam: decoding the Thermal Master P1 USB stream
Thermal Cam implements a macOS viewer for the Thermal Master P1 using a documented USB control and frame protocol. Its Swift driver starts the vendor stream through libusb, decodes radiometric frames into temperatures, and displays palettes, per-pixel readings, and snapshots.
- Targets
- Protocol
- Category
- Independent reconstruction cases
- Relationship
- Independent reconstruction project
- Sources reviewed
- Evidence class
- C1 partial scope or analysis entry
- Stars
- 1
- Last commit
- 2026-09-02
- Language
- Swift
- License (GitHub)
- MIT
GitHub data as of 2026-11-10
Evidence

- Observed
- Download and demo observed; the case covers part of the target software.
- Scope
- Partial
- Checked
- 2026-11-08
Requirements & limits
- Prerequisites: A Thermal Master P1 camera and macOS 15 or newer are required for the documented viewer.
- Prerequisites: Building requires Xcode 26.4 or newer with Swift 6 and Homebrew libusb.
- License: MIT.
Cite
BibTeX
@misc{thermal-cam-p1-protocol-case,
title = {{Thermal Cam: decoding the Thermal Master P1 USB stream}},
howpublished = {\url{https://github.com/johnboiles/thermal-cam}},
url = {https://github.com/johnboiles/thermal-cam},
urldate = {2026-11-06},
note = {Awesome REA entry: \url{https://awesomerea.org/resources/thermal-cam-p1-protocol-case/}}
}Plain text
Thermal Cam: decoding the Thermal Master P1 USB stream. https://github.com/johnboiles/thermal-cam (accessed 2026-11-06). Awesome REA entry: https://awesomerea.org/resources/thermal-cam-p1-protocol-case/
Useful? Star Awesome REA on GitHub2.4k
About this entry
The description was reviewed against primary sources.
Primary sources
- docs/P1_PROTOCOL.md GitHub · johnboiles/thermal-cam · Revision 9dad5c9
- README.md GitHub · johnboiles/thermal-cam · Revision 9dad5c9
More in Protocols
- ControlVault 3: reconstructing Linux fingerprint support · Case study
- glorouter: reconstructing the Huawei B311-221 HiLink API · Case study
- OpticFilm 135i: reconstructing native USB scanning on Linux · Case study
- Martian Notifier: reconstructing smartwatch Bluetooth commands · Case study
- E88 / E99 Drone: reconstructing Wi-Fi flight control and video access · Case study
- Samsung Washer Monitor: reconstructing a washer panel UART feed · Case study