Wemos DHT22-shield werkend maken

Door Thijsmans op zaterdag 2 november 2019 10:00 - Reacties (4)
Categorie: -, Views: 1.753

In eerdere blogs maakte ik melding van het gemak van de Wemos D1 mini ESP8266-bordjes, waarvoor verschillende sensoren als "shield" zijn uitgebracht. Simpelweg op de shield stapelen en gaan. Toch? Nou, voor wat betreft de DHT22-shield niet dus. Maar dat blijkt eigenlijk heel logisch - en op te lossen!

De DHT22-shield maakt actief gebruik van drie pinnen: 3,3V, GND en D4. De fabrikant heeft de data-lijn verbonden aan D4. Maar wacht eens even: dat is toch ook de pin die voor de blauwe LED wordt gebruikt? Ja, en dáár gaat het dus fout. Wat extern "D4" wordt genoemd, is eigenlijk GPIO2. En GPIO2 is een van de pinnen die de boot-modus bepaalt. Helemaal begrijpen doe ik het niet, maar nadat ik de D4-pin uit de connector van de DHT22-shield had verwijderd, en het soldeercontact met wat tin had verbonden aan D3, werkte de shield direct zoals je zou verwachten :)

DHT22


JavaScript:
1
2
3
4
5
6
7
> var dht  = require("DHT22").connect( NodeMCU.D3 );
> dht.read( console.log );
= {
  "raw": "010000001000000101000000010010110000110100",
  "rh": 51.7, 
  "temp": 30 
}

Een alternatief is het doorhalen van de baan op de printplaat van de shield en direct aan de data-poot van de DHT22-sensor een draad naar een andere GPIO solderen. Maar dat is meer werk en ziet er ook wat slordiger uit: (foto @stb)

https://blog.zs64.net/wp-content/uploads/2018/02/IMG_7154-225x300.jpg

Onjuist verbonden DHT22-shields zijn overigens een uitstervend probleem:
@stb p.s. It is possible that this problem is limited to clone boards that use the DHT22 instead of the DHT11. I now see that Wemos has discontinued the V1 version of this board. The current version uses a DHT12 sensor that communicates via I2C.
Heb je al genoeg DHT22-shields in huis hangen? Print dan eens een buiten-behuizing uit en zet 'm in je dakgoot :)

https://cdn.thingiverse.com/renders/bd/31/35/35/f1/71e88f81bb8888bf9db57c415a805faf_preview_featured.jpg

Volgende: Philips Hue draaidimmer: Lutron Aurora 24-01 Philips Hue draaidimmer: Lutron Aurora
Volgende: Microprocessor snelst verbinden met wifi 04-'19 Microprocessor snelst verbinden met wifi

Reacties


Door Tweakers user jhead22, maandag 4 november 2019 11:14

Mijn ervaring is dat je temp sensoren wat verder van de nodemcu moet plaatsen omdat ze anders een verkeerde temp weergeven aangezien de nodemcu wat warm wordt.

Heb jij daar geen last van met de sensor direct op het bordje?

Door Tweakers user veltnet, maandag 4 november 2019 11:42

Dat is zowiezo het probleem met temperatuursensoren, ze geven heel nauwkeurig hun eigen temperatuur aan (maar dat is niet altijd de temperatuur die je wilt meten)

Door Tweakers user Thijsmans, maandag 4 november 2019 17:40

Ja, maar dat hangt mede af van de plaatsing. Boven een spanningsregelaar van 5v naar 3v kun je inderdaad warmte verwachten (een kritische kanttekening bij het concept van deze shield is dus terecht ;) ). Ernaast/gekanteld is dat niet of minder zo. Inmiddels heb ik een stapeltje BME280's en losse ESP12's besteld. Ik zal een update geven met de bevindingen daarvan.

Door Tweakers user BounceMeister, maandag 4 november 2019 17:46

Die Wemos bordjes zijn prachtig, maar ik blijf het vreemd vinden dat D4 dan GPIO2 is. Zelfde met de andere pinnen. Ik zie de logica er niet in.

Om te kunnen reageren moet je ingelogd zijn. Via deze link kun je inloggen als je al geregistreerd bent. Indien je nog geen account hebt kun je er hier één aanmaken.