%{ Disclaimer: To run the scripts, the provided traces have to be placed in ./traces, e.g. ./traces/2412mhz.mat. The corresponding subtasks are labeled as % [int]. These labels indicate which part of the code or which comment block belongs to the respective task. task1.m Contains the main calculations needed for Task 1. Some functionality was moved into analyzeTrace.m, plotSpectrogram.m, and linearTodB.m, so it can also be reused in task4.m. Task 1.5 is not included in the script, because it involves interactive marking of transmissions and is therefore only documented in the lab report. task2.m The textual answers are repeated in the report. Some parts of the MATLAB example code were copied to ./from_matlab_example and used to parse the frames and decode the beacons. task3.m Contains the solution for Task 3. The explanation is further summarized and abstracted in the report. task4.m Uses and adapts the MATLAB example code for OFDM beacon generation. A trace file is stored in ./traces/wlan_fahren_wir_noch_beacons.mat, containing the complex baseband vector of the generated beacon waveform. This is done so the generated signal can be processed by the helper functions from Task 1 and plotted in the same way as the provided SDR traces. Struggles: I found this lab significantly more difficult and time-consuming than the previous two labs. A major part of the effort was not only the implementation itself, but also understanding the required background on WiFi signals, spectrograms, noise floor estimation, occupancy calculation, and beacon frame decoding. Task 1 in particular was difficult because the instructions were very compact and left several implementation details open. Concepts such as percentile-based noise floor estimation, channel-wide power aggregation, and occupancy thresholds were not immediately clear to me. This caused a large amount of debugging, rechecking, and validation. Another difficulty was that the WiFi background required for the lab was quite extensive. Since parts of this topic were covered only during the lab period, it was hard to apply the concepts confidently from the beginning. Compared to the previous labs, this task felt much larger in scope and had a significantly higher potential for mistakes, while still being part of a pass/fail admission requirement. This made the lab feel disproportionate in effort and risk. In retrospect, the overall effort was very high. I estimate my total time investment at over 30 hours, including background research, implementation, debugging, interpretation, and report writing. Despite these difficulties, the lab contributed substantially to my understanding of WiFi signal analysis and beacon frame decoding. %} task1; task2; task3; task4;