dispatch.register('rx_io_data_long_addr', default_handler, lambda p: p['id'] == 'rx_io_data_long_addr') dispatch.register('rx_io_data', default_handler, lambda p: p['id'] == 'rx_io_data') dispatch.register('tx_status', default_handler, lambda p: p['id'] == 'tx_status') dispatch.register('status', default_handler, lambda p: p['id'] == 'status') dispatch.register('at_response', at_response_handler, lambda p: p['id'] == 'at_response') dispatch.register('remote_at_response', default_handler, lambda p: p['id'] == 'remote_at_response') dispatch.register('node_id_indicator', default_handler, lambda p: p['id'] == 'node_id_indicator') xbee = XBee(ser, callback=dispatch.dispatch, escaped=True) dispatch.xbee = xbee print("run...") print("") print("current status:") xbee.send('at', command=b'ID', frame_id=b'\x01') xbee.send('at', command=b'SH', frame_id=b'\x01') xbee.send('at', command=b'SL', frame_id=b'\x01') xbee.send('at', command=b'MY', frame_id=b'\x01') print("") time.sleep(1) print("") while True: try: