Fix Bluetooth bonding and record verified headphone relay fix

One-shot bluetoothctl pairing exited before SSP finished, leaving the
headphone paired but not bonded, so it was lost on reboot. Pair inside a
single bluetoothctl session with a persistent agent, and clear temporary
pairings first. Document that SBC medium + 500 ms buffer removed the
iPhone -> Radxa -> headphone dropouts, verified by listening and logs.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
jsahn
2026-10-12 19:01:36 +09:00
co-authored by Claude Opus 5.5
parent 5fbece12bb
commit 432eca1755
6 changed files with 59 additions and 14 deletions
+16 -4
View File
@@ -41,15 +41,27 @@ medium과 500 ms 버퍼를 저장했고 출력 등록 복구 후 다시 검증
확인했습니다. Bluetooth 서비스 재시작만으로 복구되지 않아 보드를 재부팅했습니다.
SBC 품질 변경으로 컨트롤러 오류가 해결됐다고 보지는 않습니다.
보스는 현재 `Paired: yes / Bonded: no`인 임시 연결입니다. 영구 등록 시도가
인증 실패하여 재부팅 후 보스 등록 유지가 검증됐다고 주장하지 않습니다.
재부팅 후 Wi-Fi/USB 관리 연결이 돌아오지 않아 전원을 재연결했고,
컨트롤러는 정상 초기화됐습니다. 500 ms 버퍼와 SBC medium 설정은 유지됐습니다.
임시 등록이던 보스는 재부팅으로 등록이 사라졌습니다.
일회성 `bluetoothctl --agent NoInputNoOutput pair`는 인증 완료 전에 종료돼
`Bonded: no`로 남았던 것으로 보고, 하나의 bluetoothctl 세션에서
에이전트 등록 → 검색 → 페어링을 진행하도록 바꿨습니다. 이 방식으로 보스가
`Paired/Bonded/Trusted: yes`로 영구 등록됐습니다.
2026-10-12 19:00 전후로 iPhone → Radxa Bluetooth → 보스 경로(PCM 연결을
`bluealsa-aplay -l`로 확인)에서 사용자가 정상 청취를 확인했습니다. 해당 구간
로그에서 `Missing RTP packets`, underrun/overrun, HCI 시간 초과는 없었습니다.
따라서 SBC medium + 500 ms 버퍼 조합으로 끊김이 해소된 것으로 판단합니다.
장시간 재생 안정성은 아직 확인하지 않았습니다.
이미 영구 등록된 휴대폰 등록은 재부팅 후 유지됐습니다.
## 실제 청취로 확인한 범위
사용자가 AirPlay 재생, AirPlay + 아이폰 Bluetooth 입력의 DAC 믹스 재생을
정상 청취했다고 확인했습니다. 헤드폰의 실제 믹스 청취 확인은 아직 받지
못했으며, 송신 프로필 연결 및 가상 믹서의 데이터 전달까지 검증했습니다.
정상 청취했다고 확인했습니다. iPhone Bluetooth 입력 → 보스 헤드폰 출력도
SBC medium / 500 ms 버퍼 설정에서 끊김 없이 청취했다고 확인했습니다.
## 아직 검증하지 않은 범위