WebServer étrange
-
Ok, effectivement je n'avais pas vu ça de cette manière, le stockage du nom et de la valeur. Il faut dire que mes notions de C remontent maintenant à quelques années. Donc pas simple de s'y remettre. Vu que je n'ai fait quasiment que du Web depuis 10 ans.
Merci pour l'info et en prime, ça t'a donné une idée sur ce qui pourrait déconnerJe suis en train d'intégrer les Websockets dans le code du Remora en ce moment, donc je ferai ces tests là un peu plus tard.
D'ailleurs, j'avais vu sur le dépôt de me-no-dev qu'il gère aussi le JSON, c'est vraiment trop fort, bientôt il nous préparera le café et viendra nous le servirJ'ai créé une branche spécifique pour l'intégration des websockets, donc on pourra échanger si tu veux.
Je suis vraiment fan de ce projet et il y en a un autre qu'y a attiré mon attention ULPNode.
-
@AuFilElec
Ouais j'avais intégré aussi les WebSockets dans WifInfo, mais l'ancienne version (pas async) et j'ai du tout rechangé (web server aussi) car c'est maintenant intégré au Async, mais c'est bon le boulot est fait maintenant, au moins j'aurais plus ça à faire.Pour le Bug, je pense j'ai trouvé un truc pour faire un align ici avec
xPortWantedSizeAlign()
le code suivant modifié dans
LibTeleinfo.cpp
devrait fonctionner, à tester// Our linked list structure sizeof(ValueList) // + Name + '\0' // + Value + '\0' size_t size ; #ifdef ESP8266 lgname = xPortWantedSizeAlign(lgname+1); // Align name buffer lgvalue = xPortWantedSizeAlign(lgvalue+1); // Align value buffer // Align the whole structure size = xPortWantedSizeAlign( sizeof(ValueList) + lgname + lgvalue ) ; #else size = sizeof(ValueList) + lgname + 1 + lgvalue + 1 ; #endif // Create new node with size to store strings if ((newNode = (ValueList *) malloc(size) ) == NULL) return ( (ValueList *) NULL );
Quand tu veux pour échanger, au contraire, ce sera avec plaisir et sur tous les sujets, puis ton interface des zones c'est cool, j'aimerais trop l'intégrer
-
C'est avec grand plaisir que je partage mon travail, si il peut servir à d'autres, c'est le principe de l'open source.
Si tu veux, je vais mettre ça au propre et je t'envoie une pull request sur ton dépôt.Je galère un peu avec l'intégration du JSON avec l'utilisation des websockets, mais ça va venir. Je m'occuperai du problème de télé-info après, car j'ai hâte d'avoir les websockets en place
-
ça j'ai et fonctionnel en plus (Json, WebSocket, Console et Async)
Je release pas pour le moment, mais je peux t'envoyer le code, en plus c'est le même format que WifiInfo et remora alors si tu peux t'en inspirer pour le coller dans le remora, au contraire on restera cohérent et l'intégration sera bien plus facile
Si tu le gardes pour toi pour le moment je t'envois les sources...
-
Ok, c'est cool. Je le garderai bien au chaud et cela m'économisera des heures de boulot.
-
Je viens de créer un private repo github (depuis le temps que j'en avais besoin aussi)
si tu me donnes ton compte github je t'ajoute sur le repo -
Je viens de publier un correctif potentiel dans la librairie téléinfo pour les problèmes d'étiquettes erronées, quelqu'un peut tester et me faire un retour ?
Tout est sur le repo dédié -
Salut @Charles ,
Je suis à 2 jours et 7 heures d'uptime, je vais attendre encore un peu pour voir les logs lorsqu'il se mettra à planter, si je peux tirer quelque chose. La dernière fois, il a planté après 2 jours et 14 heures.
Ensuite je passe ton correctif pour tester et je te tiens au courant, mais faudra encore attendre au minimum 2 jours, voir une semaine d'après ce que disait @Fab_33 .
-
Salut @Charles ,
Je voulais savoir un truc, dans le projet Remora, il y a la lib
LibLibTeleInfo
qui est un fichier en dur dans le projet. N'est'il pas mieux de mettre la lib direct dans les libraries de l'IDE Arduino et d'y faire appel dans le projet Remora ?Sinon, mon Remora en est à 3 jours et 8 heures et la télé-info est toujours OK. Ce que je ne comprends pas dans les problèmes d'alignement dont tu parlais, c'est que si il y a ce problème, il devrait intervenir de suite, pourquoi apparaîtrait'il après plusieurs jours ?
Le problème d'alignement est bien un décalage de byte dans le registre mémoire ?Pour les corrections JS dont je t'ai parlé hier, je vais attendre que tu bascules sur le fichier
main.js
pour te proposer les modifications, cela m'évitera une gymnastique comme l'autre jour -
Moi le problème est ttoujours le même. Au bout d'un certain temps la requête http://IP/tinfo me renvoie juste }"
-
Et bien, pour le moment, la Remora a un uptime de
5 days 8 hours and 20 minutes
et la télé-information est toujours OK. J'attends encore jusqu'à la fin de la semaine avant de tester les modifications de @Charles . -
@AuFilElec
Ah yes t'as raison la vache j'avais oublié ça, dans remora il prend liblibteleinfo donc les modifs sur la lib originale ne sont pas appliquées puisqu'elle n'est pas prise en compte (c'est corrigé je viens de pusher la nouvelle LibLibTeleinfo sur remora_soft), donc sur remora les modifs étaient inefficaces.
D'ailleurs, je songe très sérieusement à arrêter le support de Particle dans remora, le code devient ingérable (preuve en est) et illisible. En plus pas de serveur WEB sur Particle (enfin un vrai, simple) et Cloud dépendance, bref, ya pas photo...
Bien sur j'aimerais bien qu'il prenne la lib dans le dossier librairie de l'IDE Arduino, et il le fait (l'ESP), sauf que Particle il sait pas faire. Il n'y a pas de possibilité de dossier lib pour cette merde d'environnement (mince, je l'ai dit ?!?!, rohhhhh) J'ai la même punition pour la librairie radio RadioHead !!!!
Pourquoi pas au démarrage, bonne question tu as raison, peut être qu'il fait des garbage collector plus tard et déplace les infos ?
@Fab_33, normal nous sommes sur le pb des étiquettes erronées pour le moment, chaque chose en son temps -
@Charles
Tout à fait d'accord avec toi concernant le maintien du spark core. C'est une galère lors de la lecture du code.
En plus, je hais le photon, après en avoir acheté un, un test réussi et après deux mois de tiroir, plus moyen de le faire fonctionner.
Par contre, pour les modifs (gestion des zones), tu ne les as pas déployées dans le répertoiredata
.
Après 6 jours et plusieurs heures, j'ai eu une erreur dans la télé-information. Mais rien de pertinent dans les logs. -
J'ai eu mes heures de galère avec Spark/Photon des AM entiers pour arriver à les reprogrammer et à chaque modif de firmware, plus les API qui changent !!!
Heuuu, normalement la gestion des zones est bien déployée non? J'ai regénéré, au cas ou effectivement le index.htm.gz est différent, et j'ai ajouté la police jeedom, un oubli.
C'est mieux ?
-
Pour ma part, j'ai lâché l'affaire après deux journées sans réussite avec le Photon.
Le problème du répertoire
data
devait venir de ma branche qui n'a pas du se mettre correctement à jour.Je t'ai envoyé 3 PR pour les petites corrections que j'ai apporté pour le fonctionnement du Remora.
-
@Charles
Aurais-tu une idée pour la réalisation d'un testeur d'ordres pour fil pilote ?J'aimerai bien me faire un outil pour vérifier les ordres reçus sur un fil pilote, en utilisant un Wemos ou NodeMCU, pour m'éviter des allers retours dans les maisons.
-
C'est chaud car il te faut le neutre du convecteur, le pilote sans ça n'a plus de référence.
Je dirais un convecteur pas cher avec LCD et tu récup la partie affichage FP
-
Pas de soucis pour le neutre, car je déconnecterai le radiateur.
Effectivement, j'avais bien pensé au radia avec afficheur LCD, mais j'étais plus d'en l'idée du DIY.
On trouve pas mal de docs sur la partie fil pilote côté émetteur, mais rien côté récepteur.
-
J'ai uploadé les dernières mises à jour samedi 14/05. Pour le moment, tout va bien, mais je vais attendre encore quelques jours avant de faire un retour concret.
Sinon, j'adore la gestion des zones, c'est super pratique
-
Salut @Charles
Voici une semaine que le Remora fonctionne avec les modifications de la lib teleinfo et tout fonctionne nickel. Il semblerait que tu as trouvé le fin mot de l'histoire.