GOLFMK8
GOLFMK7
GOLFMK6
GOLFMKV

Recording Steering Wheel Angle and Brake Pressure?

aaronc7

Autocross Champion
Location
USA
Car(s)
17 S3
I can probably figure this out now, I've been nerding out a lot more on this stuff the past several months.

I should be able to get the PID info for brake pressure and steering angle. You'll just need an app that can define your own custom params such as RaceChrono Pro.

Logging from both the ECU and and another module at the same time will probably make the logging quite slow though. CAN is probably better, but I haven't done any of that myself yet.
 

aaronc7

Autocross Champion
Location
USA
Car(s)
17 S3
Well, I got the PID info but I wasn't expecting it to be a multi response PID. I couldn't figure out how to get Racechrono to parse it out correctly.

If anyone wants to finish the project here's the raw logs

Brake @ 0psi
Code:
(18445116374068.789063) vcan0 713#0322181655555555
(18445116374068.808594) vcan0 77D#100E621816000000FFFFFFFF0000FFFEAAAAAAAAAAAA

Brake @ 100psi
Code:
(18445116374068.613281) vcan0 713#0322181655555555
(18445116374068.636719) vcan0 77D#100E6218160102A8FFFFFFFF0001FFFEAAAAAAAAAAAA

Steering wheel @ 0 deg
Code:
(18445116374064.957031) vcan0 713#0322180455555555
(18445116374064.972656) vcan0 77D#1011621804FFE10005007EFFF60201FFF7FFF7AAAAAA

(18445116374065.058594) vcan0 713#0322181655555555
(18445116374065.070313) vcan0 77D#100E621816000000FFFFFFFFFFFFFFFEAAAAAAAAAAAA

Steering wheel @ -457 deg
Code:
(18445116374065.707031) vcan0 713#0322180455555555
(18445116374065.722656) vcan0 77D#1011621804FFF40004007EFFF4020128D928D9AAAAAA

(18445116374065.808594) vcan0 713#0322181655555555
(18445116374065.820313) vcan0 77D#100E621816000000FFFFFFFF0000FFFEAAAAAAAAAAAA

Steering wheel @ 440 deg
Code:
(18445116374075.523438) vcan0 713#0322180455555555
(18445116374075.539063) vcan0 77D#1011621804FFE10000007DFFF50200D8A5D8A5AAAAAA

(18445116374075.597656) vcan0 713#0322181655555555
(18445116374075.609375) vcan0 77D#100E621816000000FFFFFFFFFFFFFFFEAAAAAAAAAAAA
 

q74

Go Kart Newbie
Car(s)
R
Does this look right? @aaronc7

Breaking Pressure (psi)
OBD-II Header
- 0x 77D
PID - 0x 22 18 16
Equation - (bytestoUnit(raw,1,2))
 

aaronc7

Autocross Champion
Location
USA
Car(s)
17 S3
Does this look right? @aaronc7

Breaking Pressure (psi)
OBD-II Header
- 0x 77D
PID - 0x 22 18 16
Equation - (bytestoUnit(raw,1,2))
Header should be 0x 713. For example with the ECU PIDs, 0x7E0 is the app talking to the ECU and 0x7E8 is the response back to the app.

Maybe Racechrono doesn't know how to deal with a 0x713 request and doesn't know to expect a response from 0x77D (not really sure, but the app dev is usually very responsive). I get a "no data" response in the app, not really sure what that actually means.

Once that's sorted, you can easily see which bytes change with brake pressure.

I'll make a post on racechrono forum and see where it goes.

Steering wheel data has a lot more going on, might be difficult to get that working with existing apps (or you'll lose the ability to know if the wheel is turned left vs right).
 

aaronc7

Autocross Champion
Location
USA
Car(s)
17 S3
I'm going to 'log' the Racechrono's OBD packets so I can see what it's doing to maybe highlight what's going on.

For sure...the best solution for this sort of things seems to be CAN logging, I haven't done it though. OBD logging with ELM327 device is going to be slow, especially when trying to log from multiple modules. Neat that Racechrono supports CAN logging too, but a little DIY is involved.
 

aaronc7

Autocross Champion
Location
USA
Car(s)
17 S3
I've kinda went another direction with this. All of this data is available on the ECU side via direct memory address logging. Another advantage of this method is that in a single request you can get a bunch of responses. Vs the standard single request, single response system. In my case it's literally piggybacking off the Cobb high speed datalogger.

Here's an example of a log I have with steering angle, as well as logging the internal accelerometers/g meter. This isn't on track or anything, but you get the idea. I wasn't logging brake pressure in this either.

https://datazap.me/u/aaronc7/r8?log=0&data=6-75-77-78&solo=75

I'll make a thread on racechrono forum and see if I get anywhere with it
 

q74

Go Kart Newbie
Car(s)
R
I've kinda went another direction with this. All of this data is available on the ECU side via direct memory address logging. Another advantage of this method is that in a single request you can get a bunch of responses. Vs the standard single request, single response system. In my case it's literally piggybacking off the Cobb high speed datalogger.

Here's an example of a log I have with steering angle, as well as logging the internal accelerometers/g meter. This isn't on track or anything, but you get the idea. I wasn't logging brake pressure in this either.

https://datazap.me/u/aaronc7/r8?log=0&data=6-75-77-78&solo=75

I'll make a thread on racechrono forum and see if I get anywhere with it
Yea I've been thinking of building a microcontoller connected directly to the CANbus and recording all values I care about/want (performing whatever manpulations needed) and provide a NMEA or similar stream over BT LE.


The approch I'm planning should give around 50Hz rate to racechronos, and allow me to basically not have to worry about any limitations in how RaceChronos (or other tools) gather data.

I'm not likely going to get that done before end of this year, so having a way to grab it via my MX+ in RaceChronos would be nice as a stop gap.
 
Last edited:

aaronc7

Autocross Champion
Location
USA
Car(s)
17 S3
Yea I've been thinking of building a microcontoller connected directly to the CANbus and recording all values I care about/want (performing whatever manpulations needed) and provide a NMEA or similar stream over BT LE.


The approch I'm planning should give around 50Hz rate to racechronos, and allow me to basically not have to worry about any limitations in how RaceChronos (or other tools) gather data.
Definitely seems like the way to go! If this was a track car or something for me, I would be all over that 100%.

What I'm talking about above requires Cobb AP or similar custom logger implemented, so obviously wouldn't work for all cars etc too which is another downside. But probably most appealing for me since I already have that and is just using existing parts (OBDLink MX) I already have etc.

If you end up going the CANbus route, please document and share!
 
  • Like
Reactions: q74

aaronc7

Autocross Champion
Location
USA
Car(s)
17 S3
https://racechrono.com/forum/discussion/2097/can-dpid-support

Well I got it working, using the Cobb AP logging patch.

In this random example I am logging 8 params / 14 bytes total at 30-50hz refresh rate. Direct memory logger, so I can log steering angle, brake pressure, knock retard average, G-forces etc........

It's definitely a little labor intensive and need some know-how but pretty cool and honestly it's way faster than I expected it to be.

I'm using OBDLink MX. I'd be happy to try and help get it set up for you, but this requires Cobb AP 100% as is.
 
  • Like
Reactions: q74

aaronc7

Autocross Champion
Location
USA
Car(s)
17 S3
Well, a little setback. The Cobb logger uses some sort of checksum byte or something like that at end of the DPID build command. Which if I replicate exactly a Cobb logging list I can just follow suit and copy it exactly and it works.

But if I want to do my own thing and add other params that AP doesn't have, such as brake pressure (I also found something that sounds like slip angle which sounds interesting), then I have no way to make it work.

Logging like 2x the things seemed to have virtually no impact on logging speed though. Still 30-50hz logging all these items.

Good news is this will definitely work on the open source project tuning stuff I've been working on.

 
  • Like
Reactions: q74

aaronc7

Autocross Champion
Location
USA
Car(s)
17 S3
Amazing work man. Have you been able to test it out on the track or road?
Yeah, but not any sort of track driving scenario. Just driving around on some back roads etc.

It works, but it is pretty cumbersome to set up
 

scrapin240

Drag Racing Champion
Location
IzzaGolf
Car(s)
Golf
Yeah, but not any sort of track driving scenario. Just driving around on some back roads etc.

It works, but it is pretty cumbersome to set up
Hey!

any insight in helping me get started. I purchased a RaceCapture/Track, but would rather log through OBD as it's less wiring, and well I go to the track so little, just want some additional channels that AP already has.

Any help appreciated.
 
Top