Оглавление:

Аппаратный и программный взлом смарт-устройств, LEDbulb Tuya и Broadlink, Sonoff, BSD33 Smart Plug: 7 шагов
Аппаратный и программный взлом смарт-устройств, LEDbulb Tuya и Broadlink, Sonoff, BSD33 Smart Plug: 7 шагов

Видео: Аппаратный и программный взлом смарт-устройств, LEDbulb Tuya и Broadlink, Sonoff, BSD33 Smart Plug: 7 шагов

Видео: Аппаратный и программный взлом смарт-устройств, LEDbulb Tuya и Broadlink, Sonoff, BSD33 Smart Plug: 7 шагов
Видео: Zigbee шлюз для Tuya Smart c поддержкой Apple Homekit и Google Home 2024, Июль
Anonim
Аппаратный и программный взлом смарт-устройств, LEDbulb Tuya и Broadlink, Sonoff, BSD33 Smart Plug
Аппаратный и программный взлом смарт-устройств, LEDbulb Tuya и Broadlink, Sonoff, BSD33 Smart Plug

В этом руководстве я покажу вам, как я прошил несколько интеллектуальных устройств своей собственной прошивкой, чтобы я мог управлять ими с помощью MQTT через мою настройку Openhab.

Я буду добавлять новые устройства, когда буду их взламывать.

Конечно, есть и другие программные методы для прошивки кастомных прошивок, такие как Tuya convert, но мне нравится понимать, как работает устройство и что находится «под капотом».

Код написан и прошит с использованием Arduino IDE.

Я управляю своими устройствами через Openhab и Google Home (через Openhab), если вы хотите узнать больше или вам нужен файл.items и т. Д., Дайте мне знать в комментариях.

Безопасность прежде всего

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

Если у вас есть сомнения в безопасности устройства после модификации, пожалуйста, выбросьте его.

Запасы

Для большинства хаков вам понадобится программатор FDTI, подключенный к компьютеру с Arduino IDE, несколько перемычек, паяльник, некоторые резисторы и модули ESP8266 или ESP8285.

Шаг 1: Умная светодиодная лампа Tuya RGBW

Умная светодиодная лампа Tuya LED RGBW
Умная светодиодная лампа Tuya LED RGBW
Умная светодиодная лампа Tuya LED RGBW
Умная светодиодная лампа Tuya LED RGBW
Умная светодиодная лампа Tuya LED RGBW
Умная светодиодная лампа Tuya LED RGBW

вступление

Купил эту лампу на Алиэкспресс. Он отлично работает с приложением Smart Life, но я хотел управлять им через MQTT из Openhab. Я уже сделал свою прошивку для Sonoff B1, поэтому я попытался прошить эту лампу этой прошивкой.

Мигает

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

Необходимые соединения отображаются через небольшие контактные площадки на печатной плате (3v3, GND, RX, TX и IO0 (GPIO0)).

Сначала я припаял контактные площадки и припаял к проводам, а затем спаял их вместе. Я использовал обвязку и немного горячего клея, чтобы прикрепить провода к лампе.

GPIO0 необходим для перевода ESP8266 в программный режим. Подключите его к земле при питании ESP8266. Вы можете включить и прошить ESP8266 с помощью программатора FTDI.

Прошивка

Прошивка основана на моей прошивке Sonoff B1, но модифицирована, потому что Sonoff B1 использует драйверы светодиодов MY9231, которые управляются микросхемой ESP8285, а в этой умной лампе Tuya 4 канала (RGBW) управляются МОП-транзисторами, напрямую переключаемыми сигналами ШИМ. от ESP8266.

Зеленый канал подключен к GPIO12, красный - к GPIO14, синий - к GPIO13, а белый канал подключен к GPIO4. В коде вы видите это как: #define GREENPIN 12 #define REDPIN 14 #define BLUEPIN 13 #define WHITEPIN 4.

Полный код находится на моем Github.

Шаг 2: обычные теплые белые светодиодные лампы - часть 1

Обычные теплые белые светодиодные лампы - Часть 1
Обычные теплые белые светодиодные лампы - Часть 1
Обычные теплые белые светодиодные лампы - Часть 1
Обычные теплые белые светодиодные лампы - Часть 1
Обычные теплые белые светодиодные лампы - Часть 1
Обычные теплые белые светодиодные лампы - Часть 1

вступление

Купил эти светодиодные лампы с Алиэкспресс Синий / белый ящик и черный ящик. Они должны управляться через приложение для умного дома Magic home и приложение Techlife pro. Я не пробовал эти приложения, так как хотел управлять светодиодными лампочками через MQTT из Openhab. Поскольку у меня уже была прошивка для ламп RGBW, я использовал ее не с четырьмя (RGBW) каналами, а только с одним каналом.

Мигает

Вы открываете лампу, осторожно снимая пластиковый колпачок. Я обнаружил, что крышка немного приклеена к металлу, поэтому мне понадобилось усилие отвертки между металлом и пластиком.

Я ожидал увидеть чип ESP8266 или ESP8285, но это был модуль Broadlink. Модуль выглядел очень похоже на модуль ESP12, но я обнаружил, что распиновка была совершенно другой. Сняв металлическую крышку, я узнал, что это микросхема RDA 5981AM.

Мое решение по замене этого чипа на ESP показано на следующем шаге.

Шаг 3. Обычные теплые белые светодиодные лампы - Часть 2

Обычные теплые белые светодиодные лампы - Часть 2
Обычные теплые белые светодиодные лампы - Часть 2
Обычные теплые белые светодиодные лампы - Часть 2
Обычные теплые белые светодиодные лампы - Часть 2
Обычные теплые белые светодиодные лампы - Часть 2
Обычные теплые белые светодиодные лампы - Часть 2
Обычные теплые белые светодиодные лампы - Часть 2
Обычные теплые белые светодиодные лампы - Часть 2

Модули подключаются к цоколю лампы через 3 контакта, см. Первое изображение:

  • 3V3 (3,3 В)
  • GND (земля)
  • ШИМ (широтно-импульсная модуляция)

Вывод PWM используется для установки яркости лампы с помощью сигнала PWM, который может варьироваться от 0 (лампа выключена) до 100 (лампа полностью включена) и любого значения между ними. Посетите этот веб-сайт для получения дополнительной информации о сигналах PWM.

Поскольку модули ESP8266 и ESP8285 работают от 3,3 В и могут легко генерировать сигнал ШИМ, я заменил модули Broadlink на модули ESP8266 или ESP8285, которые у меня были.

Модули ESP-01S (ESP8266) перепрограммируются с помощью отдельного программатора, см. Шаг 3 данной инструкции. Я припаял штырьки розетки к лампе с подтягивающим резистором между 3V3 и EN (включить). Это был мой первый эксперимент, позже я перешел на модули ESP8285.

Модули ESP-M1, ESP-M3 и ESP-01F (ESP8285) прошиваются путем пайки проводов к необходимым соединениям (3V3, GND, RX, TX и GPIO0 (см. Шаг 1, мигание интеллектуальной лампы Tuya). припаял подтягивающий резистор между 3V3 и EN (включить).

С модулем ESP-M3 я использую GPIO4 для генерации сигнала ШИМ. Сначала я использовал GPIO2, но когда светодиодная лампа выключена, низкий уровень GPIO2 приводит к включению встроенного светодиода, что дает нежелательное синее свечение в светодиодной лампе.

Добавьте каптоновую ленту, чтобы улучшить изоляцию между модулем и соединениями цоколя лампы.

Изменить: я обнаружил, что модуль ESP-01F не запускается надежно, вероятно, из-за нестабильности питания при включении. Я решил эту проблему, добавив танталовый конденсатор 10 мкФ между GND и VCC. Примечательно, что керамический конденсатор на 10 мкФ не работал.

Шаг 4: обычные теплые белые светодиодные лампы - часть 3

Обычные теплые белые светодиодные лампы - Часть 3
Обычные теплые белые светодиодные лампы - Часть 3

Прошивка

Код есть у меня на Github.

Прошивка включает веб-интерфейс для управления светодиодной лампочкой, а также имеет возможность обновлять прошивку через OTA через Webupdate.

Шаг 5: Sonoff или BSD33 Smart Plug - Часть 1

Умная розетка Sonoff или BSD33 - Часть 1
Умная розетка Sonoff или BSD33 - Часть 1
Умная розетка Sonoff или BSD33 - Часть 1
Умная розетка Sonoff или BSD33 - Часть 1
Умная розетка Sonoff или BSD33 - Часть 1
Умная розетка Sonoff или BSD33 - Часть 1
Умная розетка Sonoff или BSD33 - Часть 1
Умная розетка Sonoff или BSD33 - Часть 1

вступление

Купил эту умную вилку WiFi на Алиэкспресс. Он отлично работает с приложением Smart Life, но я хотел управлять им через MQTT из Openhab. Я уже сделал свою прошивку Sonoff для умных вилок и розеток, поэтому попробовал прошить эту лампу этой прошивкой.

Я также использовал эту прошивку для прошивки своих интеллектуальных разъемов Sonof S20 и Sonoff S26 и интеллектуальных переключателей Sonoff basic и Sonoff Basic R3. Как открыть и аппаратно подключить устройства Sonoff для прошивки, описано для Tasmota в вики-странице tasmota, поэтому здесь это не описано.

Открытие розетки

Умная вилка склеена. Чтобы открыть его, вставьте отвертку в вырез на земле и приложите некоторую силу, используя другую сторону розетки в качестве точки поворота (подсказка из netpokin в этой теме). Таким образом, вы сможете вытащить его ломом, не повредив розетку.

На фотографиях вы видите внутреннюю часть вилки. Он состоит из основной платы с реле и платы меньшего размера, на которой установлена микросхема ESP8266 и память. Платы подключаются через доступные паяные соединения.

Шаг 6: Sonoff или BSD33 Smart Plug - Часть 2

Умная розетка Sonoff или BSD33 - Часть 2
Умная розетка Sonoff или BSD33 - Часть 2
Умная розетка Sonoff или BSD33 - Часть 2
Умная розетка Sonoff или BSD33 - Часть 2
Умная розетка Sonoff или BSD33 - Часть 2
Умная розетка Sonoff или BSD33 - Часть 2
Умная розетка Sonoff или BSD33 - Часть 2
Умная розетка Sonoff или BSD33 - Часть 2

Мигает

Я перепроектировал паяные соединения. См. Изображение для описания подключений. Я узнал что:

  • GPIO2 подключен к светодиоду (в кнопке штекера).
  • GPIO13 подключен к самой кнопке.
  • GPIO15 подключен к МОП-транзистору, который включает главное реле.

Вы можете включить и прошить ESP8266 с помощью программатора FTDI. Подключите кабели dupont с внутренней резьбой к следующим разъемам: (VCC (3,3 В), GND, RX, TX и GPIO0)

GPIO0 необходим для перевода ESP8266 в программный режим. Подключите его к земле при питании ESP8266.

На моем программаторе FTDI я добавил конденсатор емкостью 470 мкФ между землей и VCC. В другом проекте я выяснил, что это повысило стабильность.

У программатора FTDI есть несколько других неиспользуемых контактов GND и VCC, вы можете использовать их для подключения GPIO0 к GND.

Шаг 7: Sonoff или BSD33 Smart Plug - Часть 3

Умная розетка Sonoff или BSD33 - Часть 3
Умная розетка Sonoff или BSD33 - Часть 3
Умная розетка Sonoff или BSD33 - Часть 3
Умная розетка Sonoff или BSD33 - Часть 3
Умная розетка Sonoff или BSD33 - Часть 3
Умная розетка Sonoff или BSD33 - Часть 3
Умная розетка Sonoff или BSD33 - Часть 3
Умная розетка Sonoff или BSD33 - Часть 3

Прошивка

Моя прошивка находится на моем Github.

Основные части прошивки

  • Подключение к WiFi и MQTT серверу
  • Ручное переключение в режиме онлайн и офлайн (при запуске)
  • Если реле переключается вручную, когда устройство находится в автономном режиме, оно отправляет состояние через MQTT при повторном подключении.
  • Состояние реле хранится в памяти RTC (см. Это видео о памяти RTC ESP8266).
  • Веб-интерфейс для управления коммутатором и доступа к Webupdate для OTA
  • Прошивка подходит для этой смарт-розетки BSD33, но также и для устройств Sonoff: Sonoff S20, Sonoff S26, Sonoff basic, Sonof Basic R3

Интеграции OpenHAB

Я использую эту вилку для управления мощностью моей кофемашины. Через Openhab и Google Home я могу управлять им с помощью голоса.

Я установил таймер, который переключает мою кофеварку через заданное время, см. Изображение моей карты сайта Openhab. Предустановленное время вводится в NodeRed с разным предустановленным временем в будние и выходные дни.

См. Мой Github для получения примеров элементов, правил и файлов карты сайта.

Рекомендуемые: