Un thermomètre OSHW basé ESP8266

Posté par (page perso) . Édité par Davy Defaud, ZeroHeure, palm123 et Pierre Jarillon. Modéré par ZeroHeure. Licence CC by-sa.
31
21
fév.
2019
Matériel

Dans la lignée du contrôleur de DEL, Leon Anavi est de retour avec un thermomètre, un produit matériel libre (ici on parle du circuit imprimé, pas des composants) de plus pour votre collection.

Cet objet est autonome, car équipé du processeur ESP8266, la plate‐forme phare des hobbyistes. Mais pas seulement, car on le retrouve dans d’autres produits du marché (notamment certaines prises connectées…).

Les capteurs (DHT22/AM2302) sont connectés via le bus I²C ainsi que l’écran d’affichage OLED multi‐ligne.

https://pbs.twimg.com/media/DzxGtxzW0AEJChx.png

Côté logiciel, on retrouve une application serveur qui envoie les données via MQTT et l’application Web correspondante pour l’affichage sur mobile ou autre navigateur Web.

Tout cela a été possible grâce à KiCad, l’outil de référence pour la conception de circuits imprimés. Au passage, je vous invite à voir ou revoir la présentation de Leon Anavi au FOSDEM 2019 sur l’utilisation de KiCad dans un projet OSHW.

Il me semble que cela a été à l’origine conçu pour la centrale de domotique « home assistant », mais c’est facilement adaptable pour une autre solution. Pour ma part, j’ai écrit rapido un code de glu pour l’utiliser avec la plate‐forme IoT de Mozilla.

IoT.js MQTT

Bien que la campagne de financement soit terminée, le produit est disponible à partir de 25 US$ via le site spécialisé dans les projets matériels.

Aller plus loin

  • # Dommage pour les capteurs DHT !!

    Posté par (page perso) . Évalué à 5 (+5/-0).

    Projet fort sympathique mais dommage d'avoir pris des DHT qui sont des capteurs très approximatifs ! Les BMP de Bosch sont un poil plus cher mais bien plus fiable !
    Pour le firmware cela marchera bien avec esphomelib ce genre de cartes :)

    • [^] # Re: Dommage pour les capteurs DHT !!

      Posté par . Évalué à 2 (+2/-0).

      Oui je confirme, pour avoir récemment remplacé un DTH11 par un BME280, c'est le jour et la nuit, en particulier pour la lecture du taux d'humidité.
      BMP: température, pression atmosphérique.
      BME: idem, taux d'humidité en plus. Un chouïa plus cher.

    • [^] # Re: Dommage pour les capteurs DHT !!

      Posté par . Évalué à 4 (+3/-0).

      Après tout dépend de l'utilisation, de ce que je lis sur adafruit les dht22 ont une précision de +/- 0.5°C, sur des températures allant de -40 à 85°C ce qui est largement suffisant pour un thermomètre domestique.
      Ca sert à rien de prendre plus cher si le produit moins cher répond au besoin.

      • [^] # Re: Dommage pour les capteurs DHT !!

        Posté par . Évalué à 4 (+2/-0).

        Ca sert à rien de prendre plus cher si le produit moins cher répond au besoin.

        Comme je le dit plus bas, dans le cas d'un thermomètre, et uniquement cette fonction, une simple sonde thermocouple analogique fait l'affaire si on va dans ce sens. Ça demande un poil plus de programmation mais on obtient un prix plancher.

        • [^] # Re: Dommage pour les capteurs DHT !!

          Posté par . Évalué à 4 (+5/-1). Dernière modification le 21/02/19 à 16:56.

          Oui, sur le papier, c'est plus simple. En réalité, il va falloir faire un pont diviseur avec une résistance à couche métallique de 1% de précision, il va falloir étalonner tout ça, rajouter un petit condo pour lisser les parasites…

          Si vraiment on veut réduire le budget au max, et qu'on n'a pas besoin de mesurer le taux d'humidité, un BMP280 à la place du BME ne coute que 1,38€ port compris, chez qui vous savez.

          [EDIT] Oui, je sais, je fais une fixette sur ces composants, mais ils sont tellement précis que c'en est hallucinant. La partie baromètre est capable de faire la différence entre la pression atmosphérique du sol, et celle du plafond!

          • [^] # Re: Dommage pour les capteurs DHT !!

            Posté par (page perso) . Évalué à 6 (+5/-0).

            En effet je ne conseille pas du tout l'usage des DHT, le DHT11 est exécrable, le DHT22 est mieux pour la température par contre pour l'hygrometrie ce n'est pas fiable à moins de prévoir de le ventiler 1 minute avant les mesures. A noter en plus que les DHT11 et DHT22 ne sont pas i2c, c'est un protocole spécifique.

            Je valide aussi le choix du BME280 / BMP280, mais il y a aussi le capteur SI7021 qui est assez sympa, précis et pas cher.

          • [^] # Re: Dommage pour les capteurs DHT !!

            Posté par . Évalué à 3 (+1/-0).

            Si vraiment on veut réduire le budget au max, et qu'on n'a pas besoin de mesurer le taux d'humidité, un BMP280 à la place du BME ne coute que 1,38€ port compris, chez qui vous savez.

            Ça dépend. Si tu te places dans une logique industrielle, les coûts de développement supplémentaires sont bien souvent moins importants que l'économie d'échelle réalisée en utilisant des composants discrets plutôt qu'un module tout prêt. Ça permet aussi de déporter plus facilement la sonde de la chaleur intrinsèque du circuit de mesure et de pouvoir procéder à une maintenance plus aisée, notamment en ce qui concerne les inévitables ajustages dus au vieillissement.

            Par contre oui dans le cadre de l'amateur ou d'une petite série, la facilité d'intégration d'un module est plus intéressante par rapport au coût unitaire. Mais dans ce cas on ne réduit pas nécessairement le budget au max.

      • [^] # Re: Dommage pour les capteurs DHT !!

        Posté par . Évalué à 3 (+3/-0).

        Un lien intéressant:

        Je n'ai pas essayé le DHT22, mais j'ai eu des résultats déplorables avec un DHT11: des mesures fausses de 3 degrés en température, et de 10% en humidité.

        Voici le prix d'un DHT22

        et celui d'un BME280

        Au moment de la rédaction de ce post, le BME est même moins cher que le DHT de quelques centimes! Pourquoi s'en priver alors qu'en plus il consomme moins et est moins encombrant.

  • # Modifier les plans, c'est bien, mais quid de la production?

    Posté par . Évalué à 5 (+3/-0). Dernière modification le 21/02/19 à 13:58.

    C'est sympa de pouvoir modifier le plan du PCB (qui semble trivial d'ailleurs… serait-ce seulement éligible a brevet ou une quelconque protection? J'en doute, mais peu importe…) mais, pour le produire, on fait comment?

    À vue de nez, on a un circuit imprimé trivial, qui utilise des composants «traditionnels» THT (Through Hole Technology, semble indiquer un site aléatoire trouvé sur le canard qui court accroupi), mais aussi des CMS (composants montés en surface, flemme de chercher le terme exact), avec du double couche.

    Du coup, j'ai 3 questions:

    1) Admettons que quelqu'un modifie le PCB, et en supposant que ça ne soit pas l'état de l'art (et donc, non éligible en France à la P.I. si ma mémoire est bonne), comment cette personne ferait-elle pour «compiler» le PCB en un «binaire» utilisable réellement?
    En pratique (j'ai fait un bac STI génie électronique, triste que ça ne me serve que pour mes loisirs), j'ai souvenir qu'il faut de une plaque d'epoxy cuivré (me rappelle plus le terme exact), insolée aux UV puis passée au bain de perchlorure de sodium (terme qui m'est revenu en écrivant ce commentaire, il y a 15 minutes je ne l'avais plus en tête, c'est p'tet erroné du coup).
    Il est évident que tout le monde n'a pas un tel matériel chez lui (ou pas la place), donc, comment ça marche? Il faut s'acheter l'insoleuse, le perchlo, la perceuse et se réserver une pièce chez soi pour tout ça, ou il existe des boîtes qui vendent aux particuliers des circuits pré-imprimés et pré-percés sur fourniture de PCB?
    Ce point m'intéresse particulièrement, parce que j'aimerai me construire un téléphone, mais que je trouve que c'est de la connerie que d'utiliser des beagle ou des rPI pour ça, trop de gâchis d'espace… donc il me faut une solution pour les PCB…

    2) Pour un thermomètre, pourquoi avoir utilisé d'une part du double couche, et d'autre part des CMS? On parle bien d'un thermomètre non? Un µcontrolleur pour si peu, ça ne serait pas overkill? Et au pire, pourquoi ne pas avoir pris un µC THT?

    3) tant qu'a essayer de faire la pub d'un hard conçu avec un soft libre, il eut été pertinent de poster non pas le PCB, mais le rendu 3D, surtout que Kicad en est capable nativement… c'est plus sexy, et ça donne une meilleure idée de ce qu'est le produit final…
    Montrer un screen du PCB, c'est comme si lors de l'annonce d'un logiciel on publiait un screen du code source… ai-je besoin d'écrire ce que j'en pense?

    • [^] # Re: Modifier les plans, c'est bien, mais quid de la production?

      Posté par . Évalué à 6 (+4/-0).

      De nombreuses boîtes impriment des PCB à la demande, pour quelques euros. Le prix est dégressif avec la quantité.

      Bon, la plupart sont en chine et il faut pas être pressé, mais c'est bien plus pratique que de faire la gravure soi-même, et tu peux même faire des PCB multi-couches.

      Exemple (parmi la myriade que tu peux trouver avec une recherche rapide) : https://www.pcbway.com/

    • [^] # Re: Modifier les plans, c'est bien, mais quid de la production?

      Posté par . Évalué à 5 (+3/-0).

      Pour le premier point, comme dit avant moi il existe des boites qui font des PCB sur-mesure. Un autre exemple pas mal réputé c'est JLCPCB.
      Sinon à faire soi-même, pour un projet comme celui-ci une simple proto-board prépercée est suffisante pour commencer. On peut même caler quelques dipoles ou tripoles en CMS directement ou prendre des mini cartes de conversion pour des composants plus gros.
      Si on veut faire un circuit imprimé, il existe aussi d'autres techniques comme le fraisage CNC (à voir où est le fablab/makerspace le plus prêt de chez toi) et pour rester sur une gravure chimique il existe des produits moins contraignants que le bon vieux perchlo.

      2) Pour un thermomètre, pourquoi avoir utilisé d'une part du double couche, et d'autre part des CMS? On parle bien d'un thermomètre non? Un µcontrolleur pour si peu, ça ne serait pas overkill? Et au pire, pourquoi ne pas avoir pris un µC THT?

      C'est totalement ma première réflexion. Je comprends l'usage de l'ESP pour le wifi intégré (sinon pour une lecture locale un petit ATtiny avec un afficheur 2 digits) mais niveau puissance de calcul c'est cent fois trop. Je comprends pas non plus l'intérêt de prendre une sonde i²C alors que le µC comprend déjà un ADC 10bit et donc une sonde thermocouple analogique de base était envisageable sans composant supplémentaire.

    • [^] # Re: Modifier les plans, c'est bien, mais quid de la production?

      Posté par . Évalué à 8 (+8/-0). Dernière modification le 22/02/19 à 15:20.

      Ca demande un petit investissement, et peu de place:

      • Une perceuse de type dremel avec forêts de 0,6 et 0,8 mm, c'est de loin l'équipement le plus cher, mais si tu bricoles, tu en a peut-etre déja une, ou tu peux en emprunter une à un pote. Un clone fait très bien l'affaire. (la perceuse, pas le pote)

      • Un bidon de 1 litre de perchlorure de fer (pas de sodium) vendu en grannules, il n'y a plus qu'à rajouter l'eau.
        Ça te servira pour de nombreux projets. A stocker dans le bidon d'origine.

      • Des plaques d'époxy simple ou double face FR4. Je te conseille du présensibilisé, sinon tu peux utiliser du film photosensible (moins de 5€ sur b*ngg**d port compris)

      • Pas besoin d'insoleuse: 1m de ruban de led UV (moins de 5€ sur ali*xpr*ss port compris) c'est autocollant, ça peut se découper et se coller sur un morceau de médium, ou d'acrylique. A alimenter en 12V. L'encombrement est grosso modo celui d'une feuille A5 sur 5mm, bloc d'alim 12V non compris.
        Exemple

      J'ai utilisé du busbar de panneau solaire pour les interconnexions parce que j'en avais, mais du fil de cuivre ça le fait aussi.

      • Deux petits bacs en platique, du genre bacs à congélation, un pour la gravure au perchlo, l'autre pour le révélateur.
      • Ah le révélateur, je l'oubliais, celui là. Au rayon accessoires pour piscine de ton magasin de bricolage préféré, prends un pot de pH+. C'est du bicarbonate de sodium. Un pot de 1Kg coute quelques euros, te servira toute ta vie, celle de tes enfants, petits enfants, vu que le dosage est de 0,85 (allez, 1) gramme par litre d'eau. Sinon, si tu as un pote qui a une piscine…

      En gros, voilà le strict minimum pour débuter. Tout cela tient dans un petit carton. Je suppose que tu as déjà un fer à souder, de l'étain, tresse/pompe à dessouder, pinces plate/coupante si tu as fait un bac F2 (oups, STI génie électronique, ça ne me rajeunit pas.)

      Attention, c'est addictif :-)

    • [^] # Re: Modifier les plans, c'est bien, mais quid de la production?

      Posté par . Évalué à 2 (+1/-0). Dernière modification le 21/02/19 à 20:03.

      A ce jour, All PCB est le fabricant de PCB le moins cher que j'ai trouvé.
      10 PCB double faces, trous métallisés < 100x100 mm² pour environ 5€
      Il suffi de lui envoyer les GERBER, son adresse postale puis de payer.

  • # Non à Open Hardware, Oui à Open Schematics

    Posté par (page perso) . Évalué à 4 (+4/-1).

    Non à Open Hardware, Oui à Open Schematics.

    Parce que les chips qui sont dedans ne sont pas documentés.

  • # wifi ?

    Posté par . Évalué à 4 (+2/-0).

    Je m'interroge sur la pertinence d'utiliser du Wifi pour transmettre des données de capteurs alors qu'il existe des protocoles plus simples, moins consommateurs et avec une meilleure portée comme le 433MHz par exemple.

    Je ne sais pas si l'on trouve une board qui permettrait de démocratiser l'usage du 433MHz comme le ESP8266 l'a fait pour le wifi…

    • [^] # Re: wifi ?

      Posté par . Évalué à 5 (+4/-0).

      À mon avis le wifi peut avoir du sens pour une petite installation, si on n'a pas de récepteur 433MHz (entre 20 et 100€ suivant le niveau de bricolage).

      Mais c'est très bien faisable de transmettre des données capteurs en 433MHz avec un Arduino (éventuellement Nano) : https://lastminuteengineers.com/433mhz-rf-wireless-arduino-tutorial/

      Pour le coût du capteur lui même je pense que l'impact entre l'ESP et Arduino est négligeable à moins de faire de la grande série (quelques euros chacuns).

      Par contre l'Arduino peut être vraiment intéressant s'il y a des contraintes d'énergie : 10 à 50x moins consommateur :
      https://1technophile.blogspot.com/2016/08/low-cost-low-power-6ua-garden-433mhz.html
      https://www.esp8266.com/viewtopic.php?f=13&t=7918&start=4

    • [^] # Re: wifi ?

      Posté par (page perso) . Évalué à 1 (+0/-1).

      bin l'intérêt du wifi est double :

      • en réception : tu peux le commander comme tu veux, même à partir d'une simple page web
      • en émission : la remontée de données vers un serveur est au fil de l'eau, vers un serveur sur Internet au besoin

      D'autres protocoles requièrent une diffusion en 2 temps : remontée puis publication (vers un serveur web sur Internet ? Tu ne l'as pas précisé, si oui, bin autant raccourcir :p).

  • # ESP8266 ESP8285

    Posté par . Évalué à 2 (+1/-0).

    Pour info,
    En bricolant des bidules IOT j'ai du passer au microcontroleur ESP8285 en craignant de devoir adapter des choses …
    en fait il n'en est rien, le 8285 est compatible 8266, simplement il inclut 8Mbit (donc 1Mo) de flash dans le microcontroleur lui même.
    C'est donc plutôt une bonne chose, ça évite de devoir souder la flash séparément sur le PCB (si 1Mo est suffisant).
    Sinon avec un ESP8266 on peut utiliser des flash plus grosses si besoin (4Mo …).

  • # merci pour les commentaires

    Posté par (page perso) . Évalué à 1 (+1/-0). Dernière modification le 25/02/19 à 11:05.

    J'ai bien apprécié la note et les commentaires, qui m'ont donné d'autres pistes pour la réalisation d'une box domotique.
    Je voulais connaître les performances d'isolation de ma maison dans le temps, et selon l'humidité, pour avoir une idée du bon moment pour lancer mon poele à granules.

    Il y a bien la station netatmo mais je trouve que ça douille.
    Je voulais bien essayer de les bricoler moi-même mais je voulais me rapprocher des interfaces "standardisées".
    Dans les derniers liens sur les comm' on a des capteurs RF dans des boitiers à 10 $ environ.
    Et puis des procédés de fabrication & d'assemblage à porté de main pour un bricoleur occasionnel.

    cool donc :)

    Par contre en interne dans ma boite sur une pré-étude il s'est avéré que l'ESP32 serait à préférer aux 8266, qui le remplacerait pour pas cher (3e le module), et est beaucoup plus puissant tout en présentant la possibilité de faire du bluetooth….
    Texte du lien
    La réalité peut-être autre pour le grand public…

  • # Commentaire supprimé

    Posté par . Évalué à 0 (+0/-0). Dernière modification le 12/03/19 à 07:42.

    Ce commentaire a été supprimé par l'équipe de modération.

Envoyer un commentaire

Suivre le flux des commentaires

Note : les commentaires appartiennent à ceux qui les ont postés. Nous n'en sommes pas responsables.