October 2016 59
in the Screenshot 7 window is included in our BM70
advertisement. For ease of recognition, I’ve added some
Manufacturing Data to our advertisement in the form
of 0xDEADBEEF. Thus, our advertisement packet will
include the device name (NUTS), our manufacturing data
(0xDEADBEEF), and the flag (0x06) data.
The BM70 has some native BLE services which are
shown in Screenshot 8. Don’t get too excited about these
yet. However, when we make a connection, you will
see these services along with their characteristics in the
services discovery window of the iPad application. As you
get deeper into BLE lingo, you will come across
the terms Profile, Service, and Characteristic. A
profile is a collection of services. Each service
houses characteristics. The data is encoded within
the characteristics. There are predefined profiles
For instance, in Screenshot 8 the Generic
Access service is assigned the number 0x1800.
Every time you see service 0x1800, it refers to
the Generic Access service. The Generic Access
service contains two mandatory characteristics
which are Device Name and Appearance. Both
the Device Name and Appearance characteristics
must have Read properties. That’s represented by
the “R” you see in multiple instances inside the
data window of Screenshot 8.
The Device Name characteristic contains a
value of “NUTS” which happens to be our desired
device name. The Appearance characteristic
value is set at 0x0000, which translates to
unknown. Note that the Device Name and Appearance
characteristics are also assigned unique identification
numbers. Get used to it because that’s the way it is in the
Recall that the blue status LED is a permanent member
of the PICtail Plus family. The timing values you see in
Screenshot 9 determine how the status LED blinks when
advertising (Standby) and when the BM70 is connected.
At this point, we should have enough information
entered to transmit advertisements and accept
connections. So, let’s open up the BLEDK3 Manual Test
n SCREENSHOT 8. This is a glimpse of how the data
is manipulated in the BLE world. It all revolves around
Profiles, Services, and Characteristics.
n SCREENSHOT 9. These timing values determine how
the blue status LED blinks when advertising and when
n SCREENSHOT 10. Recall that GAP (Generic Access Profile) has to
do with advertisements and connections. So, it’s logical to enable
the transmission of the advertisements under the GAP tab.