11/27/2022 Now that it is almost winter I found that I had bugs displaying wind chill. Fixed now. Also added options to toggle from Celsius to Fahrenheit with a button press (currently mapped to long press, but only when the display is on screen 0.) (See
#define TOGGLE_METRIC_1 and
#define TOGGLE_METRIC_2 in
settings.h Also search for
esp8266-weather-station-color-2022-frg.ino to see what is updated. There is some nuance.)
Personal-info.h to explain how to get an OpenWeather "City ID" (that is needed so that OpenWeather knows how to get the weather information that is correct for your location.)
7/1/2022 Added (mostly) dew point based "feels like" descriptions to the main page (screen 0). (Ours has more descriptive descriptions than the sample descriptions the National Weather Service show.) But the main point is valid: pay attention to dew point, not humidity. For determing how "dry" or "humid" it feels like.
In the inside too! Dew point is just as applicable to how you feel inside. If your air conditioner brings the temperature down but the dew point is still highish then you won't feel comfortable even if the temperature is lowish. This is why it is important to know your dew point, not just temperature and humidity.
And why your weather station needs to measure inside temperature and humidity (because dew point is derived from temperature and humidity) in addition to reporting the outside temperature, humidity and dew point. But you sort of need a computer to calculate dew point because the equation is kind of complicated (for non-math people.) Our latest version of the Color Weather Station does this calculation. (We use the Magnus formula)
Buttons After living with buttons to switch screens, I decided that using the single Flash button that is on the back of the NodeMCU is close enough that you probably don't need to go to the bother of soldering in buttons. The current code defaults to
Single Press advances to the next screen.
Long Press (One to five seconds) goes back to the main screen (screen 0).
Very long press (Longer than five seconds) turns the screen off. Pressing any button will restore the screen. The general idea is to turn the screen off when you will be away for an appreciable length of time. But turning the power off isn't a good idea because the DHT sensors sometimes need up to an hour to stabilize. So turning the screen off and on programmatically keeps the DHT sensor powered. Turning off the screen when not needed will probably prolong the life of the screen. (Maybe). It also saves a small amount of power.
6/24/2022 Tweaked button responses. Added an accurate dew point calculation which means that I could add an accurate Feels like it is display, in addition to the US NWS Heat Index calculation.
Updated the main page and added a fritzing diagram for wiring up screen changing switches.
6/20/2022 Fixed a bug that caused the buttons to not be as responsive as they could be on screen 0.
6/17/2022 Numerous small changes and improvements to both the Arduino IDE code and to
color_ws_stand_7-frog.scad (slantback.) The biggest change to the Arduino code is adding support for different button timings. Currently defined:
Short press navigates from screen to screen (like they used to.)
Long press (press from one to five seconds) will change to screen 0 (the main screen)
Very long press (hold a button down for more than (about) 5 seconds will cause the screen to shut off. (To save power or to prolong the life of the screen). Press either key to restore the screen. The idea is to do a long press to shut the screen off when you are leaving the room. Removing/restoring power isn't a good idea because repeated thermal shock can cause failures.
All of these work if you are using the built in
flash button on a NodeMCU.
Made the main screen be a bit more civilized if you aren't using touch, aren't using carousel, and also don't have a DHT temp/humidty sensor connected. (It now displays more current conditions where the DHT sensor "inside" temp/humidity was displayed.)
6/7/2022 Belatedly realized that we can use the built in
flash button on a NodeMCU to change between screens--we don't need to wire up switches with pull-up resistors to change to different screens! Just make sure that
#define BUTTON_SWITCHES is defined in
6/4/2022 Added code to switch between screens for the version that doesn't use a touch screen (that uses momentary contact NO switches wired to a pull-up resistor). Connected to
6/2/2022 Initial release of Frogymandias's version of the ThingPulse Color Weather Display kit.
Comments? Write to email@example.com