1. Attachments are working again! Check out this thread for more details and to report any other bugs.

Prius v ODB Mode 21

Discussion in 'Prius v Technical Discussion' started by RobertC, Feb 6, 2016.

  1. RobertC

    RobertC New Member

    Joined:
    Jan 1, 2016
    1
    0
    0
    Location:
    Gainesville GA
    Vehicle:
    2012 Prius v wagon
    Model:
    Two
    Hello everyone, I've searched high and low but don't find a solution. Maybe I'm just missing the obvious.

    My project is using a Raspberry PI as an IoT device to get data from the Prius and store it for analysis. I can get the mode 01 data just fine, decode it and tie it out to reasonable real world situations. (like coolant temp increasing then stabalizing, decreasing when parked)

    However for mode 21 which seems to be the Toyota specfic data I get strange things. The below is with a Sparkfun ODB adapter and Putty.

    Example 2103 which should be wheel speed data with 4 bytes I get the following when parked:
    >2103
    009
    0: 61 03 01 00 80 7F
    1: 8A 00 00 00 00 00 00
    7F 21 12

    with headers on:
    >2103
    7EA 03 7F 21 12 00 00 00 00
    7E8 10 09 61 03 01 00 80 7F
    7E8 21 8A 00 00 00 00 00 00


    When driving:

    >2103
    7EA 03 7F 21 12 00 00 00 00
    7E8 10 09 61 03 02 00 81 80
    7E8 21 A1 00 00 00 00 00 00

    The HV ECU has no change (would have expected something)
    The Engine ECU (I think) has a change but there is more data there than shows in the docu for 2103. (after accounting for the additional shown by the headers)

    Am I just missing the obvious?
    Any pointers in the right direction would be appreciated. There is a wealth of data in mode 21 but until I trust that I'm decoding it right we won't blindly use it.
    Thanks for any feedback. Including RTFM with a link to the good doc.

    Robert
     
  2. mikefocke

    mikefocke Prius v Three 2012, Avalon 2011

    Joined:
    Nov 3, 2012
    3,645
    1,628
    0
    Location:
    Sanford, NC
    Vehicle:
    Other Hybrid
    Model:
    Limited
    It isn't unusual for car manufacturers to encrypt manufacturer specific data where they allow easy access to emissions relevant data. The latter is required by law so third party mechanics can work on the car. Cloaking the former is urged by dealers who want to have an advantage provided by the unique hardware they buy or rent from the manufacturer whose software enables the reading of all the information. Service is the dealer's money maker.

    Ran into this on another make of car where stuff like option enabling, airbag warnings, transmission codes, etc were encrypted.

    Can't help you with a Toyota.
     
  3. EZW1

    EZW1 Active Member

    Joined:
    Aug 20, 2008
    722
    80
    7
    Location:
    Phoenix, AZ
    Vehicle:
    2016 Prius v wagon
    Model:
    Four Touring
    All Toyota vehicles have a system that encrypts the vehicles performance data and saves it in a running memory. Only Toyota and top tier mechanics have the ability to decrypt and read that data. Toyota does this in order to provide this information for purposes of evaluating the system or the vehicle without fear of the data being corrected. This came about several years ago when several people started reporting the gas pedal getting stuck to the floor in their second generation prius. It turned out there were only one or two vehicles that actually had the stock accelerator pedal problem and all the rest were copycats trying to get a few dollars from Toyota. The encrypted data was a way toyota could go back and look at what's going on with the vehicle and have confidence with what it was seeing. You may just have stumbled across bad data
     
  4. jdcollins5

    jdcollins5 Senior Member

    Joined:
    Aug 30, 2009
    5,131
    1,338
    0
    Location:
    Wilmington, NC
    Vehicle:
    2010 Prius
    Model:
    III
    I am a little rusty with this but I will give it a shot.

    The wheel speed sensors come from the Skid Control ECU - header 7B0 request and 7B8 reply. I do not see this in your header response.

    The 2103 response from header 7E8 is from Engine Control ECU and has to do with Fuel Trim, I think.

    If you know how to request 2103 data from header 7B0 you should get the four wheel speeds.

    Good luck.