Background: I am working on creating a software simulation and a part of this simulation
involves multiple entities wirelessly communicating with each other. I want to make the simulation
more realistic by implementing some realistic constraints that the system would have if I would
use Zigbee protocol with Xbee modules. Notes: In my simulation I assume each Xbee is connected to a
microcontroller and that there will be 20 plus entities who, at certain times, may all need to start to send
data at the same time.
My questions are these:
1: Is it true that only one Xbee can use one channel at a time?
2: Is it true that if one Xbee is using a channel and another attempts to use that same channel, that
the second Xbee will wait a random amount of time and attempt to communicate on the same channel?
3: Can an Xbee switch channels (if instructed to do so by a microcontroller)?
4: Can an Xbee receive from multiple channels at the same time?
5: can an Xbee transmit from multiple channels at the same time?
6: If I have X bits of information I want to transfer, how many additional bits will be added to the message?
(like maybe MAC address, beaconing, etc)
1: yes and no, you can make 2 Xbee use the same channel if they talk to other Xbee (fe: you Xb1 talk to Xb14 and Xb4 talk to Xb11 and they are directly connected).
2: yes , this is the anti-collision algorithm but take care because if you don’t see an Xbee that send, you will send anyway and maybe the receiver won’t see it because he is already reading someone else.
3: yes, you can use AT command to change the used channel but 2Xbee must be on the same channel to send AND receive so you must change at the same time.
4: yes and no, there is a buffer so if he is receiving from different Xbee, the data will be send to this buffer but when the buffer is full, the data is lost. Also you can’t say which Xbee send data in AT mode, you must use API mode to know additional information
5:no, but you can do an algorithm that switch channel than send
The way you have that question worded is incorrect. What is true is that the XBee and Zigbee products are a Direct sequence product. That means that it only operates on one channel. In this case, the channel in which the Coordinator selects.
That is correct. Per the IEEE must perform a clear channel assessment and random back off before they can transmit.
No, a zibee based network can’t change channels from a mP. It must occur from the Coordinator in the form of a change to the SC value on each node followed by a Global network reset.
No, the XBee can not transit or receive on multiple channels.
The IEEE specifies that the maximum RF packet can not exceed more than 120 bytes. If your Maximum payload for a XBee using the Zigbee protocol is 85 bytes. You should be able deduce that the size would be 35 bytes of overhead.