RX-8 PCM Info / Scan Tool Progress Update
#101
Registered
iTrader: (1)
Join Date: May 2003
Location: PA
Posts: 3,754
Likes: 0
Received 0 Likes
on
0 Posts
it would be cool if someone would start getting data from the 4 wheel speed sensors, the steering input, and brake input... you could then combine that with the rpm's and throttle and theoretically make a program that you could go around a roadcoarse with, log all the data, come back and actually have the program spit out the coarse you traveled and the steering/braking/throttle inputs (possibly animated on the screen) and compare it between different laps...
... if only :o
... if only :o
#102
Registered User
Join Date: Mar 2004
Location: Farmington Hills, MI
Posts: 10
Likes: 0
Received 0 Likes
on
0 Posts
pr0ber,
What you describe is roughly what I would like to do as well. The hard part is identifying the sensors that aren't in OBD II and decoding their data. I haven't found them in the service manual, either, so it would probably be quite difficult without assistance from Mazda.
I am thinking about installing a VIA Epia-MII board (small fanless PC-compatible) for data collection in my RX-8, but a laptop could be used as well. The computer wouldn't need an onboard display because the data could be stored on a small USB laptop hard drive and attached to another computer for data analysis.
If the VIA nano-ITX boards become available at retail, it might even be possible to fit one of these into the tape deck slot and interface it to the LCD display for real-time information display. I believe that someone was working on a board to allow connection of MP-3 players in this location.
BTW, there sure are a lot of "Probers" around here. I still have a 1989 Probe GT that has given me 15 years of excellent service.
What you describe is roughly what I would like to do as well. The hard part is identifying the sensors that aren't in OBD II and decoding their data. I haven't found them in the service manual, either, so it would probably be quite difficult without assistance from Mazda.
I am thinking about installing a VIA Epia-MII board (small fanless PC-compatible) for data collection in my RX-8, but a laptop could be used as well. The computer wouldn't need an onboard display because the data could be stored on a small USB laptop hard drive and attached to another computer for data analysis.
If the VIA nano-ITX boards become available at retail, it might even be possible to fit one of these into the tape deck slot and interface it to the LCD display for real-time information display. I believe that someone was working on a board to allow connection of MP-3 players in this location.
BTW, there sure are a lot of "Probers" around here. I still have a 1989 Probe GT that has given me 15 years of excellent service.
#103
As promised, here is the list of OBD-II PIDs that my RX-8 provided (data logged from my car this morning using my Palm). Not shown but still supported is the calculated MPG and my VIN which I deleted from the list.
Of course this list doesn't show all the trouble codes that can be shown as well.
The list looks better in WordPad when the Tabs are positioned properly.
8:49:34 am, ECU#, ECU#:, 10
8:49:34 am, MIL, MIL: , OFF
8:49:34 am, TITLE, CONTINUOUS TESTS...,
8:49:34 am, MIS_SUP, Misfire Supported, Yes
8:49:34 am, MIS_RDY, READY, Yes
8:49:34 am, FUEL_SUP, Fuel Sys Supported, Yes
8:49:34 am, FUEL_RDY, READY, Yes
8:49:34 am, CCM_SUP, Component Supported, Yes
8:49:34 am, CCM_RDY, READY, Yes
8:49:34 am, CAT_SUP, Catalyst Supported, Yes
8:49:34 am, CAT_RDY, READY, Yes
8:49:34 am, HCAT_SUP, H-Catalyst Supported, No
8:49:34 am, EVAP_SUP, Evap Sys Supported, Yes
8:49:34 am, EVAP_RDY, READY, Yes
8:49:34 am, AIR_SUP, Sec Air Supported, Yes
8:49:34 am, AIR_RDY, READY, Yes
8:49:34 am, ACRF_SUP, AC Refrig Supported, No
8:49:34 am, O2S_SUP, O2 Sensor Supported, Yes
8:49:34 am, O2S_RDY, READY, Yes
8:49:34 am, HTR_SUP, O2 Sensor Htr Support, Yes
8:49:34 am, HTR_RDY, READY, Yes
8:49:34 am, EGR_SUP, EGR Sys Supported, No
8:49:34 am, FUELSYS, Fuel System Status, 0200
8:49:34 am, FUELSYS1, Sys1-Clsd Loop, CL
8:49:35 am, AIR_STAT, AIR_STAT, OFF
8:49:35 am, O2SLOC, O2 Sensor Loc (2Bank)...,
8:49:35 am, O2SLOC, Bank1 Sensor 2, Yes
8:49:35 am, OBDSUP:, OBDSUP, OBD II,
ECU DYNAMIC DATA (ENGLISH UNITS):
8:49:34 am, LOAD_PCT, Calculated Load:, 27.5, %
8:49:34 am, ECT, Coolant Temp:, 109, Deg F
8:49:34 am, SHRTFT1, Short Term Fuel Trim B1:, -4.65529, %
8:49:34 am, LONGFT1, Long Term Fuel Trim B1:, 3.1, %
8:49:34 am, RPM, Engine RPM:, 1943, RPM
8:49:34 am, VSS, Vehicle Speed:, 20, mph
8:49:34 am, SPARKADV, Ignition Advance:, 33, Deg
8:49:35 am, IAT, Intake Air Temp:, 79, Deg F
8:49:35 am, MAF, Air Flow:, 1.4, lb/m
8:49:35 am, TP, Throttle:, 15.3, %
8:49:35 am, O2S12, Oxy B1, S2:, 965, mv
8:49:35 am, O2S12SHRTFT, Oxy B1, S2: (Fuel Trim), 0.0, %
8:49:35 am, RUNTM, Engine Run Time:, 104, sec
8:49:35 am, MIL_DIST, Distance with MIL On:, 0, mi
8:49:35 am, EVAP_PCT, Command Evap Purge:, 0.0, %
8:49:35 am, FLI, Fuel Level Input:, 15.7, %
8:49:35 am, WARM_UPS, Warm ups since TC clrd:, 28,
8:49:35 am, CLR_DIST, Distance since TC clrd:, 418, mi
8:49:35 am, BARO, Barometric Pressure:, 29.9, inHg
8:49:35 am, O2S11, Wide Range O2 B1S1:, 1.018 , lmda
8:49:35 am, O2S11, Wide Range O2 B1S1:, 14.90, A/F
8:49:35 am, O2S11, Wide Range O2 B1S1:, 0.047 , ma
8:49:35 am, CATEMP11, Catalyst Temp B1, S1:, 1338.1, Deg F
8:49:35 am, VPWR, Ctrl Module Voltage:, 14.141, V
8:49:35 am, LOAD_ABS, Absolute Load Value:, 26.3, %
8:49:35 am, EQ_RATIO, Comanded Equiv Ratio:, 0.996, x/y
8:49:35 am, EQ_RATIO, A/F (from Equiv Ratio):, 14.59, A/F
8:49:35 am, TP_R, Throttle Pos (Rel):, 5.9, %
8:49:36 am, TP_B, Throttle Pos B (Abs):, 32.2, %
8:49:36 am, APP_D, Accel Pedal Pos D:, 34.1, %
8:49:36 am, APP_E, Accel Pedal Pos E:, 23.1, %
8:49:36 am, TAC_PCT, Cmded Throttle Cntrl:, 5.5, %
Last edited by Rx-Appreci-8; 04-06-2004 at 01:34 PM.
#104
Registered
iTrader: (1)
Join Date: May 2003
Location: PA
Posts: 3,754
Likes: 0
Received 0 Likes
on
0 Posts
did you happen to try and download the ford extended data software?? i have a hunch the latest ford ecu and mazda ecu are similar (they both go into diagnostics mode if you play with the trip computer button and ignition).
I see its a free download from that site so it might be something to check out... would turn the 40 or so sensors to over 200!!
I see its a free download from that site so it might be something to check out... would turn the 40 or so sensors to over 200!!
#105
Mmmmm... Rotary Donut
Join Date: Nov 2003
Location: Lake in the Hills, IL (NW Chicago Burbs)
Posts: 2,376
Likes: 0
Received 4 Likes
on
2 Posts
Originally posted by Rx-Appreci-8
Check out the CANScan OBD-II Scan Tool at www.ghg.net/dharrison. It supports Windows and Palm. I tested with the Palm version on my RX-8 this week and it works well.
Check out the CANScan OBD-II Scan Tool at www.ghg.net/dharrison. It supports Windows and Palm. I tested with the Palm version on my RX-8 this week and it works well.
#106
Pro Audentius
Originally posted by 2rotors
BTW, there sure are a lot of "Probers" around here. I still have a 1989 Probe GT that has given me 15 years of excellent service.
BTW, there sure are a lot of "Probers" around here. I still have a 1989 Probe GT that has given me 15 years of excellent service.
#107
![UK](https://www.rx8club.com/images/icons/ukflag.jpg)
it would be cool if someone would start getting data from the 4 wheel speed sensors, the steering input, and brake input... you could then combine that with the rpm's and throttle and theoretically make a program that you could go around a roadcoarse with, log all the data, come back and actually have the program spit out the coarse you traveled and the steering/braking/throttle inputs (possibly animated on the screen) and compare it between different laps...
... if only :o
... if only :o
Someone has done it, see http://blog.hiroaki.jp/2010/04/000469.html
Also see my blog for the details http://fastdruid.co.uk/wordpress/?p=116
but yes its there and it's fairly easy. Use an arduino, CAN shield and an LCD and you could display them in realtime for < £100.
CAN ID 00000201 for RPM, speed and throttle position.
CAN ID 000004B0 is the one you want for the individual wheel speeds.
Steering input I've not yet got, brakes I think I have (00000212) but need more testing (and binary).
Does anyone else have any translations of the CAN messages?
Druid
#108
It looks like this was abandoned, my guess is it was commercialized or privatized.
Anyway: Some of the data mentioned here is handled by the ASIC in the BCM, The rest on the ECM, and not all boards are MIPS based.
If you are good with IDA both have SPI and simple buffer protocols to get code, whatever you do don't share code though, it's under DMCA. One chip on the BCM handles encryption for the transponders too.
ECM is hybrid ISO-15765 all the way up to 2011, and their is another protocol on BCM->ECM bus lines. The missing 12v+ is some pointless OEM thing.
Anyway: Some of the data mentioned here is handled by the ASIC in the BCM, The rest on the ECM, and not all boards are MIPS based.
If you are good with IDA both have SPI and simple buffer protocols to get code, whatever you do don't share code though, it's under DMCA. One chip on the BCM handles encryption for the transponders too.
ECM is hybrid ISO-15765 all the way up to 2011, and their is another protocol on BCM->ECM bus lines. The missing 12v+ is some pointless OEM thing.
#109
#110
It looks like this was abandoned, my guess is it was commercialized or privatized.
Anyway: Some of the data mentioned here is handled by the ASIC in the BCM, The rest on the ECM, and not all boards are MIPS based.
If you are good with IDA both have SPI and simple buffer protocols to get code, whatever you do don't share code though, it's under DMCA.
Anyway: Some of the data mentioned here is handled by the ASIC in the BCM, The rest on the ECM, and not all boards are MIPS based.
If you are good with IDA both have SPI and simple buffer protocols to get code, whatever you do don't share code though, it's under DMCA.
Possibly the keyless entry might be covered but I can't see how the rest can be (plus it doesn't apply to me as I'm in the UK).
Unless you mean to rip code from the PCM in which case I'd be inclined to kind of agree with their POV!
What is ECM, BCM and MIPS? I Presume ECM=PCM, BCM=HU/CM
Druid
#112
Only really of use as a data tool, not as part of making your own, also personally I'm not interested in OBD-2 just pure ISO 15765-4
Great but Pieter for very understandable reasons is not sharing code atm, also I presume he is using OBD-2 rather than just listening on the CAN bus.
Druid
#113
FWIW I've got most of the instrument panel decoded, or at least know what bytes do what even if I haven't figured out the bit mapping yet.
I'll update my blog later with what I've found but for proof see
![Name: EPIiVl.jpg
Views: 91
Size: 75.1 KB](https://www.rx8club.com/attachments/series-i-tech-garage-22/289821d1683054818-rx-8-pcm-info-scan-tool-progress-update-epiivl.jpg)
You can just see the PC PSU powering it and the Arduino sending the CAN messages. :-)
(petrol gauge is direct connect/resistor based, seatbelt warning I think is a direct connection to the SAS, not figured it out yet anyway)
Druid
I'll update my blog later with what I've found but for proof see
![Name: EPIiVl.jpg
Views: 91
Size: 75.1 KB](https://www.rx8club.com/attachments/series-i-tech-garage-22/289821d1683054818-rx-8-pcm-info-scan-tool-progress-update-epiivl.jpg)
You can just see the PC PSU powering it and the Arduino sending the CAN messages. :-)
(petrol gauge is direct connect/resistor based, seatbelt warning I think is a direct connection to the SAS, not figured it out yet anyway)
Druid
Last edited by Fastdruid; 04-26-2011 at 07:57 PM.
#115
Registered
iTrader: (15)
Hey guys, posted in my rxduino thread but wanted to post here as well incase someone knows, but I would like to know if anyone has the pid for the cruise control? I would like to know if the cruise is currently enabled or disabled, and if the user is pressing ACCEL or DECEL. Thoughts?
#116
Cruise control PID is 650, 0xFF is green, 0x80 is yellow, 0x00 is off
AFAICT you can't detect the buttons without being hacking the wiring although you can get modules to connect to the buttons and pass on the messages to an arduino.
Druid
AFAICT you can't detect the buttons without being hacking the wiring although you can get modules to connect to the buttons and pass on the messages to an arduino.
Druid
#118
Each of the 'buttons' connects a resistor to ground, 'reading' the buttons is therefore a matter of reading the resistance and working out which button (or combination of buttons) has been pressed.
You can get an interface board to read them (google carpc joycon) but not sure if that will disconnect the buttons totally or if you could connect inline.
Our RX-8 doesn't have the cruise control buttons[1] otherwise I'd scan the bus and see if it made any messages change.
Druid
[1] AFAICT the *only* difference between RX-8's with and without cruise control are the buttons themselves, the cruise control itself is in the PCM and all the other sensors (brake, clutch etc) are still there.
You can get an interface board to read them (google carpc joycon) but not sure if that will disconnect the buttons totally or if you could connect inline.
Our RX-8 doesn't have the cruise control buttons[1] otherwise I'd scan the bus and see if it made any messages change.
Druid
[1] AFAICT the *only* difference between RX-8's with and without cruise control are the buttons themselves, the cruise control itself is in the PCM and all the other sensors (brake, clutch etc) are still there.
#120
Is it possible to work out with an OBD-II interface if this S1 update has been applied?
I've got a UK RX-8 on a 53 plate and I was considering sourcing the buttons from the US and fitting them myself but I'd like to know first if they would work.
I've got a UK RX-8 on a 53 plate and I was considering sourcing the buttons from the US and fitting them myself but I'd like to know first if they would work.
#121
CAN data from S1 rom (referenced in subroutines which access the Hitachi CAN registers.)
Code:
ROM:0004BA14 stru_4BA14: hcanParam <h'201, 1, 2048, dword_FFFFBB2C, h'1000000> ROM:0004BA14 ; DATA XREF: sub_DDDC+Co ROM:0004BA14 ; ROM:off_DEF0o ... ROM:0004BA24 stru_4BA24: hcanParam <h'203, 2, 1792, dword_FFFFBB48, h'1000000> ROM:0004BA24 ; DATA XREF: sub_29DF4+2Co ROM:0004BA24 ; ROM:off_29ECCo ROM:0004BA34 stru_4BA34: hcanParam <h'215, 3, 2048, dword_FFFFBB68, h'1000000> ROM:0004BA34 ; DATA XREF: sub_2A414+3Ao ROM:0004BA34 ; sub_2A4A0:off_2A500o ROM:0004BA44 stru_4BA44: hcanParam <h'231, 4, 1280, dword_FFFFBC90, h'1000000> ROM:0004BA44 ; DATA XREF: sub_2CD60+24o ROM:0004BA44 ; ROM:off_2CE00o ROM:0004BA54 stru_4BA54: hcanParam <h'231, h'104, 1280, dword_FFFFBB18, h'1000000> ROM:0004BA54 ; DATA XREF: sub_29A18+6o ROM:0004BA54 ; ROM:off_29B24o ROM:0004BA64 stru_4BA64: hcanParam <h'420, 5, 1792, dword_FFFFBADC, h'1000000> ROM:0004BA64 ; DATA XREF: HcanParams?+32o ROM:0004BA64 ; ROM:off_2965Co ROM:0004BA74 stru_4BA74: hcanParam <h'620, 6, 1792, dword_FFFFC000, h'1000000> ROM:0004BA74 ; DATA XREF: sub_32F08+20o ROM:0004BA74 ; ROM:off_32FFCo ROM:0004BA84 stru_4BA84: hcanParam <h'630, 7, 2048, dword_FFFFBFF0, h'1000000> ROM:0004BA84 ; DATA XREF: sub_32E14+24o ROM:0004BA84 ; ROM:off_32EC8o ROM:0004BA94 stru_4BA94: hcanParam <h'650, 8, 256, byte_FFFFBC34, h'1000000> ROM:0004BA94 ; DATA XREF: sub_2C164+4o ROM:0004BA94 ; ROM:off_2C1D4o ROM:0004BAA4 stru_4BAA4: hcanParam <h'41, 9, 2048, dword_FFFFC4C4, h'1000000> ROM:0004BAA4 ; DATA XREF: sub_387E8+34o ROM:0004BAA4 ; ROM:off_38830o ROM:0004BAB4 stru_4BAB4: hcanParam <h'240, h'A, 2048, dword_FFFFCD30, h'1000000> ROM:0004BAB4 ; DATA XREF: sub_4AFFC+34o ROM:0004BAB4 ; ROM:off_4B0A4o ROM:0004BAC4 stru_4BAC4: hcanParam <h'250, h'B, 2048, dword_FFFFCD44, h'1000000> ROM:0004BAC4 ; DATA XREF: sub_4B0F8+34o ROM:0004BAC4 ; ROM:off_4B194o ROM:0004BAD4 stru_4BAD4: hcanParam <h'4B1, h'10C, 2048, dword_FFFFCD1C, h'1000000> ROM:0004BAD4 ; DATA XREF: sub_4AEFC+6o ROM:0004BAD4 ; ROM:off_4AF94o ROM:0004BAE4 hcanParam <h'7DF, h'10D, 2048, byte_FFFFDBD8, 0> ROM:0004BAF4 hcanParam <h'7E0, h'10E, 2048, byte_FFFFDBD8, 0> ROM:0004BB04 stru_4BB04: hcanParam <h'7E8, h'F, 2048, byte_FFFFDBE0, 0> ROM:0004BB04 ; DATA XREF: sub_66AE2+46o ROM:0004BB04 ; ROM:off_66BB0o ... ROM:0004BB14 stru_4BB14: hcanParam <h'201, 1, 2048, dword_FFFFBB2C, h'1000000> ROM:0004BB14 ; DATA XREF: sub_D9F4+1Co ROM:0004BB14 ; ROM:off_DB14o ROM:0004BB24 hcanParam <h'203, 2, 1792, dword_FFFFBB48, h'1000000> ROM:0004BB34 hcanParam <h'215, 3, 2048, dword_FFFFBB68, h'1000000> ROM:0004BB44 hcanParam <h'231, 4, 1280, dword_FFFFBC90, h'1000000> ROM:0004BB54 hcanParam <h'231, 4, 1280, dword_FFFFBB18, h'1000000> ROM:0004BB64 hcanParam <h'420, 5, 1792, dword_FFFFBADC, h'1000000> ROM:0004BB74 hcanParam <h'620, 6, 1792, dword_FFFFC000, h'1000000> ROM:0004BB84 hcanParam <h'630, 7, 2048, dword_FFFFBFF0, h'1000000> ROM:0004BB94 hcanParam <h'650, 8, 256, byte_FFFFBC34, h'1000000> ROM:0004BBA4 hcanParam <h'41, 9, 2048, dword_FFFFC4C4, h'1000000> ROM:0004BBB4 hcanParam <h'240, h'A, 2048, dword_FFFFCD30, h'1000000> ROM:0004BBC4 hcanParam <h'250, h'B, 2048, dword_FFFFCD44, h'1000000> ROM:0004BBD4 hcanParam <h'4B1, h'10C, 2048, dword_FFFFCD1C, h'1000000> ROM:0004BBE4 hcanParam <h'7DF, h'10D, 2048, byte_FFFFDBD8, 0> ROM:0004BBF4 hcanParam <h'7E0, h'10E, 2048, byte_FFFFDBD8, 0> ROM:0004BC04 hcanParam <h'7E8, h'F, 2048, byte_FFFFDBE0, 0> ROM:0004BC14 stru_4BC14: hcanParam <h'201, 1, 2048, dword_FFFFBB2C, h'1000000> ROM:0004BC14 ; DATA XREF: sub_D9F4+20o ROM:0004BC14 ; ROM:off_DB18o ROM:0004BC24 hcanParam <h'203, 2, 1792, dword_FFFFBB48, h'1000000> ROM:0004BC34 hcanParam <h'215, 3, 2048, dword_FFFFBB68, h'1000000> ROM:0004BC44 hcanParam <h'231, h'104, 1280, dword_FFFFBC90, h'1000000> ROM:0004BC54 hcanParam <h'231, h'104, 1280, dword_FFFFBB18, h'1000000> ROM:0004BC64 hcanParam <h'420, 5, 1792, dword_FFFFBADC, h'1000000> ROM:0004BC74 hcanParam <h'620, 6, 1792, dword_FFFFC000, h'1000000> ROM:0004BC84 hcanParam <h'630, 7, 2048, dword_FFFFBFF0, h'1000000> ROM:0004BC94 hcanParam <h'650, 8, 256, byte_FFFFBC34, h'1000000> ROM:0004BCA4 hcanParam <h'41, 9, 2048, dword_FFFFC4C4, h'1000000> ROM:0004BCB4 hcanParam <h'240, h'A, 2048, dword_FFFFCD30, h'1000000> ROM:0004BCC4 hcanParam <h'250, h'B, 2048, dword_FFFFCD44, h'1000000> ROM:0004BCD4 hcanParam <h'4B1, h'10C, 2048, dword_FFFFCD1C, h'1000000> ROM:0004BCE4 hcanParam <h'7DF, h'10D, 2048, byte_FFFFDBD8, 0> ROM:0004BCF4 hcanParam <h'7E0, h'10E, 2048, byte_FFFFDBD8, 0> ROM:0004BD04 hcanParam <h'7E8, h'F, 2048, byte_FFFFDBE0, 0> ROM:0004BD14 stru_4BD14: hcanParam <h'212, h'121, 1792, dword_FFFFBBF4, h'1000000> ROM:0004BD14 ; DATA XREF: sub_D9F4+4o ROM:0004BD14 ; ROM:off_DB24o ... ROM:0004BD24 stru_4BD24: hcanParam <h'216, h'122, 2048, dword_FFFFBAF0, h'1000000> ROM:0004BD24 ; DATA XREF: sub_29768+2o ROM:0004BD24 ; ROM:off_29844o ROM:0004BD34 stru_4BD34: hcanParam <h'430, h'124, 1792, dword_FFFFC00C, h'1000000> ROM:0004BD34 ; DATA XREF: sub_3303C+6o ROM:0004BD34 ; ROM:off_330F4o ROM:0004BD44 stru_4BD44: hcanParam <h'4B0, h'125, 2048, dword_FFFFBBD4, h'1000000> ROM:0004BD44 ; DATA XREF: sub_2B744+Ao ROM:0004BD44 ; sub_2B79A:off_2B84Co ROM:0004BD54 stru_4BD54: hcanParam <h'4C0, h'126, 256, byte_FFFFBC30, h'1000000> ROM:0004BD54 ; DATA XREF: sub_2C0A8+6o ROM:0004BD54 ; ROM:off_2C118o ROM:0004BD64 stru_4BD64: hcanParam <h'47, h'127, 2048, dword_FFFFC4CC, h'1000000> ROM:0004BD64 ; DATA XREF: sub_38838+6o ROM:0004BD64 ; ROM:off_38900o
Thread
Thread Starter
Forum
Replies
Last Post
ASH8
Series II Technical and Trouble shooting
7
10-30-2021 12:50 PM
CarAndDriver
RX-8 Parts For Sale/Wanted
4
09-25-2015 01:18 PM
Sifu
RX-8 Parts For Sale/Wanted
3
08-30-2015 10:51 PM