unemployable / Golf-Mk5-RCD330-CAN-Filter

Allow an RCD330 Head Unit to work in a Golf MK5 (fixes steering wheel buttons, brightness and adds Google Assistant button)
5 stars 1 forks source link

How to make this useable? #2

Open zCruuz opened 9 months ago

zCruuz commented 9 months ago

As far as I understood I'll need to buy -blue board -ftdi adapter board for flashing -rcd can adapter

Then I use the ftdi board to flash the dump using uart mode. How to correctly wire this and setup for flashing atm is beyond my understanding

unemployable commented 9 months ago

The latest green boards need serial FTDI for flashing, the blue boards need an ST-Link V2 SWD programmer as shown in this video: https://www.youtube.com/watch?v=NAWpqNjOGlc

The blue board's SWD header is in the top right corner of this picture (SWDIO, SWCLK etc): https://dangerouspayload.files.wordpress.com/2020/03/dsc_6293-2-copy.jpg?w=1024

Before getting the RCD330, I didn't know anything about STM32 programming, so I started out using a couple of "Black Pill" boards with separate CAN interfaces (as described in the original forum by MrPanini)

I'd recommend getting one of the common STM32 devel boards & an ST-Link V2 to get the hang of it. There are lots of tutorials available to help get started.

zCruuz commented 3 months ago

So i was able to flash the can filter, now i need to connect it to the Quadlock connector. Now i got two questions The first is, i don't understand which can wires of the filter need to connect to the orange and white cable? or is it meant like filter can1 "can in" and filter can 2 "can out" so the whole can is looped through the board?

the second is about the links between solder pads does this mean the two i marked on the picture? image

unemployable commented 3 months ago

Regarding the solder pads, yes your picture shows them correctly. There is a small track between them which means the board has 120 ohm terminating resistors connected. These are needed for standalone testing, but when installed the tracks need to be cut (apparently the vehicle & radio already have them).

Yeah, I also wasn't very clear on which CAN interface connects to where.

The blue board is acting like a Man-in-the-Middle attack. One CAN interface talks just to the vehicle, the other just to the radio (i.e. we cut the direct vehicle/radio CAN connection on the quadlock cable).

Each CAN interface is both sending and receiving CAN messages, most of them passing unchanged between them (i.e. CAN1 Rx => CAN2 Tx & CAN2 Rx => CAN1 Tx). However, the s/w detects and modifies particular messages allowing the RCD330 to understand certain Golf MK5 messages.

From comments in the code, which is a bit more specific:

// STM32 Cabling and CAN connections to the RCD330 Quadlock Wiring Harness (steering button adaptor)
//
// On the Blue (SWD) Dual Filter Board:
// (Note: this matches the "new" green board)
//
// CAN1 is the RCD330
//  GREEN   CAN High
//  PURPLE  CAN Low

// CAN2 is the Vehicle
//  BLUE    CAN High
//  YELLOW  CAN Low

// PQ Quadlock connector (cheap one)
//  Green   CAN High
//  Purple  CAN Low
//  YELLOW  12V Battery
//  BLACK   GND

// Strategy:
//  Cut the CAN High/Low connections between the connectors, midway.
//  Connect the appropriate sides to the Blue CAN board
//  Note: RCD330 side has the lever connector (female pins), the vehicle is the plain connector (male pins).
//  Cut the thin YELLOW and BLACK wires (power) that used to go to the original black box.
//  Tap the Blue boards power into these and re-connect them all together.

Looks like your blue board uses the same colours, your quadlock colours may not match. All three of mine have different colours going between the plugs. It is best to reference everything back to the qualock pinout diagram.

The wires going to the original CAN filter module (which needs to be removed), are probably the white/orange ones? These will be joined with other wires on one of the quadlock plugs (i.e. the direct CAN connections between each end). Probably simpler to ignore these extra white/orange filter module CAN wires and just use the ones that were directly connected between the plugs (i.e. the ones cut in the middle).