elchupanibrei (elchupanibrei) wrote,
elchupanibrei
elchupanibrei

Category:

Proof of concept часов на ESP8266 и MAX7219

После драйвера, быстро набросал часы с получением времени по NTP. В главном цикле loop() ничего нет, все сделано на Ticker.h из Arduino Core. Раз в 10 минут стучусь на один из трех NTP серверов, получаю точное время корректирую таймер. Раз в секунду читаю значения таймера, моргаю точками и обновляю часы с минутами. Никаких тебе DS1307, DS3231, GPS NMEA.

Вместо кривой копипасты применил встроенные в Arduino и SDK функции из lwIP. Получаю время 3-я строчками кода! Экран достаточно большой, даже с плохим зрением легко читается с 4..5 метров. У матриц очень маленькое потребление. Секрет в динамической индикации - 1/800 секунду горит только 0..8 светодиодов на каждой матрице. Все 320 светодиодов на полной яркости, спокойно питаются от USB порта вместе с ESP8266. Средний ток часов, на самой маленькой яркости и выходной мощности WiFi 10mW, всего 60мА. Общая цена деталей, без учета блока питания и корпуса - ~$7.5.


часы на ESP8266 и MAX7219 с обновлением по NTP

О прикручивании OpenWeatherMap можно почитать тут.

UDP: Имхо отдельный RTC типа DS3231 оправдан только когда нет выхода в интернет и NTP серверам. Когда ESP8266 часто уходит в сон, тк просыпается и переподключается esp-шка очень долго. Ну и самый печальный случай, когда лень писать или когда не знаешь как писать и весь проект сплошная копипаста. Тогда да, проще вкорячить отдельный RTC.

Поясню. Например пропал интернет. Софтовый таймер внутри ESP8266 продолжает тикать и часы идут дальше без синхронизации по NTP. Вместо погоды, раз в 10 секунд, идет сообщение о том что интернета нет, как бы намекая…

Точности таймера хватает на неделю, потом разбежка уже будет заметна. За это время, а то и раньше, интернет точно появится. Часики синхронизируются и вместо сообщения об проблемах с инетом опять появится погода. Все! Мы только что сэкономили на проводах, модуле RTC и батарейки к нему.

Если рубанули у вас и ESP8266 перегрузилась раньше чем дали web, тогда синхронизируем в ручную со временем из браузера. Для этого есть специально обученная кнопка в вебморде. Дальше смотри п.1

Tags: #arduino, #esp8266, arduino, esp8266
Subscribe

  • Ремонт клона Nitecore Tube

    В далеком 2017 купил себе Nitecore Tube. Повесил на связку от автомобиля. Несколько раз выручал. Имхо один из самых лучших наключников, огорчала…

  • MACHINIST X79 LGA2011 v2.82

    Появился повод соскочить с древней LGA775 - подарили Xeon E5 2620 v2 LGA2011 и 16GB DDR3 1800MHz ECC. Платформа древняя, бесперспективная, но еще…

  • Очередной лабиан от китайцев

    Никогда не было и вот опять. Купил БУ серверную память НP DDR3 1600MHz с коррекцией ошибок для Xeon на LGA2011. Пришла с красивой наклейкой…

  • Post a new comment

    Error

    Anonymous comments are disabled in this journal

    default userpic

    Your reply will be screened

    Your IP address will be recorded 

  • 36 comments

  • Ремонт клона Nitecore Tube

    В далеком 2017 купил себе Nitecore Tube. Повесил на связку от автомобиля. Несколько раз выручал. Имхо один из самых лучших наключников, огорчала…

  • MACHINIST X79 LGA2011 v2.82

    Появился повод соскочить с древней LGA775 - подарили Xeon E5 2620 v2 LGA2011 и 16GB DDR3 1800MHz ECC. Платформа древняя, бесперспективная, но еще…

  • Очередной лабиан от китайцев

    Никогда не было и вот опять. Купил БУ серверную память НP DDR3 1600MHz с коррекцией ошибок для Xeon на LGA2011. Пришла с красивой наклейкой…