Bienvenue aux nouveaux arrivants sur FantasPic !

- Pensez à lire les règles durant votre visite, il n'y en a pas beaucoup, mais encore faut-il les respecter .
- N’hésitez pas à faire des remarques et/ou suggestions sur le Forum, dans le but de l'améliorer et de rendre vos prochaines visites plus agréables.
- Vous pouvez regarder votre "panneau de l'utilisateur" afin de configurer vos préférences.
- Un passage par "l'utilisation du forum" est recommandé pour connaître les fonctionnalités du forum.

--- L’équipe FantasPic ---
Forum général sur le langage C !

Modérateur : Jérémy

WIFI3-Click ESP8266 sur Clicker2 18F87J50
paulfjujo
Avatar de l’utilisateur
Expert
Expert
Messages : 2597
Âge : 73
Enregistré en : juillet 2015
Localisation : 01800
Contact :

#1 Message par paulfjujo » mar. 10 mai 2016 17:26

bonjour,

Malgre mes soucis avec l'UART et taille de string > 256, resolus en reecrivant UART1_Write_String..
j'avance un peu..
Mais celà "marchouille" seulement..
surement des problemes de timing par ci par là
bien que j'essaie de m'en affranchir en testant les reponses du WIFI3 ESP8266..
un dialogue sur evenement étant bien plus fiable normalement.
Le ESP8266 peut etre TRES LOQUACE ...
je n'ai pas 100% de fiabilité sur les echanges ... actuellement evalués à 60% :sad:

le reperage d'un string particulier dans le buffer de reception , en particulier le test du STATUS
semble maintenant etre fiable ..
si je recois STAUS=3 => liasion OK
deconnection STATUS <>3 .. j'attends 3 defauts pour stopper, reinitialiser et armer la liaison

De tems en temps, la page web rteste figee , en attente de connection,alors que le status est OK
puis se reactive plus tard tout seul ...

Questions: j'ai mis 10sec pour le parametre rafraichissement de page Web.
L''appli PIC doit elle envoyer la page HTML plus vite ou moins vite que toutes ces 10 secondes. ?

J'ai vu que je devais faire un close pour eviter d'empiler les pages HTML sur l'ecran..
La datasheet du ESP8266 est bien fournie ..mais au niveau de l'organistaion
c'est pas tres top..
Quand aux appli Arduino que j'ai vu .. c'est presque trop simple
Je demande à voir comment cela fonctionne dans le temps (fiabilité des echanges)

Bref, des conseils , tuyaux seraient les bien venus.

Je poste ici , le projet en l'etat avec lequel j'obtiens deja cette (mini) page
pour l'instant unidirectionnelle..
sens PIC -> ESP
donc à suivre ...

Des volontaires ?

ESP8266_WIFI3_page_web_capture_160510.jpg



WiFI3_Serveur_18F87J50_UART1_2_LCD_I2C2_Mai_2016.zip
Vous n’avez pas les permissions nécessaires pour voir les fichiers joints à ce message.
Aide toi, le ciel ou FantasPic t'aidera

WIFI3-Click ESP8266 sur Clicker2 18F87J50
sylvain54
Avatar de l’utilisateur
Amateur
Amateur
Messages : 194
Âge : 51
Enregistré en : août 2015
Localisation : Dans l'est de la France

#2 Message par sylvain54 » mer. 11 mai 2016 11:09

Salut Paul,

Je peux essayer de t'accompagner dans cette aventure :wink: . Laisse moi juste le temps de me faire un petit shield pour adapter un module ESP sur le MikroBus de mon easypic7.

Pour le moment avec un module ESP12 qui tourne en autonomie, je récupère la température d'une sonde DS18B20, la température et l'humidité d'un DHT22, la valeur de la broche ADC. Je compte rajouter via une puce ADC en I2C la mesure de Ph et la mesure de l'ORP (c'est sur cette partie que je travaille actuellement). la différence avec toi ( hormis le langage de programmation) et que j'exporte mes données sur mon serveur (je n'ai pas mis mon ESP en mode serveur) car je veux pouvoir suivre leurs évolutions. J'affiche le résultats sous forme d'un tableau contenant les 20 dernières mesures sur une page web.

Datas.PNG


Les données sont vieilles car l'ESP n'est pas branché pour le moment, mais cela fonctionne :-D Les erreus de datas sur la sonde DS18B20 sont dues à un connecteur qui ne tient pas bien dans la breadboard :wink:
Je pense que le principe est transposable avec un PIC en utilisant les commandes AT

A ++
Vous n’avez pas les permissions nécessaires pour voir les fichiers joints à ce message.

WIFI3-Click ESP8266 sur Clicker2 18F87J50
paulfjujo
Avatar de l’utilisateur
Expert
Expert
Messages : 2597
Âge : 73
Enregistré en : juillet 2015
Localisation : 01800
Contact :

#3 Message par paulfjujo » mer. 11 mai 2016 11:36

bonjour,
et merci Sylvain , pour ton engagement.


et je viens juste de voir ton tableau de mesure recupéré comment , via une page web sur ton PC ?
L'ESP12 serait en server ou client ?
pour moi, le serveur , c'est celui qui delivre les donnees , je penche donc plus à un mode server pour l'ESP12.
Apres la notion se serveur ou client depend de l'endroit oû on se place.

Ce doit etre plus facile avec ce ESP12, vu qu'il s'auto gere , faisant lui meme les acquisitions
et encapsulages de donnees ?


Tableau, d'ou me viennent ces questions:
Est-ce l'ESP12 qui gere le timming d'envoi des donnees ?
Est-il lié justement au temps ou à un evenement particulier
car je vois des difference d'horodatage qui vont de la minute à plus de 10 mn ?

Est-ce que dans mon cas ; avec 10 sec, ce serait normal qu'il y est des ratées ?
pourtant 10 sec c'est 10 000 mS ! cà me parait plutot tres lent (coté PIC).

mon appli tourne quand meme sans probleme depuis 24H..meme avec des ratees
s'il y a une ratée de connection (STATUS <> 3) je raz mon compteur
mais la liaison se refait OK apres 3 mauvaises connections ( 3x10sec 30 sec) puisque je la réinitialise.
Je vais modifier mon compteur affichage CPT pour qu'il affiche un % de bonne connection ..
ce sera plus pertinent commme info.
Modifié en dernier par paulfjujo le mer. 11 mai 2016 12:02, modifié 1 fois.
Aide toi, le ciel ou FantasPic t'aidera

WIFI3-Click ESP8266 sur Clicker2 18F87J50
sylvain54
Avatar de l’utilisateur
Amateur
Amateur
Messages : 194
Âge : 51
Enregistré en : août 2015
Localisation : Dans l'est de la France

#4 Message par sylvain54 » mer. 11 mai 2016 11:54

De rien :wink:

Je vois que tu utilises un gros PIC (18F87J50), tu testes avec quoi ? je partirai de mon coté sur du 18F4620, 18F4550, 18F45K50 ou 18F45K22, cela te convient, as tu une préférence pour le modèle du PIC ?

++ Sylvain

WIFI3-Click ESP8266 sur Clicker2 18F87J50
paulfjujo
Avatar de l’utilisateur
Expert
Expert
Messages : 2597
Âge : 73
Enregistré en : juillet 2015
Localisation : 01800
Contact :

#5 Message par paulfjujo » mer. 11 mai 2016 12:09

J'ai chois ce PIC car il est sur une carte Clicker2 avec 2 port Mikrobus , dont 1 recois le Wifi3 click
(auparavant j'avais fait une appli avec un GSM2-clcik .. qui marche bien) et l'autre un ecran OLED click

Ce PIC a plus de 3K de RAM .. et je l'utilse à 50% de RAM et 23% de ROM dans l'appli actuelle

Le 45K22 me semble bien . j'ai une carte ready for PIC equipée avec.
neamoins le code C devrait etre 100% transposable, une fois les config faites.


Je teste uniquement avec mon UART1 espion <-> terminal Vbray ,
qui affiche (espionne) les envois (= envoi UART2) et retour du module WIFI3 (= Reception UART2)
l'UART2 passant les commandes AT au le module WIFI, et recupérant les reponses.
Et ouvre un acces à la web page insérée dans le module WIFI3 par le PIC
via un acces http:/192.168.0.103:80


nota: j'envisage aussi d'utiliser la liaison HID terminal (au lieu de l'UART) comme espion.
(donc via la liaison USB) -> HID terminal de mikroE

.
Aide toi, le ciel ou FantasPic t'aidera

WIFI3-Click ESP8266 sur Clicker2 18F87J50
sylvain54
Avatar de l’utilisateur
Amateur
Amateur
Messages : 194
Âge : 51
Enregistré en : août 2015
Localisation : Dans l'est de la France

#6 Message par sylvain54 » mer. 11 mai 2016 14:26

Je vais essayer de répondre au mieux à tes questions.

paulfjujo a écrit :et je viens juste de voir ton tableau de mesures recupérées comment , via une page web sur ton PC ?


Les données sont récupérées par le biais d'une BD qui est installée sur mon NAS, sur ce NAS, j'ai un serveur WEB qui tourne. Cela rend donc disponible mes données de partout en H24.


paulfjujo a écrit :L'ESP12 serait en server ou client ?
pour moi, le serveur , c'est celui qui delivre les donnees , je penche donc plus à un mode server pour l'ESP12.
Apres la notion se serveur ou client depend de l'endroit oû on se place.


oops , je me suis mal exprimé, ce que je voulais dire, c'est que je ne m'en sert pas comme d'un serveur de page WEB (=> déporté sur mon NAS dans mon cas)

Le rôle de mon ESP12 se limite à acquérir les datas des capteurs et de les pousser via une requête GET vers une page .php qui fait le lien avec la base de données.

Tableau, d'ou me viennent ces questions:
Est-ce l'ESP12 qui gère le timing d'envoi des données ?
Est-il lié justement au temps ou à un événement particulier
car je vois des différence d'horodatage qui vont de la minute à plus de 10 mn ?


C'est l'ESP qui gère le timing des envois. Dans la version finale, c'est 1 fois toutes les 30 minutes, puis l'ESP s'endort. Les écarts que tu peux voir sont dus à mes différents tests et aussi au fait qu'au réveille de l'ESP, j'attends 5 secondes que tout se réinitialise correctement, cela fini donc par se décaler petit à petit. Par contre l'horodatage est effectué par le NAS pour ne pas surcharger la requête GET de l'ESP.

Est-ce que dans mon cas ; avec 10 sec, ce serait normal qu'il y est des ratées ?
pourtant 10 sec c'est 10 000 mS ! cà me parait plutot tres lent (coté PIC).


Dans mon cas, il a fallu que je rajoute un peu de delay_ms dans mes routines pour ne plus avoir d'erreurs.

Au plaisir de te lire.

++

P.S : Je fais rapidement ce petit shield pour te suivre :wink: (ce week-end au plus tard)

WIFI3-Click ESP8266 sur Clicker2 18F87J50
Guest
Confirmé
Confirmé
Messages : 800
Enregistré en : mars 2017

#7 Message par Guest » mer. 11 mai 2016 14:29

Salut
je vous suis pas mon truc mais .....
je reparts sur la point des pieds :wink:

WIFI3-Click ESP8266 sur Clicker2 18F87J50
paulfjujo
Avatar de l’utilisateur
Expert
Expert
Messages : 2597
Âge : 73
Enregistré en : juillet 2015
Localisation : 01800
Contact :

#8 Message par paulfjujo » mer. 11 mai 2016 17:46

Je viens de rajouter l'indication TAUX en % pour remplacer CPT
J'utilise 2 compteurs entier long
NomBre de Connections valides (si STATUS ESP =3) / NomBre de Boucles programme
Pourcent= (float) NbC * 100.0 / (float) NbB ;

et c'est moins catastrophique que je le pensais .. meme si ce n'est pas 100%
Taux=95,5% sur 863 boucles de 10 sec
d'autant que le maximum de pertes de connection (STATUS=4) se fait pendant
les premiers echanges ..
ex: 15H50 220 boucles et 188 connections => perdues =32 85,4%
17H33 863 boucles et 823 connections => perdues= 40 95,4%
je vais peut etre froler les 99,9% d'ici quelques heures

J'ai remarqué aussi que NORTON pouvait interferer losrqu'il s'accapare une partie de la bande passante Internet
pour mise à jour et charger des dizaines de Mo
C'est un vrai gouffre .. avec toutes ces mises à jour.
D'autant que j'ai 2 autres PC sur mon reseau WIFI..
Plus on est de fous, moins on rit, dans ce cas là.

Wifi3_Taux_160511.jpg
Vous n’avez pas les permissions nécessaires pour voir les fichiers joints à ce message.
Aide toi, le ciel ou FantasPic t'aidera

WIFI3-Click ESP8266 sur Clicker2 18F87J50
paulfjujo
Avatar de l’utilisateur
Expert
Expert
Messages : 2597
Âge : 73
Enregistré en : juillet 2015
Localisation : 01800
Contact :

#9 Message par paulfjujo » mar. 17 mai 2016 14:58

bonjour,


Je viens de tester une librairie ESP8266 trouvée sur le site MikroE forum
ecr ite par Hasan Hadi.


Sur laquelle j'ai bloqué un bon moment, dans la partie config ESP8266
en particulier sur la commande AT+CWMODE=3;
on attend OK en retour de commande,
je recois systematiquement "No Change"
sur ladatasheet ESP8266 il n'est pas fait mention de cette possible réponse ..
j'ai essayé de faire le test sur "no change" dans la partie rexcpetion par machine d'etat "state machine" ,
sans succes.. j'envoi donc quend meme lacommande, mais sort du test apres 3 essais negatif.
De ce fait j'arrive à initialiser completement le module,
et la page web s'affiche bien ..
J'ai modifié le code original pour trouver les points d'entree de page web pour les variables
au lieu de les mettre en fixe dans la page web, ce qui permet de smodifs plus faciles.
On peut ainsi commander les 2 leds de la carte clicker2 PIC18F87J50 et afficher la valeur en volt de RA1.

J'ai toujours aussi, les test via recherche de string : strpbr ou strtok ou strstr qui ne sont PA FIABLES du tout.
Soit je n'ai rien compris, soit je pedale dans la semoule , soit ?
J'ai donc untilisé une simple recherche de caractere specifique pour retouver les pointeurs de donnees LED1,LED2 et VOLT.
Nota: les tables de recherche font plus de 256 octets .. meme probleme qu'avec UART1_WRITE_Text ?
MikroE ne me repond pas la dessus.

Bref apes ce laius plutot lourd
une image de la page web

ESP8266_Server_capture_160517.jpg



mon projet mikroC


ESP8266_server_160516.zip



Datasheet 18F87J50
Vous n’avez pas les permissions nécessaires pour voir les fichiers joints à ce message.
Aide toi, le ciel ou FantasPic t'aidera

WIFI3-Click ESP8266 sur Clicker2 18F87J50
sylvain54
Avatar de l’utilisateur
Amateur
Amateur
Messages : 194
Âge : 51
Enregistré en : août 2015
Localisation : Dans l'est de la France

#10 Message par sylvain54 » mar. 17 mai 2016 16:18

Bravo, t'avances quand même.

Pas eu le temps de faire mon petit module d'adaptation ce week end :sad:

A ++ Sylvain


Retourner vers « Langage C »

Qui est en ligne

Utilisateurs parcourant ce forum : Aucun utilisateur enregistré et 53 invités