GR Corolla CAN Logging
Share
There is a bunch of useful data on the GRC CAN bus network but PID reverse engineering is super time consuming. Here is a user friendly shortcut to access CAN / expanded PID data.
The company behind OBD Fusion pays Toyota a bunch of money for the expanded PID / CAN module data. Toyota uses common PID addresses across their lineup (yay parts binning). OBD Fusion currently offers expanded diagnostics up to MY2021 for Toyota. The GR Corolla started with MY2023 so we will spoof to a MY2021 Rav 4 AWD with mostly the same PID values.
We will use an OBD2 BT reader for this. I personally use this one
Download OBD Fusion for your device of choice. There is software for Android, iOS, and even Windows.
iOS
https://apps.apple.com/us/app/obd-fusion/id650684932
Android
https://play.google.com/store/apps/details?id=OCTech.Mobile.Applications.TouchScan&hl=en_US&pli=1
Windows
https://www.obdsoftware.net/software/obdfusion
Purchase the 2021 Toyota Enhanced Diagnostics Package.
Now set your car manually as a 2021 AWD Rav 4 similarly to below (this VIN may or may not work you can google a random AWD car if so). Use a non hybrid trim.
When connecting to your vehicle select Expanded Network and accept any subsequent popup messages. It will give you a few network options. Choose the network applicable to what you would like to datalog (ie AWD module).
Live Telemetry
OBDFusion is Android Auto and Apple Carplay Compatible :)
Settings -> Preference -> CarPlay will allow you to set PIDs for live telemetry readout.
Alternatively you can read live telemetry via the app "Dashboard" this is similar to Torque and other OBD2 apps.
Datalogging
Go to Settings -> Preferences -> Logging -> Select PIDs to select values to datalog. Output is possible to a CSV file.
Set your datalogging trigger. You can set it automatically on connection, or manually to a log button on your logging Dashboard.
Tip: Try to datalog directly from the relevant module. For example, Engine Oil Pressure should come from the Engine Module (ECU). AWD Temperature should come from the AWD/4WD Module (AWD Controller). You can datalog Engine Oil data from the 4WD Module but it can result in some theoretical latency.
Tip: Try not to select too many unnecessary PIDs. You can crowd the CAN network with too many poll requests and make it angry.
Tip: You will notice for most temperature parameters there is a temperature parameter and a sensor parameter (ie Engine Oil Temperature & Engine Oil Temperature Sensor). Engine Oil Temperature is a calculated value. Engine Oil Temperature Sensor is your actual value. The entire factory GRC drivetrain has virtual values that run in parallel with actual values.
Note for AWD Syvecs Controller Users: Syvecs currently spoofs over the AWD temperature PID as part of its functionality. Future capability to be announced to regain this for live telemetry readout while driving.