![Raspberry pi устройство для умного дома Tuya Cloud](https://i0.wp.com/www.tm01.ru/wp-content/uploads/2023/02/tuya_raspberrypi18.jpg?fit=606%2C1000&ssl=1)
Создание устройство в iot.tuya.com
Первым делом нужно создать устройство в облаке tuya. Для этого переходим на сайт https://iot.tuya.com
И в первом же окне после того как залогинимся нажмем кнопку “Сreate” . Таким образом мы начнем создание нового устройства.
![](https://i0.wp.com/www.tm01.ru/wp-content/uploads/2023/02/tuya_raspberrypi4.jpg?resize=640%2C344&ssl=1)
После того как нажали кнопку “Create” у нас откроется следующая страница в которой нужно выбрать пункт “Can’t find the category?”
![](https://i0.wp.com/www.tm01.ru/wp-content/uploads/2023/02/tuya_raspberrypi5.jpg?resize=640%2C331&ssl=1)
И после этого откроется окно. В нем нужно будет дать название устройству, описание, Протокол работ и Тип работы. Под Raspberry pi выглядит следующим образом:
![](https://i0.wp.com/www.tm01.ru/wp-content/uploads/2023/02/tuya_raspberrypi6.jpg?resize=640%2C319&ssl=1)
После того как все опишем и нажмем кнопку “Create” у Нас откроется окно настройки устройства. Тут на вкладке “Function definition” нужно описать “Custom Functions” – это функции которые будет выполнять наше создаваемое устройство. В моем случае мы создаем реле. Чтоб создать кастомные функции нажмем кнопку “+ Add”. Выглядит окно вот так:
![](https://i0.wp.com/www.tm01.ru/wp-content/uploads/2023/02/tuya_raspberrypi7.jpg?resize=640%2C303&ssl=1)
Параметры для реле в Custom Functions где “DP Name” и “Indentifier” произвольные, выглядят следующим образом:
![](https://i0.wp.com/www.tm01.ru/wp-content/uploads/2023/02/tuya_raspberrypi8.jpg?resize=586%2C936&ssl=1)
После этого переходим во вкладку “Device Panel” и там нужно выбрать стиль отображения в приложении Tuya на смартфоне. Тут даже есть свой редактор в котором можете сделать уникальный интерфейс. Но я для пробы решил так не заморачиваться, а выбрал стандартный вариант. Так-же забыл сказать, что нам нужно сохранить PID созданного устройства. Данный пид можно найти в верху под названием нашего устройства. Все описанное в этом абзаце показано на этом скрине.
![](https://i0.wp.com/www.tm01.ru/wp-content/uploads/2023/02/tuya_raspberrypi8-1.jpg?resize=640%2C375&ssl=1)
Так-же здесь нужно нажать кнопку “Edit” и выбрать все так как показано на скрине:
![](https://i0.wp.com/www.tm01.ru/wp-content/uploads/2023/02/tuya_raspberrypi1.jpg?resize=640%2C352&ssl=1)
Параметра dht22 у Вас не будет, это я добавлял еще датчик температуры для пробы. Но в этой статье обойдемся без него.
Теперь переходим во вкладку “Hardware Development”. Здесь нужно проставить галочку на “Link SDK” там у Вас появится устройство “General CPU” и предложит Вам купить лицензию. Лицензия стоит 2$ для двух устройств на все время. Но изначально при создании аккаунта в iot.tuya.com дается 2 бесплатных лицензии так что в принципе у Вас может получиться создать девайс бесплатно. В общем тут нажимаем кнопку “Buy now” и оплачиваем лицензии за 0$.
![](https://i0.wp.com/www.tm01.ru/wp-content/uploads/2023/02/tuya_raspberrypi9.jpg?resize=640%2C368&ssl=1)
Процесс оплаты я скринить не буду, думаю справитесь. Если нет, то в видео в конце статьи я этот момент демонстрирую.
После оплаты подождав минут 5, так как сразу эта кнопка не появится. В графе Purchase->Purchase у нашей купленой лицензии появится кнопка “Download license List” – это экселевский файл с Uidом и ключем, он нам понадобится как и Pid для работы со скриптом Rascpberry pi.
![](https://i0.wp.com/www.tm01.ru/wp-content/uploads/2023/02/tuya_raspberrypi10.jpg?resize=640%2C285&ssl=1)
Ключ выглядит примерно так:
![](https://i0.wp.com/www.tm01.ru/wp-content/uploads/2023/02/tuya_raspberrypi11.jpg?resize=640%2C225&ssl=1)
На этом с tuya cloud закончено. Теперь переходим на Raspberry pi.
Настройка Raspberry pi.
На Raspberry pi у меня установлен обычный образ Raspbian ну или как он сейчас называется Raspberry pi OS.
Здесь чтоб постоянно не вводить перед командами слово “sudo” я авторизовался сразу под админом командой “sudo -i”
Ну а теперь делаем следующее:
git clone https://github.com/tuya/tuyaos-link-sdk-python.git
Эта команду скачает SDK для работы с облаком tuya и у Вас после окончания загрузки появится папка “tuyaos-link-python.git”
![](https://i0.wp.com/www.tm01.ru/wp-content/uploads/2023/02/tuya_raspberrypi12.jpg?resize=640%2C160&ssl=1)
Следующей командой мы установим скаченный ранее SDK. Выполняем команду:
python3 -m pip install ./tuyaos-link-sdk-python
![](https://i0.wp.com/www.tm01.ru/wp-content/uploads/2023/02/tuya_raspberrypi13.jpg?resize=640%2C291&ssl=1)
Теперь нам нужно отредактировать файл, который находится в tuyaos-link-python/examples/outlet.py Редактировать будем командой “nano” вводим:
nano tuyaos-link-python/examples/outlet.py
И откроется скрипт в котором нам нужно ввести PID, KEY и UID которые мы сохраняли ранее.
![](https://i0.wp.com/www.tm01.ru/wp-content/uploads/2023/02/tuya_raspberrypi14.jpg?resize=640%2C558&ssl=1)
Но это еще не все. Теперь нам нужно добавить несколько строк кода, чтоб мы могли управлять реле. Весь отредактированный мной Python скрипт будет выглядеть вот так:
import RPi.GPIO as GPIO
GPIO.setmode(GPIO.BCM)
GPIO.setwarnings(False)
led1= 19
GPIO.setup(led1,GPIO.OUT)
#!/usr/bin/env python
import time
import coloredlogs
from tuyalinksdk.client import TuyaClient
from tuyalinksdk.console_qrcode import qrcode_generate
coloredlogs.install(level='DEBUG')
client = TuyaClient(productid='ravzlzeihj521512vpioqh',
uuid='tuya660cbfe81b4cf32142412512523f',
authkey='1czFNXkms3tbY4gl3lp51661123414zTB5p7TW76')
def on_connected():
print('Connected.')
def on_qrcode(url):
qrcode_generate(url)
def on_reset(data):
print('Reset:', data)
def on_dps(dps):
print('DataPoints:', dps)
if(dps=={'101': True}):
GPIO.output(led1,GPIO.HIGH)
elif(dps=={'101': False}):
GPIO.output(led1,GPIO.LOW)
dps['102']=x
client.push_dps(dps)
client.on_connected = on_connected
client.on_qrcode = on_qrcode
client.on_reset = on_reset
client.on_dps = on_dps
client.connect()
client.loop_start()
while True:
time.sleep(1)
Все, далее сохраняем скрипт нажав Ctrl+X и нажав Y.
Теперь подключаем реле к GPIO19 Raspberry pi. Это вот этот пин:
![](https://i0.wp.com/www.tm01.ru/wp-content/uploads/2023/02/tuya_raspberrypi15.jpg?resize=640%2C662&ssl=1)
Далее запускаем скрипт командой:
python3 tuyaos-link-python/examples/outlet.py
У нас запустится скрипт и откроется QR code. Этот QR код нужен для того чтоб добавить устройство в приложение Tuya на смартфоне.
![](https://i0.wp.com/www.tm01.ru/wp-content/uploads/2023/02/tuya_raspberrypi16.jpg?resize=640%2C468&ssl=1)
Ну собственно на смартфоне сканируем QR код , произойдет добавление устройства:
![](https://i0.wp.com/www.tm01.ru/wp-content/uploads/2023/02/tuya_raspberrypi18.jpg?resize=606%2C1000&ssl=1)
![](https://i0.wp.com/www.tm01.ru/wp-content/uploads/2023/02/tuya_raspberrypi19.jpg?resize=606%2C944&ssl=1)
![](https://i0.wp.com/www.tm01.ru/wp-content/uploads/2023/02/tuya_raspberrypi20.jpg?resize=610%2C956&ssl=1)
![](https://i0.wp.com/www.tm01.ru/wp-content/uploads/2023/02/tuya_raspberrypi21.jpg?resize=606%2C643&ssl=1)
Ну вот и все. Мы успешно добавили raspberry pi в tuya cloud и можем управлять малинкой из смартфона.
Также мы можем использовать малинку в сценариях и автоматизациях Tuya. Но к сожалению, в Home Assistant устройство появляется, но никаких объектов оно не имеет.