We’re always looking for ways to explore what happens when you connect things and let them talk to each other and to phones or to other devices. There’s wifi, infrared light, all kinds of radios, but what we find works really well is Bluetooth. You’ve probably heard of Bluetooth and you’ve maybe heard of Bluetooth Low Energy or BLE which is the newest release of Bluetooth that saves on battery-life and simplifies connecting devices. BLE is supported by most mobile phones and tablets as well as a huge variety of peripherals like heart monitors, activity trackers, game controllers, and central devices like laptops, cars, and smart TVs. It’s great for easily connecting low latency and low-to-mid frequency data streams without requiring much processing power or battery power.
As a firm we always strive to be able to build things quickly to experiment, understand, iterate, and explore. One of our favorite prototyping tools is Processing and in particular the Android build of Processing which lets us leverage an entire device while still giving us a simple build environment and streamlined graphics and interaction API. For a recent project we found ourselves wanting to build a hub and spoke model to connect multiple RFDuino based devices together via an Android tablet. For that, we needed a library, which we wrote and then open-sourced here: Blepdroid. That’s Bluetooth Low Energy Processing Android.
Using this library requires an Android device with Android 4.0 or higher and Processing 3.0 with the Android mode installed but once you have both of those things you’re ready to start experimenting with BLE and multiple devices. Right now the library is heavily geared towards the RFDuino but it’s compatible with any BLE device like the Red Bear BLE Nano, BC118, or CC2541 as long as you set the device and service UUIDs correctly.