OpenBK7231T_App

OpenBK7231T/OpenBeken — это альтернатива прошивкам Tasmota/esphome для новых чипов, используемых на данный момент в устройствах Tuya вместо esp8266 совместимых.  Прошивка OpenBeken взаимодействует с умным домом по протоколу MQTT и совместима с Home Assistant. 
В репозитории на гитхабе можно найти сборки под разные чипы, используемые в устройствах Tuya, такие как:

Список уже портированных устройств

   Статьи на русском языке, опыт прошивки:

 

 Видео материал на русском языке

 

Если Вы написали Ваш опыт прошивки OpenBK7231T_App на русском языке, просьба прислать ссылку мне на почту (svet740@gmail.com), я добавлю её на этой страничке. Инструкций много не бывает))

 

Материал по проекту OpenBK7231T_App для быстрого поиска:

 

Описание ролей (значений) пинов

Вы можете установить роли контактов в разделе «Настройка модуля» или использовать один из шаблонов на странице «Быстрая настройка». Для каждого вывода также устанавливаете значение соответствующего канала. Это необходимо для модулей с несколькими реле. Если у вас есть 3 реле и 3 кнопки, каждая кнопка управляет своим реле, тогда каждой группе состоящей из одного реле и одной кнопки нужно присвоить уникальный номер канала. Если канал у вех будет, скажем 0, то при нажатии на любую кнопу будут срабатывать все реле.

pins

  • Button — кнопка (без фиксации) с активным низким уровнем (при нажатии замыкается на землю).
  • Button_n (как Button, но логическое значение вывода инвертировано)
  • Relay- Тип реле, нормально разомкнутое.
  • Relay_n (инвертировано, нормально замкнутое)
  • LED - на выходе 0, не светится.
  • LED_n (инвертировано)
  • Button Toggle All - эта кнопка переключает все каналы одновременно.
  • Button Toggle All_n (инвертировано)
  • PWM - выход широтно-импульсной модуляции для светодиодных диммеров (с поддержкой диммирования по MQTT и Home Assistant)
  • PWM_n - (инвертировано).
  • LED WiFi - светодиод для индикации состояния соединения WLan. Состояния индикатора следующие: Индикатор горит = режим клиента. Успешно подключен к маршрутизатору. Мигание полсекунды - подключение к роутеру (долгое мигание говорит о проблеме с подключением). Быстрое мигание (200 мс) - режим открытой точки доступа. В безопасном режиме светодиод может не работать.
  • DigitalInput — this is a simple digital input pin, it sets the linked channel to current logical value on it, just like digitalRead( ) from Arduino. This input has a internal pull up resistor.
  • DigitalInput_n (инвертировано)
  • ToggleChannelOnToggle — переключает канал в следующее состояние, если был 0 - в 1, если был 1 - в 0 (с устранением дребезга).
  • DigitalInput_NoPullUp — то же, что и DigitalInput, но без программируемого подтягивающего резистора. Используется, например, для датчика воды XR809 и датчика двери.
  • DigitalInput_NoPullUp_n (инвертировано)
  • ADC (аналогово-цифровой преобразователь) — converts voltage to channel value which is later published by MQTT and also can be used to trigger scriptable events
  • AlwaysHigh - always outputs 1
  • AlwaysLow - always outputs 0
  • Btn_NextColor _n) — для RGB ленты с кнопками, устанавливает следующий предопределенный цвет
  • Btn_NextDimmer _n) — для RGB ленты с кнопками, при удержании регулирует яркость
  • IRRecv ​​- ИК-приемник
  • IRSend - передатчик IR

 

Безопасный режим

Рабочий (обычный, нормальный) режим работы устройства, считается, когда устройство проработало более 30 секунд поле запуска.
Для перехода в безопасный режим, надо несколько раз включать, выключать устройство не давая войти в рабочий режим.
В безопасном режиме устройство войдет в режим открытой точки доступа, т.е. АР.
В безопасном режиме системы контактов не инициализированы. 
Безопасный режим нужен для восстановления устройств после плохих конфигураций и ошибок.

Консольные команды

Существует несколько консольных команд, которые позволяют автоматизировать ваши устройства. Команды можно вводить вручную в командной строке, можно отправлять по HTTP (как в Tasmota), можно отправлять по MQTT, а также - заскриптовать.

 

Команда Описание
addRepeatingEvent 15 -1 SendGet http://192.168.0.112/cm?cmnd=Power0%20Toggle Каждые 15 секунд будет отправляться команда SendGet. Значение "-1" указывает на беспрерывность выполнения.
addEventHandler OnClick 8 SendGet http://192.168.0.112/cm?cmnd=Power0%20Toggle Выполнить на 8-ом пине (не канал!)
addChangeHandler Channel1 != 0 SendGet http://192.168.0.112/cm?cmnd=Power0%20On Включить 1 канал (не вывод, который указан в конфиге, а канал!). Например включить реле.
addChangeHandler Channel1 == 0 SendGet http://192.168.0.112/cm?cmnd=Power0%20Off Выключить 1 канал. Например выключить реле.
addChangeHandler Channel1 == 1 addRepeatingEvent 60 1 setChannel 1 0 Выключить канал 1 через 60 секунд после включения.
addRepeatingEvent 5 -1 led_enableAll !$led_enableAll Через каждые 5 секунд включить, выключить светодиод. Значение "-1" указывает на беспрерывность выполнения.

 

команды MQTT для передачи на устройство

OBK_DEV_NAME/INDEX/set
OBK_DEV_NAME - имя устройства в MQTT
INDEX - номер канала
Пример передачи команды на выключение реле:
rozetka_03/0/set "0"

Для устройств на базе BL602 команды для передачи на устройство по MQTT отличаются:
cmnd/OBK_DEV_NAME/led_basecolor_rgb
где led_basecolor_rgb - это топик.

Topic Sample Value Description
OBK_DEV_NAME/connected "online" Send on connect.
OBK_DEV_NAME/sockets "5" Send on connect and every minute (if enabled)
OBK_DEV_NAME/rssi "-70" Send on connect and every minute (if enabled)
OBK_DEV_NAME/uptime "653" Send on connect and every minute (if enabled)
OBK_DEV_NAME/freeheap "95168" Send on connect and every minute (if enabled)
OBK_DEV_NAME/ip "192.168.0.123" Send on connect and every minute (if enabled)
OBK_DEV_NAME/datetime "" Send on connect and every minute (if enabled)
OBK_DEV_NAME/mac "84:e3:42:65:d1:87 " Send on connect and every minute (if enabled)
OBK_DEV_NAME/build "Build on Nov 12 2022 12:39:44 version 1.0.0" Send on connect and every minute (if enabled)
OBK_DEV_NAME/host "obk_t_fourRelays" Send on connect and every minute (if enabled)
OBK_DEV_NAME/voltage/get "221" voltage from BL0942/BL0937 etc
OBK_DEV_NAME/led_enableAll/get "1" send when LED On/Off changes or when periodic broadcast is enabled
OBK_DEV_NAME/led_basecolor_rgb/get "FFAABB" send when LED color changes or when periodic broadcast is enabled.
OBK_DEV_NAME/led_dimmer/get "100" send when LED dimmer changes or when periodic broadcast is enabled

Theme by Danetsoft and Danang Probo Sayekti inspired by Maksimer