If I follow this example using my Arduino Uno https://learn.adafruit.com/tmp36-temperature-sensor/using-a-temp-sensor

(using the 3.3V code example at the bottom of the page), I get reasonable temperatures from the readings over serial.

However, if I try this w/ a LoLin NodeMCU V3 (same circuit layout), my readings seem to be consistently higher than what I get running essentially the same code on the Uno. (Only difference in code is omission of analogReference(EXTERNAL), as the Node V3 appears to run on 3.3V as standard )

I'm fairly new to the whole electronics thing, so any pointers are much appreciated...

Circuit is:

      ----- |---------------- GND on breadboard with jumper to MCU
     | TMP36|---------------- AD0 pin on MCU 
      ----- |---------------- breadboard power w/ 3.3V jumper to MCU 
  • if you have two sensors, try reading them one each on the uno and node v3 placed side by side. see if the readings are actually different. then swap the sensors around and recheck if it still consistent. also it might sound silly, but could the ambient temperature have actually changed between the two runs ? – Shreyas Murali Feb 25 '19 at 20:04
  • also this might be relevant... arduino.stackexchange.com/a/54906/16898. – Shreyas Murali Feb 25 '19 at 20:13
  • the link is not relevant. the NodeMcu has a voltage divider to read to 3.3 V on A0 – Juraj Feb 26 '19 at 8:13

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Browse other questions tagged or ask your own question.