BLE-Shield v3.0.0 based on Bluegiga’s BLE113 Module
The Bluetooth Low Energy (BLE) Shield v3.0.0 for Arduino is a Shield that enabled Arduino Projects to communicate with Bluetooth 4.0 enabled smartphones and tablets. Version 3.0.0 of the Shield has some great new features which makes it even better, easier, more versatile to use and even cheaper for you to get one.
- Based on Bluegiga’s BLE113 M256K Bluetooth 4.0 single mode compliant module
- Open Source Hardware- and Firmware
- No Library necessary to operate the module on the target platform
- Compatible with BLE enabled smartphones and tablets
- Configurable UART Pins RX, TX, 4, 5, 6, 7, 8, 9, 10, 11, 12 and 13
- Configurable Interrupt pins 2, 3 and 7 which is set high once the BLE-Shield is connected
- Baudrates 9600 (default), 14400, 19200, 28800, 38400, 57600, 112500 can be changed using a characteristic
- The reset switch now resets the BLE-Shield and the underlying Arduino board.
- Support OTA firmware updates e.g. using BLEGUI2 tool from Bluegiga or M.Kroll’s BLExplr iPhone App
Services and Characteristics:
BLE-Shield Service v3.0.0 - B4BDB998-8F4A-45F6-A407-6B48D79CFC2F
Bluetooth Device Address (Read): B4BDB998-8F4B-45F6-A407-6B48D79CFC2F
Baudrate (read, write): B4BDB998-8F4C-45F6-A407-6B48D79CFC2F
Supported baudrate values are:
- 0x00 = 9600 Baud (default)
- 0x01 = 14400 Baud
- 0x02 = 19200 Baud
- 0x03 = 28800 Baud
- 0x04 = 38400 Baud
- 0x05 = 57600 Baud
- 0x06 = 112500 Baud
The baudrate setting is written to the internal storage of the BLE113 module, so the setting will persist even if you remove power from the module. During the next boot cycle after power cycling the module or resetting it, the baudrate setting is restored from flash. So there is no need to reconfigure the BLE-Shield every time you power the module.
Enable Connect LED (read, write): B4BDB998-8F4D-45F6-A407-6B48D79CFC2F
This new characteristic is used to change the bahavior of the blue LED on the BLE-Shield which indicates the connection status of the BLE-Shield.
Supported values are:
- 0x00 = LED is not used to indicate a connection (Default)
- 0xFF = LED is used to indicate a connection.
So don’t worry if the LED is not turned on while connected if you are using the BLE-Shield the first time. It is turned off by default. You need to change the characteristic first to 0xFF in order to use the LED. The setting is also persisted into the BLE-Shield’s flash memory, so the setting persists between power and reset cycles.
Data (Write, Indicate): B4BDB998-8F4E-45F6-A407-6B48D79CFC2F
The Data characteristic is new to the BLE-Shield v3.0.0. If you connect the BLE-Shield from e.g. an iOS Device and you enable indications on this characteristic, the iOS device will be indicated whenever the embedded device sends serial data to the BLE-Shield on the TX pin. If you write data from the iOS device to the BLE-Shield the data is send available on the RX pin of the BLE-Shield.
BlueGiga OTA Service - 1d14d6ee-fd63-4fa1-bfa4-8f47b42119f0
This is the OTA service which is implemented on the BLE-Shield as Bluegiga describes it in the Application Note: Implementing OTA Firmware Upgrade
OTA Control Characteristic: f7bf3564-fb6d-4e53-88a4-5e37e0326063
The OTA control point characteristic is used to control the firmware upgrade process between the device that will be updated and the device that performs the update it is a write only attribute to the control can only made by the device that performs the update.
OTA Data Characteristic: 984227f3-34fc-4045-a5d0-2c581f81a153
The data cahracteristic is on the other hand used to transmit the data from the device that performs the update to the device that is being updated.
In order to access the features of the BLE-Shield v3.0.0 such as controlling baud rate and the serial port the iPhone App BLExplr is recommended.
Design Files and Firmware:
The Schematic, Boardfiles and Firmware sources available at Michael Kroll’s github repository.
A detailed description about the services and characteristics can be found at Michael Kroll’s Blog or at the before mentioned github repository.
Please visit the authors BLE-Shield v3.0.0 Blog or Dr. Michael Kroll’s Mobile Computing Forum about the BLE-Shield v3.0.0.