How can I configure Xbee S2C to drive a GPIO pin before sending a message?


I have setup a network using several xbees communicating with Arduino UNOs and Arduino MEGAs. The thing is that I want them to run on a battery and in mesh mode.

I have measured the xbee modules current consumption and it’s not that high, but running the xbee modules and the hardware reduces my battery life considerably, so I put the Arduinos to sleep (deep sleep) and I wake them up via pin 2.

For that I simply connected the xbee tx line to pin2 via a resistor and I can see my device waking up. The problem is that I don’t receive the entire package because the hardware was in deep sleep. Sometimes it wakes up in time to listen to the second byte, sometimes it wakes up on the third byte and I don’t want that, it’s too unpredictable, I’d like it to be able to read the entire packet.

Is there a way for me to configure them in XCTU that I can force them to drive a GPIO pin high or low a few milisseconds before sending the message to the Arduino? Do I have to tinker with the firmware for it to do that?

It sounds like you want to use the flow control lines

seems like it … how do i configure this? just set the pins for cts and rts? sorry for my ignorance … but would I need a pull up or pull down resistor in order to be able to use it this way? i mean … do I have to implement flow control in the Arduino?

I tried setting CTS and RTS pins but it simply stopped communicating with the Arduino