Je suis nouveau sur forum et je suis entrain de me faire un distributeur à croquettes.
Pour le moment je m'attaque à la partie électronique. Du coup j'utilise un ESP32 (j'en ai en RAB) des relais alim etc pour piloter un moteur. L'ESP32 est connecté au WIFI et j'utilise Blynk IOT pour contrôler à distance mon ESP.
Le problème est que lorsque je démarre ou redémarre mon ESP (après coupure de courant par exemple, mes relais s'enclenche tout de suite. Malgré des états LOW sur Blynk IOT.
A-t-on la possibilité de forcer la valeur à LOW sur l'ESP ?
Regarde de plus près la documentation "autour" des ESP32.
Il me semble bien avoir lu qu'au démarrage du micro certaines pins sont tirées à la masse, d'autres à Vcc et d'autres sont en mode entrée haute impédance.
Merci pour vos réponses. Je vais voir la documentation de mon ESP32.
Je n'ai pas la référence de mon relais. C'est un relais standard acheté sur Amazon. Mais je pense que ça vient du ESP.
Les bornes NO sont normalement ouvertes lorsque il n'y a pas de pilotage. Donc mon ESP envoie bien une info pour le faire activer.
J'essaie tout ça des que possible et vous donne des nouvelles.
Pas forcément, il se peut aussi que au, démarrage, les sorties de l'ESP soient dans un état dit "en l'air" ou haute impédance, ce qui est considéré, en logique à un 1 ou HIGH. Comme tes relais tirent avec un HIGH...
On peut parer à ce problème en mettant une résistance de PULL-DOWN de 10k afin de forcer un LOW avant ou pendant le démarrage de l'ESP.
J'ai lu la documentation et il semblerais que les PINs 1, 3, 5, 6-11, 14, 15 soit en HIGH au boot.
Et il est écrit qu'on doit faire attention au pin 0, 2, 4, 5,12, 15.
De mémoire je pilote les PINs 2 et 4. Je vais changer mon code et voir le problème persiste.
Il y aussi une facon de proceder qui fonctionne bien avec un avr, qui doit être vérifiée avec un ESP32 qui est un micro 32 bits transilica "à terminer" par le client (le client de transilica est Espressif).
La fontion pinMode(xxx, OUTPUT) n’est qu’un aiguillage entre les circuits électroniques d’entrée et ceux de sortie du GPIO.
Il est donc possible de faire un digitalWrite(xxx, valeur_qui_va_bien) avant de faire un pinMode(xxx, OUTPUT).
La valeur écrite ne sera disponible sur la pin de sortie qu’après le pinMode.
Avec un ESP32, il faut s’assurer que cela fonctionne comme sur micro classique.
Le mieux est quand même d’eviter d’utiliser les straping pins chaque fois que c’est possible.