Table of Contents
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
Tire Pressure Monitoring System (TPMS) sensors transmit in licence-free ISM bands — 315 MHz in North America and 433.92 MHz in Europe and most of the rest of the world. This app decodes TPMS transmissions and displays tyre pressure, temperature, sensor ID, and status flags in a live list.
Settings
- Frequency: Three options are available — 314.9 MHz, 315.0 MHz, and 433.9 MHz. Both 314.9 and 315.0 are provided because "315 MHz" sensors may actually transmit at either frequency; the default is 314.9 MHz.
- Pressure unit: kPa, PSI, or BAR. Selectable inline; applies to both the list view and detail view.
- Temperature unit: °C or °F. Selectable inline.
- RF Amp (0 or 1): Enables/disables the internal RF amplifier.
- LNA gain (0–40): Low-noise amplifier gain. See Receive Quality Issues.
- VGA gain (0–62): Variable-gain amplifier gain. See Receive Quality Issues.
Decoded Signal List
Each row in the list represents one unique sensor (identified by type + ID). The columns are:
- Tp: Sensor type number. Decoded types:
0= None1= FLM_642= FLM_723= FLM_804= Schrader5= GMC_96
- ID: The 8-digit hexadecimal sensor ID. Note: some sensors print their ID in decimal on the housing.
- Pres: Tyre pressure in the selected unit (kPa, PSI, or BAR).
- Temp: Temperature in the selected unit (°C or °F). Spurious readings can occur due to receive errors, unsupported sensor models, or failing sensors — compare against the vehicle's dashboard reading where possible.
- Cnt: Number of packets received from this sensor since the app was opened.
- Fl: Sensor flags as a 2-digit hexadecimal value. The meaning of individual flag bits varies by sensor manufacturer and model.
Selecting a row opens a detail view with all fields expanded. A Save button in the detail view writes the sensor data to TPMS/TPMS_.TXT in a format compatible with the TPMS TX app.
Transmission Behaviour
Each sensor transmits at intervals that vary from a few seconds to several minutes, depending on the vehicle and sensor model. Transmission is typically triggered by wheel movement or by a rapid pressure change. Most sensors can also be triggered immediately using a TPMS activation tool operating at 125 kHz.
Logging
When an SD card is present on app startup, received packets are automatically logged to LOGS/TPMS.TXT. Each log entry contains a timestamp in YYYYMMDDHHMMSS format, followed by the receiver frequency, signal type (FSK 38400 19200 Schrader, OOK - 8192 Schrader, or OOK - 8400 Schrader), the raw Manchester-decoded hex data, a / separator, and a per-bit Manchester coding error indicator.
Settings Persistence
The selected pressure unit and temperature unit are saved to rx_tpms.ini on the SD card when App Settings is enabled in the global Settings menu.
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
Start here
Contributors
How to collaborate
Contributing Guidelines
How to ask questions correctly
Hardware
- PortaPack Versions (which one to buy)
- Features
- HackRF Versions
- Description of the hardware
- Enclosure/cases
- Repairs
- Mods
User manual
Intended use and Legality
- Usage cautions
- First steps
- Firmware update procedure
- User interface
- Powering the PortaPack
- Troubleshooting
- Won't boot
- Config Menu
- Firmware upgrade
- Diagnose firmware update in Windows
- Receive Quality Issues
- No TX/RX
- TX Carrier Only
- H2+ speaker modifications
- Dead Coin Cell Battery
- Factory Defaults
- SD card not recognized by PC with the SD-card over USB selected
- DFU overlay
- Full reset
- SolveBoard
- How to Format SDCard
- What if I don't like some of the apps
Applications
- 📥 Receivers
- 📤 Transmitters
- ADS-B(S) TX
- Adult Toys
- APRS TX
- BHT Xy/EP
- BLE TX
- BLESpam
- Burger Pager
- CVS Spam
- EPIRB
- FlipperTX
- GPS Sim
- Hopper
- Jammer
- KeeLoq TX
- Key fob TX
- LGE Tool
- MDC-1200 TX
- Morse TX
- OOK
- OOK Brute
- OOK Editor
- P25 TX
- POCSAG TX
- RDS
- RTTY TX
- SAME TX
- Signal gen
- Soundboard
- Spectrum Painter
- SSTV
- TEDI/LCR
- TouchTunes
- TPMS TX
- 🔄 Transceivers
- 🟡 Recon
- 🔴 Capture
- ▶️ Replay
- 🖲️ Remote
- 🔍 Looking Glass
- 🛠️ Utilities
- 🎮 Games
- ⚙️ Settings
- 💻 HackRF Mode
Misc
Developer Manual
- Compilation of the firmware
- Compile on WSL with ninja
- How to compile on Windows faster with WSL 2
- Using Docker and Kitematic
- Docker command-line reference
- Using Buddyworks and other CI platforms
- Notes for Buddy.Works (and other CI platforms)
- Using ARM on Debian host
- All in one script for ARM on Debian host
- Compile on Arch based distro (exclude Asahi), or other weird distros
- Dev build versions
- Notes About ccache
- Create a custom map
- Code formatting
- PR process
- Description of the Structure
- Software Dev Guides
- Tools
- Research
- UI Screenshots
- Maintaining
- Creating a prod/stable release (Maintainers only)
- Maintaining rules
- Development States Notes
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
Note
The wiki is incomplete. Please add content and collaborate.
Important
- This is a public wiki. Everything is visible to everyone. Don't use it for personal notes.
- Avoid linking to external tutorials/articles; they may become outdated or contain false information.