GOLFMK8
GOLFMK7
GOLFMK6
GOLFMKV

carPC steering wheel controls

Darkside

Ready to race!
Location
Innsbruck, Austria
Car(s)
Golf V
Can you comment on why he says he went with the 1011 instead of the VS1003? Bablefish says something about the output levels being too low?!

Nah, he says he didn't get the VS1003 because he could only get it in huge quantities, and not just one.

I'd go with the VS1053 if it's pin compatible.
 

Darkside

Ready to race!
Location
Innsbruck, Austria
Car(s)
Golf V
Ok, so... I've got it. :happyanim:

Connect your PIC to the interior CAN. NOT to the diagnostics port and NOT to the infotainment bus. You won't get all the data there, as it's filtered by the CAN bus. You can tap into the interior CAN behind the climatronic control panel.

Set the Bitrate to 100kb/s.

Now, the MFSW device ID is 0x05C1 (5C1).

These are the messages sent by the buttons

Code:
[B]Bit value / HEX / Byte value (decimal) / Integer value [/B]
Vol+ = H04 H02 / [B]06[/B] / 6 / 1536 
Vol- = H04 H02 H01 / [B]07[/B] / 7 / 1792 
menu = H02 / [B]02[/B] / 2 / 512 
ok = H02 H01 / [B]03[/B] / 3 / 768	
Phone = H20 H08 H02 H01 / [B]2B[/B] / 43 / 11008 
Star = H40 H10 / [B]50[/B] / 80 / 20480	
next = H04 / [B]04[/B] / 4 / 1024 
prev = H04 H01 / [B]05[/B] / 7 / 5 / 1280

I'm not sure about the mapping of the buttons to the values (can't test it right now, this was taken from a interior CAN dump). The values are definitely correct but it's possible i've accidentally swapped the labels (i.e. menu might actually be star and OK might be phone... not sure). You should be able to confirm this, though.

Just make sure you connect to the interior CAN and NOT to the infotainment CAN.
 

wireb

Just a noob with a welder
Location
Rochester, MN
These should get translated over to the infotainment bus as well. If not they would be no way to control the radio. :)

Not going to be able to move the connection till spring so will go poke around the infotainment bus this weekend and see if there is something similar coming across. (Both the radio and the bluetooth module are on the infotainment bus. I expect the mute and phone buttons to show up all the time. The other buttons may only show up when on the "audio" page. The other message I need to find is the one that tells the display to add a new page. When you turn off the radio the "audio" page disappears. Also there are other aftermarket add ons that add pages of their own so once I figure out what the message is I can start building my own page for controlling devices. )
 

Darkside

Ready to race!
Location
Innsbruck, Austria
Car(s)
Golf V
These should get translated over to the infotainment bus as well. If not they would be no way to control the radio. :)

Actually, yes, they do have a way to control the radio. The CAN Gateway is pretty intelligent. It translates messages between devices and between busses. The MFSW control messages get translated into radio control messages for the infotainment bus.

If you press Vol+ on the steering wheel, the interior bus sees the MFSW messages. But the infotainment bus only gets the messages to crank up the volume. Since I don't have a radio and removed the radio from the CAN Gateway with VCDS, the messages don't get translated any more. Besides, messages meant for the phone or for the MFA don't get translated at all (or only if your radio has the bluetooth module).


Not going to be able to move the connection till spring so will go poke around the infotainment bus this weekend and see if there is something similar coming across. (Both the radio and the bluetooth module are on the infotainment bus. I expect the mute and phone buttons to show up all the time. The other buttons may only show up when on the "audio" page.

That's exactly what happens. You won't get the button messages however. And reading the messages for Audio+ isn't really all that helpful.

Also there are other aftermarket add ons that add pages of their own so once I figure out what the message is I can start building my own page for controlling devices. )

I seriously recommend not doing that. Besides, adding custom menu entries is pretty hard. I can, however, write to the 2 lines at the top of the MFA. My car computer / Centrafuse can now show the currently playing song on the MFA. :happyanim:

However, writing to the CAN bus is pretty risky. You can always disturb the system. Actually, I just managed to crash my can bus while driving. Besides, for the MFA+ messages, you have to send the whole text every 50ms, because it gets overwritten by other systems. So I have a function announce() that sends the message every 50ms for 2.5 seconds.

The other message I need to find is the one that tells the display to add a new page. When you turn off the radio the "audio" page disappears.

Actually, there is no message that turns off the audio page. There is just a message that turns it ON! Those messages also have to be sent every few milliseconds.

The aftermarket devices get plugged in to the CAN gateway or directly before the MFA+ connector. That's so their CAN bus messages only go to one device (the MFA+) and won't be transmitted over the whole CAN gateway of the car.
 

wireb

Just a noob with a welder
Location
Rochester, MN
Will have to find the device again it plugged into the back of the radio (only infotainment CAN bus available there) and added a unique page with engine temp/RPM/voltage ect to the MDF.

Going to the other bus is better for folks replacing their radio. I am not. Just want to add a page with some random information on it and be able to interact with it.
 

Darkside

Ready to race!
Location
Innsbruck, Austria
Car(s)
Golf V
Will have to find the device again it plugged into the back of the radio (only infotainment CAN bus available there) and added a unique page with engine temp/RPM/voltage ect to the MDF.


http://www.kufatec.de/shop/product_....html/XTCsid/9e2391ef7cf17f4f9efe92a330e456ba


Going to the other bus is better for folks replacing their radio. I am not. Just want to add a page with some random information on it and be able to interact with it.

Well, that may be possible. But even the professionally developed Kufatec eMFA has issues with crashing the CAN bus sometimes.

You might want to take a look at what this guy did. Again, german only and I have no idea how he did it, but he's able to control every single pixel of the FIS (this is done by modifying cluster dumps I understand, not via CAN).

He probably knows a lot about the CAN bus, though, considering what he did in his other projects.
 

darcness

Go Kart Champion
Location
Grand Blanc MI
Car(s)
2008 GTI CW
Darkside, any way you can share how you got Centrafuse to display information on your MFD? I too am using CF and would love to pick your brain on this. I don't know squat about how to interface/read the can-bus, but I catch on quick. Also, if you can tell me what hardware/software I need that would be great.
 

Darkside

Ready to race!
Location
Innsbruck, Austria
Car(s)
Golf V
Darkside, any way you can share how you got Centrafuse to display information on your MFD? I too am using CF and would love to pick your brain on this. I don't know squat about how to interface/read the can-bus, but I catch on quick. Also, if you can tell me what hardware/software I need that would be great.

Well, I just hacked this up today, so it's by no means a clean solution. I used a Lawicel CANUSB cable, connected CAN HI, CAN LO and CAN GND (not +12v) to the Can bus behind the climatronic controls (took me the better part of my lunch break and a few scratches on my hands to figure out which of the bloody cables actually IS the CAN bus.

Once I had the CANUSB connected, I hacked some piece of code together in VB (don't shoot me!), using the CANUSB driver DLL. The MSCommCAN_OnComm() function gets called whenever something is received on the CAN bus. The code to wait for a full message is pretty simple:

Code:
Select Case MSCommCAN.CommEvent
        Case comEvReceive
            s1 = MSCommCAN.Input
            For i = 1 To Len(s1) Step 1
                s2 = Mid$(s1, i, 1)
                j = Asc(s2)
                If (j = 7) Then ' BELL = ERROR!
                    sMessage = ""
                    iFlagACK = 2
                ElseIf (j = 13) Then ' CR = OK
                    ProcessMessage( sMessage );
                    sMessage = ""
                    iFlagACK = 1
                Else
                    sMessage = sMessage + s2
                End If
            Next i
    End Select

And ProcessMessage() just waits for the right IDs and does some Windows API calls (Volume up/down etc.)

Pretty simple, actually, although I'm going to write my own driver over the weekend, which should be a much cleaner job.
 

darcness

Go Kart Champion
Location
Grand Blanc MI
Car(s)
2008 GTI CW
So the above coding will show the data in the MFD as well as controlling the volume via the steering wheel? If so that is fucking awesome. Hell, if I can just get my volume and track buttons to work I'd be loving it.

Where does one buy this USBCAN cable?
 

Darkside

Ready to race!
Location
Innsbruck, Austria
Car(s)
Golf V
Darkside, any way you can share how you got Centrafuse to display information on your MFD? I too am using CF and would love to pick your brain on this. I don't know squat about how to interface/read the can-bus, but I catch on quick. Also, if you can tell me what hardware/software I need that would be great.

Oh wait, I'm stupid. Or it's late. Or both, probably. I thought you asked how I READ from the bus, considering this topic is about the MFSW and all.

Anyway, writing works the same way. Currently, I don't really have Centrafuse sending the song info, it's a simple app where I can enter line1 + line2 for the FIS and press "send" to send it. Again, I hacked both things together in about an hour.

The right way would be to write a centrafuse plugin (which knows when a song changes) and use this to send the info.

Anyway, sending works with the SendCommand() function (again, in VB).

The messages for the FIS display are 627h (8 Byte) and 62Fh (4Byte) 627 byte 1 is a status register and the remaining 7 byte contain the display lines as multiplex.

From the project I posted above, I got the ASCII table: http://martinsuniverse.de/projekte/audiohplayer/fiszeichen.html

It's really not that impressive.. it has plenty of bugs and sometimes the messages show, sometimes they don't.

This wasn't what I wanted to do, originally. Writing to the CAN bus is too risky.

What I'm going to do next is reading the climatronic control messages and displaying those via centrafuse (or an overlay), like the RNS510 does in the Golf MkVI!
 

darcness

Go Kart Champion
Location
Grand Blanc MI
Car(s)
2008 GTI CW
So basically what I'm asking is this...

If I get the CANUSB can I at least use the Volume control and track control buttons on the steering wheel to control my PC sound/Centrafuse tracks?

That's my main concern and all I would really need to do.
 

Darkside

Ready to race!
Location
Innsbruck, Austria
Car(s)
Golf V
So basically what I'm asking is this...

If I get the CANUSB can I at least use the Volume control and track control buttons on the steering wheel to control my PC sound/Centrafuse tracks?

That's my main concern and all I would really need to do.


You should be able to. I'm not saying it will definitely work, since I have no idea whether the CAN ids are the same in every car and for every steering wheel... but in general, yes. It should work.

You might need some programming skill, though.
 
Top