The aim of this project was to create a low cost Bluetooth low energy (BLE) module to support my MiniWear (miniature and wearable) project, and allow me to easily create other great BLE projects.
The main design criteria was:
- Low cost (Comparable or cheaper than what is on the market)
- Small i.e. Wearable size
- Easy to use (i.e. Quick and easy to prototype with like Arduino code)
This project has now been upgraded to use the DA14580 Murata LBCA2HNZYZ module and Simblee (RFD77101 ) module, but still includes the previous RFduino (RFD22301 ) that was developed for the original Tiny Low Cost BLE project.
Tiny Low Cost BLE Module Comparison Table
Tiny Low Cost BLE Version | Unit Cost For 1 & 1000 | Main IC Size | Easy to use (1 Easy -10 Hard) |
V1 - RFduino | £14.49 / £11.57 | 15mm X 15mm | 1 - Arduino Programming |
V2 - Simblee | £15.43 / £9.46 | 7mm X 10mm | 1 - Arduino Programming |
V3 - DA14580 (Murata LBCA2HNZYZ) |
£4.63 / £3.56 | 7.4mm X 7mm | 7 - C++ |
The prices are based on the lowest price found on octopart.com
My original Tiny Low Cost BLE project used the RFduino RFD22301 module, which i came across when i was first started looking into easy to use Arduino based BLE chips. The original Rfduino breakout board wasn't small enough for what i needed, and the breakout board cost almost $30/£20. So i redesigned it using the RFD22301 module and broke out a few pins (Shown in the image below). In the end it cost about $18/£12 for the parts (when making 1), plus i added a few extras to make it easier to use.
I then wanted to upgrade my Tiny Low Cost BLE project, and so created the MiniWear Simblee BLE module (which you can see below). It has the same pinouts as the RFduino above, but just uses the better Simblee Chip.
The MiniWear Rfduino board is possibly the smallest RFduino board around, and the MiniWear Simblee is one of the first breakout boards to use the Simblee chip, both measure less than 2cm X 2cm, and i achieved this by only breaking out essential pins. There are 18 pins in total, but 6 of them are duplicates (to make it easier to connect other modules). The duplicated 6 pins are the 2 required for I2C, 1 Ground, 1 Power, 1 extra general purpose pin that i have labelled LPW in case of extra Low PoWer modes (but it can be used for anything). I also added a BAT pin, which batteries are attached to so that i can add multiple batteries, regulate their power centrally, switch them all on/off, and recharge them all at the same time. It also opens up the possibility for alternative power modules in the future. The remaining 6 pins are for programming the RFD22301 and Simblee via a FTDI programmer which is commonly used with Arduino's.
The RFD22301 and Simblee module are compatible with the Arduino IDE and programming language (but you do need to download some extra files). They also have a built in temperature sensor, and i added a 3.3V regulator so that they can be powered with up to a 5.5V max. I also added a red LED for easy notifications and to test that projects are working.
If you don't want to use I2C for communication, the pins can be reconfigured for GPIO i.e. digital or analogue use (ADC, PWM). The LPW pin is also GPIO which gives you extra options for projects.
Connects to many devices.
One of favourite features of BLE is that it can connect to many devices, such as your phone, tablet, laptop and computer. The RFD22301 and Simblee have the extra benefit that they can also connect to another RFD22301,or Simblee, and they can also be set up as a ibeacon (if your not sure what an ibeacon is checkout this video: (Explanation video can be found here)
Not every device is BLE compatible so it is good to check. A list of compatable BLE devices can be found here: http://www.bluetooth.com/Pages/Bluetooth-Smart-Devices-List.aspx. Generally most phones nowadays are supported, but you should be careful with older phones.
MiniWear RFDuino Specs Overview (Tiny Low Cost BLE V1)
Name |
MiniWear RFduino |
CPU |
16MHz ARM Cortex-M0 |
Flash |
128kb |
Ram |
8kb |
Supply Voltage |
2.7V - 5.5V |
Transmit Current / Receive Current |
18mA |
FCC Approved & ETSI -CE Tested |
Yes |
Transmit Power |
4dbm |
Size (mm) |
19.84(L) x 19.30(H) x 1.6(D) |
RFDuino ONLY cost |
MiniWear Simblee Specs Overview (Tiny Low Cost BLE V2)
Name |
MiniWear Simblee |
CPU |
16MHz ARM Cortex-M0 & 32KHz precision crystal |
Sensor interfaces | 1 x I2C or 3 x ADC (Actual simblee has 29 pins that can be broken out) |
Supply Voltage |
2.7V - 5.5V |
Transmit Current / Receive Current |
8mA / 10mA |
FCC, IC, CE, TELEC compliance approved |
Yes |
Transmit Power |
-55dbm to +4dbm |
Size (mm) |
19.84(L) x 19.30(H) x 1.6(D) |
Plus it has integrated antenna, Battery/Supply voltage monitoring, temperature sensor and more... Check out this Log for more detail: https://hackaday.io/project/8508-tiny-low-cost-ble/log/29385-simblee-update
MiniWear DA14580 Specs Overview (Tiny Low Cost BLE V3)
Name |
DA14580 Murata LBCA2HNZYZ |
CPU |
32-bit ARM Cortex M0 microcontroller |
Sensor interfaces | 1 x I2C or 3 x ADC (Actual the DA14580 has 32 GPIO pins that can be broken out) |
Supply Voltage |
0.9 – 3.6 V and uses under 600 nA in sleep mode |
Transmit Current / Receive Current |
4.9 mA RX / TX at 3 V at 0 dBm output power |
FCC, IC, CE, TELEC compliance approved |
Yes |
Rx sensitivit |
-93 dBm |
Size (mm) |
19.84(L) x 19.30(H) x 1.6(D). Actually the LBCA2HNZYZ is only 7.4mm X 7mm so you could make the a smaller board if you wanted |
Supporting software upgrades Over-The-Air (OTA) which is a cool feature to have.
Support
If you like the project, and fancy supporting, perhaps you wouldn't mind supporting me on Patreon? Every little bit helps me release more great projects, which helps fuel the amazing open source community. Even $1 makes a difference :)