bleprph is an example app included in the apache-mynewt-core repository. This app implements a simple BLE peripheral with the following properties:
This tutorial aims to provide a guided tour through the bleprph app source code. This document builds on some concepts described elsewhere in the Apache Mynewt documentation. Before proceeding with this tutorial, you might want to familiarize yourself with the following pages:
A BLE peripheral interfaces with other BLE devices by exposing services, characteristics, and descriptors. All three of these entities are implemented at a lower layer via attributes. If you are not familiar with these concepts, you will probably want to check out this overview from the Bluetooth Developer's site before proceeding.
Now let's dig in to some C code.