The SGII Xgauge Database

Discussion in 'ScanGauge' started by kmactavi, Jun 4, 2008.

  1. Dan

    Dan KiloTanked in post 153451

    I didn't check the connection mode... Sorry guys. I also only tried passive CAN X-Gauges. I didn't want to light a MIL on their shinny new Prius III.

    11011011
     
  2. Dan

    Dan KiloTanked in post 153451

    11011011
     
  3. Kacey Green

    Kacey Green Well-Known Member

    I have a friend who wants a tank to empty X-Gauge, how would I program his xgauge to pull the miles to empty tripometer to one of his 4 gauges?
     
  4. CarlD

    CarlD Well-Known Member

    Should be just the following:

    TXD: 44
    RXF: 80000000
    skip to NAM
    NAM: MTE or whatever
     
  5. hobbit

    hobbit He who posts articles

    I lost track of this thread for a while. The "length" spec on
    the mode $21 / $22 stuff is a very interesting angle; can you
    detail how that's supposed to work in the spec for those of us
    who don't want to hand over our life savings to the SAE? Can
    a specific index of responses in the block be requested, or is
    it just a cap on the number of bytes returned? What does the
    "next block" request packet look like? ... It strikes me that you
    could have another xgauge blindly just sending that over and
    over to coerce the target ECU into yielding more data.
    .
    An interesting reference came across prius_technical_stuff the
    other day: some German enthusiasts are also digging into this
    a little. Look at some of the other referenced pages, too. They
    might be close to grabbing MG1/2 speeds; so far I haven't really
    done a detailed review of where they're at.
    .
    _H*
     
  6. CarlD

    CarlD Well-Known Member

    I mentioned this approach to Ron awhile back. He was afraid he would have to change the TXD so that you could enter a 07E23007 flow control frame without having the SG insert the data length bytes. I still think the SG could just issue a 3007 message anytime the upper nibble of the PCI byte is not 0.

    But anyway, the mode $21 stuff from SAE J2190 is as follows:

    Byte#1: $21
    Byte#2: offset
    Byte#3: not included, 1 response. $00 stop sending data. $01 send 1 response. $02 repeat at slow rate. $03 repeat at medium rate. $04 repeat at fast rate. $05 to $FF - manufacturer defined conditional response.
    Byte#4: if byte #3 is supported, $00 send data until requested to stop. $nn maximum number of responses to send.
     
  7. CarlD

    CarlD Well-Known Member

    Ron has told me he has an "experimental" firmware rev that issues a flow control frame anytime a multi-frame message is detected from the PCI byte upper nibble not being zero. I will stop by and get one of my SG's loaded with this to play around with. Probably won't help us FEH people much but it sure should be a boon to the Prius folks.......
     
  8. 2way

    2way Electromagnetic Wave [:-h

    I haven't searched the thread to see if these have been posted. But, a while ago I searched w/o luck to find the enhanced Toyota PIDs. Well, I recently found a list. These may not necessarily apply to all Toyos and, obviously, some are dependent on how it is equipped.

    EnhancedPowertrain Sensors Total 145 PIDS
    J1979 MODE 01
    Tested with ISO9141 on 2004 Toyota

    68 6A F1 30 00 CS = Bitmapped for Active Input/Output
    68 6A F1 01 A0 CS = Bitmapped for Sensor Pids (A1-BF)
    68 6A F1 01 C0 CS = Bitmapped for Sensor Pids (C1-DF)
    68 6A F1 01 E0 CS = Bitmapped for Sensor Pids (E1-FF)


    EXAMPLE:
    Request: 68 6A F1 01 A0 CS (Pids Support Bitmapped)
    Receive: 48 6B 10 41 A0 B3 B4 B5 B6 CS


    Refer to SAE J1979 For Byte Identification #

    Example:
    Request: 68 6A F1 01 B1 CS
    Receive: Byte #3(No Headers) gives you the % state

    Note: b1 = 00000001 = active
    b4 = 00001000 = active

    B1 - % = (BYTE3) - State
    B2 - VOLTS = (BYTE3 * (5/255)) - Accelerator Position 1
    B2 - VOLTS = (BYTE4 * (5/255)) -Accelerator Position 2
    B2 - VOLTS = (BYTE5 * (6/255)) - Throttle Request Position
    B2 - VOLTS = (BYTE5 * (6/255)) - Throttle Target
    B2 - VOLTS = (BYTE5 * (5/255)) -Throttle Position 2
    B2 - VOLTS = (BYTE7 * (5/255)) - Throttle Motor Opening Duty Ratio
    B2 - % = (BYTE7) - Throttle Open Duty
    B2 - % = (BYTE8) - Throttle Close Duty
    B2 - VOLTS = (BYTE8 * (5/255)) - Throttle Motor Closing Duty Ratio
    B3 - BIT is 1 = BYTE 3(b2) - Electro Magnetic Clutch
    B3 - BIT is 1 = BYTE 3(b3) - ETCS Actuator Power
    B3 - BIT IS 1 = BYTE3(b4) - Accelerator Idle Position
    B3 - BIT IS 1 = BYTE 3(b5) - Throttle Idle Position
    B3 - BIT IS 1 = BYTE 3(b5) - Throttle MOT
    B3 - BIT is 1 = BYTE 3(b6) -Fail Safe Drive
    B3 - BIT is 1 = BYTE 3(b7) - Fail Safe Drive (Main CPU)
    B3 - VOLTS = (BYTE5 * (5/255)) - Throttle Fully Closed Learn Value (Initial)
    B3 - DEG = (BYTE6 * (12.49/255)) - Accelerator Fully Learn Value
    B3 - AMP = (BYTE7 * (19.9/255)) - Throttle MOT
    B3 - AMP = (BYTE8 * (2.50/255)) - Electro Magnetic Clutch Current
    B4 - C = (BYTE3 - 40) - Automatic Transmission Fluid Temp
    B7 - VOLTS = (BYTE3 * 0.00498) -- Lean Sensor Bank 1 Sensor 1
    B7 - % = (BYTE4 * 0.3886) - Bank 1 Sensor 1
    B7 - BIT IS 1 = BYTE 5(b8) - Lean Control Bank 1 Sensor 1
    B8 - VOLTS = (BYTE3 * 0.00498) - Lean Sensor Bank 1 Sensor 2

    B8 - % = (BYTE4 * 0.3886) - Lean S FT Bank 1 Sensor 2
    B8 - BIT IS 1 = BYTE 5(b8) - Lean Control Bank 1 Sensor 2
    BB - BIT IS 1 = BYTE 4(b1) - Lock Up Solenoid

    D0 - BIT IS 1 = BYTE 3(b1) - Status Of EVAP Auto Test
    D0 - BIT IS 1 = BYTE 3(b2) - Status Of EVAP Auto Test 1
    D0 - BIT IS 1 = BYTE 3(b3) - Status Of EVAP Auto Test 2
    D5 - PSI = (BYTE3 * 0.817) - Fuel Tank Vapor Pressure
    DA - DEG = (BYTE3 * 2.5) - Target of CAM Phaser
    DA - DEG = (BYTE5 * 2.5) - CAM Phaser
    DA - DEG = (BYTE7 * 2.5) - OVC Duty Ratio

    E1 - # = (BYTE 3) - Number of Codes
    E2 - RPM = (BYTE 3 * 6375/255)) - Engine Speed At Misfire
    E2 - g-RPM = (BYTE 4 * (3.98/255)) - Load At Misfire
    E3 - MPa = (BYTE 3 * (816/255)) - Fuel Pressure
    E4 - mS = (BYTE 3 * (32.60/255)) - Injector Pulse Width
    E5 - STEP = (BYTE 3) - Idle Air Control Step Position
    E6 - % = (BYTE 3 * (99.4/255)) - Idle Air Control Duty Cycle
    E7 - STEP = (BYTE 3) - EGR Step Position
    E8 - BIT IS 1 = BYTE 3(b2) - Power Steering Oil Pressure Switch
    E8 - BIT IS 1 = BYTE 3(b3) - Stop Light (Brake Switch 1)
    E8 - BIT IS 1 = BYTE 3(b4) - Electric Load Switch
    E8 - BIT IS 1 = BYTE 3(b5) - Park/Neutral Switch
    E8 - BIT IS 1 = BYTE 3(b6) - A/C Signal Switch
    E8 - BIT IS 1 = BYTE 3(b7) - Throttle Position Close Switch
    E8 - BIT IS 1 = BYTE 3(b8) - Ignition Starter Switch
    E8 - BIT IS 1 = BYTE 4(b2) - Fuel Cut From CTP
    E8 - BIT IS 1 = BYTE 4(b1) - Fuel Cut From TAU Min
    E8 - BIT IS 1 = BYTE 5(b1) - Power Steering Signal Shift
    E8 - BIT IS 1 = BYTE 5(b6) - Stop Light (Brake Switch 2)
    E8 - BIT IS 1 = BYTE 5(b7) - Engine Stop Signal
    E9 - COUNT = (BYTE 3) - Misfire Cylinders #1
    E9 - COUNT = (BYTE 4) - Misfire Cylinders #2
    E9 - COUNT = (BYTE 5) - Misfire Cylinders #3
    E9 - COUNT = (BYTE 6) - Misfire Cylinders #4
    EA - COUNT = (BYTE 3) - Misfire Cylinders #5
    EA - COUNT = (BYTE 4) - Misfire Cylinders #6
    EA - COUNT = (BYTE 5) - Misfire Cylinders #7
    EA - COUNT = (BYTE 6) - Misfire Cylinders #8
    EB - COUNT = (BYTE 3 * 256) - Number of Ignition
    EC - BIT IS 1 = BYTE 3(b1) - B1S2 Test Status
    EC - BIT IS 1 = BYTE 3(b2) - B2S2 Test Status
    EC - BIT IS 1 = BYTE 3(b3) - Misfire Test Status
    EC - BIT IS 1 = BYTE 3(b4) - AS Test Status
    EC - BIT IS 1 = BYTE 3(b5) - NSW Test Status
    EC - BIT IS 1 = BYTE 3(b6) - SPD Test Status
    EC - BIT IS 1 = BYTE 3(b7) - 40 Cycles
    EC - BIT IS 1 = BYTE 3(b8) - Check Mode
    ED - DEG = (BYTE 3 * (159/255)) - EGR Temperature
    EE - COUNT = (BYTE 3) - E-ABV Step Position EGR Value Position
    EF - BIT IS 1 = BYTE 3(b1) - VSV A/C Cut
    EF - BIT IS 1 = BYTE 3(b2) - VSV Variable Intake
    EF - BIT IS 1 = BYTE 3(b3) - VSV Fuel Pressure UP
    EF - BIT IS 1 = BYTE 3(b4) - VSV EGR System
    EF - BIT IS 1 = BYTE 3(b5) - VSV Intake Control
    EF - BIT IS 1 = BYTE 3(b6) - VSV Fuel Pump Relay
    EF - BIT IS 1 = BYTE 3(b7) - VSV Secondary Air
    EF - BIT IS 1 = BYTE 3(b8) - VSV SCV
    EF - BIT IS 1 = BYTE 4(b1) - VSV A/C Idle Up
    EF - BIT IS 1 = BYTE 4(b2) - VSV Fuel Pump / Spd
    EF - BIT IS 1 = BYTE 4(b3) - VSV Boost Pressure Control
    EF - BIT IS 1 = BYTE 4(b3) - VSV Purge Cut
    EF - BIT IS 1 = BYTE 4(b4) - VSV A/C Clutch Relay
    EF - BIT IS 1 = BYTE 4(b5) - VSV EVAP Purge
    EF - BIT IS 1 = BYTE 4(b6) - VSV Vapor Pressure
    EF - BIT IS 1 = BYTE 4(b7) - VSV VVT2 Control Bank 2
    EF - BIT IS 1 = BYTE 4(b8) - VSV VVT2 Intake Control
    EF - BIT IS 1 = BYTE 5(b1) - VSV Super Charger Control Relay
    EF - BIT IS 1 = BYTE 5(b2) - VSV VVT Control Bank 1
    EF - BIT IS 1 = BYTE 5(b4) - VSV Automatic Oil Supply
    EF - BIT IS 1 = BYTE 5(b5) - VSV Air Bleed
    EF - BIT IS 1 = BYTE 5(b6) - VSV Intake Air Control
    EF - BIT IS 1 = BYTE 5(b7) - VSV Exhaust Gas Control
    EF - BIT IS 1 = BYTE 5(b8) - VSV Exhaust ByPass VC
    EF - BIT IS 1 = BYTE 6(b1) - VSV Canister Pressure Control
    EF - BIT IS 1 = BYTE 6(b2) - VSV Tank Pressure ByPass
    EF - BIT IS 1 = BYTE 6(b3) - VSV VVTL Control Bank 1
    EF - BIT IS 1 = BYTE 6(b4) - VSV VVTL Control Bank 2
    EF - BIT IS 1 = BYTE 6(b5) - VSV AICV
    EF - BIT IS 1 = BYTE 6(b6) - VSV Engine Cooling
    EF - BIT IS 1 = BYTE 6(b7) - VSV Vent Value
    EF - BIT IS 1 = BYTE 6(b8) - VSV Pump for EVAP System

    F0 - % = IF BYTE 3 >127 THEN (BYTE 3 * (1.02/255)) - Total Fuel Trim Bank 1
    F0 - % = IF BYTE 4 >127 THEN (BYTE 4 * (1.02/255)) - Total Fuel Trim Bank 2
    F1 - mS = (BYTE 3 * (16702/255)) - O2 Rich-Lean Bank 1 Sensor 1
    F1 - mS = (BYTE 4 * (16702/255)) - O2 Rich-Lean Bank 2 Sensor 1
    F2 - mS = (BYTE 3 * (16702/255)) - O2 Rich-Lean Bank 1 Sensor 1
    F2 - mS = (BYTE 4 * (16702/255)) - O2 Rich-Lean Bank 1 Sensor 2
    F2 - mS = (BYTE 5 * (16702/255)) - O2 Rich-Lean Bank 2 Sensor 1
    F2 - mS = (BYTE 6 * (16702/255)) - O2 Rich-Lean Bank 2 Sensor 2
    F3 - COUNT = (BYTE 3) -Misfire All Cylinders
    F4 - COUNT = (BYTE 3) - Engine Run Time
    F6 - BIT IS 1 = BYTE 3(b1) - A/F1 Test Status
    F6 - BIT IS 1 = BYTE 3(b2) - A/F2 Test Status
    F8 - STATE = (BYTE 3) - Shift Position
    F8 - BIT IS 1 = BYTE 3(b4) - Lockup Solenoid
    F8 - BIT IS 1 = BYTE 3(b5) - O/D Cut Solenoid
    F9 - BIT IS 1 = BYTE 3(b1) - Shift Position Switch in L
    F9 - BIT IS 1 = BYTE 3(b2) - Shift Position Switch in 2ND
    F9 - BIT IS 1 = BYTE 3(b3) - Shift Position Switch in R
    F9 - BIT IS 1 = BYTE 3(b4) - Pattern Select Switch in PWR
    F9 - BIT IS 1 = BYTE 3(b5) - O/D Cut From O/D Off Switch
    F9 - BIT IS 1 = BYTE 3(b6) - Kick Down Switch
    F9 - BIT IS 1 = BYTE 3(b7) - Stop Light (Break Switch 1)
    F9 - BIT IS 1 = BYTE 3(b8) - O/D Cut From CCS
    F9 - BIT IS 1 = BYTE 4(b1) - Shift Position Switch in 3RD
    F9 - BIT IS 1 = BYTE 4(b2) - Shift Position Switch in 4th/Drive
    F9 - BIT IS 1 = BYTE 4(b4) - Shift Position Switch in Snow
    F9 - BIT IS 1 = BYTE 4(b5) - Shift Position Switch in Sports Mode
    F9 - BIT IS 1 = BYTE 4(b6) - Shift Position Switch in Sports Shift Down
    F9 - BIT IS 1 = BYTE 4(b7) - Shift Position Switch in Sports Shift Up
    FA - MPH - (BYTE 3 * (158/255)) - AT Speed ATF
    FB - BIT IS 1 = BYTE 3(b1) - Shift Solenoid SLN
    FB - BIT IS 1 = BYTE 3(b2) - Shift Solenoid SLU
    FB - BIT IS 1 = BYTE 3(b3) - Shift Solenoid SLT
    FB - BIT IS 1 = BYTE 3(b4) - Shift Solenoid SLD
    FB - BIT IS 1 = BYTE 3(b5) - Shift Solenoid SLC
    FB - BIT IS 1 = BYTE 3(b6) - Shift Solenoid SLS
    FB - BIT IS 1 = BYTE 3(b7) - Shift Solenoid DSU
    FC - RPM = (BYTE 3 * (12750/255)) - Direct Clutch RPM (NC0 or NC2)
    FD - RPM = (BYTE 3 * (12750/255)) - Direct Clutch RPM (NC2)
    FE - RPM = (BYTE 3 * (12750/255)) - Direct Clutch RPM (NC)


    I haven't tested any of them..... yet.
     
  9. Dan

    Dan KiloTanked in post 153451

    Here are some more gauges. Note "Bta" and "bta" may be confusing. One is passive and one is solicited, but the scaling is different. I also wanted to reiterate the importance in understanding the difference between passive and solicited gauges. All vehicle specific solicited XGauges should be erased before putting the gauge in a different model vehicle. For example a XGauge with all the FEH gauges will light the MIL (check engine light) if you plug it into a Prius. Passive gauges on the other hand do not trigger such reactions when swapped from car to car.

    Here are some new gauges:
    Here are some corrections to the existing gauges. Mostly documentation.
    Other broken or untested gauges that may make the "final cut" eventually.

    GAUGE: BATTERY VOLTAGE
    CONF?: ***UNTESTED***
    UNITS: VOLTS
    ->TXD: 03 C5
    ->RXF: 01 03 02 CD 00 00
    ->RXD: 20 10
    ->MTH: 00 01 00 01 00 00
    ->NAM: btV
    NOTES: (PRIUS) HV BATTERY VOLTS
    This one is exactly the same as "btv"
    but it does not collide with bta.


    GAUGE: TOTAL ENGINE RUN TRIP TIME
    CONF?: YES
    UNITS: HOURS
    ->TXD: 07 E3 21 1F
    ->RXF: 05 61 46 1F 00 00
    ->RXD: 28 10
    ->MTH: 00 64 0E 10 00 00
    ->NAM: trt
    NOTES: This doesn't work but should any
    thoughts on how to get it working would be
    nice!!

    Also, some mention should be given to gauge collision. Any two gauges on the same ID will collide. So here are sets of known collisions for the Prius II:
    {bta, btv}
    {cdl, ccl, csd, soc, buc, buf, blc. blf}
    {Bta, Soc}​
    No two (or three) gauges from the same set can be displayed on the same gauge. This is why having two different BTA gauges and two different BTV, and two different SOC gauges comes in really handy.

    11011011
     
  10. tstodola

    tstodola Crazy California tree hugger

    I just received my ScanGaugeII throught the group buy. I get two gauges I cannot decipher. I am sure they are going to be important, though.
    Model car: 2006 Civic Hybrid, 1.3l engine, 12 gallon tank.
    unknown gauges: aST, aSC
    what do they measure? One is reading 25, the other 30-32

    Thanks!
     
  11. Kacey Green

    Kacey Green Well-Known Member

    average speed tank or trip, & average speed current
     
  12. bryan42

    bryan42 Member

    Does anyone have code for cost of current trip? I know it's available afterward, but I'd like to see it updated with the other gauges.

    Will this work? I found it searching other forums.

    TXD: 80
    RXF: 800000000000
    NAM: CCT (Cost of Current Trip)
     
  13. fanamingo

    fanamingo Well-Known Member

    That should work. Give it a try if you haven't already.
     
  14. AccordHybrid07

    AccordHybrid07 New Member

    I found that even if my car (HAH'07) has no CAN supplied to OBD2 connector I was able to read MAF sensor using CAN-format XGauge codes. How is it possible? I see only K-Line existing in connector documented in Honda service manual and confirmed it personally.
    So both combinations work for me:

    1) TXD: 07E00110
    RXF: 044145100000
    RXD: 2810

    2) TXD: 686AF10115
    RXF: 044145100000
    RXD: 2810
     
  15. fanamingo

    fanamingo Well-Known Member

    My '07 Civic behaves similarly, although it does utilize a CAN bus. I've found that certain PIDs (03-05, 0B-11) appear to be broadcast continuously, regardless of what the SG requests. One of these is MAF (PID 10). So, I can put in whatever I feel like for TXD (07E00110, 686AF10115, or 01234567). As long as RXF and RXD are appropriately configured, I can read any of the aforementioned PIDs. Unfortunately those are the only PIDs I've been able to display with an XGauge.
     
  16. Frihet

    Frihet New Member

    I have a 2010 Prius. I have just installed a new ScanGauge. I was hoping to be able to see the HV battery current, but I'm not sure I this is possible. Linear Logic shows codes that I suspect are for Gen 2. The Gen 3 database here is not clear whether the battery current codes (different from LL) are for the 12 Volt or high Voltage battery.

    Has anyone done this, or are we thwarted by the new CAN bus changes.

    Thanks!!
     
  17. Frihet

    Frihet New Member

    OK, I have sorted it out. The Gen 3 database is correct.

    Display 2010 Prius HV Battery Current

    TXD: 07e2218a
    RXF: 0461858a0000
    RXD: 2810
    MTH: 0001000af334
    NAM: AMP

    + is discharge
    - is charge

    This works fine, except the charge sign seems backwards. I'm trying to figure out how to fix that now, but it's no big deal.
     
  18. seftonm

    seftonm Veteran Staff Member

    Finally was able to dig this info up. Here's the code which should work to get water temperature in the newer Jettas and Golfs, where the SG's built in coolant temperature function doesn't work.

    TXD: 07DF0167
    RXF: 04410567
    RXD: 3008
    MTH: 00090005FFD8 (or 00010001FFD8 if you prefer celcius)
    NAM: WTR
     
  19. paulbates

    paulbates Well-Known Member

    Here's one for the percentage of volume of ethanol in the fuel, a VPW and a CAN version. While I haven't seen them work on my VPW and Can Cars, I had a couple exchanges with James from ScanGuage and he very patiently worked with me on getting right. (Read: I tried, he fixed it and told me what he did :)) .
    I am really liking my scanguage and support they provide the product

    Ethanol Fuel %

    CAN

    TXD: 07DF0152
    RXF: 04410552
    RXD: 2808
    MTH: 006400FF0000
    NAM: ETH

    VPW/ISO

    TXD: 686AF10152
    RXF: 04410552
    RXD: 2808
    MTH: 006400FF0000
    NAM: ETH

    James felt they should work, they didn't on mine. I was wondering if this was something that would be programmed into FlexFuel Vehicles where the car has to anticipate the ETH % from 0 - 85%. Neither one of my cars are.

    Can a FlexFuel owner give it a try?

    I would have loved this gauage, especially with E15 looming on the horizon
     
  20. paulbates

    paulbates Well-Known Member

    Here is an all vehicles standard command Gage to measure Mass Air Flow in Gallons / Sec


    TXD: 686AF10110
    RXF: 044185510
    RXD: 2810
    MTH: 00FF00640000
    NAM: MAF

    I coded this one based on finding the command for MAF - 0110 and it works on my
    • 2002 Montana
    • 2010 Flex.
    I haven't figured exactly what to do with it yet, just another thing to try. :)
     
    Last edited: Jan 7, 2011

Share This Page