неофициальные доработки:
-поддержка URL для перехода сразу на устройство -если не включен GH_INCLUDE_PORTAL появляется возможность загрузить файлы в есп не прибегая к специальным утилитам, достаточно иметь любой браузер.
Панель управления для esp8266, esp32 и других Arduino. Конструктор интерфейса, интеграция в умный дом
Документация находится в Wiki репозитория. English docs - translate
Внимание! Перед началом работы обязательны к прочтению главы по установке библиотеки и настройке приложения
Бета-версия! Проект пока что тестируется, следите за коммитами. Известные проблемы, особенности версии, обсуждение, предложения, баги - всё вот тут |
|---|
Все Arduino
- НЕ РАБОТАЕТ НА ESP32 SDK 2.0.8
- Зависимости: Stamp, PubSubClient, arduinoWebSockets, ESPAsyncWebServer, ESPAsyncTCP, AsyncTCP, async-mqtt-client
- Подробнее читай в документации
GyverHub - это платформа, включающая в себя библиотеку для устройства и приложение для управления. Приложение написано на JavaScript и по сути является сайтом, который доступен:
- С официального сайта hub.gyver.ru, а также зеркала на GitHub Pages (только HTTPS)
- Android приложение: Google Play, скачать APK - особенности
- Сайт можно установить как веб-приложение (PWA) на любое устройство (Android/iOS/Windows...)
- Локально с компьютера, для этого нужно скачать сайт (правой кнопкой - сохранить ссылку как) и открыть его в браузере
- Из памяти ESP8266/32
- Из Телеграм-бота
Устройством может быть:
- ESP8266 и ESP32 - библиотека нативно поддерживает их WiFi функции
- Любые Arduino - подключаются к WiFi удобным способом и работают в ручном режиме
- Компьютер (персональный, одноплатный) - библиотека сервера на Python (в разработке)
Устройство и приложение обмениваются данными по своему протоколу (см. API) через различные интерфейсы связи:
- MQTT (через Интернет)
- WebSocket (в локальной сети)
- Serial (в разработке)
- Bluetooth (в разработке)
Основные моменты:
- Приложение может обнаруживать устройства в своей "сети"
- В прошивке для устройства "собирается" графический интерфейс, который отправляется в приложение
- Можно управлять устройством в приложении или с сайта, даже через Интернет
- Библиотека позволяет максимально просто добавить устройство в систему умного дома по MQTT (Алиса, Home Assistant...)
- Открытая база пользовательских проектов (вкладка Projects в приложении). https://github.com/GyverLibs/GyverHub-projects)
Особенности:
- Библиотека невероятно проста в использовании
- Удобный парсинг действий с приложения и умного дома
- Библиотека асинхронная (опционально для ESP8266/ESP32)
- Оптимальное использование памяти для работы на слабых МК
- Более 20 активных компонентов интерфейса (кнопки, слайдеры, выбор...) + блоки оформления и навигации
- Доп. модули: "беспроводной" сенсорный дисплей, менеджер файлов, информация об устройстве, OTA обновление, проверка обновлений на GitHub, защита паролем, интерфейс командной строки...
- 1000 FontAwesome иконок оформления для кнопок и списка устройств
- Два стиля отображения компонентов, тёмная и светлая темы, несколько цветовых схем в приложении
Аналоги:
- RemoteXY
- Blynk
В отличие от них GyverHub полностью бесплатный, безопасный, более удобный, не имеет ограничений, не нуждается в локальном сервере и может работать без приложения и без подключения к Интернет.
- Рекомендую всегда обновлять библиотеку: в новых версиях исправляются ошибки и баги, а также проводится оптимизация и добавляются новые фичи
- Через менеджер библиотек IDE: найти библиотеку как при установке и нажать "Обновить"
- Вручную: удалить папку со старой версией, а затем положить на её место новую. "Замену" делать нельзя: иногда в новых версиях удаляются файлы, которые останутся при замене и могут привести к ошибкам!
- v1.0
- HV Soft - нативное приложение
- @neko-neko-nyan - идеи и доработки
- @DenysChuhlib - идеи
- @Serega88kos - тестирование, идеи
- @IliaSalaur - идеи
При нахождении багов создавайте Issue, а лучше сразу пишите на почту alex@alexgyver.ru
Библиотека открыта для доработки и ваших Pull Request'ов!
При сообщении о багах или некорректной работе библиотеки нужно обязательно указывать:
- Версия библиотеки
- Какой используется МК
- Версия SDK (для ESP)
- Версия Arduino IDE
- Корректно ли работают ли встроенные примеры, в которых используются функции и конструкции, приводящие к багу в вашем коде
- Какой код загружался, какая работа от него ожидалась и как он работает в реальности
- В идеале приложить минимальный код, в котором наблюдается баг. Не полотно из тысячи строк, а минимальный код
