TLDR: Como se conectar a um dispositivo Bluetooth com um MacBook e Python
Uma versão de início rápido do nosso artigo popular sobre Python para Bluetooth LE.
Este artigo pressupõe que você conheça os fundamentos do Bluetooth LE e a escrita de código Python em um Mac. Caso contrário, confira nosso artigo detalhado aqui .
Requisitos
- Um computador Mac OS (12.x+)
- Python 3
- Bleak (uma biblioteca Python LE Bluetooth)
- Um relógio inteligente, lâmpada inteligente ou dispositivo Bluetooth LE semelhante
Bleak é uma biblioteca Bluetooth LE para Python.
Instale com pip install bleak.
Etapa 1: procurar dispositivos Bluetooth próximos
Esta etapa é opcional se você já conhece o endereço MAC ou UUID do seu dispositivo.
Coloque o código abaixo em um arquivo chamado scanner.pye execute-o.
# scanner.py
import asyncio
from bleak import BleakScanner
async def main():
devices = await BleakScanner.discover()
for device in devices:
print(device)
asyncio.run(main())
Copie o UUID do seu dispositivo. Se quisermos nos conectar ao primeiro Xsens DOT listado, teremos que usar o endereço 338312FA-C3D1–183F-325A-0726AFDBEB78.
AsyncIO é uma biblioteca Python que ajuda nosso código a esperar para ouvir de dispositivos Bluetooth. Dessa forma, por mais que os dispositivos Bluetooth demorem para enviar uma mensagem ao nosso computador, isso não irá pausar nosso código ou causar erros por demorar muito.
Etapa 2: conectar-se ao dispositivo
Agora que sabemos o endereço do nosso dispositivo, podemos nos conectar a ele com BleakClient().
Em um novo arquivo, connect.py, coloque o seguinte:
# connect.py
import asyncio
from bleak import BleakClient
async def main():
address = "ABCDEFG1-XXXX-XXXX-XXXX-XXXXXXXXXX"
async with BleakClient(address) as client:
print(client.is_connected) # prints True or False
asyncio.run(main())
Por exemplo, para o Xsens DOT, essa linha será:
address = "338312FA-C3D1–183F-325A-0726AFDBEB78"
Este é o script completo para conectar a um dispositivo Bluetooth.
# connect.py
import asyncio
from bleak import BleakClient
async def main():
address = "ABCDEFG1-XXXX-XXXX-XXXX-XXXXXXXXXX"
async with BleakClient(address) as client:
print(client.is_connected) # prints True or False
asyncio.run(main())
Isso é tudo que você precisa para se conectar a um dispositivo Bluetooth LE com Python e Bleak.
Perguntas e comentários
Se você tiver dúvidas ou comentários, envie-nos um e-mail para [email protected] ou uma mensagem no Instagram (@protobioengineering) .
Se você gostou deste artigo, considere nos apoiar doando um café .
Artigos relacionados
- E/S assíncrona em Python: um passo a passo completo
- Documentação da biblioteca Python Bleak
- Como se conectar a um dispositivo Bluetooth LE com um MacBook e Python (versão estendida)





































![O que é uma lista vinculada, afinal? [Parte 1]](https://post.nghiatu.com/assets/images/m/max/724/1*Xokk6XOjWyIGCBujkJsCzQ.jpeg)