Шлюз на базе ESP32 для R4S-устройств (Ready for Sky/Nordic)

Подключение исполнительных устройств, датчиков, контроллеров.

Модераторы: Bagir, Ivan, Vit, immortal

Ответить
olehs
Сообщения: 934
Зарегистрирован: Вс июн 14, 2015 11:08 am
Благодарил (а): 62 раза
Поблагодарили: 253 раза

Шлюз на базе ESP32 для R4S-устройств (Ready for Sky/Nordic)

Сообщение olehs » Вс май 27, 2018 10:53 pm

В данный момент поддерживается только чайник Redmond RK-M171S. и, возможно, аналогичные модели

Шлюз работает по протоколам HTTP и MQTT (по желанию) .
Настройка Arduino IDE (portable) для работы с ESP32Показать
Настройка на примере Arduino IDE версии 1.8.5 в портативном режиме.

1. Скачать архив Arduino IDE 1.8.5 и распаковать. Не запускать!
2. Создать внутри распакованной папки директорию portable
3. Создать внутри папки hardware директорию espressif
4. Скачать ядро ESP32 и распаковать содержимое в папку, созданную в п.3, затем переименовать распакованную директорию из arduino-esp32-master в просто esp32
5. Зайти в папку esp32\tools (полный путь должен получиться что-то типа c:\arduino-1.8.5\hardware\espressif\esp32\tools) и запустить файл get.exe
6. Запустить arduino.exe.
7. Подключите плату к компьютеру.
8. В меню Инструменты/Плата выберите подходящую ( у меня это "ESP32 Dev Module").
9. В меню Инструменты/Parition Scheme выберите любую схему, где написано Large APPS (я выбрал "Minimal SPIFFS (Large APPS with OTA)")
10. В меню Инструменты/Порт выбрать порт, на котором плата определилась.
Подключение библиотекПоказать
1. Скачать библиотеку BLE
2. Скачать библиотеку WebServer
3. Зайти в меню Скетч/Подключить библиотеку/Добавить .ZIP библиотеку и выбрать скачанный в п.1 файл
4. Зайти в меню Скетч/Подключить библиотеку/Добавить .ZIP библиотеку и выбрать скачанный в п.2 файл
5. Зайти в меню Скетч/Подключить библиотеку/Управлять библиотеками, найти и установить там PubSubClient последней версии (у меня 2.6.0)
Скачать архив скетча можно с GitHub https://github.com/olehs/r4sGate/archive/master.zip
Его нужно распаковать в папку sketchbook

Открываем скетч r4sGate.ino и правим на первой вкладке настройки:
ssid - ваша точка доступа
password - пароль к точке доступа

MQTT по умолчанию отключен. Если планируете его использовать нужно закоментировать (//) строку

Код: Выделить всё

#define R4SGATE_NO_MQTT
и настроить параметры подключения к брокеру
mqtt_server - адрес
mqtt_port - порт

Для подключения к чайнику нужно привязать его к нашему гейту.
Первым делом можно поменять пару байт в параметре

Код: Выделить всё

static uint8_t r4sAuth[8] = { 0xb5, 0x4c, 0x75, 0xb1, 0xb4, 0xac, 0x88, 0xef };
чтобы он не был у всех одинаковый. Можете не переживать, привязки к другим устройствам не слетают: видимо чайник расчитан на запоминание нескольких кодов авторизации.

Затем после заливки скетча привязку нужно делать следующим образом:
Нажать кнопку Reset (En) на ESP32, отпустить ее и сразу же нажать на чайнике и удерживать кнопку "+" в течение 10 сек пока на экране не отобразится режим привязки.

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


Инструкция в процессе написания...
Последний раз редактировалось olehs Чт июн 14, 2018 11:37 pm, всего редактировалось 2 раза.
За это сообщение автора olehs поблагодарили (всего 4):
skysilver (Пн май 28, 2018 11:32 am) • AeroS (Ср май 30, 2018 8:17 pm) • ypiter2006 (Ср май 30, 2018 9:31 pm) • Igor.P (Чт июн 14, 2018 2:18 pm)
Рейтинг: 6.67%
AeroS
Сообщения: 26
Зарегистрирован: Чт апр 13, 2017 9:27 am
Благодарил (а): 15 раз
Поблагодарили: 2 раза

Re: Шлюз на базе ESP32 для R4S-устройств (Ready for Sky/Nordic)

Сообщение AeroS » Ср май 30, 2018 8:19 pm

Спасибо за разработку!

Подскажите, есть вот такой чайник SkyKettle G200S-
СпойлерПоказать
Подцепит его Ваш шлюз?
И можно ссылочку какую esp32 покупать?
olehs
Сообщения: 934
Зарегистрирован: Вс июн 14, 2015 11:08 am
Благодарил (а): 62 раза
Поблагодарили: 253 раза

Re: Шлюз на базе ESP32 для R4S-устройств (Ready for Sky/Nordic)

Сообщение olehs » Ср май 30, 2018 8:28 pm

AeroS писал(а):
Ср май 30, 2018 8:19 pm
Спасибо за разработку!

Подскажите, есть вот такой чайник SkyKettle G200S-
СпойлерПоказать
Подцепит его Ваш шлюз?
И можно ссылочку какую esp32 покупать?
Да, с Redmond должно всеми работать. Единственное, у меня нет описания команд управления цветом, потому оно работать не будет.
А ссылочки вот тут коллега выкладывал https://majordomo.smartliving.ru/forum/ ... =40#p81340
У меня первая.
За это сообщение автора olehs поблагодарил:
AeroS (Ср май 30, 2018 9:50 pm)
Рейтинг: 1.67%
AeroS
Сообщения: 26
Зарегистрирован: Чт апр 13, 2017 9:27 am
Благодарил (а): 15 раз
Поблагодарили: 2 раза

Re: Шлюз на базе ESP32 для R4S-устройств (Ready for Sky/Nordic)

Сообщение AeroS » Ср май 30, 2018 9:52 pm

Ага, отлично, буду заказывать.
p.s. управление цветом и не принципиально, рядом стоит шлюз xiaomi который выполняет роль ночника.
olehs
Сообщения: 934
Зарегистрирован: Вс июн 14, 2015 11:08 am
Благодарил (а): 62 раза
Поблагодарили: 253 раза

Re: Шлюз на базе ESP32 для R4S-устройств (Ready for Sky/Nordic)

Сообщение olehs » Чт май 31, 2018 7:18 pm

Извините, что тяну с инструкцией, но я все еще никак не могу до конца отловить и побороть зависания в либе BLE. Оно может пару часов работать нормально, а потом взять и зависнуть. Усложняется все тем, что в режиме отладки либа валит в порт по странице отладочной информации в секунду :(
Igor.P
Сообщения: 23
Зарегистрирован: Вт ноя 14, 2017 7:11 pm
Откуда: Минск
Благодарил (а): 33 раза
Поблагодарили: 4 раза
Контактная информация:

Re: Шлюз на базе ESP32 для R4S-устройств (Ready for Sky/Nordic)

Сообщение Igor.P » Чт июн 14, 2018 2:32 pm

может нужна помощь упаковкой в модуль для majorDoMo?
потому что спрашивают про Redmond часто и много. и думаю многим будем актуально

что скажете?
Директор по развитию, MajorDoMo
directman66
Сообщения: 1443
Зарегистрирован: Пн дек 26, 2016 9:51 am
Откуда: Екатеринбург
Благодарил (а): 211 раз
Поблагодарили: 201 раз

Re: Шлюз на базе ESP32 для R4S-устройств (Ready for Sky/Nordic)

Сообщение directman66 » Чт июн 14, 2018 10:32 pm

А модуль чем поможет? Тут отдельное устройство, уже как ему с МД общаться, тут вариантов много. Сам жду есп32, в планах весы и чайник сяоми.
CONNECT: http://connect.smartliving.ru/profile/1502 Если вам помогло данное сообщение, не поленитесь нажать кнопку "спасибо".
olehs
Сообщения: 934
Зарегистрирован: Вс июн 14, 2015 11:08 am
Благодарил (а): 62 раза
Поблагодарили: 253 раза

Re: Шлюз на базе ESP32 для R4S-устройств (Ready for Sky/Nordic)

Сообщение olehs » Чт июн 14, 2018 11:36 pm

Для модуля еще рано.
С той библиотекой BLE, что есть сейчас, не получится подцепить к одному шлюзу несколько устройств, хотя либы нижнего уровня (esp32 gattc) вроде как позволяют делать что-угодно.
Если поборю зависания (скорее всего, если соберусь с духом и найду время переписать библиотеку для Ардуино), то можно будет и взяться за доработку по уму API. А вот тогда уже можно будет и модуль ваять.
Ответить