Your code is structured in a rather odd way in that you are printing the RTD result before youre taking the reading:
This means that first time around the result will always be zero, but as you’ve moved the declaration of rtd
up to the top of you code, making it global, the result that is achieved after taking the initial reading will be printed next time that this function is executed. This means that the results printed in the serial monitor will lag by one second.
I assume that it’s the serial monitor where you are looking for these results,m as you’er not actually sending the result to the Blynk app.
No Blynk reserved pins, but there are pins that will cause issues if you don’t understand how to use them:
I’d always recommend against directly using the “D” numbers that are printed on the NodeMCU and instead use the correct GPIO numbers. You can add a comment next to the declaration that included the D number to assist with wiring if you wish. This makes your code more portable from one device to another, and I find that it makes it easier to remember which groups of pins are potentially problematic as they tend to be grouped together when looking at the list in GPIO order.
Does your original (non-Blynk) code work with your changed pins?
Do you have any other widgets that are connected to digital pins?
Pete.