Here is the situation:

Recently I got a 70 cm widescreen television for free, it was broken but I fixed it with 12 cents worth of parts.
I decided to place the television at the other side of the computer room, you know, the side where the computer is not.
Now I had a problem, whenever I wanted to watch a movie the channels are all wrong!
Front-left became became rear-right, front-right became rear-left and vice-versa.

Luckily my receiver has some extra buttons on the remote and an output at the rear to control either a minidisc player or a dvd player.
Some poking around with the oscilloscope revealed a ttl output at about 1000 baud.
Since microcontrollers usually work at 5 volts I could hook up the output directly to a microcontroller pin, read out the data and use that to switch some relays.

First I made the schematic:

Channel switch schematic
The microcontroller is a 4 mHz 16F84A, it reads in the data at 1000 baud on pin A0, the data consists of 1 startbit and 32 databits.
Pins A2 and A3 are connected to +5 with pull-up resistors, when pin A2 is made low (with a button for example) and a button on the remote is pressed,
the microcontroller stores the 4 databytes in it's eeprom and uses that to detect whenever that button is pressed, it then turns on the relay.
Pin A3 programs the button to turn the relay off.

Here you can see the pcb alreade built into the receiver.
The screw connectors are there so I can change the configuration of the channels without having to resolder a lot of wires.
circuit built into receiver

I could just switch the speaker outputs with the relays, but that would be very impracticle since my front speakers are 6 dB louder than my rear speakers.
There was only ony solution, switch the channels at line level before the signal reached the volume control.
Luckily Onkyo decided to place some smd electrolythic capacitors to protect the digital potentiometer from any DC (I have no idea why, it shoudn't be needed),
so I had some nice pads to solder wires to.

Here you can see the pcb of the receiver, with wires and new capacitors soldered on.
Wires soldered

Here you can see an overview of the receiver with the channel switcher built in.


If you want the code for the microcontroller, you can download it here: Click

You can contact me at:  (remove the _ and n0sp4m parts).