For Toyota Aygo owners keen on monitoring their vehicle’s health and performance, the On-Board Diagnostics (OBD2) system is a gateway to a wealth of information. Thanks to insights shared within the car enthusiast community, particularly on platforms like the GR Yaris forum, we’ve uncovered how to access even more sensor data from your Aygo than typically available. This exploration leverages the OBDLink app and a clever trick involving the Toyota Camry 2020 profile, opening up a deeper level of vehicle diagnostics.
The discovery originated from the realization that selecting the Toyota Camry 2020 within the OBDLink Android application unlocks access to additional sensors beyond the default Aygo settings. This intriguing finding paved the way for further investigation into the communication protocols at play. To understand how this expanded sensor access works, a technique known as Bluetooth traffic “sniffing” was employed using readily available Android tools and Wireshark, a powerful network protocol analyzer. By monitoring the Bluetooth communication between the OBDLink device and the Aygo’s ECU (Engine Control Unit), researchers could decipher the underlying commands and responses.
The captured data revealed a series of commands based on the ELM327 microcontroller protocol, which is the heart of many OBD2 adapters, including OBDLink. These commands, starting with “ATSH 0007D0” to set the OBD header, are instructions sent to the car’s systems to request specific data. For example, the command “2162” queries for OBD Mode 21 PID 62, resulting in a response string like “7D8 05 61 62 03 00 00 0”. Breaking down this response, “7D8” identifies the ECU responding, and the subsequent bytes contain sensor data. While some parts of the data stream are still under investigation, key sensor readings have been successfully identified and decoded.
Through this reverse engineering effort, a valuable list of OBD Headers, Modes, and PIDs (Parameter IDs) has been compiled for the Aygo. This table maps specific sensors to their corresponding OBD2 parameters, allowing users to monitor a range of vehicle data in real-time using compatible OBD2 apps like Torque (when custom PIDs are imported).
Sensor | Category | Mode | PID | Header | Formula | Diag Command |
---|---|---|---|---|---|---|
Parking Brake Status (ON/OFF) | Navigation System | 21 | 62 | 7D0 | BIT(A:1) | |
Accelerator Pedal Position | Engine | 221 | 059 | 700 | (A-41) / 1.42 | |
Engine Oil Pressure | Engine | 221 | 074 | 700 | (((A*256)+B) * 10) / 128 | |
M/T Oil Temperature | Engine | 221 | 638 | 700 | A + B/256 – 40 | |
Battery Voltage (+B Voltage) | Combination Meter | 221 | 021 | 7C0 | A/10 | |
Fuel Input | Combination Meter | 221 | 022 | 7C0 | ??? | |
Sub Fuel Level | Combination Meter | 221 | 023 | 7C0 | ??? | |
High Fuel Pressure | Engine | 221 | F6D | 700 | ??? | |
Low Fuel Pressure / Fuel Pressure 2 | Engine | 221 | F6D | 700 | ??? | |
Intake Manifold Absolute Pressure | Engine | 221 | F87 | 700 | ??? | |
Low Fuel Pressure Sensor Reading | Engine | 221 | 0CD | 700 | ??? | |
ExDID_1BE1 | Engine | 221 | BE1 | 700 | ??? | |
ExDID_15F7 | Engine | 221 | 5F7 | 700 | ??? | |
ExDID_1F07 | Engine | 221 | F07 | 700 | ??? | |
Tire Pressure – Tire 1 | TPM | 221 | 005 | 750 | B * 0.01373 | atcea2A atta2A |
Tire Pressure – Tire 2 | TPM | 221 | 005 | 750 | D * 0.01373 | atcea2A atta2A |
Tire Pressure – Tire 3 | TPM | 221 | 005 | 750 | F * 0.01373 | atcea2A atta2A |
Tire Pressure – Tire 4 | TPM | 221 | 005 | 750 | H * 0.01373 | atcea2A atta2A |
Tire Temperature – Tire 1 | TPM | 221 | 004 | 750 | A – 40 | atcea2A atta2A |
Tire Temperature – Tire 2 | TPM | 221 | 004 | 750 | B – 40 | atcea2A atta2A |
Tire Temperature – Tire 3 | TPM | 221 | 004 | 750 | C – 40 | atcea2A atta2A |
Tire Temperature – Tire 4 | TPM | 221 | 004 | 750 | D – 40 | atcea2A atta2A |
Tire Position – Tire 1 | TPM | 222 | 021 | 750 | LOOKUP(A::1=FL:2=FR:3=RL:4=RR) | atcea2A atta2A |
Tire Position – Tire 2 | TPM | 222 | 021 | 750 | LOOKUP(B::1=FL:2=FR:3=RL:4=RR) | atcea2A atta2A |
Tire Position – Tire 3 | TPM | 222 | 021 | 750 | LOOKUP(C::1=FL:2=FR:3=RL:4=RR) | atcea2A atta2A |
Tire Position – Tire 4 | TPM | 222 | 021 | 750 | LOOKUP(D::1=FL:2=FR:3=RL:4=RR) | atcea2A atta2A |
Steering Angle | 221 | 004 | 7B3 | ((SIGNED(A)*256)+B)*1.5 | ||
Master Cylinder Temperature | Brake | 221 | 006 | 7B0 | A-80 | |
Coupling Temperature | Four Wheel Drive | 221 | 026 | 7B1 | (A*256+B)/128 |
While some formulas and sensor definitions are still under investigation (“???” in the table), this initial research provides a solid foundation for Aygo owners to delve deeper into their car’s data. For those looking to get started quickly, a CSV configuration file compatible with the Torque app is available, pre-loading these custom PIDs for easy sensor monitoring. This collaborative effort exemplifies the power of community-driven exploration in unlocking hidden functionalities within our vehicles. Further investigation and contributions are encouraged to fully map out the Aygo’s OBD2 data landscape.