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 | ||
projets:olo_220v:accueil [2020/03/18 11:25] laurent [ESP8266] |
projets:olo_220v:accueil [2020/05/26 08:50] (Version actuelle) resonance [Jeu] |
||
---|---|---|---|
Ligne 3: | Ligne 3: | ||
* Date : 2020 | * Date : 2020 | ||
* Licence : libre ! | * Licence : libre ! | ||
- | * Contexte : | + | * Contexte : Invitation à Bergen by BEK : postponed for coronavirus... |
* Fichiers : lien | * Fichiers : lien | ||
* Lien : lien vers un site éventuellement | * Lien : lien vers un site éventuellement | ||
Ligne 15: | Ligne 15: | ||
===== Jeu ===== | ===== Jeu ===== | ||
+ | |||
Sur une interface representant les differentes lumieres. | Sur une interface representant les differentes lumieres. | ||
On peut enregistrer une sequence en appuyant sur des boutons (ou interface photoresitance) | On peut enregistrer une sequence en appuyant sur des boutons (ou interface photoresitance) | ||
- | | + | |
- | * Si une deuxieme sequence de 3s est ajouté , elle s' | + | |
- | * etc... | + | * Si une deuxieme sequence de 3s est ajouté , elle s' |
Ligne 61: | Ligne 63: | ||
static char* SSID = " | static char* SSID = " | ||
</ | </ | ||
- | Quand leur potentiomètre est au maximum, ils éteignent la lampe en attendant de recevoir des messages OSC | + | Un //nom d' |
- | %%/[hostname]/light [valeur]%% : où %%[hostname]%% | + | <code cpp># |
- | Ils répondent | + | Dès leur connexion au réseau, ils se présenterons |
- | Par défaut les ESP envoient en broadcast, sauf s'il reçoivent l'OSC "/whoIsThere" | + | Si nécessaire, il est possible de flasher les ESP //Over The Air// par le port 8266. |
- | + | <==== Interface web ==== | |
- | ==== Interface web ==== | + | |
Un Raspberry Pi est utilisé pour servir une interface web via un script python3 utilisant //flask// et // | Un Raspberry Pi est utilisé pour servir une interface web via un script python3 utilisant //flask// et // | ||
- | La déclaration des ESP8266 attendus se fait dans le fichier config.py où il est possible d' | + | La déclaration des ESP8266 attendus se fait dans le fichier |
- | La génération de son côté client se fait par la librairie | + | La génération de son côté client se fait par la librairie |
<code javascript> | <code javascript> | ||
" | " | ||
Ligne 103: | Ligne 104: | ||
==== communication lampes/ | ==== communication lampes/ | ||
+ | Serveur et lampes communiquent en OSC par UDP, le serveur écoute sur le **port 9000** et transmet sur le **port 8000** (donc l' | ||
+ | |||
+ | Liste des messages OSC implémentés : | ||
+ | * **/light** : fixe l' | ||
+ | * //(int) valeur// en pourcent | ||
+ | * ex : /// | ||
+ | * **/ACK** : réponse de l'ESP à ///light//, ce message permet au serveur de vérifier qu'un ordre a bien été reçu par la lampe | ||
+ | * //(int) valeur// en pourcent | ||
+ | * **/fade** : débute un fondu qui s' | ||
+ | * //(int) start// : valeur de début du fondu | ||
+ | * //(int) stop// : valeur attendue en fin de fondu. | ||
+ | * //(int) durée// : durée du fondu en millisecondes. | ||
+ | * ex : /// | ||
+ | * ex2 : /// | ||
+ | * **/ | ||
+ | * //(int) start// : valeur de début du fondu | ||
+ | * //(int) stop// : valeur attendue en fin de fondu. | ||
+ | * //(int) durée// : durée du fondu en millisecondes. | ||
+ | * **/ | ||
+ | * **/myID** : répond au serveur qui enregistrera l'IP de la réponse | ||
+ | * //(str) hostname// nom d' | ||
+ | * **/ | ||
+ | |||
==== communication serveur/ | ==== communication serveur/ | ||
+ | Pour créer un portail captif, on utilise un routeur flashé sous [[https:// | ||
+ | Côté Pi, la communication serveur/ | ||
===== Idées design | ===== Idées design | ||
Idée design tasseau + conserve.. :{{ : | Idée design tasseau + conserve.. :{{ : |