Статья

Прошивка сенсорного выключателя MiniTiger под HomeKit

Предисловие

Это статья является продолжением статьи про прошивку Sonoff Basic и продолжает знакомить читателей с возможность HAA и вариантами ее  настройки для добавления в систему умного дома Apple, под названием HomeKit

Подготовка

Скачиваем все необходимые файлы, для удобства одним архивом. Я буду использовать "безнулевой" двухклавишный выключатель MiniTiger  (аналог Sonoff T2 EU). Обязательное условие, чтобы этот выключатель корректно работал - это поставить параллельно нагрузке (лампочке) тот самый конденсатор, который был в комплекте.

Подключение

Отключаем плату от реле, согласно ниже приведенной схеме (спасибо автору статьи) подключаем TTL конвертер 3.3 к 3.3, TX к RX, RX к TX, GND-GND и так как на выключателе нет отдельной системной кнопки (точнее ее функцию выполняет левая сенсорная клавиша), то удобнее припаять к GPIO 0 провод и подкинуть его на GND для перевода платы в режим прошивки. Далее подключаем  TTL к компьютеру.

Установка прошивки OTA. 

Запускаем программу, выбираем версию в зависимости от версии ESP чипа на устройстве (8285 или 8266) и выставляем все, как на скрине.  Далее все, как и в прошлой статье: ERASE, отключаем и заново подключаем TTL к компьютеру, жмем FLASH и ждем FINISH, отключаем TTL от компьютера.

Установка прошивки HAA

Все действия мы будем делать, не подключая плату с ESP к плате выключателя, а продолжаем с TTL – отключаем TX и RX и обязательно отключаем GPIO 0 от GND, подключаем TTL к компьютеру.

Подключаемся к точке доступа TLC-….., переходим на страницу настройки OTA.  Указываем путь репозитория RavenSystem/haa, выбираем свою домашнюю точку доступа и указываем пароль, жмем JOIN, реле перезагружается и ждем 5-7 минут, пока скачается и установится HAA

Настройка HAA

Идем на сайт конфигуратора JSON и выбираем Sonoff T2 EU 3gangs, настраиваем в зависимости от количества клавиш. Если у вас 3 клавиши, тогда оставляем все как есть, идем вниз сайта, жмем кнопку на скриншоте для того, чтобы код приобрел более удобный вид.

Если у вас выключатель с 2 клавишами, то удаляем последний блок нажатием Remove Accessory, если 1 клавиша - то 2 последних блока, и сразу видим, как автоматом меняется код.

Копируем нужный код и вставляем его в поле JSON Config на веб странице настройки HAA, сохраняем и устройство перезагружается.Если вы что-то сделали не правильно - это не страшно, так как для того, чтобы веб страница настройки HAA стала активна, просто необходимо перевести устройство в режим настройки 8-кратным нажатием кнопки (в нашем случае - левый сенсор).

У меня для  двухклавишного выключателя получился следующий код:

{"c":{"l":13,"b":[{"g":0,"t":5}]},"a":[{"0":{"r":[{"g":12}]},"1":{"r":[{"g":12,"v":1}]},"b":[{"g":0}],"s":0},{"0":{"r":[{"g":5}]},"1":{"r":[{"g":5,"v":1}]},"b":[{"g":9}],"s":0}]}

Добавление устройства в Home Kit

Все шаги проделываем так же, как и в прошлой статье.

P.S.

Огромный плюс прошивки HAA в том, что изменив код JSON, вы можете менять функционал устройства. Допустим, можно любое реле с кнопкой добавить в систему HomeKit как отдельный выключатель и отдельную кнопку. Преимущество кнопки заключается в том, что на ее различные нажатия (одиночное, двойное или долгое) можно привязать три отдельных действия. 

Мой пример: одиночное нажатие левой клавиши отвечает за вкл/выкл левого реле, к которому у меня подключена люстра; долгое нажатие левой клавиши – вкл/выкл правого реле, к которому подключены споты;  а правую клавишу я настроил как кнопку и прокинул в HomeKit. Уже через HomeKit настроил так, что короткое нажатие правой клавиши – включает сценарий «просмотр кино», долгое нажатие правой клавиши – запуск сценария «выключить все в гостиной» (сразу оговорюсь, что мой сенсорный выключатель плохо отрабатывал двойные нажатия, поэтому я их исключил).

Код JSON, который у меня получился:

{"c":{"l":13,"b":[{"g":0,"t":5}],"i":1,"n":"switch living room"},"a":[{"0":{"r":[{"g":12}]},"1":{"r":[{"g":12,"v":1}]},"b":[{"g":0,"i":0}],"s":0},{"0":{"r":[{"g":5}]},"1":{"r":[{"g":5,"v":1}]},"b":[{"g":0,"t":3}],"s":0},{"t":3,"b":[],"s":0,"f0":[{"g":9,"t":1}],"f1":[{"g":9,"t":2}],"f2":[{"g":9,"t":3}]}]}


Вы фильтрацию кнопок не делали?
У меня на Сонофф Т1 старой версии (который с нейтралью) при прошивке RC периодически свет сам фключался. Перевел его на HAA и ввел там фильтрацию кнопок - самовключения пропали.
На 4пда и ГитХабе по поводу самовключения много вопросов. На Гите народ менял емкости и чего-то еще паял.

Нет не делал, ложных срабатываний не замечено, правда можно "подвесить" плату с сенсорами если быстро включать по очередно и выключать раз 20 - думаю это из за того что питания не хватает учитывая что он без земли, лечится в щитке обесточиванием.  

У меня после прошивки тоже начал сам включаться/выключаться. Долгим нажатием на левую кнопку сделал сброс, сбросил Homekit ID, добавил заново, вроде пропали фантомные сработки. Продолжаю наблюдение.

Мой выключатель кстати в режим настройки вводился правой кнопкой, а не левой, как указано в статье.

Пока учился паять, убил 2 выключателя :(

С помощью конфигуратора собрал sonoff с датчиком DHT22 температура завышает +3 градуса, влажность на 15 процентов.


В конфигураторе есть функция корректировки но только почему от 0 в плюс можно добавить корректировку.

В самом скетче находим параметр h и z ставим - к значению.

Если меняем устройство на другое ставим галочку сбросить ID 

У меня устройство не появлялась пока я не выбрал в списке свою точку доступа и ввёл пароль.



Алексей, подскажите, пожалуйста, как сделать подсветку кнопок синим светодиодом в выключенном состоянии, как это было до перепрошивки?

И что нужно выбирать в JSON-конфигураторе для 1-кнопочного выключателя, чтобы коротким нажатием было обычное включение/выключение, а на длительное нажатие сделать кнопку в Homekit? Хочу в коридоре длительным нажатием выключать весь свет в доме или ставить дом на охрану. 

{"c":{"l":13,"b":[{"g":0,"t":5}],"i":0,"n":"switch"},"a":[{"0":{"r":[{"g":12}]},"1":{"r":[{"g":12,"v":1}]},"b":[{"g":0,"i":0}],"s":0},{"0":{"r":[{"g":5}]},"1":{"r":[{"g":5,"v":1}]},"b":[{"g":0,"t":3,"i":0}],"s":0},{"t":3,"b":[],"s":0,"f0":[{"g":9,"t":1,"i":0}],"f1":[{"g":9,"t":2,"i":0,"p":0}],"f2":[{"g":9,"t":3,"i":0}]}]} - это код с корректно работающей подстветкой, тоже немного помучался но все работает. 

{"c":{"l":13,"b":[{"g":0,"t":5}],"i":0,"n":"switch"},"a":[{"0":{"r":[{"g":12}]},"1":{"r":[{"g":12,"v":1}]},"b":[{"g":0,"i":0}],"s":0},{"t":3,"b":[],"s":0,"f0":[],"f1":[],"f2":[{"g":0,"t":3,"i":0}]}]}

это код на 1 клавишный выключатель, в котором долгое нажатие прокинуто отдельной кнопкой в HK

Спасибо. С кнопкой в Homekit уже разобрался, вроде работает.

Что выбираете в конфигураторе, чтобы работала подсветка в выключенном состоянии?

Нужно убрать инверсию Led на 13 GPOI

В шапке конфигуратора инверсия GPIO 13 по умолчанию отключена в шаблоне. Можете расписать подробнее?

А почему все шьют тремя файлами, а не одним? Почему бы не прошить по инструкции HAA https://github.com/RavenSystem/esp-homekit-devices/wiki/Installation">https://github.com/RavenSystem/esp-homekit-devices/wiki/Installation
Прошил Sonoff 4CH как по инструкции в HAA, к одной точке зацепился, а к любой другой уже не подключается. Так и задумано?

У меня выключатель Esooli https://m.aliexpress.ru/item/4001027277018.html?_s_t=1597505472665">Ссылка на прошивке Tuya smart, плата 2PH105626A 


Я его прошил на home kit по этой инструкции https://m.youtube.com/watch?v=dzb-L-tFE-M">https://m.youtube.com/watch?v=...


Ни один другой метод прошивки не подошел от платы Mini Tiger сильно отличается и распиновка другая


https://sprut.ai/static/media/cache/00/61/91/5/4724973/64590/1000x_image.jpeg?1597561892" alt="1000x_image.jpeg?1597561892" />
https://sprut.ai/static/media/cache/00/61/91/5/4724973/64589/1000x_image.jpeg?1597561854" alt="1000x_image.jpeg?1597561854" />

Припаял провода вот так


https://sprut.ai/static/media/cache/00/61/91/5/4724973/64600/1000x_image.jpeg?1597586270" alt="1000x_image.jpeg?1597586270" />

Как здесь написано пробывал замыкать и размыкать gpn и gpio0, но прошивка не шла, тогда я припаял gpn и gpio0 и оставил так, как будто кнопка нажата на все время прошивки.


По окончании прошивки появилась wifi сеть HAA, а далее все как в вашей инструкции.


Чтоб синяя подсветка работала в выключенном состоянии используйте этот 


Json



{"c": {"b": [{"g": 5, "t": 5}]}, "a": [{"0": {"r": [{ "g": 12},{ "g": 1,"v":0}]}, "1": {"r": [{"g": 12, "v": 1},{ "g": 1,"v":1}]}, "b": [{"g": 5}]}] }


Если кто будет шить выключатель Esooli, отпишитесь как прошился.



 сделал все как в видео, который вы выложили в описани и конфиг json ваш же пробовал... ничего не получается(((прошивается успешно, конфиг json открывает и свою сеть wifi указываю, но после этого ничего не происходит....где копать? может, я что-то пропустил???подскажите пожалуйста



А что конкретно не работает, попробуйте скачать версию fullhaaboot.bin с гитхаба, сейчас версия 3.5.1 актуальная.


Шить еще можно через программу Nodemcu, а еще надо хоррший usb ttl купить и провода нормальные, если контакт плохой, может как будто прошиться, а wifi сеть не поднимает, сам столкнулся с такой проблемой, что на чипе cr340 шились одни sonoff, а другие только cp2101. Лучше купить несколько разных usb ttl. Обновил json файл, 
{"c": {"b": [{"g": 5, "t": 5}]}, "a": [{"0": {"r": [{ "g": 12},{ "g": 1,"v":0}]}, "1": {"r": [{"g": 12, "v": 1},{ "g": 1,"v":1}]}, "b": [{"g": 5}]}] }


Прошил второй, выключатель, esooli. Все работает.


На али появились выключатели с поддержкой homekit, для тех кто не хочет заморачиваться https://a.aliexpress.com/_mKHUver">Homekit



Комментарий удален

С помощью твоего описания все получилось. Но никак не найду в конфигураторе как ты добился этого конфига
{"c": {"b": [{"g": 5, "t": 5}]}, "a": [{"0": {"r": [{ "g": 12},{ "g": 1,"v":0}]}, "1": {"r": [{"g": 12, "v": 1},{ "g": 1,"v":1}]}, "b": [{"g": 5}]}] }
хочу в данный конфиг виртуальную кнопку добавить


Одноклавишный + виртуальная кнопка 


{"c":{"l":13,"b":[{"g":0,"t":5}],"i":0,"n":"switch"},"a":[{"0":{"r":[{"g":12}]},"1":{"r":[{"g":12,"v":1}]},"b":[{"g":0,"i":0}],"s":0},{"t":3,"b":[],"s":0,"f0":[],"f1":[],"f2":[{"g":0,"t":3,"i":0}]}]}

не получается прошить такой же выключатель((


вроде и пины правильные (питание без вопросов), на 5й пин (reset) тоже реагирует. пробовал и TX-RX местами менять и GPIO0 включать при подаче питания и постоянно. при GPIO0 к земле статусный диод быстро моргает и не включается, как обычном режиме. т.е. вроде правильно, но не шьется и не читается. кабели менял, отдельно питание подключал. wtf?

Получил два новых выключателя minitiger (1кл.+2кл.). Пробовал считывать прошивку и прошивать через адаптер FT232RL. Ничего не получалось, хотя чип esp8285 команды flash_id и chip_id отрабатывал. Проблема решилась заменой адаптера на PL-2303HX.
Новые выключатели отлично прошиваются программой WriteFlash_ESP82XX.

Прошил такой выключатель с первого раза, только json не верным оказался для 3-Х клавирного выключателя. Помогите найти. 

такой же выключатель

Недавно пришло 7 новых выключателей Mini Tiger новой ревизии на базе реле. 6 из них прошил без проблем, с седьмым (3-клавишным) возникла проблема. Вроде нормально прошился, в эфире появляется сеть HAA, но к ней не удается подключиться. Пробовал перешивать, тоже самое. Никто не сталкивался?

Подскажите код для 3/х клавишного выключателя !!! 


Вернуться назад

Устройства


Вернуться назад