Senior Design Team sddec21-09 • Magic Sensors

About our project - Problem statement


Currently in the market, door sensors (used in home security systems) are battery powered or need to be wired to a control unit. The goal of this project is to design and implement innovative ‘magic sensors’ which are wireless and batteryless. These ‘magic sensors’ will ‘report’ the status of the door (whether it is open or closed) to the control unit without a power source [on the door or frame] (such as battery). (Professor Qiao, Project Abstract)




Our proposed solution - Machine learning and something called.. CSI?


What's a CSI anyway?

Since IEEE 802.11 wifi devices have been capable of sending and recieving something called a CSI layer. This layer contains metrics about phase and magnitude of a signal that can be proccesed to track propegation of a singal.

The really cool thing is that as IEEE 802.11 uses OFDM, and as such CSI layer actually has metrics about 64 different routes that wifi can take, called subcarriers. 10 of these are unused, and a further 4 are standardized, however the 48 subcarriers that are used which can be measured.


How will we use this data?

We have two microcontrollers set up in a room talking to each other, with a reflector on a door. When the door is open and shut the signals bouncing off the reflector create a difference that is observable in the analysis of the prior mentioned CSI layer. See the following image for a visual representation:

Rough Design Sketch

Figure1 : A sketch of our layout


That's a lot of data to analyze, what's the plan Stan?

Glad you asked! That would be a lot of data to analyze! With our current esp code we see around 4 packets a second, and with 48 sub carriers that's about 192 data points per second, every second. Our solution to this is PCA analysis. This allows us to narrow down the relevant subcarrier list from 48 to a smaller number. By how much depends on the environment, but it's possible to get down to around 10 subcarriers. We then feed this data into a machine learning algorithim developed by us, hosted on an ISU server. This model spits out a prediction based on the data. A huge upside to using a machine learning model is that it is capable of healing, ie re-trianing, should the sensors change locations.


What do you do with the data once analyzed?

The machine learning algorithim will look at the data and determine that status of the door. Should the door be open when it wasn't in the prior frame we will alert the user via a mobile app. Obviously you don't want an alert everytime your roomate opens a door, so our front end application will have the ability to arm or disarm the system, both saving resources when you are home, and preventing uneeded notifications. For more information see arm/disarm.


Okay sounds cool, but can you prove it's plausible?

Oh but of course! If you go to our design document, Section 6.2, you'll see others using this tech for meauring heartbeats, hand guestures, detecting cars moving, etc. Additionally we have a few demos that show this exact setup with noticable dips when a door moves. See the below figure:

RSSI Proof of concept

Figure2 : An example processing RSSI data


Soo... Hows it going?

Please go here to see the progress made