esp8266 tft lcd weather station in stock

In the previous article (“WiFi OLED Mini Weather Station with ESP8266“) I have used the OLED kit from https://blog.squix.org. And as promised, this time it is about the “ESP8266 WiFi Color Display Kit”:

I had ordered both because I thought that the Color Display kit is needs the other kit as a base. Well, it turned out that both kits work independently. My bad. Actually this is good, as I have now two independent ESP8266 weather stations :-). An addition to that, they can exchange data (e.g. temperature/humidity) with a server, so that makes them a perfect dual weather station.

Example code is available on GitHub (https://github.com/squix78/esp8266-weather-station-color). The code is very well documented I had no issues to make all the needed configuration (WiFi SSID and connection settings). After a few  hours I had the ESP8266 weather station up and running in the first prototype of the enclosure:

After a few hours, I have now my second ESP8266 WiFi weather station with touch LCD. It is not looking good and I very much enjoy it. The design is available on Thingiverse (https://www.thingiverse.com/thing:2527282).

esp8266 tft lcd weather station in stock

Nice packaging comes with more tham you need to build your weather station. Only thing that was missing was a piece of paper with reference to documentation, which is to be found on the Internets.

What you’ll build in less that 20 minutes of soldering is a device, that (with demo sketch for Arduino IDE) is able to connect to your WiFi and fetch current WeatherStation data for pre-defined location. On first start, it will require to calibrate touch display used to control the device.

Even though it might not be visible at first sight, there’s a tremendous amount of work behind this thing (and by ‘thing’ is meant a combination of software and hardware). When you start installing the sample Weather Station sketch, it appears that you need to install some libraries, all of them by Daniel Eichhorn: ESP8266 WeatherStation which is a WeatherUnderground client, Json Streaming Parser that helps keeping low memory profile while getting huge API responses, and Mini Grafx library that implements a VSYNC equivalent through framebuffer for embedded devices.

esp8266 tft lcd weather station in stock

In this project we’ll show you how to make a WiFi enabled, portable Weather Station using an ESP8266. The software, written by Daniel Eichhorn, uses the Wunderground API to pull weather data. It shows the date, time, current weather conditions, 4-day forecast and even moon phases. The user interface features lovely typography and icons that makes really a clean layout. The 2.4” TFT Feather Wing combined with the Adafruit Feather HUZZAH ESP8266 make assembling this project incredibly easy.

esp8266 tft lcd weather station in stock

As you all know the are a few variants of the 1.8" TFT on the internet. With the genuine Adafruit lcd-s there are usually no problems. But when using fake ones(usually from Aliexpress) you have to make some adjustments.

Bodmers TFT_eSPI library is very awsome and rich funcionality. And the best part is that he made it to handle the pixel offsets depending on wich kind of 1.8" TFT you are using.

Then uncomment the tft height an width. And then in my case(REDTAB) uncomment for eg: #define ST7735_REDTAB. After this save it for the moment and compile sketch and upload to board. To be sure i have defined the parameters in the sketch too.This is a bit long procedure, cause you have to compile and upload the sketch every time to board untill the offset is gone, but it is worth the experimenting. For editing the h. files i strongly suggest Wordpad. Images included.

esp8266 tft lcd weather station in stock

To receive later data by the platform OpenWeatherMap you will need an own account. Sign up here to get an API key: https://docs.thingpulse.com/how-tos/openweatherma...

Go to https://openweathermap.org/find?q= and search for a location. Go through the result set and select the entry closest to the actual location you want to display data for. It"ll be a URL like https://openweathermap.org/city/2657896. The number at the end is what you assign to the constant below.

esp8266 tft lcd weather station in stock

The code in this project supports an ILI9341 240x320 TFT display with code running on an ESP8266. To get you up and running in no time we created a kit which contains all the necessary parts including a custom PCB to connect display and WiFi chip:

esp8266 tft lcd weather station in stock

This project deals with a permanent weather station running on a Wemos D1 mini ESP8266 microcontroller that drives a 3.2 inch diagonal 320*480 display with ILI9341 controller. Local / regional weather data are downloaded from an OpenWeatherMap server as a JSON object, parsed, processed and displayed.

Access to information about the weather is always handy in Northestern Europe. The Low Countries where I reside has an amazing variety of weather patterns, common to the mild sea climate at northern latitudes. Sunshine, wind and rain succeed each other rapidly.

There are several weather services and airports that continuously broadcast weather reports aimed primarily at aviation and shipping. A service like OpenWeatherMap is relatively new: an open source community that makes weather data available in JSON strings that can be downloaded, parsed and then processed to display the information one assesses important enough to show on screen (figure 1). In a previous project I constructed what was basically a bench based on a ESP32-WROOM32 microcontroller board and a 320*240 pixel display. However this setup was constructed for experimental purposes using the high-performance ESP32. In the present project we construct a permanent JSON weather station. To have a small footprint and to use a microcontroller whose power matches the job better than the ‘roaring horse’ ESP32 I selected the modest Wemos D1 mini microcontroller board. The Wemos D1 mini has WiFi on board which is most practical, it has enough memory and sufficient speed. The current project leans otherwise heavily on experience obtained during the previous weather station project.

JSON strings received from www.openweathermap.orgcontain an amazing lot of weather information of almost any place on the globe. Figure 1 presents the local weather inormation. I am most interested in: current temperature, minimum and maximum temperatures of the day, barometric pressure, relative humidity, wind, wind direction. A little bit of graphical presentation embellished the screen. The big challenge is that all information has to fit a limited, 320*240 pixel screen.

The first basic decision was that all components should fit an 8×12 cm double sided prototyping soldering board, with the display in landscape orientation: a 3.2 inch diagonal 320*240 pixel TFT with ILI9341 controller and SPI connectivity. This leaves several possible positions for the microcontroller board: above, below or next to the display. Most pleasing for the eye is when the microcontroller is positioned next to the display, with the power connector directing downward. Wiring can then be ultrashort. All wiring is of course located on the back of the soldering board. Another basic decision (rather a dogma) was to mount the major components always on pin header sockets instead of soldering them directly onto the main board.

Wiring is simple. The display is of the 14-pin SPI type that needs only five wires to control plus, of course, wires for power and GND. An ILI9341 SPI TFT display has a single row of 14 pins of which six serve touch functionality and SD card support. The pinout of the display is presented as a table in figure 2. This is the wiring used in the current weather station. The touch and SD card functionality is not used here.

OpenWeatherMap.org is a company specialized in the distribution of global weather data (https://openweathermap.org). Data for 200,000 locations on Earth is continuously available. Although the firm offers a repertoire of (mostly) commercial products, one of their services is a free subscription to a limited amount of weather data, say a ‘teaser’. One can obtain a free API, capped to a generous 60 calls per minute or a one million calls per month. Perfect for the hobbyist.

The document received after a WiFI connection has been established and connection has been made with the OpenWeatherMap server, is a string in JSON notation. In my case for instance:

JSON object = {“coord”:{“lon”:4.4931,”lat”:52.1583},”weather”:[{“id”:804,”main”:”Clouds”,”description”:”overcast clouds”,”icon”:”04d”}],”base”:”stations”,”main”:{“temp”:279.47,”feels_like”:277.62,”temp_min”:278.71,”temp_max”:279.82,”pressure”:1024,”humidity”:88},”visibility”:10000,”wind”:{“speed”:0.89,”deg”:325,”gust”:1.34},”clouds”:{“all”:100},”dt”:1615904762,”sys”:{“type”:3,”id”:2009098,”country”:”NL”,”sunrise”:1615874031,”sunset”:1615916851},”timezone”:3600,”id”:2751773,”name”:”Leiden”,”cod”:200}

Whereas the ESP32- ILI9341-SPI combination is perfectly served by the TFT_eSPI.h library created by Bodmer, support for ESP8266 microcontrollers and ILI9341-SPI is limited. The current sketch therefore leans on the Adafruit_GFX.h and Adafruit_ILI9341.h liraries. There are minor differences between the instructions used in TFT_eSPI.h and the Adafruit libraries.

In order to make it possible to move an entire panel from one end of the display to another position, all graphical items are positioned relative to the x-y coordinates of the upper left corner of that panel. This is exemplified with the barometer panel instructions. There are two functions involved here: a function that ‘builds’ static content of the barometer panel and a dynamic function that refreshes the barometric panel every time that a new JSON string is received from the OpenWeatherMap server. The comment lines are removed here to save space.

Graphical libraries such as Adafruit_GFX.h offer functions to produce filled circles, rectanges and triangles while such an instruction as tft.fillPolygon is not available. A way to nevertheless create a filled polygon is do some creative programming with triangles. This trick is used here (and in Bodmer’s Rainbow Gauge as well): four points that define two triangles (figure 5):

And ready is the barometric pressure panel. Every cycle of the weather station program the essential components of the panel need to be refreshed: red circle and blue ‘fill’. For this purpose I have composed a function ‘refresh_dynamic_baropanel ():

One of the variables provided by the OpenWeatherMaps JSON string are the minimum and maximumn temperatures measured locally. These data inspired me to include a min-max thermometer in the weather station. The ‘mercury level’ in the thermometer graphics consists of a fixed red circle and is a rectangle whose upper edge (the ‘level’) is coupled to the reported maximum temperature. Minimum tenperature is fixed to avoid negative values for the ‘fill’ function.

esp8266 tft lcd weather station in stock

This case is made for a 2.4" TFT screen with touch panel. The design is pretty similar to my other design which uses a smaller 2.2" screen instead: https://www.thingiverse.com/thing:2832880

esp8266 tft lcd weather station in stock

1. We have to install it first. Open file / preferences in the Aduino -IDE and insert the following link in the Additional Boards Manager URLs field: http://arduino.esp8266.com/stable/package_esp8266...

Download all librariesThe ThingPulse Weather Station Color depends on a number of other libraries.They need to be made available to the Arduino IDE for them to be compiled and linked into the final application.

esp8266 tft lcd weather station in stock

Welcome to my new Weather Widget Project. Earlier I have posted an article on the weather widget, that uses a 0.96" OLED display to display the weather parameters. The main problem in the earlier version is that the display is very small in size, so you have to come very close to it for reading the parameters. That"s why it was always in my mind to upgrade it to a larger color display with a nice 3D printed enclosure.

In this post, I will show you how to make a Weather Widget by using ESP8266 and a 2.8" touch screen display. The device retrieves localized weather information from https://openweathermap.org/ by WLAN and displays it on the Display module.

I would like to give credit to my friend Dani Eichhorn who did all of the programming parts. He is updating the software on his Github page regularly with new features. You can visit SquixTechBlog to see more projects on ESP8266.

My plan is to place the weather display circuit inside a 3D-printed enclosure. But the enclosure that I am going to use is very compact, and there is little room to keep the Wemos board along with the connecting wires inside the housing.

The wiring diagram is very straightforward. You have to connect the TFT display module ( ILI9341 ) pins with Wemos pins as per the schematic diagram. The schematic diagram is shown above. You may also follow the following pin mapping

2. Enterhttps://arduino.esp8266.com/stable/package_esp8266com_index.json into the File>Preferences>Additional Boards Manager URLs field of the Arduino IDE. You can add multiple URLs, separating them with commas.

After setting up Arduino IDE and installing all the libraries we can move to upload the code into the ESP8266 board ( Wemos D1 Mini Pro or any other board )

First, you have to unzip the code downloaded in the earlier step and then save it somewhere on your PC or Laptop. Remove the word master from the folder name, the final name shall be " esp8266-weather-station-color "

In one of the tabs, the IDE opened settings.h. Go through the file and adjust the two handfuls of configuration parameters. They are all documented inside the file directly. Everything should be self-explanatory. Most importantly you will need to set the OpenWeatherMap API key you obtained in a previous step.

If you are successfully uploaded the code into the ESP8266, you will immediately notice the display on the front page by searching the WiFi Network for connection. After connecting the device to your WiFi router, it will update the time and weather data from the web.

Now you will be able to see all the weather information along with all other parameters on the TFT display. You can swap between the different pages by using the stylus or touching with your finger.

esp8266 tft lcd weather station in stock

Features:- cheap 240x400 3.5" parallel 8-bit TFT LCD (ILI9327)- any ESP8266 with at least 11 GPIOs available (WEMOS D1 mini used here) - finally all ESP8266...

esp8266 tft lcd weather station in stock

Wall mounting enclosure set with 2.4 inch ILI9341 touchscreen for ESP8266, NodeMCU, Wemos D1 mini and ESP32, code examples thermostat, weatherstation, social tracker

esp8266 tft lcd weather station in stock

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.

It’s been a while since my last post, but I have been working hard on improving the WeatherStation Color. Read here the engineering challenges I had to overcome and how I solved them

Ever since the launch of the ESP8266 Weather Station in the US Amazon store I had to ship two different versions of this product. The customized box containing the Weather Station with the NodeMCU, a OLED display, a DHT11 and some cables was only available through …

In this post I’d like to show you some of the projects that other people did based on my WeatherStation library. I hope this will inspire you to get creative and extend the code with you features. Or maybe you have built a nice case …

More than two months ago I started the process to have my ESP8266 WeatherStation listed on Amazon. The big online platform offers a service called Fulfilled by Amazon or short FBA which allows you to send your items directly to their warehouse. Your product will …

If you don’t mind code which is a little bit rough around the edges you can start experimenting with the code for the color weather station. I just published it on Github. You  can find it here: https://github.com/squix78/esp8266-weather-station-color

As first task for the upcoming Weather Station Color project I wanted to adapt my online font generator. Easily creating fonts in various sizes will make work on the Weather Station code a lot easier. Since my own display library doesn’t support the color TFT …

Yesterday I started playing around with a TFT color display connected to the ESP8266. First I adapted example code to download BMP files to the flash memory, and boy, this display has some nice intense colors!

I received a few complaints that users couldn’t get the Platformio IDE running since the security software detected it as malicious software. So I added the code also to the WeatherStation library as a demo project.

I have been working on a new demo of the Weather Station which is built as a platformio project. It has a few features which are not in the library demo: Wifi Signal Quality icon in overlay Weather Icon, temperature and time in overlay By …

esp8266 tft lcd weather station in stock

In this project we’ll show you how to make a WiFi enabled, portable Weather Station using an ESP8266. The software, written by Daniel Eichhorn, uses the Wunderground API to pull weather data. It shows the date, time, current weather conditions, 4-day forecast and even moon phases. The user interface features lovely typography and icons that makes really a clean layout. The 2.4” TFT Feather Wing combined with the Adafruit Feather HUZZAH ESP8266 make assembling this project incredibly easy.