Go Down

Topic: Une station météo connectée (une de plus, mais...)  (Read 2228 times) previous topic - next topic

lesept

Bonjour
Voici les codes, je ferai quelques messages pour expliquer certaines difficultés. L'archive data.zip contient le répertoire 'data' nécessaire à l'upload des fichiers (icônes, etc) dans la SPIFFS.
A force d'essayer on finit par réussir... Donc, plus ça rate, plus on a de chances que ça marche (proverbe Sharduinok).

lesept

Je profite de la recharge de la batterie pour prendre quelques photos de l'intérieur ;







Pour que rien ne bouge à l'intérieur lorsque l'orientation change, les différents composants (écrans, modules électroniques, PCB, batterie) sont collés au pistolet à colle. Pour faire passer les fils sous le PCB, j'ai installé ce dernier sur des pieds faits avec des entretoises, idem pour la batterie.

Bientôt j'installerai un connecteur micro USB externe pour ne pas avoir à ouvrir le boîtier pour recharger la batterie.

Peut-être que je m'intéresserai aussi à la mise à jour OTA pour parfaire le tout...
A force d'essayer on finit par réussir... Donc, plus ça rate, plus on a de chances que ça marche (proverbe Sharduinok).

icare

Bonjour,
Voici les codes, je ferai quelques messages pour expliquer certaines difficultés. L'archive data.zip contient le répertoire 'data' nécessaire à l'upload des fichiers (icônes, etc) dans la SPIFFS.
J'ai juste survolé le fichier Met...N32.ino pour voir ton remarquable travail, et la question est :
Pourquoi le loop() est vide ?
2B OR NOT(2B) = FF
Arduino 1.0.5 à 1.8.5 + gEdit + Ubuntu 18.04 LTS

lesept

Merci
La loop est vide parce le code n'y rentre jamais. C'est le principe du deep sleep : l'esp se réveille, exécute le setup, fait ce qu'il a à faire et part en sommeil ensuite.
A force d'essayer on finit par réussir... Donc, plus ça rate, plus on a de chances que ça marche (proverbe Sharduinok).

icare

Bonjour 6+1 :)
Merci pour ta réponse.
Effectivement cela s'explique dans ce contexte. Je n'ai aucune expérience du mode mise en sommeil (qu'il soit profond ou non ;)) et il va falloir m'y intéressé un jour.
Pour l'instant, d'une manière général, je pense que c'est une perte de temps ;)
2B OR NOT(2B) = FF
Arduino 1.0.5 à 1.8.5 + gEdit + Ubuntu 18.04 LTS

lesept

A force d'essayer on finit par réussir... Donc, plus ça rate, plus on a de chances que ça marche (proverbe Sharduinok).

logis27

Salut 7
Chouette travail et avec toute la documentation voulue, même une vidéo.
Tu nous gâte.

lesept

Avec plaisir !

Un petit retour d'expérience : la batterie tient près de 4 jours... Pas fameux.
A force d'essayer on finit par réussir... Donc, plus ça rate, plus on a de chances que ça marche (proverbe Sharduinok).

hbachetti

Linux is like a wigwam: no Windows, no Gates, and an Apache inside ...

lesept

En vérité, je n'ai pas osé faire sauter la LED, ayant peur d'abîmer le module. Comme il est soudé sur la carte, si je me plante, je devrai faire une grosse réparation, alors j'ai laissé tomber... et je recharge la batterie.

Mon connecteur micro USB est celui du LOLIN32 et il se trouve dans le boitier : il faut donc que j'ouvre le boitier pour brancher le câble USB de recharge. J'ai acheté un connecteur USB mâle, un femelle et je pensais faire une petite rallonge pour déporter la prise USB en limite du boitier (comme ça se fait couramment).

Je ne l'ai pas fait, car je n'ai pas trouvé comment connecter ces deux prises ensemble : quel fil va sur quelle pin du connecteur. Le vendeur ne m'a pas donné de schéma malgré plusieurs demandes (Aliexpress...). Je ferai ça quand j'aurai du temps. Je pense qu'il faut surtout éviter de mélanger 5V et GND, pour les data +- ça n'a pas d'impact sur la carte si je les intervertis ?
A force d'essayer on finit par réussir... Donc, plus ça rate, plus on a de chances que ça marche (proverbe Sharduinok).

hbachetti

Quote
En vérité, je n'ai pas osé faire sauter la LED, ayant peur d'abîmer le module. Comme il est soudé sur la carte, si je me plante, je devrai faire une grosse réparation, alors j'ai laissé tomber... et je recharge la batterie.
Dommage. Mais il faut un bon fer à souder.
Mais tu gagnerais peu : 1/2 mA probablement.
Tu gagnerais plus à passer le MPU6050 en veille.

La librairie possède une méthode setSleepEnabled().

Pour le micro-USB :



Linux is like a wigwam: no Windows, no Gates, and an Apache inside ...

hbachetti

Sinon, c'est une bonne idée de placer le port USB en bord de PCB, et tu fais une petite ouverture dans le boîtier :



Ici c'est un TP4056, mais avec un ESP32, ça peut se faire aussi.
Pour le prochain projet ...
Linux is like a wigwam: no Windows, no Gates, and an Apache inside ...

lesept

Mais tu gagnerais peu : 1/2 mA probablement.
Tu gagnerais plus à passer le MPU6050 en veille.

La librairie possède une méthode setSleepEnabled()
C'est une bibliothèque compatible ESP32? Et il se réveille lorsqu'il sent un mouvement ?
A force d'essayer on finit par réussir... Donc, plus ça rate, plus on a de chances que ça marche (proverbe Sharduinok).

hbachetti

Là tu en demandes peut-être un peu trop.
Mais au lieu de laisser le MPU6050 éveillé en permanence, tu pourrais réveiller l'ESP32 et le MPU6050 périodiquement.
Que l'affichage dans le bon sens se fasse avec quelques secondes de retard est-il si important ?
Personnellement recharger une batterie toutes les semaines ma gaverait assez vite.
Linux is like a wigwam: no Windows, no Gates, and an Apache inside ...

hbachetti

Tu utilises bien une librairie : #include "MPU6050.h"

Laquelle ?
Linux is like a wigwam: no Windows, no Gates, and an Apache inside ...

Go Up