コード例 #1
0
def main():

    print(" +------------+")
    print(" | Reset Test |")
    print(" +------------+\n")

    device = XBeeDevice(PORT, BAUD_RATE)

    try:
        device.open()

        def modem_status_callback(status):
            if status == ModemStatus.COORDINATOR_STARTED:
                return
            assert (status in [ModemStatus.HARDWARE_RESET, ModemStatus.WATCHDOG_TIMER_RESET])

        device.add_modem_status_received_callback(modem_status_callback)

        for i in range(10):
            device.reset()
            time.sleep(1)

        print("Test finished successfully")

    finally:
        if device is not None and device.is_open():
            device.close()
コード例 #2
0
def initXBee(port, baud):
    global CONTROLLER_ADDR
    print("Init XBee at {0}, {1:d}".format(port, baud))
    #device = ZigBeeDevice(port, baud)
    device = XBeeDevice(port, baud)
    device.open()
    device.add_modem_status_received_callback(xbee_status_callback)
    device.add_data_received_callback(xbee_received_callback)
    xnet = device.get_network()
    xnet.set_discovery_timeout(5)
    xnet.start_discovery_process()
    while xnet.is_discovery_running():
        time.sleep(0.5)
    controller16Addr = XBee16BitAddress.COORDINATOR_ADDRESS
    remote_device = xnet.get_device_by_16(controller16Addr)
    if remote_device is None:
        print("Could not find the remote device {0}".format(controller16Addr))
    print("init, nodeId= {0}".format(device.get_node_id()))
    return device, remote_device
コード例 #3
0
def main():
    print(" +-------------------------------------------------+")
    print(" | XBee Python Library Receive Modem Status Sample |")
    print(" +-------------------------------------------------+\n")

    device = XBeeDevice(PORT, BAUD_RATE)

    try:
        device.open()

        def modem_status_receive_callback(modem_status):
            print("Modem Status event received: %s: %s" % (utils.hex_to_string(utils.int_to_bytes(modem_status.code,
                                                                                                  1)),
                                                           modem_status.description))

        device.add_modem_status_received_callback(modem_status_receive_callback)

        print("Waiting for Modem Status events...\n")
        input()

    finally:
        if device is not None and device.is_open():
            device.close()