ESP8266 WeatherStation Update: Using touch interface

Do you like this post? Writing posts, developing libraries and programming online font creators is actually hard work. I order most of my electronics from a Chinese website called Banggood. It is save and the items usually arrive in good quality. With every order you do there by following this link you are supporting the blog. Thank you!

I started working on the ESP8266 WiFi Color Kit‘s touch interface for the WeatherStation Color. I added a few more screens and a touch screen calibration during start up.

Here is a video of the upgrades.

Please note: don’t forget to also upgrade the MiniGrafx library, since I added a new method drawStringMaxWidth(..).

Where to buy?

If you like this project and you haven’t already bought one you can order the necessary hardware from my shop. I ship worldwide and you have several options for shipping.

Order Now!

Posted by squix78

16 comments

  1. Daniel I have one of your Color Weather Kits with the pcb board and am trying to compile and load the latest
    Weather Station Color Touch IDE. I have the following libraries loaded:

    Mini Grafx by Daniel Eichhorn version 0.10
    ESP8266 WeatherStation by Daniel Eichhorn version 1.31
    Json Streaming Parser by Daniel Eichhorn version 1.04
    simpleDSTadjust by neptune2 version 1.20.
    I get the following message when I compile:
    C:\Users\Danny\Documents\Weather Station Color Touch\Project\esp8266-weather-station-color\esp8266-weather-station-color.ino: In function ‘void drawCurrentWeatherDetail()’:

    esp8266-weather-station-color:437: error: ‘class MiniGrafx’ has no member named ‘drawStringMaxWidth’

    gfx.drawStringMaxWidth(15, 200, 240 – 2 * 15, forecasts[0].forecastText);

    ^

    C:\Users\Danny\Documents\Weather Station Color Touch\Project\esp8266-weather-station-color\esp8266-weather-station-color.ino: In function ‘void drawAbout()’:

    esp8266-weather-station-color:524: error: ‘class MiniGrafx’ has no member named ‘drawStringMaxWidth’

    gfx.drawStringMaxWidth(15, 265, 240 – 2 * 15, ESP.getResetInfo());

    ^

    exit status 1
    ‘class MiniGrafx’ has no member named ‘drawStringMaxWidth’

    Any suggestions?
    Thanks,
    Danny

      • I did a new download from you GitHub site and the new MiniGrafx is there, got it running now. I did have some trouble with connecting to the internet had to go in and set up manually. Thanks Daniel another great project.

  2. I have the newest version of this app running and I really like the new displays. Is the screen intentionally NOT supposed to every shut down? Mine is constantly updating and WeatherUnderground has already notified me that I’ve exceeded my limit for number of data requests for the day in just a couple of hours.

  3. A bit of bad news with the app now. I’m getting an error (see below)

    Exception (3):
    epc1=0x40100576 epc2=0x00000000 epc3=0x00000000 excvaddr=0x40000009 depc=0x00000000

    ctx: cont
    sp: 3fff08e0 end: 3fff0f40 offset: 01a0

    I have the full stack dump too if needed. I have a feeling it has something to do with processing alerts. I have an alert that is quite long.

    start document
    Alert type processed, value: FLO
    Alert description processed, value: Flood Warning, Areal Flood Warning
    Alert start processed, value: 1:02 PM EDT on July 11, 2017
    Alert expiration processed, value: 5:45 PM EDT on July 11, 2017
    Alert msg length: 511
    Alert message processed, value: The Flood Warning continues for The Wildcat creek near Lafayette. * From Wednesday evening to late Wednesday night. * At 12:45 PM Tuesday the stage was 6.7 feet. * Flood stage is 10.0 feet. * Forecast…the river is expected to rise to near flood stage tomorrow evening. * At 10.0 feet…flooding of lowland areas in progress in portions of Tippecanoe County. Lat…Lon 4047 8645 4042 8681 4046 8689 4048 8687 4045 8682 4050 8645 102 PM EDT Tue Jul 11 2017 The Flood Warning continues for the Wa
    Alert phenomena processed, value: FA
    Alert significance processed, value: W
    Alert type processed, value: WAT

    I’m guessing your app can’t handle a 511 byte alert message! Is that possible?

  4. Hi There
    I have used your previous code for the weather station and its absolutely great and this one is even better. After some mimor dst readjustments for Australia its all working great. However i have stumbled across a problem. My display continually changes through the screens quite fast and wouldn’t stop.. seems like the touch isn’t reacting… i have checked the wiring a few times and seems to be all good. At the moment to fix this I am using the code with number of displays as 1 that way I can see the time screen but not the other screens..Please help..

    • Hi Soubir. Which display type are you using? I just got confirmation that some modules don’t have the XPT2046 touch screen chip and the the isTouched method always returns true. In that case you’d have to find the proper driver and adjust the code or get the same hardware as I use (e.g. The starter kit from my shop !hint! !hint!;-))

  5. Hi Daniel,

    I am using previous code and want to use latest one but I have a problem with Turkish characters. I cannot see some Turkish chars like “ı-İ-ş-Ş-ğ-Ğ-ü-Ü-ö-Ö” neither previous code nor latest code. How can I print these Turkish chars to display?

Leave a Reply