3 years ago

Sniffur – dog tracker

Matt Reed always knows where Bean the dog is, thanks to his beacon-powered Sniffur system

We love animals here at The MagPi, so when we heard about a Raspberry Pi dog-tracker called ‘Sniffur’, we had to learn more.

Sniffur uses tracking technology called ‘beacons’; these are relatively new devices being placed in department stores to track the precise location of customers.

The full article can be found in The MagPi 42 and was written by Lucy Hattersley

Sniffur flips this idea on its head, by putting the beacon on a moving object and using three Raspberry Pis to detect where it is. The object in question is Bean, an adorable greyhound adopted by Redpepper, a marketing agency in Nashville, Tennessee.

“We’re a culture-first company,” says Matt Reed, the project’s maker. “A lot of us have dogs or pets in some form, so part of us being happy is knowing our pets are happy. It doesn’t hurt that our CEO also has two dogs.

“Bean is absolutely the sweetest dog. Very shy, timid, loving. She wanders around into people’s offices and just stands next to their desks waiting for rubs, then just wanders on to the next spot.”

The beacon on Bean's collar allows her to be tracked around the office

The beacon on Bean’s collar allows her to be tracked around the office

But all dogs like to go out and play. “When [greyhounds] do, they are very hard to catch because they are so fast,” Matt tells us. “They are the second-fastest land animal after the cheetah: top speed 43mph. Greyhounds also have a high prey drive; if they see a squirrel then it’s ‘bye bye’.

“The need to know where she is at any moment and see if she’s close to the front doors is the reason Sniffur was built,” continues Matt. “We have done retail experiments using Estimotes and constantly keep a stock of beacons available in our lab for experimentation.

“I grabbed one of the Estimote beacons from the lab and zip-tied it to Bean’s collar. Usually, beacons are attached in stationary physical locations, but Bean is now a mobile beacon transmitting a polling signal everywhere she goes.

“I put a Bluetooth USB dongle into three Raspberry Pis and coded them to listen for Bean’s Unique Beacon ID,” reveals Matt.

The bluetooth ping from this beacon is picked up by the Raspberry Pis in the office

The bluetooth ping from this beacon is picked up by the Raspberry Pis in the office

One value transmitted by a beacon is RSSI (received signal strength indicator). This is the distance of a beacon from the antenna. “I’ve referred to it as triangulation because everyone knows what that means,” says Matt, “but I’ve recently learned on Hackaday that ‘trilateration’ is the correct term, because I’m calculating distance instead of geometry.”

Matt built an app for the iPad to display Bean’s location. “It’s just an HTML, JavaScript and CSS page that connects over the local WiFi network to the three Raspberry Pis,” he explains.

“I think this could be a fun project for anyone looking to familiarise themselves with beacons. A cheaper version would be to use one Pi to generate a single radius distance from that antenna.

You could also set an antenna by an exit and just throw an alarm, flash lights or lock the door, whenever the roaming beacon comes within range.

“Hmm,” ponders Matt, “that is actually not a bad idea. I think Sniffur is fun from a visualisation standpoint, but from a practical standpoint something more proactive might be better.”