Spark.IO-CLI-CommandReference
Introduction
Bien que nous ayons traduit cette référence dans sa presque intégralité, vous trouverez ce document en version anglaise de CLI command reference sur le site de Spark.
Login & Wifi
spark setup wifi
Un raccourcis bien pratique pour ajouter un autre réseau wifi sur un Core connecté via USB. Assurez-vous d'avoir connecté votre Core via un câble USB et qu'il clignote lentement en bleu (en mode "listening")
# Comment mettre la config WiFi à jour. # Assurez-vous dabord que votre Core soit connecté et en mode listening $ spark setup wifi
spark login
Faire un Login et stocker l'ACCESS_TOKEN pour utiliser votre compte Spark pour interagir sur Spark Cloud.
# Comment se logger - créer et sauver l'access token pour votre session avec le CLI $ spark login
spark logout
Se déconnecter (logout) du compte spark cloud et révoke l'access token de votre session CLI.
# Comment retirer l'access token stocké dans la session du cli $ spark logout
Gestion des Cores
spark list
Affiche une liste de tous les cores en votre possession (ceux enregistrés sur votre compte Spark Cloud). La liste affiche pour chaque core: le statut, les variables et les fonctions disponibles
# Comment savoir lesquels de vos cores sont en ligne # et quel sont les fonctions et variables disponibles $ spark list Checking with the cloud... Retrieving cores... (this might take a few seconds) my_core_name (0123456789ABCDEFGHI) 0 variables, and 4 functions Functions: int digitalWrite(string) int digitalRead(string) int analogWrite(string) int analogRead(string)
spark core add
Ajouter un nouveau Core sur votre compte
# Comment ajouter/associer un nouveau core sur votre compte $ spark cloud claim 0123456789ABCDEFGHI Claiming core 0123456789ABCDEFGHI Successfully claimed core 0123456789ABCDEFGHI
spark core rename
Assigner un nouveau nom à un Core déja associé au compte Spark Cloud.
# Comment renommer votre core $ spark core rename 0123456789ABCDEFGHI "pirate frosting"
Note de MCHobby: Evitez d'utiliser des espace dans le nom d'un Core... c'est souvent source de complication lorsque l'on veut utiliser des outils en ligne de commande. Aussi, "pirate-frosting" serait probablement plus indiqué.
spark core remove
Retire/désassocie un core de votre compte Spark. Cela permet à quelqu'un d'autre de l'associer à son propre compte.
Cette opération demande une confirmation "Are you sure? Please Type yes to continue:". Vous devrez entrer "yes" pour compléter l'étape.
# Comment retirer un Core de votre compte $ spark core remove 0123456789ABCDEFGHI Are you sure? Please Type yes to continue: yes releasing core 0123456789ABCDEFGHI server said { ok: true } Okay!
Flasher
Envoyer le binaire d'un Firmware, un fichier source (du programme), un répertoire de fichiers sources OU une application connue sur votre Core.
Flasher un répertoire
Vous pouvez préparer un répertoire avec les fichiers sources et bibliothèques de votre projet. Le CLI utilisera ces fichiers lorsqu'il réalisera la compilation sur les serveurs de Spark (compilation en remote). Vous pouvez également créer un fichier spark.include
et/ou un fichier spark.ignore
dans ce répertoire, ces fichiers permettent d'indiquer plus spécifiquement les fichiers à inclure (include) et/ou à ignorer (ignore).
# Comment compiler et flasher un répertoire de code source dans votre Core $ spark flash 0123456789ABCDEFGHI mon_projet
Flasher un ou plusieurs fichiers sources
# Comment compiler et flasher une liste de fichier source sur votre Core $ spark flash 0123456789ABCDEFGHI app.ino library1.cpp library1.h
Flasher une application connue
Deux application pré-compilées sont incluses dans le CLI pour vous aider à dépanner certaines situations complexes. Tinker, et l'application patch (de correction) du CC3000.
A l'aide du CLI et vous pouvez flasher ces deux applications via le Cloud OU localement via USB et dfu-util.
# Comment flasher une "application connue" tel que tinker, ou le patcher cc3000 sur votre Core $ spark flash 0123456789ABCDEFGHI tinker $ spark flash 0123456789ABCDEFGHI cc3000 # Comment flasher si votre Core clignote en jaune et connecté via USB # Nécessite dfu-util $ spark flash --usb tinker $ spark flash --usb cc3000
Compiler en remote et flasher en local
Pour un travail en local, tout en utilisant un compilateur sur le cloud, utilisez simplement la commande compile
et ensuite la commande pour faire un flash en local.
Assurez-vous que votre Core est connecté via USB et de l'avoir placé en mode mode dfu (anglais, spark).
# Comment compiler un répertoire de code source et # indiquer au CLI où sauver le binaire résultant $ spark compile mon_repertoire_de_projet --saveTo firmware.bin OU # comment compiler une liste de fichier source $ spark compile app.ino library1.cpp library1.h --saveTo firmware.bin # Comment flasher un binaire pré-compilé sur votre Core via USB # Assurez-vous que votre Core clignote en jaune et qu'il soit connecté via USB. # Necessite que l'utilitaire dfu-util soit installé $ spark flash --usb firmware.bin
Compiler
Compiler un ou plusieurs fichiers source, ou répertoire et télécharger le fichier binaire du firmware généré.
Compiler un répertoire
Vous pouvez compiler un répertoire de fichiers sources et de bibliothèques pour votre projet (et le CLI utilisera ces fichiers sur lorsqu'il fera la compilation en remote sur les serveurs de Spark).
Vous pouvez créer un fichier spark.include
et/ou spark.ignore
dans le répertoire. Ces fichiers indiquent au CLI quels sont les fichiers à inclure (include) et à ignorer (ignore). Ces fichiers sont de simples fichiers texte contenant une ligne par fichier.
# comment compiler un répertoire de fichiers sources $ spark compile nom_du_repertoire_du_projet
Exemple de spark.include
spark.include est un fichier texte standard avec une ligne par fichier à inclure. Le CLI l'utiliseras pour essayer de déterminer ce qui doit être inclus lorsque vous compilerez votre application.
# spark.include application.cpp library1.h library1.cpp
Exemple de spark.ignore
spark.ignore est un fichier texte standard avec une ligne par fichier à exclure. Le CLI l'utiliseras pour essayer de déterminer les fichier à exclure/ignorer lorsque vous compilerez votre application.
# spark.ignore .ds_store logo.png old_version.cpp
Compiler un ou plusieurs fichiers
# Comment compiler une liste de fichier source $ spark compile app.ino library1.cpp library1.h
Appels
L'un des plus grands intérêts de l'infrastructure Spark Cloud est de pouvoir appeler des fonctions sur votre Core ou obtenir la valeur de certaines variables publiées sur Spark Cloud.
spark call
Appel d'une fonction sur l'un de vos Cores (to call signifie appeler), utilisez spark list
pour identifier les cores qui sont en ligne et les fonctions disponibles.
# Comment appeler une fonction sur votre Core $ spark call 0123456789ABCDEFGHI digitalWrite "D7,HIGH" 1
spark get
Retrouver ka valeur d'une variable d'un de vos Cores, utilisez spark list
pour identifier les cores qui sont en ligne et les fonctions disponibles.
# Comment obtenir une variable depuis un Core $ spark get 0123456789ABCDEFGHI temperature 72.1
spark monitor
Entasser les différentes valeurs d'une variable à intervalle déterminé et optionnellement afficher le timestamp (timestamp: une valeur d'horodatage, wikipedia, français).
Le monitoring permet d'interroger un ou plusieurs cores.
- Le délai minimum est 500 (le CLI vérifie la valeur encodée et rectifie si nécessaire)
- Pressez CTRL + C dans la console pour pour sortie du monitoring
# Comment interroger la valeur d'une variable d'un ou plusieurs Cores continuellement $ spark monitor 0123456789ABCDEFGHI temperature 5000 $ spark monitor 0123456789ABCDEFGHI temperature 5000 --time $ spark monitor all temperature 5000 $ spark monitor all temperature 5000 --time $ spark monitor all temperature 5000 --time > mes_temperatures.csv
Notes:
- l'option --time ajoute le timestamp dans le résultat du monitoring.
- l'option all permet d'interroger tous les Cores enregistré dans le compte (tout ceux visible dans "spark list").
- l'option 5000 est le délai de mise-à-jour en millisecondes (donc 5 secondes)
- l'option > mes_temperatures.csv permet de rediriger les informations vers un fichier csv (comma separated value, wikipedia, français) supporté par tous les tableurs.
Outils
spark identify
Permet d'obtenir le CORE ID lorsqu'il est connecté via USB et en mode listening (flash en bleu).
# Permet d'obtenir le CORE ID via USB et port série # Assurez vous que le Core est connecté et clignote en bleu $ spark identify $ spark identify 1 $ spark identify COM3 $ spark identify /dev/cu.usbmodem12345 $ spark identify 0123456789ABCDEFGHI
spark subscribe
Souscrire à un événement publié sur le Cloud et l'envoyer (pipe) vers la console. Le nom de Core spécial "mine" (le mien) va souscrire aux événements de vos cores.
Si vous connaissez le nom de l'événement qui vous intéresse, vous pouvez le spécifier à l'emplacement 'eventName' (qui signifie littéralement nom de l'événement)
# Ouvrir une connexion sur l'API pour surveiller le flux des événements provenant de vos cores $ spark subscribe $ spark subscribe mine $ spark subscribe eventName $ spark subscribe eventName mine $ spark subscribe eventName CoreName $ spark subscribe eventName 0123456789ABCDEFGHI
Exemple:
Dans cet exemple, nous saisissons la commande:
spark subscribe mine
Puis nous faisons un Reset de notre Core en pressant le bouton "reset".... voici ce que nous obtenons en retour dans la console
$ spark subscribe mine Subscribing to all events from my personal stream (my cores only) Listening to: /v1/devices/events {"name":"spark/status","data":"online","ttl":"60","published_at":"2014-12-28T12:55:54.116Z","coreid":"54xxxxxxxxxxxxxxxxxxxx67"} {"name":"spark/cc3000-patch-version","data":"1.29","ttl":"60","published_at":"2014-12-28T12:55:54.242Z","coreid":"54xxxxxxxxxxxxxxxxxxxx67"}
Vous noterez la structure des informations (format JSON) contenant par ailleurs le nom de l'événement (voyez l'élément name) ainsi que l'identification du core (voyez l'élément coreid).
spark serial list
Affiche le Spark Core actuellement connecté comme périphérique série via USB
# Affiche une liste des Cores connectés via USB Série $ spark serial list
spark serial monitor
Commence l'écoute du périphérique série spécifié et renvoie les informations sur le terminal (Faire un écho sur le terminal)
# Ouvrir un moniteur série en lecture seule pour un Core spécifique $ spark serial monitor $ spark serial monitor 1 # Windows affiche le port série comme un COMx $ spark serial monitor COM3 # Sous Mac, le port série est affiché comme un /dev/ $ spark serial monitor /dev/cu.usbmodem12345
spark keys (xxx)
CLI intègre plusieurs utilitaires de gestion des clés.
Nous n'avons pas traduit le contenu de ces fonctions que vous trouverez dans la documentation de Spark (Spark, anglais) |
Les différents fonctions à votre disposition sont:
- spark keys doctor
- spark keys new
- spark keys load
- spark keys save
- spark keys send
- spark keys server
Source: Spark CLI (command line interface) créé par Spark.IO.
Traduction réalisée et augmentée par Meurisse D pour MCHobby.be - Translated and upsized by Meurisse D. for MCHobby.be
Traduit avec l'autorisation de Spark.IO - Translated with the permission from Spark.IO - Spark.IO
Toute référence, mention ou extrait de cette traduction doit être explicitement accompagné du texte suivant : « Traduction par MCHobby (www.MCHobby.be) - Vente de kit et composants » avec un lien vers la source (donc cette page) et ce quelque soit le média utilisé.
L'utilisation commercial de la traduction (texte) et/ou réalisation, même partielle, pourrait être soumis à redevance. Dans tous les cas de figures, vous devez également obtenir l'accord du(des) détenteur initial des droits. Celui de MC Hobby s'arrêtant au travail de traduction proprement dit.