David Lechner
David Lechner
Can you share a minimal reproducible test case?
The packet logs for the timeout error also have the write not permitted error, so I'm guessing it is the same problem causing both exceptions. The write not permitted error...
I would suggest logging Bluetooth traffic using a sniffer to see what is going on over the airwaves. This will let you see empty packets that you can't see by...
As a workaround, you could use an `asyncio.Event()`. The notification callback would need to call `event.set()`, then you would do: ```python await event.wait() await client.read_gatt_char(tx_char) event.clear() ```
Based on your example, I thought that maybe you had a case where the value was too large to fit in a notification and you had to do a read...
No concrete plans. But having something that could be used in an `async for` loop like we did for advertisement data in https://github.com/hbldh/bleak/pull/1361 could be nice.
I don't see any duplicate issues, so let's leave this one open.
If things are going wrong in the kernel, there isn't much we can do in Bleak. I would suggest logging Bluetooth traffic with `btmon` and reporting the issue to the...
FYI, calling `asyncio.create_task()` in the `poll()` methods without keeping a handle to the returned task will allow the task to be garbage collected before the task completes. See https://docs.python.org/3.12/library/asyncio-task.html#asyncio.create_task Polling...
> Shall I close this issue and reopen if/when I reproduce with a simpler and more compact program? Sounds good. So far, this sounds more like a hardware issue than...