Здравствуйте, уважаемые читатели. Прошло уже два года как я собирал часы газоразрядных индикаторах (ссылка), наконец нашлось время и я закончил новый проект, сегодня хочу рассказать о нём, на этот раз часы на светодиодных матрицах. Часы будут с Wi-Fi подключением к сети, с синхронизацией времени и получением данных о погоде из интернет, с отображением температуры и влажности в помещении, многофункциональным будильником и управлением всем этим добром через веб-интерфейс.
Под катом — схема, прошивка, процесс сборки, описание функционала часов.
Наткнулся я как-то на эти часы в сети, заинтересовался, решил попробовать сделать сам. На тот момент функционал у часов был не такой богатый, пока я покупал запчасти у китайцев и собирал часы, автор обновлял прошивку и часы обрастали новыми функциями, но об этом ниже. У автора есть свой телеграм канал — t.me/jeeui
Дисплеем для данных часов служит светодиодная матрица 32 на 8 точек, на драйвере MAX7219, набрана из четырёх матриц 8 на 8 светодиодов, ссылка
В качестве мозгов — микроконтроллер ESP8266 (автор рекомендует на основе модуля ESP-12F), ссылка
Собственно схема часов:
Датчик DHT22 необходим для измерения температуры и влажности в помещении, фоторезистор 5537 для автоматической регулировки яркости дисплея в зависимости от освещения, сенсорная кнопка TTP223 для управления, и активная пищалка для будильника.
Прошивка
Перед сборкой схемы наших часов необходимо прошить микроконтроллер, ссылка на прошивку и программы — тут.
Сначала необходимо установить драйвер для платы микроконтроллера, что бы «Диспетчере устройств» появилось наше устройство, запоминаем номер порта нашего устройства.
Далее с правами администратора, запускаем программу flash_download_tools, нажимаем кнопку «ESP8266 Download tool»
В появившемся окне в верхней строчке указываем путь к нашей прошивке (файл с расширением bin), внизу выбираем номер порта нашего устройства, все остальные настройки выставляем как на скриншоте:
С начала нажимаем кнопку «ERASE» и очищаем на всякий случай содержимое флеш памяти микроконтроллера, после нажимаем «START» и заливаем нашу прошивку.
Собрал схему на проводках, первое включение:
Часы заработали сразу, к сети конектятся, время, температуру показывают. Надо всё это дело собирать в корпус.
Корпус и сборка
Корпус для часов решил сделать из листового вспененного ПВХ толщиной 4 мм, из такого же я делал игрушечный светофор для сына. В иллюстраторе сделал раскройку корпуса, если кому понадобится — ссылка
Напечатал на самоклеящейся бумаге, наклеил на лист ПВХ и вырезал:
С помощью цианоакрилата склеил корпус:
Ещё фото корпуса
Всю электронику я решил разместить на монтажной плате позади светодиодной матрицы, вырезал по размерам матрицы две монтажные платы и с помощью пайки скрепил их вместе (в тот момент напал на меня приступ лени, не захотел я рисовать и вытравливать плату). На матрицу со светодиодами припаял два прямых PLS разъёма с обеих сторон, а на получившеюся монтажную плату два PBS разъёма:
Получился такой себе «бутерброд», конструкция получилась достаточно жесткая, на монтажной плате теперь можно собирать схему:
В первой версии часов, если можно так выразится, была задумка установить встроенный блок питания:
Фото монтажной платы со стороны пайки, слабонервным не смотреть
Заднюю панель сделал с разъемом для провода питания, датчик температуры и влажности также приклеил внутри:
Это была ошибка, показания датчика в таком варианте, мягко говоря, не соответствовали действительности. А со встроенным блоком питания часы работали как-то не стабильно, мог не засветится экран при включении, пропадала связь с роутером.
В итоге отказался от встроенного блока питания, поставил разъём 5,5 x 2,1 мм для внешнего блока питания. Для датчика DHT22 также установил разъём на задней панели, чтобы вывести его за пределы корпуса.
Заднюю панель установил на металлические стойки:
Вернёмся к корпусу, в верней его части вырезал углубление для сенсорной кнопки, и вклеил её туда. Переднюю часть корпуса покрасил в черный, чтобы не просвечивал белый цвет когда будет установлено затемненное стекло:
Провод от сенсорной кнопки вывел назад, кстати для корректной работы сенсорной кнопки нужно запаять перемычку А на плате сенсора:
Обклеиваем корпус виниловой пленкой с рисунком под дерево:
Собираем всё вместе, вид спереди:
Вид сзади:
Фото во включенном состоянии:
Функционал
При первом включении часы создают точку доступа, и на экране пробежит бегущая строка:
Подключитесь к WiFi: WiFi-CLOCK (пароль: 0000-0000) и откройте в браузере адрес 192.168.4.1 для настройки!
После подключения к этой точке доступа заходим по указанному адресу и попадаем в веб-интерфейс часов:
В настройках присутствует восемь разделов меню — Главная, Часы, Дисплей, Будильник, Праздники, Погода, Система, WiFi.
Разделы веб-интерфейса
Нас нужен в первую очередь раздел WiFi, в нём вводим имя нашей домашней точки доступа и пароль, переключаем часы в режим клиента и нажимаем кнопку «Перезагрузить». Часы перезагрузятся и в этот раз подключатся к домашней Wi-Fi сети. Как это выглядит можно увидеть на видео:
Роутер выдаст новый IP-адрес для наших часов, о чем они сообщат в бегущей строке, теперь чтобы попасть в настройки нужно заходить по этому новому IP-адресу. Чтобы правильно показывало температуру в помещении нужно указать тип датчика, заходим в раздел «Система» и выбираем тип внешнего датчика — DHT22 (возможны ещё DS18B20 и DHT11).
Для того чтобы часы показывали данные о погоде, нужно сначала зарегистрироваться в одном из трёх на выбор погодных сервисов, для получения API ключа и ID местности.
AccuWeather — для бесплатного тарифа ограничение сервиса 50 запросов в сутки (мин. 1 раз в 30 мин) API key: Открываем Developer AccuWeather и регистрируемся, после регистрации создаём API тут API AccuWeather. ID города: Открываем AccuWeather и в строке поиска обязательно пишем свое место положение. После этого смотрим в строку адреса браузера, цифры после последнего / и будут нужный нам ID.
Apixu — для бесплатного тарифа ограничение сервиса 1000 запросов в месяц (мин. 1 раз в 45 мин) API key: Открываем Apixu (weatherstack) и регистрируемся, после регистрации API берем тут Dashboard. ID города: Пишем только латиницей.
OpenWeatherMap API key: Открываем OpenWeatherMap и регистрируемся, после регистрации API создаем тут API OpenWeatherMap. ID города: Пишем только латиницей.
По умолчанию часы работают в таком режиме — 25 секунд показывают текущее время, потом бегущая строка с днём недели и датой, далее снова 25 секунд показывают текущее время, потом снова бегущая строка уже с погодой, температурой и влажностью в помещении, далее цикл повторяется. Все параметры, что когда показывать, меняются в настройках, для себя я настроил так что постоянно показывается текущее время, а погоду и температуру показывает при касании сенсорной кнопки.
Часы имеют многофункциональный будильник, который может работать в нескольких режимах: Сигнал – воспроизводит звуковой сигнал в заданное время Изменить состояние пина GPIO12 — возможно использовать как реле или как сигнальное значение GET запрос — отправка заданного http запроса, будет полезно для умного дома или чего-либо ещё Отправка кода — в зависимости от радиомодуля, на частоте 433 или 315 возможна отправка кода для управления устройствами, поддерживающими данную возможность
Есть возможность настройки отображения стиля цифр часов — обычный, жирный, жирный с засечками:
Настраивается также регулировка яркости матрицы по датчику, плюс есть настройка порога срабатывания датчика освещенности.
Есть возможность вывода сообщений на дисплей по GET запросу
Есть возможность показывать праздники, можно добавить до 15 своих праздников.
И наконец есть возможность обновлять прошивку файлом через веб-интерфейс (ссылка в меню FW Update на репозиторий)
Вот такие получились часы, всем удачных поделок, спасибо за внимание.
Комплексно. Датчик очень капризный к питанию. А БП в таком размере питание дает очень грязное. Лечение — на выходе БП поставить электролит и керамику.
По моим ощущениям — черные по качеству лучше. Синие такие БП — гораздо хуже.
Вот я про «для себя» выгоду и говорил. Каждому — своё, конечно. Видимо, я не фанат разных цветов в таком маленькой формате.
Предпочитаю разные цвета видеть на новогодней ёлке.
Про исходники согласен, а вот про адрессные светодиоды для часов нет. У меня похожий проект с 5 матрицами (320 светодиодов) спокойно работает от USB. А для ваших ws2812 нужен бп в пару ампер.
Разве 2А — это проблема, при внешнем-то питании? Ну и в помещении они будут светить на 10-20% от максималки. С ws2812 проблема скорее в размере — он под настенные часы, а не настольные…
Я делал настенные из отрезков ws2812.
Зрителю удобнее наблюдать, когда время одним цветом, а температура — другим.
Радуги не надо, но вот разнородные показатели разделить по цвету — это, как оказалось, очень логично.
Угу его одному понятный ui2 фреймворк поверх ардуино — это адь и Израиль. Да еще код часов без исходников. Да ну его, буду свой пилить. Основной функционал уже работает, влизываю код и вебморду.
Баловство это всё. После нескольких месяцев экспериментов пришел к выводу, что часы должны показывать время и всё. Опционально могут показывать и температуру/влажность, но только с уличного датчика и то бесит порой.
Есть смысл работы с датчиками и MQTT.
Например у Вас уже есть часы и они всё равно кушают электричество и висят в домашней сети, так пусть передают данные с датчиков в mqtt.
При этом редкие события из mqtt отображаются на экране, например закончилась стирка, загрузился торрент. Ну и что сами пожелаете.
А вот периодическая смена часы-календарь-температура, это да, это бесит.
Давным давно купил себе часы-«метеостанцию», с али, «булыжник», прикольная штука, уже какой год работают проблем нет.
На практике используются только для текущего времени, уличной и внутренней температуры, всякие будильники и текущие дни недели меня на часах никогда не интересовали, ни на каких, ни ручных, ни настольных, ни настенных, в общем нигде не надо.
Поддерживаю. Даже беглый взгляд на часы должен поймать текущее время, чтобы не «пялиться» в них, пока пробежит бегущая строка. То же самое и с температурой и влажностью.
Изначально хотел сделать себе такие же, только попроще (без WiFi, на атмеге328), но потом пришел к выводу, что попеременное отображение любых параметров сделает только хуже.
Забирайте, достаточно подробно комментировал. bitbucket.org/Kybb/esp8266_mqtt_ntp_max7219_v2/src/master/
Делал, довел до рабочего прототипа, было еще желание впихнуть воспроизведение коротких звуковых сигналов и/или mp3, но оставил на потом.
Споткнулся на том, что не смог сделать эстетически удовлетворяющий меня корпус, забил.
Было желание добавить регулировку яркости в зависимости от времени суток. Точно помню, что игрался с этим реализовал ли в итоге не помню.
В общем проект как рыба для собственных поделок, с учётом пройденных мной граблей.
усе есть, это форк основанный на коде Марселича, но далеко уже ушел вперед
вот видео youtu.be/DQWoeFgTtvA
вот осуждение проекта vk.com/club184549091
часы постоянно дорабатываются. автор не бросает поддержку проекта
Функционал, повторяемость — все замечательно. Но вот матричный дисплей… хочется чего то более плавного, типа неона.
Но как неоном управлять через ESPшку…
А от USB все не запитается? где-то видел проект на черной плате NodeMCU V3, так там все питалось от USB и 2 монтажные дырки совпадали, только корпус добавь.
Шикардос!!! Делал подобное, на подобной матрице и на 8266… но тогда не было веб морды и будильника… а так, в полуфабрикате (без корпуса) отработали год… надо будет такие собрать, доделать с будильником.
Обзор интересный, но как то не понятно, что будут показывать такие часы когда мигнет свет/отвалится инет? Ну и статус будильника (вкл/выкл) можно понять не нажимая кнопок и не блуждая по программе на телефоне?
В даташите на ESP8266 нет упоминания о модуле часов реального времени, ну и резервного питания в схеме нет. Получается, если «свет» вырубят на какое-то время и инет не восстановится, то никакая прошивка/сохранение не помогут…
В моем проекте для такого случая в вебморде есть кнопка синхронизации по времени с компьютера или телефона. После того точности встроенного RTC у esp8266 хвает чтоб дождаться инета.
Собирал этот вариант. В моем случае, если пропал свет и интернет, и когда часы включились, а интернета еще нет, то происходил полный сброс устройства. Приходилось настраивать все по-новому. При всех достоинствах проекта, отсутствие RTC сводит пользу данного устройства (будильника, управление доп. устройствами) к нулю, к большому сожалению( Есть в этой прошивке своя изюминка.
Что то у меня не сходится. По ссылке матрица размером 12.8х12.8. Корпус намного меньше.
И можно ли не использовать датчик температуры и отключить мигание секунд?
Автор, предлагаю вам идею для функционала. Раз там есть доступ в интернет, сделать возможность отправить сообщение на часы. Например через электронную почту. Чтоб они пикали и показывали сообщение.
Практика показала абсолютную ненужность любого дополнительного функционала для таких часов, кроме основного — показывать время. Все остальное обычный комп, смартфон и т.п. делают намного лучше.
Для информера, повышающего ситуационную осведомленность на работе, дисплея описанных часов недостаточно обычно.
Хочется большой экран, на котором можно много чего отобразить, с большими и гибкими возможностями.
Такую задачу оптимально решать все же обычным компом с большим дисплеем.
Я тоже долго собирался делать часы с каким нибудь большим индикатором.
Потом вспомнил про китайский смартфон с почти дохлой батареей на mtk6577 с экраном 4.5" и мааааленькой внутренней трещинкой тача из-за которой не работали сенсорные кнопки навигации.
Соответственно этот хлам как телефон не оживить и тем более использовать смысла не было.
Подпаял другую батарею(благо места в новом корпусе внутри много)
Получилось включить наэкранные кнопки навигации и поставить VNC для удаленного управления по wifi.
Напечатал корпус(можно также сделать из чего угодно), вставил внутрь телефон, сделал отверстия под датчик освещенности, кнопку включения и зарядку.
Поставил программу — получились часы с синхронизацией (с выбором цвета цифр) и показом погоды через интернет. Яркость меняется от освещения.
Работают уже несколько месяцев не выключая экран. Питание через стандартный разъем зарядки. Хотел сначала использовать просто блок питания напрямую вместо батареи, но из-за помех питания сразу появляются фантомные нажатия тачскрина.
p.s. Пятна на цифрах — муар при фотографировании.
Можно еще отверстие под переднюю камеру проделать, а дальше как фантазия заработает ;)
Давно сделал подобные. Авто регулировка яркости по датчику так и не заработала, а dht11 показывает температуру на Марсе даже вынесенный за пределы корпуса, но в общем получились хорошие часы на холодильник.
Смотрите, микросхема ESP8266 питается от 3.3В. Значит на любом из ее входов напряжение не должно превышать напряжение питания 3.3В. DHT22 запитан от 5В и напряжение лог. 1 на ее выходе равно напряжению питания, т.е 5В, плюc он еще и подперт резистором к питанию. Какое напряжение приходит на вход D1 esp8266?
Тоже есть китайский планшет
Установил как фотораму программ множество Tablet Clock и т.д.
добавил слайды люмимых фото
Большие точные часы + погода по wifi
Хорошое разрешение
Низкое питание <1А
Подскажите плиз, а где автор выкладывает актуальную схему часов? В последних прошивках добавлена поддержка BME280, но схемы нигде не нахожу, ни новой, ни той что вы привели в статье.
Часы на адресных светодиодах и Arduino Nano.Время DS3231. Высота цифр 10 см. По одному светодиоду на сегмент. Цвет цифр можно менять. Я не стал заморачиваться с оттенками, поэтому только три основных цвета: красный, синий, зеленый. Яркость меняется по времени.Пытался сделать с помощью светодиода, не получилось. Температура ТМ1637. Температура берется с модуля часов. Корпус, сегменты и прочие детали печатались на принтере.
Сейчас потихоньку мастерю примерно такие же, но на ESP8266, без модуля часов, с получением времени с интернета.
Скетч писался в программе FLProg.
Если немного перефразировать, то «чукча не писатель, чукча читатель». Я обзоры не пишу, я больше читаю. Если надо, могу дать проект. Но еще раз подчеркиваю- проект в формате FLProg. Или Вы имели в виду файлы STL?
Ну обзор делать я точно не буду.Не умею, да времени на это нет. Проект делал полностью сам. Идеи черпал из интернета. Если надо, могу дать все файлы, объяснить что делать.Просто это займет некоторое время, так как все разбросано, да еще и на двух компьютерах.Надо собрать все в кучу. Для реализации проекта необходим 3D принтер, и программа FLProg.
Согласен! На температуре наклеена тонировочная пленка.Выглядит очень хорошо. А с сегментами не все так просто.Во первых надо ставить два светодиода, т.к. получается более выраженное пятно от св-диода. Кстати, на фото видно это пятно, в реале его почти не видно. Во вторых на фото сегменты выглядят плоскими, на самом деле они такие:
И обклеить их сложнее. Поэтому решил пока оставить так.
Здравствуйте. Давно хотел собрать этот девайсик. Не удержался, заказал комплектующие.
А как подсмотреть МАС-адрес WiFi на этом девайсе? В роутере у меня включен «Белый список»…
Или по идее МАС-адрес должен отобразиться в роутере при попытке подключения часов к роутеру…
Я делал часики на таких матрицах. До сих пор работают.
Но на ардуине и с модулем точного времени DS3232 (убегает на пару минут за пару лет).
DHT11 — полное гавно, надо использовать что-то посерьезней, типа SHT10.
Датчик давления, по моему, BMP280 (уже не помню что внутри :)
Пищалка будильника выполнена отдельным модулем на attiny (памяти, по моему, не хватало в ардуине) — играет имперский марш.
Добрый день. Имею часы по конструктиву как Ваши, но там 6 модулей на дисплее. Вопрос-не могли-бы Вы сделать выбор количества светодиодных модулей в веб-морде, поскольку исходника нет в доступе. Или просто изменить в коде и выложить прошивку. Хотелось-бы прошить часы Вашей прошивкой. Заранее спасибо за ответ.
Все классно, эти часы свой функционал выполняют, но было бы здорово если бы они еще умели синхронизировать другие устройства: часы, погодные станции в которых есть функция радиосинхронизации по DCF77, MSF, WWVB, JJY. Скажем положил свои Casio рядом с этими часами, а они каждую ночь будут настраиваться от этих часов в автоматическом режиме.
Это копеечный функционал, который просто можно добавить, есть даже приложения для андроид и iOs для выполнения данной задачи, проблема в том что эту операцию все равно приходится делать руками, т.е. запускать приложение, включать в часах режим синхронизации и ждать пока не синхронизируется, в принципе если телефон на андроиде рутован, то можно все автоматизировать, но это уже свои заморочки, потеря гарантии, прямые руки и.т.д., с другой стороны если есть прикроватный будильник который может выполнять функцию передатчика сигнала точного времени, который часы берут с NTP сервера для себя же самих :)
И да там нет кучи протоколов, там один протокол, причем простой как оцинкованное ведро, там передающие частоты разные. ru.wikipedia.org/wiki/DCF77
Суть не в том что бы для этого ваять отдельное специально заточенное устройство, оно нафиг не нужно, для этого есть приложение для телефона, суть в том что бы это были часы на полке с данным функционалом которые это делают автоматически в 4 часа утра (зависит от часового пояса) синхронизировали или наручные CASIO или CITIZEN или какие иные часы имеющие функцию радиосинхронизации.
Каждый настоящий мужик должен собрать хотя бы одни часы :)
Начинал с различных конструкций на PIC16 с одной кнопкой, регулировкой освещённости и обязательным наличием DS3231, дабы не заморачиваться подведением времени. Разработал и собрал несколько разных конструкций, но уже все разобрал, так как часы без синхронизации нынче унылое явление.
Потом esp8266 и TM1637, тройка таких часов до сих пор работает. Возможно, буду делать ещё, так как бюджетно и можно использовать как встраиваемые в другие устройства часы.
Потом MAX7219 с esp8266, DS3231 и регулировкой освещёности. Тоже трое таких в квартире. Уже пару лет. Больше делать не буду, так как уже неинтересно.
Ну и последние — на двухэтажной матрице с esp32 и DS3231. Делал в гараж. Специально под них делал в гараж GPS NTP сервер, чтобы часы могли синхронизироваться в отсутствие интернета. ESP32 позволяет без тормозов работать с тяжёлым веб-интерфейсом. Двухэтажная матрица — выводить время огромными цифрами или показывать одновременно время и бегущую строку с датой и днём недели.
Короче, делать часы интересно всегда, есть в них некое очарование.
Видел ещё конструкцию на двух матрицах, соединённых шарниром(дисплей трансформируется либо в длинный, либо в двухэтажный). Прикольно, но не собирал, так как некуда их поставить пока.
Собрал с десяток таких разных цветов (синие зеленые красные). Раздарил друзьям и знакомым. 3 штуки до сих пор лежат дома над компом. Себе домой и на дачу сделал на самостоятельно собранных матрицах 8х32. Собираюсь сделать подобные на адресной матрице 8х32 типа WS2812b. Никто не встречал ничего подобного в инете? Интересует прежде всего скетч. Самому не очень хочется корпеть над переделкой сетча для MAX7219. Буду рад если кто-то ответит. На всякий случай мой e-mail [email protected]
Здравствуйте.
Откуда взят материал по часам? Дело в том что в архиве с прошивкой есть описание в пдфке. И там написано про вторую прошивку, на 8 модулей в матрице. Хотелось бы заценить…
А так… собрал на макетке. Теперь вот пп рисую.
Кстати, заказывал комплектующие все по ссылкам что даны в начале темы vitgo. До Кирова(Кировская обл) дошло с момента заказа до прибытия в мое почтовое отделение за 11 дней. Все было в одной посылке.
У автора есть репозиторий на Mail.ru с файлами для этого проекта: cloud.mail.ru/public/5eHE/dCHUyqrr1/WiFi-CLOCK/ (ссылка также доступна из веб-морды часов).
Две версии прошивки- на 4 модуля в матрице, и на 8 в один ряд.
Выложена новая прошивка версии 2.0.0905a.274.
Чейнджлог новой прошивки:
!!! ОГРОМНОЕ СПАСИБО @Xrust83 ЗА ПОМОЩЬ!!!
+ WiFiMulti — возможность задать несколько ТД для подключения к ним
(выбирается с наиболее сильным сигналом)
P.S. SSID точек доступа и пароли указываются через запятую без пробелов
+ режим ТД + Клиент
+ +2 стиля часов (TG: @Xrust83)
+ буква ЁЁёё и Украинские i, ї (TG: @Xrust83)
* дополнены Украинские праздники (TG: @Xrust83)
* улучшения алгоритма получения времени
* CRMui 2.0.0903a
* ядро 2.7.4
Собрал это чудо, на работе сбежались посмотреть. Оригинально придумали, спасибо автору. Корпус пока не делал. Возможно сам вырежу из оргстекла. Да и нашёл маленькую ошибку. Автор будете релиз делать, поправьте пожалуйста. В браузере на главной страничке в слове Синхронизация ошибка, «Cинхронизыция» написано вот так.
P.S. Версия FW 2.0.0905a.274
В репозитории выложена новая прошивка. Теперь можно подключиться к народному мониторингу. Перед обновлением прошивки нужно обязательно сделать общий сброс.
Ну и по мелочи…
можно отключить год при отображении даты
если вбито несколько сетей Wi-Fi, то при подключении отображается только та сеть к которой подключились часы
напоминание о своём празднике за день до него
Посмотрите даташит на max7219 и 74НС595. Вы увидите, что max7219 не просто сдвиговый регистр, он управляется командами. А 74НС595 обычный сдвиговый регистр. Без переделки ПО ответ нет.
что не так со встроенным БП — сам БП плох или наводки ввиду близости?
По моим ощущениям — черные по качеству лучше. Синие такие БП — гораздо хуже.
Предпочитаю разные цвета видеть на новогодней ёлке.
2А для настольных часов это не нормально.
Дело не 350р, а вашем отношении к бесполезным тратам.
где то должна быть разумная грань.
2А пипец как много имхо
Или Вам радуга нужна с переливами?
Зрителю удобнее наблюдать, когда время одним цветом, а температура — другим.
Радуги не надо, но вот разнородные показатели разделить по цвету — это, как оказалось, очень логично.
Например у Вас уже есть часы и они всё равно кушают электричество и висят в домашней сети, так пусть передают данные с датчиков в mqtt.
При этом редкие события из mqtt отображаются на экране, например закончилась стирка, загрузился торрент. Ну и что сами пожелаете.
А вот периодическая смена часы-календарь-температура, это да, это бесит.
На практике используются только для текущего времени, уличной и внутренней температуры, всякие будильники и текущие дни недели меня на часах никогда не интересовали, ни на каких, ни ручных, ни настольных, ни настенных, в общем нигде не надо.
Изначально хотел сделать себе такие же, только попроще (без WiFi, на атмеге328), но потом пришел к выводу, что попеременное отображение любых параметров сделает только хуже.
bitbucket.org/Kybb/esp8266_mqtt_ntp_max7219_v2/src/master/
Делал, довел до рабочего прототипа, было еще желание впихнуть воспроизведение коротких звуковых сигналов и/или mp3, но оставил на потом.
Споткнулся на том, что не смог сделать эстетически удовлетворяющий меня корпус, забил.
Было желание добавить регулировку яркости в зависимости от времени суток. Точно помню, что игрался с этим реализовал ли в итоге не помню.
В общем проект как рыба для собственных поделок, с учётом пройденных мной граблей.
P.S. Быдлокод!!!
вот видео youtu.be/DQWoeFgTtvA
вот осуждение проекта vk.com/club184549091
часы постоянно дорабатываются. автор не бросает поддержку проекта
Но как неоном управлять через ESPшку…
Это Вам не холодильники красить.
Я было уже начал переживать, что скоро муськин DIY до корабликов из скорлупы докатится…
Спасибо!
.
А ведь делали такие в далёком детстве…
Внешний RTC нужен для местности где плохой инет. Но тогда вопрос зачем нужен esp8266 с его wifi? Он очень прожорлив посравнению с той же atmega328.
Делаю похожую штуку и планирую опубликовать исходники. В планах было обзор написать, но вы опередили.
2. Что будет, если вырубится питание? Все настройки выставлять заново?
3. Можно ли втулить резервное питание?
2. Все настройки сохраняются.
3. Потребление часов на максимальной яркости около 600 мА.
И можно ли не использовать датчик температуры и отключить мигание секунд?
Отключить мигание двоеточия тоже можно.
Понял. В описании на Али ошибка.
Сантиметра, Карл!!!
Для «таких» часов, с мозгами, это как раз нормальный функционал. Просто время показывать — семисегментных достаточно.
Хочется большой экран, на котором можно много чего отобразить, с большими и гибкими возможностями.
Такую задачу оптимально решать все же обычным компом с большим дисплеем.
Потом вспомнил про китайский смартфон с почти дохлой батареей на mtk6577 с экраном 4.5" и мааааленькой внутренней трещинкой тача из-за которой не работали сенсорные кнопки навигации.
Соответственно этот хлам как телефон не оживить и тем более использовать смысла не было.
Подпаял другую батарею(благо места в новом корпусе внутри много)
Получилось включить наэкранные кнопки навигации и поставить VNC для удаленного управления по wifi.
Напечатал корпус(можно также сделать из чего угодно), вставил внутрь телефон, сделал отверстия под датчик освещенности, кнопку включения и зарядку.
Поставил программу — получились часы с синхронизацией (с выбором цвета цифр) и показом погоды через интернет. Яркость меняется от освещения.
Работают уже несколько месяцев не выключая экран. Питание через стандартный разъем зарядки. Хотел сначала использовать просто блок питания напрямую вместо батареи, но из-за помех питания сразу появляются фантомные нажатия тачскрина.
p.s. Пятна на цифрах — муар при фотографировании.
Можно еще отверстие под переднюю камеру проделать, а дальше как фантазия заработает ;)
Выбирал из нескольких на Google Play — эта больше всего понравилась.
Погода в картинках, яркость на ночь автоматом выключается.
За обзор + (особенно понравилась идея корпуса) да и прошивка на высшем уровне!
Смотрите, микросхема ESP8266 питается от 3.3В. Значит на любом из ее входов напряжение не должно превышать напряжение питания 3.3В. DHT22 запитан от 5В и напряжение лог. 1 на ее выходе равно напряжению питания, т.е 5В, плюc он еще и подперт резистором к питанию. Какое напряжение приходит на вход D1 esp8266?
Установил как фотораму программ множество Tablet Clock и т.д.
добавил слайды люмимых фото
Большие точные часы + погода по wifi
Хорошое разрешение
Низкое питание <1А
Часы на адресных светодиодах и Arduino Nano.Время DS3231. Высота цифр 10 см. По одному светодиоду на сегмент. Цвет цифр можно менять. Я не стал заморачиваться с оттенками, поэтому только три основных цвета: красный, синий, зеленый. Яркость меняется по времени.Пытался сделать с помощью светодиода, не получилось. Температура ТМ1637. Температура берется с модуля часов. Корпус, сегменты и прочие детали печатались на принтере.
Сейчас потихоньку мастерю примерно такие же, но на ESP8266, без модуля часов, с получением времени с интернета.
Скетч писался в программе FLProg.
А вообще интереснее не stl, а сурсы
И я извиняюсь за отсталость, а что такое «сурсы»?
Изобретение велосипеда.
И обклеить их сложнее. Поэтому решил пока оставить так.
А как подсмотреть МАС-адрес WiFi на этом девайсе? В роутере у меня включен «Белый список»…
Или по идее МАС-адрес должен отобразиться в роутере при попытке подключения часов к роутеру…
Подключите девайс к вай-фай роутеру.
Узнайте МАС-адрес.
Включите в роутере «белый список».
4 года назад делал такое
Но на ардуине и с модулем точного времени DS3232 (убегает на пару минут за пару лет).
DHT11 — полное гавно, надо использовать что-то посерьезней, типа SHT10.
Датчик давления, по моему, BMP280 (уже не помню что внутри :)
Пищалка будильника выполнена отдельным модулем на attiny (памяти, по моему, не хватало в ардуине) — играет имперский марш.
И да там нет кучи протоколов, там один протокол, причем простой как оцинкованное ведро, там передающие частоты разные.
ru.wikipedia.org/wiki/DCF77
Суть не в том что бы для этого ваять отдельное специально заточенное устройство, оно нафиг не нужно, для этого есть приложение для телефона, суть в том что бы это были часы на полке с данным функционалом которые это делают автоматически в 4 часа утра (зависит от часового пояса) синхронизировали или наручные CASIO или CITIZEN или какие иные часы имеющие функцию радиосинхронизации.
www.grother.de/gps-zu-dcf77-konverter.html
Фото всех моих часов здесь: www.flickr.com/photos/yuri_bogdanov/albums/72157704297805682
Видео:
Начинал с различных конструкций на PIC16 с одной кнопкой, регулировкой освещённости и обязательным наличием DS3231, дабы не заморачиваться подведением времени. Разработал и собрал несколько разных конструкций, но уже все разобрал, так как часы без синхронизации нынче унылое явление.
Потом esp8266 и TM1637, тройка таких часов до сих пор работает. Возможно, буду делать ещё, так как бюджетно и можно использовать как встраиваемые в другие устройства часы.
Потом MAX7219 с esp8266, DS3231 и регулировкой освещёности. Тоже трое таких в квартире. Уже пару лет. Больше делать не буду, так как уже неинтересно.
Ну и последние — на двухэтажной матрице с esp32 и DS3231. Делал в гараж. Специально под них делал в гараж GPS NTP сервер, чтобы часы могли синхронизироваться в отсутствие интернета. ESP32 позволяет без тормозов работать с тяжёлым веб-интерфейсом. Двухэтажная матрица — выводить время огромными цифрами или показывать одновременно время и бегущую строку с датой и днём недели.
Короче, делать часы интересно всегда, есть в них некое очарование.
Видел ещё конструкцию на двух матрицах, соединённых шарниром(дисплей трансформируется либо в длинный, либо в двухэтажный). Прикольно, но не собирал, так как некуда их поставить пока.
Откуда взят материал по часам? Дело в том что в архиве с прошивкой есть описание в пдфке. И там написано про вторую прошивку, на 8 модулей в матрице. Хотелось бы заценить…
А так… собрал на макетке. Теперь вот пп рисую.
Кстати, заказывал комплектующие все по ссылкам что даны в начале темы vitgo. До Кирова(Кировская обл) дошло с момента заказа до прибытия в мое почтовое отделение за 11 дней. Все было в одной посылке.
Две версии прошивки- на 4 модуля в матрице, и на 8 в один ряд.
Выложена новая прошивка версии 2.0.0905a.274.
Чейнджлог новой прошивки:
ПП в lay6
При печати не зеркалить. Поставил 3 электролита и керамики натыкал ~ по 0.1мкф. Места много…
Как запаивается разъем на индикатор- 5-й скрин.
Вот то что надо.
P.S. Версия FW 2.0.0905a.274
Перед обновлением прошивки нужно обязательно сделать общий сброс.
Ну и по мелочи…
можно отключить год при отображении даты
если вбито несколько сетей Wi-Fi, то при подключении отображается только та сеть к которой подключились часы
напоминание о своём празднике за день до него