Tasmota-ESP32-Onion Omega2-GSM-SSR Gateway V1.0

Особенности проекта:

  • WiFi ESP32-WROOM-32(E,D) – Основная прошивка Tasmota
  • ESP32-WROOM-32E (ESP32-D0WD-V3 rev.3) – Работает.
  • Ethernet to WiFi – Onion Omega2+ 
  • 4 – Solid State Relay – Твердотельных реле (2А)  Индикация включения.
  • 4 – Оптронных входа (Изолированные Входа)
  • 1 – 220 Вольт вход (Изолированный Вход)
  • WS2812B – Индикация. LedLink – Индикация WiFi and MQTT
  • Индикация напряжений 3.3В, 4.2В
  • Интерфейсы Ethernet (Omega2+), WiFi
  • Установить модуля GSM SIM800L 
  • USB для перепрограммирования ESP32 (Boot перемычка на всякий случай)
  • Внешнее подключение 4xGPIO, I2C, 3.3V, GND.
  • Внутренние подключение 2xGPIO (Например Display ТМ1637) Boot, Reset
  • Питание 9-15 Вольт.
  • Дополнительный модуль ZigBee 
  • Схема: Schematic: Onion-Tasmota-V1.0 (PDF)

Продолжить чтение Tasmota-ESP32-Onion Omega2-GSM-SSR Gateway V1.0

ESP32 GSM Tasmota Relay (SSR) Versiaon 3.0

Улучшенная версия ESP32-GSM-Tasmota-Relay V3.0. Исправлены ошибки, удалены не нужные интерфейсы OpenTherm, добавлены 4xSSR (Твердотельные реле), добавлена возможность установить BMP280 и RTC(Real Time Clock DS3231) одновременно и даже подключить TM1637. SPI на плате также присутствует. Небольшой пример использования Berry на Tasmota для отправки SMS и управление портами через GSM. gsm-berry-tasmota-ver-1-0 (PDF)

  • ESP32-WROOM-32(D) – прошивка Tasmota
  • 4 Изолированные Входа. (12V)
  • 4 SSR  – Твердотельные реле (2А) – Индикация включения.
  • 4 LED (Индикация входов или Выходов)
  • Индикация питания 3V, 4V(GSM), Контроль напряжения 4V через GPIO (ADC)
  • Индикатор состояния сети (WiFi, MQTT, etc.)
  • RS485 Интерфейс.
  • Buzzer – зуммер.
  • WS2812B – Индикация.
  • Установка модулей RTC-DS3231, BMP280, SPI Модулей
  • Внешнее подключение 2xGPIO, I2C, 3.3V, GND.
  • Можно установить модуль GSM SIM800L или ZigBee E18-MS1-PCB/IPX (Описание ниже)
  • USB для перепрограммирования.
  • Питание 9-15 Вольт.
  • Схема.

Схема. (Schematics)

Готовим платы к производству. 

https://www.pcbway.ru/

Всегда можно посмотреть процесс изготовления Вашей платы.

Процесс сборки (Монтаж PCB)

Analog1 = Напряжение на GSM модеме. R1 = 4.7K, R2 = 10K

V = (R1+R2)/R2 * (Analog1 * 3.3)/4095

V= ((4700+10000)/10000) * (3359*3.3)/4095 = 3.97V

Import string
def rule_adc(value, trigger)
var i=string.find(trigger,"#A")
var tr=string.split(trigger,i+2)
var adc=number(tr[1])
print("value of adc",adc," is ",value)
# V = (R1+R2)/R2 * (Analog1 * 3.3)/4095
var V= ((4700+10000)/10000) * (value*3.3)/4095
print("Voltage:",V)
end
tasmota.add_rule("ANALOG#A1",rule_adc)

Управление RGB(WS2812B) светодиодом:

SetOption17 1 – To set color units to R,G,B,W (0-255):

color 255,0,0,0 – Red
color 0,255,0,0 – Green
color 0,0,255,0 – Blue
color 0,0,0,255 – White

backlog color 0,0,255,0;dimmer 40

Улучшения по сравнению с предыдущими версиями.

Еще немного фото.

Настройка: 

Для инициализации GSM модема при старте или рестарте.

rule ON System#Boot do backlog power1 on;power1 off endon

Продолжить чтение ESP32 GSM Tasmota Relay (SSR) Versiaon 3.0

3-SSR ESP8266 Tasmota для Умного дома Ver 1.0 (Project)

Если кому нужно продам. Пишите.

Подключение модуля SSR Version 1.0 (PDF)

DipTrace Schematic.3-SSR-V1.0

MCP23008-E/SO, 8-битный расширитель порта ввода/вывода

backlog sensor29 0,5,0; sensor29 1,5,0; sensor29 2,5,0
backlog sensor29 3,2,1; sensor29 4,2,1; sensor29 5,2,1

backlog SetOption36 0;SetOption65 1;wificonfig 4; SetOption59 1; TelePeriod 150; TimeZone +3

SetOption36 0 – 0 Disable boot loop control
SetOption65 1 – 1 Disable – Device recovery using fast power cycle detection
SetOption59 1 – 1 Enable Send tele/%topic%/STATE in addition to stat/%topic%/RESULT for commands: State, Power and any command causing a light to be turned on.
wificonfig 4 = Retry other AP without rebooting (default)

Корпус

https://www.chipdip.ru/product/d4mg

https://www.electronshik.ru/item/ECT/D4M-RU

ZigBee Project Version 1.0

Вот что получилось.

ZibGee – Tasmota – MQTT Координатор.
ZigBee 4 симистора и 4 входа, 4x5v Выходов, DS18B20
Коричневый.
Коричневый+красный

VCC = 3.3V

ZigBee координатор: Rule ON System#Boot do TCPStart 8888 endon

Прошивка https://ptvo.info/

Прошивка: RomikZigBeeSwitch

Прошивка: objcopy –gap-fill 0xFF –pad-to 0x040000 -I ihex Romik.Switch.V1.hex -O binary Romik.Switch.V1.bin
./ccloader /dev/ttyUSB0 Romik.Switch.V1.bin 1

Выходные контакты:
P20: Выход 1, GPIO, Внешняя подтяжка к +
P21: Выход 2, GPIO, Внешняя подтяжка к +
P22: Выход 3, GPIO, Внешняя подтяжка к +
P13: Выход 4, GPIO, Внешняя подтяжка к +
P12: Выход 5, GPIO, Внешняя подтяжка к +
P17: Выход 6, GPIO, Внешняя подтяжка к +
P16: Выход 7, GPIO, Внешняя подтяжка к +
P15: Выход 8, GPIO, Внешняя подтяжка к +

Входные контакты:
P00: Вход 1, GPIO, Внешняя подтяжка к +, Переключатель, Привязать к выходу 1
P01: Вход 2, GPIO, Внешняя подтяжка к +, Переключатель, Привязать к выходу 2
P04: Вход 3, GPIO, Внешняя подтяжка к +, Переключатель, Привязать к выходу 3
P05: Вход 4, GPIO, Внешняя подтяжка к +, Переключатель, Привязать к выходу 4
P06: Вход 5, DS18B20, Внешняя подтяжка к +

Схема – повторять не нужно – много недоработок.

DipTrace Schematic – zigbee-relay-v1.0

HA


sensor:

  - platform: mqtt
    unique_id: ZigBeeTempDS18B20
    name: "ZigBeeTest Temperature"
    state_topic: "tele/ZigBeeTest/SENSOR"
    value_template: "{{ value_json.ZbReceived['0xCE98'].AnalogValue | float }}"
    unit_of_measurement: "°C"
    availability_topic: "tele/ZigBeeTest/LWT"
    payload_available: "Online"
    payload_not_available: "Offline"
    device_class: temperature

 


- platform: mqtt
    unique_id: ZigBeeV1Switch_4
    name: ZigBeeV1Switch_4
    state_topic: "tele/ZigBeeTest/SENSOR"
    value_template: |-
      {%- if value_json.ZbReceived is defined and value_json.ZbReceived['0xCE98'] is defined -%}
      {%- if value_json.ZbReceived['0xCE98'].Endpoint == 4 -%}
      {%- if value_json.ZbReceived['0xCE98'].Power == 1 -%}
      ON
      {% else %}
      OFF
      {% endif %}
      {% endif %}
      {% endif %}
    state_on: "ON"
    state_off: "OFF"
    command_topic: "cmnd/ZigBeeTest/ZbSend"
    payload_on: '{ "device":"0xCE98", "Endpoint":4, "send":{"Power":"on"} }'
    payload_off: '{ "device":"0xCE98", "Endpoint":4, "send":{"Power":"off"} }'
    availability_topic: "tele/ZigBeeTest/LWT"
    payload_available: "Online"
    payload_not_available: "Offline"
    qos: 1
    retain: false

Координатор работает прекрасно.

p.s. В исполнительном устройстве нужно отрезать от МОДУЛЯ ножки P24,P23 так как они используются для входа кварца 32.768 и на плате (с нижней стороны) соединить P23-P13,P24-P12.

Координатор Tasmota-ZigBee:

LWT: Для Home-Assistant – Над правилами нужно еще поработать.

Rule 
ON zbstate#Status==30 DO publish tele/ZigBeeTest/LWT Online ENDON
ON zbreceived#?#Reachable==false DO publish tele/ZigBeeTest/LWT Offline ENDON
ON zbreceived#0xCE98 DO publish tele/ZigBeeTest/LWT Online ENDON

Включение PerminJoin по кнопке BOOT=GPIO0

rule2 ON Switch1#State=2 DO zbpermitjoin 1 ENDON

p.s. Управление ключами с другой Tasmota:

publish cmnd/ZigBeeTest/zbsend { “device”:”0xCE98″, “Endpoint”:4, “send”:{“Power”:”off”} }

Схема дополнительного модуля: DipTrace Schematic – Replace-CC2530-to-ESP07s

Последняя прошивка 15-06-2022 года.