UberGuidoZ / TPMS-Flipper

Generate TPMS sub files for the Flipper Zero

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

TPMS-Flipper

Generate TPMS sub files for the Flipper Zero

Primer: Since approx 2009 all vehicles in the United States are required to have a method of measuring tire pressure. These sensors are called Tire Pressure Monitoring Systems (TPMS). There are two main types of TPMS, Direct and Indirect, direct sensors are mounted in the wheel and usually transmit information to the car ECU via radio frequency signals. RF TPMS transmissions are the subject of this repository. In order to prevent your vehicle's TPMS system from effecting other cars, TPMS makers rely on different encoding modulations, formats, Preambles and the TPMS sensor IDs that are set in the car's ECU.

TPMS-Helper The files in this repo generate valid Flipper Zero TPMS "Low Pressure" sub files in the correct format and modulations with a user specified TPMS ID for a few TPMS types.

Demonstration

TRIM_20221212_190658.mp4

Usage: You must be using Ubuntu (Debian had some weird package issues for me). Download the entire repo. Extract the TPMS folder in you home dir. Chmod +x the TPMS-helper.sh. Run it. It should install all needed tools and set correct permissions for Code_gen in the Resources folder. This will only happen once. Choose the TPMS type, enter the hex ID, and a Flipper sub file will be output to the Output folder. You can test it against rtl_433.

Before the Flipper tiktokers ask, you need to generate a SPECIFIC file with the correct ID for each car/tire (you only need one tire id) or it will not work. The SUB for your car/tire will have a different ID than every other car/tire and could have a completely different encoding (very likely)

Credits:

Like most projects, I built on and utilized the work of others:

Contributions of protocols are welcome

  • My work on the older toyota (PMV-c210) is also included, the bitstream is perfect but I couldn't get the crc8 to match the crc8 of the test file I was building against. So I didn't get to building the DMC encoding for it. Any python wizards that want to tackle that?

About

Generate TPMS sub files for the Flipper Zero


Languages

Language:Python 79.9%Language:Shell 20.1%