Avant toute chose merci de (re)prendre connaissance de la charte et de la respecter.
Pour résumer :
- Avant de poser une question, je cherche si la réponse existe
- Je suis poli, courtois et je respecte tout un chacun sur le forum
- Si un post m'agace : je m'en éloigne plutôt que de répondre d'une façon qui pourrait être mal interprétée


Il n'est jamais du luxe que de rappeler des choses simples :
Courtoisie, amabilité, politesse et bonne humeur sont les maîtres mots pour un forum sympathique, bienveillant et accueillant :)

Toute la communauté vous remercie

Update OTA au boot

Répondre
Avatar de l’utilisateur
fensoft
Actif
Messages : 960
Inscription : 07 mai 2015, 11:26

Update OTA au boot

Message par fensoft » 14 oct. 2017, 14:06

Bonjour à tous,

Je compte convertir différentes fonctions que j'ai codé ces dernières années pour des ESP8266 et intégrer le tout à ESPEasy et jeedom.

En particulier:
- un serveur udp pour refresh des neopixel, exemple:
Image

- un driver wiegand pour récupérer les touches et le RFID de ce genre de keypad lowcost (15€):
Image

- une update OTA au boot, on précise l'ip d'un serveur d'image comme sur ce screen: Image
La page enverra le firmware en fonction de l’adresse mac du wifi (en fonction de la taille de la flash ou de la version du firmware voulue)

En particulier pour le dernier je vais devoir modifier un peu ESPEasy mais surtout le plugin pour "servir" les images.
@lunarok: une telle modif te semble-t-elle ok (via pull request) ou préfère-tu que je fork ?

Merci !
fensoft
Coin!
Thermostat lowcost MaxCube DataTransfert (upload vers cloud)
Développeur embarqué (rtos/drivers linux/c/xilinx/atmel/pic/arm/mips), système (linux,docker,qnx), scientifique (c++/python/mongodb), web (php/mysql), webservices (java/nodejs)

Avatar de l’utilisateur
fensoft
Actif
Messages : 960
Inscription : 07 mai 2015, 11:26

Re: Update OTA au boot

Message par fensoft » 17 oct. 2017, 10:10

Up ! Lunarok ? Un avis ?

Pour rappel: plutôt que de pousser le firmware OTA vers l'ESP je veux faire un plugin ESPEasy qui va les tirer à partir d'un serveur spécifié.
Besoin donc que je code quelquechose dans le plugin jeedom pour faire le serveur de firmware.
J'ai aussi prévu que les images servies par le "serveur OTA" soient des images TRES personnalisée (idéalement on peux choisir la liste des plugins ESPEasy à intégrer à l'image - pratique si on tourne sur des chip de 1mega où la place est limitée si on veux faire des update OTA)

Je compte tout faire, je voulais juste un avis avant de tenter un pull-request.

J'ai déja commencé à bosser sur un builder de firmware pour linux:
https://github.com/fensoft/ESPEasy_builder
Dernière édition par fensoft le 17 oct. 2017, 17:36, édité 2 fois.
Coin!
Thermostat lowcost MaxCube DataTransfert (upload vers cloud)
Développeur embarqué (rtos/drivers linux/c/xilinx/atmel/pic/arm/mips), système (linux,docker,qnx), scientifique (c++/python/mongodb), web (php/mysql), webservices (java/nodejs)

alcor_fr
Timide
Messages : 341
Inscription : 29 juil. 2014, 11:48

Re: Update OTA au boot

Message par alcor_fr » 17 oct. 2017, 16:16

Bonjour

Je ne vais pas pouvoir t'aider et j'avoue que j'ai pas tout compris mais c'est normal ;)

Par contre, tu vas certainement en interresser plus d'un dont moi :)
ici:viewtopic.php?f=185&t=30574

Avatar de l’utilisateur
fensoft
Actif
Messages : 960
Inscription : 07 mai 2015, 11:26

Re: Update OTA au boot

Message par fensoft » 17 oct. 2017, 17:27

ah ben wiegand est déja intégré à ESPEasy, parfait :D

https://www.letscontrolit.com/wiki/index.php/Wiegand-26

je modifierais certainement le code intégré pour prendre en compte le clavier tel que je l'utilise actuellement
Coin!
Thermostat lowcost MaxCube DataTransfert (upload vers cloud)
Développeur embarqué (rtos/drivers linux/c/xilinx/atmel/pic/arm/mips), système (linux,docker,qnx), scientifique (c++/python/mongodb), web (php/mysql), webservices (java/nodejs)

Avatar de l’utilisateur
fensoft
Actif
Messages : 960
Inscription : 07 mai 2015, 11:26

Re: Update OTA au boot

Message par fensoft » 18 oct. 2017, 22:22

avancement des travaux:
- j'arrive a build sélectivement un FW (0 plugins pour tester)
- j'arrive à faire des updates OTA manuelle/post-boot avec ce même firmware (fonctionne sur version 1 mega puisque Sketch Size/Free: 387 kB / 488 kB). en gros tant que le FW ne dépasse pas 436kB, on peux continuer à faire des updates OTA ! (pas le cas de la version par défaut)

ne reste plus qu'a mettre vraiment les mains dans le cambouis maintenant !
Coin!
Thermostat lowcost MaxCube DataTransfert (upload vers cloud)
Développeur embarqué (rtos/drivers linux/c/xilinx/atmel/pic/arm/mips), système (linux,docker,qnx), scientifique (c++/python/mongodb), web (php/mysql), webservices (java/nodejs)

Avatar de l’utilisateur
fensoft
Actif
Messages : 960
Inscription : 07 mai 2015, 11:26

Re: Update OTA au boot

Message par fensoft » 24 oct. 2017, 12:11

avancement des travaux:
- j'ai un webservice qui permet de checkout, configurer et build des images en synchrone ou asynchrone

on peux configurer:
- la version d'arduino
- la version du sdk esp8266
- la version d'espeasy et espeasy_playground
- la liste des controlleurs, plugins et notification (fichiers en _C _P et _N)
- la taille de la flash
Coin!
Thermostat lowcost MaxCube DataTransfert (upload vers cloud)
Développeur embarqué (rtos/drivers linux/c/xilinx/atmel/pic/arm/mips), système (linux,docker,qnx), scientifique (c++/python/mongodb), web (php/mysql), webservices (java/nodejs)

Avatar de l’utilisateur
Seki
Timide
Messages : 156
Inscription : 06 sept. 2017, 21:50

Re: Update OTA au boot

Message par Seki » 24 oct. 2017, 12:35

En gros, ça permet de générer des fichiers bin à flasher dans les esp ou j'ai rien compris ?

Envoyé de mon GT-I9100 en utilisant Tapatalk


Avatar de l’utilisateur
fensoft
Actif
Messages : 960
Inscription : 07 mai 2015, 11:26

Re: Update OTA au boot

Message par fensoft » 24 oct. 2017, 12:47

c'est exactement ça. le but final: que le bin soit spécifique à un seul ESP et soit reflashé au boot de l'esp si besoin
Coin!
Thermostat lowcost MaxCube DataTransfert (upload vers cloud)
Développeur embarqué (rtos/drivers linux/c/xilinx/atmel/pic/arm/mips), système (linux,docker,qnx), scientifique (c++/python/mongodb), web (php/mysql), webservices (java/nodejs)

Avatar de l’utilisateur
Seki
Timide
Messages : 156
Inscription : 06 sept. 2017, 21:50

Re: Update OTA au boot

Message par Seki » 24 oct. 2017, 13:02

Cool. :)
Vu que l'essentiel de ma future installation domestique sera en esp, ça m'intéresse.

Par contre, suite à un flash, l'esp ne perd pas la conf wifi ?
L'autre jour, j'ai compilé un firmware modifié et après flashage, l'esp était revenu avec sa conf par défaut. Bon, par manque de temps, je n'ai pas creusé d'avantage ce point.

Avec ce que tu développes, y aura t il moyen de faire des backup automatique des esp, et est ce envisageable toujours d'ailleurs ?

Envoyé de mon GT-I9100 en utilisant Tapatalk


Avatar de l’utilisateur
fensoft
Actif
Messages : 960
Inscription : 07 mai 2015, 11:26

Re: Update OTA au boot

Message par fensoft » 24 oct. 2017, 13:03

Tant que tu garde la même config de flash, tu perds pas tes paramètres.
Coin!
Thermostat lowcost MaxCube DataTransfert (upload vers cloud)
Développeur embarqué (rtos/drivers linux/c/xilinx/atmel/pic/arm/mips), système (linux,docker,qnx), scientifique (c++/python/mongodb), web (php/mysql), webservices (java/nodejs)

Avatar de l’utilisateur
fensoft
Actif
Messages : 960
Inscription : 07 mai 2015, 11:26

Re: Update OTA au boot

Message par fensoft » 24 oct. 2017, 13:04

Config = par exemple 1M128 ou 4M1M
Coin!
Thermostat lowcost MaxCube DataTransfert (upload vers cloud)
Développeur embarqué (rtos/drivers linux/c/xilinx/atmel/pic/arm/mips), système (linux,docker,qnx), scientifique (c++/python/mongodb), web (php/mysql), webservices (java/nodejs)

jax24fr
Actif
Messages : 733
Inscription : 24 juil. 2014, 22:41

Re: Update OTA au boot

Message par jax24fr » 24 oct. 2017, 13:57

Salut Fensoft, je suis désolé mais j'ai beau relire tes explications et je ne comprends pas où tu veux en venir :(
Je n'y connais rien en codage etc mais je m’intéresse a tout ce que je ne comprends pas ^^ et la je comprends pas
Matos :
DIY DEBIAN 8 (PROXMOX sous N54L) Jeedom

Avatar de l’utilisateur
lunarok
Actif
Messages : 9418
Inscription : 08 août 2014, 12:48
Localisation : Anjou

Re: Update OTA au boot

Message par lunarok » 24 oct. 2017, 14:39

Et avant de voir à compiler du custom espeasy, tu as fait une proposition de PR à l'équipe pour que ca soit ajouter à la version espeasy ?
Mon Blog | Xiaomi Home
Pour contribuer au développement des plugins (don ou achat de matériel) : Paypal
Aides nous à t'aider : les logs, détails du soucis, la doc, recherche sur le forum ...
PS : pas de support par MP, je ne répondrais pas

Avatar de l’utilisateur
fensoft
Actif
Messages : 960
Inscription : 07 mai 2015, 11:26

Re: Update OTA au boot

Message par fensoft » 28 oct. 2017, 23:56

tout sera intégré à espeasy, oui. les PR ne vont faire qu'une 50aines de lignes (ils ont l'air plutôt compréhensif et cool sur ce point). sinon, fork ;)
Coin!
Thermostat lowcost MaxCube DataTransfert (upload vers cloud)
Développeur embarqué (rtos/drivers linux/c/xilinx/atmel/pic/arm/mips), système (linux,docker,qnx), scientifique (c++/python/mongodb), web (php/mysql), webservices (java/nodejs)

Avatar de l’utilisateur
fensoft
Actif
Messages : 960
Inscription : 07 mai 2015, 11:26

Re: Update OTA au boot

Message par fensoft » 29 oct. 2017, 01:31

jax24fr a écrit :
24 oct. 2017, 13:57
Salut Fensoft, je suis désolé mais j'ai beau relire tes explications et je ne comprends pas où tu veux en venir :(
Je n'y connais rien en codage etc mais je m’intéresse a tout ce que je ne comprends pas ^^ et la je comprends pas
firmware (code contenu dans l'esp) sur mesure en fonction des besoin (tu choisi parmis la 100aines de plugins ceux que tu veux dans le firmware de ton esp) + OTA au boot (=mise à jour automatique en wifi au démarrage de l'esp)
Coin!
Thermostat lowcost MaxCube DataTransfert (upload vers cloud)
Développeur embarqué (rtos/drivers linux/c/xilinx/atmel/pic/arm/mips), système (linux,docker,qnx), scientifique (c++/python/mongodb), web (php/mysql), webservices (java/nodejs)

Avatar de l’utilisateur
fensoft
Actif
Messages : 960
Inscription : 07 mai 2015, 11:26

Re: Update OTA au boot

Message par fensoft » 29 oct. 2017, 01:39

avancement des travaux:
- modification d'EasyESP pour ajouter l'update OTA http au boot (voir http://esp8266.github.io/Arduino/versio ... ttp-server)
- le webservice python peux maintenant fournir les firmware à l'ESP pour update http au boot
- PR pour supprimer le support SD d'easyESP par défaut (pour gagner 15ko=5% de flash pour une feature inutilisée dans 99% des cas)

on est pas loin d'avoir fini toute la partie non jeedom en gros !
@lunarok: une fois toute la partie non jeedom terminée, tu est ok pour que je PR sur ton plugin jeedom ce genre de feature ? ou te semblent-t-elle inutile et/ou préfère tu que je fork ?
Coin!
Thermostat lowcost MaxCube DataTransfert (upload vers cloud)
Développeur embarqué (rtos/drivers linux/c/xilinx/atmel/pic/arm/mips), système (linux,docker,qnx), scientifique (c++/python/mongodb), web (php/mysql), webservices (java/nodejs)

jax24fr
Actif
Messages : 733
Inscription : 24 juil. 2014, 22:41

Re: Update OTA au boot

Message par jax24fr » 29 oct. 2017, 14:42

fensoft a écrit :
29 oct. 2017, 01:31
jax24fr a écrit :
24 oct. 2017, 13:57
Salut Fensoft, je suis désolé mais j'ai beau relire tes explications et je ne comprends pas où tu veux en venir :(
Je n'y connais rien en codage etc mais je m’intéresse a tout ce que je ne comprends pas ^^ et la je comprends pas
firmware (code contenu dans l'esp) sur mesure en fonction des besoin (tu choisi parmis la 100aines de plugins ceux que tu veux dans le firmware de ton esp) + OTA au boot (=mise à jour automatique en wifi au démarrage de l'esp)
Merci pour ton explication.
J'ai compris et c'est cool ce genre de feature.
Matos :
DIY DEBIAN 8 (PROXMOX sous N54L) Jeedom

Avatar de l’utilisateur
Seki
Timide
Messages : 156
Inscription : 06 sept. 2017, 21:50

Re: Update OTA au boot

Message par Seki » 29 oct. 2017, 18:53

Vivement qu'on puisse tester tout ça.

Envoyé de mon GT-I9100 en utilisant Tapatalk


Répondre

Revenir vers « [Plugin Tiers] ESPEasy »

Qui est en ligne ?

Utilisateurs parcourant ce forum : Aucun utilisateur inscrit et 1 invité