Live status · Read the latest
monad-knowledge Wi-Fi sensing lab · FIIT STU

The wireless channel: how a signal becomes a channel before any CSI

This is the reader companion to the deck. The deck is the primary material: every idea below is one live widget with sliders, a picture, the formula with current values and a one-line readout. This note gives the derivations and the numbers behind each widget default. Every number quoted comes from workbook.ipynb (numpy, scipy, matplotlib only), and a widget at its default state shows the same number the workbook prints. Nothing here is a measurement: the room, the echo strengths and the reflector strength are stated assumptions.

Conventions. Band centres are 2.437, 5.2 and 5.975 GHz. Wavelength is \lambda = c/f with c = 299\,792\,458 m/s. A "path" is a route from transmitter to receiver; its "excess path" \Delta d is its length minus the direct length.

1. A wave is a rotating arrow

Idea. A radio carrier is v(t) = A\cos(2\pi f t + \varphi). Picture an arrow of length A turning f times per second, starting at angle \varphi. The wave is the horizontal shadow of the arrow. The horizontal coordinate is I (in-phase), the vertical is Q (quadrature):

I = A\cos\theta,\qquad Q = A\sin\theta,\qquad \theta = 2\pi f t + \varphi,\qquad v = I.

In words: the wave you see on an oscilloscope is one coordinate of a turning arrow, and the second coordinate Q is what a receiver measures in addition so that the arrow, not only its shadow, is known.

Worked numbers (widget default). f = 1 turn/s, A = 1.0, \varphi = 30°, cursor t = 0.3 s. Then \theta = 138°, v = I = -0.7431, Q = 0.6691. The period is 1.0 s.

Break it. Feed the I wire into the Q input and the reverse. The arrow now sits at 90° - \theta = -48° and turns clockwise instead of counter-clockwise. The magnitude is unchanged, the sign of every frequency is flipped. A receiver with swapped I/Q reports a walker moving toward you as moving away.

Concept check. A second wave has the same A and f but \varphi = 210°. What do you get when you add it to the first? (Answer: the arrows point in opposite directions, so the sum is zero at all times.)

2. Multipath is a sum of arrows

Idea. The receiver sees the direct path plus echoes. Take the direct path as the reference arrow of length 1. An echo of relative amplitude a_i that travelled \Delta d_i further arrives \Delta d_i/\lambda turns late, so its arrow is turned back by that many turns:

H = 1 + \sum_i a_i\, e^{-j2\pi \Delta d_i/\lambda}.

In words: each echo adds an arrow whose angle is its extra path length measured in wavelengths. Place the arrows head to tail; the resultant is the channel.

Worked numbers (widget default). One echo, a = 0.65, \Delta d = 1.486 m (the wall image of a 10 m by 6 m room for a receiver at (7, 3.5) m and a transmitter at (1, 1.5) m, rounded to 1 mm). The same geometry gives a different channel in each band because the echo is a different number of turns late:

Band \lambda Echo turns \lvert H\rvert \angle H
2.437 GHz 12.302 cm 12.08 +4.09 dB -11.2°
5.2 GHz 5.765 cm 25.78 +2.11 dB 30.2°
5.975 GHz 5.017 cm 29.62 -3.41 dB 40.1°

The echo delay is \Delta d/c = 4.96 ns. Sweeping the baseband frequency, |H(f)| ripples between +4.35 dB (1 + 0.65) and -9.12 dB (1 - 0.65), a depth of 13.47 dB, and the maxima repeat every 1/\tau = 201.7 MHz. This is the question Week 2 picks up: at which frequencies does the card sample this curve.

Break it. Set a = 1.0 and \Delta d = \lambda/2 (2.883 cm at 5.2 GHz). The two arrows are equal and opposite, H = 0, the readout is -\infty dB and the link is in a null. The null is narrow: 1 mm further, |H| = 0.109, which is -19.3 dB. The same \Delta d at 2.437 GHz gives +3.42 dB and at 5.975 GHz -6.67 dB, so a null in one band is not a null in another.

Concept check. Why can a 1 mm change in an echo's path move a 5 GHz link by 19 dB while it barely moves a 100 MHz radio link? (Answer: the sensitivity is set by \Delta d/\lambda; 1 mm is 1.7 percent of a 5.8 cm wavelength and 0.03 percent of a 3 m one.)

3. From room geometry to delays

Idea. Path length divided by the speed of light is delay, \tau_i = d_i/c. In a rectangular room the echo off a wall is found by the image method: mirror the transmitter in the wall; the reflected path has the length of the straight line from the image to the receiver. The teaching model used for the widget is a 4 m by 3 m plan view, transmitter at (0.6, 1.4) m, direct amplitude 1/d and wall-bounce amplitude -0.5/d (a sign flip on reflection). These constants are teaching assumptions.

Worked numbers (widget default). Receiver at (3.0, 1.2) m. Direct path 2.408 m, delay 8.03 ns. The strongest echo is the wall at y = 0: 3.538 m, delay 11.80 ns, excess path 1.130 m (3.77 ns), amplitude 0.340 of the direct. The last echo arrives at 14.69 ns, so the whole set spans 6.66 ns from first to last arrival (a span, not the power-weighted RMS delay spread of the textbooks). Summing the direct path and four wall echoes as complex arrows gives +4.99 dB relative to the direct path alone at 5.2 GHz, +0.22 dB at 2.437 GHz and +0.27 dB at 5.975 GHz: the room adds or removes power depending on the band.

Floor bounce, as an assumption. With the transmitter at 2.0 m and the receiver at 1.0 m height, the direct path becomes 2.608 m and the floor bounce 3.847 m, an excess path of 1.239 m (4.13 ns). The plan-view widget omits heights; the floor option is labelled as an assumption.

In words: a real room does not give one echo, it gives a delay set, and the set changes when you move the receiver by a wavelength.

Concept check. Move the receiver 3 cm. Does the delay set change noticeably? Does the channel? (Answer: the delays change by fractions of a nanosecond; the phases of the arrows change by a large fraction of a turn at 5 GHz.)

4. Fresnel zones: where a person can be seen

Idea. Put a point reflector (a person) at P. The reflected path is longer than the direct path by

\Delta d = |TP| + |PR| - |TR|.

The locus of constant \Delta d is an ellipse with the transmitter and receiver at the foci. The n-th Fresnel boundary is the ellipse where \Delta d = n\lambda/2. The zone number is n = \lceil 2\Delta d/\lambda \rceil. With the direct path as reference, the channel is

H = 1 + \rho\, e^{-j2\pi \Delta d/\lambda}.

As the person crosses a boundary, the echo arrow turns half a turn; the amplitude alternates between constructive (1+\rho) and destructive (1-\rho) interference. Across the whole walk the tip of H traces a circle of radius \rho around the point 1 in the IQ plane. This is the mechanism reported for Fresnel-zone sensing in wu2022_75d3 ↗ and xiong2025_e227 ↗.

In words: the person is an arrow that turns by a full turn each time they move so that the reflected path grows by one wavelength. The boundaries are just the places where that arrow points along the direct arrow or against it.

Worked numbers (widget default). 5.2 GHz, link 4 m, \rho = 0.3. At the midpoint, r_n = \sqrt{n\lambda d_1 d_2/d} gives r_1 = 24.01 cm, r_2 = 33.96 cm, r_3 = 41.59 cm. The exact ellipse at the midpoint is slightly wider (24.05, 34.08, 41.81 cm) because r_n assumes the path excess is small against the link. The default person stands at (2.0, 0.30) m: \Delta d = 44.75 mm = 0.776\lambda, zone 2, |H| = +0.75 dB, \angle H = 15.8°. The amplitude limits are +2.28 dB (1.3) and -3.10 dB (0.7). Walking from the link line out to 1 m at the midpoint crosses 16 boundaries (8 amplitude peaks in |H|), with a swing of 5.38 dB.

Blind spots. |H|^2 = 1 + \rho^2 + 2\rho\cos(2\pi\Delta d/\lambda) is flat in \Delta d where the cosine is \pm 1, that is on the boundaries \Delta d = n\lambda/2. A 5 mm change in path length moves |H| by only 0.23 dB on the n = 2 boundary but by 1.46 dB in the middle of the zone (\Delta d = 1.25\lambda), six times more. The literature reports the same interleaving: near a boundary is the worst place for respiration sensing and the middle of a zone the best (wu2022_75d3 ↗, wang2021_d8e3 ↗).

Break it. Walk the person along the n = 2 ellipse instead of across it. \Delta d is constant, so H is constant: the swing over the whole walk is 0.00 dB, at a level of +2.28 dB. A motion that keeps the reflected path length fixed is invisible to amplitude.

Published replay. zeng2021_1e4f ↗ moves a metal plate along the perpendicular bisector of a 5.5 m link from 5.83 to 5.99 m, and reports a reflection path change of five wavelengths at 5.24 GHz and five peaks and valleys. Reading the two distances as the plate distance from the link and using 2\sqrt{(L/2)^2 + h^2}, the workbook finds a path change of 0.2901 m, which is 5.07 wavelengths (\lambda = 5.721 cm), and counts 5 peaks and 5 valleys of |H|. If 5.83 and 5.99 m were instead the path lengths themselves, the change would be 2.80 wavelengths; the reported five peaks are consistent with the first reading. The "exactly five" of the paper is 5.07 in this reconstruction; we could not tell from the passage whether the paper rounds.

Concept check. A person breathes at the midpoint of a link and the breathing amplitude vanishes in the trace while they stay still. What are two ways to fix it without moving the person? (Answer: change band or channel, which moves the boundaries; or add a second link with a different geometry.)

5. Fading statistics: Rayleigh and Rician

Idea. Viewed at one place and one frequency, a channel with many echoes is a sum of many arrows with random angles. If no arrow dominates, the resultant is a 2-D Gaussian point, its length |H| is Rayleigh distributed and deep fades are common. If one arrow dominates (the direct path), the resultant wanders around a fixed point, and |H| is Rician. The ratio of the fixed part to the scattered part is the K-factor. Following ma2020_4782 ↗, with mean power \Omega:

\nu^2 = \frac{K\,\Omega}{1+K},\qquad 2\sigma^2 = \frac{\Omega}{1+K},\qquad \Omega = \nu^2 + 2\sigma^2.

(The extracted passage prints \sigma^2 = 2\Omega/(1+K); that is an extraction artefact, since it would make \Omega inconsistent with the line above.) The book treatment of indoor propagation in bensky2019_6c00 ↗ uses the same split: Rayleigh with no line of sight and many random reflections, Rician with random reflections on a dominant path.

Reading K from data. For a Rice envelope, \gamma = \mathrm{Var}(r^2)/\mathbb{E}[r^2]^2 = (1+2K)/(1+K)^2. Solving for K gives the moment estimator

\hat K = \frac{(1-\gamma) + \sqrt{1-\gamma}}{\gamma}\quad(\gamma<1),\qquad \hat K = 0\ \text{otherwise}.

In words: a steady link has a nearly constant power, so \gamma is small and \hat K is large; a fading link has \gamma \to 1 and \hat K \to 0.

Worked numbers (widget default). \Omega = 1, 2000 draws from a fixed-seed LCG (seed 7), each draw the sum of N equal-length phasors with uniform random angles plus the fixed part.

K true N \hat K mean power largest r
4 (6.02 dB) 32 3.78 0.990 1.98
0 64 0.00 0.979 2.74
0 4 1.07 1.012 1.99
16 (12.04 dB) 32 15.58 0.996 1.55

For a Rayleigh channel, the probability of a fade 20 dB below the mean power is 1 - e^{-0.01} = 0.00995, about one sample in a hundred.

Break it. Keep K = 0 and shrink N to 4. With four phasors of length 1/\sqrt N = 1/2 (so that \Omega = 1), |H| cannot exceed N/\sqrt N = \sqrt N = 2 and the histogram has a hard right edge that a Rayleigh curve does not; the central limit theorem needs many paths. The Kolmogorov distance to the Rayleigh CDF is 0.054 for N = 4 against 0.022 for N = 64; the 5 percent critical value for 2000 draws is 0.030 (a large-sample textbook constant). The exact second and fourth moments for N = 4 (\mathbb{E}[r^4] = 2 - 1/N = 1.75) give \gamma = 0.75 and \hat K = 1.0: the estimator reports a dominant path (0 dB) in a channel that has none.

Concept check. Does a K of 6 dB mean the direct path carries 6 dB more power than everything else? (Answer: yes, K = 4 is a power ratio, direct over scattered.)

6. Motion in time: Doppler and coherence

Idea. A reflector moving at speed v changes the reflected path length by up to 2v per second (monostatic upper bound), so the echo arrow turns at

f_D = \frac{2v}{\lambda}.

Bistatic geometry scales this down: the shift depends on the bistatic angle and on the direction of motion (pegoraro2024_f57c ↗). The Doppler shift follows the rate at which a path length changes (bensky2019_6c00 ↗, stated there for a moving radio), so a reflector that moves without changing its reflected path length gives no shift at all. That is motion along a Fresnel ellipse of section 4, for example parallel to the link at its midpoint. Walking straight away from the midpoint, perpendicular to the link, is the fast direction, not the blind one. The widget writes this as a geometry factor g \in [0, 1], f_D = g\cdot 2v/\lambda. Take 2v/\lambda as the upper bound.

The channel stays correlated with itself for a coherence time, which shrinks as f_D grows. We use the rule of thumb

T_c \approx \frac{0.423}{f_D}.

ASSUMPTION: this is the Clarke approximation from the textbook literature. It was not retrieved from the corpus in this session and should be read as an order of magnitude.

Worked numbers (widget default). Walking at 1.0 m/s:

Band f_D T_c
2.437 GHz 16.26 Hz 26.0 ms
5.2 GHz 34.69 Hz 12.2 ms
5.975 GHz 39.86 Hz 10.6 ms

At 5.2 GHz: 0.5 m/s gives 17.35 Hz and 24.4 ms; 2.0 m/s gives 69.38 Hz and 6.10 ms. During one T_c at 1 m/s the person walks 12.2 mm, which is 0.21 wavelengths.

Where the rule of thumb sits. For scatterers spread evenly around the horizontal plane, the autocorrelation of the channel is J_0(2\pi f_D\tau). At 5.2 GHz and 1 m/s it falls to 0.5 at 6.98 ms and first crosses zero at 11.03 ms. The rule-of-thumb T_c = 12.19 ms lies just past the first zero, where J_0 = -0.124. We could not tie the constant 0.423 to a stated correlation level from retrieved sources, so use T_c as the scale of "the channel has changed", not as a precise threshold.

In words: at 5 GHz a walker turns the echo arrow about 35 times per second, so the channel needs to be looked at every few milliseconds to follow it. Week 4 turns this into a packet-rate requirement.

Concept check. Why does a person moving at 1 m/s change the channel within 12 ms although they have moved by only 12 mm? (Answer: the phase ruler is \lambda, and 12 mm is a fifth of a wavelength at 5.2 GHz.)

7. Three bands, one room

Idea. The same geometry seen at three carriers differs in three ways, all through \lambda:

\lambda = c/f,\qquad r_1 = \sqrt{\lambda\, d_1 d_2/d},\qquad \Delta\mathrm{FSPL} = 20\log_{10}(f_2/f_1).
Quantity 2.437 GHz 5.2 GHz 5.975 GHz
\lambda 12.302 cm 5.765 cm 5.017 cm
First Fresnel radius, midpoint of a 4 m link 35.07 cm 24.01 cm 22.40 cm
Doppler at 1 m/s 16.26 Hz 34.69 Hz 39.86 Hz
Free-space loss at 4 m 52.23 dB 58.81 dB 60.02 dB
Boundaries crossed stepping 0 to 1 m off the midpoint 7.7 16.4 18.8

Ratios: Doppler 2.437 over 5.2 is 0.469; first Fresnel radius 2.437 over 5.2 is 1.461; free-space loss goes up 6.58 dB from 2.437 to 5.2 GHz, 7.79 dB from 2.437 to 5.975 GHz and 1.21 dB from 5.2 to 5.975 GHz. The free-space loss is the isotropic-antenna Friis form 20\log_{10}(4\pi d/\lambda) and contains no wall or antenna gain.

In words: the band that resolves finer motion (smaller Fresnel zones, more boundaries per step) also has the higher Doppler, and it will alias first when the packet rate is too low. Week 4 quantifies this: with a packet rate \mathrm{PRR}, the fastest unaliased walker is v = \lambda\,\mathrm{PRR}/4, which is 1.44 m/s at 100 packets/s and 5.2 GHz, and 3.08 m/s at 2.437 GHz.

Concept check. Which band gives the larger blind-spot band around each boundary, in centimetres? (Answer: 2.437 GHz, since the zones are wider.)

8. Two models of one channel: ray tracing and scattering

Idea. The echo sum of section 2 is the ray-tracing model: a countable set of paths with delays and amplitudes. It is the right model when the paths can be resolved and it supports geometry and localisation. It fails when the bandwidth is too small to separate echoes or the room is cluttered. The scattering model gives up on counting and asks how quickly the channel forgets itself. Take N dynamic scatterers, each turning its arrow at a rate k v\cos\alpha_p (wave number k = 2\pi/\lambda, \alpha_p the direction of motion):

H(t) = \sum_{p=1}^{N} a_p\, e^{-jkv\cos\alpha_p\, t}.

If \cos\alpha is uniform on [-1, 1] (directions spread evenly over the sphere), the autocorrelation is the average of e^{-jkv\tau c} over c \in [-1,1]:

\rho(\tau) = \frac{1}{2}\int_{-1}^{1} e^{-jkv\tau c}\,dc = \frac{\sin(kv\tau)}{kv\tau} = \mathrm{sinc}(kv\tau).

The first zero is at kv\tau_0 = \pi, hence

v = \frac{\lambda}{2\tau_0}.

The quantity recovered is the rate at which path lengths change. That the variation of CSI encodes this rate, and that a frequency times the wavelength returns it, is the CSI-speed model of wang2015_48cf ↗. The sinc shape and its first zero come from the derivation above and rest on an assumption: directions spread evenly over the sphere. Scatterers confined to a plane give J_0 instead of sinc (section 6).

In words: read off how long the channel takes to lose its correlation, and that time is inversely proportional to speed, without separating a single path.

Caveat on the factor 2. In this model v is the rate at which a path length changes (v_{\mathrm{path}}), as k v\cos\alpha is the phase rate of one path. For a reflection off a body at speed v_b the round trip gives v_{\mathrm{path}} \le 2v_b; wang2015_48cf ↗ states the same factor for a steel plate. So a recovered 1.036 m/s means a body moving at least half as fast. The largest Doppler in this model is v_{\mathrm{path}}/\lambda (17.35 Hz at 1 m/s and 5.2 GHz), not 2v/\lambda, and the first zero is at \tau_0 = \lambda/(2v_{\mathrm{path}}) = 28.8 ms. Section 6 wrote the same physics for the body speed: there f_D = 2v_b/\lambda, and a planar field gives the first zero at 11.03 ms for v_b = 1 m/s. The two widgets are not in conflict; their v are different quantities.

Worked numbers (widget default). 5.2 GHz, 1000 Hz sampling, 4 s of data, 200 scatterers, seed 3, lags to 0.4 s.

True path rate v true \tau_0 measured \tau_0 recovered v
0.25 m/s 115.3 ms 116.3 ms 0.248 m/s
0.5 m/s 57.7 ms 54.1 ms 0.533 m/s
1.0 m/s 28.8 ms 27.8 ms 1.036 m/s
1.5 m/s 19.2 ms 19.0 ms 1.517 m/s
2.0 m/s 14.4 ms 14.4 ms 2.002 m/s

The largest relative error over the five speeds is 6.5 percent, at 0.5 m/s. For seeds 1 to 5 at 1 m/s the recovered speed is 1.005, 1.019, 1.036, 0.922, 0.986 m/s (standard deviation 0.039). The empirical ACF at 1 m/s departs from the sinc curve by 0.052 rms.

Break it. With 3 scatterers instead of 200, the same five seeds give 0.518, 0.866, 0.953, 0.601 and 1.005 m/s (standard deviation 0.194): the ACF is a sum of three cosines and no longer a sinc. The speed law needs a cloud, not a few paths.

Why RSSI cannot do this. RSSI is the length of the resultant arrow only. It keeps neither the angle of each echo nor their order in time, so it supports neither the delay set of section 3 nor the ACF of this section.

Concept check. Which model would you use to localise a person, and which to tell running from walking? (Answer: ray tracing with enough bandwidth for the first; scattering for the second.)

Hand-offs

To Week 2: the continuous H(f) = \sum_i a_i e^{-j2\pi f\tau_i}, and the question of which frequencies a Wi-Fi card samples. To Week 4: the Doppler f_D = 2v/\lambda that the packet rate must resolve.

Exam questions with model answers

1. Explain, with a diagram of arrows, why a link can be in a deep fade with two strong paths present. Answer: the two arrows have similar length and opposite direction. Their resultant is short. With a = 1 and \Delta d = \lambda/2, H = 1 - 1 = 0. In the workbook a 1 mm offset from this null already lifts |H| to 0.109 (-19.3 dB), so the null is narrow in \Delta d and different in each band.

2. A person walks in a straight line along the 3rd Fresnel boundary of a link. What does the amplitude do, and why? Answer: nothing. \Delta d = 3\lambda/2 everywhere on the ellipse, so the echo arrow does not turn and H = 1 + \rho e^{-j3\pi} = 1 - \rho is constant. The workbook shows a swing of 0.00 dB for the n = 2 boundary at a level of +2.28 dB. Amplitude sensing has a blind direction: motion along an ellipse.

3. Two channel measurements have \gamma = \mathrm{Var}(r^2)/\mathbb{E}[r^2]^2 of 0.99 and 0.20. Estimate K for each and say which is closer to line of sight. Answer: \hat K = [(1-\gamma)+\sqrt{1-\gamma}]/\gamma. For 0.99: (0.01 + 0.1)/0.99 = 0.11 (about -9.5 dB), Rayleigh-like. For 0.20: (0.8 + 0.894)/0.2 = 8.5 (9.3 dB), Rician with a dominant path. The second is closer to line of sight.

4. A person walks at 2.0 m/s at 5.2 GHz. Give f_D and T_c, and state which assumption T_c depends on. Answer: f_D = 2v/\lambda = 69.4 Hz; T_c \approx 0.423/f_D = 6.10 ms. T_c uses the Clarke rule of thumb (a textbook assumption), and f_D is the monostatic upper bound; bistatic geometry gives lower values, and motion along a Fresnel ellipse (constant reflected path length) gives zero.

5. State the difference between the ray-tracing and the scattering model of a channel, and one method each supports. Answer: ray tracing writes the channel as a sum of a few discrete paths with delays and amplitudes (localisation, needs resolvable paths and bandwidth); scattering writes it as a cloud of moving scatterers and reads speed from the first zero of the autocorrelation, v = \lambda/(2\tau_0) (activity and speed, works when paths cannot be separated).

6. Why does the band that sees finer motion also alias first? Answer: the Doppler per m/s is 2/\lambda, larger at 5.975 GHz (39.86 Hz) than at 2.437 GHz (16.26 Hz); the 2.437 to 5.2 GHz ratio is 0.469. A packet rate must exceed twice the Doppler, so the same rate supports a slower maximum walker at 5.975 GHz (1.25 m/s at 100 packets/s) than at 2.437 GHz (3.08 m/s).

Further reading

  • bensky2019_6c00 ↗: indoor multipath, Rayleigh and Rician fading, coherence bandwidth, Doppler along the path (chapter 2, sections 2.7 and 2.8).
  • ma2020_4782 ↗: survey of Wi-Fi sensing; the Rice parameters and the K-factor.
  • wu2022_75d3 ↗: Fresnel zone model, blind spots at boundaries.
  • zeng2021_1e4f ↗: the metal-plate experiment.
  • xiong2025_e227 ↗: Fresnel-zone limits for respiration sensing.
  • wang2021_d8e3 ↗: model-based sensing survey.
  • wang2015_48cf ↗: the CSI-speed model.
  • pegoraro2024_f57c ↗: bistatic Doppler and the bistatic angle.
  • xie2026_28bb ↗: the CSI quotient rotates by 2\pi when the reflection path grows by one wavelength.

Provenance (instructor only)

No first-party measurement is used in this week. Every number is computed in workbook.ipynb from stated assumptions; the room, the wall gain and the reflector strength are teaching assumptions. Sources consulted, as plain paths:

  • obsidian/monad-knowledge/edu/courses/WS501-wifi-csi-sensing/week-01-the-wireless-channel-how-a/workbook.ipynb
  • obsidian/monad-knowledge/edu/courses/WS501-wifi-csi-sensing/week-01-the-wireless-channel-how-a/numbers.json
  • monad_knowledge/web/frontend/src/lib/wifi-signals.js (people-room constants, room-channel default echo 0.65 and the transmitter and receiver of the default geometry, the LCG)
  • monad_knowledge/web/frontend/src/lib/csi-frames.js (wave and complex frames)
  • obsidian/monad-knowledge/literature/Short-range Wireless Communication.md
  • obsidian/monad-knowledge/literature/WiFi Sensing with Channel State Information.md
  • obsidian/monad-knowledge/literature/WiFi CSI-based device-free sensing from Fresnel zone model to CSI-ratio model.md
  • obsidian/monad-knowledge/literature/Boosting WiFi Sensing Performance via CSI Ratio.md
  • obsidian/monad-knowledge/literature/Unmasking Fresnel-Zone Limitations for Robust Respiration Sensing in Cell-Free Massive MIMO.md
  • obsidian/monad-knowledge/literature/CSI-based human sensing using model-based approaches a survey.md
  • obsidian/monad-knowledge/literature/Understanding and Modeling of WiFi Signal Based Human Activity Recognition.md
  • obsidian/monad-knowledge/literature/JUMP Joint Communication and Sensing With Unsynchronized Transceivers Made Practical.md
  • obsidian/monad-knowledge/literature/Estimation of Water-Surface Variations Using Wi-Fi Channel State Information.md

Removed from the previous version of this lecture: the through-wall path-loss ladder, the per-person power slopes and the failed two-wall goal, all of which depended on a specific measurement campaign. Not sourced this session: the constant 0.423 in T_c (textbook assumption); the antenna heights and floor amplitude in the floor-bounce option (assumptions); the Kolmogorov constant 1.358 (textbook).