Device Finder

Finding HP Printers in a corporate environment

Background
Problem Statement

In September 2016, HP posed a problem for us to solve: that in a large corporate setting, IT was having a hard time keeping track of all the printers that they had to manage on large campuses. In large companies, sometimes printers get moved to different buildings, different offices, or they just die; and IT isn't made aware of any changes. This can pose problems when IT is tasked with finding these printers. Our goal is to create a method of finding these printers, to reduce these problems.

Initial Design
We determined that the best course of action, in order to find printers successfully, was to design and attach a device to the printers, which uses some method of location-determining and reporting back to a central server their location, at intervals. Even if printers go offline, this will allow users to be able to see the last known location of the printer.

Metrics
Location Services *Since the most promising devices have wifi, we left this as a $0 additional cost

Device Features

Wifi Triangulation
We will be using various methods to derive the distance of our device from each access point in its vicinity, and from that, we can use triangulation to narrow its location down.

Final Design
For our final design we decided to use WiFi triangulation with Raspberry Pi 3. Our algorithms (designed by Grant Wade) utilize the Raspberry Pi's integrated wireless to gather the AP information needed to triangulate the location of the missing printer, in relation to the visible APs.

Server/Client Relation
The client Raspberry Pis are mounted on the printers. These Pis then gather AP metadata, such as MAC address, signal strength, and signal quality, from visible APs. This metadata is then reported to a central server.

The server host a predefined map of all know APs that are manually input. Using the know location of the APs, our algorithms are the able to determine the latitude, longitude, and altitude of the missing printer.

Web Interface
All of this information can be accessed via a web interface. The web interface displays locations using the Google Earth API.

Document Archive
GitHub Repository