Au top ten des questions que le support reçoit le plus régulièrement, il y a: "Quand diable allez-vous vous décider à ajouter le support Python?". C'est en général formulé un peu plus poliment que ça, mais c'est l'esprit :-)
Eh bien, figurez-vous que la librairie Python est désormais disponible, vous allez enfin pouvoir contrôler les modules Yoctopuce avec Python.
La librairie Python pour les modules de Yoctopuce est compatible à la fois avec Python 2.6+ et Python 3+ (si,si). Elle est capable de piloter les modules USB en natif (pas forcément besoin de Virtual Hub). Elle fonctionne sous Windows, sous Mac OS X et sous Linux tant i386 que ARM. Même Java n'est pas aussi portable :-)
Installation
Pour installer la librairie, téléchargez la librairie Yoctopuce pour Python, copiez le contenu du répertoire Sources dans le répertoire de votre choix et ajoutez ce répertoire à votre variable d'environnement PYTHONPATH. C'est tout.
Si vous utilisez un IDE pour programmer en python, il est possible que vous ayez aussi à configurer votre IDE pour qu'il trouve ce répertoire tout seul.
Utilisation
La librairie pour Python s'utilise exactement comme les autres librairies Yoctopuce: il faut dans un premier temps importer le module yocto_api et les modules correspondants aux fonctions que vous désirez gérer. Il faut ensuite faire un appel à registerHub et vous pourrez alors accéder à vos devices. Voici l'exemple minimal pour lire la température depuis un module Yoctopuce équipé d'un capteur de température, comme un Yocto-Temperature ou un Yocto-Meteo.
import sys
# import yoctopuce library
from yocto_api import *
from yocto_temperature import *
# Setup the API to use local USB devices
errmsg= YRefParam() # little trick for By Ref parameters
if YAPI.RegisterHub("usb", errmsg)!= YAPI.SUCCESS:
sys.exit("init error"+str(errmsg))
# look for any temperature sensor
sensor = YTemperature.FirstTemperature()
if sensor is None :
sys.exit("No temperature sensor")
# display sensor value
print("Temperature : %.1f°C" % sensor.get_currentValue())
Voilà, vous savez l'essentiel, le reste se trouve dans la doc.
Si vous avez besoin de faire tourner la librairie Python sur une plateforme ou un OS qui n'est pas encore supporté, contactez le support Yoctopuce, il est possible que l'on puisse faire quelque chose pour vous.