Closed kesuhm closed 1 year ago
That looks plausible. We usualy see TPMS with that coding and timing.
You would just add to the include/rtl_433_devices.h
and then run ./maintainer_update.py
and recompile (and run ./maintainer_update.py
again to update the docs).
You also would fork, branch, push your changes, then PR. If it doesn't work we can insert your decoder manually.
Thanks for the review and instructions. I will do what you recommend once I have a bit (or byte :smiley:) more understanding on the flags. Back soon!
@kesuhm Any progress? It seems like you have a working decoder and it would be great to get it into the code base.
Hi, there! I just submitted a PR. The Carchet TPMS sensor is similar to the EezTire-E618 sensor, which popped up in my display this week while I was testing my code from May of 2022. While the sensor data appears to be identical to the EezTire-E618 output, I hope that the PSI and deg F readouts and low battery and inflate flags may be of some use to those running rtl_433.
Let's continue this in #2677 now.
Hi, there! I would like to contribute to your project.
I have (mostly) characterized this aftermarket Carchet TPMS sensor. I lost one of my sensors and, instead of buying a replacement external sensor, I would like to install internal sensors. I currently have to remove the hubcaps from my outer back tires to remove the sensors from my inner back tires to add air when the tires are low. It's a headache! Carchet doesn't sell internal TPMS sensors, so I am using a different model. My goal is to intercept the signal from the new internal sensors and relay it to the Carchet monitor in a language that the receiver understands. Here is a short summary of what I've done so far:
I began with Universal Radio Hacker (URH) software. Data collection parameters were as follows: Sensor frequency: 433.92 MHz Sample rate: 2.0 MSps Bandwidth: 2.0 Hz Gain: 125
The modulation is ASK (OOK) and data packets had the following format: aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa [Pause: 897679 samples] aaaaaaaa5956a5a5a6555aaa65959999a5aaaaaa [Pause: 6030 samples] aaaaaaaa5956a5a5a6555aaa65959999a5aaaaaa [Pause: 11176528 samples]
The decoding is Manchester I. After decoding, the packets look like this: 00000000000000000000000000000000000000 0000a9332fc0a84f1000 0000a9332fc0a84f1000
The packets could be detected with rtl_433 (compiled on Windows 7 with CMake and MinGW) using the following settings: rtl_433.exe -X "n=Carchet,m=OOK_MC_ZEROBIT,s=50,l=50,r=1000,invert" -s 1M
Here are some samples on BitBench:
Case 1: Decreasing pressure Case 2: Increasing pressure Case 3: Decreasing then increasing pressure Case 4: Additional learning
I wrote and tested a Carchet decoder file, which I called tpms_carchet.c and attached as a text file. (I have never contributed on GitHub before, so I am not sure who normally adds devices or modifies the rtl_433_devices header file or CMakeLists.txt file when a new device is added.) I am planning to do some additional testing on the flags, but I wanted to share the code before I went any further. Please let me know if you have any questions or if I need to provide anything else. I'll share more on the flags when I get new data.
Thanks! tpms_carchet.txt