Chapter 10. Embedded Application Development
Focusing on readily available and open source embedded development kits and platforms, this chapter describes some of the tools available to anyone who wants to create custom firmware for Bluetooth Low Energy peripherals.
The first part of the chapter introduces a high-level BLE API that makes use of the mbed development platform created and maintained by ARM. This is a great choice if you’re new to embedded development, because it doesn’t require familiarity with configuring an embedded toolchain yourself or working with embedded hardware on the lowest level. Most of the messy firmware implementation issues and setup problems are conveniently buried in the easy-to-use online tools and high-level APIs.
The second part describes embedded toolchains: collections of tools used together to convert standard source code into executable binaries that run on embedded processors. This section shows how to set up a cross-compiling toolchain to build ARM binaries on Windows, OS X, or Linux.
The last part of the chapter shows how to use these tools and concepts in the real world, taking advantage of a sample project for Nordic’s nRF51822 system-on-chip (see “nRF51822-EK (Nordic Semiconductors)”) that allows you to transmit heart rate data to an iOS or Android device using the standard Heart Rate Profile (see “SIG-defined GATT-based profiles” for more information on BLE profiles).
Complete code for the sample project is available in the GitHub ...