Différences
Ci-dessous, les différences entre deux révisions de la page.
Les deux révisions précédentes Révision précédente Prochaine révision | Révision précédente Dernière révision Les deux révisions suivantes | ||
commenailles-3 [2017/11/25 00:56] crab [Le firmata CrabESP] |
commenailles-3 [2017/12/10 14:00] crab [Le firmata CrabESP] |
||
---|---|---|---|
Ligne 21: | Ligne 21: | ||
== Pour économiser la bande passante locale == | == Pour économiser la bande passante locale == | ||
* installer l'ide arduino >= 1.6.8 [https://www.arduino.cc/en/Main/Software] | * installer l'ide arduino >= 1.6.8 [https://www.arduino.cc/en/Main/Software] | ||
+ | * Fichier|preference|parametres| gestionnaire de cartes supp|http://arduino.esp8266.com/stable/package_esp8266com_index.json | ||
* ajouter l'esp (Outil/type de carte/Gestionnaire de carte/chercher esp8266/ajouter) | * ajouter l'esp (Outil/type de carte/Gestionnaire de carte/chercher esp8266/ajouter) | ||
+ | * sinon, le guithub et le tuto : [https://github.com/esp8266/Arduino] | ||
===== Intro ===== | ===== Intro ===== | ||
Ligne 59: | Ligne 61: | ||
matos qui va bien avec | matos qui va bien avec | ||
- | leds ws2812 | + | * Leds multicolores [[Matos_Ws2812_LedsMulticolores|WS2812]] |
- | relais statique | + | * relais statique |
- | ams117 - regul 3.3V | + | * Regulateur 3.3V [[matos_ams1117|AMS1117]] |
- | stepper driver | + | * Pilote de moteur pas à pas - [[matos_DRV8834|DRV8834]] |
source de matos : Aliexpress, gotronic, adafruit, etc ... | source de matos : Aliexpress, gotronic, adafruit, etc ... | ||
Ligne 80: | Ligne 82: | ||
boites moteur - boites loupiotes - osc | boites moteur - boites loupiotes - osc | ||
Ouvre porte garage - relais std. | Ouvre porte garage - relais std. | ||
- | Trouble - 200 esp, fabrique de carte (Topo Gui) | + | Trouble - 200 esp, fabrique de carte (Topo Guillaume) |
- | Adler - pilote steppers - (Topo Gui) | + | Adler - pilote steppers - [http://wiki.3615senor.org/doku.php?id=projet_adler] |
== Spécificités logicielles (diff avec les autres machins) == | == Spécificités logicielles (diff avec les autres machins) == | ||
Ligne 182: | Ligne 184: | ||
* **"x14x"J** : la ou les cibles des instructions OSC émises par l'ESP. Doivent être entre guillemets. La commande **"BEN_051"J** définira comme cible l'ESP qui a le nœud 51. Si les deux ESP (l'actuel et la cible) ne sont pas connectés au même réseau local, il faudra connecter l'un des ESP au réseau de l'autre (voir les deux instructions précédentes). La commande **"BEN_*"J** enverra l'instruction à tous les ESP. La commande **"BEN_1*"J** enverra l'instruction à tous les ESP ayant un numéro de noeud compris entre 10 et 19. | * **"x14x"J** : la ou les cibles des instructions OSC émises par l'ESP. Doivent être entre guillemets. La commande **"BEN_051"J** définira comme cible l'ESP qui a le nœud 51. Si les deux ESP (l'actuel et la cible) ne sont pas connectés au même réseau local, il faudra connecter l'un des ESP au réseau de l'autre (voir les deux instructions précédentes). La commande **"BEN_*"J** enverra l'instruction à tous les ESP. La commande **"BEN_1*"J** enverra l'instruction à tous les ESP ayant un numéro de noeud compris entre 10 et 19. | ||
* **"x14x"yyK** : nous définissons ici l'instruction qui sera envoyée à l'ESP cible définit précédemment. L'instruction sera envoyée lorsque la pin D5 sera reliée au ground (typiquement un switch). L'instruction en elle même prends place entre les guillemets et peut être longue de 14 caractères. Elle sera de l'un des types marqué ci-après comme //Actions// et **sera précédée d'un underscore**. **yy** correspond à l'état du switch: 01 = pushed, 02 = released. Ex: la commande **"_104O"01K** veut dire: envoyer à l'ESP définit par la commande J de passer sa pin 4 à l'état haut lorsque la pin D5 est reliée au ground. Plus clairement, un switch relié à la pin D5 d'un ESP allumera une led branchée sur la D4 d'un autre ESP. | * **"x14x"yyK** : nous définissons ici l'instruction qui sera envoyée à l'ESP cible définit précédemment. L'instruction sera envoyée lorsque la pin D5 sera reliée au ground (typiquement un switch). L'instruction en elle même prends place entre les guillemets et peut être longue de 14 caractères. Elle sera de l'un des types marqué ci-après comme //Actions// et **sera précédée d'un underscore**. **yy** correspond à l'état du switch: 01 = pushed, 02 = released. Ex: la commande **"_104O"01K** veut dire: envoyer à l'ESP définit par la commande J de passer sa pin 4 à l'état haut lorsque la pin D5 est reliée au ground. Plus clairement, un switch relié à la pin D5 d'un ESP allumera une led branchée sur la D4 d'un autre ESP. | ||
- | * La même formule que précédemment permettra d'envoyer des commandes via OSC à la cible lorsque une valeur analogique est modifiée sur la pin ADC. Il faudra cette fois utiliser la terminaison 03K (au lieu de 02K ou 01K). Grâce à un jeu de majuscules et de minuscules, il est possible de transformer la valeur analogique récupérée en valeurs RVB par exemple. Mais là Crab doit me réexpliquer, je ne me souviens plus du tout. :) si la valeur ADC est 1234, XxXxx se transformera en 12123, XxxxX en 12341, XxXx70 en 121270. | + | * La même formule que précédemment permettra d'envoyer des commandes via OSC à la cible lorsque une valeur analogique est modifiée sur la pin ADC. Il faudra cette fois utiliser la terminaison 03K (au lieu de 02K ou 01K). Grâce à un jeu de majuscules et de minuscules, il est possible de transformer la valeur analogique récupérée en valeurs RVB par exemple. Si la valeur ADC est 1234, XxXxx se transformera en 12123, XxxxX en 12341, XxXx70 en 121270. |
* **xxxP** : correction de la puissance d'émission. | * **xxxP** : correction de la puissance d'émission. | ||
* **xxxm** : sauf erreur, uniquement utile en utilisation de spectacle, car seuil de déclenchement. | * **xxxm** : sauf erreur, uniquement utile en utilisation de spectacle, car seuil de déclenchement. | ||
* **xxxxF** : fonction perso, par exemple 0001F 'clique' le relais pour ouvrir la porte du garage. | * **xxxxF** : fonction perso, par exemple 0001F 'clique' le relais pour ouvrir la porte du garage. | ||
- | * **ccnnxxxxf** : no idea | + | * **ccnnxxxxf** : pour le développeur |
//ACTIONS// | //ACTIONS// | ||
- | * **yyxxxxS** : permet de contrôler un servo, branché sur la pin indiquée plus bas sur la page (Servo pins:{ , }). Ce paramètre doit se définir à la compilation. yy est le numéro du moteur xxxx la valeur à atteindre L'idée est d'indiquer un position à atteindre. Le timing est donné par l'instruction suivante. | + | * **yyxxxxS** : permet de contrôler un servo, branché sur la pin indiquée plus bas sur la page (Servo pins:{ , }). Ce paramètre doit se définir à la compilation. yy est le numéro du moteur, xxxx la valeur à atteindre. Le timing est donné par l'instruction suivante. |
- | * **yyxxxxl** : définit le temps pour atteindre la position définie par S, juste au dessus. Ex: ?? (yy est le numéro du moteur) | + | * **yyxxxxl** : définit le temps pour atteindre la position définie par S, juste au dessus. yy est le numéro du moteur). |
- | * **rrggbbnnL** : permet de contrôler un ruban de led RGB type Neopix. Les valeurs RGB sont proposées de 1 à 99, les nn indiquent l'id de la led (position sur le ruban). Branchement du neopix? | + | * * **rrggbbnnL** : permet de contrôler un ruban de led RGB type Neopix. Les valeurs RGB sont proposées de 1 à 99, les nn indiquent l'id de la led (position sur le ruban). Branchement du neopix à ajouter. |
* **xxxxW** : pause de xxxx millisecondes. | * **xxxxW** : pause de xxxx millisecondes. | ||
* **xnnO** : permet de passer un pin digital à l'état haut (si x vaut 1) ou bas (x vaut 0). nn correspond au numéro de la pin. | * **xnnO** : permet de passer un pin digital à l'état haut (si x vaut 1) ou bas (x vaut 0). nn correspond au numéro de la pin. | ||
Ligne 198: | Ligne 200: | ||
Suivent un certain nombre d'informations relatives aux réglages: état du switch, de la connection wifi, adresse ip, cycles de l'eeprom, infos sur les moteurs. | Suivent un certain nombre d'informations relatives aux réglages: état du switch, de la connection wifi, adresse ip, cycles de l'eeprom, infos sur les moteurs. | ||
+ | [[https://github.com/CrabTerlDc/TroubleEsp]] | ||
+ | ht |