Ciao a tutti,
sto provando un sensore DHT22 con una Wemos D1 Mini ma ho un problema:
lo sketch di esempio DHTTest della libreria Adafruit mi restituisce sempre: "Failed to read from DHT sensor"
se però scollego l'alimentazione al sensore e la ricollego inizia a leggere sia i valori di temperatura che umidità.
Come mai accade questo?
in allegato lo schema di collegamento.
Grazie mille
UPDATE*
Ho provato a collegare la Wemos ad un alimentatore USB e quindi non al pc e il problema svanisce.
Possibile che non arriva abbastanza corrente dalla USB del PC? Ma a questo punto come faccio a leggere sulla seriale il dato di temperatura??
Mi pare strano che l'USB del PC non riesca ad alimentare la scheda, provato altre usb del pc? Altri PC? Anche il cavo usb protrebbe essere fonte di guai, comunque, la cosa più semplice che mi viene in mente un HUB USB alimentato oppure complicando la cosa alimenti da +5V e GND e usi un cavo usb modificato dove elimini la parte di alimentazione e lasci solo i dati e GND in comune.
No la scheda (WeMos D1 mini) è alimentata dal PC e funziona a dovere, forse è il DHT22 che richiede più corrente, ma la cosa strana è che se scollego e ricollego la VCC al DHT22 il tutto inizia a funzionare.
Si ho provato altre USB del PC e altri cavi USB ma la situazione è la stessa.
Alimentandolo invece direttamente con un alimentatore degli smartphone e visualizzando il dato sui un display il tutto funziona alla grande...
Non riesco davvero a capire il perchè di questo....
su che piedino hai collegato il dht ? Forse usi un piedino che è usato per mettere il chip in modalità programmazione (prova a cambiare pin magari usa D2)
(ho un ricordo vago della wemos)
se la wemos lavora a 3,3V non darei i 5V al dht ma i 3,3V
INTANTO IL WEMOS FUNZIONA A 3,3 VOLT.
Se tu attacchi il sensore ai 5 volt è normale che poi questi ti arrivino all'ingresso del Wemos
Quindi attaccalo ai 3,3 volt (il DHT funziona anche a questa tensione)
Se non hai fritto l'ingresso probabilmente leggerà, altrimenti prova un altro ingresso.
steve-cr:
INTANTO IL WEMOS FUNZIONA A 3,3 VOLT.
Se tu attacchi il sensore ai 5 volt è normale che poi questi ti arrivino all'ingresso del Wemos
Quindi attaccalo ai 3,3 volt (il DHT funziona anche a questa tensione)
Se non hai fritto l'ingresso probabilmente leggerà, altrimenti prova un altro ingresso.
Grazie per la risposta.
No come dicevo prima è stato un errore nel disegno ma nella realtà ho collegato i 3,3V.
La cosa strana è che se alimentato non da PC ma direttamente da alimentatore 220V a 5V il tutto funziona correttamente...
Ho provato a cambiare pin, ho usato D3, stessa situazione se la usb è collegata al PC non legge il valore dal DHT22 se scollega e ricollego Vcc al DHT allora inizia a leggere.
Se invece collego la USB all'alimentatore legge il dato senza problemi...
La cosa è molto strana. I 5 volt della USB entrano dal connettore e vanno all'integrato stabilizzatore a 3,3 volt.
Che poi quel cavo sia attaccato al PC oppure ad un alimentatore 5v non cambia nulla...
A meno che la USB del PC abbia qualche problema: Connetti la USB al PC e misura sul pin 3,3 volt.
Poi fai la stessa misura con il cavo USB collegato all'alimentatore 220 - USB
E vedi che differenze ci sono.
Grazie a tutti per le risposte.
Ho fatto altri test. In parole povere il problema si crea soltanto quando carico lo sketch sul dispositivo e viene fatto l'hard reset. Se stacco la usb dal pc e la ricollego il tutto torna a funzionare normalmente...
Non so cosa pensare...
Perdonate il ritardo nella risposta ma ero fuori per lavoro.
Ho provato lo sketch e comunque il problema si presenta, ma soltanto quando è aperto su PC il monitor seriale...
A questo punto non mi resta che provare con un altro pc e vedere cosa accade.