Adafruit_Mynewt is a sample Mynewt project that we use internally for various projects and experiments.

It isn't necessary to use this with the Adafruit Feather nRF52 Pro, but the repository contains a number of helper modules and apps, and can help you get started working with things like BLE UART and general Bluetooth Low Energy communication.

Installing Adafruit_Mynewt

To install and use the repo locally, first create a git clone of it using your favorite git IDE or from the command-line via:

$ git clone [email protected]:adafruit/Adafruit_Mynewt.git

Once the repository in installed locally, enter the Adafruit_Mynewt directory and install the Mynewt dependencies and libraries via:

$ newt install -v
NOTE: You only need to run this command once, since the mynewt core libraries are not part of the Adafruit_Mynewt repo itself and will be downloaded into the '/repos' folder by 'newt install'

Provided Apps

Not all of the apps includes in the /apps folder are useful to everyone, but the following may serve as a good starting point for you own applications of learning requirements:

  • bleuart: This example initialises the BLE stack, and includes a BLE UART service and shell commands and statistics support to interact with the BLE UART service. This is the application that ships with our boards off the assembly line.
  • throughput: This example can be used to test the throughput speed of BLE using BLE UART. It includes a shell command ('nustest') to start and configure the throughput tests.

Helper Modules

The following modules are defined as part of Adafruit_Mynewt to make certain tasks easier to implement:

  • adautil: This module includes a number of helpers to facilitate working with UUIDs, config settings, data logs, timer timeouts, etc.
  • bledis: This module facilitates working with the Device Information Service (dis)
  • bleuart: This module facilitates working with the Nordic UART Service (nus AKA 'BLE UART')
  • fifo: This module provides a First In First Out (FIFO) buffer implementation that plays well with the internal scheduler and RTOS architecture
This guide was first published on Aug 18, 2017. It was last updated on Sep 16, 2018. This page (Adafruit_Mynewt) was last updated on Oct 16, 2017.