Simulating Steering Wheel Commands

Hello, I'm quite new to Arduino and need some help with a code.

I'm currently working on enabling steering wheel commands on my BMW X3 E83 with an aftermarket head unit. For some reason, the head unit doesn't recognize the signal sent through the wires designed for that. There is a K-Line that goes into a CAN decoder, and yellow and orange wires that go from the decoder to the head unit.

I tested all of them with an oscilloscope, and they all show a good signal when a button on the steering wheel is pressed. I believe that the yellow and orange wires are basic TTL, though I might be wrong.

There are also KEY1 and KEY2 wires. From the head unit manual, I saw that they are for analog signals. Then I got the idea to test the KEY1 wire with ground and "teach" the head unit to read that as VOL+, and it worked.

My idea with the Arduino is to connect the yellow and orange wires as serial input, have a code that reads the data, and outputs it as voltage values. Alternatively, I would place different resistor values at the outputs connected to the KEY1 wire to simulate button presses that way.

I need help with writing the code, as I'm not familiar with it :slight_smile:

Thanks in advance.

Actually you need to stop guessing and put some real numbers and values on what the so-called signals are. You cannot design a system based on unknowns. Only then can you make a schematic showing the connections proposed. And then begin to write the code to test EACH device, one at a time so you understand how it works.
Finally you can put together your final program for your project.

How did you determine that, I assume it was another guess. Follow @Paul_KD7HB suggestions if you want to get a valid answer.