Conocer la dirección de dispositivo: https://www.jesusninoc.com/09/02/como-escanear-dispositivos-ble-cercanos-en-python-con-bleak/
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 |
import asyncio from bleak import BleakClient # Device address DEVICE_ADDRESS = "asdfasfsf-adfdsaf-asdfasdf-adfas-asdfasdf" async def discover_services_and_characteristics(client): try: # Discover all services services = await client.get_services() for service in services: print(f"Servicio: {service.uuid}") for characteristic in service.characteristics: print(f" Característica: {characteristic.uuid}") print(f" Propiedades: {characteristic.properties}") # Optionally, you can print the characteristic's value if it's readable if "read" in characteristic.properties: try: value = await client.read_gatt_char(characteristic.uuid) print(f" Valor: {value}") except Exception as e: print(f" No se pudo leer el valor: {e}") except Exception as e: print(f"Error al descubrir servicios y características: {e}") async def main(): # Create a BleakClient instance with the device address async with BleakClient(DEVICE_ADDRESS) as client: print(f"Conectado a {client.address}") # Discover services and characteristics await discover_services_and_characteristics(client) if __name__ == "__main__": asyncio.run(main()) |