TLDR : comment se connecter à un périphérique Bluetooth avec un MacBook et Python
Une version de démarrage rapide de notre article populaire sur Python pour Bluetooth LE.
Cet article suppose que vous connaissez les bases de Bluetooth LE et que vous écrivez du code Python sur un Mac. Si ce n'est pas le cas, consultez notre article détaillé ici .
Exigences
- Un ordinateur Mac OS (12.x+)
- Python 3
- Bleak (une bibliothèque Python Bluetooth LE)
- Une montre intelligente, une ampoule intelligente ou un appareil Bluetooth LE similaire
Bleak est une bibliothèque Bluetooth LE pour Python.
Installer avec pip install bleak.
Étape 1 : Rechercher les appareils Bluetooth à proximité
Cette étape est facultative si vous connaissez déjà l'adresse MAC ou l'UUID de votre appareil.
Mettez le code ci-dessous dans un fichier appelé scanner.pyet exécutez-le.
# scanner.py
import asyncio
from bleak import BleakScanner
async def main():
devices = await BleakScanner.discover()
for device in devices:
print(device)
asyncio.run(main())
Copiez l'UUID de votre appareil. Si nous voulons nous connecter au premier Xsens DOT listé, nous devrons utiliser address 338312FA-C3D1–183F-325A-0726AFDBEB78.
AsyncIO est une bibliothèque Python qui aide notre code à attendre d'entendre les appareils Bluetooth. De cette façon, quel que soit le temps qu'il faut aux appareils Bluetooth pour envoyer un message à notre ordinateur, cela ne mettra pas notre code en pause ou ne provoquera pas d'erreurs pour prendre trop de temps.
Étape 2 : Connectez-vous à l'appareil
Maintenant que nous connaissons l'adresse de notre appareil, nous pouvons nous y connecter avec BleakClient().
Dans un nouveau fichier, connect.py, mettez ce qui suit :
# 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())
Par exemple, pour le Xsens DOT, cette ligne sera :
address = "338312FA-C3D1–183F-325A-0726AFDBEB78"
Ceci est le script complet pour se connecter à un appareil 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())
C'est tout ce dont vous avez besoin pour vous connecter à un appareil Bluetooth LE avec Python et Bleak.
Questions et commentaires
Si vous avez des questions ou des commentaires, écrivez-nous à [email protected] ou envoyez-nous un message sur Instagram (@protobioengineering) .
Si cet article vous a plu, pensez à nous soutenir en offrant un café .
Articles Liés
- Async IO en Python : une procédure pas à pas complète
- documentation de la bibliothèque Python Bleak
- Comment se connecter à un appareil Bluetooth LE avec un MacBook et Python (version étendue)
![Qu'est-ce qu'une liste liée, de toute façon? [Partie 1]](https://post.nghiatu.com/assets/images/m/max/724/1*Xokk6XOjWyIGCBujkJsCzQ.jpeg)



































