Инструкция по программированию SonOff Touch

Использование системы в различных ситуациях, вопросы программирования сценариев.

Модераторы: Bagir, Ivan, Vit, immortal, PAV

workpage
Сообщения: 114
Зарегистрирован: Чт авг 24, 2017 9:38 am
Благодарил (а): 27 раз
Поблагодарили: 40 раз
Контактная информация:

Инструкция по программированию SonOff Touch

Сообщение workpage » Вс дек 17, 2017 10:22 am

Поскольку нигде не нашёл сводной информации по программированию этих чудесных выключателей
СпойлерПоказать
photo.jpg
photo.jpg (1.61 МБ) 2989 просмотров
, решил запилить этот пост. (Платные прошивки не в счёт). Далее будет инструкция по программированию 1,2 и 3х клавишных выключателей для работы с Majordomo.
Для начала нужно разобрать выключатель. Для этого плоской отвёрткой поддеваем хвостик
СпойлерПоказать
photo(1).jpg
photo(1).jpg (1.64 МБ) 2989 просмотров
и снимаем верхнюю крышку. Должно получиться вот так:
СпойлерПоказать
photo (1).jpg
photo (1).jpg (445.11 КБ) 2988 просмотров
Последний раз редактировалось workpage Вс дек 24, 2017 11:02 am, всего редактировалось 5 раз.
За это сообщение автора workpage поблагодарили (всего 8):
serghei (Вс дек 17, 2017 10:40 am) • Denis_k (Вс дек 17, 2017 12:02 pm) • astotskiy (Вс дек 17, 2017 1:37 pm) • VooDooN (Пн дек 18, 2017 8:33 am) • TrDA (Вт фев 13, 2018 5:22 pm) • AlexL (Сб фев 24, 2018 7:39 am) • Mavric (Пт мар 16, 2018 1:02 pm) • Stasev (Ср апр 11, 2018 6:33 pm)
Рейтинг: 13.33%
"Спасибо" можно отправлять на сберовскую карту 4817 7600 9349 2886
workpage
Сообщения: 114
Зарегистрирован: Чт авг 24, 2017 9:38 am
Благодарил (а): 27 раз
Поблагодарили: 40 раз
Контактная информация:

Re: Инструкция по программированию SonOff touch

Сообщение workpage » Вс дек 17, 2017 10:29 am

Далее снимаем верхнюю плату. С одной стороны она держится на двухстороннем скотче, с другой на разъёме. Должно получиться вот так.
СпойлерПоказать
photo (2).jpg
photo (2).jpg (532.44 КБ) 2988 просмотров
Последний раз редактировалось workpage Вс дек 17, 2017 11:35 am, всего редактировалось 1 раз.
За это сообщение автора workpage поблагодарили (всего 2):
astotskiy (Вс дек 17, 2017 1:38 pm) • TrDA (Вт фев 13, 2018 5:22 pm)
Рейтинг: 3.33%
"Спасибо" можно отправлять на сберовскую карту 4817 7600 9349 2886
workpage
Сообщения: 114
Зарегистрирован: Чт авг 24, 2017 9:38 am
Благодарил (а): 27 раз
Поблагодарили: 40 раз
Контактная информация:

Re: Инструкция по программированию SonOff touch

Сообщение workpage » Вс дек 17, 2017 10:38 am

Далее нам понадобится конвертор USB-TTL. Подойдёт практически любой. Главное, что бы он умел работать с напряжением 3.3в.
ВАЖНО!!!
Если конвертор не перевести в режим 3.3В, вы можете повредить свой выключатель!!!
Мой конвертор переводится путём запаивания соответствующей перемычки. По умолчанию, перемычку 5в замыкает тонкая дорожка. Её надо перерезать.
СпойлерПоказать
IMG_20171128_095607.jpg
IMG_20171128_095607.jpg (1.22 МБ) 2986 просмотров
Настоятельно рекомендую перед подключением проверить тестером напряжение между vcc и gnd. Должно быть 3.3в
Последний раз редактировалось workpage Вс дек 17, 2017 2:03 pm, всего редактировалось 2 раза.
За это сообщение автора workpage поблагодарили (всего 3):
astotskiy (Вс дек 17, 2017 1:38 pm) • TrDA (Вт фев 13, 2018 5:22 pm) • AlexL (Сб фев 24, 2018 7:40 am)
Рейтинг: 5%
"Спасибо" можно отправлять на сберовскую карту 4817 7600 9349 2886
workpage
Сообщения: 114
Зарегистрирован: Чт авг 24, 2017 9:38 am
Благодарил (а): 27 раз
Поблагодарили: 40 раз
Контактная информация:

Re: Инструкция по программированию SonOff touch

Сообщение workpage » Вс дек 17, 2017 10:47 am

Далее понадобится 4 провода для соединения конвертора и выключателя.
ВНИМАНИЕ!!!
Ни в коем случае не подключайте выключатель к сети 220!!! Вы повредите выключатель и компьютер!!!
Во время программирования выключатель берёт питание от конвертора и не требует подключениея к электросети!
СпойлерПоказать
prog_pinouts.jpg
prog_pinouts.jpg (230.36 КБ) 2980 просмотров
Соединяем провода следующим образом:
3.3В на выключателе - VCC конвертора
RX на выключателе - TX на конверторе
TX на выключателе - RX на конверторе
GND на выключателе - GND на конверторе

Для перевод чипа в выключателе в режим программирования, необходимо запаять перемычку GPIO 0 на GND. Я использовал провод с разъёмом на конце.
СпойлерПоказать
IMG_20171128_100011.jpg
IMG_20171128_100011.jpg (1.03 МБ) 2980 просмотров
Для 2-3 клавишных ситуация немного другая.
СпойлерПоказать
IMG_20171216_162653.jpg
IMG_20171216_162653.jpg (1.08 МБ) 2955 просмотров
на выключателе:
оранжевый 3.3в
зелёный RX
бело/зелёный (следующий) TX
бело/оранжевый (следующий) GND
Коричневая перемычка - GPIO 0. Запаять как на фото.

Недавно появились новые платы. GPIO0 смотрите на фото ниже.
СпойлерПоказать
new.jpg
new.jpg (483.28 КБ) 1460 просмотров
Последний раз редактировалось workpage Сб фев 17, 2018 12:13 pm, всего редактировалось 3 раза.
За это сообщение автора workpage поблагодарили (всего 4):
Denis_k (Вс дек 17, 2017 12:02 pm) • astotskiy (Вс дек 17, 2017 1:40 pm) • VladPTZ (Пт янв 19, 2018 12:21 pm) • TrDA (Вт фев 13, 2018 5:22 pm)
Рейтинг: 6.67%
"Спасибо" можно отправлять на сберовскую карту 4817 7600 9349 2886
workpage
Сообщения: 114
Зарегистрирован: Чт авг 24, 2017 9:38 am
Благодарил (а): 27 раз
Поблагодарили: 40 раз
Контактная информация:

Re: Инструкция по программированию SonOff touch

Сообщение workpage » Вс дек 17, 2017 11:09 am

С железом всё. Дальше перейдём к программной части.
Качаем питона ВЕРСИИ 2.х.х (НЕ 3!) отсюда https://www.python.org/downloads/. Устанавливаем. В настройках установки обязательно включить все пункты!!!
Нам понадобится arduino. Качаем отсюда: https://www.arduino.cc/en/Main/Donate Нажать Just Download
После установки надо зайти в Файл -> настройки -> Дополнительные ссылки для менеджера плат. Добавить строку http://arduino.esp8266.com/stable/packa ... index.json Нажать ОК.
p.s. Откройте строку в браузере. Форум режет ссылки.
Затем Инструменты -> плата -> менеджер плат. В строку поиска написать esp8266 . Выбрать версию 2.3.0. Нажать установить.
Затем скетч -> подключить библиотеку -> управлять библиотеками . В строку поиска вбить pubsubclient . Установить pubsubclient.
Затем инструменты -> плата -> Generic 8285 module.
Затем инструменты -> CPU frequncy 80Mhz
Затем инструменты -> Flash size 1M 64k SPIFFS
Затем инструменты -> Порт и запоминаем, что там у нас есть.
Затем подключаем TTL конвертор к компьютеру. Должен появиться ещё один порт (инструменты -> Порт). Если порт не появился, значит у вас не установлены драйвера для TTL конвертора. Установите драйвера.
Последний раз редактировалось workpage Сб май 05, 2018 8:20 pm, всего редактировалось 6 раз.
За это сообщение автора workpage поблагодарили (всего 3):
astotskiy (Вс дек 17, 2017 1:41 pm) • TrDA (Вт фев 13, 2018 5:22 pm) • AlexL (Сб фев 24, 2018 7:40 am)
Рейтинг: 5%
"Спасибо" можно отправлять на сберовскую карту 4817 7600 9349 2886
workpage
Сообщения: 114
Зарегистрирован: Чт авг 24, 2017 9:38 am
Благодарил (а): 27 раз
Поблагодарили: 40 раз
Контактная информация:

Re: Инструкция по программированию SonOff touch

Сообщение workpage » Вс дек 17, 2017 11:29 am

Затем качаем прошивку для 1кл. выключателя или для 2-3 кл.
СпойлерПоказать
sonofftouch.zip
Прошивки
(4.2 КБ) 82 скачивания
Обновлённая прошивка с регулировкой яркости светодиода на выключателе.
СпойлерПоказать
sonoff_v2.zip
(5.05 КБ) 41 скачивание
Если залить в одноклавишный прошивку от 2-3 клавишного тоже всё будет работать, но во избежании глюков лучше заливать правильную.
В прошивку необходимо забить данные вашего WIFI подключения. Имя сети и пароль. 17 и 18 строка программы.
IP адрес, маску шлюз 24-26 строка.
IP адрес MQTT сервера 29 строка
логин/пароль MQTT. Если пароля нет, в кавычках ничего не должно быть. 14,15 строка.
Название топика MQTT (фактически название выключателя) 13 строка.
Затем нажать на кнопку наверху со стрелочкой вправо (Загрузка).

Выключатель будет работать, даже если нет подключения к wifi или mqtt. Обработка нажатий идёт с помощью прерываний и не зависит от внешних факторов.
Прошивка поддерживает обновление по воздуху. Если надо что-то поменять, можно не вынимать выключатель из стены, а прошить его удалённо. Для этого в ардуино надо выбрать инструменты-> порт . И вместо COM порта выбрать выключатель, который необходимо запрограммировать.

MQTT

При нажатии на клавишу, выключатель формирует MQTT пакет вида status/podval/light и сообщение 1 или 0. Думаю тут всё предельно ясно.
Для удалённого управления выключателем надо послать MQTT пакет вида cmnd/podval/light и сообщение 1 или 0. Можно on или off. Кому как нравится.

В случае с 2-3 клавишными, пакет будет вида
status/podval/light1
status/podval/light2
или
status/podval/light3

С управлением то же самое:
cmnd/podval/light1
cmnd/podval/light2
cmnd/podval/light3

Регулировка яркости светодиода: (Только для новой прошивки)
cmnd/podval/brightness и сообщение, цифра от 0 до 100 (значение яркости в %)

p.s. Значение "podval" , это название выключателя. Меняем на своё. )
Не забываем ставить лайк)
Update: Кстати на следующей странице есть прошивка для управления вентилятором. Пользуйтесь.
Update2: На 5 станице есть прошивка, в которой в т.ч. можно управлять яркостью информационного светодиода. (Актуально в ночное время)
Последний раз редактировалось workpage Вс мар 04, 2018 3:23 pm, всего редактировалось 17 раз.
За это сообщение автора workpage поблагодарили (всего 4):
astotskiy (Вс дек 17, 2017 1:41 pm) • TrDA (Вс янв 14, 2018 1:58 pm) • odinvolk (Вт янв 16, 2018 10:28 am) • markovrv (Вт май 15, 2018 2:06 pm)
Рейтинг: 6.67%
"Спасибо" можно отправлять на сберовскую карту 4817 7600 9349 2886
serghei
Сообщения: 1900
Зарегистрирован: Пт ноя 06, 2015 10:22 am
Откуда: Кишинёв
Благодарил (а): 237 раз
Поблагодарили: 183 раза

Re: Инструкция по программированию SonOff Touch

Сообщение serghei » Вс дек 17, 2017 2:17 pm

Очень подробная инструкция! Спасибо!
От использования подобных девайсов останавливало отсутствие подробных мануалов. В дальнейшем все выкладки можете дублировать в первом сообщении , что бы не искать по форуму.
За это сообщение автора serghei поблагодарил:
TrDA (Вт фев 13, 2018 5:22 pm)
Рейтинг: 1.67%
AMS : ESP32 + NRF24 + 1Wire-I2C мост DS2482 + счетчик DS2423 + сеть MySensors
Берендей
Сообщения: 106
Зарегистрирован: Ср окт 18, 2017 9:44 am
Благодарил (а): 24 раза
Поблагодарили: 17 раз

Re: Инструкция по программированию SonOff Touch

Сообщение Берендей » Вс дек 17, 2017 11:17 pm

Питался бы SonOff Touch без ноля, цены бы ему не было :(
OrangePI PC/ARMBIAN 5.36 + DS3231+433Mhz. Esp8266(ArduinoIDE). Arduino MEGA2560 + Oregon THGN132N.
Sonoff RF Bridge + sensors
Аватара пользователя
nick7zmail
Сообщения: 5032
Зарегистрирован: Пн окт 28, 2013 8:14 am
Откуда: Екатеринбург
Благодарил (а): 104 раза
Поблагодарили: 1152 раза

Re: Инструкция по программированию SonOff Touch

Сообщение nick7zmail » Пн дек 18, 2017 6:05 am

Да не хватает паразитного питания на устройства с обратной связью...они раза в 4 больше ток требуют.
Raspberry Pi3 + Broadlink + esp8266 (blynk) + Arduino Mega (AMS)
Уважаемые пользователи! Если вам помогло какое-либо сообщение - не забывайте пользоваться кнопкой "СПАСИБО".
:arrow: Помощь пользователям | Создание сцен
Аватара пользователя
VooDooN
Сообщения: 263
Зарегистрирован: Сб июн 11, 2016 12:02 am
Благодарил (а): 102 раза
Поблагодарили: 42 раза

Re: Инструкция по программированию SonOff Touch

Сообщение VooDooN » Пн дек 18, 2017 8:46 am

К слову, еще есть возможность прошивать Sonoff-устройства без паяльника. Называется SonOTA. Интересно, с Sonoff Touch прокатит ли: https://github.com/mirko/SonOTA
Ответить