LE Audio Venue Receiver (Lanyard) Hardware Design Guide
A lanyard-style LE Audio venue receiver is “good” only when sync stays locked and audio stays clean under real crowd conditions (multipath, interference, cable/ESD, and charging noise). The fastest way to get there is an evidence-first workflow: align every dropout/pop/drift to PER/ISO counters, buffer level, PLL/MCLK, and VBAT/rails/charger flags—then apply the smallest targeted fix.
H2-1. Definition & System Boundary (What this receiver is / is not)
A lanyard-style venue receiver succeeds only when sync/clock stability, loss-tolerant LC3 receive, and a low-noise output path remain repeatable under real venue interference, charging noise, and human-body blockage.
This page is RX-only: it focuses on receiver hardware evidence (RF → LC3 RX → audio out → power/charging → immunity), and avoids broadcaster deployment and app tutorials.
- Form factor: lanyard-worn receiver with buttons/LED UI, single Li-ion cell, and cabled interfaces (headphones + USB-C).
- Input: LE Audio venue broadcast (isochronous RX). Only the receiver-side RF + audio pipeline is covered.
- Output: stable, low-noise headphone audio with predictable latency and recoverable behavior under short RF fades.
- Not a broadcaster/relay design guide and not a venue infrastructure playbook.
- Not a smartphone app/UX walkthrough or consumer pairing tutorial.
- Not a full BLE specification deep dive; only implementation-relevant evidence points are used.
- Glitch-free stability: continuous playback for 60 minutes with no audible dropouts, bursts, or stuck-mute events under typical venue RF conditions.
- Latency stability: end-to-end latency stays stable (low jitter). Sudden “tempo hiccups” are treated as failures, even if average latency is acceptable.
- Audio integrity: idle noise floor and pop/click behavior remain within target limits across headphone loads and while charging.
- Power predictability: no brownouts/resets during volume steps, reconnection bursts, LED activity, or cable insertion events.
Practical rule: if an issue cannot be confirmed by at least two measurements (e.g., counters + waveform), it is not yet “diagnosed.”
- RF + ISO evidence: log RSSI, PER, and ISO event miss / retransmission counters aligned with timestamps.
- Audio + power evidence: capture HP output waveform at glitch moments and probe VBAT + critical rails for droop/ripple.
H2-2. User Scenarios → Performance Targets (Latency / Robustness / Runtime)
Venue receivers fail in ways that look “random” because multiple stressors overlap: human-body shadowing, multipath, dense 2.4 GHz activity, cable ESD, and charger ripple. This chapter converts those real-world conditions into measurable targets and a module-to-metric map so every later chapter can point back to the same pass/fail logic.
- Body shadow + rotation: RSSI can swing quickly; short fades must not collapse audio buffering.
- Multipath near metal: RSSI may look acceptable while PER rises due to reflections and packet collisions.
- Dense 2.4 GHz activity: increased retry/packet loss triggers PLC; buffer strategy becomes the limiter.
- Charging while listening: switching ripple + ground return can raise noise floor or create periodic tones.
- Cable events: headphone insertion and ESD must not leave the device in a stuck mute/fault state.
| Target | How to measure (two minimum evidences) | Pass/fail discriminator | Primary blocks |
|---|---|---|---|
| Link robustness dropout-free listening |
① RSSI + PER time series ② ISO miss / retrans counters aligned to audio timestamps |
RSSI stable but PER spikes → interference/multipath; RSSI drops → body shadow/antenna detune. | RF RX, antenna, coexistence coupling |
| Latency stability low jitter vs average |
① audio pulse alignment (TX reference vs HP output) ② buffer level + clock lock over time |
Sudden tempo “hiccup” usually matches buffer underflow or re-lock events, not average latency. | LC3 buffer, clock/PLL, scheduler |
| Audio noise floor hiss/tones |
① A-weighted noise at HP output (idle) ② spectrum vs charging state / LED PWM activity |
Noise changes with charger or UI activity → ripple/ground coupling; constant hiss → amp gain/impedance. | DAC/HP amp, power rails, layout/return |
| Pop/click immunity user events |
① HP output waveform during insert/stop/reconnect ② amp fault / mute flags + PLL lock transitions |
Click coincident with PLL re-lock or rail step → clock/power transient; click only on insert → jack detect/soft-start. | Clock/PLL, amp soft-start, jack detect |
| Runtime & brownout margin no resets |
① VBAT + critical rails droop during stress (volume step, reconnect) ② reset reason + UVLO counters |
VBAT stable but rail droops → regulator/bypass; VBAT droops → battery IR/contact/trace resistance. | Power tree, PMIC, battery path |
| Charging safety & thermal predictable derating |
① charger state + thermal regulation flags ② temperature rise vs charge current profile |
Repeated charge restart → cable/port/protection trip; high noise while charging → ripple/return path. | USB-C protection, charger, thermal paths |
This table is the “contract”: each later chapter should explain how its subsystem can break one or more targets, and which evidence confirms it.
H2-3. RF Receive Path (Front-end, Antenna, Coexistence) — Receiver-only
“RSSI looks fine but audio still stutters” usually means the receiver has acceptable signal strength but poor reliability: packet errors, missed isochronous events, or self-noise coupling collapse effective SNR. This section turns that ambiguity into a two-measurement triage and a three-branch decision.
- RF time series: log RSSI and PER/CRC fail rate over time (same windowing and timestamps as audio events).
- Isochronous evidence: log ISO event miss, retries, and any late/invalid packet counters.
Counters without time alignment often mislead: many dropouts are short bursts triggered by a single rotation, a charger cable touch, or LED PWM activity.
- Receiver rotates relative to the broadcaster → fast RSSI swings.
- Human-body absorption increases at 2.4 GHz → fades are posture-dependent.
- Metal necklace/clip can detune antenna resonance.
- Cable routing can couple into antenna near-field or reference ground.
- Plug/unplug and cable rub can inject ESD events into sensitive nodes.
- Different cable shields change common-mode noise pickup.
A venue receiver often contains noise sources that can degrade RX sensitivity even when RSSI looks “normal”: charger switching ripple, PMIC ground bounce, LED PWM spectral lines, and high di/dt digital bursts. Treat these as measurable contributors, not “mystery RF problems.”
- Charging correlation test: compare counters with USB-C connected vs disconnected at the same location/orientation.
- UI activity correlation: toggle LED PWM (brightness) or button scan rate; watch PER/ISO misses.
- Supply cleanliness check: probe RF rails and reference ground for ripple spikes aligned to dropouts.
- Branch A — RSSI stable, PER/ISO misses spike: multipath/interference dominates; focus on RX robustness and environment sensitivity.
- Branch B — RSSI drops with posture/orientation: body shadow or antenna detune; focus on wear positioning, cable routing, and antenna reference.
- Branch C — PER/ISO misses correlate with charging/LED activity: self-noise coupling; focus on PMIC/charger ripple, ground return, and isolation.
If Branch C holds, “improving antenna gain” may not help until self-noise is reduced; effective SNR is limited by internal coupling.
- Wear/cable controls: lock a recommended lanyard length and cable route; keep antenna away from metal clip and headphone cable loop.
- Noise containment: ensure RF rails have local decoupling and a quiet reference; avoid LED PWM harmonics near sensitive bands; reduce di/dt edges near RF front-end.
- Evidence regression: repeat the same rotation/body-block script and verify PER/ISO counters improve, not just RSSI.
H2-4. LC3 Receive/Decode Pipeline (PLC, buffering, glitch control)
Dropouts and bursts are often blamed on “the stream,” but the receiver usually controls the real failure point: jitter buffer strategy, PLC behavior, and compute scheduling. This section turns glitches into a measurable pipeline: buffer level, PLC rate, decode time, and ISR latency.
- Input reliability: ISO miss/retry counters (from H2-3) and arrival-time variance.
- Buffer health: jitter buffer fill level over time, with underflow/overflow flags.
- Concealment load: PLC invoke rate and its duration.
- Compute budget: decode time per frame + CPU load + ISR latency.
- Output deadline: audio callback deadline misses (glitch timestamp source of truth).
A useful rule: if the glitch timestamp is known, the pipeline should be able to answer “which variable crossed a threshold at that moment.”
- Often follows a burst of ISO misses or arrival-time jitter.
- Audio becomes intermittent; PLC may mask short gaps but fails on sustained loss.
- Evidence: buffer level trends down toward zero, then a hard discontinuity occurs.
- Can appear as “tempo/latency weirdness” rather than clean dropouts.
- May occur when clock/sync recovery oscillates or when timestamps jitter.
- Evidence: buffer level oscillates or saturates while ISO misses are not severe.
Oversizing the buffer can hide RF issues but increases latency and makes sync correction harder; the goal is stable buffer dynamics under realistic fades.
- Trigger: missing or late frames that cannot be reconstructed by retries within the playback deadline.
- Side effects: timbre smearing, transient distortion, or “watery” artifacts increase with PLC rate.
- Control lever: reduce PLC frequency by improving input regularity (RF reliability or timestamp/sync) and choosing a buffer policy that avoids deadline misses.
PLC is not a “fix” for persistent loss. If PLC rate rises and buffer is still draining, the root cause is upstream (RF reliability or sync).
On compact receivers, short compute bursts can break audio even when RF and buffer look acceptable: LED updates, storage writes, protocol stack bursts, or ISR storms can delay decode or miss the output callback deadline.
- Minimum evidence: buffer level + CPU load/ISR latency aligned to the same glitch timestamp.
- Discriminator A (scheduler-limited): buffer hits low watermark exactly when CPU/ISR spikes.
- Discriminator B (sync/ISO jitter): buffer “jumps” even when CPU is quiet (input timing irregularity).
- First fix: raise audio pipeline priority and move heavy work out of critical windows (DMA, batching, defer non-audio tasks).
- Second fix: cap ISR duration; avoid long critical sections; ensure decode time margin under worst-case CPU load.
H2-5. Sync & Clock Architecture (Why stable audio depends on clock lock)
Stable playback is a clock problem as much as it is an RF problem. Pitch drift, periodic stutter, and “random” click/pop frequently trace back to lock stability, frequency offset, and holdover behavior. This section links audible symptoms to measurable clock evidence and the exact mechanisms that break continuity: rate mismatch, buffer drift, and relock events.
The receiver must translate a local reference into audio clocks that meet deadline and quality targets under fades and short interruptions. Typical implementations vary, but the engineering questions remain the same: what is the time base, how does it lock, how does it behave when the reference weakens.
- Reference source: XO / TCXO (stable) or RC (low-cost, higher drift).
- Locking block: PLL / DFLL generates audio master clocks from the reference and sync information.
- Audio clock outputs: MCLK, BCLK, LRCK feeding DAC and the output path.
- Sync coupling: RF/ISO timing influences how aggressively the clock loop corrects offset.
A “good RSSI” does not prevent clock drift from accumulating. Even small frequency offset can force slow buffer correction that sounds like jittery pacing.
Holdover is the receiver’s ability to keep the audio time base coherent when input timing becomes unreliable: brief packet loss bursts, momentary sync ambiguity, or interference spikes. The goal is not “perfect time” but stable continuity without audible discontinuities.
- Clock stays monotonic; no abrupt jumps at recovery.
- Offset correction is smooth; buffer correction is gradual.
- Relock events are rare and controlled.
- Repeated relock cycles under modest fades.
- Buffer fill level oscillates (“sawtooth”) even when CPU is quiet.
- Clicks/pops align with lock transitions.
Jitter on audio clocks can degrade DAC performance in ways that resemble “amp noise” or “mysterious distortion.” For a wearable receiver, the most actionable view is: what changes jitter statistics and what correlates with listening artifacts.
- Clock-period stats: track MCLK period variation (min/max/peak-to-peak) over consistent time windows.
- Event correlation: compare jitter and lock flags across charging state, LED/PWM activity, and RF fade scripts.
- Attribution: if jitter worsens mainly during charging/UI bursts, the likely path is power/ground coupling into the reference or loop.
- Measure #1: PLL lock flag, relock count, and frequency offset over time.
- Measure #2: Audio MCLK jitter/period stats (windowed) aligned to audio glitch timestamps.
- Discriminator A: lock instability / relock aligns with click/pop → clock lock transitions are audible.
- Discriminator B: sustained offset forces buffer stretch/compress → pacing issues and intermittent stutter.
- Discriminator C: jitter worsens with charging/LED activity → power/ground contamination into reference/PLL.
If relock events occur at the same moments as pop/click in H2-6 waveforms, treat clock lock stability as the primary root cause.
H2-6. Audio Output Chain (DAC → HP Amp → Hearing Protection)
A lanyard receiver is a wearable audio endpoint: it must be quiet at idle, stable across different earphone loads, and safe during plug/unplug, start/stop, and clock transitions. This section focuses on the output chain as a complete system: DAC selection, headphone amplifier behavior, and protection / pop control—all tied to measurable evidence.
- Dynamic range & noise: determines perceived hiss during quiet content and pauses.
- THD+N margin: affects harshness and fatigue at higher volume, especially with reactive loads.
- Interface robustness: I2S/TDM stability depends on clean clocks (MCLK/BCLK/LRCK) and sane start/stop sequencing.
- Mute/soft-start hooks: DAC features that coordinate with pop suppression logic reduce audible transients.
If noise/distortion changes mainly when the clock lock state changes (H2-5), treat the clock path as the primary suspect before swapping DAC/amp parts.
- Low-impedance IEMs demand current; higher impedance loads demand voltage swing.
- Output impedance influences damping and can change frequency response with multi-driver IEMs.
- Thermal headroom is limited in a wearable enclosure; efficiency and stability matter.
- Gain setting + input-referred noise define idle hiss.
- Power rail ripple and ground return paths can modulate noise floor.
- Pop/click can originate from DC bias shifts and mute sequencing.
- Limiter: threshold and attack/release shape perceived “pumping” and prevent sudden loud peaks.
- Soft-start / mute: coordinate DAC and amp enable timing to avoid DC steps and transient pops.
- OCP / short protection: detect overloads quickly and recover gracefully (avoid latched silence without user intent).
- Start/stop robustness: ensure transitions (pause/resume, relock, cable insert) cannot generate large impulses.
- Measure #1: Idle noise floor (A-weighted) under controlled gain and at least two representative loads.
- Measure #2: Pop/click waveform during start/stop, plug/unplug, and any relock event windows.
- Discriminator A: noise floor changes with charging state → power/ground coupling dominates.
- Discriminator B: pop/click aligns with PLL relock (H2-5) → clock transitions dominate.
- Discriminator C: pop appears only on plug/unplug or amp enable → output sequencing dominates.
Keeping a single “glitch timeline” (audio artifacts + lock flags + rail events) is the fastest way to avoid false root causes.
H2-7. Power Tree & Runtime Engineering (Battery → rails → audio stability)
Short runtime, random resets, and “mysterious” audio instability usually share one root: the power tree cannot hold voltage and reference integrity under real transient scripts (volume steps, RF recovery, UI PWM, and charging events). This section maps symptoms to VBAT + rail evidence, then splits root causes into battery/connection vs regulator/compensation vs coupling.
Treat power as domains with different sensitivity and transient profiles. The goal is not more rails, but rails that remain stable when the device enters its highest di/dt moments.
- Bursty current under reconnect / fade recovery.
- Rail noise can reduce timing margin and amplify dropouts.
- Best probes: RF rail droop + counter correlation.
- Volume steps and low-Z loads create fast load edges.
- Supply ripple can map into noise floor and pops.
- Best probes: audio rail + audio ground ripple.
- PWM/scan activity introduces periodic di/dt.
- Ground bounce couples into sensitive references.
- Best probes: UI rail pulses + shared return paths.
- Write bursts look “random” in the field.
- Brownout may occur without obvious average-power changes.
- Best probes: rail droop during write timestamps.
Power issues must be forced into repeatable scripts so waveforms and counters can align to the same moment. Use these scripts to generate the highest stress on VBAT and critical rails:
- Volume step: pause → mid → loud (forces HP amp current edge).
- RF fade & recovery: shield/attenuate → release (forces reconnect bursts).
- UI PWM change: LED brightness change or blink pattern (forces periodic rail pulses).
- (Optional) logging burst: trigger a known write/flush cycle and time-stamp it.
- (Optional) temperature corners: cold-start vs warm, focusing only on droop behavior (no compliance text).
Each script must be captured with the same trigger reference (glitch timestamp or event flag) to avoid false attribution.
- Temperature dependency: lower temperature increases internal resistance, amplifying VBAT droop and SOC estimation error.
- Load dependency: pulsed loads can distort voltage-based estimation; integration error can drift over time if calibration is weak.
- Engineering boundary: treat SOC as a hint; the hard truth is shutdown VBAT + UVLO/BOR counters under real scripts.
- Measure #1: VBAT droop + rail droop aligned to the audio glitch moment (same timeline).
- Measure #2: brownout/UVLO/BOR counters + PMIC fault flags (if available) aligned to the same timeline.
- Discriminator A: VBAT stable but a single rail drops → regulator selection/compensation/decoupling or domain coupling.
- Discriminator B: VBAT drops first (rails follow) → battery IR, connector/contact resistance, wiring drop, mechanical intermittency.
- Discriminator C: “DC looks fine” but glitches occur → high-frequency ripple/ground bounce corrupting references rather than large droop.
A power tree debug log should always include: timestamped glitch marker, VBAT, at least one sensitive rail (RF or audio), and reset/UVLO counters.
H2-8. USB-C Charging & Safety (OVP/OCP/OTP + thermal)
Charging problems are rarely “just a bad cable.” A wearable receiver can fail in a specific state: attach detection, protection gating, current regulation, or thermal derating. This section turns “won’t charge / charges slowly / gets hot / unstable while charging” into a verifiable chain of state flags, protection triggers, and noise coupling evidence.
- Port protection: ESD + surge clamps and overvoltage protection at VBUS.
- CC detect: attach detection and role/advertised current handling (implementation-specific).
- Charger + power-path: manages battery current while maintaining system load stability.
- Thermal loop: temperature sensing and regulation reduce current to stay within safe envelope.
The most useful view is a simple state machine: attach → enable path → CC → CV → thermal regulation. Each user complaint maps to one stuck/looping state.
- Trips on VBUS excursions and unstable adapters.
- Can appear as attach/detach loops.
- Verify with fault flags + VBUS droop snapshots.
- Trips on port/cable intermittency or sudden load edges.
- Recovery policy matters: avoid “latch-off” without a clear user action.
- Correlate with relogging of charge-enable state.
- Derates current to limit temperature rise.
- Feels like “charging too slow” while staying stable.
- Verify with thermal flags and charge current trend.
- Port transients can trip protection even if charging is “mostly OK.”
- Focus on protection chain behavior and repeated resets—not test standards text.
- Verify with fault counters around plug/unplug.
- Switching ripple: charger frequency/harmonics can enter audio rails and audio ground.
- Return-path overlap: shared ground segments create ground bounce that modulates DAC/amp reference.
- Cable/adapter variance: different ripple spectra change the perceived noise floor and pop rate.
If the noise signature is “locked” to a fixed tone or harmonic during charging, treat switching ripple and return paths as the primary suspect.
- Measure #1: charger switching ripple on audio ground or audio rail aligned to the noise/glitch moment.
- Measure #2: charge state flags + thermal regulation flags + OVP/OCP/OTP indicators on the same timeline.
- Discriminator A: ripple correlates with audible noise → ground/filters/layout coupling dominates.
- Discriminator B: state machine loops (enable→fault→retry) → cable/port/protection mis-trigger dominates.
- Discriminator C: stable but slow charge with thermal flags → thermal derating dominates (not “broken charging”).
H2-9. EMC/ESD & “Real Venue” Immunity (Receiver survivability)
In crowded venues, failures often come from injection + return-path rather than RF range alone. The receiver must survive human ESD, long cables acting as antennas, and repeated plug/unplug events without deadlocks, loud pops, silent-latched states, or charging dropouts.
- ESD to plug shell or user touch on cable.
- Insert/remove sparks and fast edge currents.
- Most likely to create silent-but-alive or pop/click.
- ESD to shield + VBUS excursions on unstable adapters.
- Protection gating can loop attach → enable → fault → retry.
- Most likely to trigger charging dropout or reset reason.
- Human touch and friction charge inject into chassis edges.
- Couples into ground perimeter and antenna environment.
- Most likely to show RF lock-loss without hard resets.
- Injection is only half; the return path decides the victim.
- Avoid routing return through audio/RF reference regions.
- Prefer controlled chassis/shield discharge routes.
- Silent but alive: no reboot, but audio mutes or latches after an ESD touch.
- Pop/click burst: audible spike or noise burst aligned to plug/touch events.
- RF/charge disruption: lock-loss, dropouts, or charging state resets after cable or chassis ESD.
Treat “no reboot” as a positive clue: it often indicates a state latch (mute/fault) rather than supply collapse.
- Measure #1: ESD event marker → rail glitch / reset reason / PMIC fault flags.
- Measure #2: audio mute status / amp fault flags captured immediately after the event and after recovery attempts.
- Discriminator A: reset reason + UVLO/BOR counters increment → supply/protection path dominates.
- Discriminator B: no reset, but mute/fault latches → audio state/return-path coupling dominates.
- Discriminator C: no reset/mute, but RF counters spike → chassis/antenna environment coupling dominates.
- Zone the references: keep audio reference and RF reference separated from high-energy discharge routes.
- Build a moat: place a controlled barrier around sensitive nodes (audio input reference, DAC ref, clock ref, RF front-end ref).
- Control the discharge: ESD should prefer chassis/shield paths instead of crossing the analog ground region.
- Validate with replay: repeat ESD touch at jack/USB/chassis while logging event marker + flags.
Success metric is not “no reaction,” but “no latch, no reboot loop, no lasting mute, and automatic recovery to normal audio.”
H2-10. Hardware UX That Impacts RF/Audio (Buttons, LEDs, Cable, Enclosure)
Many “mystery” issues are caused by UX hardware and physical coupling: button scanning edges, LED PWM, enclosure detuning, lanyard metal proximity, and earphone insertion detection. This section converts them into two hard evidences: spectrum fingerprints and orientation fingerprints.
PWM and scan edges create repeatable spectral lines and harmonics. If audio noise rises only when LEDs blink or UI activity changes, treat frequency correlation as the first discriminator.
- Record LED PWM frequency / scan rate and the exact UI pattern (blink duty, brightness step).
- Measure noise spectrum or FFT of audio output / ground ripple and locate peaks at PWM/scan and harmonics.
- Run A/B: change PWM frequency or disable LEDs; verify peak movement or disappearance.
If the noise peak “tracks” the PWM frequency, the coupling path is confirmed before any layout change.
Metal proximity, body loading, and cable routing can detune the antenna environment and change multipath coupling. Orientation-driven PER spikes often indicate mechanical/electromagnetic coupling rather than codec instability.
- Define 4–6 repeatable orientations: chest-front, rotated 90°, near phone, cable wrapped, lanyard metal touching housing.
- Log RSSI + PER + ISO miss counters for each pose over a fixed interval.
- If PER changes strongly with pose while RSSI stays “OK,” detune/coupling and reflections dominate.
- Detection thresholds: avoid flapping near threshold; use debounce windows that match real insertion dynamics.
- Pop/click handling: enforce mute windows and soft-start transitions around insert/remove and jack detection edges.
- Correlation: align pop/click waveforms to detection edges and to rail/ground ripple spikes.
If pop/click occurs without resets and repeats at consistent detection edges, treat it as a state/transition problem, not a “random” EMC problem.
- Measure #1: noise spectrum vs LED PWM / scan frequency (include harmonics).
- Measure #2: RSSI/PER vs device orientation (pose statistics).
- Discriminator A: spectrum peaks track PWM/scan → UI coupling path dominates.
- Discriminator B: PER spikes track pose/lanyard metal → antenna environment detune/coupling dominates.
- Discriminator C: insert/remove pop aligns to detection edge → debounce/mute window dominates.
H2-11. Validation & Test Plan (What to measure, how to pass/fail)
A venue receiver fails when evidence is missing. This plan defines a repeatable lab + semi-venue test matrix: each item has a stimulus script, at least two observables, pass/fail gates, and a direct mapping to the design chapters.
Rule: every subjective symptom (dropout / pop / “pitch drift”) must be time-aligned to counters and/or waveforms.
| Domain | Test item | Stimulus (script) | Observe (≥2) | Pass / Fail (example gates) | Tools | Maps to |
|---|---|---|---|---|---|---|
| RF | Multipath + body block | Chest-worn; rotate 0/90/180; hand cover; walk fixed path | RSSI(t)PER/ISO miss(t) glitch count | 60 min continuous audio; PER peaks stay below target; dropouts must correlate to PER/ISO counters | RF attenuator (optional), log export | H2-3, H2-10 |
| RF | Coexistence noise (charging/UI) | LED blink patterns + charging on/off while receiving | PER/ISO missRSSI noise spectrum | No systematic PER increase when UI/charging toggles; any change must be explainable by measured coupling | FFT/audio analyzer, scope | H2-3, H2-8, H2-10 |
| Sync/Clock | Lock time & relock stability | Start receive; enforce short RF fades (attenuate then recover) | PLL lock flagfreq offset buffer level | Lock time < target; no frequent relock; no audible pop aligned with relock | log + scope on MCLK | H2-5, H2-4, H2-6 |
| Sync/Clock | Holdover under packet loss | Inject burst loss / jitter; keep audio output running | buffer(t)PLC rate MCLK stats | No pitch drift; buffer does not collapse; PLC does not dominate normal listening | loss injector (or RF script), log | H2-4, H2-5 |
| Audio | Idle noise floor | Mute/unmute; volume sweep; charging on/off A/B | A-weighted noiseground ripple | Noise floor stays within target; no large shift between charging states | audio analyzer, scope | H2-6, H2-8 |
| Audio | Pop/click during state changes | Start/stop stream; reconnect; jack insert/remove | HP out waveformmute/fault flags | No pop above threshold; no stuck mute after events | scope + log | H2-6, H2-9, H2-10 |
| Power | Runtime under realistic script | Continuous play + periodic UI + walk/rotate script | runtimeVBAT droop UVLO/BOR cnt | Meets runtime target; no unexpected resets; droop stays within margin at glitch moments | power logger, log | H2-7 |
| Charging | Audio while charging | Multiple cables/adapters; plug/unplug; thermal ramp | charge flagsthermal flags noise spectrum | No charge restart loop; no new tones in audio band; predictable derating behavior | USB power meter, scope | H2-8, H2-6 |
| EMC Pre-check | ESD touch points (engineering) | Touch jack shell / USB shell / chassis edges; repeat with logging | reset reasonmute/fault latch | No reboot loop; no persistent mute; auto recovery to audio output | ESD gun (if available), log | H2-9, H2-7, H2-8 |
Gates are product-defined. Keep them explicit (numbers) and stable across builds to make regressions obvious.
- RF: RSSI, PER, ISO miss, retransmit/CRC error counters
- Decode: buffer level(t), PLC rate, CPU load / ISR latency proxy
- Clock: PLL lock flag, offset estimate, relock count, MCLK/LRCK period stats (or proxy)
- Audio: mute status, amp fault flags, pop/click event marker
- Power: VBAT, key rails, droop markers; reset reason; UVLO/BOR counters
- Charging: attach state, charge mode, regulation flags (thermal / input limit), fault codes
All counters should have a “snapshot at event” path (button press / reconnect / plug) and a periodic sampler.
These are common, sourceable parts used as reference points. Final selection depends on RF stack/SDK support, power budget, audio targets, and PCB constraints.
- Qualcomm QCC5171 / QCC5181
- Nordic nRF5340
- Silicon Labs EFR32BG24
- NXP RW612 (Wi-Fi + BLE class, verify LE Audio use-case)
Validation focus: ISO counters access, LC3 pipeline load, stable audio clock outputs.
- Epson TG-3541 (TCXO family)
- SiTime SiT5356 (TCXO family)
- Abracon ASTX-H11 (XO family)
Validation focus: lock time, relock frequency, MCLK jitter proxy vs audible artifacts.
- Cirrus Logic CS43131
- TI PCM5102A
- AKM AK4377A
Validation focus: idle noise, THD+N at target load, click/pop behavior at transitions.
- TI TPA6132A2
- TI TPA61165A2
- Analog Devices SSM6322
- Maxim/ADI MAX97220A
Validation focus: output power, output impedance impact, fault latch flags, pop suppression.
- TI TPS62840 (buck)
- TI TPS62740 (ULP buck)
- TI TPS7A02 (low-noise LDO)
- ADI ADP150 (low-noise LDO)
Validation focus: rail droop at audio glitches, noise coupling into audio ground/reference.
- TI TUSB320LAI (Type-C CC)
- ST STUSB4500 (PD sink controller)
Validation focus: stable attach state, no restart loops under cable/adapter variance.
- TI BQ25895 (switch-mode charger + power-path)
- TI BQ24075 (linear charger + power-path)
- TI BQ25120A (ULP wearable charger)
Validation focus: audio-while-charging ripple, thermal regulation flags, fault recovery.
- TI BQ27441-G1
- Maxim/ADI MAX17048
- Maxim/ADI MAX17055
Validation focus: “SOC looks OK but shutdown” cases; droop correlation vs model error.
- TI TPD4E05U06 (ESD array)
- TI TPD1E10B06 (single-line ESD)
- Nexperia PESD5V0S1UL
- Littelfuse SP0502BAHT
Validation focus: event → reset reason / mute latch; ensure discharge prefers shield/chassis path.
- Murata DLM11SN900HY2 (CM choke family)
- TDK ACM2012 (CM choke family)
- Murata BLM18 (ferrite bead family)
Validation focus: ripple/spectrum reduction and reduced PER spikes when UI/charging toggles.
- Johanson 2450AT18A100 (chip antenna)
- Pulse Electronics W3011 (chip antenna family)
Validation focus: pose sensitivity (PER vs orientation) and lanyard/enclosure detune effects.
MPNs are references. Confirm RF/LE Audio feature support (LC3/ISO access), package/thermal limits, and compliance to the intended audio output and battery constraints.
H2-12. Field Debug Playbook (Minimal tools → isolate layer → first fix)
Field debug must work with limited tools. Each symptom uses the same 4-part template: First 2 Measurements → Discriminator → First Fix → Confirm, and maps back to design chapters.
Minimal kit: log export + stable headphone load + USB power meter; scope improves speed but is optional.
If one of these is missing in logs, add it before chasing intermittent venue failures.
Symptom A — “RSSI looks OK but audio is choppy” (maps: H2-3/H2-4)
- PER/ISO miss counters vs time (align to the dropout moment)
- buffer level(t) (underflow/oscillation around the dropout)
- RSSI stable + PER spikes → multipath/interference/coupling dominates (RF layer)
- PER low but buffer collapses with CPU/ISR peaks → decode scheduling/buffering dominates
- RF path: change lanyard/cable routing; keep USB/LED activity off during A/B; reduce enclosure detune sensitivity
- Decode path: increase jitter buffer margin; tune PLC threshold; avoid CPU peak starvation of audio thread
- Repeat the same walking/rotation script; dropout disappears and counters no longer spike at the same timestamps
Symptom B — “Turning/walking causes pop or sudden mute” (maps: H2-3/H2-10/H2-9)
- RSSI/PER vs orientation (4–6 fixed poses, 30–60 s each)
- mute status / amp fault flags right after the event
- PER strongly tracks pose → antenna environment detune/cable coupling dominates
- No reset, but mute/fault latches → state latch from ESD/edge coupling dominates
- Detune path: review antenna choice and placement (e.g., 2450AT18A100 class); isolate lanyard metal from antenna keep-out
- Latch path: add/upgrade ESD arrays (e.g., TPD4E05U06, PESD5V0S1UL) and ensure discharge return avoids audio reference
- Pose script no longer causes mute; any PER variation stays within target distribution
Symptom C — “Noise/whine only while charging” (maps: H2-8/H2-6)
- Audio noise spectrum vs charger switching frequency/harmonics
- Charge state flags + thermal regulation flags (does it happen only in one mode?)
- Spectral peaks track switching frequency → ripple injection/return-path dominates
- Happens only with certain cables/adapters → attach stability / protection boundary dominates
- Charger/power-path: try power-path charger families (e.g., BQ25895 / BQ24075) with improved filtering and layout return control
- Audio rails: use low-noise LDO for DAC/amp (e.g., TPS7A02 / ADP150) and separate audio reference region
- A/B with charging on/off shows < small delta in noise floor; no new tones appear in-band
Symptom D — “Occasional stutter with ticking clicks” (maps: H2-5/H2-6/H2-4)
- PLL lock flag + offset at the stutter timestamp
- HP out waveform capture of the “tick” (align to lock/relock events)
- Tick aligns with lock loss/relock → clock/holdover dominates
- Lock stable but buffer jumps → buffering/CPU scheduling dominates
- Clock stability: favor TCXO-grade references (e.g., TG-3541 / SiT5356) and reduce relock triggers
- Pop suppression: enforce mute windows around relock and stream transitions; verify amp fault latch behavior (e.g., TPA6132A2 class)
- Under the same RF fade script, relock count drops and ticks disappear
Symptom E — “SOC shows remaining, but sudden shutdown” (maps: H2-7)
- VBAT droop at the shutdown moment (or near it)
- Reset reason + UVLO/BOR counters increment
- VBAT droops and UVLO/BOR increments → battery IR/connector/trace drop dominates
- VBAT stable but one rail collapses → DC-DC/LDO transient or compensation dominates
- Fuel gauge tuning/check: compare model vs droop; use gauges like BQ27441-G1 / MAX17048 as reference baselines
- Power rails: upgrade buck transient response (e.g., TPS62840 class) and verify droop at max audio + RF reconnection peaks
- Repeated “worst-case” script no longer increments UVLO/BOR; runtime becomes predictable
H2-13. FAQs (Receiver-only; evidence-based; mapped to chapters)
Each answer stays on the receiver side and follows the same evidence chain: First 2 measurements → Branch decision → Likely layer → First fix. No broadcaster deployment guidance and no app/phone UI walkthroughs.
Tip: align every audible event (dropout/pop/pitch drift) to at least one counter (PER/ISO/buffer/PLL) and one probe point (VBAT/rail/MCLK/HP out).
1) “Dropouts get worse when the venue gets crowded”: check RSSI first, or PER/ISO counters?
H2-3 / H2-42) “Pitch occasionally sounds like it drifts”: how to prove it is clock-related?
H2-53) “Walking makes pops more likely”: antenna detune or headphone-cable coupling? Which two curves?
H2-3 / H2-104) “Noise appears only while charging”: which ripple to measure, and how to tell return-path vs in-band switching?
H2-8 / H2-65) “Swapping headphones changes the noise a lot”: load/output impedance or cable shielding?
H2-6 / H2-96) “Battery percentage looks wrong”: how to validate fuel-gauge temperature/load error?
H2-77) “A loud pop happens when inserting the headphone plug”: soft-start or detection debounce? How to catch evidence?
H2-6 / H2-108) “After an ESD event it doesn’t reboot, but there is no sound”: amp fault or mute latch?
H2-9 / H2-69) “It connects fast, but audio randomly drops out”: buffer underflow or CPU scheduling peaks?
H2-410) “Charging keeps disconnecting/reconnecting”: cable/port/OVP, or thermal derating?
H2-8