Newbie: Weird behavior (Transmit and receive switching delay)


I’m new with XBee prodcuts (I heard of them only 2 days ago) and I’m trying to investigate a communication problem that we have.

To be short, we use one XBee connected to a PC to communicate with as many as 100 movings XBee. The moving XBee runs on batteries and are connected to a Rabbit controller. We we only use the modules to transfer characters data.

It’s a long story but all the modules are configured in broadcast mode because we sometime need to broadcast a message to everyone, sometime we need to talk to a group of XBee and sometime we need to talk to a specific XBee. It’s the rabbit controller that is responsible to determine if the message is for him or not. When we talk to a single module there is always an anwser and that’s where we are having problems…

Let’s say the master XBee (the one connected to the PC) needs to ask something to remote XBee A and B. We transmit the questionA and receive the answerA with no problem. But if we transmit questionB right after AnswerA, we never receive answerB on the master XBee. And I’m sure the problem comes from the master XBee because I used another XBee module to “sniff” the communication and the second XBee is able to receive the answerB.

Just to be sure I also changed the software to use one XBee as the transmitter and a second XBee as the receiver and everything works perfectly. But I don’t like this solution since it uses twos XBee and it needs more code because the second XBee receive all the transmitted data and it needs to ignore it.

I see from the documentation that there is only one antenna and there is a switch so the antenna goes from tranmit to receive mode. Is it possible that my master XBee is still in transmit mode where the Answer becomes available? What is the switching delay of that switch? I had to put a 100ms delay between the question and the answer in my rabbit controller to have 100% success

Finally the problem goes away after some time but it comes back after I remove the batteries and put them back on remote A and B. I call it the “warming delay” [;)] Oh and BTW I’m aware of the 115,200 problem when connected to a PC and it didn’t solved my problem.

Can anyone help me on this.