The WCN3990 has no burned-in Bluetooth address, so the kernel registers the controller unconfigured and bluetoothd never sees it. The factory address is on the machine all along: QCOM/BT.PROVISION on the DPP partition, a three-byte header followed by the six-byte address. c630-bt-addr reads it and hands it to btmgmt before bluetooth.service starts. Verified on hardware: controller configures, powers, scans, and streams A2DP. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_011XgGF5wfxLDAybVnNz6eNQ
16 lines
453 B
Desktop File
16 lines
453 B
Desktop File
[Unit]
|
|
Description=Set the C630 Bluetooth factory address from the DPP partition
|
|
# The WCN3990 has no burned-in address; the controller stays unconfigured and
|
|
# invisible to bluetoothd until one is set. See /usr/local/sbin/c630-bt-addr.
|
|
Before=bluetooth.service
|
|
ConditionPathExists=/dev/disk/by-partlabel/DPP
|
|
|
|
[Service]
|
|
Type=oneshot
|
|
ExecStart=/usr/local/sbin/c630-bt-addr
|
|
RemainAfterExit=yes
|
|
StandardOutput=journal
|
|
|
|
[Install]
|
|
WantedBy=multi-user.target
|