ESP8266 Geo-location and calling the underlying C libraries
My interest was piqued by this document - it proposes the following means of getting an ESP8266 to work out where it is on the planet: Scan for nearby APs, getting SSID MAC address RSSI (signal strength) Make an API call to Google's Maps API, passing this info and getting back lat/lon with a likelihood radius The only drawback is that this is done using the AT command set that the ESP8266 supports, rather than the Arduino libraries. Hurray. Let's look at the Arduino library support, and we find WiFi.scanNetworks() . This is demonstrated in the ESP8266WiFiScan example, but however doesn't return all the required information, only SSID RSSI Encryption type (an enumerated type) Bummer. It works ok, quite cool, but... So how do I get to the same function as the AT command set? There is a lower level C-type interface to the chip's functions, in the include file <user_interface.h> . This is demonstrated in CallSDKFunctions, where the functio...