At Qualcomm’s Uplinq 3 weeks ago, there was an awesome vision talk from Rob Chandhok on AllJoyn, QCOM’s vision for IoT (or IoE as they say). You can see it here.
It was interesting to compare that to the talk by Dave Locke of IBM at the ARM MBED event the following week. This was ARM’s big announcement of MBED branching out to the Cloud and the launch of MBED OS.
The IBM story was hub-and-spoke. Everything goes back to the Cloud. Well, of course. We make servers, software and services…
The Qualcomm story was of a meshy spontaneous web of devices around you that doesn’t necessarily go back to the Cloud, instead often sorting tasks out itself through a combination of smart devices. We make Apps processors!
I like to think of a combination of the two. Spontaneous mesh around you with gateways to the Cloud.
Having used both MBED and AllJoyn, I note that MBED is much easier to use. AllJoyn is an awesome, big, exciting vision. But for me it still fails the printf
I wanted to dabble with BLE and learn a bit:
- Can you hack together in your garage an antenna and RF section that will work at 2.4GHz?
- If it works, who good/bad will it be?
- What is hand soldering QFN packages like? Many BLE devices are only available in CSP or QFN48.
If you want to make IoT and Wearable devices that can be controlled from your phone/tablet/whatever, ZigBee is a neat mesh networking technology; but it’s not in any phones. Bluetooth (and more recently) Bluetooth Low Energy is in all of them. It’s easy to write a BLE control app write yourself using the Cocoa frameworks or download one like the excellent LightBlue for iPhone:
Make a Board
So, I broke out Eagle and designed a PCB around the Nordic nRF51822 chip, basing the design on a reference from the Nordic data sheet,
I picked the Nordic device because:
- There aren’t many catalogue BLE devices around yet
- It’s Cortex M0. No need to learn ARC (CSR).
- The CPU is integrated into the SoC (unlike the TI device)
The nRF51822 worked great, but it wasn’t all good. More on that later…
My Eagle board design is on GitHub here.
The most challenging part was the 2.4GHz antenna design. The key decisions were:
- Pi network or balun
- Chip antenna or the “real thing”
Since I wanted some RF experience, I picked both of the harder options i.e. pi network and PCB strip antenna.
This whole project was brought to you by app notes…. the best I found