5.1. Paradigme de programmation ..................5.2. Le module Yocto-PowerRelay-V2 ..................5.3. Module ..........................5.4. Relay ........................... 5.5. Quelle interface: Native, DLL ou Service? ............... 5.6. Programmation, par où commencer? ................6. Utilisation du Yocto-PowerRelay-V2 en ligne de commande ...... 6.1. Installation .......................... www.yoctopuce.com...
Page 4
8.4. Intégration de la librairie Yoctopuce en C++ ..............9. Utilisation du Yocto-PowerRelay-V2 en C# ............9.1. Installation .......................... 9.2. Utilisation l'API yoctopuce dans un projet Visual C# ............. 9.3. Contrôle de la fonction Relay ................... 9.4. Contrôle de la partie module ....................
Page 5
14. Utilisation du Yocto-PowerRelay-V2 en JavaScript / EcmaScript ..14.1. Fonctions bloquantes et fonctions asynchrones en JavaScript ....... 14.2. Utiliser la librairie Yoctopuce pour JavaScript / EcmaScript 2017 ......14.3. Contrôle de la fonction Relay ..................14.4. Contrôle de la partie module ..................
Page 6
24.5. Module alimenté mais invisible pour l'OS ..............24.6. Another process named xxx is already using yAPI ............ 24.7. Déconnexions, comportement erratique ..............24.8. RegisterHub d'un VirtualHub déconnecte le précédent ..........24.9. Commandes ignorées ....................24.10. Module endommagé ....................25. Caractéristiques ......................www.yoctopuce.com...
Les ingénieurs Yoctopuce se sont donné beaucoup de mal pour que votre Yocto-PowerRelay-V2 soit facile à installer n'importe où et soit facile à piloter depuis un maximum de langages de programmation. Néanmoins, si ce module venait à vous décevoir, ou si vous avez besoin d'informations supplémentaires, n'hésitez pas à...
Suisse 1.1. Informations de sécurité Le Yocto-PowerRelay-V2 est conçu pour respecter la norme de sécurité IEC 61010-1:2010. Il ne causera pas de danger majeur pour l'opérateur et la zone environnante, même en condition de premier défaut, pour autant qu'il soit intégré et utilisé conformément aux instructions contenues dans cette documentation, et en particulier dans cette section.
1. Introduction Environnement Le Yocto-PowerRelay-V2 n'est pas certifié pour utilisation dans les zones dangereuses, ni pour les environnements explosifs. Les conditions environnementales assignées sont décrites ci-dessous. Classe de protection II (IEC 61140) Le module Yocto-PowerRelay-V2 est protégé par une double isolation ou par une isolation reforcée.
Page 10
2000m. L'utilisation à des altitudes supérieures demande un examen approfondi des paramètres de sécurité en fonction de l'application. Le Yocto-PowerRelay-V2 peut fonctionner sans risque sur toute la plage de tension et de courant spécifiée en conditions de température normale selon IEC61010-1, soit 5°C à 40°C. Le Yocto- PowerRelay-V2 est prévu pour pouvoir fonctionner aussi sur une plage de températures étendue,...
Tous les Yocto-modules ont un certain nombre de fonctionnalités en commun. Le connecteur USB Les modules de Yoctopuce sont tous équipés d'une connectique USB 2.0 au format micro-B. Attention, le connecteur USB est simplement soudé en surface et peut être arraché si la prise USB venait à...
. Si cela arrivait débranchez puis rebranchez le module. Si le problème venait à se reproduire vérifiez que le module contient bien la dernière version du firmware, et dans l'affirmative contactez le support Yoctopuce La sonde de courant Chaque Yocto-module est capable de mesurer sa propre consommation de courant sur le bus USB.
2.2. Les éléments spécifiques Le bornier à vis Le relais embarqué par le module Yocto-PowerRelay-V2 est un commutateur, c'est à dire qu'il peut commuter le courant qu'il reçoit en entrée sur l'une de ses deux sorties. C'est pourquoi le bornier a trois pôles: l'entrée se trouve au milieu et les sorties sont à...
LED ont tendance à éclairer un assez fort, mais il est possible de régler leur luminosité par logiciel. 2.3. Isolation électrique de sécurité Le Yocto-PowerRelay-V2 est conçu sous forme de deux circuits électriques bien distincts, séparés par une barrière d'isolation renforcée . Cette barrière d'isolation joue un rôle essentiel pour la sécurité...
Yoctopuce. Vis et entretoises Pour fixer le module Yocto-PowerRelay-V2 à un support, vous pouvez placer des petites vis de 2.5mm avec une tête de 4.5mm au maximum dans les trous prévus ad-hoc. Il est conseillé de les visser dans des entretoises filetées, que vous pourrez fixer sur le support. Vous trouverez plus de détail à...
Page 16
Yoctopuce et se comporte exactement comme un ordinateur normal qui ferait tourner un VirtualHub. Connecteurs 1.27mm (ou 1.25mm) Si vous désirez raccorder le module Yocto-PowerRelay-V2 à un Micro-hub USB ou a un YoctoHub en évitant l'encombrement d'un vrai cable USB, vous pouvez utiliser les 4 pads au pas 1.27mm juste derrière le connecteur USB.
Linux est fait via l'API standard de la libusb, disponible aussi pour FreeBSD par exemple. Yoctopuce teste régulièrement le bon fonctionnement des modules sur un kernel Linux 4.15 (Ubuntu 18.04 LTS).
Le bon câble est disponible sur le shop de Yoctopuce. Vous devez raccorder votre module Yocto-PowerRelay-V2 à l'aide d'un cable USB 2.0 de type A - micro B Si vous branchez un hub USB entre l'ordinateur et le module Yocto-PowerRelay-V2, prenez garde à...
. Lancez le Virtual Hub en ligne de commande, ouvrez votre browser préféré et tapez l'adresse http://127.0.0.1:4444. Vous devriez voir apparaître la liste des modules Yoctopuce raccordés à votre ordinateur. Liste des modules telle qu'elle apparaît dans votre browser. 3.3. Localisation Il est alors possible de localiser physiquement chacun des modules affichés en cliquant sur le bouton...
Nom logique des fonctions Chaque module Yoctopuce a un numéro de série, et un nom logique. De manière analogue, chaque fonction présente sur chaque module Yoctopuce a un nom matériel et un nom logique, ce dernier pouvant être librement choisi par l'utilisateur. Utiliser des noms logiques pour les fonctions permet une plus grande flexibilité...
à l'intérieur. Exemples de montage sur un support. Le module Yocto-PowerRelay-V2 dispose de trous de montage 2.5mm. Vous pouvez utiliser ces trous pour y passer des vis. Le diamètre de la tête de ces vis ne devra pas dépasser 4.5mm, sous peine d'endommager les circuits du module.
4. Montage et connectique 4.2. Exemple de Montages Si vous vous vous êtes procuré un module Yocto-PowerRelay-V2, c'est probablement parce que vous savez déjà exactement ce que vous comptez en faire. Néanmoins vous trouverez ci après quelques exemples de câblage parmi les plus simples.
2000mA, ça ne marche pas trop mal, et cela fait rarement des dégâts. Ce que vous devez en retenir: si vous branchez des modules Yoctopuce via un ou des hubs non alimentés, vous n'aurez aucun garde-fou et dépendrez entièrement du soin qu'aura mis le fabricant de votre ordinateur pour fournir un maximum de courant sur les ports USB et signaler les excès...
5.1. Paradigme de programmation L'API Yoctopuce est une API orientée objet. Mais dans un souci de simplicité, seules les bases de la programmation objet ont été utilisées. Même si la programmation objet ne vous est pas familière, il est peu probable que cela vous soit un obstacle à...
Programmation Dans l'API Yoctopuce, la priorité a été mise sur la facilité d'accès aux fonctionnalités des modules en offrant la possibilité de faire abstraction des modules qui les implémentent. Ainsi, il est parfaitement possible de travailler avec un ensemble de fonctionnalités sans jamais savoir exactement quel module les héberge au niveau matériel.
5.2. Le module Yocto-PowerRelay-V2 Le module Yocto-PowerRelay-V2 offre une seule instance de la fonction Relay, correspondant à l'unique relais de puissance présent sur le module. module : Module...
Page 28
Chaine de caractères contenant le numéro de série, unique et préprogrammé en usine. Pour un module Yocto-PowerRelay-V2, ce numéro de série commence toujours par RELAYHI2. Il peut servir comme point de départ pour accéder par programmation à un module particulier.
Interface pour intéragir avec les relais, disponibles par exemple dans le Yocto-LatchedRelay, le Yocto-MaxiPowerRelay, le Yocto-PowerRelay-V3 et le Yocto-Relay La classe permet de piloter un relais ou un optocoupleur Yoctopuce. Elle permet de YRelay commuter simplement la sortie, mais aussi de créer des courtes impulsions de durée déterminée.
Certain langages ne permettent tout simplement pas d'accéder facilement au niveau matériel de la machine. C'est le cas de Javascript par exemple. Pour gérer ce cas Yoctopuce offre la solution sous la forme d'un petit service, appelé VirtualHub qui lui est capable d'accéder aux modules, et votre application n'a plus qu'à...
Page 31
✔ ✔ C# UWP ✔ ✔ LabVIEW ✔ ✔ Java ✔ ✔ Java pour Android ✔ TypeScript ✔ JavaScript / ECMAScript ✔ ✔ ✔ VisualBasic .Net ✔ ✔ Delphi ✔ ✔ Objective-C Méthode de support pour les différents langages. www.yoctopuce.com...
Arrivé à ce point du manuel, vous devriez connaître l'essentiel de la théorie à propos de votre Yocto- PowerRelay-V2. Il est temps de passer à la pratique. Il vous faut télécharger la librairie Yoctopuce pour votre language de programmation favori depuis le site web de Yoctopuce .
6. Utilisation du Yocto-PowerRelay-V2 en ligne de commande Lorsque vous désirez effectuer une opération ponctuelle sur votre Yocto-PowerRelay-V2, comme la lecture d'une valeur, le changement d'un nom logique, etc.. vous pouvez bien sur utiliser le Virtual Hub, mais il existe une méthode encore plus simple, rapide et efficace: l'API en ligne de commande.
C:\>executable commande /help Pour obtenir une description détaillée des paramètres d'une commande. 6.3. Contrôle de la fonction Relay Pour contrôler la fonction Relay de votre Yocto-PowerRelay-V2, vous avez besoin de l'exécutable YRelay. Vous pouvez par exemple lancer: C:\>YRelay set_state B Cet exemple utilise la cible "any"...
6. Utilisation du Yocto-PowerRelay-V2 en ligne de commande 6.4. Contrôle de la partie module Chaque module peut être contrôlé d'une manière similaire à l'aide de l'exécutable . Par YModule exemple, pour obtenir la liste de tous les modules connectés, utilisez: C:\>YModule inventory...
Page 36
6. Utilisation du Yocto-PowerRelay-V2 en ligne de commande Vous obtenez un inventaire des modules connectés par USB, en utilisant un accès natif. Si il y a déjà une autre commande en cours qui accède aux modules en natif, cela ne fonctionnera pas. Mais si vous lancez un virtual hub et que vous lancez votre commande sous la forme: C:\>YModule -r 127.0.0.1 inventory...
Windows qu'Unix. C'est un language idéal pour écrire des petits scripts sur un coin de table. La librairie Yoctopuce est compatible avec Python 2.6+ et 3+. Elle fonctionne sous Windows, Max OS X et Linux tant Intel qu'ARM.
7. Utilisation du Yocto-PowerRelay-V2 en Python Il suffit de quelques lignes de code pour piloter un Yocto-PowerRelay-V2. Voici le squelette d'un fragment de code Python qui utilise la fonction Relay. [...] # On active la détection des modules sur USB errmsg=YRefParam() YAPI.RegisterHub("usb",errmsg)
7. Utilisation du Yocto-PowerRelay-V2 en Python import os, from yocto_api import from yocto_relay import usage(): scriptname = os.path.basename(sys.argv[0]) print("Usage:") print(scriptname + ' <serial_number> [ A | B print(scriptname + ' <logical_name> [ A | B print(scriptname + ' any [ A | B...
Page 40
7. Utilisation du Yocto-PowerRelay-V2 en Python = YModule.FindModule(sys.argv[1]) # # use serial or logical name m.isOnline(): if len(sys.argv) > if sys.argv[2].upper() == "ON": m.set_beacon(YModule.BEACON_ON) if sys.argv[2].upper() == "OFF": m.set_beacon(YModule.BEACON_OFF) print("serial: " m.get_serialNumber()) print("logical name: " m.get_logicalName()) print("luminosity: " str(m.get_luminosity())) if m.get_beacon() == YModule.BEACON_ON:...
La méthode recommandée par la plupart des langages de programmation pour la gestion des erreurs imprévisibles est l'utilisation d'exceptions. C'est le comportement par défaut de la librairie Yoctopuce. Si une erreur se produit alors qu'on essaie d'accéder à un module, la librairie va lancer une exception. Dans ce cas, de trois choses l'une: •...
Page 42
7. Utilisation du Yocto-PowerRelay-V2 en Python peuvent être testées par l'appelant lorsque c'est pertinent. Le nom de la valeur de retour en cas d'erreur pour chaque fonction est systématiquement documenté dans la référence de la librairie. Il suit toujours même logique: méthode...
à la création d'un projet à neuf linké avec les librairies Yoctopuce. 8.1. Contrôle de la fonction Relay Il suffit de quelques lignes de code pour piloter un Yocto-PowerRelay-V2. Voici le squelette d'un fragment de code C++ qui utilise la fonction Relay. #include "yocto_api.h"...
Page 44
Mais vous pouvez tout aussi bien utiliser des noms logiques que vous auriez préalablement configurés. Imaginons un module Yocto-PowerRelay-V2 avec le numéros de série RELAYHI2-123456 que vous auriez appelé "MonModule" et dont vous auriez nommé...
8. Utilisation du Yocto-PowerRelay-V2 en C++ #include "yocto_api.h" #include "yocto_relay.h" #include <iostream> #include <ctype.h> #include <stdlib.h> using namespace std; static void usage(void) cout << "usage: demo <serial_number> [ A | B ]" << endl; cout << " demo <logical_name> [ A | B ]"...
Page 46
8. Utilisation du Yocto-PowerRelay-V2 en C++ cout << "usage: " << << " <serial or logical name> [ON/OFF]" << endl; exit(1); int main(int argc, const char * argv[]) string errmsg; // Setup the API to use local USB devices if(YAPI::RegisterHub("usb",...
Page 47
8. Utilisation du Yocto-PowerRelay-V2 en C++ int main(int argc, const char * argv[]) string errmsg; // Setup the API to use local USB devices if(YAPI::RegisterHub("usb", errmsg) != YAPI::SUCCESS) { cerr << "RegisterHub error: " << errmsg << endl; return 1;...
La méthode recommandée par la plupart des langages de programmation pour la gestion des erreurs imprévisibles est l'utilisation d'exceptions. C'est le comportement par défaut de la librairie Yoctopuce. Si une erreur se produit alors qu'on essaie d'accéder à un module, la librairie va lancer une exception. Dans ce cas, de trois choses l'une: •...
ASCII, etc.); • Elle facilite le déboggage si vous cherchez la cause d'un problème lié à la librairie Yoctopuce • Elle réduit les dépendances sur des composants tiers, par exemple pour parer au cas où vous pourriez être mené...
Page 50
Windows. Ce script qui se situe à la racine de la librairie, détecte l'OS et build.bat recompile toutes les librairies ainsi que les exemples correspondant. Ensuite, pour intégrer la librairie dynamique Yoctopuce à votre projet, vous devez inclure le répertoire de la librairie Yoctopuce à votre IncludePath, et ajouter le sous-répertoire de Sources correspondant à...
9.2. Utilisation l'API yoctopuce dans un projet Visual C# La librairie Yoctopuce pour Visual C# .NET se présente sous la forme d'une DLL et de fichiers sources en Visual C#. La DLL n'est pas une DLL .NET mais une DLL classique, écrite en C, qui gère les communications à...
Il va de soit que que les fonctionnement des librairies est strictement identiques si vous les intégrez dans une application dotée d'une interface graphique. 9.3. Contrôle de la fonction Relay Il suffit de quelques lignes de code pour piloter un Yocto-PowerRelay-V2. Voici le squelette d'un fragment de code C# qui utilise la fonction Relay. [...] // On active la détection des modules sur USB...
Page 53
9. Utilisation du Yocto-PowerRelay-V2 en C# relay = YRelay.FindRelay("MonModule.MaFonction"); relay = YRelay.FindRelay("MaFonction"); renvoie un objet que vous pouvez ensuite utiliser à loisir pour contrôler le YRelay.FindRelay relais. isOnline La méthode de l'objet renvoyé par permet de savoir si le isOnline() YRelay.FindRelay...
9. Utilisation du Yocto-PowerRelay-V2 en C# Console.WriteLine("Module not connected"); Console.WriteLine("check identification and USB cable"); YAPI.FreeAPI(); 9.4. Contrôle de la partie module Chaque module peut-être contrôlé d'une manière similaire, vous trouverez ci-dessous un simple programme d'exemple affichant les principaux paramètres d'un module et permettant d'activer la balise de localisation.
Page 55
9. Utilisation du Yocto-PowerRelay-V2 en C# YAPI.FreeAPI(); Chaque propriété du module peut être lue grâce à une méthode du type YModule.get_xxxx , et les propriétés qui se sont pas en lecture seule peuvent être modifiées à l'aide de la méthode Pour plus de détails concernant ces fonctions utilisées, reportez-vous aux...
La librairie Yoctopuce est prévue pour vous aider à supporter ce genre de comportements, mais votre code doit néanmoins être fait pour se comporter au mieux pour interpréter les erreurs signalées par la librairie.
Page 57
La méthode recommandée par la plupart des langages de programmation pour la gestion des erreurs imprévisibles est l'utilisation d'exceptions. C'est le comportement par défaut de la librairie Yoctopuce. Si une erreur se produit alors qu'on essaie d'accéder à un module, la librairie va lancer une exception. Dans ce cas, de trois choses l'une: •...
Virtual Instruments (VI) des programmes LabVIEW. Avec la programmation visuelle, dessiner des algorithmes complexes devient très vite fastidieux, c'est pourquoi la librairie Yoctopuce pour LabVIEW a été pensée pour être aussi simple de possible à utiliser. Autrement dit, LabVIEW étant un environnement extrêmement différent des autres langages supportés par l'API Yoctopuce, vous rencontrerez des différences majeures entre l'API LabVIEW et...
Yoctopuce, ces derniers doivent avoir au moins le firmware 37120 LabVIEW pour Linux et MacOS Au moment de l'écriture de ce manuel, l'API Yoctopuce pour LabVIEW n'a été testée que sous Windows. Il y a donc de fortes chances pour qu'elle ne fonctionne tout simplement pas avec les versions Linux et MacOS de LabVIEW.
Page 61
Pour pouvoir utiliser les exemples fournis avec l'API, vous aurez avantage à ajouter le répertoire des VIs Yoctopuce dans la liste des répertoires où LabVIEW doit chercher les VIs qu'il n'a pas trouvé. Cette liste est accessible via le menu Tools > Options > Paths > VI Search Path.
à faire en sorte qu'ils ne soit pas effacés tant que vous en aurez besoin. Voici ce que fait exactement l'installeur quand cette option est choisie: • Toute référence à des répertoires contenant une version quelconque de la librairie Yoctopuce sont supprimés de l'option viSearchPath dans le fichier labview.ini.
Notez cependant que les exemples de programmation ne sont pas copiés. Voici ce que fait l'installeur exactement: • Toute référence à des répertoires contenant une version quelconque de la librairie Yoctopuce sont supprimés de l'option viSearchPath dans le fichier labview.ini.
Page 64
\Yoctopuce\API que vous avez créé au point 1 et cliquez sur Current Folder Tous les VIs Yoctopuce vont apparaitre dans la fenêtre Yoctopuce. Par défaut, ils sont triés dans l'ordre alphabétique, mais vous pouvez les arranger comme bon vous semble en les glissant avec la souris.
Yoctopuce et avec tous les VIs de l'API 10.4. Présentation des VIs Yoctopuce La librairie Yoctopuce pour LabVIEW comprend un VI par classe de l'API Yoctopuce, plus quelques VI spéciaux. Tous les VIs disposent des connecteurs traditionnels Error IN et Error Out.
à moins que le paramètre async ne soit mis à TRUE. Si async est mis à TRUE, aucune erreur ne sera générée, et les modules Yoctopuce correspondant à cette adresse IP seront automatiquement mis à disposition dès que la machine concernée sera joignable.
Utilisation du VI YModule pour retrouver les fonctions hébergés sur le même module Les VI senseurs Tous les VI correspondant à des senseurs Yoctopuce ont exactement la même géométrie. Les deux sorties permettent de récupérer la valeur mesurée par le capteur correspondant ainsi que l'unité...
élevés utiliser la syntaxe (x/s). La fréquence de mise à jour du VI est un paramètre géré par le module Yoctopuce physique. Si plusieurs VI essayent de changer la fréquence d'un même capteur, la configuration retenue sera celle du dernier appel.
Page 69
10. Utilisation du Yocto-PowerRelay-V2 avec LabVIEW Utilisation des sorties hardware name et isOnline Les VIs de l'API Yoctopuce ne sont qu'une porte d'entrée sur la mécanique interne de la librairie Yoctopuce. Cette mécanique fonctionne indépendamment des VIs Yoctopuce. En effet, la plupart des communications avec les modules électroniques sont gérées automatiquement en arrière plan.
VI pour chacune d'entre elles. C'est pourquoi il y a un VI par classe qui expose les deux propriétés que Yoctopuce a jugé les plus utiles, mais cela ne veut pas dire que les autres ne sont pas accessibles.
Vous trouverez la description de toutes les propriétés, fonctions et méthodes disponibles dans la documentation de l'API .NET Proxy. Utilisation en réseau Sur une même machine, il ne peut y avoir qu'un seul processus qui accède aux modules Yoctopuce locaux directement par USB (url mis à ). Par contre, plusieurs processus peuvent se "usb"...
Connexion asynchrone 10.7. Gestion du datalogger Quasiment tous les senseurs Yoctopuce disposent d'un enregistreur de données qui permet de stocker les mesures des senseurs dans la mémoire non volatile du module. La configuration de l'enregistreur de données peut être réalisée avec le VirtualHub, mais aussi à l'aide d'un peu de code...
10. Utilisation du Yocto-PowerRelay-V2 avec LabVIEW Le VI YDataLoggerContents Extraire les données de l'enregistreur d'un module Yoctopuce est un processus lent qui peut prendre plusieurs dizaines de secondes. C'est pourquoi le VI qui permet cette opération a été conçu pour fonctionner de manière itérative.
Récupération de la liste de tous les modules connectés 10.9. Un mot sur les performances L'API Yoctopuce pour LabVIEW été optimisée de manière à ce que les tous les VIs et les propriétés de objets Proxy génèrent un minimum de communication avec les modules Yoctopuce. Ainsi vous pouvez les utiliser dans des boucles sans prendre de précaution particulière: vous n'êtes pas obligés...
Yoctopuce pour LabVIEW 10.11. Différences avec les autres API Yoctopuce Yoctopuce fait tout son possible pour maintenir une forte cohérence entre les différentes librairies de programmation. Cependant, LabVIEW étant un environnement clairement à part, il en résulte des différences importantes avec les autres librairies.
Il va de soit que que le fonctionnement des librairies est strictement identiques si vous les intégrez dans une application dotée d'une interface graphique. 11.2. Contrôle de la fonction Relay Il suffit de quelques lignes de code pour piloter un Yocto-PowerRelay-V2. Voici le squelette d'un fragment de code Java qui utilise la fonction Relay. [...] // On active l'accès aux modules locaux à...
Mais vous pouvez tout aussi bien utiliser des noms logiques que vous auriez préalablement configurés. Imaginons un module Yocto-PowerRelay-V2 avec le numéros de série RELAYHI2-123456 que vous auriez appelé "MonModule" et dont vous auriez nommé...
La librairie Yoctopuce est prévue pour vous aider à supporter ce genre de comportements, mais votre code doit néanmoins être fait pour se comporter au mieux pour interpréter les erreurs signalées par la librairie.
Page 82
11. Utilisation du Yocto-PowerRelay-V2 en Java suffire dans certains cas. Il faut toutefois être conscient qu'on ne peut pas totalement exclure une erreur se produisant après le , qui pourrait faire planter le programme. isOnline() Dans l'API java, le traitement d'erreur est implémenté au moyen d'exceptions. Vous devrez donc intercepter et traiter correctement ces exceptions si vous souhaitez avoir un projet fiable qui ne crashera pas des que vous débrancherez un module.
En revanche, comme il n'existe pas de VirtualHub tournant sous Android, il n'est pas possible de prendre le contrôle à distance de modules Yoctopuce pilotés par une machine sous Android. Bien sûr, l'API Java pour Android reste parfaitement capable de se connecter à un VirtualHub tournant sur un autre OS.
"USB Host" en AndroidManifest.xml ajoutant le tag <uses-feature android:name="android.hardware.usb.host" /> dans la section manifest <manifest ...> <uses-feature android:name="android.hardware.usb.host" />; Les YoctoHub sont un moyen simple et efficace d'ajouter une connectivité réseau à vos modules Yoctopuce. http:// www.yoctopuce.com/FR/products/category/extensions-et-reseau www.yoctopuce.com...
12. Utilisation du Yocto-PowerRelay-V2 avec Android </manifest> Lors du premier accès à un module Yoctopuce, Android va ouvrir une fenêtre pour informer l'utilisateur que l'application va accéder module connecté. L'utilisateur peut refuser ou autoriser l a c c è s au périphérique. Si l'utilisateur accepte, l'application pourra accéder au périphérique connecté...
12. Utilisation du Yocto-PowerRelay-V2 avec Android 12.5. Contrôle de la fonction Relay Il suffit de quelques lignes de code pour piloter un Yocto-PowerRelay-V2. Voici le squelette d'un fragment de code Java qui utilise la fonction Relay. [...] // On active la détection des modules sur USB YAPI.EnableUSBHost(this);...
Page 87
12. Utilisation du Yocto-PowerRelay-V2 avec Android Un exemple réel Lancez votre environnement java et ouvrez le projet correspondant, fourni dans le répertoire Examples/Doc-Examples de la librairie Yoctopuce. Vous reconnaîtrez dans cet exemple l'utilisation des fonctions expliquées ci-dessus, cette fois utilisées avec le décorum nécessaire à en faire un petit programme d'exemple concret.
12. Utilisation du Yocto-PowerRelay-V2 avec Android @Override public void onNothingSelected(AdapterView<?> arg0) /** Called when the user touches the button State A */ public void setStateA(View view) // Do something in response to button click (relay != null) try { relay.setState(YRelay.STATE_A);...
Page 90
12. Utilisation du Yocto-PowerRelay-V2 avec Android if (on) { module.setBeacon(YModule.BEACON_ON); } else { module.setBeacon(YModule.BEACON_OFF); } catch (YAPI_Exception e) { e.printStackTrace(); Chaque propriété du module peut être lue grâce à une méthode du type YModule.get_xxxx , et les propriétés qui se sont pas en lecture seule peuvent être modifiées à l'aide de la méthode Pour plus de détails concernant ces fonctions utilisées, reportez-vous aux...
Page 92
12. Utilisation du Yocto-PowerRelay-V2 avec Android Enumeration des modules Obtenir la liste des modules connectés se fait à l'aide de la fonction YModule.yFirstModule() qui renvoie le premier module trouvé, il suffit ensuite d'appeler la mehode de cet nextModule() objet pour trouver les modules suivants, et ce tant que la réponse n'est pas un .
La librairie Yoctopuce est prévue pour vous aider à supporter ce genre de comportements, mais votre code doit néanmoins être fait pour se comporter au mieux pour interpréter les erreurs signalées par la librairie.
JavaScript avant l'exécution, pour être ensuite interprêté par n'importe quel navigateur Web ou par Node.js. Cette librairie de programmation Yoctopuce permet donc de coder des applications JavaScript tout en bénéficiant d'un typage fort. Comme notre librairie EcmaScript, elle utilise les fonctionnalités asynchrones introduites dans la version ECMAScript 2017 et qui sont maintenant disponibles nativement dans tous les environnements JavaScript modernes.
• Installez ensuite TypeScript sur votre machine à l'aide de la commande: npm install -g typescript 2. Connectez-vous ensuite sur le site Web de Yoctopuce et téléchargez les éléments suivants: • La librairie de programmation pour TypeScript • Le programme VirtualHub pour Windows, Mac OS X ou Linux selon l'OS que vous utilisez.
13.3. Contrôle de la fonction Relay Il suffit de quelques lignes de code pour piloter un Yocto-PowerRelay-V2. Voici le squelette d'un fragment de code TypeScript qui utilise la fonction Relay. // En Node.js, on référence la librairie via son package NPM // En HTML, on utiliserait plutôt un path relatif (selon l'environnement)
à en faire un petit programme d'exemple concret. Si le Yocto-PowerRelay-V2 n'est pas branché sur la machine où fonctionne le navigateur internet, remplacez dans l'exemple l'adresse par l'adresse IP de la machine où est branché le 127.0.0.1...
Page 99
13. Utilisation du Yocto-PowerRelay-V2 en TypeScript $Id: demo.js 32717 2018-10-19 15:58:17Z seb $ An example that show how to use a Yocto-PowerRelay You can find more information on our web site: Yocto-PowerRelay documentation: https://www.yoctopuce.com/EN/products/yocto-powerrelay/doc.html EcmaScript API Reference: https://www.yoctopuce.com/EN/doc/reference/yoctolib-ecmascript-EN.html *********************************************************************/ import { YAPI, YErrorMsg, YModule } from 'yoctolib-cjs/yocto_api_nodejs.js';...
Le même exemple, mais dans un navigateur Si vous voulez voir comment utiliser la librairie dans un navigateur plutôt que dans Node.js, changez de répertoire et allez dans example_html/Doc-GettingStarted-Yocto-PowerRelay-V2. Vous y trouverez un fichier html , et un fichier TypeScript similaire au code ci-dessus, app.html...
La librairie Yoctopuce est prévue pour vous aider à supporter ce genre de comportements, mais votre code doit néanmoins être fait pour se comporter au mieux pour interpréter les erreurs signalées par la librairie.
Page 103
La méthode recommandée par la plupart des langages de programmation pour la gestion des erreurs imprévisibles est l'utilisation d'exceptions. C'est le comportement par défaut de la librairie Yoctopuce. Si une erreur se produit alors qu'on essaie d'accéder à un module, la librairie va lancer une exception. Dans ce cas, de trois choses l'une: •...
JavaScript / EcmaScript 2017, afin de la différentier de la précédente Librairie pour JavaScript qu'elle remplace. Cette librairie permet d'accéder aux modules Yoctopuce depuis tous les environnements JavaScript modernes. Elle fonctionne aussi bien depuis un navigateur internet que dans un environnement Node.js.
14. Utilisation du Yocto-PowerRelay-V2 en JavaScript / EcmaScript 14.1. Fonctions bloquantes et fonctions asynchrones en JavaScript JavaScript a été conçu pour éviter toute situation de concurrence durant l'exécution. Il n'y a jamais qu'un seul thread en JavaScript. Cela signifie que si un programme effectue une attente active durant une communication réseau, par exemple pour lire un capteur, le programme entier se trouve...
JavaScript fait partie de ces langages qui ne vous permettront pas d'accéder directement aux couches matérielles de votre ordinateur. C'est pourquoi si vous désirez travailler avec des modules USB branchés par USB, vous devrez faire tourner la passerelle de Yoctopuce appelée VirtualHub sur la machine à laquelle sont branchés les modules.
14. Utilisation du Yocto-PowerRelay-V2 en JavaScript / EcmaScript npm instal -g babel-cli npm instal babel-preset-env Normalement vous demanderez à Babel de poser les fichiers transpilés dans un autre répertoire, nommé par exemple. Pour ce faire, utilisez par exemple les commandes suivantes: comopat babel --presets env demo.js --out-dir compat/...
Ce dernier appel asynchrone peut aussi être formulé comme: myModule.get_syncProxy().then(logInfoProxy); 14.3. Contrôle de la fonction Relay Il suffit de quelques lignes de code pour piloter un Yocto-PowerRelay-V2. Voici le squelette d'un fragment de code JavaScript qui utilise la fonction Relay. // En Node.js, on utilise la fonction require() // En HTML, on utiliserait <script src="...">...
Page 110
à en faire un petit programme d'exemple concret. Si le Yocto-PowerRelay-V2 n'est pas branché sur la machine où fonctionne le navigateur internet, remplacez dans l'exemple l'adresse par l'adresse IP de la machine où...
Page 111
14. Utilisation du Yocto-PowerRelay-V2 en JavaScript / EcmaScript relay YRelay.FindRelay(target + ".relay1"); if(await relay.isOnline()) { await relay.set_output(args[1] == "ON" YRelay.OUTPUT_ON : YRelay.OUTPUT_OFF); } else { console.log("Module not connected (check identification and USB cable)\n"); await YAPI.FreeAPI(); if(process.argv.length < 4) { console.log("usage: node demo.js <serial_number> [ ON | OFF ]");...
Page 113
14. Utilisation du Yocto-PowerRelay-V2 en JavaScript / EcmaScript if(process.argv.length < 2) { console.log("usage: node demo.js <serial or logicalname> [ ON | OFF ]"); } else { startDemo(process.argv.slice(2)); Chaque propriété du module peut être lue grâce à une méthode du type...
La librairie Yoctopuce est prévue pour vous aider à supporter ce genre de comportements, mais votre code doit néanmoins être fait pour se comporter au mieux pour interpréter les erreurs signalées par la librairie.
Page 115
La méthode recommandée par la plupart des langages de programmation pour la gestion des erreurs imprévisibles est l'utilisation d'exceptions. C'est le comportement par défaut de la librairie Yoctopuce. Si une erreur se produit alors qu'on essaie d'accéder à un module, la librairie va lancer une exception. Dans ce cas, de trois choses l'une: •...
Vous n'avez pas besoin d'installer de driver. 15.2. Contrôle de la fonction Relay Il suffit de quelques lignes de code pour piloter un Yocto-PowerRelay-V2. Voici le squelette d'un fragment de code PHP qui utilise la fonction Relay. include('yocto_api.php');...
Yocto-PowerRelay-V2. YAPI::RegisterHub La fonction permet d'indiquer sur quelle machine se trouve les modules YAPI::RegisterHub Yoctopuce, ou plus exactemenent sur quelle machine tourne le programme VirtualHub. Dans notre cas l'adresse indique la machine locale, en utilisant le port (le port 127.0.0.1:4444 4444 standard utilisé...
15. Utilisation du Yocto-PowerRelay-V2 en PHP browser favori. Vous trouverez aussi ce code dans le répertoire Examples/Doc-GettingStarted- Yocto-PowerRelay-V2 de la librairie Yoctopuce. Vous reconnaîtrez dans cet exemple l'utilisation des fonctions expliquées ci-dessus, cette fois utilisées avec le décorum nécessaire à en faire un petit programme d'exemple concret.
Page 120
15. Utilisation du Yocto-PowerRelay-V2 en PHP // Use explicit error handling rather than exceptions YAPI::DisableExceptions(); // Setup the API to use the VirtualHub on local machine if(YAPI::RegisterHub('http://127.0.0.1:4444/',$errmsg) != YAPI::SUCCESS) { die("Cannot contact VirtualHub on 127.0.0.1 : ".$errmsg); @$serial = $_GET['serial'];...
Page 121
15. Utilisation du Yocto-PowerRelay-V2 en PHP <TITLE>save settings</TITLE> <BODY> <FORM method='get'> <?php include('yocto_api.php'); // Use explicit error handling rather than exceptions YAPI::DisableExceptions(); // Setup the API to use the VirtualHub on local machine if(YAPI::RegisterHub('http://127.0.0.1:4444/',$errmsg) != YAPI::SUCCESS) { die("Cannot contact VirtualHub on 127.0.0.1");...
La librairie PHP est capable de fonctionner dans un mode spécial appelé Yocto-API par callback HTTP. Ce mode permet de contrôler des modules Yoctopuce installés derrière un filtre NAT tel qu'un routeur DSL par exemple, et ce sans avoir à un ouvrir un port. L'application typique est le contrôle de modules Yoctopuce situés sur réseau privé...
Page 123
15. Utilisation du Yocto-PowerRelay-V2 en PHP Les réponses aux requêtes venant des machines du LAN sont routées. Mais les requêtes venant de l'extérieur sont bloquées. Voir Internet sans être vu représente un avantage de sécurité énorme. Cependant, cela signifie qu'a priori, on ne peut pas simplement monter son propre serveur Web publique chez soi pour une installation domotique et offrir un accès depuis l'extérieur.
15. Utilisation du Yocto-PowerRelay-V2 en PHP Configuration L'API callback se sert donc du Virtual Hub comme passerelle. Toutes les communications sont initiées par le Virtual Hub, ce sont donc des communication sortantes, et par conséquent parfaitement autorisée par le routeur DSL.
VirtualHub pour fonctionner. Pour coder un site Web qui contrôle des modules Yoctopuce de manière interactive, il faudra créer une interface utilisateur qui stockera dans un fichier ou une base de données les actions à effectuer sur les modules Yoctopuce. Ces actions seront ensuite lues puis exécutés par le script de contrôle.
Page 126
La méthode recommandée par la plupart des langages de programmation pour la gestion des erreurs imprévisibles est l'utilisation d'exceptions. C'est le comportement par défaut de la librairie Yoctopuce. Si une erreur se produit alors qu'on essaie d'accéder à un module, la librairie va lancer une exception. Dans ce cas, de trois choses l'une: •...
16.2. Utilisation l'API yoctopuce dans un projet Visual Basic La librairie Yoctopuce pour Visual Basic .NET se présente sous la forme d'une DLL et de fichiers sources en Visual Basic. La DLL n'est pas une DLL .NET mais une DLL classique, écrite en C, qui gère les communications à...
16.3. Contrôle de la fonction Relay Il suffit de quelques lignes de code pour piloter un Yocto-PowerRelay-V2. Voici le squelette d'un fragment de code VisualBasic .NET qui utilise la fonction Relay. [...] ' On active la détection des modules sur USB...
16. Utilisation du Yocto-PowerRelay-V2 en VisualBasic .NET renvoie un objet que vous pouvez ensuite utiliser à loisir pour contrôler le YRelay.FindRelay relais. isOnline La méthode de l'objet renvoyé par permet de savoir si le isOnline() YRelay.FindRelay module correspondant est présent et en état de marche.
16. Utilisation du Yocto-PowerRelay-V2 en VisualBasic .NET 16.4. Contrôle de la partie module Chaque module peut-être contrôlé d'une manière similaire, vous trouverez ci dessous un simple programme d'exemple affichant les principaux paramètres d'un module et permettant d'activer la balise de localisation.
Page 131
16. Utilisation du Yocto-PowerRelay-V2 en VisualBasic .NET Module Module1 Sub usage() Console.WriteLine("usage: demo <serial or logical name> <new logical name>") End Sub Sub Main() Dim argv() As String = System.Environment.GetCommandLineArgs() errmsg String "" newname String YModule (argv.Length <> 3) Then usage()
La méthode recommandée par la plupart des langages de programmation pour la gestion des erreurs imprévisibles est l'utilisation d'exceptions. C'est le comportement par défaut de la librairie Yoctopuce. Si une erreur se produit alors qu'on essaie d'accéder à un module, la librairie va lancer une exception. Dans ce cas, de trois choses l'une: •...
Delphi Par défaut la librairie Yoctopuce pour Delphi utilise une DLL yapi.dll, toutes les applications que vous créerez avec Delphi devront avoir accès à cette DLL. Le plus simple est de faire en sorte qu'elle soit présente dans le même répertoire que l'exécutable de votre application.
Page 134
[...] Voyons maintenant en détail ce que font ces quelques lignes. yocto_api et yocto_relay Ces deux unités permettent d'avoir accès aux fonctions permettant de gérer les modules Yoctopuce. doit toujours être utilisé, est nécessaire pour gérer les modules yocto_api yocto_relay contenant un relais, comme le Yocto-PowerRelay-V2.
Page 135
17. Utilisation du Yocto-PowerRelay-V2 en Delphi program helloworld; {$APPTYPE CONSOLE} uses SysUtils, yocto_api, yocto_relay; Procedure Usage(); exe : string; begin exe:= ExtractFileName(paramstr(0)); WriteLn(exe+' <serial_number> A|B'); WriteLn(exe+' <logical_name> A|B'); WriteLn(exe+' any A|B'); WriteLn(''); WriteLn('Example:'); WriteLn(exe+' any B'); halt; End; procedure setRelayState(relay:TYRelay; state:boolean);...
17. Utilisation du Yocto-PowerRelay-V2 en Delphi 17.3. Contrôle de la partie module Chaque module peut-être contrôlé d'une manière similaire, vous trouverez ci dessous un simple programme d'exemple affichant les principaux paramètres d'un module et permettant d'activer la balise de localisation.
Page 137
17. Utilisation du Yocto-PowerRelay-V2 en Delphi Modifications des réglages du module Lorsque que vous souhaitez modifier les réglages d'un module, il suffit d'appeler la fonction correspondante, cependant cette modification n'a lieu que dans la mémoire vive du set_xxx() module: si le module redémarre, les modifications seront perdues. Pour qu'elle soient mémorisées de manière persistante, il est nécessaire de demander au module de sauvegarder sa configuration...
La méthode recommandée par la plupart des langages de programmation pour la gestion des erreurs imprévisibles est l'utilisation d'exceptions. C'est le comportement par défaut de la librairie Yoctopuce. Si une erreur se produit alors qu'on essaie d'accéder à un module, la librairie va lancer une exception. Dans ce cas, de trois choses l'une: •...
Page 139
17. Utilisation du Yocto-PowerRelay-V2 en Delphi type attendu, et ne sera pas un pointeur nul qui risquerait de faire crasher votre programme. Au pire, si vous affichez la valeur sans la tester, elle sera hors du cadre attendu pour la valeur retournée.
Cependant, l'utilisation des nouvelles API UWP n'est pas sans conséquence: l'API Windows Runtime pour accéder aux ports USB est asynchrone, et par conséquent la librairie Yoctopuce doit aussi être asynchrone. Concrètement les méthodes asynchrones ne retournent pas directement le résultat mais un objet et le résultat peut être obtenu plus tard.
18.2. Installation Téléchargez la librairie Yoctopuce pour Universal Windows Platform depuis le site web de Yoctopuce . Il n'y a pas de programme d'installation, copiez simplement de contenu du fichier zip dans le répertoire de votre choix.
18.4. Contrôle de la fonction Relay Il suffit de quelques lignes de code pour piloter un Yocto-PowerRelay-V2. Voici le squelette d'un fragment de code c# qui utilise la fonction Relay.
Le projets Visual Studio contient de nombreux fichiers dont la plupart ne sont pas liés à l'utilisation de la librairie Yoctopuce. Pour simplifier la lecture du code nous avons regroupé tout le code qui utilise la librairie dans la classe qui se trouve dans le fichier .
18. Utilisation du Yocto-PowerRelay-V2 avec Universal Windows Platform 18.6. Contrôle de la partie module Chaque module peut-être contrôlé d'une manière similaire, vous trouverez ci-dessous un simple programme d'exemple affichant les principaux paramètres d'un module et permettant d'activer la balise de localisation.
Page 146
18. Utilisation du Yocto-PowerRelay-V2 avec Universal Windows Platform vive du module: si le module redémarre, les modifications seront perdues. Pour qu'elle soient mémorisées de manière persistante, il est nécessaire de demander au module de sauvegarder sa configuration courante dans sa mémoire non volatile. Pour cela il faut utiliser la méthode .
La librairie Yoctopuce est prévue pour vous aider à supporter ce genre de comportements, mais votre code doit néanmoins être fait pour se comporter au mieux pour interpréter les erreurs signalées par la librairie.
à vos projets. 19.1. Contrôle de la fonction Relay Il suffit de quelques lignes de code pour piloter un Yocto-PowerRelay-V2. Voici le squelette d'un fragment de code Objective-C qui utilise la fonction Relay. #import "yocto_api.h"...
Mais vous pouvez tout aussi bien utiliser des noms logiques que vous auriez préalablement configurés. Imaginons un module Yocto-PowerRelay-V2 avec le numéros de série RELAYHI2-123456 que vous auriez appelé "MonModule" et dont vous auriez nommé...
19. Utilisation du Yocto-PowerRelay-V2 en Objective-C static void usage(void) NSLog(@"usage: demo <serial_number> [ A | B ]"); NSLog(@" demo <logical_name> [ A | B ]"); NSLog(@" demo any [ A | B ] (use any discovered device)"); exit(1); int main(int...
Page 152
19. Utilisation du Yocto-PowerRelay-V2 en Objective-C if(argc < usage(argv[0]); NSString *serial_or_name [NSString stringWithUTF8String:argv[1]]; // use serial or logical name YModule *module [YModule FindModule:serial_or_name]; ([module isOnline]) { (argc > 2) { (strcmp(argv[2], "ON") == 0) [module setBeacon:Y_BEACON_ON]; else [module setBeacon:Y_BEACON_OFF]; NSLog(@"serial: %@\n", [module serialNumber]);...
Il y aura forcément une occasion où un utilisateur aura débranché le périphérique, soit avant de lancer le programme, soit même en pleine opération. La librairie Yoctopuce est prévue pour vous aider à supporter ce genre de comportements, mais www.yoctopuce.com...
Page 154
La méthode recommandée par la plupart des langages de programmation pour la gestion des erreurs imprévisibles est l'utilisation d'exceptions. C'est le comportement par défaut de la librairie Yoctopuce. Si une erreur se produit alors qu'on essaie d'accéder à un module, la librairie va lancer une exception. Dans ce cas, de trois choses l'une: •...
être utilisés par des applications tierces. Dans notre cas, c'est toute la librairie Yoctopuce qui est disponible dans l'Assembly .NET, de sorte à pouvoir être utilisée dans n'importe quel environnement qui supporte le chargement dynamique d'Assembly .NET.
20. Utilisation avec des langages non supportés mécanismes de callbacks. A la place, cette librairie offre des objets miroirs, appelés Proxys, qui publient par le biais de Propriétés les principaux attributs des fonctions Yoctopuce tels que la mesure courante, les paramètres de configuration, l'état, etc.
Il se trouve que le Virtual Hub est en fait un petit serveur Web qui est capable de router des requêtes HTTP vers les modules Yoctopuce. Ce qui signifie que si vous pouvez faire une requête HTTP depuis votre langage de programmation, vous pouvez contrôler des modules Yoctopuce, même si ce langage n'est pas officiellement supporté.
Contrôle d'un module par l'interface REST Chaque module Yoctopuce a sa propre interface REST disponible sous différentes formes. Imaginons un Yocto-PowerRelay-V2 avec le numéro de de série RELAYHI2-12345 et le nom logique monModule. l'URL suivante permettra de connaître l'état du module.
20.4. Utilisation des librairies dynamiques L'API Yoctopuce bas niveau est disponible sous différents formats de librairie dynamiques écrites en C, dont les sources sont disponibles avec l'API C++. Utiliser une de ces librairies bas niveau vous permettra de vous passer du Virtual Hub.
Page 160
(yapiHTTPRequest(serial,getValue,data,sizeof(dataBuffer),fullsize,errmsg)<0) then begin writeln(errmsg); halt; end; // searches for the HTTP header end p := pos(#13#10#13#10,data); // displays the response minus the HTTP header writeln(copy(data,p+4,length(data)-p-3)); // change the luminosity if (yapiHTTPRequest(serial,setValue,data,sizeof(dataBuffer),fullsize,errmsg)<0) then begin writeln(errmsg); halt; end; www.yoctopuce.com...
20. Utilisation avec des langages non supportés end. Inventaire des modules Pour procéder à l'inventaire des modules Yoctopuce, deux fonctions de la librairie dynamique sont nécessaires int yapiGetAllDevices(int *buffer,int maxsize,int *neededsize,char *errmsg); int yapiGetDeviceInfo(int devdesc,yDeviceSt *infos, char *errmsg); La fonction yapiGetAllDevices permet d'obtenir la liste des modules connectés sous la forme d'une liste de handles.
Yoctopuce sera alors en mesure de générer tous les autres fichiers. C'est pourquoi il est fortement recommandé de contacter le support Yoctopuce avant d'entreprendre le port de la librairie Yoctopuce dans un autre langage. Un travail collaboratif sera profitable aux deux parties.
Les exemples sont donnés dans le language le plus populaire auprès des clients de Yoctopuce, à savoir C#. Néanmoins, vous trouverez dans les librairies de programmation pour chaque language des exemples complets illustrant les concepts présentés ici.
Page 164
à des moments où le programme principal n'est pas prêt à les recevoir, ce qui peut avoir des effets de bords indésirables comme des dead-locks et autres conditions de course. C'est pourquoi dans l'API Yoctopuce, les callbacks d'arrivée/départs de modules ne sont appelés que pendant l'exécution de la fonction .
"mise à jour" et sera listé en dessous des modules connectés. 22.2. La librairie ligne de commandes Tous les outils en lignes de commandes ont la possibilité de mettre à jour les modules Yoctopuce grâce à la commande .
(m.get_productName() == "YoctoHub-Wireless") { m.set_allSettings(default_config); = m.next(); Chercher le bon firmware La première étape pour mettre à jour un module Yoctopuce est de trouver quel firmware il faut utiliser, c'est le travail de la méthode de l'objet YModule. checkFirmware(path, onlynew) Cette méthode vérifie que le firmware passé...
Il est aussi possible de passer la chaîne "www.yoctopuce.com" en argument pour vérifier s'il existe un firmware plus récent publié sur le site web de Yoctopuce. Dans ce cas, la méthode retournera l'URL du firmware. Vous pourrez soit utiliser cette URL pour télécharger le firmware sur votre disque, soit utiliser cette URL lors de la mise à...
à installer, et un tableau de bytes avec les paramètres à restaurer à la fin de la mise à jour (ou pour restaurer les paramètres d'origine). null YFirmwareUpdateupdate fw_update; fw_update = new YFirmwareUpdate(allBootLoader[0], newfirm, null); status = fw_update.startUpdate(); ..www.yoctopuce.com...
Ce chapitre ne reprend pas en détail les concepts de programmation décrits plus tôt, afin d'offrir une référence plus concise. En cas de doute, n'hésitez pas à retourner au chapitre décrivant en détail de chaque attribut configurable. www.yoctopuce.com...
YAPI.EnableUSBHost(osContext) Cette fonction est utilisée uniquement sous Android. YAPI.FreeAPI() Attends que toutes les communications en cours avec les modules Yoctopuce soient terminées puis libère les ressources utilisées par la librairie Yoctopuce. YAPI.GetAPIVersion() Retourne la version de la librairie Yoctopuce utilisée.
Page 171
Enregistre une fonction de callback qui sera appelée à chaque fois qu'un module est débranché. YAPI.RegisterHub(url, errmsg) Configure la librairie Yoctopuce pour utiliser les modules connectés sur une machine donnée. YAPI.RegisterHubDiscoveryCallback(hubDiscoveryCallback) Enregistre une fonction de callback qui est appelée chaque fois qu'un hub réseau s'annonce avec un message SSDP.
Page 172
Test si un hub est joignable. YAPI.TriggerHubDiscovery(errmsg) Relance une détection des hubs réseau. YAPI.UnregisterHub(url) Configure la librairie Yoctopuce pour ne plus utiliser les modules connectés sur une machine préalablement enregistrer avec RegisterHub. YAPI.UpdateDeviceList(errmsg) Force une mise-à-jour de la liste des modules Yoctopuce connectés.
. Lorsqu'on configure un nom logique avec une chaîne incorrecte, les caractères invalides sont ignorés. Paramètres : name une chaîne de caractères contenant le nom vérifier. Retourne : true false si le nom est valide, dans le cas contraire. www.yoctopuce.com...
Page 174
Désactive le cache de callback HTTP. function ClearHTTPCallbackCacheDir( $bool_removeFiles) Cette méthode désctive la cache de callback HTTP, et permet également d'en effacer le contenu. Paramètres : Vrai pour effacer le contenu du répertoire de cache. bool_removeFiles Retourne : nothing. www.yoctopuce.com...
Page 175
DisableExceptions( ) void DisableExceptions( ) DisableExceptions( ) function DisableExceptions( ) async DisableExceptions( ): Promise<void> async DisableExceptions( ) Lorsque les exceptions sont désactivées, chaque fonction retourne une valeur d'erreur spécifique selon son type, documentée dans ce manuel de référence. www.yoctopuce.com...
Page 176
Attention, lorsque les exceptions sont activées, tout appel à une fonction de la librairie qui échoue déclenche une exception. Dans le cas où celle-ci n'est pas interceptée correctement par le code appelant, soit le debugger se lance, soit le programme de l'utilisateur est immédiatement stoppé (crash). www.yoctopuce.com...
Page 177
(ou d'une sous-classe). Il n'est pas nécessaire d'appeler cette fonction pour accéder au modules à travers le réseau. Paramètres : osContext un objet de classe android.content.Context (ou une sous-classe) www.yoctopuce.com...
Page 178
23. Référence de l'API de haut niveau YAPI.FreeAPI() YAPI YAPI.FreeAPI() Attends que toutes les communications en cours avec les modules Yoctopuce soient terminées puis libère les ressources utilisées par la librairie Yoctopuce. function yFreeAPI( ) void FreeAPI( ) +(void) FreeAPI...
Page 179
23. Référence de l'API de haut niveau YAPI.GetAPIVersion() YAPI YAPI.GetAPIVersion() Retourne la version de la librairie Yoctopuce utilisée. function yGetAPIVersion( ) string GetAPIVersion( ) +(NSString*) GetAPIVersion string yGetAPIVersion( ): string function GetAPIVersion( ) As String static String GetAPIVersion( ) static String GetAPIVersion( )
Page 180
Cette méthode retourne la durée de mise en cache de tous les attributs des fonctions du module. Note: Cette fonction doit être appelée après yInitAPI Retourne : un entier correspondant à la durée de validité attribuée aux les paramètres chargés, en millisecondes. www.yoctopuce.com...
Page 181
GetDeviceListValidity( ) int GetDeviceListValidity( ) java async Task<int> GetDeviceListValidity( ) GetDeviceListValidity( ) function GetDeviceListValidity( ) async GetDeviceListValidity( ): Promise<number> async GetDeviceListValidity( ) Note: Cette fonction doit être appelée après yInitAPI Retourne : le nombre de secondes entre chaque énumération. www.yoctopuce.com...
Page 182
. Pour les machines ARM, l'architecture "Win32" "Win64" . Pour les autres machines Linux, l'architecture est "Armhf32" "Aarch64" "Linux32" . Pour MacOS, l'architecture est "Linux64" "MacOs32" "MacOs64" Retourne : une chaîne de caractères décrivant l'architecture du binaire de la librairie de communication Yoctopuce utilisée. www.yoctopuce.com...
Page 183
YAPI.GetDllPath() YAPI YAPI.GetDllPath() Retourne l'emplacement sur le disque des librairies Yoctopuce utilisées. static string GetDllPath( ) Pour les architectures qui demandent l'utilisation de plusieurs DLLs, et en particulier dans le cadre de l'utilisation de la librairie sous forme de .NET Assembly, la chaîne retournée est au format suivant: , où...
Page 184
23. Référence de l'API de haut niveau YAPI.GetLog() YAPI YAPI.GetLog() Récupère les messages de logs de la librairie de communication Yoctopuce. static string GetLog( string lastLogLine) static string GetLog( string lastLogLine) Cette méthode permet de récupérer progressivement les messages de logs, ligne par ligne. La méthode doit être appelée en boucle, jusqu'à...
Page 185
Ce délai n'affecte que les YoctoHubs et VirtualHub qui sont accessibles par réseau. Par défaut, ce délai est de 20000 millisecondes, mais en fonction de votre réseau il peut être souhaitable de changer ce délai, par exemple, si votre infrastructure réseau utilise une connexion GSM. Retourne : le délai de connexion réseau en millisecondes. www.yoctopuce.com...
Page 186
GetTickCount( ) GetTickCount( ): number GetTickCount( ) Ce compteur peut être utilisé pour calculer des délais en rapport avec les modules Yoctopuce, dont la base de temps est aussi la milliseconde. Retourne : un long entier contenant la valeur du compteur de millisecondes.
Ce n'est pas strictement indispensable mais cela peut améliorer la réactivité des la librairie pour les commandes suivantes. Cette fonction peut signaler une erreur au cas à la communication avec un module Yoctopuce ne se passerait pas comme attendu.
Page 188
23. Référence de l'API de haut niveau YAPI.InitAPI() YAPI YAPI.InitAPI() Initialise la librairie de programmation de Yoctopuce explicitement. function yInitAPI( mode, errmsg) YRETCODE InitAPI( int mode, string errmsg) +(YRETCODE) InitAPI :(int) mode :(NSError**) errmsg integer yInitAPI( mode: integer, var errmsg: string): integer...
"usb","callback", ou l'URL racine du VirtualHub à utiliser. errmsg une chaîne de caractères passée par référence, dans laquelle sera stocké un éventuel message d'erreur. Retourne : YAPI.SUCCESS si l'opération se déroule sans erreur. En cas d'erreur, déclenche une exception ou retourne un code d'erreur négatif. www.yoctopuce.com...
Page 190
RegisterDeviceArrivalCallback( $arrivalCallback) async RegisterDeviceArrivalCallback( arrivalCallback: YDeviceUpdateCallback| null): Promise<void> async RegisterDeviceArrivalCallback( arrivalCallback) Le callback sera appelé pendant l'éxecution de la fonction , que vous devrez yUpdateDeviceList appeler régulièrement. Paramètres : arrivalCallback une procédure qui prend un YModule en paramètre, ou null www.yoctopuce.com...
Page 191
RegisterDeviceRemovalCallback( $removalCallback) async RegisterDeviceRemovalCallback( removalCallback: YDeviceUpdateCallback| null): Promise<void> async RegisterDeviceRemovalCallback( removalCallback) Le callback sera appelé pendant l'éxecution de la fonction , que vous devrez yUpdateDeviceList appeler régulièrement. Paramètres : removalCallback YModule null une procédure qui prend un en paramètre, ou www.yoctopuce.com...
Page 192
C'est un mode spécial permettant, entre autres, de prendre le contrôle de modules Yoctopuce à travers un filtre NAT par l'intermédiaire d'un VirtualHub ou d'un Hub Yoctopuce. Il vous suffit de configuer le hub pour qu'il appelle votre script à intervalle régulier. Ce mode de fonctionnement n'est disponible actuellement qu'en PHP et en Node.JS.
Page 193
"usb","callback", ou l'URL racine du VirtualHub à utiliser. errmsg une chaîne de caractères passée par référence, dans laquelle sera stocké un éventuel message d'erreur. Retourne : YAPI.SUCCESS si l'opération se déroule sans erreur. En cas d'erreur, déclenche une exception ou retourne un code d'erreur négatif. www.yoctopuce.com...
Page 194
, que vous devrez appeler régulièrement. yUpdateDeviceList Paramètres : hubDiscoveryCallback une procédure qui prend deux chaîne de caractères en paramètre, le numéro de série et l'URL du hub découvert. Pour supprimer un callback déjà enregistré, www.yoctopuce.com...
Page 195
YAPI.RegisterHubWebsocketCallback() YAPI YAPI.RegisterHubWebsocketCallback() Variante de la fonction yRegisterHub() destinée à initialiser l'API Yoctopuce sur une session Websocket existante, dans le cadre d'un callback WebSocket entrant. Paramètres : l'objet WebSocket lié à au callback WebSocket entrant. errmsg une chaîne de caractères passée par référence, dans laquelle sera stocké un éventuel message d'erreur.
Page 196
RegisterLogFunction( LogCallback logfun) java void RegisterLogFunction( LogHandler logfun) RegisterLogFunction( logfun) async RegisterLogFunction( logfun: YLogCallback): Promise<number> async RegisterLogFunction( logfun) Utile pour débugger le fonctionnement de l'API. Paramètres : logfun une procedure qui prend une chaîne de caractère en paramètre, www.yoctopuce.com...
Page 197
à la librairie pour forcer l'utilisation d'une SelectArchitecture() architecture spécifiée. Paramètres : arch une chaîne de caractère spécifiant l'architecture à utiliser. Les valeurs possibles sont "armhf" "armel" "aarch64" "i386" "x86_64" "32bit" "64bit" Retourne : rien. En cas d'erreur, déclenche une exception. www.yoctopuce.com...
Page 198
USB. Ce paramètre n'affecte pas les callbacks de changement de valeur Note: Cette fonction doit être appelée après yInitAPI Paramètres : un entier correspondant à la durée de validité attribuée aux les paramètres chargés, en cacheValidityMs millisecondes. www.yoctopuce.com...
Page 199
(Objective-C uniquement) Enregistre un objet délégué qui doit se conformer au protocole YDeviceHotPlug +(void) SetDelegate :(id) object Les méthodes seront appelées pendant l’exécution de la yDeviceArrival yDeviceRemoval fonction , que vous devrez appeler régulièrement. yUpdateDeviceList Paramètres : object un objet qui soit se conformer au protocole YAPIDelegate , ou www.yoctopuce.com...
Page 200
à un réseau GSM où le trafic est facturé. Ce paramètre n'affecte pas les modules connectés par USB, ni le fonctionnement des callback de connexion/déconnexion de module. Note: Cette fonction doit être appelée après yInitAPI Paramètres : nombre de secondes entre chaque énumération. deviceListValidity www.yoctopuce.com...
Page 201
Il est recommandé d'utiliser un répertoire qui n'est pas accessible depuis le serveur Web, car la librairie va y stocker des données provenant des modules Yoctopuce. Note : Cette fonctionnalité est supportée par les YoctoHub et VirtualHub depuis la version 27750 Paramètres :...
Page 202
Ce délai n'affecte que les YoctoHubs et VirtualHub qui sont accessibles par réseau. Par défaut ce délai est de 20000 millisecondes, mais en fonction de votre réseau il peut être souhaitable de changer ce délai, par exemple si votre infrastructure réseau utilise une connexion GSM. Paramètres : networkMsTimeout le délais de connexion réseau en millisecondes. www.yoctopuce.com...
Page 203
être fournis, pour être passés à la fonction de callback si nécessaire. Retourne : YAPI.SUCCESS si l'opération se déroule sans erreur. En cas d'erreur, déclenche une exception ou retourne un code d'erreur négatif. www.yoctopuce.com...
Page 204
être activée que sur des tablette ou des téléphones qui posent problème. Un délais de 50 millisecondes est en général suffisant. En cas de doute contacter le support Yoctopuce. Pour désactiver la quittance des paquets USB, appeler cette fonction avec la valeur 0. Note : Cette fonctionnalité est disponible uniquement sous Android.
Page 205
à lire périodiquement les informations en provenance des modules Yoctopuce en appelant la fonction yHandleEvents() afin de se maintenir à jour. Cette fonction peut signaler une erreur au cas à la communication avec un module Yoctopuce ne se passerait pas comme attendu. Paramètres : ms_duration un entier correspondant à...
Page 206
éventuel message d'erreur. Retourne : YAPI.SUCCESS si l'opération se déroule sans erreur. En cas d'erreur retourne un code d'erreur négatif. www.yoctopuce.com...
Page 207
Paramètres : errmsg une chaîne de caractères passée par référence, dans laquelle sera stocké un éventuel message d'erreur. Retourne : YAPI.SUCCESS si l'opération se déroule sans erreur. En cas d'erreur, déclenche une exception ou retourne un code d'erreur négatif. www.yoctopuce.com...
Page 208
23. Référence de l'API de haut niveau YAPI.UnregisterHub() YAPI YAPI.UnregisterHub() Configure la librairie Yoctopuce pour ne plus utiliser les modules connectés sur une machine préalablement enregistrer avec RegisterHub. function yUnregisterHub( url) void UnregisterHub( string url) +(void) UnregisterHub :(NSString *) yUnregisterHub( url: string)
Page 209
23. Référence de l'API de haut niveau YAPI.UpdateDeviceList() YAPI YAPI.UpdateDeviceList() Force une mise-à-jour de la liste des modules Yoctopuce connectés. function yUpdateDeviceList( errmsg) YRETCODE UpdateDeviceList( string errmsg) +(YRETCODE) UpdateDeviceList :(NSError**) errmsg integer yUpdateDeviceList( var errmsg: string): integer function UpdateDeviceList( ByRef...
Page 210
YAPI.UpdateDeviceList_async() YAPI YAPI.UpdateDeviceList_async() Force une mise-à-jour de la liste des modules Yoctopuce connectés. function yUpdateDeviceList_async( callback, context) La librairie va vérifier sur les machines ou ports USB précédemment enregistrés en utilisant la fonction si un module a été connecté ou déconnecté, et le cas échéant appeler les fonctions yRegisterHub de callback définies par l'utilisateur.
23.2. La classe YModule Interface de contrôle des paramètres généraux des modules Yoctopuce La classe est utilisable avec tous les modules USB de Yoctopuce. Elle permet de contrôler YModule les paramètres généraux du module, et d'énumérer les fonctions fournies par chaque module.
Page 212
Retourne le code d'erreur correspondant à la dernière erreur survenue lors de l'utilisation de l'objet module. module→get_firmwareRelease() Retourne la version du logiciel embarqué du module. module→get_functionIds(funType) Retourne les identifiants matériels des fonctions correspondant au type passé en argument. module→get_hardwareId() Retourne l'identifiant unique du module. module→get_icon2d() www.yoctopuce.com...
Page 213
Met en cache les valeurs courantes du module, avec une durée de validité spécifiée. module→load_async(msValidity, callback, context) Met en cache les valeurs courantes du module, avec une durée de validité spécifiée. module→log(text) Ajoute un message arbitraire dans les logs du module. www.yoctopuce.com...
Page 214
Prepare une mise à jour de firmware du module. module→updateFirmwareEx(path, force) Prepare une mise à jour de firmware du module. module→wait_async(callback, context) Attend que toutes les commandes asynchrones en cours d'exécution sur le module soient terminées, et appelle le callback passé en paramètre. www.yoctopuce.com...
Page 215
Retourne : YModule un objet de classe qui permet ensuite de contrôler le module ou d'obtenir de plus amples informations sur le module. www.yoctopuce.com...
Page 216
Paramètres : yctx un contexte YAPI func une chaîne de caractères qui référence le module sans ambiguïté, par exemple MyDevice.module Retourne : YModule un objet de classe qui permet ensuite de contrôler le module. www.yoctopuce.com...
Page 217
FirstModule( ): YModule | null static FirstModule( ) Utiliser la fonction pour itérer sur les autres modules. YModule.nextModule() Retourne : un pointeur sur un objet YModule , correspondant au premier module accessible en ligne, ou null aucun module n'a été trouvé. www.yoctopuce.com...
Page 218
23. Référence de l'API de haut niveau YModule module→Beacon état de la balise de localisation. int Beacon Modifiable. Allume ou éteint la balise de localisation du module. www.yoctopuce.com...
Page 219
23. Référence de l'API de haut niveau YModule module→FirmwareRelease Version du logiciel embarqué du module. string FirmwareRelease www.yoctopuce.com...
Page 220
23. Référence de l'API de haut niveau YModule module→FunctionId Identifiant matériel de la nième fonction du module. string FunctionId @param functionIndex : l'index de la fonction pour laquelle l'information est désirée, en commençant à 0 pour la première fonction. www.yoctopuce.com...
Page 221
23. Référence de l'API de haut niveau YModule module→HardwareId Identifiant unique du module. string HardwareId L'identifiant unique est composé du numéro de série du module suivi de la chaîne ".module". www.yoctopuce.com...
Page 222
Si les valeurs des attributs du module en cache sont valides au moment de l'appel, le module est considéré joignable. Cette fonction ne cause en aucun cas d'exception, quelle que soit l'erreur qui pourrait se produire lors de la vérification de joignabilité. www.yoctopuce.com...
Page 223
Nom logique du module. string LogicalName Modifiable. Change le nom logique du module. Vous pouvez utiliser yCheckLogicalName() pour vérifier si votre paramètre est valide. N'oubliez pas d'appeler la méthode du module saveToFlash() si le réglage doit être préservé. www.yoctopuce.com...
Page 224
Luminosité des leds informatives du module (valeur entre 0 et 100). int Luminosity Modifiable. Modifie la luminosité des leds informatives du module. Le paramêtre est une valeur entre 0 et 100. N'oubliez pas d'appeler la méthode du module si le réglage doit être saveToFlash() préservé. www.yoctopuce.com...
Page 225
23. Référence de l'API de haut niveau YModule module→ProductId Identifiant USB du module, préprogrammé en usine. int ProductId www.yoctopuce.com...
Page 226
23. Référence de l'API de haut niveau YModule module→ProductName Nom commercial du module, préprogrammé en usine. string ProductName www.yoctopuce.com...
Page 227
23. Référence de l'API de haut niveau YModule module→ProductRelease Numéro uméro de révision du module hardware, préprogrammé en usine. int ProductRelease La révision originale du retourne la valeur 1, la révision B retourne la valeur 2, etc. www.yoctopuce.com...
Page 228
23. Référence de l'API de haut niveau YModule module→SerialNumber Numéro de série du module, préprogrammé en usine. string SerialNumber www.yoctopuce.com...
Page 229
Retourne : le path du fichier .byn à utiliser, ou une chaîne vide si aucun firmware plus récent n'est disponible En cas d'erreur, déclenche une exception ou retourne une chaine de caractère qui comment par "error:". www.yoctopuce.com...
Page 230
) function clearCache( ) async clearCache( ): Promise<void> async clearCache( ) Invalide le cache des valeurs courantes du module. Force le prochain appel à une méthode get_xxx() ou loadxxx() pour charger les les données depuis le module. www.yoctopuce.com...
Page 231
String describe( ) java describe( ) function describe( ) async describe( ): Promise<string> async describe( ) Ce texte peut contenir soit le nom logique du module, soit son numéro de série. Retourne : une chaîne de caractères décrivant le module www.yoctopuce.com...
Promise<Uint8Array> async download( pathname) byte[] download( string pathname) string download( string pathname) YModule target download pathname Paramètres : pathname nom complet du fichier Retourne : le contenu du fichier chargé En cas d'erreur, déclenche une exception ou retourne YAPI_INVALID_STRING www.yoctopuce.com...
Page 233
à 0 pour la première fonction. Retourne : une chaîne de caractères correspondant au type de base de la fonction En cas d'erreur, déclenche une exception ou retourne un chaîne vide. www.yoctopuce.com...
Page 234
) int functionCount( ) java functionCount( ) function functionCount( ) async functionCount( ): Promise<number> async functionCount( ) Retourne : le nombre de fonctions sur le module En cas d'erreur, déclenche une exception ou retourne un code d'erreur négatif. www.yoctopuce.com...
Page 235
à 0 pour la première fonction. Retourne : une chaîne de caractères correspondant à l'identifiant matériel unique de la fonction désirée En cas d'erreur, déclenche une exception ou retourne un chaîne vide. www.yoctopuce.com...
Page 236
à 0 pour la première fonction. Retourne : une chaîne de caractères correspondant au nom logique de la fonction désirée En cas d'erreur, déclenche une exception ou retourne un chaîne vide. www.yoctopuce.com...
Page 237
à 0 pour la première fonction. Retourne : une chaîne de caractères correspondant au type de la fonction En cas d'erreur, déclenche une exception ou retourne un chaîne vide. www.yoctopuce.com...
Page 238
à 0 pour la première fonction. Retourne : une chaîne de caractères correspondant à la valeur publiée par la fonction désirée En cas d'erreur, déclenche une exception ou retourne un chaîne vide. www.yoctopuce.com...
Page 239
YModule target get_allSettings Utile pour sauvgarder les noms logiques, les calibrations et fichies uploadés d'un module. Retourne : un objet binaire avec tous les paramètres En cas d'erreur, déclenche une exception ou retourne un objet binaire de taille 0. www.yoctopuce.com...
Page 240
): Promise<YModule_Beacon> async get_beacon( ) int get_beacon( ) int get_beacon( ) YModule target get_beacon Retourne : YModule.BEACON_OFF YModule.BEACON_ON soit , soit , selon l'état de la balise de localisation En cas d'erreur, déclenche une exception ou retourne YModule.BEACON_INVALID www.yoctopuce.com...
Page 241
) get_errorMessage( ): string get_errorMessage( ) Cette méthode est principalement utile lorsque la librairie Yoctopuce est utilisée en désactivant la gestion des exceptions. Retourne : une chaîne de caractères correspondant au message de la dernière erreur qui s'est produit lors de l'utilisation du module www.yoctopuce.com...
Page 242
) get_errorType( ): number get_errorType( ) Cette méthode est principalement utile lorsque la librairie Yoctopuce est utilisée en désactivant la gestion des exceptions. Retourne : un nombre correspondant au code de la dernière erreur qui s'est produit lors de l'utilisation du module...
Page 243
' e r r e u r , d é c l e n c h e u n e e x c e p t i o n r e t o u r n e YModule.FIRMWARERELEASE_INVALID www.yoctopuce.com...
Page 244
$funType) async get_functionIds( funType: string): Promise<string[] async get_functionIds( funType) string[] get_functionIds( string funType) vector<string> get_functionIds( string funType) YModule target get_functionIds funType Paramètres : funType Le type de fonction (Relay, LightSensor, Voltage,...) Retourne : un tableau de chaînes de caractère. www.yoctopuce.com...
Page 245
) string get_hardwareId( ) string get_hardwareId( ): string async Task<string> get_hardwareId( ) YModule target get_hardwareId L'identifiant unique est composé du numéro de série du module suivi de la chaîne ".module". Retourne : une chaîne de caractères identifiant la fonction www.yoctopuce.com...
Page 246
) string get_icon2d( ) YModule target get_icon2d L'icone est au format PNG et a une taille maximale de 1536 octets. Retourne : un buffer binaire contenant l'icone, au format png. En cas d'erreur, déclenche une exception ou retourne YAPI_INVALID_STRING www.yoctopuce.com...
Page 247
) YModule target get_lastLogs Cette méthode retourne les derniers logs qui sont encore stocké dans le module. Retourne : une chaîne de caractère contenant les derniers logs du module. En cas d'erreur, déclenche une exception ou retourne YAPI_INVALID_STRING www.yoctopuce.com...
Page 248
) async get_logicalName( ): Promise<string> async get_logicalName( ) string get_logicalName( ) string get_logicalName( ) YModule target get_logicalName Retourne : une chaîne de caractères représentant le nom logique du module En cas d'erreur, déclenche une exception ou retourne YModule.LOGICALNAME_INVALID www.yoctopuce.com...
Page 249
): Promise<number> async get_luminosity( ) int get_luminosity( ) int get_luminosity( ) YModule target get_luminosity Retourne : un entier représentant la luminosité des leds informatives du module (valeur entre 0 et 100) En cas d'erreur, déclenche une exception ou retourne YModule.LUMINOSITY_INVALID www.yoctopuce.com...
Page 250
Si le module est connecté par USB, ou si le module est le YoctoHub racine, une chaîne vide est retournée. Retourne : une chaîne de caractères contenant le numéro de série du YoctoHub, ou une chaîne vide. www.yoctopuce.com...
Page 251
' e r r e u r , d é c l e n c h e u n e e x c e p t i o n r e t o u r n e YModule.PERSISTENTSETTINGS_INVALID www.yoctopuce.com...
Page 252
) async get_productId( ): Promise<number> async get_productId( ) int get_productId( ) int get_productId( ) YModule target get_productId Retourne : un entier représentant l'identifiant USB du module, préprogrammé en usine En cas d'erreur, déclenche une exception ou retourne YModule.PRODUCTID_INVALID www.yoctopuce.com...
Page 253
): Promise<string> async get_productName( ) string get_productName( ) string get_productName( ) YModule target get_productName Retourne : une chaîne de caractères représentant le nom commercial du module, préprogrammé en usine En cas d'erreur, déclenche une exception ou retourne YModule.PRODUCTNAME_INVALID www.yoctopuce.com...
Page 254
La révision originale du retourne la valeur 1, la révision B retourne la valeur 2, etc. Retourne : un entier représentant le numéro uméro de révision du module hardware, préprogrammé en usine En cas d'erreur, déclenche une exception ou retourne YModule.PRODUCTRELEASE_INVALID www.yoctopuce.com...
Page 255
' e r r e u r , d é c l e n c h e u n e e x c e p t i o n r e t o u r n e YModule.REBOOTCOUNTDOWN_INVALID www.yoctopuce.com...
Page 256
): Promise<string> async get_serialNumber( ) string get_serialNumber( ) string get_serialNumber( ) YModule target get_serialNumber Retourne : une chaîne de caractères représentant le numéro de série du module, préprogrammé en usine En cas d'erreur, déclenche une exception ou retourne YModule.SERIALNUMBER_INVALID www.yoctopuce.com...
Page 257
Cette fonction n'est pertinente que lorsqu'elle appelée pour un YoctoHub ou pour le VirtualHub. Dans le cas contraire, un tableau vide est retourné. Retourne : un tableau de chaînes de caractères contenant les numéros de série des sous-modules connectés au module www.yoctopuce.com...
): Promise<number> async get_upTime( ) long get_upTime( ) s64 get_upTime( ) YModule target get_upTime Retourne : un entier représentant le numbre de millisecondes écoulées depuis la mise sous tension du module En cas d'erreur, déclenche une exception ou retourne YModule.UPTIME_INVALID www.yoctopuce.com...
Page 259
): Promise<string> async get_url( ) string get_url( ) string get_url( ) YModule target get_url Si le module est connecté par USB la chaîne de caractère 'usb' est retournée. Retourne : une chaîne de caractère contenant l'URL du module. www.yoctopuce.com...
Page 260
): Promise<number> async get_usbCurrent( ) int get_usbCurrent( ) int get_usbCurrent( ) YModule target get_usbCurrent Retourne : un entier représentant le courant consommé par le module sur le bus USB, en milliampères En cas d'erreur, déclenche une exception ou retourne YModule.USBCURRENT_INVALID www.yoctopuce.com...
Page 261
) function get_userData( ) async get_userData( ): Promise<object|null> async get_userData( ) Cet attribut n'es pas utilisé directement par l'API. Il est à la disposition de l'appelant pour stocker un contexte. Retourne : l'objet stocké précédemment par l'appelant. www.yoctopuce.com...
Page 262
) YModule target get_userVar Au démarrage du module (ou après un redémarrage), la valeur est toujours zéro. Retourne : un entier représentant la valeur entière précédemment stockée dans cet attribut En cas d'erreur, déclenche une exception ou retourne YModule.USERVAR_INVALID www.yoctopuce.com...
Page 263
YModule target hasFunction funcId La méthode prend en paramètre l'identifiant de la fonction (relay1, voltage2,...) et retourne un booléen. Paramètres : funcId identifiant matériel de la fonction Retourne : vrai si le module inclut la fonction demandée www.yoctopuce.com...
Page 264
Si les valeurs des attributs du module en cache sont valides au moment de l'appel, le module est considéré joignable. Cette fonction ne cause en aucun cas d'exception, quelle que soit l'erreur qui pourrait se produire lors de la vérification de joignabilité. Retourne : true false si le module est joignable, sinon www.yoctopuce.com...
Page 265
à la fonction de callback Retourne : rien du tout : le résultat sera passé en paramètre à la fonction de callback. www.yoctopuce.com...
Page 266
Paramètres : un entier correspondant à la durée de validité attribuée aux les paramètres chargés, en msValidity millisecondes Retourne : YAPI.SUCCESS si l'opération se déroule sans erreur. En cas d'erreur, déclenche une exception ou retourne un code d'erreur négatif. www.yoctopuce.com...
Page 267
YAPI.SUCCESS d'erreur (ou contexte fourni par l'appelant, et qui sera passé tel-quel à la fonction de callback context Retourne : rien du tout : le résultat sera passé en paramètre à la fonction de callback. www.yoctopuce.com...
Page 268
être inclus dans la chaîne de caractère. Paramètres : text le message à ajouter aux logs du module. Retourne : YAPI.SUCCESS si l'opération se déroule sans erreur. En cas d'erreur, déclenche une exception ou retourne un code d'erreur négatif. www.yoctopuce.com...
Page 269
Attention, vous ne pouvez faire aucune supposition sur l'ordre dans lequel les modules sont retournés. Si vous souhaitez retrouver un module spécifique, utilisez Module.findModule() avec un hardwareID ou un nom logique. Retourne : YModule null un pointeur sur un objet accessible en ligne, ou lorsque l'énumération est terminée. www.yoctopuce.com...
Page 270
YModule target reboot secBeforeReboot Paramètres : secBeforeReboot nombre de secondes avant de redémarrer Retourne : YAPI.SUCCESS si l'opération se déroule sans erreur. En cas d'erreur, déclenche une exception ou retourne un code d'erreur négatif. www.yoctopuce.com...
Page 271
La fonction de callback doit accepter deux arguments: l’objet YModule dont la balise a changé, et un entier représentant l'état de la balise de localisation. Paramètres : callback null la fonction de callback à rappeler, ou www.yoctopuce.com...
Page 272
ConfigChangeCallback callback) int registerConfigChangeCallback( ConfigChangeCallback callback) java async Task<int> registerConfigChangeCallback( ConfigChangeCallback callback) registerConfigChangeCallback( callback) function registerConfigChangeCallback( $callback) async registerConfigChangeCallback( callback: YModuleConfigChangeCallback | null): Promise<number> async registerConfigChangeCallback( callback) Paramètres : callback YModule null une procédure qui prend un en paramètre, ou www.yoctopuce.com...
Page 273
$callback) async registerLogCallback( callback: YModuleLogCallback | null): Promise<number> async registerLogCallback( callback) Utile pour débugger le fonctionnement d'un module Yoctopuce. Paramètres : callback la fonction de callback à rappeler, ou un pointeur nul. La fonction de callback doit accepter deux arguments: l'objet module qui a produit un log, un chaîne de caractère qui contiens le log...
Page 274
) async revertFromFlash( ): Promise<number> async revertFromFlash( ) int revertFromFlash( ) int revertFromFlash( ) YModule target revertFromFlash Retourne : YAPI.SUCCESS si l'opération se déroule sans erreur. En cas d'erreur, déclenche une exception ou retourne un code d'erreur négatif. www.yoctopuce.com...
Page 275
Attention le nombre total de sauvegardes possibles durant la vie du module est limité (environ 100000 cycles). N'appelez pas cette fonction dans une boucle. Retourne : YAPI.SUCCESS si l'opération se déroule sans erreur. En cas d'erreur, déclenche une exception ou retourne un code d'erreur négatif. www.yoctopuce.com...
Page 276
être préservés. saveToFlash() Paramètres : un objet binaire avec touts les paramètres settings Retourne : YAPI.SUCCESS si l'opération se déroule sans erreur. En cas d'erreur, déclenche une exception ou retourne un code d'erreur négatif. www.yoctopuce.com...
Page 277
être préservés. Paramètres : un buffer binaire avec touts les paramètres settings Retourne : YAPI.SUCCESS si l'opération se déroule sans erreur. En cas d'erreur, déclenche une exception ou retourne un code d'erreur négatif. www.yoctopuce.com...
Page 278
YModule target set_beacon newval Paramètres : newval soit YModule.BEACON_OFF , soit YModule.BEACON_ON Retourne : YAPI.SUCCESS si l'opération se déroule sans erreur. En cas d'erreur, déclenche une exception ou retourne un code d'erreur négatif. www.yoctopuce.com...
Page 279
être préservé. saveToFlash() Paramètres : newval une chaîne de caractères Retourne : YAPI.SUCCESS si l'opération se déroule sans erreur. En cas d'erreur, déclenche une exception ou retourne un code d'erreur négatif. www.yoctopuce.com...
Page 280
être préservé. Paramètres : un entier représentant la luminosité des leds informatives du module newval Retourne : YAPI.SUCCESS si l'opération se déroule sans erreur. En cas d'erreur, déclenche une exception ou retourne un code d'erreur négatif. www.yoctopuce.com...
Page 281
$data) async set_userData( data: object|null): Promise<void> async set_userData( data) Cet attribut n'es pas utilisé directement par l'API. Il est à la disposition de l'appelant pour stocker un contexte. Paramètres : data objet quelconque à mémoriser www.yoctopuce.com...
Page 282
Cet attribut est à la disposition du programmeur pour y stocker par exemple une variable d'état. Au démarrage du module (ou après un redémarrage), la valeur est toujours zéro. Paramètres : newval un entier Retourne : YAPI.SUCCESS si l'opération se déroule sans erreur. En cas d'erreur, déclenche une exception ou retourne un code d'erreur négatif. www.yoctopuce.com...
Page 283
LongInt triggerConfigChangeCallback( ): LongInt function triggerConfigChangeCallback( ) As Integer int triggerConfigChangeCallback( ) int triggerConfigChangeCallback( ) java async Task<int> triggerConfigChangeCallback( ) triggerConfigChangeCallback( ) function triggerConfigChangeCallback( ) async triggerConfigChangeCallback( ): Promise<number> async triggerConfigChangeCallback( ) int triggerConfigChangeCallback( ) int triggerConfigChangeCallback( ) YModule target triggerConfigChangeCallback www.yoctopuce.com...
Page 284
YModule target triggerFirmwareUpdate secBeforeReboot Paramètres : secBeforeReboot nombre de secondes avant de redémarrer Retourne : YAPI.SUCCESS si l'opération se déroule sans erreur. En cas d'erreur, déclenche une exception ou retourne un code d'erreur négatif. www.yoctopuce.com...
Page 285
Cette méthode retourne un object qui est utilisé pour mettre à jour le firmware du YFirmwareUpdate module. Paramètres : path le path du fichier .byn à utiliser Retourne : YFirmwareUpdate un object ou NULL en cas d'erreur www.yoctopuce.com...
Page 286
à jour le firmware du YFirmwareUpdate module. Paramètres : path .byn le path du fichier à utiliser force vrai pour forceer la mise à jour même si un prérequis ne semble pas satisfait Retourne : YFirmwareUpdate un object ou NULL en cas d'erreur www.yoctopuce.com...
Page 287
La fonction callback reçoit deux arguments: le contexte fourni par l'appelant et l'objet fonction concerné. contexte fourni par l'appelant, et qui sera passé tel-quel à la fonction de callback context Retourne : rien du tout. www.yoctopuce.com...
Interface pour intéragir avec les relais, disponibles par exemple dans le Yocto-LatchedRelay, le Yocto- MaxiPowerRelay, le Yocto-PowerRelay-V3 et le Yocto-Relay La classe permet de piloter un relais ou un optocoupleur Yoctopuce. Elle permet de commuter YRelay simplement la sortie, mais aussi de créer des courtes impulsions de durée déterminée. Pour les modules dotés de deux sorties par relais, les deux sorties sont appelées A et B, la sortie A...
Page 289
Retourne un identifiant global du relais au format relay→get_functionDescriptor() YFUN_DESCR Retourne un identifiant unique de type correspondant à la fonction. relay→get_functionId() Retourne l'identifiant matériel du relais, sans référence au module. relay→get_hardwareId() SERIAL.FUNCTIONID Retourne l'identifiant matériel unique du relais au format relay→get_logicalName() www.yoctopuce.com...
Page 290
Retourne le temps maximal (en ms) pendant lequel le relais peut rester dans l'état B avant de basculer automatiquement dans l'état A. relay→get_module() YModule Retourne l'objet correspondant au module Yoctopuce qui héberge la fonction. relay→get_module_async(callback, context) Retourne l'objet YModule correspondant au module Yoctopuce qui héberge la fonction.
Page 291
Inverse la position du relais. relay→unmuteValueCallbacks() Réactive l'envoi de chaque changement de la valeur publiée au hub parent. relay→wait_async(callback, context) Attend que toutes les commandes asynchrones en cours d'exécution sur le module soient terminées, et appelle le callback passé en paramètre. www.yoctopuce.com...
Page 292
à l'initialisation de de l'application. Paramètres : func une chaîne de caractères qui référence le relais sans ambiguïté, par exemple YLTCHRL1.relay1 Retourne : YRelay un objet de classe qui permet ensuite de contrôler le relais. www.yoctopuce.com...
Page 293
Paramètres : yctx un contexte YAPI func une chaîne de caractères qui référence le relais sans ambiguïté, par exemple YLTCHRL1.relay1 Retourne : YRelay un objet de classe qui permet ensuite de contrôler le relais. www.yoctopuce.com...
Page 294
FirstRelay( ) Utiliser la fonction pour itérer sur les autres relais. YRelay.nextRelay() Retourne : un pointeur sur un objet YRelay , correspondant au premier relais accessible en ligne, ou null si il n'y a pas de relais disponibles. www.yoctopuce.com...
Page 295
YRelay.nextRelay() Paramètres : yctx un contexte YAPI. Retourne : un pointeur sur un objet YRelay , correspondant au premier relais accessible en ligne, ou null si il n'y a pas de relais disponibles. www.yoctopuce.com...
Page 296
Chaque chaîne retournée peut être passée en argument à la méthode pour YRelay.FindRelay obtenir une objet permettant d'intéragir avec le module correspondant. Retourne : un tableau de chaînes de caractères, contenant les identifiants matériels de chaque fonction disponible trouvée. www.yoctopuce.com...
Page 297
23. Référence de l'API de haut niveau YRelay relay→AdvertisedValue Courte chaîne de caractères représentant l'état courant de la fonction. string AdvertisedValue www.yoctopuce.com...
Page 298
Identifiant global de la fonction au format NOM_MODULE.NOM_FONCTION string FriendlyName Le chaîne retournée utilise soit les noms logiques du module et de la fonction si ils sont définis, soit respectivement le numéro de série du module et l'identifant matériel de la fonction (par exemple: MyCustomName.relay1 www.yoctopuce.com...
Page 299
23. Référence de l'API de haut niveau YRelay relay→FunctionId Identifiant matériel du relais, sans référence au module. string FunctionId Par example relay1 www.yoctopuce.com...
Page 300
23. Référence de l'API de haut niveau YRelay relay→HardwareId Identifiant matériel unique de la fonction au format SERIAL.FUNCTIONID string HardwareId L'identifiant unique est composé du numéro de série du module et de l'identifiant matériel de la fonction (par example RELAYLO1-123456.relay1 www.yoctopuce.com...
Page 301
Si les valeurs des attributs en cache de la fonction sont valides au moment de l'appel, le module est considéré joignable. Cette fonction ne cause en aucun cas d'exception, quelle que soit l'erreur qui pourrait se produire lors de la vérification de joignabilité. www.yoctopuce.com...
Page 302
23. Référence de l'API de haut niveau YRelay relay→LogicalName Nom logique de la fonction. string LogicalName Modifiable. Vous pouvez utiliser yCheckLogicalName() pour vérifier si votre paramètre est valide. N'oubliez pas d'appeler la méthode du module si le réglage doit être préservé. saveToFlash() www.yoctopuce.com...
Page 303
Temps maximal (en ms) pendant lequel le relais peut rester dans l'état A avant de basculer automatiquement dans l'état B. long MaxTimeOnStateA Zéro signifie qu'il n'y a pas de limitation. Modifiable. Zéro signifie qu'il n'y a pas de limitation. N'oubliez pas d'appeler la méthode du module si le réglage doit être préservé. saveToFlash() www.yoctopuce.com...
Page 304
Temps maximal (en ms) pendant lequel le relais peut rester dans l'état B avant de basculer automatiquement dans l'état A. long MaxTimeOnStateB Zéro signifie qu'il n'y a pas de limitation. Modifiable. Zéro signifie qu'il n'y a pas de limitation. N'oubliez pas d'appeler la méthode du module si le réglage doit être préservé. saveToFlash() www.yoctopuce.com...
Page 305
23. Référence de l'API de haut niveau YRelay relay→SerialNumber Numéro de série du module, préprogrammé en usine. string SerialNumber www.yoctopuce.com...
Page 306
23. Référence de l'API de haut niveau YRelay relay→State état du relais (A pour la position de repos, B pour l'état actif). int State Modifiable. www.yoctopuce.com...
Page 307
état du relais au démarrage du module (A pour la position de repos, B pour l'état actif, UNCHANGED pour laisser le relais tel quel). int StateAtPowerOn Modifiable. N'oubliez pas d'appeler la méthode saveToFlash() du module sinon la modification n'aura aucun effet. www.yoctopuce.com...
Page 308
) function clearCache( ) async clearCache( ): Promise<void> async clearCache( ) Invalide le cache des valeurs courantes du relais. Force le prochain appel à une méthode get_xxx() ou loadxxx() pour charger les les données depuis le module. www.yoctopuce.com...
Paramètres : ms_delay delai d'attente avant l'impulsion, en millisecondes ms_duration durée de l'impulsion, en millisecondes Retourne : YAPI.SUCCESS si l'opération se déroule sans erreur. En cas d'erreur, déclenche une exception ou retourne un code d'erreur négatif. www.yoctopuce.com...
Page 310
î n e c a r a c t è r e s d é c r i v a n t r e l a i s ( e x : Relay(MyCustomName.relay1)=RELAYLO1-123456.relay1 www.yoctopuce.com...
): Promise<string> async get_advertisedValue( ) string get_advertisedValue( ) string get_advertisedValue( ) YRelay target get_advertisedValue Retourne : une chaîne de caractères représentant la valeur courante du relais (pas plus de 6 caractères). En cas d'erreur, déclenche une exception ou retourne YRelay.ADVERTISEDVALUE_INVALID www.yoctopuce.com...
Page 312
Si aucune impulsion n'est programmée, retourne zéro. Retourne : un entier représentant le nombre de millisecondes restantes avant le déclenchement d'une impulsion préprogrammée par un appel à delayedPulse() En cas d'erreur, déclenche une exception ou retourne YRelay.COUNTDOWN_INVALID www.yoctopuce.com...
Page 313
) get_errorMessage( ): string get_errorMessage( ) Cette méthode est principalement utile lorsque la librairie Yoctopuce est utilisée en désactivant la gestion des exceptions. Retourne : une chaîne de caractères correspondant au message de la dernière erreur qui s'est produit lors de l'utilisation du relais.
Page 314
) get_errorType( ): number get_errorType( ) Cette méthode est principalement utile lorsque la librairie Yoctopuce est utilisée en désactivant la gestion des exceptions. Retourne : un nombre correspondant au code de la dernière erreur qui s'est produit lors de l'utilisation du relais.
(par exemple: MyCustomName.relay1 Retourne : une chaîne de caractères identifiant le relais en utilisant les noms logiques (ex: MyCustomName.relay1 En cas d'erreur, déclenche une exception ou retourne YRelay.FRIENDLYNAME_INVALID www.yoctopuce.com...
Page 316
é t é c o n t a c t é e , v a l e u r r e t o u r n é e s e r a Y$CLASSNAME$.FUNCTIONDESCRIPTOR_INVALID www.yoctopuce.com...
Page 317
) async get_functionId( ): Promise<string> async get_functionId( ) string get_functionId( ) string get_functionId( ) Par example relay1 Retourne : relay1 une chaîne de caractères identifiant le relais (ex: En cas d'erreur, déclenche une exception ou retourne YRelay.FUNCTIONID_INVALID www.yoctopuce.com...
L'identifiant unique est composé du numéro de série du module et de l'identifiant matériel du relais (par example RELAYLO1-123456.relay1 Retourne : une chaîne de caractères identifiant le relais (ex: RELAYLO1-123456.relay1 En cas d'erreur, déclenche une exception ou retourne YRelay.HARDWAREID_INVALID www.yoctopuce.com...
Page 319
) async get_logicalName( ): Promise<string> async get_logicalName( ) string get_logicalName( ) string get_logicalName( ) YRelay target get_logicalName Retourne : une chaîne de caractères représentant le nom logique du relais. En cas d'erreur, déclenche une exception ou retourne YRelay.LOGICALNAME_INVALID www.yoctopuce.com...
Page 320
Zéro signifie qu'il n'y a pas de limitation. Retourne : un entier représentant le temps maximal (en ms) pendant lequel le relais peut rester dans l'état A avant de basculer automatiquement dans l'état B En cas d'erreur, déclenche une exception ou retourne YRelay.MAXTIMEONSTATEA_INVALID www.yoctopuce.com...
Page 321
Zéro signifie qu'il n'y a pas de limitation. Retourne : un entier représentant le temps maximal (en ms) pendant lequel le relais peut rester dans l'état B avant de basculer automatiquement dans l'état A En cas d'erreur, déclenche une exception ou retourne YRelay.MAXTIMEONSTATEB_INVALID www.yoctopuce.com...
Page 322
23. Référence de l'API de haut niveau YRelay relay→get_module() relay→module() Retourne l'objet correspondant au module Yoctopuce qui héberge la fonction. YModule function get_module( ) YModule * get_module( ) -(YModule*) module TYModule get_module( ): TYModule function get_module( ) As YModule YModule get_module( )
Page 323
23. Référence de l'API de haut niveau YRelay relay→get_module_async() relay→module_async() Retourne l'objet correspondant au module Yoctopuce qui héberge la fonction. YModule function get_module_async( callback, context) Si la fonction ne peut être trouvée sur aucun module, l'instance de retournée ne sera pas YModule joignable.
Page 324
) int get_output( ) YRelay target get_output Retourne : YRelay.OUTPUT_OFF YRelay.OUTPUT_ON soit , soit , selon l'état de la sortie du relais, lorsqu'il est utilisé comme un simple interrupteur En cas d'erreur, déclenche une exception ou retourne YRelay.OUTPUT_INVALID www.yoctopuce.com...
Page 325
Si aucune impulsion n'est en cours, retourne zéro. Retourne : un entier représentant le nombre de millisecondes restantes avant le retour à la position de repos (état A), durant la génération d'une impulsion mesurée En cas d'erreur, déclenche une exception ou retourne YRelay.PULSETIMER_INVALID www.yoctopuce.com...
Page 326
): Promise<string> async get_serialNumber( ) string get_serialNumber( ) string get_serialNumber( ) YRelay target get_serialNumber Retourne : : une chaîne de caractères représentant le numéro de série du module, préprogrammé en usine. En cas d'erreur, déclenche une exception ou retourne YFunction.SERIALNUMBER_INVALID. www.yoctopuce.com...
Page 327
) int get_state( ) YRelay target get_state Retourne : YRelay.STATE_A YRelay.STATE_B soit , soit , selon l'état du relais (A pour la position de repos, B pour l'état actif) En cas d'erreur, déclenche une exception ou retourne YRelay.STATE_INVALID www.yoctopuce.com...
Page 328
YRelay.STATEATPOWERON_A une valeur parmi YRelay.STATEATPOWERON_B représentant l'état du relais au démarrage du module (A pour la position de repos, B pour l'état actif, UNCHANGED pour laisser le relais tel quel) En cas d'erreur, déclenche une exception ou retourne YRelay.STATEATPOWERON_INVALID www.yoctopuce.com...
Page 329
) function get_userData( ) async get_userData( ): Promise<object|null> async get_userData( ) Cet attribut n'es pas utilisé directement par l'API. Il est à la disposition de l'appelant pour stocker un contexte. Retourne : l'objet stocké précédemment par l'appelant. www.yoctopuce.com...
Page 330
Si les valeurs des attributs en cache du relais sont valides au moment de l'appel, le module est considéré joignable. Cette fonction ne cause en aucun cas d'exception, quelle que soit l'erreur qui pourrait se produire lors de la vérification de joignabilité. Retourne : true false si le relais est joignable, sinon www.yoctopuce.com...
Page 331
à la fonction de callback Retourne : rien du tout : le résultat sera passé en paramètre à la fonction de callback. www.yoctopuce.com...
Page 332
) YRelay target isReadOnly Retourne vrais si la fonction est protégé en ecriture ou que la fontion n'est pas disponible. Retourne : true si la fonction est protégé en ecriture ou que la fontion n'est pas disponible www.yoctopuce.com...
Page 333
Paramètres : un entier correspondant à la durée de validité attribuée aux les paramètres chargés, en msValidity millisecondes Retourne : YAPI.SUCCESS si l'opération se déroule sans erreur. En cas d'erreur, déclenche une exception ou retourne un code d'erreur négatif. www.yoctopuce.com...
Paramètres : le nom de l'attribut désiré attrName Retourne : une chaîne de caractères représentant la valeur actuelle de l'attribut. En cas d'erreur, déclenche une exception ou retourne un chaîne vide. www.yoctopuce.com...
Page 335
YAPI.SUCCESS d'erreur (ou contexte fourni par l'appelant, et qui sera passé tel-quel à la fonction de callback context Retourne : rien du tout : le résultat sera passé en paramètre à la fonction de callback. www.yoctopuce.com...
Page 336
éviter le déclanchement de callbacks HTTP. N'oubliez pas d'appeler la méthode du module si le réglage doit être préservé. saveToFlash() Retourne : YAPI.SUCCESS si l'opération se déroule sans erreur. En cas d'erreur, déclenche une exception ou retourne un code d'erreur négatif. www.yoctopuce.com...
Page 337
): YRelay | null nextRelay( ) Si vous souhaitez retrouver un relais spécifique, utilisez Relay.findRelay() avec un hardwareID ou un nom logique. Retourne : YRelay null un pointeur sur un objet accessible en ligne, ou lorsque l'énumération est terminée. www.yoctopuce.com...
Page 338
YRelay target pulse ms_duration Paramètres : ms_duration durée de l'impulsion, en millisecondes Retourne : YAPI.SUCCESS si l'opération se déroule sans erreur. En cas d'erreur, déclenche une exception ou retourne un code d'erreur négatif. www.yoctopuce.com...
Page 339
Paramètres : callback la fonction de callback à rappeler, ou un pointeur nul. La fonction de callback doit accepter deux arguments: l'object fonction dont la valeur a changé, et la chaîne de caractère décrivant la nouvelle valeur publiée. www.yoctopuce.com...
Page 340
être préservé. saveToFlash() Paramètres : newval une chaîne de caractères représentant le nom logique du relais. Retourne : YAPI.SUCCESS si l'appel se déroule sans erreur. En cas d'erreur, déclenche une exception ou retourne un code d'erreur négatif. www.yoctopuce.com...
Page 341
(en ms) pendant lequel le relais peut rester dans l'état A newval avant de basculer automatiquement dans l'état B Retourne : YAPI.SUCCESS si l'opération se déroule sans erreur. En cas d'erreur, déclenche une exception ou retourne un code d'erreur négatif. www.yoctopuce.com...
Page 342
(en ms) pendant lequel le relais peut rester dans l'état B newval avant de basculer automatiquement dans l'état A Retourne : YAPI.SUCCESS si l'opération se déroule sans erreur. En cas d'erreur, déclenche une exception ou retourne un code d'erreur négatif. www.yoctopuce.com...
Page 343
, soit YRelay.OUTPUT_ON , selon l'état de la sortie du relais, lorsqu'il est utilisé comme un simple interrupteur Retourne : YAPI.SUCCESS si l'opération se déroule sans erreur. En cas d'erreur, déclenche une exception ou retourne un code d'erreur négatif. www.yoctopuce.com...
Page 344
, soit YRelay.STATE_B , selon l'état du relais (A pour la position de repos, B pour l'état actif) Retourne : YAPI.SUCCESS si l'opération se déroule sans erreur. En cas d'erreur, déclenche une exception ou retourne un code d'erreur négatif. www.yoctopuce.com...
Page 345
(A pour la position de repos, B pour l'état actif, UNCHANGED pour laisser le relais tel quel) Retourne : YAPI.SUCCESS si l'opération se déroule sans erreur. En cas d'erreur, déclenche une exception ou retourne un code d'erreur négatif. www.yoctopuce.com...
Page 346
$data) async set_userData( data: object|null): Promise<void> async set_userData( data) Cet attribut n'es pas utilisé directement par l'API. Il est à la disposition de l'appelant pour stocker un contexte. Paramètres : data objet quelconque à mémoriser www.yoctopuce.com...
Page 347
) async toggle( ): Promise<number> async toggle( ) int toggle( ) int toggle( ) YRelay target toggle Retourne : YAPI.SUCCESS si l'opération se déroule sans erreur. En cas d'erreur, déclenche une exception ou retourne un code d'erreur négatif. www.yoctopuce.com...
Page 348
Cette fonction annule un précédent appel à . N'oubliez pas d'appeler la muteValueCallbacks() méthode saveToFlash() du module si le réglage doit être préservé. Retourne : YAPI.SUCCESS si l'opération se déroule sans erreur. En cas d'erreur, déclenche une exception ou retourne un code d'erreur négatif. www.yoctopuce.com...
Page 349
La fonction callback reçoit deux arguments: le contexte fourni par l'appelant et l'objet fonction concerné. contexte fourni par l'appelant, et qui sera passé tel-quel à la fonction de callback context Retourne : rien du tout. www.yoctopuce.com...
24.1. Par où commencer ? Si c'est la première fois que vous utilisez un module Yoctopuce et ne savez pas trop par où commencer, allez donc jeter un coup d'œil sur le blog de Yoctopuce. Il y a une section dédiée aux débutants 24.2.
24.5. Module alimenté mais invisible pour l'OS Si votre Yocto-PowerRelay-V2 est branché par USB et que sa LED bleue s'allume, mais que le module n'est pas vu par le système d'exploitation, vérifiez que vous utilisez bien un vrai câble USB avec les fils pour les données, et non pas un câble de charge.
Yocto-PowerRelay-V2 ne fonctionne plus, commencez par contacter le support Yoctopuce par e-mail pour poser un diagnostic. Même si c'est suite à une mauvaise manipulation que le module a été endommagé, il se peut que Yoctopuce puisse le réparer, et ainsi éviter de créer un déchet électronique.
25. Caractéristiques Vous trouverez résumées ci-dessous les principales caractéristiques techniques de votre module Yocto-PowerRelay-V2 Identifiant produit RELAYHI2 † Révision matérielle Connecteur USB micro-B Largeur 20 mm Longueur 45 mm Poids 12 g Type de relais TE PE014005 Canaux Courant max commutable...
Page 356
La plage de température étendue est définie d'après les spécifications des composants et testée sur une durée limitée (1h). En cas d'utilisation prolongée hors de la plage de température standard, il est recommandé procéder à des tests extensifs avant la mise en production. www.yoctopuce.com...