Si vous voulez connaître la température de l'eau de la piscine ou autres (en faite toutes températures comprises entre -55° et +125° pour la sonde) et être prévenu par mail que la température dépasse une certaine limite(ce qui est quand même vachement important!!!), ne cherchez plus, voici la solution, le thermomètre wifi :-), coût de l'opération moins de 6€ (ça tombe bien, j'avais déjà tout le matos).

Le thermomètre dialogue en Wifi sur un serveur (datalogger) et on accède via le web aux informations (protégées par un mot de passe), on peut également installer sur android une application (EasyIot Cloud).

Une fois terminé dans un boîtier ça donne ça

CameraZOOM-20160601155734920

 

Sur le téléphone (ou pc) on a ça comme info

 

Screenshot_20160601-172147

 

 

Avec des beaux graphes et tout et tout

IMG_20160601_172939_01

 

Et un mail lorsque l'on atteint certaines valeurs, j'ai pas essayé mais on peut également envoyer un sms.

Screenshot_20160601-163303

 

 Si vous vous dites, il me le faut, voilà comment faire:

1) Matériels:

-Un capteur de température, j'ai nommé le (fameux)  DS18B20 du fabricant Dallas(l'entreprise pas la série!),résolution de 12 bits sur une plage de -55°C à +125°C 1€

(j'ai pas d'action chez eux, vous achetez où vous voulez!)
Buy Products Online from China Wholesalers at Aliexpress.com

Product Listing Policy - Intellectual Property Policy and Infringement Claims - Privacy Policy - Terms of Use - Safety & Security Center - Report Intellectual Property Right Infringement Copyright Notice &copy 1999-2016 Alibaba.com Hong Kong Limited and licensors. All rights reserved.

https://login.aliexpress.com
-ESP8266 (microprocesseur avec wifi) 1,54€
Buy Products Online from China Wholesalers at Aliexpress.com

Product Listing Policy - Intellectual Property Policy and Infringement Claims - Privacy Policy - Terms of Use - Safety & Security Center - Report Intellectual Property Right Infringement Copyright Notice &copy 1999-2016 Alibaba.com Hong Kong Limited and licensors. All rights reserved.

https://login.aliexpress.com

-Un convertisseur usb -série pour programmer l'ESP8266, le PL2303 1,35€

Buy Products Online from China Wholesalers at Aliexpress.com

Product Listing Policy - Intellectual Property Policy and Infringement Claims - Privacy Policy - Terms of Use - Safety & Security Center - Report Intellectual Property Right Infringement Copyright Notice &copy 1999-2016 Alibaba.com Hong Kong Limited and licensors. All rights reserved.

https://login.aliexpress.com

- Un transfo 3,3V j'en avais déjà un mais j'ai trouvé ça qui devrait faire l'affaire (l'ESP8266 peut  consommer jusqu'a 300 ou 400 ma) 1,75€

Buy Products Online from China Wholesalers at Aliexpress.com

Product Listing Policy - Intellectual Property Policy and Infringement Claims - Privacy Policy - Terms of Use - Safety & Security Center - Report Intellectual Property Right Infringement Copyright Notice &copy 1999-2016 Alibaba.com Hong Kong Limited and licensors. All rights reserved.

https://login.aliexpress.com

- Une résistance de 4,7 k Ohm

- Fers à souder et boîtier (ou imprimante 3d)


2)Programmation de l'ESP8266

De base, l'ESP8266 ne fonctionne que avec des commandes AT (utilisé dans le monde de la téléphonie) mais comme on est super malin, on a regardé googol, et vu que d'autres petits malins fournissaient une procédure pour utiliser l'ESP8266, comme si c'était un arduino (en vrai on flash le firmware à chaque changement dans le programme), pour ce faire:

S'incrire sur le Datalogger EasyIoT

EasyIoT

We sent you an email with instructions on how to confirm your email address. Please check your inbox and follow the instructions in the email.

http://cloud.iot-playground.com

Une fois le compte validé, aller dans Configure\User info et relever le numéro Instance Id (on en aura besoin plus tard)

instanceID

Télécharger l'IDE Arduino version 1.6.5 (important car les libraries ne fonctionnent pas sur les versions plus récentes, rien qu'avec cette ligne je vous ai fait gagner 1/2 journée!) :

Arduino - Donate

SO MANY TIMES. IMPRESSIVE! THIS IDE IS NO LONGER JUST FOR ARDUINO AND GENUINO BOARDS. HUNDREDS OF COMPANIES AROUND THE WORLD ARE USING IT TO PROGRAM THEIR DEVICES, INCLUDING COMPATIBLES, CLONES, AND EVEN COUNTERFEIT. YOU CAN HELP ACCELERATE THE DEVELOPMENT OF THE ARDUINO IDE BY CONTRIBUTING TOWARDS THE EFFORT OF MAKING IT BETTER.

https://www.arduino.cc

Dézipper le, puis aller dans file\préférences et rentrer cette url dans Adittional boards manager  :

http://arduino.esp8266.com/stable/package_esp8266com_index.json

 

Adding Board Manager URL to Arduino preferences

ensuite sélectionner tools\board\board managers et faire une recherche en tapant ESP8266

 

Installing additional boards from Board Manager

Après l'installation (qui peut être longue), aller dans tools\board et sélectionner Generic ESP module

Board selection

-Télécharger les libraries suivantes et dézipper/copier les dans le répertoire libraries de l'arduino 1.6.5

iot-playground/EasyIoT-Cloud

EasyIoT-Cloud - EasyIoT Cloud source code examples and libraries. More at http://cloud.iot-playground.com/

https://github.com

ainsi que la librarie du capteur de température:

milesburton/Arduino-Temperature-Control-Library

Arduino-Temperature-Control-Library - Arduino plug and go library for the Maxim (previously Dallas) DS18B20 (and similar) temperature ICs

https://github.com

redémarrer l'IDE Arduino puis fichier\Exemples\EIoTCloudRestApiV1.0\ESP8266-DS18B20....ino

code

  Il y a trois parties à modifier dans le code, remplacer le XXXX par les valeurs en gardant les guillemets:

// change those lines

#define AP_USERNAME "xxxx" //Correspond au nom de votre wifi (SSID pour les intimes)
#define AP_PASSWORD "xxxx" //Mot de passe du wifi
#define INSTANCE_ID "xxxx" //Le numéro que l'on a relevé précédemment sur le compte du Datalogger EasyIoT

code2

 

 

 

 -Il faut ensuite connecter le convertisseur usb-série (un PL2303 pour mon cas), à l'ESP8266 comme ci- dessous, puis brancher (je vous conseille plûtot de brancher l'alimentation externe en 3,3v plutôt que celle du convertisseur serie-usb qui, soit ne va pas fournir assez de courant, soit sera en 5v)

,

Un fois la prise usb connectée, installer le driver du convertisseur : 


Puis retourner dans l'IDE Arduino et dans tools\port, sélectionner le numéro de port qui correspond au convertisseur,

 Puis téléverser le programme dans ESP8266 via l'IDE Aruino (Croquis\Téléverser)

 

3) Branchement du capteur de température

Une fois le code téléversé sans erreur dans l'ESP8266, il faut brancher le capteur de température DS18B20 comme ci dessous 

 puis tester sur le compte du Datalogger EasyIoT que l'on a bien des valeurs qui apparaissent (au démarrage de l'ESp celui-ci communique tout de suite, puis toutes les quelques minutes..), le code est fait de manière à ne pas  avoir de configuration à faire sur le datalogger (un genre de plug and play), on peut néanmoins personnaliser le nom du capteur dans configure\module et groupe module.

 Une fois testé, j'ai soudé le tout sur une plaque à trous :

  

CameraZOOM-20160601141506847

4) Envoi de mails automatiques

On peut choisir un envoi de mails suivant les critères que l'on veut (exemple, la température dépasse une certaine valeur), depuis le site du datalogger (http://cloud.iot-playground.com/),

aller dans configure\automation puis add automation programm et le paramétrer comme ci dessous

mail

5)Le boîtier via l'imprimante 3D:

Création d'un petit boîtier hermétique via l'imprimante 3D, voici les fichiers:

boitier

boitier_top

3d

 

CameraZOOM-20160601154551398

CameraZOOM-20160601155352669

 

CameraZOOM-20160601163009498

 

 Et voila, on a un beau thermomètre wifi/ alerte mails pour moins de 6€, c'est pas beau la vie!!!

 

Retrouvez tous mes blog sur Domochris.fr :

Domochris

Domo Geek R2D2 BB8 Voyage et tour du monde Il était une fois...(petites histoires)

http://domochris.nexgate.ch