Compteur de j'aime Facebook sur Arduino

Tu as joué avec les paramètres par défaut de la carte, voir si ça changeait quelque chose ?

Pour moi, changer ne serait-ce que l'upload speed avait parfois suffi à résoudre ce problème, 115200 par exemple (et je suis sur mac aussi)

J'ai essayé toutes les vitesses possibles : sans succès : j'ai à chaque fois l'erreur.

La UNO fonctionne ?
As-tu essayé de charger un sketch genre Blink dans la UNO ?
Il faut bien entendu libérer le RESET et débrancher le RX TX de l’ESP01.
Sinon, vérifier les fils.

oui, blink fonctionne très bien !

Normalement, si la broche RESET de la UNO est à la masse, le processeur de la UNO n’initialise pas l’UART donc les pins RX et TX sont libres.
Refais la manip avec l’ESP01.
Vérifie les fils.
Donne un petit coup de reset à l’ESP01 avant de charger.
Normalement une petite LED bleue clignote sur l’ESP01.

Je viens de tester sur un windows. Et là Bim !! le programme est bien uploadé et la scan marche très bien ! Du coup, je reste sans voix...

(deleted)

Après plusieurs essais sur Window, l'upload du programme sur l'esp passe une fois sur 2à en moyenne. Pensez-vous que cela puisse venir des mes câbles? Ce sont ceux de l'arduino stater kit fr (des câbles dupont je crois) qui sont assez fin.

(deleted)

Après plusieurs essais sur Window, l'upload du programme sur l'esp passe une fois sur 2à en moyenne. Pensez-vous que cela puisse venir des mes câbles? Ce sont ceux de l'arduino stater kit fr (des câbles dupont je crois) qui sont assez fin.

Il faut voir si en faisant un reset de l'ESP01 cela se passe mieux.

Quand je charge un ESP01 je le fais avec un FTDI. Mais j'ai deux boutons "RESET" et "BOOT" :

|500x334

Sur ce schéma il y a un peu d'électronique pour provoquer un reset automatique par le DTR du FTDI. N'y prête pas attention. Seuls les deux boutons sont importants.

Le principe est simple : Avec un montage comme celui-ci : - appuyer sur BOOT - appuyer sur RESET - relâcher RESET - relâcher BOOT - lancer le chargement

Dans ton cas, GPIO est déjà à la masse.

Il faudrait câbler un bouton poussoir RESET entre les pins RST et GND de l'ESP01.

Avant de charger appuies un petit coup sur le bouton.

J'ai trouvé comment faire marcher l'upload à chaque fois : Quand l'UNO est alimenté via USB et que donc que le module esp l'est aussi, avant d'uploader le programme, je déconnecte la broche d'alim 3.3V et la reconnecte.

Après je n'ai plus de soucis.

Cool, j'arrive maintenant à appeler ma page web qui me retourne le nombre de fans facebook. Mais un truc me turlupine : Si je comprends bien, le programme, je le balance sur le module ESP et non sur la uno. N'est-ce pas ?

Comment récupérer ensuite la valeur sur la uno et ensuite faire mon mic-mac avec l'afficheur ? C'est la passerelle entre UNO <=> ESP que je ne parviens pas à voir.

Dois-je écrire un nouveau programme, et l'uploader sur la UNO ? Si oui, comment communiquer la valeur récupérée par l'esp à mon arduino ?

J'espère être assez clair (?)

J'ai trouvé comment faire marcher l'upload à chaque fois : Quand l'UNO est alimenté via USB et que donc que le module esp l'est aussi, avant d'uploader le programme, je déconnecte la broche d'alim 3.3V et la reconnecte.

Cela revient à faire un reset de l'ESP01, sans le bouton que je conseillais plus haut.

Dois-je écrire un nouveau programme, et l'uploader sur la UNO ? Si oui, comment communiquer la valeur récupérée par l'esp à mon arduino ?

Il faut passer par une ligne série.

Coté ESP01 envoyer périodiquement la valeur par un Serial.println(), par exemple quand elle change.

Côté UNO lire la ligne série en permanence. Quand des caractères sont disponibles (voir Serial.available), lire ceux-ci dans un buffer. Quand ce caractère vaut '\n' terminer le buffer par un '\0' et l'envoyer à l'afficheur.

Côté UNO il vaut mieux utiliser un SoftwareSerial afin de ne pas mobiliser le Serial hardware, ce qui t'obligerait à débrancher l'ESP01 à chaque chargement de la UNO, et te priverait du terminal.

achappard: Après je n'ai plus de soucis.

:grin:

Mode taquin 8)

Peut etre simplement pour l'instant ? ;)

J'ai lu un peu "en diagonale"

Mais il semblerait que ta manip d'upload au travers du uno expose ton esp8226 (ESP01) à des niveaux excedant ce qui est toléré sur ses GPIO .

Si ça peut te rassurer, c'est comme çà que j'ai "programmé" mon/mes 1er esp8266 (ESP01) :sunglasses:

A l'epoque la doc dispo de chez espressif etait... éparse, succincte et ambigue en ce qui concerne ce point particulier de tolerance V des GPIO.

Je ne me souviens pas en avoir cuit (au moins à cause de çà :smiling_imp: ) , mais ce n'est pas une bonne pratique

Coté ESP01 envoyer périodiquement la valeur par un Serial.println(), par exemple quand elle change.

Côté UNO lire la ligne série en permanence. Quand des caractères sont disponibles (voir Serial.available), lire ceux-ci dans un buffer. Quand ce caractère vaut '\n' terminer le buffer par un '\0' et l'envoyer à l'afficheur.

Du coup c'est bien 2 programmes si je comprends bien. Donc une fois mon programme sur le module ESP01, je peux déconnecter le RST<->GND de l'arduino ? Ouvrir un nouveau programme vierge et le balancer sur l'arduino ?

Je vais regarder les lignes série : je ne connais pas (encore)

hbachetti: Il faut passer par une ligne série.

Coté ESP01 envoyer périodiquement la valeur par un Serial.println(), par exemple quand elle change.

Côté UNO lire la ligne série en permanence. Quand des caractères sont disponibles (voir Serial.available), lire ceux-ci dans un buffer. Quand ce caractère vaut '\n' terminer le buffer par un '\0' et l'envoyer à l'afficheur.

Côté UNO il vaut mieux utiliser un SoftwareSerial afin de ne pas mobiliser le Serial hardware, ce qui t'obligerait à débrancher l'ESP01 à chaque chargement de la UNO, et te priverait du terminal.

ça me semble bien compliqué pour le besoin initial ::) Enfin ça ne l'est peut-être pas..

Mais un ESP avec plus de pins aurait été tout à fait autonome à faire ce que tu souhaites, sans devoir brancher et faire communiquer un Arduino Uno avec un ESP-01

Ou me trompe-je ?

Il est parfaitement possible de communiquer avec un TM1637 avec l'ESP01 seul, apparemment.

Voir mon post #3 : https://github.com/wrightmac/TestInTime/blob/master/ESP01_SimpleClock.ino

TM1637 tm1637(2,0);

Mais il n'y a que deux GPIOs, il ne faudra pas pas avoir d'autres besoins.

@achappard : si cela te tente, cela te permettrait d'aller plus vite. Cela devrait marcher.

si cela te tente, cela te permettrait d'aller plus vite. Cela devrait marcher.

Le soucis c'est que je débute et que je ne vois pas comment alimenter l'ESP sans l'arduino

Je vais continuer de regarder pour faire le 2eme programme.

Tu peux continuer à alimenter l'ESP01 avec la UNO, charger le programme ESP01 avec la UNO. Rien ne s'y oppose. Ensuite tu branches le TM1637 sur l'ESP01 au lieu de le brancher sur la UNO.

J'avoue que je préférerai le faire en avec le SoftwareSerial pour le défi !

A ta guise, donc. Essaie l'autre solution dans un deuxième temps. Elle tiendra beaucoup moins de place.