Tous les capteurs reliés au RPI par Wifi avec module ESP8266

Parce que les applications du Raspberry Pi sont illimités...

Modérateur : Francois

Avatar du membre
vague nerd
Modérateur
Messages : 1473
Enregistré le : mar. 14 oct. 2014 11:42
Localisation : France !

Re: Tous les capteurs reliés au RPI par Wifi avec module ESP

Message par vague nerd » ven. 20 févr. 2015 11:15

Bonjour.
+1, toujours !
Je rentre du magasin de bricolage : 12€ pour deux prises 230V commandable par radio (+la télécommande, ou 19€ 5 prises +télécommande), 50€ la prise commandable par wifi !
Pour le moment, c'est un pi qui commande ma prise maison (avec détection mouvement par capteur PIR, et capteur de luminosité).
Comme la fonction de base peut se passer du pi (commuter un relais si faible luminosité + détection de mouvement), il ne me manque plus qu'un moyen de parler wifi...
Cdt.
Cordialement,

Vague Nerd

Avatar du membre
Jean-Marie
Raspinaute
Messages : 240
Enregistré le : sam. 24 janv. 2015 18:01
Localisation : Arlon, Belgique
Contact :

Re: Tous les capteurs reliés au RPI par Wifi avec module ESP

Message par Jean-Marie » ven. 20 févr. 2015 12:24

Hello domi et Manfraid

Merci d'avoir marqué votre intérêt.

L'aventure se poursuit donc, bien que je ne sois pas aussi véloce que Veloce ;)

Il m'a donc fallu la matinée pour établir le contact avec mon module.
Comme il s'agissait seulement d'établir un premier contact, je n'ai pas encore mis en oeuvre l'Arduino, l'alimentation PC et le convertisseur de niveau logique.
J'ai utilisé un 'USB to serial TTL converter' à base de CP210x pour la liaison série et pour alimenter le module car il a une source de 3.3V:
USB to TTL Module.jpg
USB to TTL Module.jpg (39.64 Kio) Vu 4104 fois
Voici le montage sur la platine d'expérimentation:
P1110023.JPG
P1110023.JPG (79.55 Kio) Vu 4104 fois
Voici les connections:

ESP8266 =====> CP210x
  • VCC =====> 3.3V
  • CH_PD ===> 3.3V
  • GND =====> GND
  • GPIO15 ==> GND
  • TxD =====> RxD
  • RxD =====> TxD
Comme terminal, j'ai utilisé le Terminal de Bray, disponible gratuitement ICI.
Terminal contact 01.jpg
Terminal contact 01.jpg (112.54 Kio) Vu 4104 fois
Voici les points auxquels il faut être attentif:
  • Choisir le Port COM attibué au convertisseur USB-TTL
  • Choisir le bon Baud Rate. Cela varie selon les documentations.
  • Dans la cadre "Transmit", cocher 'CR=CR+LF'
  • Cocher également '+CR'
  • écrire 'AT' dans le cadre blanc
  • Cliquer sur '-> Send'
Si tout va bien, le cadre de réception central affiche alors 'AT' suivi de 'OK'.
La présence de 'OK' indique que le module est prêt à recevoir de nouvelles commandes.
J'avoue que j'ai chipoté pas mal avant d'obtenir ce OK. Notamment parce que le GPIO15 n'était pas relié à GND et parce que beaucoup de docs renseignent un Baud Rate à 115200 alors que mon module veut du 9600 Baud.

Veloce
Messages : 79
Enregistré le : sam. 24 janv. 2015 20:12

Re: Tous les capteurs reliés au RPI par Wifi avec module ESP

Message par Veloce » ven. 20 févr. 2015 15:22

domi a écrit :
vague nerd a écrit :Linux n'est qu'un programme écrit en C
+1 :lol: :lol:
+2 :lol:

Veloce
Messages : 79
Enregistré le : sam. 24 janv. 2015 20:12

Re: Tous les capteurs reliés au RPI par Wifi avec module ESP

Message par Veloce » ven. 20 févr. 2015 15:46

Jean-Marie, tu n'es peut-être pas véloce, mais en tout cas tu es soigneux.
Bravo pour ton adaptateur c'est impressionnant.
Par contre fais attention, en branchant ton adaptateur TTL directement sur le module tu risques de le cramer.
Il attend du 3,3v et pas du 5V en entrée. :o

Pour limiter les risques j'ai mis une résistance de pull-up de 15k et une diode sur TXD et une résistance de 1k sur RXD.
Je n'ai pas de convertisseur USB-TTL, donc j'ai forcé le reset de mon Arduino, et j'utilise son ATTiny comme convertisseur.
Je sais, c'est moche. :oops:

Mes modules sont différents, avec une antenne intégrée au circuit imprimé.
J'ai juste soudé des pattes sur une plaque à trous pour pouvoir monter ça sur une plaque d'essais:
Image

Bonne continuation en tous cas !

Veloce ;)

Veloce
Messages : 79
Enregistré le : sam. 24 janv. 2015 20:12

Re: Tous les capteurs reliés au RPI par Wifi avec module ESP

Message par Veloce » ven. 20 févr. 2015 15:49

Que je suis con: c'est pas 1K, c'est 220 ohms, c'est marqué sur la feuille ! :D

Quand je dis txd et rxd, il s'agit des pattes de l'ESP, pas de l'Arduino, puisque c'est l'inverse.

Veloce

Veloce
Messages : 79
Enregistré le : sam. 24 janv. 2015 20:12

Re: Tous les capteurs reliés au RPI par Wifi avec module ESP

Message par Veloce » ven. 20 févr. 2015 16:04

Jean-Marie a écrit :Il me reste à potasser la documentation car je n'ai pas encore vraiment compris comment le PC et le module peuvent échanger des infos par Wifi et encore moins par Internet.
Sur le PC tu crées un socket, c'est à dire un port réseau sur lequel ton programme peut lire et écrire, comme sur une console.
Si tu choisis le port 23, tu crées un serveur Telnet. Si tu choisis le port 80, tu as un serveur web.
C'est pas beaucoup plus compliqué que de faire des printf ou scanf sur la console.
En fait si tu sais lire et écrire sur un port série tu sais déjà lire et écrire sur une liaison Wifi.

Moi en ce moment je lis ça quand j'ai du mal à m'endormir:
http://www.advancedlinuxprogramming.com/
J'avais téléchargé le bouquin gratuit, puis je l'ai acheté en papier parce que c'est pénible à lire sur mon Kobo.
Mais alors c'est dense, je n'ai pas beaucoup de temps libre et je n'avance pas vite du tout.


Veloce

2RJ
Messages : 56
Enregistré le : jeu. 18 déc. 2014 14:14
Localisation : 45 20 00 N 73 20 00 W
Contact :

Re: Tous les capteurs reliés au RPI par Wifi avec module ESP

Message par 2RJ » ven. 20 févr. 2015 20:20

Tout à fait intéressant.... j'attend mes modules et, si j'ai bien compris jusqu'à maintenant, je pourrais monitorer à distance (wifi) une sonde de température qui sera installée sur un tuyau d'entrée d'eau. Ce que je fais avec fil présentement.

C'est bien celà ??

Ca me semble bien compliqué mais habituellement, je réussis mes montages.

Merci pour ce tuto Zenos.... et les commentaires des autres utilisateurs.

2rj
NIDcornifleur (Zero W RPI Cam Web, RFID, LiFePo4wered PI+)
Pi2 et Zero W RPI Cam Web sur surveillance de plusieurs nichoirs WiFi
PIZero W gérant 5 sondes DHT22 et DS18B20
PI3 sur diapo en boucle
TNC-PI (vendu)
Dongles WIFI

Avatar du membre
Jean-Marie
Raspinaute
Messages : 240
Enregistré le : sam. 24 janv. 2015 18:01
Localisation : Arlon, Belgique
Contact :

Re: Tous les capteurs reliés au RPI par Wifi avec module ESP

Message par Jean-Marie » ven. 20 févr. 2015 23:15

veloce a écrit :fais attention, en branchant ton adaptateur TTL directement sur le module tu risques de le cramer.
Il attend du 3,3v et pas du 5V en entrée. :o
L'adaptateur USB-serial TTL sort du 5V mais aussi du 3.3V. J'ai bien sûr alimenté le ESP8266 avec le 3.3V mais j'ai hésité pour Tx/Rx car je n'ai pas de documentation prouvant que le Tx de l'adaptateur a un niveau logique en 3.3V. J'ai eu plus confiance en lisant cette page web.
Mes modules sont différents, avec une antenne intégrée au circuit imprimé.
Sur les modules que j'ai, l'antenne n'est pas dessinée sur le circuit imprimé, elle est du type céramique. Je crois avoir lu quelque part qu'elle est un peu plus puissante , mais franchement, je n'y connais rien en ce domaine.
Sur le PC tu crées un socket, c'est à dire un port réseau sur lequel ton programme peut lire et écrire, comme sur une console.
Si tu choisis le port 23, tu crées un serveur Telnet. Si tu choisis le port 80, tu as un serveur web.
C'est pas beaucoup plus compliqué que de faire des printf ou scanf sur la console.
En fait si tu sais lire et écrire sur un port série tu sais déjà lire et écrire sur une liaison Wifi.
Je sais envoyer ou recevoir des données par liaison série en langage C ou en assembleur mais je n'y connais rien à ce vocabulaire de "socket", "port réseau", "Telnet" ou "serveur web". Aurais-tu une bonne adresse où me familiariser un peu avec ces notions ?
en ce moment je lis ça quand j'ai du mal à m'endormir:
http://www.advancedlinuxprogramming.com/
Merci pour l'info. En ce qui concerne Linux, je suis seulement en train d'apprendre le niveau "basic". Peut-être un jour serai-je à même d'aborder le niveau "advanced".

______________________________________________________________________________________________________________________________


Hello 2RJ

Je pense que tu pourras effectivement bientôt te passer des fils et lire ta sonde de température par le wifi.

Comme je le disais dans le premier message de ce thread, soit tu apprends à programmer le module pour qu'il lise lui-même la sonde et envoie le résultat de la lecture par wifi, soit tu utilises un microcontrôleur (arduino, atmega, attiny, pic ou autre) pour lire la sonde et transmettre la lecture au module par Rx/Tx. Le module se chargera alors de faire suivre le message par wifi.

Quel module as-tu commandé et quel type de sonde de T° utilises-tu ?

2RJ
Messages : 56
Enregistré le : jeu. 18 déc. 2014 14:14
Localisation : 45 20 00 N 73 20 00 W
Contact :

Re: Tous les capteurs reliés au RPI par Wifi avec module ESP

Message par 2RJ » sam. 21 févr. 2015 12:14

Voilà, Jean-Marie, ce que je recevrai prochainement:


Module: ESP8266 Esp-01 Remote Serial Port WIFI Transceiver Wireless

Microcontrôleur: Mini ATMEAG328 3.3V 8Mhz

Sonde: DS18B20

Je crois qu'avec les alimentations nécessaires, que j'ai déjà, d'ailleurs... ça devrait aller, avec un peu de patience et beaucoup de lecture.
NIDcornifleur (Zero W RPI Cam Web, RFID, LiFePo4wered PI+)
Pi2 et Zero W RPI Cam Web sur surveillance de plusieurs nichoirs WiFi
PIZero W gérant 5 sondes DHT22 et DS18B20
PI3 sur diapo en boucle
TNC-PI (vendu)
Dongles WIFI

Avatar du membre
Jean-Marie
Raspinaute
Messages : 240
Enregistré le : sam. 24 janv. 2015 18:01
Localisation : Arlon, Belgique
Contact :

Re: Tous les capteurs reliés au RPI par Wifi avec module ESP

Message par Jean-Marie » sam. 21 févr. 2015 14:58

Hello 2RJ,

La sonde DS18B20 est du type One Wire et peut sans problème être lue par l'Atmega328, que ce soit avec une librairie Arduino ou un programme en C ou assembleur que tu écris toi-même. L'atmega transmet le résultat de la lecture au ESP8266 par la liaison série. Il ne reste plus au module qu'à répéter ce résultat par wifi et à être capté soit par un PC, soit par un RPI. C'est sur cette dernière phase que je cherche à rassembler de la doc.
_______________________________________________________________________________________________________________________________

Je profite de ce message pour mentionner deux commandes AT qui peuvent donner des renseignements utiles.

Il s'agit des commandes AT+RST et AT+GMR.
AT+RST & AT+GMR.jpg
AT+RST & AT+GMR.jpg (83.66 Kio) Vu 4082 fois
La commande 'AT+RST' provoque un reset du module. En plus du 'OK' et du 'ready' témoignant du bon fonctionnement, on obtient le site (chinois) du vendeur et la version (du programme ?).

La commande 'AT+GMR' donne '0018' qui est, paraît-il, la version des commandes AT. On retrouve également 09 et 02 se référant à la version du programme déjà donnée avec le Reset.

Répondre

Retourner vers « Et tout le reste »