alerTire Open Protocol TPMS

alerTire Open Protocol TPMS line of sensors enables app developers, tech enthusiasts and fleet integrators to integrate their products with our sensors. We are opening up our communication protocol built using Bluetooth Low Energy to pursue our mission of increased road safety. The protocol is designed based on customer feedback, on road behavior of our sensors and by working closely with our business partners. Below you can find all the details you need such as sensor duty cycle, communication packet structure, sample python code that runs on Raspberry Pi and sample C code that runs on ESP-32 to integrate with our sensors.

alerTire Open Protocol TPMS

TPMS sensors work independently of each other and they all follow the same duty cycle throughout their lifetime. Every sensor has a unique ID associated with it and it is printed on the surface of the sensor. Each sensor transmits Pressure, Temperature and Voltage (henceforth refered as PTV) values along with its unique ID every one minute. PTV values are transmitted as non-connectable advertisement packets on all 3 channels of Bluetooth LE. Each advertisement last for 10 seconds with packet interval of 852msec.

Packet Structure

Packet Structure(19 bytes)

Non-connectable packet format

Pressure Data(17-18)

We can get the pressure data from the 17th – 18th byte of the advertisement data. Transmitted pressure value is in kPa.

MSB
0 1 2 3 4 5 6 7
17th Byte
0 0 0 0 0 1 0 1
0 1 2 3 4 5 6 7
18th Byte
0 1 1 1 1 0 0 0
LSB
Note:

Max Pressure units(In decimal) – 1400 units
Max Pressure units(In binary) – 010101111000
Max Bits used for Pressure level – 11 bits enough for 1400 kPa

Pressure Data Parsing

Maximum Pressure Range supported by sensor – (0 – 700 kPa)
For Truck Sensors – (0 – 1400 kPa)

Calculation of actual data

The Pressure value(in kPa format) will be sent as hex in the advertisement.

For example:
  • Value from the advertisement = 0x01 0x5E
  • Convert it into decimal = 350
  • Pressure value = 350 kPa
For psi conversion:
  • Value from the advertisement = 0x01 0x5E
  • Convert it into decimal and divided by 6.895 = 350 / 6.895
  • Pressure value = 50.76 psi

Temperature(16)

We can get the temperature data from the 16th byte of the advertisement data. Transmitted Temperature value is in ℃. The most significant bit represents whether the transmitted temperature is -ve or +ve. If the MSB is set to 1, then the value is -ve.

MSB
0 1 2 3 4 5 6 7
16th Byte
0 1 1 1 1 1 0 1
LSB
Note:

Max Temperature units(In binary)
– 01111101 (Positive temperature)
– 11111101 (Negative temperature)
Max Bits used for Temperature level – 8 bits

Temperature Data Parsing

Maximum Temperature range supported by sensors (-20 to 105 ℃)

Calculation of actual data

The Temperature value will be sent as hex in the advertisement.

For example:

Positive Temperature(MSB 0th bit “0”)
  • Value from the advertisement = 0x19
  • Convert it into signed integer = +25
  • Temperature Value = +25 ℃
Negative Temperature(MSB 0th bit “1”) :
  • Value from the advertisement = 0xFA
  • Convert it into signed integer = -6
  • Temperature Value = -6 ℃

Battery Data(15)

We can get the battery data from the 15th byte of the advertisement data. Transmitted battery voltage data must be divided by decimal 10 to obtain actual battery voltage level.

MSB
0 1 2 3 4 5 6 7
15th Byte
0 0 1 0 0 0 0 1
LSB
Note:

Max Battery units(In decimal) – 33 units
Max Battery units(In binary) – 00100001
Max Bits used for Battery level – 6 bits

Battery Data Parsing

Battery Data maximum value support is 3.3 V / 3.0 V * (Value may vary depending on sensor model)

Calculation of actual data

The Battery value will be sent as hex in the advertisement.

For example:

Value from the advertisement = 0x21
Convert it into decimal and divide it by 10 = 33 / 10
Battery value = 3.3 V

  • We offer premium support services as well as customization requests to our communication protocol to integrate seamlessly with your device.
    info-icon
  • Please note that SensAiry App will NOT support Open Protocol TPMS. Also, the protocol explained here is not applicable to our other TPMS models sold. Make sure to purchase sensors marked as open protocol sensors from our store page if you wish to integrate your device with our sensors using the protocol explained on this page.
    info-icon
  • Currently only 4W Internal TPMS supports SensAiry Open Protocol. Soon we will support for other models of TPMS.
    info-icon
  • SensAiry Open Protocol TPMS is now open for Indian customers only. Soon we will open up for international customers.

Sample Python Code
(runs on Raspberry Pi)

Sample C Code
(runs on ESP-32)

For any queries, contact our team