Как упоминали Гейб и Колбан, в примерах из руководств сообщества есть много сложностей, которые могут затруднить понимание того, где что-то ломается для вас. Я рекомендую начать с примеров, доступных здесь , для начала.
В примере, который вы запускаете, сервер шлюза должен быть запущен до запуска кода термостата или светодиодной подсветки.
Кроме того, в коде Raspberry Pi без датчика DHT-22, подключенного к Raspberry Pi, вы не дойдете до кода, где снимаются показания. Если вы ищете версию, которая не требует оборудования, версия python -docs-samples светодиодов и термостата имитирует оборудования. Я убедился, что инструкции работают как минимум для светодиодной части демонстрации (мне удалось включить / выключить светодиодную подсветку).
Наконец, может быть ошибка в таблице для исходного кода в строке 51 thermostat.py
, которая вызывает некоторые проблемы в протоколе UDP. Я обновлю статью, если смогу убедиться, что это вызывает у меня икоту, но если вы хотите исправить свою копию до ее повторной публикации, установите код следующим образом:
# Receive response
if log:
print('waiting for response', file=sys.stderr)
response, _ = sock.recvfrom(4096)
if log:
print('received: "{}"'.format(response), file=sys.stderr)