-
Notifications
You must be signed in to change notification settings - Fork 33
tpms_rx with non-integer-divisible-by-8 crc check bits? #10
Description
Having decoded the Pacific TPMS sensors as used by Toyota (at 314.98MHz) the total number of bits are 66 with a CRC8 calculated over the first 58 bits. The protocol matches the 9910bps FSK modulation in tpms_rx with preamble 00111111001 but the length in packet_check is set to 64 (with a note that some fraction of packets are 68 bits long). Changing the length to 66 and adding the correct check function does not yield a successful decode however and I think this might be related to having a non-integer-divisible-by-8 check length?
{
'modulation': 'fsk',
'access_code': '00111111001',
'encoding': 'diffman',
'prefixes': ('',),
'length': 66,
'range_data': (0, 58),
'range_check': (58, 66),
'check_fn': crc8(polynomial=0x13, init=0x0),
}
If anyone's interested in the format used by Pacific see https://github.com/xnk/pacific-tpms for more information. I'm trying to figure out a way to get tpms_rx to successfully decode this.