A location
beacon database and
server, method of
building location beacon database, and
location based service using same. Wi-Fi access points are located in a target geographical area to build a
reference database of locations of Wi-Fi access points. At least one vehicle is deployed including at least one scanning device having a GPS device and a Wi-Fi radio device and including a Wi-Fi antenna
system. The target area is traversed in a programmatic
route to avoid arterial bias. The programmatic
route includes substantially all drivable streets in the target geographical area and solves an Eulerian cycle problem of a graph represented by said drivable streets. While traversing the target area, periodically receive the GPS coordinates of the GPS device. While traversing the target area, detecting Wi-Fi signals from Wi-Fi access points in range of the Wi-Fi device and recording identity information of the detected Wi-Fi access point in conjunction with GPS location information of the vehicle when the detection of the Wi-Fi access point was made. The location information is used to reverse triangulate the position of the detected Wi-Fi access point; and the position of the detected access point is recorded in a
reference database. A user-device having a Wi-Fi radio may be located. A
reference database of calculated locations of Wi-Fi access points in a target area is provided. In response to a user application request to determine a location of a user-device having a Wi-Fi radio, the Wi-Fi device is triggered to transmit a request to all Wi-Fi access points within range of the Wi-Fi device. Messages are received from the Wi-Fi access points within range of the Wi-Fi device, each message identifying the Wi-Fi access point sending the message. The
signal strength of the messages received by the Wi-Fi access points is calculated. The reference
database is accessed to obtain the calculated locations for the identified Wi-Fi access points. Based on the number of Wi-Fi access points identified via received messages, choosing a corresponding location-determination
algorithm from a plurality of location-determination algorithms, said chosen
algorithm being suited for the number of identified Wi-Fi access points. The calculated locations for the identified Wi-Fi access points and the
signal strengths of said received messages and the chosen location-determination
algorithm are used to determine the location of the user-device. The database may be modified with newly added position information to improve quality of previously determined positions, and error prone information is avoided.