我想使用Digi XStick2 ZB
作爲一個ZigBee傳感器和執行器(溫度和溼度,接觸傳感器,漏水,電源插頭等)的ZigBee控制器(通過USB連接,並作爲串行接口在/dev/ttyUSB0
上可見) 。換句話說,我正在尋找配置網狀網絡並與傳感器/執行器進行通信的方式。通過xbee.send()發送的命令的協議是什麼?
我發現python xbee並寫了一個簡單的Python腳本的USB記憶棒進行通信:
#!/usr/bin/python
import serial
import time
from xbee import ZigBee
def print_data(data):
print "Data received:", data
serial_port=serial.Serial('/dev/ttyUSB0', 9600)
zbee = ZigBee(serial_port, callback=print_data)
print "Sending some command"
zbee.send("at", frame='A', command='MY', parameter=None)
print "Waiting..."
while True:
try:
time.sleep(0.001)
except KeyboardInterrupt:
break
zbee.halt()
serial_port.close()
它的工作原理,我得到我的命令的一些反應:
$ ./test.py
Sending some command
Waiting...
Data received: {'status': '\x00', 'frame_id': '\x01', 'parameter': '\x00\x00', 'command': 'MY', 'id': 'at_response'}
但我可以」 t找到關於使用的協議的任何內容(即,我可以發送的消息的內容) - 是否有一些我可以使用的命令參考或協議定義?
另外,有沒有一種更簡單的方法(更高級別的庫?)通過USB棒控制傳感器?