Альтернативная реализация Wire для работы с TWI/I2C устройствами с собственными оптимизациями от разработчика Boseji
Архитектура: AVR
Библиотеки, совместимые с этой платформой, а также универсальные библиотеки для любых Arduino-совместимых плат.
Отслеживание времени работы устройства без переполнения millis() с поддержкой счёта на сотни миллионов лет
Управление зарядным устройством BQ25186 для LiPo и LiFePO4 батарей через I²C с контролем токов, напряжений и статуса зарядки
Управление зарядным контроллером BQ25672 с доступом к регистрам, статусу и измерениям напряжений и токов
Упрощенное программирование робота Robby на базе BRAINZY Board через Arduino IDE
Работа с модулями реального времени DS3231, DS1307 и PCF8563 через I2C или системными часами микроконтроллера с форматированием даты и времени
HTTP-клиент для Arduino Yun с поддержкой GET, POST, PUT, DELETE и базовой аутентификацией
Виртуальная машина и протокол для интерактивного программирования микроконтроллеров через Forth-подобный язык без перепрошивки
Работа с сенсорными чипами BS8116 и BS8112 по I2C протоколу для контроля до 16 емкостных кнопок
Обработка данных датчика BME680: температура, влажность, давление и индекс качества воздуха с коррекцией под реальные условия
Обработка нажатий кнопок: одиночные клики, длительные удержания и множественные быстрые нажатия
Управление мощными DC-моторами до 43 А через двухканальный H-мост BTS7960 с регулировкой скорости и направления вращения
Буферизованная трассировка сообщений для отладки без влияния на синхронизацию времязависимого кода
Извлекает дату и время компиляции из встроенных констант компилятора и предоставляет их в виде готовых переменных
Распознавание одиночных, двойных и длительных нажатий кнопок с назначением callback-функций для каждого типа события
Отслеживание состояния кнопки с различием между нажатием, отпусканием и удержанием
Распознавание типов нажатий кнопки: короткие клики, длительные нажатия, двойные клики с подсчётом и измерением времени
Управление одиночными кнопками и группами через распознавание паттернов нажатия с встроенным дебаунсингом
Распознавание одной кнопкой простых нажатий, двойных и тройных кликов, длительных удержаний для назначения нескольких действий
Работа с матричными клавиатурами, подключёнными напрямую или через I2C расширители вроде MCP23017, с поддержкой событий клика и длинного нажатия
Обработка кнопок через прерывания микроконтроллера с встроенной функцией toggle
Развязка дребезга кнопок, подключённых к земле, без использования прерываний
Детектор движения на базе электромагнитных помех от электросети — нужен только провод и ADC микроконтроллера
Управление пассивным пищащим динамиком с PWM, эффектами, мелодиями и командами через UART
Управление платой BuzzKill Sound Effects для генерации звуков и музыкальных эффектов через SPI или I2C
Легковесный буфер с move-семантикой для безкопийной передачи данных между функциями и эффективной работы с последовательными протоколами
Численное интегрирование и дифференцирование для микроконтроллеров с методом Симпсона и автоподбором коэффициентов PID
Калибровка скорости DC моторов путём перемасштабирования значений для компенсации различий в мощности и мёртвых зон
Унифицированный интерфейс для работы с функциями, методами и лямбда-выражениями в качестве обратных вызовов
Асинхронная обработка нажатий кнопки без блокировок, с распознаванием коротких, долгих и двойных кликов через callback-функции