We had a very productive couple of weeks, including finalizing the hardware stack and making it into a small package that can be mounted to the back of a user’s phone so that the user doesn’t need to carry their laptop around the room. We also integrated the components of the system together – the main entry point is a Python program which interfaces with the WebXR platform (streaming data to/from the phone over the network), the device-detection pipeline, the ToF pinging hardware, and the localization algorithm implemented in MATLAB. We got the system integration working where we can walk around a room, and as it collects data points, it runs them through the localization stack to determine and visualize the detected Wi-Fi devices (no manual intervention needed between the steps). The monetary cost of the system still remains within our $150 metric (ESP32, ESP8266, wireless radio, small battery, and USB Wi-Fi card) and it still runs quite well within our expected 5 minute detection time.
We don’t expect any substantial risks going forward as the important parts of our system are all working and integrating successfully. One thing that will be interesting to see is how different devices respond to the same Polite Wifi attack (we’ve already noted that different devices send response packets at different reliability rates, and some Wi-Fi cards go to sleep faster than orders). We’re not expecting this to break anything, but it may require some tuning to force the system to generate more traffic against certain devices to compensate for less accuracy in detecting them.