Перепрошивка WiFi выключателей Sonoff

Основная часть автоматизации у меня построена на проводных устройствах и контроллерах, но бывает что не обойтись и без беспроводных устройств. Сегодня на операционный стол попал WiFi выключатель Sonoff от китайской компании ITEAD.

Внешний вид WiFi выключателя Sonoff
Внешний вид WiFi выключателя Sonoff

Выключатели Sonoff построены на базе WiFi модуля ESP8266.

 

По умолчанию выключатели запрограммированы на работу через облачный сервис, что упрощает их использование не посвященным в электронику и программирование покупателям. Я не сторонник управления через облачные сервисы и по этому я написал простенький код для управления выключателем Sonoff через MQTT сервер запущенный под IoBroker.

Код написан в среде Arduino IDE.

Разобрав выключатель Sonoff нужно припаять 5 контактную колодку для легкого подключения нашего «программатора» к плате, на фото ниже это контакты 3V3, RX, TX, GND и GPIO14, последний правда для прошивки нам не нужен, его можно использовать как порт ввода/вывода, подключив к нему например датчик температуры и влажности DHT22.

Обратите внимание что питание платы 3.3 вольта.

Распиновка выключателя Sonoff
Распиновка выключателя Sonoff

Для прошивки выключателя потребуется любой переходник USB — TTL, если такового  нет то можно использовать Arduino UNO например. Я использовал Arduino UNO, предварительно удалив микроконтроллер из колодки (можно попробовать не убирать микроконтроллер из Arduino а прошивать с постоянно зажатым Reset). В Arduino UNO так же имеется источник питания 3.3 вольта которого более чем достаточно для питания выключателя Sonoff.

ВНИМАНИЕ! Прошивать нужно при отключенном питании 220 В. Так как есть вероятность поражения электрическим током, а в случае с Sonoff POW вообще сгорит компьютер так как в этом выключателе отсутствует гальваническая развязка.

Для того что бы добавить в Arduno IDE платы типа ESP нужно в меню ФайлНастройки — в поле  Дополнительные ссылки для менеджера плат вставить ссылку http://arduino.esp8266.com/versions/2.3.0/package_esp8266com_index.json , после чего открыть Инструментыменеджер плат, найти в списке ESP8266… и нажать кнопку установить.

После установки дополнительных плат нужно выбрать из списка необходимую нам, смотрите скрин ниже:Теперь можно прошивать наш WiFi выключатель Sonoff подобно Arduino с одной оговоркой — для того чтобы ESP8266 на выключателе Sonoff вошла в режим загрузки кода, необходимо на нее подать питание с нажатой кнопкой Setting Switch и не отпуская эту кнопку нажать в программе Arduino IDE кнопку Загрузка и только после того как увидите в окне бегущий прогресс загрузки кода, кнопку на Sonoff можно отпустить.

Update

Добавил код  для прошивки Sonoff по воздуху через WiFi так называемый OTA.

OTA если быть точнее FOTA – Firmware Over The Air в переводе с английского «микропрограммы по воздуху» – это обновление системы (прошивки) Вашего устройства с помощью сети интернет.

Для этого необходимо залить эту прошивку первый раз по инструкции выше. Далее установить на компьютер Python 2.7.x https://www.python.org/downloads/ .При установке нужно включить опцию Add python.exe to Path.

Если все прошло гладко то в Arduino IDE в меню Инструменты — порт можно увидеть сетевые порты:

Подписаться
Уведомлять
guest

5 комментариев
Старые вначале
Новые вначале По голосам
Межтекстовые Отзывы
Посмотреть все комментарии
Игорь
Игорь
6 лет назад

Добрый вечер. Купил недавно выключатель Sonoff T1, он категорически не держит связь с wi fi, а после не подключается. Продавец меня проигнорировал, спор по срокам упустил. Можете мне что-нибудь посоветовать в плане перепрошивки?

Магомед
Магомед
6 лет назад
Ответить на  Игорь

Вроде они не дружать с wifi стандарта n и 5,4мГц

Яков
Яков
6 лет назад

Дружище, сделал все как в статье, все прошилось. Но дальше подключаю сонофф к сети и все, он не светится, в сети не появляется. Сто раз уже перепробовал ничего не пойму. Он не должен вообще светить светодиодом?

5
0
Поделиться своими мыслямиx