-
Notifications
You must be signed in to change notification settings - Fork 186
Open
Labels
bugSomething isn't workingSomething isn't workingtriageNeeds to be reviewed and assignedNeeds to be reviewed and assigned
Description
I use the python SDK to periodically take photos with a GoPro.
After triggering the shutter and download the photo via USB, I use BLE to turn off the GoPro:
async with WirelessGoPro(target="GoPro 2614", interfaces={WirelessGoPro.Interface.BLE}) as gopro:
await gopro.ble_command.sleep()
It works most of the time, but sometimes i get this exception:
Jan 07 18:00:23 camera-controller[28730]: Traceback (most recent call last):
Jan 07 18:00:23 camera-controller[28730]: File "camera-controller/open_gopro/gopro_wireless.py", line 395, in open
Jan 07 18:00:23 camera-controller[28730]: File "camera-controller/open_gopro/gopro_wireless.py", line 645, in _open_ble
Jan 07 18:00:23 camera-controller[28730]: File "camera-controller/open_gopro/api/builders.py", line 741, in get_value_observable
Jan 07 18:00:23 camera-controller[28730]: File "camera-controller/open_gopro/domain/gopro_observable.py", line 131, in start
Jan 07 18:00:23 camera-controller[28730]: File "camera-controller/open_gopro/gopro_base.py", line 111, in enforce_message_rules
Jan 07 18:00:23 camera-controller[28730]: File "camera-controller/open_gopro/gopro_wireless.py", line 566, in _enforce_message_rules
Jan 07 18:00:23 camera-controller[28730]: File "camera-controller/open_gopro/gopro_wireless.py", line 804, in _send_ble_message
Jan 07 18:00:23 camera-controller[28730]: RuntimeError: [QueryCmdId.REG_STATUS_VAL_UPDATE] received incorrect response: [FeatureId.QUERY::ActionId.RESPONSE_GET_COHN_STATUS]
Jan 07 18:00:25 bluetoothd[18145]: No matching connection for device
Jan 07 18:00:28 bluetoothd[18145]: profiles/deviceinfo/deviceinfo.c:read_pnpid_cb() Error reading PNP_ID value: Request attribute has encountered an unlikely error
Jan 07 18:00:37 camera-controller[28730]: Traceback (most recent call last):
Jan 07 18:00:37 camera-controller[28730]: File "camera-controller/asyncio/tasks.py", line 507, in wait_for
Jan 07 18:00:37 camera-controller[28730]: File "camera-controller/asyncio/queues.py", line 186, in get
Jan 07 18:00:37 camera-controller[28730]: asyncio.exceptions.CancelledError
Jan 07 18:00:37 camera-controller[28730]: The above exception was the direct cause of the following exception:
Jan 07 18:00:37 camera-controller[28730]: Traceback (most recent call last):
Jan 07 18:00:37 camera-controller[28730]: File "camera-controller/open_gopro/gopro_wireless.py", line 799, in _send_ble_message
Jan 07 18:00:37 camera-controller[28730]: File "camera-controller/asyncio/tasks.py", line 506, in wait_for
Jan 07 18:00:37 camera-controller[28730]: File "camera-controller/asyncio/timeouts.py", line 116, in __aexit__
Jan 07 18:00:37 camera-controller[28730]: TimeoutError
Jan 07 18:00:37 camera-controller[28730]: The above exception was the direct cause of the following exception:
Jan 07 18:00:37 camera-controller[28730]: Traceback (most recent call last):
Jan 07 18:00:37 camera-controller[28730]: File "camera-controller/open_gopro/gopro_wireless.py", line 395, in open
Jan 07 18:00:37 camera-controller[28730]: File "camera-controller/open_gopro/gopro_wireless.py", line 619, in _open_ble
Jan 07 18:00:37 camera-controller[28730]: File "camera-controller/open_gopro/api/builders.py", line 402, in wrapper
Jan 07 18:00:37 camera-controller[28730]: File "camera-controller/open_gopro/gopro_base.py", line 111, in enforce_message_rules
Jan 07 18:00:37 camera-controller[28730]: File "camera-controller/open_gopro/gopro_wireless.py", line 566, in _enforce_message_rules
Jan 07 18:00:37 camera-controller[28730]: File "camera-controller/open_gopro/gopro_wireless.py", line 809, in _send_ble_message
Jan 07 18:00:37 camera-controller[28730]: open_gopro.domain.exceptions.ResponseTimeout: Response timeout occurred of 5 seconds
Jan 07 18:00:39 camera-controller[28730]: [ERROR] | dbus_fast.message_bus | 2026-01-07 18:00:39,777 | A message handler raised an exception: Connection terminated: BLE connection terminated unexpectedly.
Jan 07 18:00:39 camera-controller[28730]: Traceback (most recent call last):
Jan 07 18:00:39 camera-controller[28730]: File "src/dbus_fast/message_bus.py", line 819, in dbus_fast.message_bus.BaseMessageBus._process_message
Jan 07 18:00:39 camera-controller[28730]: File "camera-controller/bleak/backends/bluezdbus/manager.py", line 1016, in _parse_msg
Jan 07 18:00:39 camera-controller[28730]: File "camera-controller/bleak/backends/bluezdbus/client.py", line 173, in on_connected_changed
Jan 07 18:00:39 camera-controller[28730]: File "camera-controller/open_gopro/network/ble/adapters/bleak_wrapper.py", line 188, in disconnect_cb
Jan 07 18:00:39 camera-controller[28730]: File "camera-controller/open_gopro/gopro_wireless.py", line 778, in _disconnect_handler
Jan 07 18:00:39 camera-controller[28730]: open_gopro.domain.exceptions.ConnectionTerminated: Connection terminated: BLE connection terminated unexpectedly.
Jan 07 18:00:39 bluetoothd[18145]: No matching connection for device
I use open_gopro 0.22.0 with this patch.
Hardware
- Camera: Hero12 and Hero13 (the error occurs way more often on Hero12)
- Raspberry Pi Zero 2W (latest Raspberry OS based on Debian 13; bluez 5.82)
Metadata
Metadata
Assignees
Labels
bugSomething isn't workingSomething isn't workingtriageNeeds to be reviewed and assignedNeeds to be reviewed and assigned