Usage of digi.xbee library for wireless data communication: Source: https://xbplib.readthedocs.io/en/latest/getting_started_with_xbee_python_library.html
pip3 install digi-xbee
pip3 install --upgrade setuptools
import time import sys from digi.xbee.devices import XBeeDevice, RemoteZigBeeDevice, XBee64BitAddress, ZigBeeDevice, RemoteXBeeDevice, XBeeMessage, IOMode from digi.xbee.io import IOLine from digi.xbee.packets.common import TransmitStatusPacket
# instantiate XbeeDevice object: #device = XBeeDevice("/dev/ttyS2", 9600) device = ZigBeeDevice("/dev/ttyS2", 9600) #device = ZigBeeDevice("COM13", 9600) device.set_sync_ops_timeout(5) device.open()
# Instantiate a remote XBee device object. remote_device = RemoteXBeeDevice(device, XBee64BitAddress.from_hex_string("0013A200xxxxxxxx"))
remote_device.set_io_configuration(IOLine.DIO11_PWM1, IOMode.DIGITAL_OUT_HIGH)
# Send data using the remote object. #state = device.send_data(remote_device, "Hello XBee!") sendID = 0 while(True): if(sendID == 3): sendID = 0 else: sendID += 1 #h = hex(sendID) #v = ("\xFF".encode('Latin-1')) #state = device.send_data(remote_device, v) state = device.send_data(remote_device, chr(sendID)) if(state != None): print(state.transmit_status) time.sleep(0.2) # Read data. xbee_message = device.read_data() if(xbee_message != None): remote_device = xbee_message.remote_device data = xbee_message.data is_broadcast = xbee_message.is_broadcast timestamp = xbee_message.timestamp print(str(data.decode())) else: print("No return message")
device.close()