A weather station typically includes sensors that measure various environmental factors, and data collected by these sensors is then utilizes to predict the weather for the next few hours or days. In this case the data is taken from Opeweathermap site where we can create a free API key, so the device contains a minimum number of components.

   Some time ago I happened to watch a video with this weather station. The author of this project is Andrey Ushakov, and all credits go to him. He was also provide a link to the code

However, the archive is full of many different versions, and other data.  In addition, the code is relatively complex and has too many options, such as the type of microcontroller used, MP3 player, FM radio, support for external sensors, different types of displays, the option of two displays for greater visibility, infrared control, calendar, and many others. It was really hard to navigate through all the code versions, options, and information.

   So I decided to make and document this project in a little more detail, so that anyone can make it in no time. At the same time, I decided to leave out all accessories and options, and stick to the basic purpose of the device, which is just a advanced Weather station with a big clock.  I say Advanced, because it contains all possible weather information, including a five-day forecast.

    As I mentioned before, the device is extremely simple to make and consists of only few components:
    - Esp32 dev module microcontroler board,
    - 2.8 Inch TFT color Display with IL9341 control chip,
    - and one Button, or as in my case, a metal plate connected to the specified pin of the ESP32  
 If you want to make a PCB for this project, or for any other electronic project, PCBway  is a great choice for you. PCBway is one of the most experienced PCB manufacturing company in China in field of PCB prototype and fabrication. They provide completed PCB assembly service with worldwide free shipping , and ISO9001 quality control system. Also, on their site there is an online gerber viewer where you can upload your gerber and drill files to render your board.

   Now let's follow the order and method of installation of the microcontroller. First, you need to install ESP32 Board in Arduino IDE.
  1. In your Arduino IDE, go to File> Preferences

  2. Enter the following into the “Additional Board Manager URLs” field:
https://raw.githubusercontent.com/espressif/arduino-esp32/gh-pages/package_esp32_index.json
  Then, click the “OK” button:

  3. Open the Boards Manager. Go to Tools > Board > Boards Manager…

  4. Search for ESP32 and press install button for the “ESP32 by Espressif Systems“. Just to mention that in my case I used arduino core for ESP32 ver.2.0.4 :

  5. That’s it. It should be installed after a few seconds.

  Next, the ESP32 filesystem uploader should be installed on the Arduino IDE.
  1. Go to the given page and click the ESP32FS-1.0.zip file to download.
 https://github.com/me-no-dev/arduino-esp32fs-plugin/releases/

 2. Find your Sketchbook location. In your Arduino IDE, go to File > Preferences and check your Sketchbook location.

3.  Go to the sketchbook location, and create a tools folder.

4. Unzip the downloaded .zip folder. Open it and copy the ESP32FS folder to the tools folder you created in the previous step. 

5.  Finally, restart your Arduino IDE.

To check if the plugin was successfully installed, open your Arduino IDE. Select your ESP32 board, go to Tools and check that you have the option “ESP32 Sketch Data Upload“.

  As for the Arduino IDE, I specifically used version 1.8.16. Next, all the libraries provided in the Library folder should be installed. Just...

Read more »