I've heard that there are a number of PIDs in the Prius through CAN Query/Response that are accessible on a Prius, provided you know the right query and how to decode the response. One in particular I'm interested in is battery SoC. Does anyone know / have a list of the PIDs or where to get them? Cheap is good, free is better. I'm hoping I can start picking at some of this data with my ScanGaugeII since it supports Query / Response. 11011011
Dan have you tried some of the old posts at PriusTechnicalStuff Yahoo group. Also Attila Vas was one of the first to decipher some of this and posted some, you may be able to google up some of that. Wayne
<div class='quotetop'>QUOTE(FireEngineer @ Aug 14 2007, 08:11 AM) [snapback]495321[/snapback]</div> Before I start my google attack, could you let me know if my grammer is correct. keywords are to include {PID, SOC, "State of Charge", CAN, Query, Response, Attila}. Any other key words of low frequency you could think to narrow the field? 11011011
OK... found them. http://autos.groups.yahoo.com/group/Prius_...ff/message/5303 http://autos.groups.yahoo.com/group/Prius_...ff/message/5352 http://autos.groups.yahoo.com/group/Prius_...ff/message/5309 http://autos.groups.yahoo.com/group/Prius_...iles/OBD%20Info (priuspids.zip) Don't quite understand the encodings, and I don't think anyone (including me) have tested any of these on a Prius II, but for Classic Owners... have fun I'll try Battery SoC and might try Pack Temp or MG Temp. 11011011
Okay, but note carefully the difference in what you're asking vs. what Attila sniffed out: The Scangauge depends on sending a QUERY to a given ECU and getting a response back, as opposed to passively sniffing a reported value that's flying across the bus periodically. This is very different, and unfortunately I haven't been able to get the full picture on how all the protocol is constructed yet. Norm, the guy behind CanView, would probably be able to reel off the right bits in his sleep, but I was unable to get him to really explain it to me back when I was trying to really understand this stuff. . _H*
<div class='quotetop'>QUOTE(hobbit @ Aug 14 2007, 08:48 PM) [snapback]495776[/snapback]</div> Ahh, that does jive with what I was looking at. I saw some stuff about sniffing, and couldn't correlate the query / response stuff with it. I'll keep a subscription on this thread and start trying to get my head around this stuff. I'm starting to think I might need a OBD-II to PC accessory to properly dig into this stuff. I might also tap some of the CanView users out there for some leads or at least sanity checks for what I'm doing. 11011011
The battery SOC data is always available on the CAN message, and I believe Scangauge is for OBD-II protocol only. Attila's spreadsheet shows the CAN message ID and the byte position for the SOC data. http://www.vassfamily.net/ToyotaPrius/CAN/cindex.html http://www.vassfamily.net/ToyotaPrius/CAN/PriusCodes.xls CAN message ID: 0x3CB SOC data: byte #2 and #3 Ken@Japan
<div class='quotetop'>QUOTE(ken1784 @ Aug 14 2007, 09:22 PM) [snapback]495814[/snapback]</div> Got it ( I think ). There are two ways to get SOC, one is by snooping for message 0x3CB, the other is to send the SoC request PID to the Battery ECU. The PID request is what I was hoping to figure out, and found the problem SGII does support CAN, but it's not snooping the bus (like CANView), but instead sending a series of Query PIDs every few milliseconds. Specifically: 0x0104 (LOD) 0x0105 (ºcWT) 0x010C (RPM) 0x010D (KPH) So it does do CAN, but only to implement the OBD-II list of standard PIDs. So what I'm waiting for is when I can request a PID from a specific ECU (Battery ECU = D5$) and send a Vehicle specific PID. So hopefully, in the future I can send a request something like: D5F10191 where: 0xD5 = ECU to target (HV battery ECU) 0xF1 = Custom code for Toyota Prius II (signature byte) 0x01 = Show current status 0x91 = PID for Battery SoC on battery ECU. but if you want to do PID banging for the OBD-II standard PIDs here's a list to try 11011011
<div class='quotetop'>QUOTE(Dan. @ Aug 15 2007, 02:02 PM) [snapback]495950[/snapback]</div> I think I can understand what you're saying, but I believe the SG II and PID things are all for ISO-9141-2 and nothing relates to CAN or ISO-15765-4 protocol. Ken@Japan