Summary
The RTL8812CU (rtl8822c, 0bda:c812) receives poorly on 2.4 GHz channel 6 — RX frame delivery is intermittent-to-none — while 5 GHz reception is solid. This is pre-existing (present on master), not caused by any recent refactor.
Observed
Ambient RX capture via tests/bench_init.py (init → first RX frame), 2 reps per build:
| build |
c812 RX ch6 |
c812 RX ch36 |
master (f542b06) |
0/2 |
— |
| refactor branch (#125) |
1/2 |
400 frames captured |
- On ch36 (5 GHz, rtl8822c's validated band) the same binary pulls hundreds of frames per run.
- On ch6 the chip initializes cleanly (
monitor RX config applied, IQK completes) but delivers few or no frames, even with a strong local beacon injected on the same channel.
- Its Jaguar3 sibling rtl8822e (
0bda:a81a), which shares the same FrameParserJaguar3 read/parse path, does capture on ch6 — so the gap is specific to the rtl8822c PHY/RF path on 2.4 GHz, not the shared RX plumbing.
Expected
Comparable RX sensitivity on 2.4 GHz to the other supported chips (8812AU / 8821AU capture ch6 ambient reliably in the same rig).
Repro
cmake -S . -B build && cmake --build build -j
sudo python3 tests/bench_init.py --pids c812 --channel 6 --skip-tx --reps 2
sudo python3 tests/bench_init.py --pids c812 --channel 36 --skip-tx --reps 2 # contrast
Suspected areas
- 2.4 GHz RF front-end / RFE pin config or LNA path for rtl8822c (the 5 GHz path is the one that was primarily brought up and validated).
- 2.4 GHz AGC / initial-gain or CCK RX config on rtl8822c.
Notes
Not a regression — surfaced while A/B-testing the src/jaguar1 split (#125), where master showed the same (worse) ch6 behavior. Filing so the 2.4 GHz rtl8822c RX path gets a proper look.
Summary
The RTL8812CU (rtl8822c,
0bda:c812) receives poorly on 2.4 GHz channel 6 — RX frame delivery is intermittent-to-none — while 5 GHz reception is solid. This is pre-existing (present onmaster), not caused by any recent refactor.Observed
Ambient RX capture via
tests/bench_init.py(init → first RX frame), 2 reps per build:master(f542b06)monitor RX config applied, IQK completes) but delivers few or no frames, even with a strong local beacon injected on the same channel.0bda:a81a), which shares the sameFrameParserJaguar3read/parse path, does capture on ch6 — so the gap is specific to the rtl8822c PHY/RF path on 2.4 GHz, not the shared RX plumbing.Expected
Comparable RX sensitivity on 2.4 GHz to the other supported chips (8812AU / 8821AU capture ch6 ambient reliably in the same rig).
Repro
Suspected areas
Notes
Not a regression — surfaced while A/B-testing the src/jaguar1 split (#125), where
mastershowed the same (worse) ch6 behavior. Filing so the 2.4 GHz rtl8822c RX path gets a proper look.