esp-nimble-cpp/README.md
2020-04-13 19:13:51 -06:00

1.3 KiB

*** UPDATE ***

Server now handles long reads and writes, still work to do on client.

NEW Client callback created - bool onConnParamsUpdateRequest(NimBLEClient* pClient, const ble_gap_upd_params* params)
Called when the server wants to change the connection parameters, return true to accept them or false if not.
Check NimBLE_Client.ino example for a demonstration.

esp-nimble-cpp

A fork of the NimBLE stack restructured for compilation in the Ardruino IDE with a CPP library for use with ESP32.

Why? Because the Bluedroid library is too bulky.

Initial client code testing has resulted in code size reduction of ~115k and reduced ram consumption of ~37k.

Installation:

Download as .zip and extract to components folder in your esp-idf project.

#include "NimBLEDevice.h" in main.cpp.

Usage:

This library is intended to be compatible with the original ESP32 BLE functions and types with minor changes.

Acknowledgments:

  • @nkolban and @chegewara for the original esp32 BLE library this project was derived from.
  • @beegee-tokyo for contributing your time to test/debug and contributing the beacon examples.

Todo:

  1. Code cleanup.
  2. Create documentation.
  3. Expose more NimBLE features.
  4. Add BLE Mesh code.