Wireless Programming Arduino w/ Xbee via Screamer Problem

I’m trying to wirelessly program my Arduino via an Xbee link. I’ve read (and read and read) Nate’s post on doing this (http://www.sparkfun.com/commerce/tutori … als_id=122). The only thing different in my setup is that I’m using DIO7 as the reset signal from the Xbee. This is connected via a transistor on the Xbee Shield to the reset line on the Arduino.

Setup summary:

master programmer: PC (using Screamer) ↔ USB Explorer ↔ XBee 1mW

slave: Xbee 1mW ↔ Xbee Shield ↔ Arduino Dueminalove (with new Screamer firmware)

Here’s the problem:

When I hit the “Download” button in Screamer v2.0, it never receives the 0x05 back from the slave arduino/xbee as confirmation that it has reset and is waiting to be programmed. Instead it receives 0xC1

What I know:

  1. The slave arduino DOES reset wirelessly. I can probe the reset line and see it go down for 30ms. The arduino resets.

  2. The slave Arduino DOES send out 0x05 on the serial line after it resets. I see 0x05 get spit out the serial port when I monitor it. I can also manually hit the reset button and see the Arduino spit out 0x05.

  3. The Xbee serial link DOES work fine. I can open two comm. ports and send data back and forth with no problems.

  4. The master Xbee/USB Explorer DOES receive data, it’s just the wrong data. Instead of receiveing 0x05, like the slave Arduino sends, what comes back over the port is 0xC1.

  5. I can manually transmit 0x05 (by opening a comm. port on the slave PC, switching the Xbee shield jumpers to “USB”, and typing 0x05 in the comm. port terminal), and the Screamer program on the Master PC receives it ok.

Problem Summary:

I’m trying to wirelessly reprogram an Arduino. With the new firmware, when the Arduino resets it transmits 0x05. However, the master Xbee unit doesn’t receive 0x05, it receives 0xC1 instead. Otherwise, the Xbee serial link works perfectly.

Confused. Help!