/arduino-BLEPeripheral

An Arduino library for creating custom BLE peripherals with Nordic Semiconductor's nRF8001 or nR51822.

Primary LanguageCMIT LicenseMIT

Arduino BLEPeripheral

Build Status Gitter

An Arduino library for creating custom BLE peripherals with Nordic Semiconductor's nRF8001 or nR51822.

Enables you to create more customized BLE Peripheral's compared to the basic UART most other Arduino BLE libraries provide.

nRFgo Studio (and Windows) is not required when using the nRF8001.

Compatible Hardware

Note: Does not require use of nRFgo Studio! However, uses more code space.

WARNING: Adafruit nRF51 boards are NOT compatible with this library, this includes the Bluefruit LE UART Friend, Bluefruit LE SPI Friend, Bluefruit LE Shield, Flora Wearable Bluefruit LE Module, Feather 32u4 Bluefruit LE, and Feather M0 Bluefruit LE.

Nordic Semiconductor nRF51 or nRF52 based boards

Pinouts

Chip Shield/Board REQ Pin RDY Pin RST Pin
nRF8001
Bluefruit LE 10 2 9
BLE Shield 1.x 9 8 UNUSED
BLE Shield 2.x 9 8 UNUSED or 4/7 via jumper
Blend 9 8 UNUSED or 4/5 via jumper
Blend Micro 6 7 UNUSED or 4
IMUduino BTLE 10 7 9
TinyShield Bluetooth Low Energy 10 2 9
nRF51822
RedBearLab nRF51822 -1 (UNUSED) -1 (UNUSED) -1 (UNUSED)
BLE Nano -1 (UNUSED) -1 (UNUSED) -1 (UNUSED)
RFduino -1 (UNUSED) -1 (UNUSED) -1 (UNUSED)

Compatible IDE's and MCU's

Warning: For more advanced sketches an MCU with more than 2kB of RAM and 32kB of flash space is recommended. Advance sketches include:

  • Multiple services and characteristics
  • HID API usage

Usage

Download Library

Arduino

Using the Arduino IDE Library Manager

  1. Choose Sketch -> Include Library -> Manage Libraries...
  2. Type BLEPeripheral into the search box.
  3. Click the row to select the library.
  4. Click the Install button to install the library.

Using Git

cd ~/Documents/Arduino/libraries/
git clone https://github.com/sandeepmistry/arduino-BLEPeripheral BLEPeripheral

MPIDE

cd ~/Documents/mpide/libraries/
git clone https://github.com/sandeepmistry/arduino-BLEPeripheral BLEPeripheral

The arduino-nRF5x core REQUIRES a SoftDevice in order to successfully use this library. Please see Flashing a SoftDevice.

Further, the error fatal error: ble_gatts.h: No such file or directory in indicitive of no SoftDevice being selected.

Starter sketch

Load starter.ino

API

See API.md.

Examples

See examples folder.

License

This libary is licensed under the MIT Licence.

Useful Links

Analytics