You have many options in terms of sensors, at least the same number of options in terms of electric motors, but you still don’t have a wide range of options in terms of development boards. Why? Because almost all the manufacturers are focused on bringing the same specifications in terms of power, memory and GPIO’s, and some features such as built-in wireless connectivity is forgotten. Things began to move in a different direction with RFduino.
The RFduino is a different development board. I go forward and say that is a custom development board with a built-in Bluetooth Low-Energy 4.0 technology, which is perfect for hobbyists and hackers to build do-it-yourself applications.
The Link between RFduino and Arduino
There is a strong relation between RFduino and Arduino microcontroller board. Even the hardware heart of the RFduino is a Nordic Semiconductor 32-bit ARM Cortex processor engineered with a built-in Bluetooth 4.0 transceiver, the RFduino run the same code as Arduino UNO and DUE boards. More than that, the wireless communication board can do everything an Arduino can, and it’s compatible with any type of devices designed to work for Arduino microcontroller including sensors, servos, and more.
Used with or without Bluetooth 4.0, any user can run Arduino sketches imported from other projects or written by their own from scratch.
iOS and Android Applications
The RFduino microcontroller is an unlimited resource for hobbyists and hackers. Like the Arduino, it’s engineered as an embedded system that let you take your projects to the next level with the help of mobile devices such as a smartphone and the Bluetooth technology.
The finger-tip sized Arduino compatible microcontroller enable any communication with any Bluetooth 4.0 smartphone or tablet.
Since the board was released, several iOS and Android applications have been developed for the iPhone and for any Android smartphones aiming to interact and control the features of the RFduino.
The Android operating system has not always been on the operating systems list compatible with the wireless card. This absence was due to the small number of devices with support for Bluetooth 4.0 LE. When the board was released, only iPhone 4S and 5 had support for Bluetooth 4.0 LE. Now, the Bluetooth 4.0 LE technology can also be found on Android devices.
RFduino is a powerful device whether if you want to build a remote controlled robot car with a built-in camera, a drone or a spy robot.
To dig deeper in the application area of the RFduino board, below I explore several iOS and Arduino applications. You can download and use these applications in your project, or you can use it for inspiration and start building your own application with custom features.
iOS Tutorials and Applications
Create an RFduino enabled iOS app
This is a tutorial from where you can start and build your first application that enable an iOS app to communicate with RFduino.
RFduino Temperature
A free application that lets you display on your iPhone the temperature captured with the RFduino and a temperature sensor.
RFduino LedButton
A simple app that lets you controls wireless any RGB shield interfaced with RFduino board.
RFduino Servo
With this application, you’re allowed to control from 0 to 180 degrees up to four standard servos. All the servos are interfaced with a servo shield and controlled via RFduino.
Android Application
RFDuino AndroidExamples
This example shows you how to set a wireless communication between an Android OS smartphone and the RFduino board.
Specifications
The RFduino board is powerful enough to run almost any Arduino project and small enough to have full control over 7 GPIO and use it for I2C, SPI, UART, Analog, and more other serial ports.
Below you can find a list with all the features included in the small wireless communication board called RFduino.
- Size: 15 x 15 x 3.5 mm
- CPU: 16MHz ARM Cortex-M0
- Flash memory: 128 kb
- RAM: 8kb
- Low Supply Voltage: 1.9V
- Typical Supply Voltage: 3V
- High Supply Voltage: 3.6 V
- Transmit Current: 18mA, 4uA ULP
- Receive Current: 18mA, 4uA ULP
- GPIO: 7
Installation and Getting started
From unboxing and till the first simple program with RFduino is a matter of several minutes. Using the RFduino USB shield, all you have to do is to plug the RFduino into a USB port of your computer and install the Arduino IDE.
After the installation of Arduino IDE, you have to download and extract the RFduino library into the Arduinos hardware directory. The fourth step is to download and install the FTDI USB drivers, and then start the Arduino IDE and select from the ‘Tools’ menu your RFduino board.
Any program with RFduino should start with:
C++
1
|
#include <RFduinoBLE.h>
|
The sketch starts with the ‘void setup()’ function:
C++
1
2
3
4
5
6
7
|
//this code has to be adapted to your project
void setup() {
pinMode(6, INPUT); // set pin 6 to input Â
RFduinoBLE.deviceName = “RFduino Temperature”; //Sets the device name Â
RFduinoBLE.advertisementData = “temp”; //data in the advertisement Â
RFduinoBLE.begin();Â Â // start the BLE stack
}
|
If the setup() function has the role to initialize and sets the initial values, the loop() function has the role to allow your program to change and respond.
C++
1
2
3
4
5
6
|
//this code has to be adapted to your project
void loop() {
  // this code will run repeatedly
RFduino_ULPDelay(MINUTES (1) );//set the module with a delay
float temp = RFduino_temperature(CELSIUS); // returns temperature in Celsius
}
|
You have many options to build a robot starting with a complete kit and finish with a robot builds from scratch using a set of tools, a 3D printer, and a wide range of robot parts.
Fully compatible with Arduino sketches and able to communicate with any Bluetooth 4.0 device, the RFduino is a low-cost tool for prototyping at home or in a classroom.
For a price under $20, you buy not just a development board, you can have in your hand a wonderful piece designed for communication between robots and a smartphone.
Have you ever used the RFduino in your projects? If yes, what is your opinion and what advice could you offer other users?