esp-nimble-cpp Projects

14 projects using esp-nimble-cpp

esp-nimble-cpp is a high-performance, thread-safe C++ wrapper for the Apache NimBLE Bluetooth Low Energy stack, specifically optimized for the ESP32 series. It provides a resource-efficient alternative to the default Bluedroid-based library, significantly reducing RAM and Flash consumption while maintaining API compatibility with popular ESP32 BLE libraries.

Gaggimate

Gaggimate

Gaggimate is an ESP32-based smart control upgrade for Gaggia espresso machines, providing a custom UI for temperature monitoring and pump control. It leverages the FreeRTOS-based ESP32 platform using LVGL and TFT_eSPI for its display interface, and NimBLE-Arduino for wireless connectivity.

freertos h2zero-esp-nimble-cpplvgltft-espi
USB Keyboard and Mouse Bluetooth Adapter (ESP32)

USB Keyboard and Mouse Bluetooth Adapter (ESP32)

This project transforms an ESP32 into a bridge between wired USB peripherals and Bluetooth-enabled hosts. By combining software-defined USB host capabilities with the NimBLE stack, it allows standard USB keyboards and mice to function as wireless BLE devices across multiple operating systems.

freertos h2zero-esp-nimble-cppnimble
NimBLE OTA

NimBLE OTA

NimBLE OTA is a specialized library for ESP32 devices that enables firmware updates over Bluetooth Low Energy (BLE). It leverages the memory-efficient NimBLE stack to provide a robust OTA service, featuring secure authentication, progress tracking, and compatibility with both Python-based and web-based upload tools.

freertos h2zero-esp-nimble-cppnimble
OBD2 to MQTT for Home Assistant

OBD2 to MQTT for Home Assistant

An ESP32-based firmware that extracts vehicle data via an ELM327 OBD2 adapter and transmits it to an MQTT broker over cellular networks. Designed for Home Assistant integration, it supports a wide range of LilyGO T-Call and Waveshare modules with integrated GSM/LTE and GPS capabilities.

freertos littlefsnimbleh2zero-esp-nimble-cpp
198
Bruce Firmware

Bruce Firmware

A versatile ESP32-based firmware designed for offensive security and Red Team operations. It supports a wide range of hardware including M5Stack and Lilygo devices, providing features for WiFi attacks, BLE manipulation, RF/RFID interaction, and a built-in JavaScript interpreter.

freertos littlefsh2zero-esp-nimble-cpp
4,854

CockpitOS

A high-performance ESP32 firmware for DCS World cockpit panels using the DCS-BIOS protocol. It supports native USB HID, WiFi, and Serial transports while providing drivers for various displays, LEDs, and input devices with a focus on static memory allocation and non-blocking I/O.

freertos h2zero-esp-nimble-cpp
12

NogasmLink

An intelligent arousal management system for ESP32 that connects to Lovense devices via Bluetooth LE. It uses a pressure sensor for automated edging control and features a real-time web dashboard for monitoring and configuration.

freertos h2zero-esp-nimble-cpplittlefsspiffs
13

E-Paper ESP32-C6 Firmware

Firmware for an ESP32-C6 based E-Paper display device featuring BLE provisioning, AWS IoT connectivity, and OTA updates. It targets the Spectra 6 7.3-inch display and integrates motion sensing via the KXTJ3-1057 accelerometer.

freertos h2zero-esp-nimble-cppspiffsu8g2
24
ESP USB BLE HID Bridge

ESP USB BLE HID Bridge

A firmware project for ESP32-S3 that acts as a USB-to-BLE HID bridge, allowing Bluetooth controllers like the Xbox Wireless Controller to be used with the Nintendo Switch. It utilizes ESP-IDF, FreeRTOS, and the TinyUSB stack to emulate a Nintendo Switch Pro Controller over USB while acting as a BLE GATT client.

freertos h2zero-esp-nimble-cpplittlefslvgl
11

MeshTNC

A multi-platform LoRa Terminal Node Controller (TNC) firmware supporting ESP32, nRF52, RP2040, and STM32. It provides a serial CLI for raw LoRa interaction, BLE packet sniffing, and a KISS-TNC mode for APRS, AX.25, and IP-over-LoRa networking.

freertos h2zero-esp-nimble-cpplittlefsnimble
89

Smart Flask Thermos with Round Display and ESP32-C3

An ESP32-C3 based smart thermos that measures liquid temperature using an NTC thermistor and displays it on a 1.28-inch round capacitive touch screen. The project utilizes the LVGL library for its user interface and NimBLE for Bluetooth connectivity.

freertos lvglh2zero-esp-nimble-cpp
15

lunokIoTWatch Firmware for LilyGo TWatch 2020

A comprehensive open-source firmware for the LilyGo TWatch 2020 series based on the ESP32 and Arduino framework. It features a custom UI engine, Lua scripting, BLE/WiFi connectivity, and integration with Gadgetbridge for smartphone notifications.

freertos h2zero-esp-nimble-cppsqlitetft-espilittlefs
50
OMOTE - Open Universal Remote

OMOTE - Open Universal Remote

An ESP32-based open-source universal remote firmware utilizing the Arduino framework and LVGL for its graphical user interface. It supports device control via Infrared, Bluetooth Low Energy keyboard emulation, and MQTT for smart home integration, featuring a cross-platform simulator for desktop-based UI development.

freertos lvglh2zero-esp-nimble-cpp
1,687

Marauder Centauri

A portable suite of WiFi and Bluetooth offensive and defensive tools built for the ESP32 microcontroller. It enables security researchers to perform packet sniffing, beacon spamming, and network analysis through a dedicated handheld interface utilizing the Arduino framework.

freertos tft-espilvglh2zero-esp-nimble-cppspiffs
184