• Stars
    star
    298
  • Rank 139,663 (Top 3 %)
  • Language
    C
  • License
    MIT License
  • Created almost 3 years ago
  • Updated 5 months ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

Простой конструктор веб интерфейса для esp8266 и ESP32

latest Foo Foo Foo

Foo

GyverPortal

v3.6.6 (23.04.2023)

Простой конструктор веб интерфейсов для ESP8266 и ESP32 img

🔥🔥🔥
Обратите внимание на новую библиотеку GyverHUB - это как GyverPortal, только сильно проще, удобнее, работает через Интернет и интегрируется с умным домом!
🔥🔥🔥

Совместимость

ЕСЛИ НЕ КОМПИЛИТСЯ НА ESP32 - ОБНОВИ ЯДРО, УЖЕ ПОРА. ДА, ВОТ НА ЭТО

  • esp8266 (SDK v2.7+)
  • esp32 (SDK v2+)

Документация

Теперь находится в Wiki репозитория. Документация на данный момент неполная, на стадии написания!

English docs

Идеи/проблемы/актуальная версия

Известные баги

Некоторые элементы могут некрасиво отображаться на Firefox, т.к. сделаны под Chrome, Safari, Edge, Opera

Разработка на хосте

Примеры можно скомпилировать и выполнить на хосте, запустив ../../onhost [-h] из любого каталога примеров.

Возможности

demo

Универсальный конструктор веб интерфейсов для ESP8266 и ESP32:

  • Позволяет быстро создать вебморду для управления и настройки электронного девайса
  • Работает на базе стандартных библиотек esp, ничего дополнительно устанавливать не нужно
  • Создание многостраничных и динамических веб-интерфейсов в несколько строк кода прямо в скетче
  • Не требует знания HTML, CSS и JavaScript: все стили и скрипты уже заложены в библиотеке
  • Написано на чистом HTML + CSS + JS, никаких сторонних веб-библиотек
  • Не требует подключения к Интернет
  • Не требует загрузки файлов в SPIFFS (но стили и скрипты можно загружать оттуда для экономии памяти)
  • Относительно стильный дизайн, светлая и тёмная темы + шаблон "панель управления" с выпадающим меню, кастомизация компонентов (размер, цвет)
  • Встроенные модули:
    • Взаимодействие с браузером: получение и отправка значений на компонентах, индикация "плата оффлайн", изменение названия страницы
    • Несколько десятков стандартных компонентов, инструментов вёрстки и навигации (кнопки, иконки, графики, слайдеры, таблицы, вкладки...)
    • Автоматизированное скачивание файлов из SPIFFS + кеширование
    • Автоматизированная загрузка файлов в SPIFFS
    • Блок вывода системной информации и файловый менеджер (SD, LittleFS, SPIFFS...)
    • HTML Canvas API с возможностью рисовать из скетча + API рисования как в Processing
    • Часы реального времени (на основе времени браузера)
    • Автоматический опрос и обновление переменных из списка
    • Авторизация на сервере по логину-паролю
    • DNS сервер (для работы как точка доступа)
    • mDNS (для открытия интерфейса по заданному адресу вместо IP)
    • OTA обновление прошивки и памяти через браузер или curl (возможна защита паролем)

demo

Содержание

Установка

  • Библиотеку можно найти по названию GyverPortal и установить через менеджер библиотек в:
    • Arduino IDE
    • Arduino IDE v2
    • PlatformIO
  • Скачать библиотеку .zip архивом для ручной установки:
    • Распаковать и положить в C:\Program Files (x86)\Arduino\libraries (Windows x64)
    • Распаковать и положить в C:\Program Files\Arduino\libraries (Windows x32)
    • Распаковать и положить в Документы/Arduino/libraries/
    • (Arduino IDE) автоматическая установка из .zip: Скетч/Подключить библиотеку/Добавить .ZIP библиотеку… и указать скачанный архив
  • Читай более подробную инструкцию по установке библиотек здесь

Обновление

  • Рекомендую всегда обновлять библиотеку: в новых версиях исправляются ошибки и баги, а также проводится оптимизация и добавляются новые фичи
  • Через менеджер библиотек IDE: найти библиотеку как при установке и нажать "Обновить"
  • Вручную: удалить папку со старой версией, а затем положить на её место новую. "Замену" делать нельзя: иногда в новых версиях удаляются файлы, которые останутся при замене и могут привести к ошибкам!
  • При использовании файлов стилей и скриптов в SPIFFS их тоже нужно заменить на новые
  • После обновления нужно почистить кэш браузера, для Chrome достаточно нажать Ctrl+F5 на загруженной странице портала

Версии

Старые

v1.1

  • улучшил графики и стили

v1.2

  • Блок NUMBER теперь тип number
  • Добавил большое текстовое поле AREA
  • Добавил GPunix
  • Улучшил парсинг
  • Добавил BUTTON_MINI
  • Кнопки могут передавать данные с других компонентов (кроме AREA и чекбоксов)
  • Добавил PLOT_STOCK - статический график с масштабом
  • Добавил AJAX_PLOT_DARK
  • Изменён синтаксис у старых графиков
  • Фичи GPaddUnix и GPaddInt для графиков
  • Убрал default тему
  • Подкрутил стили
  • Добавил окно лога AREA_LOG и функцию лога в целом

v1.3

  • переделал GPunix, мелкие фиксы, для списков можно использовать PSTR

v1.4

  • мелкие фиксы, клик по COLOR теперь отправляет цвет

v1.5

  • добавил блок "слайдер+подпись"

v1.5.1

  • мелкий фикс копирования строк

v1.5.2

  • добавлен meta charset="utf-8", английский README (спасибо VerZsuT)

v1.6

  • добавлены инструменты для работы c цветом. Добавил answer() для даты, времени и цвета

v1.7

  • поддержка ESP32

v2.0:

  • Большое обновление! Логика работы чуть изменена, обнови свои скетчи!
  • Много оптимизации/облегчения/ускорения
  • Полная поддержка ESP32
  • Переделана логика опроса действий (более правильно и оптимально + работает на ESP32) с сохранением легаси
  • Убран DateTimeP (не используется в библиотеке) и вынес отдельно в библиотеку DatePack
  • Переделан и облегчен модуль лога (log)
  • Добавлен MDNS, чтобы не искать IP платы в мониторе порта (см. доку)
  • Автоопределение режима работы WiFi. Переделан start() с сохранением легаси (см. доку)
  • Упрощён билдер, строку создавать и передавать не нужно (см. доку)
  • Объект билдера теперь называется GP (вместо add) с сохранением легаси
  • Пофикшены варнинги
  • Добавлены удобства для работы с цветом GPcolor, датой GPdate и временем GPtime
  • Удалены старые функции преобразования цвета и даты-времени (см. доку)
  • Портал теперь возвращает цвет в формате GPcolor, автообновление переменных тоже работает с GPcolor
  • Все примеры протестированы на esp8266 и esp32

v2.1

  • Вернул функции root() и uri() для удобства создания многостраничности
  • Добавлен пример организации многостраничности
  • Добавлена кнопка-ссылка BUTTON_LINK
  • Добавлена авторизация по логину-паролю (см. доку)
  • Добавлено OTA обновление прошивки из браузера, в т.ч. с паролем (см. доку)

v3.0: Очень много всего нового

  • Огромное спасибо DenysChuhlib и DAK85 за идеи и наработки!
  • Добавлен "объектный" режим работы, в котором компоненты удобнее конфигурируются, автоматически получают новые значения и код программы становится сильно компактнее
  • Полностью переписан механизм конструктора, сборка занимает во много раз меньше памяти в SRAM за счёт отправки страницы частями
  • Переделан механизм добавления кастомного кода на страницу
  • Аргументы конструктора теперь принимают const String& - можно передавать строки, const строки, F macro строки
  • Переделаны строковые утилиты
  • Полностью переделан слайдер
  • Убран вариант слайдера с текстом и компонент LABEL_MINI
  • Добавлена возможность задания ширины некоторым компонентам
  • У некоторых компонентов появилась опция "только чтение"
  • Редизайн светодиодов LED GREEN/RED, добавлен LED (красно-зелёный)
  • Добавлен компонент BOX_BEGIN/BOX_END, позволяющий удобно собирать компоненты в группы с нужным размером и выравниванием
  • Добавлен блок LABEL_BLOCK для выделения текста
  • Внутренний AJAX_CLICKS заменён на JS_TOP
  • Переделан основной контейнер страницы для удобства кастомизации под любую ширину интерфейса
  • Добавлен элемент навигации по динамическим вкладкам NAV_TABS (+ NAV_BLOCK_BEGIN и NAV_BLOCK_END)
  • Добавлен элемент навигации с кнопками-ссылками NAV_TABS_LINKS
  • Добавлена поддержка FontAwesome иконок для кнопок и панели навигации https://fontawesome.com/v4/icons/
  • Пофикшена бага при использовании старого сценария опроса действий
  • AJAX_UPDATE переименован в UPDATE с сохранением легаси
  • Добавлен блок FILE_UPLOAD для загрузки файлов на сервер
  • Добавлен удобный механизм скачивания файлов из SPIFFS памяти с поддержкой 33 типов файлов
  • Добавлены блоки для вывода изображений, видео и текстовых файлов из SPIFFS
  • Примеры переименованы и сгруппированы по смыслу, добавлены новые примеры
  • Добавлен механизм request
  • Подключаемым функциям добавлены варианты с адресом на GyverPortal
  • Добавлены более удобные варианты компонента SELECT и способы его опроса (getSelectedIdx)
  • Механизм update теперь работает с SELECT блоками
  • Добавлен шаблон для удобного создания кастомных блоков
  • Исправлена работа кликов и обновлений на подстраницах
  • Добавлена мини кнопка-ссылка + кнопки для скачивания файлов
  • Добавлен оффлайн-режим для графиков (не нужно подключение к Интернет)
  • Добавлен блок для добавления стилей из spiffs
  • SLIDER теперь умеет работать с float, добавлен NUMBER_F для float
  • Добавлен элемент SPINNER
  • AREA теперь отсылает сигнал click
  • Добавлены макросы для удобной сборки блоков
  • И прочее прочее

v3.1

  • пофикшен getBool()

v3.2

  • На этот раз полностью пофикшен getBool()/copyBool() для SWITCH/CHECK
  • Полностью переделан механизм update() - теперь он работает в несколько раз быстрее и обновляет одновременно все указанные компоненты!

v3.3 TABLE UPDATE

  • Улучшена работа парсеров
  • Улучшены встроенные JS скрипты
  • Префикс макросов сокращён с GP_MAKE_ до M_, подсветка синтаксиса заменена на жирную
  • GP_EDGES заменён на GP_JUSTIFY, у SPAN выравнивание теперь тоже задаётся через GPalign
  • Добавлен url encode, в TEXT теперь можно вставлять текст со "опасными" символами (+#<>` итд)
  • Компоненту SWITCH теперь можно задавать цвет
  • click/update/copy Int теперь работает со всеми целочисленными типами (int, byte, long...)
  • Добавлен FORM_SEND и FORM_SEND_MINI - новый вариант отправки формы без редиректа
  • Добавлен RELOAD_CLICK для перезагрузки страницы по клику по указанным компонентам
  • Добавлены стили "отключенным" компонентам
  • Добавлен SLIDER_C, отправляющий значения в процессе изменения положения
  • Нажатие и отпускание кнопки теперь работает со смартфона (тачскрина)
  • Переделан стиль SPINNER, теперь он более компактный
  • Добавлены таблицы (TABLE_BEGIN, TABLE_END, TD, TR), макросы (GP_MAKE_TABLE, GP_MAKE_TD, GP_MAKE_TR, GP_ALS)
  • Ширину лога можно настраивать
  • Для TEXT добавлены атрибуты "паттерн" и максимальная длина ввода. Изменился последний аргумент в функции
  • Добавлен SUBMIT_MINI
  • Добавлен модуль реального локального времени (запрос с браузера), функции getSystemDate(), getSystemTime(), а также getUnix()
  • Улучшено ОТА обновление, можно шить через curl
  • Чуть оптимизирован механизм Update, также сам вырезает лишние пробелы в списке
  • FOLDER_UPLOAD() теперь работает на ESP32
  • Добавлен FILE_MANAGER() - вывод списка файлов из памяти с кнопками удалить, а также обработчики deleteFile(), deleteAuto(), deletePath()
  • Добавлены компоненты PLAIN() и BOLD() для вывода текста
  • Добавлен компонент SYSTEM_INFO() - вывод таблицы с системной информацией
  • Добавлен "глаз" для поля ввода пароля
  • Добавлен цвет GRAY_B
  • Блоки BLOCK... теперь создаются одним компонентом. У THIN блока добавилась настройка цвета

v3.4 UI UPDATE

  • Добавлено
    • HTML Canvas (рисование в браузере) + обновление из скетча + Processing API
    • Разметка страницы в стиле панели управления с боковым меню, компоненты UI_BEGIN, UI_MENU, UI_BODY, UI_END, UI_LINK
    • UPDATE_CLICK() - вызывает update у указанных компонентов при клике по указанным компонентам
    • OTA.error() для вывода текста ошибки в любое место на странице
    • EVAL() выполнение отправленного в update js кода
    • GyverPortal::setFS()
    • Выбор цвета для иконок, FILE_UPLOAD, FOLDER_UPLOAD, OTA_FIRMWARE, OTA_FILESYSTEM, TITLE, LABEL, SPAN, PLAIN, BOLD и HR
    • Макс. ширина для GRID
    • JS_BEGIN() и JS_END()
    • В BUILD_BEGIN_FILE() и BUILD_BEGIN() можно передать тему оформления
    • PAGE_TITLE() - смена имени вкладки в браузере, в т.ч. по update
    • Цвет GP_WHITE
    • Иконки-кнопки ICON_BUTTON() и ICON_FILE_BUTTON()
    • ONLINE_CHECK() - отображение состояния соединения с esp
    • Подписи к осям AJAX_PLOT
    • GyverPortal::caching(bool), GyverPortal::clearCache()
    • Обработка удержания кнопок, отдельный обработчик hold()
    • Поддержка ESP32 CAM, вывод стрима с камеры (CamStream.h + GP.CAM_STREAM)
  • Исправлено
    • Мелкие баги
    • HINT() для BUTTON, SWITCH и UPLOAD
    • Потенциальный баг в механизме update
    • ICON_FILE()
  • Улучшено
    • Оптимизация стилей и скриптов
    • COLOR теперь можно парсить как int
    • Значительно ускорена (кеширование) загрузка страницы без скриптов/стилей в spiffs
    • При обновлении библиотеки не нужно чистить кеш браузера
    • FILE_MANAGER(): удаление файлов теперь не меняет url в браузере + добавлены кнопки скачать и переименовать + выбор директории
    • Улучшена обработка отпускания кнопки
    • SPINNER(): удержание кнопок, настройка скорости в GP.setSpinnerPeriod()
    • Убран перенос строки в последней строке в LOG
    • Актуализированы objects, добавлен пример
  • Изменено
    • Логика работы всплывающих окон, УБРАН АРГУМЕНТ ПЕРИОД
    • SPINNER(): УБРАНА ШИРИНА, сделана автоширина, значение по центру
    • Автоматическое скачивание/загрузка/удаление/переименование ТЕПЕРЬ ВКЛЮЧЕНО ПО УМОЛЧАНИЮ!
    • Отсортированы примеры, portal переименован в ui для краткости
    • clickUp и clickDown вынесены в обработчик hold()
    • Убран устаревший код (до v3)
    • Убраны суффиксы Obj у недокументированных функций
    • У CHECK и SWITCH можно выбрать цвет, ПОРЯДОК АРГУМЕНТОВ ИЗМЕНЁН
    • Изменён порядок аргументов у GPlistIdx, сделан более логичным

v3.5 CHRISTMAS UPDATE

  • Добавлено
    • Отображение границ таблицы TABLE_BORDER()
    • Опасные copy- и click-парсеры (для опроса в условии)
    • Ширина для AREA
    • Всплывающее окно с ошибкой, если "клик" не дошёл до сервера
    • Можно получить логин и пароль, которые вводятся при авторизации, login() и pass()
    • Настройка размера/толщины текста и переноса для текстовых подписей TITLE, LABEL, LABEL_BLOCK. Подписи SPAN/BOLD/PLAIN больше не нужны
    • encodeDMY для GPdate (день.месяц.год)
    • Цвет GP_YELLOW_B
    • Настройка цвета для LED
    • RELOAD_CLICK работает с popup (ALERT, PROMPT, CONFIRM)
    • Проверка подключен ли клиент, функции online() и onlineTimeout()
    • У веб-лога добавлены кнопки для очистки и остановки прокрутки
    • Компонент RADIO для списков выбора
  • Пофикшено
    • Глаз в PASSWORD() поставлен на место
    • Баг с макросом M_TR10
    • SPINNER() повинуется выравниванию
    • Таблица SYSTEM_INFO вернулась в компактный вид
    • HINT (сломался в v3.4)
    • Невероятный баг с вечной загрузкой CHECK() и проблемой с опросом его значения с формы
  • Улучшено
    • Оптимизированы скрипты
    • Автоматическое удаление пробелов в списке UPDATE()
    • Ширину окна CAM_STREAM() и cam_stream_window можно задать стрингой
    • Дизайн таблички FILE_MANAGER
    • Переделан механизм перезагрузки страницы, теперь работает гораздо быстрее и стабильнее
    • UPDATE запрашивает обновления только когда окно браузера активно
    • UPDATE при пропадании связи сигнализирует всплывающим баннером
    • Скрыты пустые ячейки у таблицы с заданными ширинами
  • Изменено
    • В SPINNER() вернулась ширина предпоследним аргументом, её установка отключает автоширину
    • ONLINE_CHECK() теперь выдаёт всплывающий баннер вместо иконки в названии страницы
    • Убран setReloadTimeout(), механизм улучшен, задаётся общий таймаут в setTimeout()
    • Дизайн LABEL_BLOCK, чтобы отличался от кнопок
    • Поле пароля с "глазом" теперь вызывается компонентом PASS_EYE

v3.5.2 FIX

  • Добавлено
    • Объект RADIO
  • Пофикшено
    • Вернул автоматическую ширину полям ввода текста
    • Принудительное отображение секунд в TIME
    • Ошибка компиляции esp32
    • Пример WiFilogin
  • Улучшено
    • Отключен зум на мобильных устройствах

v3.5.3 FIX

  • Пофикшено
    • Критический баг в GPfileType и отправке файла на 8266
    • Не работало удаление через менеджер файлов на esp32
  • Улучшено
    • Кнопки внутри формы не приводят к сабмиту (багофича html)

v3.6 MINOR

  • Добавлено
    • Опциональное выравнивание по верху у BOX
    • Добавлен тип блока GP_DIV_RAW - без отступов
  • Улучшено
    • Декодеры даты и времени
    • Парсеры перенесены в отдельный файл для нужд других библиотек

v3.6.1

  • Исправлена ошибка компиляции parsers в IDE v2
  • Добавлено больше возможностей отладки для OTA

v3.6.2

  • Исправлены ошибки компиляции:
    • В Arduino IDE v2 для ESP32
    • Для ESP8266 версии SDK ниже 3.1

v3.6.3

  • Парсер удержания вынесен в отдельный файл для нужд других библиотек

v3.6.4

  • Добавлено
    • system info в графе uptime выводит также дни
    • GPlog настройка autoClear(bool), умолч. включена, можно выключить чтобы лог сохранялся
  • Пофикшено
    • Автоматическое открытие портала при подключении к ESP в режиме AP не работало на некоторых устройствах
  • Улучшено
    • Все copyStr() - если указана длина, теперь строка записывается, даже если входящая строка длиннее
    • GPlog снова работает как кольцевой буфер

v3.6.5

  • Исправлены ошибки компиляции под ESP32 2.0.8
  • Исправлены warning на других версиях

v3.6.6

  • Исправлена критическая ошибка из 3.6.5 ;)

Баги и обратная связь

При нахождении багов создавайте Issue, а лучше сразу пишите на почту [email protected] Библиотека открыта для доработки и ваших Pull Request'ов!

При сообщении о багах или некорректной работе библиотеки нужно обязательно указывать:

  • Версия библиотеки
  • Какой используется МК
  • Версия SDK (для ESP)
  • Версия Arduino IDE
  • Корректно ли работают ли встроенные примеры, в которых используются функции и конструкции, приводящие к багу в вашем коде
  • Какой код загружался, какая работа от него ожидалась и как он работает в реальности
  • В идеале приложить минимальный код, в котором наблюдается баг. Не полотно из тысячи строк, а минимальный код

More Repositories

1

GyverHub

Панель управления для ESP8266, ESP32 и других Arduino. Конструктор интерфейса. Интеграция в умный дом. Esp8266, esp32 and Arduino Dashboard library
C
297
star
2

FastBot

Многофункциональная быстрая библиотека для Телеграм бота на esp8266/esp32
C++
183
star
3

EncButton

Лёгкая и очень функциональная библиотека для энкодера с кнопкой, энкодера или кнопки с Arduino
C++
133
star
4

GyverOLED

Лёгкая и быстрая библиотека для OLED дисплея
C++
119
star
5

EasyHID

Библиотека программного USB клавиатуры и мыши для Arduino Nano/UNO/Mega и прочих
C
112
star
6

QuickCharge

Библиотека для управления адаптерами с поддержкой технологии QuickCharge 2.0/3.0
C++
45
star
7

microDS18B20

Легкая и удобная в обращении библиотека для работы с 1-Wire термометрами DS18B20
C++
45
star
8

GyverPID

Библиотека PID регулятора для Arduino
C++
42
star
9

GyverStepper

Производительная библиотека для управления шаговыми моторами с Arduino. Плавное движение. Многоосевое планирование траектории
C++
39
star
10

GyverOS

Библиотека лёгкого диспетчера задач для Arduino
C++
38
star
11

TimerMs

Многофункциональный программный таймер на системном таймере millis() для Arduino
C++
37
star
12

microLED

microLED - ультра-лёгкая библиотека для работы с адресной лентой/матрицей
C++
33
star
13

FastBot2

Очень быстрая и лёгкая библиотека Telegram бота для Arduino, ESP8266, ESP32
C++
32
star
14

Gyver433

Библиотека для радиомодулей 433 МГц и Arduino
C++
28
star
15

GyverLibs

27
star
16

SimplePortal

Простой менеджер WiFi для esp8266 для задания логина-пароля WiFi и режима работы
C++
26
star
17

mString

РЕЗКАЯ КАК ПОНОС И ЛЁГКАЯ КАК ПЁРЫШКО ЗАМЕНА STRING
C++
25
star
18

EEManager

Библиотека для удобной работы с EEPROM и уменьшения износа
C++
24
star
19

GRGB

Библиотека для управления RGB светодиодами и лентами для Arduino. Облегчённая версия библиотеки GyverRGB
C++
23
star
20

GyverNTP

Библиотека для получения точного времени с NTP сервера для esp8266/esp32
C++
22
star
21

GyverButton

Библиотека для многофункциональной отработки нажатия кнопки
C++
22
star
22

GyverTM1637

Бибилотека для 7 сегментного дисплея на чипе TM1637 с кучей приколюх
C++
22
star
23

SunPosition

Библиотека для определения положения солнца по геолокации и времени для Arduino
C
22
star
24

GyverMAX7219

Cамая резкая библиотека для матриц MAX7219 на диком западе
C++
21
star
25

GyverFilters

Библиотека с некоторыми удобными фильтрами для Arduino
C++
21
star
26

microDS3231

Лёгкая библиотека для работы с RTC DS3231 для Arduino
C++
20
star
27

ServoSmooth

Библиотека для плавного управления сервоприводами с Arduino
C++
20
star
28

GParser

Простой и быстрый парсер строк в отдельные подстроки и числа для Arduino
C++
20
star
29

GyverBME280

Лёгкая библиотека для работы с BME280 по I2C для Arduino
C++
19
star
30

GyverNTC

Библиотека для работы с NTC термисторами по закону Стейнхарта-Харта
C++
19
star
31

GyverPWM

Библиотека для расширенной генерации ШИМ на ATmega328 (Arduino UNO/Nano/Pro Mini...)
C++
18
star
32

GyverBus

Библиотека для общения по протоколу GBUS
C++
17
star
33

GyverPower

GyverPower - библиотека для управления энергопотреблением МК AVR
C++
16
star
34

GyverTimers

Настройка и контроль прерываний по аппаратным таймерам ATmega328p, ATmega2560
C++
16
star
35

GyverGFX

Лёгкая библиотека двухмерной графики для дисплеев и матриц
C++
16
star
36

GyverINA

Лёгкая библиотека для INA219 и INA226
C++
16
star
37

NecDecoder

Лёгкая библиотека для декодирования ИК протокола NEC (Японский вариант)
C++
14
star
38

UnixTime

Конвертер unix time stamp в дату и время и наоборот для Arduino
C++
14
star
39

Tachometer

Библиотека тахометра для Arduino без привязки к железу
C++
14
star
40

VolAnalyzer

Библиотека для амплитудного анализа звука на Arduino
C++
13
star
41

GyverMotor

Библиотека для удобного управления коллекторными моторами через драйвер
C++
13
star
42

VirtualButton

Библиотека с логикой обработки кнопки (виртуальная кнопка) для Arduino
C++
13
star
43

GyverIO

Быстрые функции для работы с пинами AVR, ESP8266, ESP32
C++
13
star
44

AccelMotor

Библиотека для расширенного управления и стабилизации мотора с энкодером для Arduino
C++
13
star
45

Hamming

Библиотека для упаковки и распаковки данных по алгоритму Хэмминга (избыточные данные для восстановления)
C++
13
star
46

FFT_C

Библиотека преобразования Фурье на С (для esp8266)
C
12
star
47

Settings

Простой конструктор вебморды для настроек esp8266/esp32
C
12
star
48

GyverHC595

Библиотека для управления каскадом сдвиговых регистров 74HC595 для Arduino
C++
11
star
49

GyverUART

Лёгкая библиотека для работы с последовательным портом
C++
11
star
50

AsyncStream

Библиотека для асинхронного чтения объектов Stream (Serial итд) для Arduino
C++
11
star
51

GSON

Парсер и сборщик данных в формате JSON для Arduino
C++
11
star
52

BitPack

Библиотека для упаковки битовых флагов в байтовый массив (экономия места)
C++
11
star
53

Forecaster

Библиотека для определения прогноза погоды по давлению для Arduino
C++
11
star
54

GyverHX711

Библиотека работы с датчиками (АЦП) HX711 для Arduino
C++
10
star
55

GyverTimer

Полноценный таймер на базе системных millis() / micros()
C++
10
star
56

GyverEncoder

Библиотека для расширенной работы с энкодером и Arduino
C++
10
star
57

microWire

Лёгкая библиотека со стандартным набором инструментов для работы с аппаратным I2C
C++
10
star
58

GyverJoy

Библиотека для аналогового джойстика Arduino
C++
10
star
59

StringUtils

Набор инструментов для работы со строками
C++
10
star
60

FileData

Замена EEPROM для ESP8266/32 для хранения любых данных в файлах
C++
10
star
61

Random16

Библиотека для быстрой генерации 16 бит случайных чисел
C++
9
star
62

GyverMAX6675

Лёгкая библиотека для драйвера термопары MAX6675
C++
9
star
63

GyverDimmer

Библиотека для управления симисторным диммером с Arduino
C++
9
star
64

MicroUART

Лёгкая реализация UART для ATmega328 и подобных из этого поколения
C++
9
star
65

SoftServo

Библиотека для программного управления Servo (на базе millis/micros)
C++
9
star
66

GyverFIFO

Лёгкий универсальный кольцевой буфер для Arduino
C++
8
star
67

AnalogKey

Библиотека для работы с аналоговой клавиатурой для Arduino
C++
8
star
68

GyverHub-projects

База проектов на GyverHub
8
star
69

SevenSegmentsDisp

Набор быстрых и удобных библиотек для работы с семисегментными дисплеями совместно с Arduino
C++
8
star
70

CharDisplay

Графический движок на символах: полноценное рисование, индикаторы загрузки, графики для Arduino
C++
8
star
71

ProcessingPlotter

Простая библиотека для вывода графиков на Processing
Processing
7
star
72

GyverLBUF

Линейный буфер для Arduino
C++
7
star
73

Psychrometer

Библиотека для определения влажности по сухому и мокрому термометру для Arduino
C++
7
star
74

Approxy

Линейный аппроксиматор
C++
7
star
75

Stamp

Библиотека для хранения и манипуляции со временем
C++
7
star
76

buildTime

Парсинг и получение даты и времени компиляции из __DATE__ и __TIME__ для Arduino
C
7
star
77

EspSleep

Библиотека позволяет esp8266 уходить в сон на любой период (до ~585 миллиардов лет)
C++
7
star
78

directADC

Библиотека для расширенного ручного управления АЦП и компаратором ATmega328
C++
7
star
79

GyverRelay

Библиотека классического релейного регулятора для Arduino
C++
7
star
80

GyverWDT

Библиотека для управления WDT на AVR ATmega328p/32U4/2560 & ATtiny85/84/167
C++
7
star
81

GyverSegment

Самая мощная библиотека для работы с дисплеями на 7-сегментных индикаторах
C++
7
star
82

GyverTransfer

Библиотека для передачи данных по интерфейсу GyverTransfer (GT). Передача для Arduino по одному проводу
C++
7
star
83

PWMrelay

Библиотека для генерации низкочастотного ШИМ сигнала для реле (для ПИД регуляторов и проч.)
C++
6
star
84

directTimers

Библиотека для расширенного ручного управления таймерами ATMega2560, ATMega328, ATMega32u4
C++
6
star
85

OVS

Библиотека для повышения разрядности измерений Arduino (оверсэмплинг)
C++
6
star
86

fixed

Реализация вычислений с фиксированной точкой для Arduino
C++
5
star
87

GyverHTU21D

Лёгкая библиотека для датчика температуры и влажности HTU21D
C++
5
star
88

CRT

Библиотека с набором функций для CRT коррекции светодиодов для Arduino
C
5
star
89

Clap

Библиотека для распознавания хлопков в микрофон для Arduino
C++
4
star
90

gyverlibs.github.io

HTML
4
star
91

GyverDB

Простая база данных для Arduino
C++
4
star
92

TimeRandom

Библиотека для генерации набора случайных чисел с привязкой ко времени
C++
4
star
93

GyverDS18

Лёгкая библиотека для термометров Dallas DS18b20, обновлённая и более удобная версия библиотеки microDS18B20
C++
4
star
94

GyverBlinker

Библиотека для мигания светодиодом и планирования событий по таймеру
C++
4
star
95

GyverHub-web

Веб-приложение платформы GyverHub
HTML
4
star
96

Pairs

Лёгкая библиотека для хранения данных в текстовом виде в формате ключ:значение
C++
4
star
97

GyverBeeper

Библиотека для генерации писка по таймеру
C++
4
star
98

GTL

Набор шаблонных инструментов
C++
3
star
99

GyverHub-example

Образец репозитория с проектом
C++
3
star
100

GyverHub-plugins

База виджетов GyverHub
JavaScript
3
star