0
\$\begingroup\$

I am new in the Xbee world, I have 4 Xbee S1 802.15.4, that 3 are end device and one a coordinator.

The end devices transmit good to coordinator.The coordinator is connect to Raspberry Pi via USB with a Xbee USB Explorer. The communication is through serial and can see the data for the end devices, use python.

How can send a signal from the coordinator to each end device for wait to start the transmission?

In this moment I have the configuration in API Mode.

\$\endgroup\$
0
\$\begingroup\$

Choose a python XBee library, and use it to send a "Broadcast Message", which means it will go to all the end devices. A Broadcast message is addressed like so:

The 64-bit destination address should be set to 0x000000000000FFFF for a broadcast transmission (to all devices). The coordinator can be addressed by either setting the 64-bit address to all 0x00s and the 16-bit address to 0xFFFE, OR by setting the 64-bit address to the coordinator's 64-bit address and the 16-bit address to 0x0000. For all other transmissions, setting the 16-bit address to the correct 16-bit address can help improve performance when transmitting to multiple destinations. If a 16-bit address is not known, this field should be set to 0xFFFE (unknown).

If you don't want to use a Library, you can build the packet yourself using the Reference for your version of XBee (eg https://www.digi.com/resources/documentation/digidocs/pdfs/90000976.pdf) and look at the section for "ZigBee Transmit Request Frame type: 0x10". Send data matching that format and it should work.

But i'd recommend using the library.

\$\endgroup\$

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.