Team Status Report for 03/13/2021

Presentation

Our team spent a considerable amount of time early in the week creating the presentation slide deck. Some considerable effort went into creating some of the animations and visuals to accompany the technical content of our presentation. In particular, we provided an artist’s rendition of our final product, a series of animated beamformer signal response plots, and a block diagram of our product. (We note that the feedback from one of the instructors stated that we stole our block diagram from somewhere without crediting its source — this could not be further from the truth, as we created the diagram ourselves.)  We also chose Vrishab as our presenter and helped him dry-run the presentation.

Downconversion

We had a lengthy discussion with Shaun Stevens who is Dr. Kim’s graduate student. During our meeting, Shaun helped us flesh out the downconversion process and provided feedback on other aspects of our implementation.

With his help, we have now identified the specific channel of 2.4GHz WiFi that we are going to work with — channel 6 — which has a bandwidth of 22MHz. Thus, after downconversion, our A/D converter need only sample at the nyquist rate of (22/2)MHz upper frequency * 2 = 22MHz. We have selected the specific ADC that will accomplish this task.

Progress Since Last Week

We now have identified all of the components that are needed to implement our system from the antenna array through the FPGA. We have also identified the critical components for our downconverter, which we were not aware we needed as of last week.

Plans for Next Week

We will begin PCB layout next week and plan to meet with Dr. Carley for feedback on our layout once complete. We plan to send out our schematics to have our PCB fabricated at the end of next week.

 

Vrishab’s Status Report for 03/13/2021

Presentation

This week, I presented our project progress in our Section C presentations. This took some considerable effort, both in terms of designing the slide deck and performing dry runs of the presentation beforehand. The feedback from the presentation was useful and will help clarify some of the portions of our design review in the coming weeks.

Meeting with Shaun Stevens (Dr. Kim’s Grad Student)

We met with Shaun to discuss the specifics of our antenna design and signal processing pipeline implementation. He gave us some extremely valuable feedback, which has changed some aspects of our design. We are now going to be downconverting the collected WiFi signals from 2.4 GHz to baseband, and we will then sample the downconverted signal at a correspondingly lower rate. Performing these steps will require a voltage-controlled oscillator, the make and model of which we have already identified. Adding the oscillator to our system has incurred a slight delay in our progress, but has actually had the effect of speeding development since we won’t have to sample the signal at 4.8 GHz (which was something that we had planned on taking a week to figure out).

Progress Since Last Week

Last week we stated that we would begin on the PCB design. Txanton has been heavily focused on this, and we are on track to finish the layout and meet with Dr. Carley for review within the coming week. I have been aiding in some aspects of the PCB design, specifically with the selection of some of the components.

Plans for Next Week

We plan to have the PCB layout completed and will meet with Dr. Carley to verify that our design will work. We will then send the specs out to have our board fabricated and shipped back.

 

Enock’s Status Report 03/13/2021

This week we spent a lot of time on the design aspect of the project in order to put out the presentation and report.

I focused mainly on the FPGA and onward part of the block diagram which ended up being not complete upon uploading the diagram to our presentation which was our fault. However, I worked on understanding how the signals should be coming into the FPGA and formatted so I could start writing block diagrams for the internal SystemVerilog modules. Upon figuring out format of the signals I roughly figured out that the 32 input signals must then be time delayed internally in order to create a proper signal that the DSP Beamforming algorithm module would take as an input. Once the signals have been time delayed the DSP algorithm as shown in our block diagram would run the proper computations to output one signal. This signal will then be run through another module that would take the amplitude of this signal in order to get a “pixel” intensity value for the heatmap. The pixel in this case is actually a grid box as shown in the Artist’s Rendition. This value will then sent to our code which will render the heatmap overlaying the input video feed which will be sent out via mini DisplayPort to a monitor.

This week and in the upcoming one I will be working on creating a detailed block diagram and specification for the FPGA SV modules and heatmap creation for the design report. I will continue to work on refining the design and starting to write code/pseudo-code which is on schedule for writing and then hopefully testing.

Txanton’s Status Report for 03/13/2021

This week we had design presentation’s which took up some of the time we had planned for this week. Outside of the design presentations I mostly spent this week finalizing the components we plan to use for our RF Front-End circuit. During this time we had a meeting with a CMU Graduate student who is doing research in this area so that we could discuss some of our plans with him to help ensure some of our assumptions were correct. This graduate student was also a valuable resource for helping learn about some other techniques for sampling such as I/Q Demodulation which may be useful in getting information from the radio signals.

Now that we have most of the components selected I plan on drafting the schematic and then scheduling a meeting with Professor Carley, since he does research on RF Circuitry, in order to review the schematic and again helps us identify some possible flaws we may have made so that we can finally go ahead and order our PCB’s. Regarding the schedule I believe that I am slightly behind on the PCB design but do not foresee it taking up too much of our slack so I still believe that our project is on pace.

Design Presentation

https://docs.google.com/presentation/d/e/2PACX-1vRmzOlYLax9Hip6C3MqAKZOw6NWy433Gqb515AuHfEa0jv1gbzOp2ho0kMLDoOHns-3Wv6F5JyEhMJQ/embed?start=false&loop=false&delayms=3000&slide=id.gc5a11c111f_0_5

Txanton’s Status Report for 03/06/2021

This I was doing research into what components we need in order to get meaningful data from the antenna’s. In our weekly meeting it was brought to our attention that there was likely additional circuitry needed in between the antenna’s and our ADC. Since specific information was not immediately available to us about this I did some research in order to try and figure this out.

During this research one thing I found out is that we will likely need to use an amplifier to boost the signal. I was not aware that RF signals were as low power as they are so in order to avoid noise and get a higher Signal to Noise Ratio (SNR) we will need to use an amplifier, this will also amplify noise, however it should be to a lesser effect. I also found that some circuits make use of a bandpass filter in order to help get rid of some of this noise and smooth the signal, this is something I will keep in mind as we start to design our circuit.

I was unable to find too much more detail however I will keep looking and earlier in the week we reached out to a graduate student at CMU doing similar research and hopefully they will be able to give some additional insight into some of the challenges.

This next week I will continue to search for circuitry related to antenna’s and will continue doing research so that we can get started on the design of our PCB as soon as possible, since we will not only have to create the PCB but also wait for it to be fabricated and shipped, and then also wait for the components that will be going on it to be shipped as well. In order to minimize the impact of this delay I will try and make sure we can order both parts and the PCB as soon as possible.

Team Status Report 03/06/2021

This week we spent more time narrowing our project design and metrics since the design presentation will be due close to the time this post is up. This week we were able to create our proposed antenna design by settling on WiFi signals as our target signal, the number of antennas, and their array pattern. We were able to decide on the antenna spacing for the array based on the WiFi frequency since we wanted to not only avoid aliasing but losing important signal information.

We have found a beamforming algorithm that we will try to implement and test in MATLAB before having to customize it for the FPGA. Since we have settled on an MPSoC FPGA to use, it will make this process of designing easier. We have also started brainstorming a way to configure the heatmap which is our final output. This will be an agreement between the data output type of the FPGA (which we hope to be pixel values that represent intensity) which will be fed to a microcontroller which will handle composing a heatmap onto the live feed of the camera we will be using.

We are currently on track with our project but should order and start building soon to start doing prelim testing with the PCB so we can start interfacing with the hardware/software.

Enock’s Status Report 03/06/2021

This week has been very conceptual in the next steps of our project. Since I am primarily focused with the hardware and the latter steps of our project there isn’t too much I have been able to physically do before having a testing implementation of the antenna PCB to start designing the SystemVerilog modules.

Since last week I have narrowed our FPGA down to using the Zynq96 Ultra v2 Board since this board has an MPSoc which is allows for more parallelism and better efficiency than the SoC FPGA’s in Capstone stock. This board has enough GPIO’s and the current stock SoC FPGA’s do not have enough GPIO pins for our proposed design. Although the traditional FPGA’s may have enough GPIO they do not have the flexibility of using High Level Synthesis (HLS) which allows us to write in C which will synthesize to SystemVerilog (SV) which will increase workflow efficiency since in some cases it is much easier to implement algorithms in C rather than SV. I have experience with this board more than any other board listed as well which will allow for a better turnover rate for implementation since we will spend much less time trying to set up and learn the board.

Furthermore since last week I have thought about a more specific testing metric and we decided one a % accuracy of relative areas rather than the number of devices. This is because if two devices are stacked on each other we will not see readily see 2 devices on the heatmap but rather that the location has a strong WiFi signal and so we would like to accurately locate device locations rather than the number of devices.

In the upcoming week I will  start looking into the HDL side of things and trying to find DSP modules and algorithms that we may be able to use depending on the kind of input data we will get, format, etc.

Vrishab’s Status Report for 03/06/2021

Antenna Array Configuration

This week, I spent some time finalizing the configuration — spacing requirements and number of elements — of our antenna array. Through some research on 2.4 GHz WiFi signals, I found that we will need a spacing of 6.25 cm between each antenna. This requirement was determined based on the wavelength of 2.4 GHz WiFi, which is 12.5cm, which must be halved to avoid spatial aliasing. This is done in order to sample the WiFi signal at a rate twice as fast as its fastest frequency — the Nyquist rate.

The number of array elements was determined by plotting the theoretical directional sensitivity for our beamformer, where I increased the number of array elements and until the plot had the directional sensitivity characteristics from our proposal (~3 degrees squared main lobe width). In doing this, I found that 32 array elements satisifed this constraint.

Signal Processing Pipeline Implementation

I began working on a testbed for our signal processing platform in MATLAB. So far, the testbed implements the frequency domain beamforming algorithm from https://academic.oup.com/mnras/article/439/3/3180/1113793. Before implementing on the FPGA, we will feed our data into this MATLAB testbed to verify that we can perform the beamforming to the required specifications. After that, we will compile the MATLAB code into Verilog for use on the FPGA (MATLAB has the ability to do this automatically).

Progress Since Last Week

I have addressed many of the uncertainties in our antenna array design from last week. We are on track with our schedule (from the proposal slide deck).

Plans for Next Week

Per our proposed schedule (see slides), this next week will involve the critical first steps in two of our project divisions: PCB design and part specification. On the PCB design side, most of the contribution will be from Txanton and Enock, though I will try to lend a hand where necessary.  On the part specifcation side, I will finalize the commodity antennas that we will use, incorporating their characteristics to obtain some more concrete theoretical calculations.

 

Enock’s Status Report 02/27/2021

This week I spent a long time trying to narrow the scope of our project and critiquing the different parts of our approach. We had a very broad sense of the purpose our project with no definitive and interesting use cases which led to making a weak argument for our project. From this I was able to come up with very specific use cases that would be used in the realm of security and police enforcement since this was one of the important parts for pitching our idea.

Together, we were able to decide that we would localize WiFi devices in a standard bedroom sized area. I deduced that 1Hz response would be a reasonable target metric for real-time detection so I looked into FPGA’s that could support the signal processing. Some FPGA’s that could be used are the Zynq Ultra96 v2 and Terasic DE10-Nano since they are relatively cheap, easy to work with, and I have experience using the two devices. Their form factor is quite small and light and so it fits with our design in terms of size and mobility since it isn’t too heavy.

Lastly I spent time trying to narrow our testing methods so that they were specific metrics that would address some of our technical challenges and goals mentioned during the presentation. One thing that we will need to work on, however, is determining a specific number of devices to locate since we were very general with our proposal and only determined lobe-width.

In addition to determining how many devices to locate, I will start working on looking to signal processing modules that we can use in conjunction with the algorithms we will be using. Finding IP’s will make the programming part much easier and will allow us to interface with the embedded parts smoother so that we don’t have to write our own algorithms/interfaces.