Используя библиотеку Python Xbee, я пытаюсь опросить данные, работающие с конечным устройством DHT Xbee Arduino, которое я настроил, отправляя данные о температуре.
Когда я пытаюсь получить эти данные, используя код ниже:
from digi.xbee.devices import XBeeDevice
#port = "/dev/ttyUSB0"
port = "com7"
rate = 9600
def main():
print("Starting XBee.....")
print("opening port....")
comms = XBeeDevice(port, rate)
try:
comms.open()
comms.flush_queues()
print("Waiting for data...\n")
while True:
xbee_message=comms.read_data()
if xbee_message is not None:
print("From %s >> %s" % (xbee_message.remote_device.get_64bit_addr(), xbee_message.data.decode()))
finally:
if comms is not None and comms.is_open():
comms.close()
if __name__ == '__main__':
main()"
enter code here
Я получаю следующую ошибку:
UnicodeDecodeError: 'utf-8' codec can't decode byte 0x9a in position 1: invalid start byte ```
Теперь, насколько я понимаю, данные .data.decode () может только декодировать Unicode-сообщения, однако я не уверен, как заставить его декодировать информацию из других источников.
, пожалуйста, помогите, если можете, и при необходимости я могу предоставить код для настройки Arduino.
Скопировать из комментария : Вот полный ответ какзапрос
Traceback (most recent call last):
File "C:/Users/Admin5/PycharmProjects/Rpi_sriptXBee/test script", line 30, in <module>
main()
File "C:/Users/Admin5/PycharmProjects/Rpi_sriptXBee/test script", line 22, in main
print("From %s >> %s" % (xbee_message.remote_device.get_64bit_addr(), xbee_message.data.decode()))
UnicodeDecodeError: 'utf-8' codec can't decode byte 0xcd in position 1: invalid continuation byte