BLE Shield stands for Bluetooth Low Energy (BLE) Shield. It is designed to work with Arduino boards, including Arduino Uno, Mega 2560, Leonardo and Due. It allows you to connect your Arduino boards with other BLE Central device like a smartphone or tablet. So you can develop some applications like:
Control your Arduino pins with our/your own mobile App
Send sensor data from your Arduino to an App for processing
Use your mobile device as an internet gateway for your Arduino
and much more!
BLE shield could operate under 3.3V or 5V, therefore it works with a lot of Arduino compatible boards too.
Supported BLE Central Devices
iPhone 5 (all models)
iPod touch 5
Android 4.3 or above (4.4 recommended for stability) with Bluetooth 4.0 hardware support
Samsung Note 3 / GT-I9300 / GT-I9500
other compatible Android devices reported by our users
(please report any other Android devices supported)
Windows 8.1 with built-in Bluetooth 4.0 or USB dongle
Mac OSX 10.9.2 with built-in Bluetooth 4.0 or USB dongle
Linux with BlueZ 5.1 with built-in Bluetooth 4.0 or USB dongle
How It Works
BLE Shield communicates with Arduino through the ACI (Application Controller Interface). The ACI is similar to SPI but does not actually work as SPI. SPI is consist of MOSI, MISO, SCK and SS, whereas ACI is consist of MOSI, MISO, SCK, REQN and RDYN.
Since BLE Shield may receive data anytime even not selected by SPI master (Arduino), so the SS line is not needed.
In ACI,data exchanged still through MOSI and MISO, and SCK provides the clock generated by master.
When master wants to request data from BLE Shield, it puts the REQN to low until RDYN line is put to low by BLE Shiled, and then master generates the clock to read out the data. After reading out the data, master will release the REQN and BLE Shield release the RDYN, put them to high.
If BLE Shield has data to transmit to master, it will put the RDYN to low to indicate master, even though master havn’t requested data and REQN is idle. If master detectes a low level condition on RDYN, it will put REQN to low and generate the clock to read out the data.After reading out the data, both REQN and RDYN will be put to high.Note that REQN is controlled by master while RDYN is controlled by BLE Shield.