How to sniff commands send over UART (I think)

Hi guys, I’m new to this whole Arduino world. But I’ve got a project underway now and I’m stuck more or less at the beginning.

Some background info:
About 6 years ago, a high-end branch of a certain car audio company produced a line of equipment which was intended to be used as a single system. This included the main receiver (CD head unit) and some audio processors which communicated digitally by a 12 pin proprietary cable and a cable called “DVD audio” which is just firewire. (The fire wirewas for transmitting 5.1 signal I believe.) The branch was dismissed due to lack of consumer interested and a hurting American economy. So support and development for these audio processors effectively ground to a halt and the company has expressed no interest in booting it back up again (I know this because I have some acquaintances inside the company).

The processors are really fantastic so I would like to use them in my vehicle. But the head unit has become dated. And unfortunately, the processors ONLY work with the ONE deck that the company released before they disbanded.

So what does this have to do with my project? Well, I would like to use an Arduino to replace the old head unit, and allow myself to connect more modern units to my audio processors.


The first thing I want to be able to do is simply communicate with the processors and send basic commands. I expect that there is an initial handshake between the deck and processors and I have also determined a couple of things about the cable itself.

The cable contains 9 wires. There are two twisted pairs, and the rest are untwisted.
Unfortunately, I wasn’t able to see anything of value when I hooked my portable O-Scope to the wires, so I decided to connect the wires to the RCA inputs of an old amplifier I had lying around. From this, I was able to identify some things that “sound” digital, and some wires which are carrying audio.

Blue/Green twisted pair. These wires appear to be transmitting digital “commands” to the audio processor. There are digital-sounding “packets” that play when I reduce or increase the volume by a notch, when I mute the stereo, or when I commit a speaker configuration change (Time alignment, crossover settings, levels, etc) from the deck. There is also an approximately 2 second, digital-sounding packet that “plays” when the system is first powered up. This is why I suspect that there is a handshake or some initial configuration which I will need to take care of.

Blue/Brown twisted pair. These wires play very, very faint audio which does not change in relation to the volume control on the deck. So I suspect these are somehow sending raw L/R sound to the processor. Not sure though.

Red 1 - sits at about 4.3vDC
Red 2 - sits at about 4.3vDC
Green - This wire also plays audio, though it is considerably louder than the audio output from the Blue/Brown pair.
Orange - 4.3vDc
White - Haven’t identified any signal on this wire.

The cable is grounded using the outer part of the connector.

The first thing that piques my interest is the Blue/Green pair. I would like to somehow “sniff” those wires and see the data that is being sent down the line.
Can anyone please advise me in how to proceed. Is this even doable?

Attached are pictures of the cable end for reference, and of the wires that I have tapped on to the internal wires of the cable.

Thanks!

If you're trying to decode a digital serial signal, I suggest you get a scope and capture a sample of the signal, find what the levels are and see if you can spot the stop bits, then count the number of data and parity bits and the baud rate. You need to know all that to be able to decode it using a UART.

Alternatively, wire it up to the data pins of an RS232 port, hope the RS232 levels don't blow up your device, and try all the parity/stop/speed options you can think of until you find something that works. This is a much cruder approach but might get you there without a scope.