RAVE said: CD autochanger connections

The CD autochanger is earthed, via the head unit, on an N wire from the CD

autochanger to connector interface C0912-8/C0911-8, and a B wire from the

interface to the head unit.

An I bus communications link is connected from the CD autochanger to

connector interface C0912-5/C0911-5 on a G wire, and from the interface to

the head unit on a K wire.

The CD auto changer permanent feed is connected from the head unit on a P

wire.



The CD autochanger left channel positive input is connected to the head unit

by a R wire. The left channel negative input is connected to the head unit on a

S wire.

The CD autochanger right channel positive input is connected to the head unit

by a W wire. The right channel negative input is connected to the head unit on

a B wire from the CD autochanger to connector interface C0912-2/C0911-2,

and a U wire from the interface to the head unit. Click to expand...

Right, I mentioned this in another thread already, but I figured I'd start my own thread for this one, so I can put my findings and everything I learn along the way in one place.I have a '99 RR HSE with the high line Alpine radio and CD changer. In my Classic I had a JVC head unit that could play from a USB stick, and it was great, tons of music to choose from and no chance of a damaged CD. I tried this HU in the P38, but got the noise cause by the dual amps, and of course lack of steering controls.For a short-term solution I got one of those cassette adapters, and used my phone to play music. It works fairly well, but it requires fiddling with a touchscreen while driving, which isn't optimal, and the cassette adapter isn't really made for 10h+ continuous duty, so it starts making a lot of noise after a while.So I started toying with the idea of replacing the CD changer with something else. A small microcontroller would probably do, but MP3 decoding would be a pain.Then I came into possession of a Raspberry Pi. This is a credit card sized computer, runs Linux, draws very little power, and has all the in- and outputs I need.It also only draws about 0.2A, which is nice.After a bit more research, I found out the connection between the CD changer and the head unit is IBus, a system used by BMW to link entertainment devices together. A description of the IBus can be found here: http://web.comhem.se/mulle2/IBUSInsideDRAFTREV5.pdf It's basically a single-wire bus on which all entertainment devices communicate, using an ID to identify themselves. Best part of it being a bus is that I can start by listening in on the communication.I also found an adapter that would translate all the messages on the IBus here: http://www.reslers.de/IBUS/ Basically, this thing will deal with contention (no two messages sent at the same time), and provide a USB interface.Today I got to searching how the wiring goes. The P38 RAVE wasn't of much use, providing only a wiring diagram without labelling or descriptions, and Google got me a lot of bad info (an IBUS with two data lines for example, seemed a bit strange).But the Disco 2 uses the same HU and the same CD changer, so I dug into that manual. And there I found an actual explanation! `)This is the quote from the Disco 2 RAVE:Adding this info onto the D2 wiring diagram gave me this:And then translating this onto the P38 wiring diagram gave me this:(Click images to enlarge)As you can see, the only difference between the two appears to be that the P38 uses a brown wire for ground instead of a black wire. I hope this info can help others in the future too.So that's basically where I'm at at the moment, next step will be to hook up my laptop to the IBUS and see if I can read the messages exchanged between the HU and the CD changer. After that, figuring out a way to make the Raspberry Pi do a clean shutdown and boot when the ignition is cycled (I've got a fair idea about this, but transistors screw with my mind).I'll keep the thread updated with more progress.