Categories
IoT

Manage a Parking Lot with Azure Sphere

This article was originally written in 2018 and there have been many updates to Azure Sphere between then and now so some changes may be required. I thought it would be useful to share this as-is (and the code) in case it was of use to others who wanted to take advantage of an ultrasonic […]

Categories
Bluetooth

12 Days of Bluetooth – #12 Summary

Bluetooth is Big, Really Big Looking back over the different functionality I’ve covered in these past few posts has highlighted that Bluetooth is used for a wide range of scenarios, and it has grown massively from its simple beginnings. It is fair to say that looking at the evolution of each specification version that more […]

Categories
Bluetooth

12 Days of Bluetooth – #11 Command and Control

When we last looked at Bluetooth Low Energy we looked at the code required to read the battery level from a device. There are two things we didn’t cover – writing values and sending commands to a device. Writing in the Air If you’re familiar with the service that you are writing to the process […]

Categories
Bluetooth

12 Days of Bluetooth – #10 Hands-Free

Bluetooth Classic contains a handful of profiles which use AT commands to work with telephony devices over an RFComm connection. We discussed these briefly in #3 of this series and today will look in more detail and the most commonly implemented one – Hands Free Profile. Look No Hands! Two similar profiles exist in Headset […]

Categories
Bluetooth

12 Days of Bluetooth – #9 Pairing

Both Classic and Low Energy devices can provide functionality to unpaired devices or require pairing first before exchanging sensitive information. However, what exactly is pairing? Stick a Pin in it The original mechanism for pairing uses a four digit PIN code. One device would need to be discoverable, and the other device upon discovering it […]

Categories
Bluetooth

12 Days of Bluetooth – #8 Bluetooth Low Energy in Code

Following on from the last post, which covered the technology of Bluetooth Low Energy, this post will look at how to use it from code using InTheHand.BluetoothLE. We’re going to look at an example using a simple but widely used service – Battery Service. You can probably guess what it is used for. Step One […]

Categories
Bluetooth

12 Days of Bluetooth – #7 Bluetooth Low Energy

In 2011, Bluetooth 4.0 was introduced and contained the biggest update to the standard yet. It introduced a whole new way of talking to Bluetooth devices which allowed them to use considerably less power. Bluetooth Low Energy works entirely separately from Bluetooth Classic but the two can coexist. For example most mobile phones will support […]

Categories
Bluetooth

12 Days of Bluetooth – #6 Bluetooth Classic on iOS

Today we take a quick detour to look at something specific to Apple devices. You Can’t Handle The API! iOS has always been the most “locked-down” mobile platform and one of its restrictions has been a lack of support for developers to work with Bluetooth Classic devices. “But wait, 32feet.NET has support for Bluetooth Classic […]

Categories
Bluetooth

12 Days of Bluetooth – #5 Coding Bluetooth Classic

All the previous posts in this series have talked about Bluetooth technology, in this post we will look at a practical example (using .NET of course!). 32feet.NET From the initial release of the .NET Compact Framework, Microsoft included a library to work with IrDA. This used an API similar to TcpClient and TcpListener but also […]

Categories
Bluetooth

12 Days of Bluetooth – #4 Serial Port Profile

Today we are delving into the details of a basic and widely used service. We may well come back and revisit the lower layers, but this topic will look at something you are likely to use when doing Bluetooth Classic (not Low Energy) development. Cutting the Cable One of the early aims for Bluetooth was […]