내 이어버드에 의해 노출된 다양한 서비스의 값을 읽으려고 노력하고 있지만, 내가 시도하는 모든 UUID는 나에게 동일한 결과를 제공하고 있습니다 "Failed to read: org.bluez.Error.Failed"
.
명령 수동 실행 체인:
sudo bluetoothctl
정보
Device 6C:D3:EE:6E:B9:15 (public)
Name: Redmi Buds 4 Pro
Alias: Redmi Buds 4 Pro
Class: 0x00240404
Icon: audio-headset
Paired: yes
Trusted: yes
Blocked: no
Connected: yes
LegacyPairing: no
UUID: Vendor specific (00000000-0000-0000-0099-aabbccddeeff)
UUID: Headset (00001108-0000-1000-8000-00805f9b34fb)
UUID: Audio Sink (0000110b-0000-1000-8000-00805f9b34fb)
UUID: A/V Remote Control Target (0000110c-0000-1000-8000-00805f9b34fb)
UUID: Advanced Audio Distribu.. (0000110d-0000-1000-8000-00805f9b34fb)
UUID: A/V Remote Control (0000110e-0000-1000-8000-00805f9b34fb)
UUID: Handsfree (0000111e-0000-1000-8000-00805f9b34fb)
UUID: PnP Information (00001200-0000-1000-8000-00805f9b34fb)
UUID: Generic Access Profile (00001800-0000-1000-8000-00805f9b34fb)
UUID: Generic Attribute Profile (00001801-0000-1000-8000-00805f9b34fb)
UUID: Device Information (0000180a-0000-1000-8000-00805f9b34fb)
UUID: Unknown (0000af00-0000-1000-8000-00805f9b34fb)
UUID: Unknown (0000fd2d-0000-1000-8000-00805f9b34fb)
UUID: Vendor specific (0000ff01-0000-1000-8000-00805f9b34ff)
UUID: Vendor specific (5052494d-2dab-0341-6972-6f6861424c45)
Modalias: bluetooth:v0094p0004d0100
Battery Percentage: 0x64 (100)
메뉴 가트
속성 정보
Characteristic - Model Number String
UUID: 00002a24-0000-1000-8000-00805f9b34fb
Service: /org/bluez/hci0/dev_6C_D3_EE_6E_B9_15/service0060
Flags: read
선택 속성 00001200-0000-1000-8000-00805f9b34fb
읽다
Attempting to read /org/bluez/hci0/dev_6C_D3_EE_6E_B9_15/service0060/char0063
Failed to read: org.bluez.Error.Failed
답변1
gdbus
다음 명령을 사용하여 bluez API를 사용하여 메서드와 속성을 개체로 가져올 수 있었습니다 .
gdbus introspect --system --dest org.bluez --object-path /org/bluez/hci0/dev_6C_D3_EE_6E_B9_15
마찬가지로 다음을 사용하여 내부 UUID에 액세스할 수 있습니다.
gdbus introspect --system --dest org.bluez --object-path /org/bluez/hci0/dev_6C_D3_EE_6E_B9_15/service0060/char0063
그리고 다음을 통해 그의 메소드를 호출하십시오.
gdbus call --system --dest org.bluez --object-path /org/bluez/hci0/dev_6C_D3_EE_6E_B9_15 --method org.bluez.MediaControl1.VolumeDown
/bluez/path는 bluetoothctl을 사용하여 얻을 수 있습니다.
이 stackOverflow 답변이전 명령의 소스였습니다.
여전히 값을 읽을 수 없습니다