Boot Wemos D1

Hello.
J'ai très peu de temps ce midi, j'écris ce post en speed suite à un problème rencontré hier soir.
Je suis passé sur un wemos D1 mini que je connais très peu; et j'ai eu ce souci:
Je souhaite commander un relai par la broche D4.
J'ai donc fait un branchement "standard" avec un NPN comme suit (désolé, pas de schéma sous le coude mais c'est du classic):
+5v ----> bobine relai ---> NPN ----> masse.
La base du TR est connecté par une résistance à D4.

Le wemos est connecté en +5v par sa broche +5v.

Le souci: il ne boot pas.

Par contre, il démarre si je branche l'alim sans connecter D4, et ensuite si je connecte D4 à la base du TR, le relai fonctionne correctement une fois que le wemos a fini de booter.

Why ? :-s

PS: SVP, need solution ou explication avant 16h; et en + je suis surbooké tout l'aprem; donc si quelqu'un connait bien le wemos et qu'il a un début de soluce ou de solution... Thanks :wink:

Je sais que c'est pas la politique ici de donner des soluces toute cuite dans le bec mais bon ^^ là je suis dans la "merde" lol

info sup: au boot, sur la liaison série, si D4= connecté, j'ai en 74880 baud ceci:
exception (0):
epc1=0x40100000, epc2=0x00000000, epc3=0x00000000, excvaddr=0x00000000, depc=0x00000000

et ceci en boucle.

Bonjour

Quand on est pressé il vaut mieux aller chercher l'info là où elle est à disposition en permanence ... sans attendre le passage sur le forum d'un intervenant !!

Le Wiki Wemos , sur la page de la D1 mini t'aurait indiqué que la borne D4 correspond au GPIO2
et qu'un pull up de 10 kOhm est en place sur la carte.

Une recherche sur les conditions de boot d'un ESP8266 (très nombresuse pages sur ce sujet) t'aurait montré que pour booter sur ma mémoire flash il faut , entre autres, que GPIO2 soit à l'état HAUT

ta résistance de base mets D4(GPIO2) à l'état bas, boot sur mémoire Flash impossible !!

GPIO0, GPIO2 et GPIO15 sont à 'laisser tranquille ' sauf moyens appropriés et acceptation des conséquences sur l'état initial imposé pour permettre le boot sur Flash

Merci !
Disons que je suis sur tél portable, qui n'est pas optimisé pour aller lire les docs :-/
Pour ça que je suis venu ici demander le pourquoi de la chose !
Un grand merci pour cette info qui me "sauve" :slight_smile:

Après reflexion, ça va me poser souci...

J'ai inversé certaines PIN du coup et mis D4 en entrée (j'ai plus que ça de dispo, tout est prit...)

Dessus sera connecté un switch, qui pourra des fois être fermé à la mise sous tension.

Donc partant de ce constat:

  • Necessaire de faire un PULLUP sur l'entrée D4 (et D3 aussi d'après ce que j'ai vu).
  • Le digitalRead devra lire un changement d'état vers LOW.

SAUF QUE... Je ne peux relier la borne commun du switch sur le GND, vu que il se peut que le contact soit fermé au boot. Il est necessaire de relier cette borne au +. Mais le PULLUP va me bloquer ce changement d'état.
Il faut donc faire un PULLDOWN sur cette broche, MAIS dans ce cas, le wemos ne va pas booter en mode normal....

Je m'arrache le peu de cheveux qu'il me reste, vous moquez pas :smiley:

Là je sèche...

Bonsoir,
Je commande des relais sans soucis avec le port D4 sur les wemos D1.

Et pour palier à ce problème de niveau sur D4 au boot, j'utilise un transistor avec une grande impédance d'entrée.

Et là je t'entends dire ben ouais je vais utiliser un .....

Je sais pas, j'utilise des 2N4401.
Je vais chercher dans mes tiroirs voir ce que je trouve :slight_smile:

Tiens tant qu'à faire... Je vais pas ouvrir de nouveau sujet mais.... question à deux balles ^^

Y a un buzzer connecté sur D6.
Ca fait des czzziiiikkkk czzziiiiiikkkk dedans (un peu comme des parasites de tél portable, mmmmm'voyez dirait monsieur Garisson dans South Park.... ok référence pourrie ^^ )

Défaut de conception ? Normale ? ou ... carte chinoise powa ? :stuck_out_tongue:

Bon ben voici la bonne réponse.
Pour commander un relais par le pin D4, il faut utiliser un mosfet N type 2N7000 par exemple.