As you probably know, Bluetooth low energy (BT LE) is a wireless personal area network technology which uses a minimum of power to broadcast messages to receivers nearby.
Bluetooth LE is a common standard but it is most popular under the name of IBeacons. IBeacons is a protocol coming from Apple, so it is just a class of Bluetooth low energy (LE) devices that broadcast their identifier to nearby portable electronic devices.
IBeacons can basically exchange two parts of data: that unique identifier and the signal strength. This makes it possible to figure out the (fixed) position of the IBeacon. And if you receive the signals of multiple beacons you can triangulate your own position between them.
In 2015 Google launched a competing, but similar, beacon standard called Eddystone. It has a richer functionality because it can exchange more information.
Far less known is that Windows 10 also supports the beacon technology, it’s not just Apple and Android which are having fun with it. In Windows, there is this Windows.Devices.Bluetooth.Advertisement library:
“It allows apps to send and receive Bluetooth Low Energy (LE) advertisements.”
Doorgaan met het lezen van “Reading IBeacons using a UWP app on your Raspberry Pi”
A few month ago I bought a little rover (controlled by an Arduino Uno) for a very good price. The kit was very complete: Car chassis, 2 Car Wheels, 2 DC Gear Motors, a UNO R3, an L298N Dual H-Bridge Motor Controller and several other components.
This rover is meant to be programmed for autonomous operation. Hence an ultrasonic sensor and a servo is also added in the kit. Also a nice Arduino sensor shield 5 is in the kit. Yes, it was a real bargain 😉
But my idea was to use both an Xbox One Controller and the Firmata protocol to drive this one by myself or one of my sons. And it works very well!
Here is a video of the final solution:
In this blog, I will show you how it’s done.
Doorgaan met het lezen van “Control your Arduino Rover using Firmata and Xbox One Controller”
Programming Arduino’s is not that hard. The biggest challenge is just getting started. Just start with the ease ones, like Blinky. Then you start to buy stuff (modules, components) and connect them. After that, your knowledge will grow as your projects grow.
But sometimes you will still have these little challenges. I just had one: how can I make my Arduino’s unique? And with that I mean: how can I load the same sketch to multiple clients but still each Arduino is unique?
My solution is to use dip switches.
Doorgaan met het lezen van “Giving Arduino’s a unique number using dipswitches”
I picked up a couple of 2.4GHz Antenna Wireless Transceiver module from a webshop to use them between arduino’s. There are several types of the modules but I picked up the NRF24L01+ modules:
These modules are low power versions with a range off 60 meters maximum. I measured 20 meters running with the PA level High. This is the same distance I get with Bluetooth but there is no pairing involved! So a big pro is easier setup and a more stable long-time communication solution (I can reset the sensors any time) but I loose the possibility to use the Firmata protocol. I have to write my own protocol.
Doorgaan met het lezen van “Using NRF24L01+ modules between arduino’s”