987.1 Can Bus Mapping

Discussions on CAN mapping for ECUs, sensors, PDMs, and more.
boggie1688
Posts: 138
Joined: Fri Apr 07, 2017 3:47 pm
Location: Oakland, CA

987.1 Can Bus Mapping

Post by boggie1688 »

I've got my RCP3, and managed to wire it into the ecu.

I stumbled for 45 mins trying to understand why the simple can logger script wasn't working.

I change the can device from 0 to 1, but there was no output. I screwed around with baud...and whenever I switched to 100,000 the ECU would freak out on the 987 and my rear wing would deploy. I knew I was wired up right, but none of the can bus packets were making it through.

Stupid me, didn't changed the device further down the script.

rxCan(0,100) to rxCan(1,100)

:D

My programming skills are terrible weak.

In any case, I think I've mapped the following info:
ID 578 Offset 5 Length 2 - I think this is throttle position
ID 578 Offset 3 Length 2- I think this is the first two digits of RPM

I'm not sure of the computer is logging the last two digits of RPM. I thought it was offset 2. I think this would be considered endian small? I'm not 100% sure.

ID 1089 Offset 5 Length 2 - I think it temperature of either engine or engine oil.

The car is cooling down so I can confirm data.

Right now with out a can shield, I'm logging can data and pulling manually into Excel. From there I filter the packets by channel, and manually go in and look for patterns.

I can also confirm the 987.1 has no steering angle sensor, and no oil pressure sensor. :(

I guess a future project will be to add an oil pressure sender and brake sender.

OH and the formula I used for RPM and Throttle are as follows:
RPM : *10/40+30 (this is pretty close to what I get via durametric)
Throttle : *1.0/255 (dead prefect)

boggie1688
Posts: 138
Joined: Fri Apr 07, 2017 3:47 pm
Location: Oakland, CA

Post by boggie1688 »

I can't seem to add more than two can channels. Anything after two, just doesn't have any data. If I delete one, then whatever two remain have some type of output.

Not sure what is going on.

MikeD
Posts: 39
Joined: Sun May 29, 2016 11:55 am
Location: Austria
Contact:

Post by MikeD »

You may post your config file and probably some screenshots and a "poll log" output of your simple CAN logger script and the output of your config as you have it now, so that people can get a better idea of what's going on.

In another thread you talk about the OBD connector but otherwise state that the Cayman 987 MK1 doesn't support CAN via OBD... How did you establish your physical connection right now? Did you tap into the CAN lines directly at the ecu connector like AIM describes within their manuals in the end?

Btw where are you located?

boggie1688
Posts: 138
Joined: Fri Apr 07, 2017 3:47 pm
Location: Oakland, CA

Post by boggie1688 »

Thanks for the reply.

Sorry for the confusion. I bought the obd cable to play with and thus far it hasnt worked. Currently the rcp3 is directly wired to the ecus canh and canl wires. The can bus light is orange and blinks.

I'm more the happy to post some output logs. I'm not sure what config file you are looking for. Can you elaborate?

boggie1688
Posts: 138
Joined: Fri Apr 07, 2017 3:47 pm
Location: Oakland, CA

Post by boggie1688 »

Here are some photos:

Image #1 - Output script being polled
Image

Image #2 - Can Bus Enabled
Image

Image #3 - TPS ID Mapped
Image

Image #4 - TPS ID Mapped Twice
Image

Image #5 - Dashboard of TPS (only one output is working)
Image

Other strange things to note. When I mapped the first TPS sensor, the dashboard didn't work. After I just so happened to close race capture and open it, it started working. The second TPS output was mapped using the exact same values, the only difference is I used the TPS label provided from the software.

My OBDII cable produces nothing. No RPM, No TPS. I tested this setup in another car, 2015 WRX. Same results. Nothing. This can't be the case.

What gives? It is difficult to figure out of the software is bugging out, or if it is me.

jlwall
Posts: 5
Joined: Sat Apr 15, 2017 9:19 pm
Location: San Jose, CA

Post by jlwall »

It looks like you have messages 776, 320, and 1583 on the bus, which is
0x308, 0x140, and 0x62F respectively.

Could you share the link or send details that led you to believe 578 is the message that has TPS? This would be id 0x242 in hex.

Do you have any evidence on 578 on the logging script in console output?

These scripts are nice, yet my absolute favorite way of checking a bus out with Low Cost HW is the PCAN-USB

https://gridconnect.com/pcan/can-adapters/can-usb.html ~ $220 and has a nice free Windows UI to be able to look at traffic and send test messages.

boggie1688
Posts: 138
Joined: Fri Apr 07, 2017 3:47 pm
Location: Oakland, CA

Post by boggie1688 »

So I figured out that the RCP3 needs to be power cycled every time you add a new can bus mapping. :shock:

Err...weird.

Ok so here why I think 578 Offset 5 Length 2 is Throttle

Car was off, accessory mode, I went from no throttle input to pull to none.
https://docs.google.com/spreadsheets/d/ ... sp=sharing

Car was off, accessory mode, I went from no throttle input to full.
https://docs.google.com/spreadsheets/d/ ... sp=sharing

While the PCAN device looks nice. I'm working on a budget. I'm eyeing the canable.io, http://canable.io/. It is out of stock right now.

brentp
Site Admin
Posts: 5956
Joined: Wed Jan 24, 2007 6:36 am

Post by brentp »

Hi boggie1688,

You *shouldn't* have to power cycle RCP after adding a CAN channel. We'll double check that. :)

Try changing your ?TPS channel to TPS2. We should be filtering the non alpha-numeric characters, but it appears it is not. That might be causing some headache internally.

Check your configuration that you aren't naming another channel "TPS" when you have an OBDII channel also named "TPS", otherwise you will have channel collisions, and one will overwrite the other.

If you want to try *just* OBDII, disable CAN mapping, then add just one OBDII channel, like RPM, TPS or EngineTemp and give that a try.

Also, you had a comment about only two CAN busses on RaceCapture/Pro : That's correct - there's two indepenent CAN bus connections on RaceCapture/Pro . You might be confusing that with CAN IDs, which is a different concept - but you might've figured that out already based on your recent posts.
Brent Picasso
CEO and Founder, Autosport Labs
Facebook | Twitter

brentp
Site Admin
Posts: 5956
Joined: Wed Jan 24, 2007 6:36 am

Post by brentp »

Also, it looks like you're getting streaming data from your ECU - I seems the Porsche has a separate CAN bus that streams data separate from OBDII? Is this on the same CAN bus as OBDII, or on a different physical connection?
Brent Picasso
CEO and Founder, Autosport Labs
Facebook | Twitter

boggie1688
Posts: 138
Joined: Fri Apr 07, 2017 3:47 pm
Location: Oakland, CA

Post by boggie1688 »

Hey Brent,

For any of the can mapping, I'm directly connected to the can h/l wires from the ECU. The power cycling seems to have solved the issue of adding multiple can mappings. This year Porsche does not have can wired to the OBD2.

I'll tinker with the OBD2 connector this weekend. When I tried it a few days ago, I disabled the can mapping and deleted all the maps. One both my Porsche and Subaru, the rcp3 couldn't pull any rpm data.
Last edited by boggie1688 on Wed Apr 19, 2017 2:52 pm, edited 1 time in total.

boggie1688
Posts: 138
Joined: Fri Apr 07, 2017 3:47 pm
Location: Oakland, CA

Post by boggie1688 »

One more question. Now that I think I have identified 4 channels I still need to scale them.

I thought 1 byte had a decimal range of 0 to 255.

When I think about the TPS, I know the range is 0 to 100. The formula I thought would work doesn't. *1 /2.55 +0

The formula *1 /255 +0 , gets be a dashboard that goes from 0 to 255.


What am I missing? Your knowledge is appreciated.
Last edited by boggie1688 on Wed Apr 19, 2017 2:57 pm, edited 1 time in total.

brentp
Site Admin
Posts: 5956
Joined: Wed Jan 24, 2007 6:36 am

Post by brentp »

Hi -

Ok, so it sounds like your Porsche is pre-OBDII, yet has an OEM proprietary internal CAN bus. What year is it again?

What year / make / model is the Subaru?

Regarding TPS - what's the documented conversion formula for the Porsche? Is there a spreadsheet or PDF you can upload here, or are you trying to reverse engineer it with no documentation?
Brent Picasso
CEO and Founder, Autosport Labs
Facebook | Twitter

boggie1688
Posts: 138
Joined: Fri Apr 07, 2017 3:47 pm
Location: Oakland, CA

Post by boggie1688 »

The Porsche is a 2007 Cayman S. It has obdii but no can wired in. Apparently Porsche got some wavier? I'm not sure.

The Subaru is a 2015 WRX.

I have zero documentation on the Porsche. My only frame of reference is a durametric cable. It plugs into the obd port but can read way more info and activate certain functions in the car.

brentp
Site Admin
Posts: 5956
Joined: Wed Jan 24, 2007 6:36 am

Post by brentp »

==OBD
Got it. 2008 was the year that CAN OBDII was mandated. Since there are no CAN pins in your OBDII connector then your car definitely does not support OBDII. Recommend just leaving it turned off - your ECU will simply not respond to OBDII PID requests, ever.

What model is your Subaru? There is an issue with BRZ / Scions where they are very picky about how the CAN bus is terminated.

==TPS
So you're doing the mapping the hard way - no worries, just more of an adventure!

For your TPS data, it sounds like a 1 byte value. Does the default formula yield a value of 0 for closed throttle and 255 for WOT?

If so, try a formula that's raw / 255 * 100 + 0.


==Adding channels
I tried the following test:

* verify CAN channels were 'ON'
* add one CAN channel named 'FOO1'
* write config to RCP
* navigate to dashboard, verified FOO1 was present on the dashboard
* navigate back to setup
* add a 2nd CAN channel named 'FOO2'
* write config to RCP
* navigate to dashboard, verified FOO2 was present on the dashboard

So, I can't seem to replicate your problem. Could you try again with those steps?

Thanks!
Brent Picasso
CEO and Founder, Autosport Labs
Facebook | Twitter

boggie1688
Posts: 138
Joined: Fri Apr 07, 2017 3:47 pm
Location: Oakland, CA

Post by boggie1688 »

The Subaru is a 2015 WRX. It uses almost the same engine as the BRZ. Whether or not this means the ECU is similar, I couldn't say. I believe it is a Hitachi.

I enjoy the challenge of decoding the can bus, it has been a fun adventure thus far. Hopefully I can decode more info and share it. I agree that the TPS data seems like 1 byte. I'll check, tonight, what the default formula yields. However, I know that if I use *1/255+0, the dashboard displays 0-255 when throttle is 0-100%.

This is why I am dumbfounded. I'll try your formula tonight and report back.

Lastly, the channel adding issue. When I map a new channel, and define the name, it is available via the dashboard. IE; If I mapped a channel named FOO1, and went to the dashboard I can select it there. However, the dashboard does not display any data until I power cycle the RCP.

Post Reply