Différences entre versions de « Spark.IO-CLI-CommandReference »

De MCHobby - Wiki
Sauter à la navigation Sauter à la recherche
 
(27 versions intermédiaires par le même utilisateur non affichées)
Ligne 1 : Ligne 1 :
 
{{Spark.IO-CLI-NAV}}
 
{{Spark.IO-CLI-NAV}}
 
{{traduction}}
 
  
 
== Introduction ==
 
== Introduction ==
{{bloc-etroit|text=Bien que nous ayons traduit cette référence dans sa presque intégralité, vous trouverez ce document en version anglaise de [http://docs.spark.io/cli/#command-reference CLI command reference] sur le site de Spark.}}
+
Bien que nous ayons traduit cette référence dans sa presque intégralité, vous trouverez ce document en version anglaise de [http://docs.spark.io/cli/#command-reference CLI command reference] sur le site de Spark.
  
 
== Login & Wifi ==
 
== Login & Wifi ==
 
=== spark setup wifi ===
 
=== spark setup wifi ===
Helpful shortcut for adding another wifi network to a core connected over USB. Make sure your core is connected via a USB cable, and is slow blinking blue listening mode
+
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 ([[Spark.IO-D%C3%A9marrer#Connectez_votre_Core_sur_le_Cloud|en mode "listening"]])
  
  <nowiki># how to just update your wifi settings.
+
  <nowiki># Comment mettre la config WiFi à jour.
# Make sure your core is connected and in listening mode first
+
# Assurez-vous dabord que votre Core soit connecté et en mode listening
 
$ spark setup wifi</nowiki>
 
$ spark setup wifi</nowiki>
  
 
=== spark login ===
 
=== spark login ===
Login and save an access token for interacting with your account on the Spark Cloud.
+
Faire un Login et stocker l'ACCESS_TOKEN pour utiliser votre compte Spark pour interagir sur Spark Cloud.
  <nowiki># how to login - creates and saves an access token for your session with the CLI
+
  <nowiki># Comment se logger - créer et sauver l'access token pour votre session avec le CLI
 
$ spark login</nowiki>
 
$ spark login</nowiki>
  
 
=== spark logout ===
 
=== spark logout ===
Logout and optionally revoke the access token for your CLI session.
+
Se déconnecter (logout) du compte spark cloud et révoke l'access token de votre session CLI.
  <nowiki># how to remove your saved access token, and optionally revoke that token as well
+
  <nowiki># Comment retirer l'access token stocké dans la session du cli
 
$ spark logout</nowiki>
 
$ spark logout</nowiki>
  
 
== Gestion des Cores ==
 
== Gestion des Cores ==
 
=== spark list ===
 
=== spark list ===
Generates a list of what cores you own, and displays information about their status, including what variables and functions are available
+
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
  <nowiki># how to show what cores of yours are online
+
  <nowiki># Comment savoir lesquels de vos cores sont en ligne
# and what functions and variables are available
+
# et quel sont les fonctions et variables disponibles
 
$ spark list
 
$ spark list
  
Ligne 41 : Ligne 39 :
  
 
=== spark core add ===
 
=== spark core add ===
Adds a new core to your account
+
Ajouter un nouveau Core sur votre compte
  <nowiki># how to add a new core to your account
+
  <nowiki># Comment ajouter/associer un nouveau core sur votre compte
 
$ spark cloud claim 0123456789ABCDEFGHI
 
$ spark cloud claim 0123456789ABCDEFGHI
 
Claiming core 0123456789ABCDEFGHI
 
Claiming core 0123456789ABCDEFGHI
Ligne 48 : Ligne 46 :
  
 
=== spark core rename ===
 
=== spark core rename ===
Assigns a new name to a core you've claimed
+
Assigner un nouveau nom à un Core déja associé au compte Spark Cloud.
  <nowiki># how to change the name of your core
+
  <nowiki># Comment renommer votre core
 
$ spark core rename 0123456789ABCDEFGHI "pirate frosting"</nowiki>
 
$ spark core rename 0123456789ABCDEFGHI "pirate frosting"</nowiki>
 +
 +
<small>{{underline|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é.</small>
  
 
=== spark core remove ===
 
=== spark core remove ===
Removes a core from your account so someone else can claim it.
+
Retire/désassocie un core de votre compte Spark. Cela permet à quelqu'un d'autre de l'associer à son propre compte.
  <nowiki># how to remove a core from your account
+
 
 +
Cette opération demande une confirmation "''Are you sure?  Please Type yes to continue:''". Vous devrez entrer "yes" pour compléter l'étape.
 +
 +
  <nowiki># Comment retirer un Core de votre compte
 
$ spark core remove 0123456789ABCDEFGHI
 
$ spark core remove 0123456789ABCDEFGHI
 
Are you sure?  Please Type yes to continue: yes
 
Are you sure?  Please Type yes to continue: yes
Ligne 62 : Ligne 65 :
  
 
== Flasher ==
 
== Flasher ==
Sends a firmware binary, a source file, or a directory of source files, or a known app to your core.
+
Envoyer le binaire d'un Firmware, un fichier source (du programme), un répertoire de fichiers sources OU une application connue sur votre Core.
  
=== Flashing a directory ===
+
=== Flasher un répertoire ===
You can setup a directory of source files and libraries for your project, and the CLI will use those when compiling remotely. You can also create <code>spark.include</code> and / or a <code>spark.ignore</code> file in that directory that will tell the CLI specifically which files to use or ignore.
+
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 <code>spark.include</code> et/ou un fichier <code>spark.ignore</code> dans ce répertoire, ces fichiers permettent d'indiquer plus spécifiquement les fichiers à inclure (''include'') et/ou à ignorer (''ignore'').
  <nowiki># how to compile and flash a directory of source code to your core
+
  <nowiki># Comment compiler et flasher un répertoire de code source dans votre Core
$ spark flash 0123456789ABCDEFGHI my_project</nowiki>
+
$ spark flash 0123456789ABCDEFGHI mon_projet</nowiki>
  
=== Flashing one or more source files ===
+
=== Flasher un ou plusieurs fichiers sources ===
 +
<nowiki># Comment compiler et flasher une liste de fichier source sur votre Core
 +
$ spark flash 0123456789ABCDEFGHI app.ino library1.cpp library1.h</nowiki>
  
<nowiki># how to compile and flash a list of source files to your core
+
=== Flasher une application connue ===
$ spark flash 0123456789ABCDEFGHI app.ino library1.cpp library1.h</nowiki>
+
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.  
  
=== Flashing a known app ===
+
A l'aide du CLI et vous pouvez flasher ces deux applications via le Cloud OU localement via USB et dfu-util.
Two pre-built apps are included with the CLI to help you get back on track. Tinker, and the CC3000 patching app. You can flash these both over the cloud or locally via USB and dfu-util through the CLI.
+
  <nowiki># Comment flasher une "application connue" tel que tinker, ou le patcher cc3000 sur votre Core
  <nowiki># how to flash a "known app" like tinker, or the cc3000 patcher to your core
 
 
$ spark flash 0123456789ABCDEFGHI tinker
 
$ spark flash 0123456789ABCDEFGHI tinker
 
$ spark flash 0123456789ABCDEFGHI cc3000
 
$ spark flash 0123456789ABCDEFGHI cc3000
  
# how to flash if your core is blinking yellow and connected over usb
+
# Comment flasher si votre Core clignote en jaune et connecté via USB
# requires dfu-util
+
# Nécessite dfu-util
 
$ spark flash --usb tinker
 
$ spark flash --usb tinker
 
$ spark flash --usb cc3000</nowiki>
 
$ spark flash --usb cc3000</nowiki>
  
=== Compiling remotely and Flashing locally ===
+
=== Compiler en remote et flasher en local ===
To work locally, but use the cloud compiler, simply use the compile command, and then the local flash command after. Make sure you connect your core via USB and place it into [http://docs.spark.io/#/connect/appendix-dfu-mode-device-firmware-upgrade mode dfu] (''anglais, spark'').
+
Pour un travail en local, tout en utilisant un compilateur sur le cloud, utilisez simplement la commande <code>compile</code> et ensuite la commande pour faire un flash en local.  
  <nowiki># how to compile a directory of source code and tell the CLI where to save the results
+
 
$ spark compile my_project_folder --saveTo firmware.bin
+
Assurez-vous que votre Core est connecté via USB et de l'avoir placé en mode [[Spark.IO-Connect#Mode_DFU|mode dfu]] (''anglais, spark'').
OR
+
  <nowiki># Comment compiler un répertoire de code source et
# how to compile a list of source files
+
# 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
 
$ spark compile app.ino library1.cpp library1.h --saveTo firmware.bin
  
# how to flash a pre-compiled binary over usb to your core
+
# Comment flasher un binaire pré-compilé sur votre Core via USB
# make sure your core is flashing yellow and connected via USB
+
# Assurez-vous que votre Core clignote en jaune et qu'il soit connecté via USB.
# requires dfu-util to be installed
+
# Necessite que l'utilitaire dfu-util soit installé
 
$ spark flash --usb firmware.bin</nowiki>
 
$ spark flash --usb firmware.bin</nowiki>
  
 
== Compiler ==
 
== Compiler ==
Compiles one or more source file, or a directory of source files, and downloads a firmware binary.
+
Compiler un ou plusieurs fichiers source, ou répertoire et télécharger le fichier binaire du firmware généré.
=== compiling a directory ===
 
You can setup a directory of source files and libraries for your project, and the CLI will use those when compiling remotely. You can also create <code>spark.include</code> and / or a <code>spark.ignore</code> file in that directory that will tell the CLI specifically which files to use or ignore. Those files are just plain text with one line per filename
 
<nowiki># how to compile a directory of source code
 
$ spark compile my_project_folder</nowiki>
 
  
=== example spark.include ===
+
=== Compiler un répertoire ===
The spark.include and spark.ignore files are just regular text files with one filename per line. If your directory has one of these files, the CLI will use it to try and determine what to include or ignore when compiling your app.
+
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 <code>spark.include</code> et/ou <code>spark.ignore</code> 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.
 +
<nowiki># comment compiler un répertoire de fichiers sources
 +
$ spark compile nom_du_repertoire_du_projet</nowiki>
 +
 
 +
=== 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.
  
 
  <nowiki># spark.include
 
  <nowiki># spark.include
Ligne 113 : Ligne 123 :
 
library1.cpp</nowiki>
 
library1.cpp</nowiki>
  
=== example spark.ignore ===
+
=== 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.
  
 
  <nowiki># spark.ignore
 
  <nowiki># spark.ignore
Ligne 120 : Ligne 131 :
 
old_version.cpp</nowiki>
 
old_version.cpp</nowiki>
  
=== Compiling one or more source files ===
+
=== Compiler un ou plusieurs fichiers ===
  
  <nowiki># how to compile a list of source files
+
  <nowiki># Comment compiler une liste de fichier source
 
$ spark compile app.ino library1.cpp library1.h</nowiki>
 
$ spark compile app.ino library1.cpp library1.h</nowiki>
  
 
== Appels ==
 
== 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 ===
 
=== spark call ===
Calls a function on one of your cores, use <code>spark list</code> to see which cores are online, and what functions are available.
+
Appel d'une fonction sur l'un de vos Cores (''to call'' signifie ''appeler''), utilisez <code>spark list</code> pour identifier les cores qui sont en ligne et les fonctions disponibles.
  <nowiki># how to call a function on your core
+
  <nowiki># Comment appeler une fonction sur votre Core
 
$ spark call 0123456789ABCDEFGHI digitalWrite "D7,HIGH"
 
$ spark call 0123456789ABCDEFGHI digitalWrite "D7,HIGH"
 
1</nowiki>
 
1</nowiki>
  
 
=== spark get ===
 
=== spark get ===
Retrieves a variable value from one of your cores, use <code>spark list</code> to see which cores are online, and what variables are available.
+
Retrouver ka valeur d'une variable d'un de vos Cores, utilisez <code>spark list</code> pour identifier les cores qui sont en ligne et les fonctions disponibles.
  <nowiki># how to get a variable value from a core
+
  <nowiki># Comment obtenir une variable depuis un Core
 
$ spark get 0123456789ABCDEFGHI temperature
 
$ spark get 0123456789ABCDEFGHI temperature
 
72.1</nowiki>
 
72.1</nowiki>
  
 
=== spark monitor ===
 
=== spark monitor ===
Pulls the value of a variable at a set interval, and optionally display a timestamp
+
Entasser les différentes valeurs d'une variable à intervalle déterminé et optionnellement afficher le [http://fr.wikipedia.org/wiki/Horodatage timestamp] (''timestamp: une valeur d'horodatage, wikipedia, français'').
  
* Minimum delay for now is 500 (there is a check anyway if you keyed anything less)
+
'''Le monitoring permet d'interroger un ou plusieurs cores'''.
* hitting CTRL + C in the console will exit the monitoring
 
  
  <nowiki># how to poll for a variable value from one or more cores continuously
+
* 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
 +
 
 +
  <nowiki># Comment interroger la valeur d'une variable d'un ou plusieurs Cores continuellement
 
$ spark monitor 0123456789ABCDEFGHI temperature 5000
 
$ spark monitor 0123456789ABCDEFGHI temperature 5000
 
$ spark monitor 0123456789ABCDEFGHI temperature 5000 --time
 
$ spark monitor 0123456789ABCDEFGHI temperature 5000 --time
 
$ spark monitor all temperature 5000
 
$ spark monitor all temperature 5000
 
$ spark monitor all temperature 5000 --time
 
$ spark monitor all temperature 5000 --time
$ spark monitor all temperature 5000 --time > my_temperatures.csv</nowiki>
+
$ spark monitor all temperature 5000 --time > mes_temperatures.csv</nowiki>
 +
 
 +
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 [http://fr.wikipedia.org/wiki/Comma-separated_values fichier csv] (''comma separated value, wikipedia, français'') supporté par tous les tableurs.
  
 
== Outils ==
 
== Outils ==
 
=== spark identify ===
 
=== spark identify ===
Retrieves your core id when the core is connected via USB and in listening mode (flashing blue).
+
Permet d'obtenir le CORE ID lorsqu'il est connecté via USB et en mode ''listening'' (flash en bleu).
  <nowiki># helps get your core id via usb and serial
+
  <nowiki># Permet d'obtenir le CORE ID via USB et port série
# make sure your core is connected and blinking blue
+
# Assurez vous que le Core est connecté et clignote en bleu
 
$ spark identify
 
$ spark identify
 
$ spark identify 1
 
$ spark identify 1
Ligne 165 : Ligne 186 :
  
 
=== spark subscribe ===
 
=== spark subscribe ===
Subscribes to published events on the cloud, and pipes them to the console. Special core name "mine" will subscribe to events from just your cores.
+
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.
  <nowiki># opens a connection to the API so you can stream events coming from your 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'')
 +
 
 +
  <nowiki># Ouvrir une connexion sur l'API pour surveiller le flux des événements provenant de vos cores
 
$ spark subscribe
 
$ spark subscribe
 
$ spark subscribe mine
 
$ spark subscribe mine
Ligne 173 : Ligne 197 :
 
$ spark subscribe eventName CoreName
 
$ spark subscribe eventName CoreName
 
$ spark subscribe eventName 0123456789ABCDEFGHI</nowiki>
 
$ spark subscribe eventName 0123456789ABCDEFGHI</nowiki>
 +
 +
{{underline|Exemple:}}
 +
 +
Dans cet exemple, nous saisissons la commande:
 +
 +
<nowiki>spark subscribe mine</nowiki>
 +
 +
Puis nous faisons un Reset de notre Core en pressant le bouton "reset".... voici ce que nous obtenons en retour dans la console
 +
 +
<nowiki>$ 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"}</nowiki>
 +
 +
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 ===
 
=== spark serial list ===
Shows currently connected Spark Core's acting as serial devices over USB
+
Affiche le Spark Core actuellement connecté comme périphérique série via USB
  <nowiki># shows a list of cores connected via serial usb
+
  <nowiki># Affiche une liste des Cores connectés via USB Série
 
$ spark serial list</nowiki>
 
$ spark serial list</nowiki>
  
 
=== spark serial monitor ===
 
=== spark serial monitor ===
Starts listening to the specified serial device, and echoes to the terminal
+
Commence l'écoute du périphérique série spécifié et renvoie les informations sur le terminal (Faire un ''écho'' sur le terminal)
  <nowiki># opens a read-only serial monitor for a particular core
+
  <nowiki># Ouvrir un moniteur série en lecture seule pour un Core spécifique
 
$ spark serial monitor
 
$ spark serial monitor
 
$ spark serial monitor 1
 
$ spark serial monitor 1
 +
# Windows affiche le port série comme un COMx
 
$ spark serial monitor COM3
 
$ spark serial monitor COM3
 +
# Sous Mac, le port série est affiché comme un /dev/
 
$ spark serial monitor /dev/cu.usbmodem12345</nowiki>
 
$ spark serial monitor /dev/cu.usbmodem12345</nowiki>
  

Version actuelle datée du 28 décembre 2014 à 13:17


MCHobby investit du temps et de l'argent dans la réalisation de traduction et/ou documentation. C'est un travail long et fastidieux réalisé dans l'esprit Open-Source... donc gratuit et librement accessible.
SI vous aimez nos traductions et documentations ALORS aidez nous à en produire plus en achetant vos produits chez MCHobby.

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.

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.