I'm hoping this may be of use to some teams out there who'd like to be able to control their new 2004 EDU RC with a previous year's OI. What we've done is to connect the serial port on the 2003 EDU RC to the serial port on the 2004 EDU RC, and then modified the code for each so that the 2003 EDU RC simply acts as a forwarding device to send the joystick & button data from the OI into the 2004 EDU RC. Essentially, the 2003 EDU RC becomes a fancy radio modem.
There are only 2 pieces of hardware that you'll need to duplicate this setup. First is a special serial cable to connect the 2 RCs. This serial cable needs to only have 3 wires and connect the pins like this:
Code:
2003 RC 2004 RC
Pin 2 <------> Pin 3
Pin 3 <------> Pin 2
Pin 5 <------> Pin 5
Unfortunately one of the pins on the 2003 EDU functions as a reset line, so if it gets connected to the wrong pin on the 2004 EDU then the 2003 EDU will just stay in reset and not boot up. That's why the above 3 wire cable is best. I have not tested a standard null-modem cable though, so that may work as well depending on what's connected to what.
The other thing you will need to do is figure out a way to power both EDU RCs at the same time. We did not receive a new EDU battery with the 2004 kit, so I'm assuming noone else did either. The best option for this problem is probably to order a second battery from Innovation First. Otherwise, if you're feeling adventurous, you may be able to construct a Y power cable to power both RCs from the same battery pack.
Once you have figured out how to power both EDUs and made your serial cable, then simply download the code for each EDU from the zip file I'm attaching to this post. There's an OIPassthru.bsx file for the 2003 EDU and an MPLAB IDE project for the 2004. Your own code should still go in user_routines.c or user_routines_fast.c, just like with the default EDU code.
Well, hopefully this is helpful to some teams. Please feel free to reply with questions and we'll do the best we can to get them answered.