Closed SaileeG closed 3 years ago
If I kill all the bluetoothd process on Host and run blueetoothd as follows inside the container all the apps and tools running in that 1 container get access to all 2 Virtual BLE interfaces(hci1 and hci2) along with the physical ble interface hci0
On Host:
ubuntu@ubuntu:~$ sudo killall bluetoothd
In Container 1:
root@ubuntu:/connectedhomeip# bluetoothd --experimental --debug -n &
[1] 69
root@ubuntu:/connectedhomeip# bluetoothd[69]: Bluetooth daemon 5.53
bluetoothd[69]: src/main.c:parse_config() parsing /etc/bluetooth/main.conf
bluetoothd[69]: src/main.c:parse_config() Key file does not have key “DiscoverableTimeout” in group “General”
bluetoothd[69]: src/main.c:parse_config() Key file does not have key “AlwaysPairable” in group “General”
bluetoothd[69]: src/main.c:parse_config() Key file does not have key “PairableTimeout” in group “General”
bluetoothd[69]: src/main.c:parse_config() Key file does not have key “Privacy” in group “General”
bluetoothd[69]: src/main.c:parse_config() Key file does not have key “Name” in group “General”
bluetoothd[69]: src/main.c:parse_config() Key file does not have key “Class” in group “General”
bluetoothd[69]: src/main.c:parse_config() Key file does not have key “DeviceID” in group “General”
bluetoothd[69]: src/main.c:parse_config() Key file does not have key “ReverseServiceDiscovery” in group “General”
bluetoothd[69]: src/main.c:parse_config() Key file does not have group “GATT”
bluetoothd[69]: src/main.c:parse_config() Key file does not have group “GATT”
bluetoothd[69]: src/main.c:parse_config() Key file does not have group “GATT”
bluetoothd[69]: src/adapter.c:adapter_init() sending read version command
bluetoothd[69]: Starting SDP server
bluetoothd[69]: src/sdpd-service.c:register_device_id() Adding device id record for 0002:1d6b:0246:0535
bluetoothd[69]: src/plugin.c:plugin_init() Loading builtin plugins
bluetoothd[69]: src/plugin.c:add_plugin() Loading hostname plugin
bluetoothd[69]: src/plugin.c:add_plugin() Loading wiimote plugin
bluetoothd[69]: src/plugin.c:add_plugin() Loading autopair plugin
bluetoothd[69]: src/plugin.c:add_plugin() Loading policy plugin
bluetoothd[69]: src/plugin.c:add_plugin() Loading a2dp plugin
bluetoothd[69]: src/plugin.c:add_plugin() Loading avrcp plugin
bluetoothd[69]: src/plugin.c:add_plugin() Loading network plugin
bluetoothd[69]: src/plugin.c:add_plugin() Loading input plugin
bluetoothd[69]: src/plugin.c:add_plugin() Loading hog plugin
bluetoothd[69]: src/plugin.c:add_plugin() Loading gap plugin
bluetoothd[69]: src/plugin.c:add_plugin() Loading scanparam plugin
bluetoothd[69]: src/plugin.c:add_plugin() Loading deviceinfo plugin
bluetoothd[69]: src/plugin.c:add_plugin() Loading battery plugin
bluetoothd[69]: src/plugin.c:plugin_init() Loading plugins /usr/lib/aarch64-linux-gnu/bluetooth/plugins
bluetoothd[69]: profiles/input/suspend-none.c:suspend_init()
bluetoothd[69]: profiles/network/manager.c:read_config() /etc/bluetooth/network.conf: Key file does not have key “DisableSecurity” in group “General”
bluetoothd[69]: profiles/network/manager.c:read_config() Config options: Security=true
bluetoothd[69]: src/main.c:main() Entering main loop
bluetoothd[69]: src/rfkill.c:rfkill_event() RFKILL event idx 0 type 1 op 0 soft 0 hard 0
bluetoothd[69]: Bluetooth management interface 1.14 initialized
bluetoothd[69]: src/adapter.c:read_version_complete() sending read supported commands command
bluetoothd[69]: src/adapter.c:read_version_complete() sending read index list command
bluetoothd[69]: src/rfkill.c:rfkill_event() RFKILL event idx 1 type 2 op 0 soft 0 hard 0
bluetoothd[69]: src/rfkill.c:rfkill_event() RFKILL event idx 12 type 2 op 0 soft 0 hard 0
bluetoothd[69]: src/adapter.c:read_commands_complete() Number of commands: 65
bluetoothd[69]: src/adapter.c:read_commands_complete() Number of events: 35
bluetoothd[69]: src/adapter.c:read_commands_complete() enabling kernel-side connection control
bluetoothd[69]: src/rfkill.c:rfkill_event() RFKILL event idx 13 type 2 op 0 soft 0 hard 0
bluetoothd[69]: src/adapter.c:read_index_list_complete() Number of controllers: 3
bluetoothd[69]: src/adapter.c:read_index_list_complete() Found index 2
bluetoothd[69]: src/adapter.c:index_added() index 2
bluetoothd[69]: src/adapter.c:btd_adapter_new() System name: BlueZ 5.53
bluetoothd[69]: src/adapter.c:btd_adapter_new() Major class: 0
bluetoothd[69]: src/adapter.c:btd_adapter_new() Minor class: 0
bluetoothd[69]: src/adapter.c:btd_adapter_new() Modalias: usb:v1D6Bp0246d0535
bluetoothd[69]: src/adapter.c:btd_adapter_new() Discoverable timeout: 180 seconds
bluetoothd[69]: src/adapter.c:btd_adapter_new() Pairable timeout: 0 seconds
bluetoothd[69]: src/adapter.c:index_added() sending read info command for index 2
bluetoothd[69]: src/adapter.c:read_index_list_complete() Found index 1
bluetoothd[69]: src/adapter.c:index_added() index 1
bluetoothd[69]: src/adapter.c:btd_adapter_new() System name: BlueZ 5.53
bluetoothd[69]: src/adapter.c:btd_adapter_new() Major class: 0
bluetoothd[69]: src/adapter.c:btd_adapter_new() Minor class: 0
bluetoothd[69]: src/adapter.c:btd_adapter_new() Modalias: usb:v1D6Bp0246d0535
bluetoothd[69]: src/adapter.c:btd_adapter_new() Discoverable timeout: 180 seconds
bluetoothd[69]: src/adapter.c:btd_adapter_new() Pairable timeout: 0 seconds
bluetoothd[69]: src/adapter.c:index_added() sending read info command for index 1
bluetoothd[69]: src/adapter.c:read_index_list_complete() Found index 0
bluetoothd[69]: src/adapter.c:index_added() index 0
bluetoothd[69]: src/adapter.c:btd_adapter_new() System name: BlueZ 5.53
bluetoothd[69]: src/adapter.c:btd_adapter_new() Major class: 0
bluetoothd[69]: src/adapter.c:btd_adapter_new() Minor class: 0
bluetoothd[69]: src/adapter.c:btd_adapter_new() Modalias: usb:v1D6Bp0246d0535
bluetoothd[69]: src/adapter.c:btd_adapter_new() Discoverable timeout: 180 seconds
bluetoothd[69]: src/adapter.c:btd_adapter_new() Pairable timeout: 0 seconds
bluetoothd[69]: src/adapter.c:index_added() sending read info command for index 0
bluetoothd[69]: src/adapter.c:read_info_complete() index 2 status 0x00
bluetoothd[69]: src/adapter.c:clear_uuids() sending clear uuids command for index 2
bluetoothd[69]: src/adapter.c:clear_devices() sending clear devices command for index 2
bluetoothd[69]: src/adapter.c:set_privacy() sending set privacy command for index 2
bluetoothd[69]: src/adapter.c:set_privacy() setting privacy mode 0x00 for index 2
bluetoothd[69]: src/gatt-database.c:btd_gatt_database_new() GATT Manager registered for adapter: /org/bluez/hci2
bluetoothd[69]: src/adapter.c:adapter_service_add() /org/bluez/hci2
bluetoothd[69]: src/sdpd-service.c:add_record_to_server() Adding record with handle 0x10001
bluetoothd[69]: src/sdpd-service.c:add_record_to_server() Record pattern UUID 00000007-0000-1000-8000-00805f9
bluetoothd[69]: src/sdpd-service.c:add_record_to_server() Record pattern UUID 00000100-0000-1000-8000-00805f9
bluetoothd[69]: src/sdpd-service.c:add_record_to_server() Record pattern UUID 00001002-0000-1000-8000-00805f9
bluetoothd[69]: src/sdpd-service.c:add_record_to_server() Record pattern UUID 00001800-0000-1000-8000-00805f9
bluetoothd[69]: src/adapter.c:adapter_service_insert() /org/bluez/hci2
bluetoothd[69]: src/adapter.c:add_uuid() sending add uuid command for index 2
bluetoothd[69]: src/adapter.c:adapter_service_add() /org/bluez/hci2
bluetoothd[69]: src/sdpd-service.c:add_record_to_server() Adding record with handle 0x10002
bluetoothd[69]: src/sdpd-service.c:add_record_to_server() Record pattern UUID 00000007-0000-1000-8000-00805f9
bluetoothd[69]: src/sdpd-service.c:add_record_to_server() Record pattern UUID 00000100-0000-1000-8000-00805f9
bluetoothd[69]: src/sdpd-service.c:add_record_to_server() Record pattern UUID 00001002-0000-1000-8000-00805f9
bluetoothd[69]: src/sdpd-service.c:add_record_to_server() Record pattern UUID 00001801-0000-1000-8000-00805f9
bluetoothd[69]: src/adapter.c:adapter_service_insert() /org/bluez/hci2
bluetoothd[69]: src/adapter.c:add_uuid() sending add uuid command for index 2
bluetoothd[69]: src/advertising.c:btd_adv_manager_new() LE Advertising Manager created for adapter: /org/bluez/hci2
bluetoothd[69]: profiles/audio/a2dp.c:media_server_probe() path /org/bluez/hci2
bluetoothd[69]: plugins/policy.c:policy_adapter_probe()
bluetoothd[69]: src/adapter.c:set_mode() sending set mode command for index 2
bluetoothd[69]: plugins/hostname.c:hostname_probe()
bluetoothd[69]: profiles/network/manager.c:panu_server_probe() path /org/bluez/hci2
bluetoothd[69]: profiles/network/server.c:server_register() Registered interface org.bluez.NetworkServer1 on path /org/bluez/hci2
bluetoothd[69]: profiles/network/manager.c:gn_server_probe() path /org/bluez/hci2
bluetoothd[69]: profiles/network/manager.c:nap_server_probe() path /org/bluez/hci2
bluetoothd[69]: profiles/audio/avrcp.c:avrcp_controller_server_probe() path /org/bluez/hci2
bluetoothd[69]: src/adapter.c:adapter_service_add() /org/bluez/hci2
bluetoothd[69]: src/sdpd-service.c:add_record_to_server() Adding record with handle 0x10003
bluetoothd[69]: src/sdpd-service.c:add_record_to_server() Record pattern UUID 00000017-0000-1000-8000-00805f9
bluetoothd[69]: src/sdpd-service.c:add_record_to_server() Record pattern UUID 00000100-0000-1000-8000-00805f9
bluetoothd[69]: src/sdpd-service.c:add_record_to_server() Record pattern UUID 00001002-0000-1000-8000-00805f9
bluetoothd[69]: src/sdpd-service.c:add_record_to_server() Record pattern UUID 0000110e-0000-1000-8000-00805f9
bluetoothd[69]: src/sdpd-service.c:add_record_to_server() Record pattern UUID 0000110f-0000-1000-8000-00805f9
bluetoothd[69]: src/adapter.c:adapter_service_insert() /org/bluez/hci2
bluetoothd[69]: src/adapter.c:add_uuid() sending add uuid command for index 2
bluetoothd[69]: profiles/audio/avrcp.c:avrcp_target_server_probe() path /org/bluez/hci2
bluetoothd[69]: src/adapter.c:adapter_service_add() /org/bluez/hci2
bluetoothd[69]: src/sdpd-service.c:add_record_to_server() Adding record with handle 0x10004
bluetoothd[69]: src/sdpd-service.c:add_record_to_server() Record pattern UUID 00000017-0000-1000-8000-00805f9
bluetoothd[69]: src/sdpd-service.c:add_record_to_server() Record pattern UUID 00000100-0000-1000-8000-00805f9
bluetoothd[69]: src/sdpd-service.c:add_record_to_server() Record pattern UUID 00001002-0000-1000-8000-00805f9
bluetoothd[69]: src/sdpd-service.c:add_record_to_server() Record pattern UUID 0000110c-0000-1000-8000-00805f9
bluetoothd[69]: src/sdpd-service.c:add_record_to_server() Record pattern UUID 0000110e-0000-1000-8000-00805f9
bluetoothd[69]: src/adapter.c:adapter_service_insert() /org/bluez/hci2
bluetoothd[69]: src/adapter.c:add_uuid() sending add uuid command for index 2
bluetoothd[69]: profiles/audio/a2dp.c:a2dp_sink_server_probe() path /org/bluez/hci2
bluetoothd[69]: profiles/audio/a2dp.c:a2dp_source_server_probe() path /org/bluez/hci2
bluetoothd[69]: src/adapter.c:btd_adapter_unblock_address() hci2 00:00:00:00:00:00
bluetoothd[69]: src/adapter.c:load_ltks() hci2 keys 0
bluetoothd[69]: src/adapter.c:load_irks() hci2 irks 0
bluetoothd[69]: src/adapter.c:load_conn_params() hci2 conn params 0
bluetoothd[69]: src/adapter.c:adapter_service_insert() /org/bluez/hci2
bluetoothd[69]: src/adapter.c:add_uuid() sending add uuid command for index 2
bluetoothd[69]: src/adapter.c:set_did() hci2 source 2 vendor 1d6b product 246 version 535
bluetoothd[69]: src/adapter.c:adapter_register() Adapter /org/bluez/hci2 registered
bluetoothd[69]: src/adapter.c:set_name() sending set local name command for index 2
bluetoothd[69]: src/adapter.c:read_info_complete() index 1 status 0x00
bluetoothd[69]: src/adapter.c:clear_uuids() sending clear uuids command for index 1
bluetoothd[69]: src/adapter.c:clear_devices() sending clear devices command for index 1
bluetoothd[69]: src/adapter.c:set_privacy() sending set privacy command for index 1
bluetoothd[69]: src/adapter.c:set_privacy() setting privacy mode 0x00 for index 1
bluetoothd[69]: src/gatt-database.c:btd_gatt_database_new() GATT Manager registered for adapter: /org/bluez/hci1
bluetoothd[69]: src/adapter.c:adapter_service_add() /org/bluez/hci1
bluetoothd[69]: src/sdpd-service.c:add_record_to_server() Adding record with handle 0x10005
bluetoothd[69]: src/sdpd-service.c:add_record_to_server() Record pattern UUID 00000007-0000-1000-8000-00805f9
bluetoothd[69]: src/sdpd-service.c:add_record_to_server() Record pattern UUID 00000100-0000-1000-8000-00805f9
bluetoothd[69]: src/sdpd-service.c:add_record_to_server() Record pattern UUID 00001002-0000-1000-8000-00805f9
bluetoothd[69]: src/sdpd-service.c:add_record_to_server() Record pattern UUID 00001800-0000-1000-8000-00805f9
bluetoothd[69]: src/adapter.c:adapter_service_insert() /org/bluez/hci1
bluetoothd[69]: src/adapter.c:add_uuid() sending add uuid command for index 1
bluetoothd[69]: src/adapter.c:adapter_service_add() /org/bluez/hci1
bluetoothd[69]: src/sdpd-service.c:add_record_to_server() Adding record with handle 0x10006
bluetoothd[69]: src/sdpd-service.c:add_record_to_server() Record pattern UUID 00000007-0000-1000-8000-00805f9
bluetoothd[69]: src/sdpd-service.c:add_record_to_server() Record pattern UUID 00000100-0000-1000-8000-00805f9
bluetoothd[69]: src/sdpd-service.c:add_record_to_server() Record pattern UUID 00001002-0000-1000-8000-00805f9
bluetoothd[69]: src/sdpd-service.c:add_record_to_server() Record pattern UUID 00001801-0000-1000-8000-00805f9
bluetoothd[69]: src/adapter.c:adapter_service_insert() /org/bluez/hci1
bluetoothd[69]: src/adapter.c:add_uuid() sending add uuid command for index 1
bluetoothd[69]: src/advertising.c:btd_adv_manager_new() LE Advertising Manager created for adapter: /org/bluez/hci1
bluetoothd[69]: profiles/audio/a2dp.c:media_server_probe() path /org/bluez/hci1
bluetoothd[69]: plugins/policy.c:policy_adapter_probe()
bluetoothd[69]: src/adapter.c:set_mode() sending set mode command for index 1
bluetoothd[69]: plugins/hostname.c:hostname_probe()
bluetoothd[69]: profiles/network/manager.c:panu_server_probe() path /org/bluez/hci1
bluetoothd[69]: profiles/network/server.c:server_register() Registered interface org.bluez.NetworkServer1 on path /org/bluez/hci1
bluetoothd[69]: profiles/network/manager.c:gn_server_probe() path /org/bluez/hci1
bluetoothd[69]: profiles/network/manager.c:nap_server_probe() path /org/bluez/hci1
bluetoothd[69]: profiles/audio/avrcp.c:avrcp_controller_server_probe() path /org/bluez/hci1
bluetoothd[69]: src/adapter.c:adapter_service_add() /org/bluez/hci1
bluetoothd[69]: src/sdpd-service.c:add_record_to_server() Adding record with handle 0x10007
bluetoothd[69]: src/sdpd-service.c:add_record_to_server() Record pattern UUID 00000017-0000-1000-8000-00805f9
bluetoothd[69]: src/sdpd-service.c:add_record_to_server() Record pattern UUID 00000100-0000-1000-8000-00805f9
bluetoothd[69]: src/sdpd-service.c:add_record_to_server() Record pattern UUID 00001002-0000-1000-8000-00805f9
bluetoothd[69]: src/sdpd-service.c:add_record_to_server() Record pattern UUID 0000110e-0000-1000-8000-00805f9
bluetoothd[69]: src/sdpd-service.c:add_record_to_server() Record pattern UUID 0000110f-0000-1000-8000-00805f9
bluetoothd[69]: src/adapter.c:adapter_service_insert() /org/bluez/hci1
bluetoothd[69]: src/adapter.c:add_uuid() sending add uuid command for index 1
bluetoothd[69]: profiles/audio/avrcp.c:avrcp_target_server_probe() path /org/bluez/hci1
bluetoothd[69]: src/adapter.c:adapter_service_add() /org/bluez/hci1
bluetoothd[69]: src/sdpd-service.c:add_record_to_server() Adding record with handle 0x10008
bluetoothd[69]: src/sdpd-service.c:add_record_to_server() Record pattern UUID 00000017-0000-1000-8000-00805f9
bluetoothd[69]: src/sdpd-service.c:add_record_to_server() Record pattern UUID 00000100-0000-1000-8000-00805f9
bluetoothd[69]: src/sdpd-service.c:add_record_to_server() Record pattern UUID 00001002-0000-1000-8000-00805f9
bluetoothd[69]: src/sdpd-service.c:add_record_to_server() Record pattern UUID 0000110c-0000-1000-8000-00805f9
bluetoothd[69]: src/sdpd-service.c:add_record_to_server() Record pattern UUID 0000110e-0000-1000-8000-00805f9
bluetoothd[69]: src/adapter.c:adapter_service_insert() /org/bluez/hci1
bluetoothd[69]: src/adapter.c:add_uuid() sending add uuid command for index 1
bluetoothd[69]: profiles/audio/a2dp.c:a2dp_sink_server_probe() path /org/bluez/hci1
bluetoothd[69]: profiles/audio/a2dp.c:a2dp_source_server_probe() path /org/bluez/hci1
bluetoothd[69]: src/adapter.c:btd_adapter_unblock_address() hci1 00:00:00:00:00:00
bluetoothd[69]: src/adapter.c:load_ltks() hci1 keys 0
bluetoothd[69]: src/adapter.c:load_irks() hci1 irks 0
bluetoothd[69]: src/adapter.c:load_conn_params() hci1 conn params 0
bluetoothd[69]: src/adapter.c:adapter_service_insert() /org/bluez/hci1
bluetoothd[69]: src/adapter.c:add_uuid() sending add uuid command for index 1
bluetoothd[69]: src/adapter.c:set_did() hci1 source 2 vendor 1d6b product 246 version 535
bluetoothd[69]: src/adapter.c:adapter_register() Adapter /org/bluez/hci1 registered
bluetoothd[69]: src/adapter.c:set_name() sending set local name command for index 1
bluetoothd[69]: src/adapter.c:read_info_complete() index 0 status 0x00
bluetoothd[69]: src/adapter.c:clear_uuids() sending clear uuids command for index 0
bluetoothd[69]: src/adapter.c:clear_devices() sending clear devices command for index 0
bluetoothd[69]: src/adapter.c:set_privacy() sending set privacy command for index 0
bluetoothd[69]: src/adapter.c:set_privacy() setting privacy mode 0x00 for index 0
bluetoothd[69]: src/gatt-database.c:btd_gatt_database_new() GATT Manager registered for adapter: /org/bluez/hci0
bluetoothd[69]: src/adapter.c:adapter_service_add() /org/bluez/hci0
bluetoothd[69]: src/sdpd-service.c:add_record_to_server() Adding record with handle 0x10009
bluetoothd[69]: src/sdpd-service.c:add_record_to_server() Record pattern UUID 00000007-0000-1000-8000-00805f9
bluetoothd[69]: src/sdpd-service.c:add_record_to_server() Record pattern UUID 00000100-0000-1000-8000-00805f9
bluetoothd[69]: src/sdpd-service.c:add_record_to_server() Record pattern UUID 00001002-0000-1000-8000-00805f9
bluetoothd[69]: src/sdpd-service.c:add_record_to_server() Record pattern UUID 00001800-0000-1000-8000-00805f9
bluetoothd[69]: src/adapter.c:adapter_service_insert() /org/bluez/hci0
bluetoothd[69]: src/adapter.c:add_uuid() sending add uuid command for index 0
bluetoothd[69]: src/adapter.c:adapter_service_add() /org/bluez/hci0
bluetoothd[69]: src/sdpd-service.c:add_record_to_server() Adding record with handle 0x1000a
bluetoothd[69]: src/sdpd-service.c:add_record_to_server() Record pattern UUID 00000007-0000-1000-8000-00805f9
bluetoothd[69]: src/sdpd-service.c:add_record_to_server() Record pattern UUID 00000100-0000-1000-8000-00805f9
bluetoothd[69]: src/sdpd-service.c:add_record_to_server() Record pattern UUID 00001002-0000-1000-8000-00805f9
bluetoothd[69]: src/sdpd-service.c:add_record_to_server() Record pattern UUID 00001801-0000-1000-8000-00805f9
bluetoothd[69]: src/adapter.c:adapter_service_insert() /org/bluez/hci0
bluetoothd[69]: src/adapter.c:add_uuid() sending add uuid command for index 0
bluetoothd[69]: src/advertising.c:btd_adv_manager_new() LE Advertising Manager created for adapter: /org/bluez/hci0
bluetoothd[69]: profiles/audio/a2dp.c:media_server_probe() path /org/bluez/hci0
bluetoothd[69]: plugins/policy.c:policy_adapter_probe()
bluetoothd[69]: src/adapter.c:set_mode() sending set mode command for index 0
bluetoothd[69]: plugins/hostname.c:hostname_probe()
bluetoothd[69]: profiles/network/manager.c:panu_server_probe() path /org/bluez/hci0
bluetoothd[69]: profiles/network/server.c:server_register() Registered interface org.bluez.NetworkServer1 on path /org/bluez/hci0
bluetoothd[69]: profiles/network/manager.c:gn_server_probe() path /org/bluez/hci0
bluetoothd[69]: profiles/network/manager.c:nap_server_probe() path /org/bluez/hci0
bluetoothd[69]: profiles/audio/avrcp.c:avrcp_controller_server_probe() path /org/bluez/hci0
bluetoothd[69]: src/adapter.c:adapter_service_add() /org/bluez/hci0
bluetoothd[69]: src/sdpd-service.c:add_record_to_server() Adding record with handle 0x1000b
bluetoothd[69]: src/sdpd-service.c:add_record_to_server() Record pattern UUID 00000017-0000-1000-8000-00805f9
bluetoothd[69]: src/sdpd-service.c:add_record_to_server() Record pattern UUID 00000100-0000-1000-8000-00805f9
bluetoothd[69]: src/sdpd-service.c:add_record_to_server() Record pattern UUID 00001002-0000-1000-8000-00805f9
bluetoothd[69]: src/sdpd-service.c:add_record_to_server() Record pattern UUID 0000110e-0000-1000-8000-00805f9
bluetoothd[69]: src/sdpd-service.c:add_record_to_server() Record pattern UUID 0000110f-0000-1000-8000-00805f9
bluetoothd[69]: src/adapter.c:adapter_service_insert() /org/bluez/hci0
bluetoothd[69]: src/adapter.c:add_uuid() sending add uuid command for index 0
bluetoothd[69]: profiles/audio/avrcp.c:avrcp_target_server_probe() path /org/bluez/hci0
bluetoothd[69]: src/adapter.c:adapter_service_add() /org/bluez/hci0
bluetoothd[69]: src/sdpd-service.c:add_record_to_server() Adding record with handle 0x1000c
bluetoothd[69]: src/sdpd-service.c:add_record_to_server() Record pattern UUID 00000017-0000-1000-8000-00805f9
bluetoothd[69]: src/sdpd-service.c:add_record_to_server() Record pattern UUID 00000100-0000-1000-8000-00805f9
bluetoothd[69]: src/sdpd-service.c:add_record_to_server() Record pattern UUID 00001002-0000-1000-8000-00805f9
bluetoothd[69]: src/sdpd-service.c:add_record_to_server() Record pattern UUID 0000110c-0000-1000-8000-00805f9
bluetoothd[69]: src/sdpd-service.c:add_record_to_server() Record pattern UUID 0000110e-0000-1000-8000-00805f9
bluetoothd[69]: src/adapter.c:adapter_service_insert() /org/bluez/hci0
bluetoothd[69]: src/adapter.c:add_uuid() sending add uuid command for index 0
bluetoothd[69]: profiles/audio/a2dp.c:a2dp_sink_server_probe() path /org/bluez/hci0
bluetoothd[69]: profiles/audio/a2dp.c:a2dp_source_server_probe() path /org/bluez/hci0
bluetoothd[69]: src/adapter.c:btd_adapter_unblock_address() hci0 00:00:00:00:00:00
bluetoothd[69]: src/adapter.c:load_link_keys() hci0 keys 0 debug_keys 0
bluetoothd[69]: src/adapter.c:load_ltks() hci0 keys 0
bluetoothd[69]: src/adapter.c:load_irks() hci0 irks 0
bluetoothd[69]: src/adapter.c:load_conn_params() hci0 conn params 0
bluetoothd[69]: src/adapter.c:adapter_service_insert() /org/bluez/hci0
bluetoothd[69]: src/adapter.c:add_uuid() sending add uuid command for index 0
bluetoothd[69]: src/adapter.c:set_did() hci0 source 2 vendor 1d6b product 246 version 535
bluetoothd[69]: src/adapter.c:adapter_register() Adapter /org/bluez/hci0 registered
bluetoothd[69]: src/adapter.c:set_dev_class() sending set device class command for index 0
bluetoothd[69]: src/adapter.c:set_name() sending set local name command for index 0
bluetoothd[69]: src/adapter.c:set_privacy_complete() Successfuly set privacy for index 2
bluetoothd[69]: src/adapter.c:new_settings_callback() Settings: 0x00000a01
bluetoothd[69]: src/adapter.c:settings_changed() Changed settings: 0x00000001
bluetoothd[69]: src/adapter.c:settings_changed() Pending settings: 0x00000000
bluetoothd[69]: src/adapter.c:adapter_start() adapter /org/bluez/hci2 has been enabled
bluetoothd[69]: src/adapter.c:trigger_passive_scanning()
bluetoothd[69]: src/adapter.c:load_ltks_complete() LTKs loaded for hci2
bluetoothd[69]: src/adapter.c:load_irks_complete() IRKs loaded for hci2
bluetoothd[69]: src/adapter.c:load_conn_params_complete() Connection Parameters loaded for hci2
bluetoothd[69]: src/adapter.c:set_privacy_complete() Successfuly set privacy for index 1
bluetoothd[69]: src/adapter.c:new_settings_callback() Settings: 0x00000a01
bluetoothd[69]: src/adapter.c:settings_changed() Changed settings: 0x00000001
bluetoothd[69]: src/adapter.c:settings_changed() Pending settings: 0x00000000
bluetoothd[69]: src/adapter.c:adapter_start() adapter /org/bluez/hci1 has been enabled
bluetoothd[69]: src/adapter.c:trigger_passive_scanning()
bluetoothd[69]: src/adapter.c:load_ltks_complete() LTKs loaded for hci1
bluetoothd[69]: src/adapter.c:load_irks_complete() IRKs loaded for hci1
bluetoothd[69]: src/adapter.c:load_conn_params_complete() Connection Parameters loaded for hci1
bluetoothd[69]: src/adapter.c:set_privacy_complete() Successfuly set privacy for index 0
bluetoothd[69]: src/adapter.c:new_settings_callback() Settings: 0x00000ac1
bluetoothd[69]: src/adapter.c:settings_changed() Changed settings: 0x00000001
bluetoothd[69]: src/adapter.c:settings_changed() Pending settings: 0x00000000
bluetoothd[69]: src/adapter.c:adapter_start() adapter /org/bluez/hci0 has been enabled
bluetoothd[69]: src/adapter.c:trigger_passive_scanning()
bluetoothd[69]: src/adapter.c:load_link_keys_complete() link keys loaded for hci0
bluetoothd[69]: src/adapter.c:load_ltks_complete() LTKs loaded for hci0
bluetoothd[69]: src/adapter.c:load_irks_complete() IRKs loaded for hci0
bluetoothd[69]: src/adapter.c:load_conn_params_complete() Connection Parameters loaded for hci0
root@ubuntu:/connectedhomeip# chip-device-ctrl --bluetooth-adapter=hci2
CHIP:IN: TransportMgr initialized
CHIP:IN: local node id is 112233
CHIP:DL: CHIP task running
bluetoothd[69]: src/adapter.c:property_set_mode() sending Set Powered command for index 2
bluetoothd[69]: src/adapter.c:property_set_mode_complete() Success (0x00)
bluetoothd[69]: src/adapter.c:new_settings_callback() Settings: 0x00000a00
bluetoothd[69]: src/adapter.c:settings_changed() Changed settings: 0x00000001
bluetoothd[69]: src/adapter.c:settings_changed() Pending settings: 0x00000000
bluetoothd[69]: src/adapter.c:cancel_passive_scanning()
bluetoothd[69]: src/adapter.c:adapter_stop() adapter /org/bluez/hci2 has been disabled
bluetoothd[69]: src/adapter.c:property_set_mode() sending Set Powered command for index 2
bluetoothd[69]: src/adapter.c:property_set_mode_complete() Success (0x00)
bluetoothd[69]: src/adapter.c:new_settings_callback() Settings: 0x00000a01
bluetoothd[69]: src/adapter.c:settings_changed() Changed settings: 0x00000001
bluetoothd[69]: src/adapter.c:settings_changed() Pending settings: 0x00000000
bluetoothd[69]: src/adapter.c:adapter_start() adapter /org/bluez/hci2 has been enabled
bluetoothd[69]: src/adapter.c:trigger_passive_scanning()
Chip Device Controller Shell
Bluetooth adapter set to hci2
chip-device-ctrl > ble-adapter-print
2021-03-17 23:20:25,422 ChipBLEMgr INFO AdapterName: hci0 AdapterAddress: B8:27:EB:C4:E2:93
2021-03-17 23:20:25,425 ChipBLEMgr INFO AdapterName: hci1 AdapterAddress: 00:AA:01:00:00:23
2021-03-17 23:20:25,426 ChipBLEMgr INFO AdapterName: hci2 AdapterAddress: 00:AA:01:01:00:24
chip-device-ctrl > exit
root@ubuntu:/connectedhomeip# chip-device-ctrl --bluetooth-adapter=hci1
CHIP:IN: TransportMgr initialized
CHIP:IN: local node id is 112233
CHIP:DL: CHIP task running
bluetoothd[69]: src/adapter.c:property_set_mode() sending Set Powered command for index 1
bluetoothd[69]: src/adapter.c:property_set_mode_complete() Success (0x00)
bluetoothd[69]: src/adapter.c:new_settings_callback() Settings: 0x00000a00
bluetoothd[69]: src/adapter.c:settings_changed() Changed settings: 0x00000001
bluetoothd[69]: src/adapter.c:settings_changed() Pending settings: 0x00000000
bluetoothd[69]: src/adapter.c:cancel_passive_scanning()
bluetoothd[69]: src/adapter.c:adapter_stop() adapter /org/bluez/hci1 has been disabled
bluetoothd[69]: src/adapter.c:property_set_mode() sending Set Powered command for index 1
bluetoothd[69]: src/adapter.c:property_set_mode_complete() Success (0x00)
bluetoothd[69]: src/adapter.c:new_settings_callback() Settings: 0x00000a01
bluetoothd[69]: src/adapter.c:settings_changed() Changed settings: 0x00000001
bluetoothd[69]: src/adapter.c:settings_changed() Pending settings: 0x00000000
bluetoothd[69]: src/adapter.c:adapter_start() adapter /org/bluez/hci1 has been enabled
bluetoothd[69]: src/adapter.c:trigger_passive_scanning()
Chip Device Controller Shell
Bluetooth adapter set to hci1
chip-device-ctrl > ble-adapter-print
2021-03-17 23:31:52,476 ChipBLEMgr INFO AdapterName: hci0 AdapterAddress: B8:27:EB:C4:E2:93
2021-03-17 23:31:52,479 ChipBLEMgr INFO AdapterName: hci1 AdapterAddress: 00:AA:01:00:00:23
2021-03-17 23:31:52,480 ChipBLEMgr INFO AdapterName: hci2 AdapterAddress: 00:AA:01:01:00:24
chip-device-ctrl >
Note The host raspi and any other container running on the raspi are unable to access the BLE interfaces
This is resolved by running bluetoothd and btvirt on the raspi host and running the docker container on the raspi with host dbus: docker run --name docker-chip-2 -v /var/run/dbus:/var/run/dbus --privileged --device /dev/ttyACM0 -it chip-1
Chip Device Controller sees only 1 of the virtual interfaces at a time hci1 or hci2 in 'ble-adapter-print'. Same applies to Linux Lighting App which can be run inside the container using same the BLE interface that is seen by ble-adapter-print in chip device controller.
Chip Device Controller in Docker container seeing only hci2 interface:
Linux Lighting App runs in docker container only when run with hci2
On the Raspi host chip-device-ctlr: 'ble-adapter-print' shows the other Virtual BLE interface and the physical BLE adapter. Is there a way to give the chip-device-ctlr and the Linux Lighting App access to both the virtual BLE interfaces?