-
Notifications
You must be signed in to change notification settings - Fork 300
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
macOS client.start_notify fails after reconnect #1645
Comments
Can you give an example program and the exact steps to reproduce the problem? |
Yep, sorry. Attached is a minimal demo program. import bleak
import asyncio
# replace this with anything suiting on your device
notify_uuid = '00002a56-0000-1000-8000-00805f9b34fb'
async def main():
scanner = bleak.BleakScanner()
disconnect_event = asyncio.Event()
client = bleak.BleakClient(
await scanner.find_device_by_name('BLEnky demo'),
lambda client: disconnect_event.set()
)
await client.connect()
await client.start_notify(notify_uuid, print)
print('connected, please restart device')
await disconnect_event.wait()
print('reconnecting...')
await client.connect()
# this will throw on macOS, not on linux
await client.start_notify(notify_uuid, print)
print('reconnected.')
asyncio.run(main()) Steps to reproduce:
Besides, great work on this! This library is a pleasure to use, I wish there was something comperable for js! Thank you! |
I experience this too for v0.22.3 on macOS 15.0.1 |
Calling |
Thanks David for this hint! Not reusing that client resolves the reconnect issues for me. Keep going! |
bluetoothctl -v
) in case of Linux:Description
When running
client.start_notify
on a device that has previously been connected to and that disconnected and connected again, it throws the exceptionValueError: Characteristic notifications already started
.Not calling the function a second time causes no notifications to arrive.
The text was updated successfully, but these errors were encountered: