

Всім доброго! після знайомства з esp32 першим проєктом був дублікатор ключів домофону, але там нічого складного, спаяв пдроти та прошив готовий код, а вже наступним проектом стала погодна станція, і тут я вже вирішив не повторюватись, а створити щось власне, не таке як в когось, і почав як всі рекомендують з точки доступу, годинника тексту HELLO WORLD, ну і вже більше року вдосконалюю проект, зараз вважаю що не соромно його показати людям.
Для чого взагалі робив? ну по перше навчитись програмувати, ну і зробити щось корисне для дому самостійно. почав як вже казав з погоди а там додався календар, замітки в ньому, тривоги з спвіщенням про них, а оскільки екран сенсорний, то і керування всім цим.... Тепер вдома окремий пристрій, який швидко показує погоду, час, календарні нагадування та ситуацію з повітряними тривогами. Не ще одну вкладка в телефоні, а невелика станцію з екраном, яку можна залишити увімкненою і просто поглянути на неї. бо буває, що, щоб дізнатися, чи є тривога, треба відкрити застосунок, а тут подивився на світлодіод і одразу видно.
Що показує станція
На головному екрані зібрана основна інформація:
* поточна погода та температура;
* прогноз на кілька днів;
* вологість, вітер, атмосферний тиск;
* час сходу та заходу сонця;
* індекс якості повітря;
* годинник, дата та день тижня;
* найближчі календарні замітки.
* тиск повітря (Для тиску можна обрати звичні одиниці мм рт. ст. або гектопаскалі).
* Окремо доступні повноекранний годинник і прогноз погоди по годинах.
Карта повітряних тривог
Одна з головних функцій станції
— показувати ситуацію з повітряними тривогами на карті України. Також є відображення статусу для налаштованої області чи громади та журнал останніх подій.
Коли надходить повідомлення про тривогу або відбій, станція показує червоний (або зелений) екран з написом що ви самі обираєте в вебінтерфейсі та подає звуковий сигнал і використовує світлодіодну індикацію.
Дані про тривоги отримуються з онлайн-сервісів. Для роботи потрібні мережа Wi-Fi та відповідні ключі доступу; їх можна отримати на сайтах ukrainealarm та alertsinua.
та ввести в налаштуваннях пристрою. Також при натисканні на головному екрані на тривогу, можна подивитись журнал тривог для обраних районів.
Календар і замітки
У станції є календар із замітками. Це можуть бути дні народження, пам’ятні дати чи будь-які власні нагадування. Для події можна задати щорічне повторення або конкретну дату.
Календар показує найближчі замітки, а на головному екрані може з’являтися рядок із нагадуванням про подію, що наближається. У вебінтерфейсі можна переглядати та редагувати збережені замітки, а також додавати нові. Також о 9:00 станція може подати сигнал на початку загальнонаціональної хвилини мовчання. Цю функцію можна вмикати й вимикати.
Налаштування в меню та через браузер
Для налаштування не потрібно щоразу підключати пристрій до комп’ютера. Станція відкриває локальний вебінтерфейс, до якого можна зайти з телефона чи комп’ютера в тій самій мережі.
Звідти можна змінити параметри погоди, тобто місце, де ви перебуваєте, дані для районів чи областей тривог, налаштування екрана та деякі інші параметри. Доступ до сторінок захищений PIN-кодом. Там само можна керувати замітками, а за відповідної конфігурації — оновити прошивку через Wi-Fi.
Коли станція не може під’єднатися до збереженої мережі, вона запускає власну точку доступу для налаштування Wi-Fi. Ідея в тому, щоб відновити підключення без перепрошивання пристрою.
Автоматизація і зручність
У проєкті є кілька функцій, які не відразу помітні на фото, але важливі під час щоденного використання:
* автоматичне налаштування часу через NTP і перехід на літній та зимовий час;
* автоматичне відновлення Wi-Fi після втрати зв’язку;
* регулювання яскравості, зокрема за показами датчика освітлення;
* нічний режим зі зниженою яскравістю;
* налаштування кольору фону;
* світлодіодна індикація стану;
* щоденний короткий сигнал о 9:00 на знак початку хвилини мовчання — його можна вимкнути у вебналаштуваннях.
Під час налаштування станція може призупиняти фонові запити погоди та тривог, щоб вони не заважали роботі з вебінтерфейсом і не створювали зайве навантаження.
додам що на екрані не всі налаштування, багато чого перенесено в вебінтерфейс для зручності.
Що всередині
Основа проєкту — ESP32 wroom, кольоровий TFT дисплей з роздільною здатністю 320 × 240 із сенсорним керуванням і програмна частина на Arduino. Дані про погоду та якість повітря отримуються через OpenWeatherMap, а інформація про тривоги — через зовнішні API.
Налаштування пристрою та замітки зберігаються у пам’яті ESP32, тому їх не потрібно вводити після кожного перезапуску. Прошивка розділена на окремі частини: робота з Wi-Fi, вебінтерфейс, налаштування, календар, карта тривог та відображення на екрані.
Це не промисловий прилад і не заміна офіційних сповіщень на телефоні. Це особистий проєкт, який я поступово розвиваю під свої потреби. Надійність показу даних залежить від Wi-Fi, доступності зовнішніх сервісів і коректно введених ключів. але з досвіду скажу, що станція сповіщає про тривогу до вмикання сирен в місті. в меню параметри можно подивитись технічну інформацію для аналізу роботи коду, стан мережі, кількість вільної пам’яті та інше.
підключення
* ЖИВЛЕННЯ ДИСПЛЕЯ (TFT): \* VCC — VIN (або 3.3V залежно від модуля)
* GND — GND
* SPI ШИНА ДИСПЛЕЯ (ILI9341 / TFT):
* TFT\_CS ───────── GPIO 5
* TFT\_RST ──────── GPIO 4
* TFT\_DC ───────── GPIO 22
* TFT\_MOSI ─────── GPIO 23
* TFT\_SCLK (CLK) ─── GPIO 18
* TFT\_MISO ─────── GPIO 19
* TFT LED (Підсвітка) ── GPIO 26
* СЕНСОРНИЙ ЕКРАН (Touch XPT2046):
* TOUCH\_CS ─────── GPIO 17
* T\_DIN ───────── TFT\_MOSI (GPIO 23)
* T\_DO ───────── TFT\_MISO (GPIO 19)
* (T\_CLK та T\_IRQ підключаються паралельно до SCLK та Touch)
* ІНДИКАЦІЯ ТА СЕНСОРИ:
* Зелений світлодіод ── GPIO 32 (через резистор \~0.5 кОм)
* Червоний світлодіод ── GPIO 27 (через резистор \~0.5 кОм)
* Біпер (Buzzer) ── GPIO 25 (другий вивід на GND)
* Датчик освітленості ── GPIO 34 (аналоговий пін, через дільник до GND)
Що хочу додати далі
Поточна версія зроблена під конкретну конфігурацію ESP32 WROOM і дисплея. Далі хотілося б адаптувати проєкт до інших плат ESP32 та інших типів екранів, а також додати нові сценарії використання.
Одна з ідей — інтеграція із Zigbee-пристроями та Smart Life: наприклад, показ стану датчиків або керування окремими пристроями. Поки це лише напрямок для дослідження, а не реалізована можливість. Для цього потрібні час на розробку, перевірки сумісності та, можливо, додаткове обладнання.
Також є простір для покращення інтерфейсу, розширення календаря й налаштувань, оптимізації роботи мережі та адаптації прошивки під інші екрани. Розвиватиму проєкт поступово, залежно від часу й доступних ресурсів.
Буду радий відгукам
Відео роботи станції
Якщо вам цікаві ESP32, домашня автоматизація або подібні пристрої — буду радий почути, яких функцій бракує, що варто покращити та які плати чи дисплеї було б найкорисніше підтримати наступними. всі файли за посиланням. (https://github.com/VERT1984/weatherVERT-esp32-wroom-2.8tft) , там же можливість задонатаити на монобанку.
пітун хубло!!!
1