MatrixClock — делаем WiFi часы за $10
- Цена: $10
Хотите часы с синхронизацией по SNTP и много чего еще? Тогда прошу под cut с огромным количеством картинок.
Писалось в свободное от работы, семьи время. На все про все ушло 1.5 года.
За $10 вы получите:
— продуманный web интерфейс на Bootstrap + jQuery
— автоматическая синхронизация с SNTP серверами или в ручную со временем из браузера
— автоматически переход с летнего на зимнее и обратно
— три шрифта на выбор
— показ прогноза погоды с OpenWeatherMap (в течении 5 секунд, каждые 10 секунд)
— управление яркостью дисплея по восходу/заходу солнца (с 8 до 20 если нет учетки OpenWeatherMap)
— обновление прошивки и образа файловой системы через web интерфейс
— поддержка DFPlayer Mini с управлением по UART (если будильник, кукушка и плеер не нужен можно не подключать)
— индивидуальная громкость для будильника, кукушки и плеера
— сигнализация каждого часа (кукушка), на выбор 10 треков с настройкой интервала (чтоб не кукарекал ночью)
— ежедневный будильник, на выбор 10 треков с плавным нарастанием громкости
— бонусом, простой мп3 плеер с сохранением текущего трека в RTC память (чтоб не затереть флешку до дыр)
Для сборки вам понадобятся:
— Пять драйверов MAX7219 с матричными дисплеями 8х8. К сожалению купить сразу пять по адекватной цене нельзя. Поэтому берем 4-in-1 MAX7219 за $4.48. Докупаем один MAX7219 Dot Matrix module по $1.61. При покупке обязательно уточняйте цвет свечения светодиодов. Еще одна головная боль — поддельные MAX7219. Мой одиночный модуль светит чуть-чуть темнее чем купленные ранее 4-in-1. Перестановка матриц не помогла. Модули желательно слегка доработать. Китайцы упорно ставят неправильный номинал токоограничивающего резистора. На светодиоды матрицы, при максимальной яркости, шарашит адский ток. Меняем все R1 с 10K на 59K для красных светодиодов 2.5V/10mA или 25K для 2.5V/20mA. Для остальных цветов и токов прошу смотреть таблицу в MAX7219 datasheet.
— Один модуль на ESP8266. Например WeMos Mini D1 за $1.83.
— В качестве будильника, кукушки и плеера выступает SD card mp3 модуль — DFPlayer Mini с управление по UART. Можно сэкономить $1.20 и не покупать. Основной функционал часов будут работать и без него. Модуль желательно немного обработать напильником. Китайцы зачем-то ставят перемычку не туда. Из-за этого во время инициализации чипа из динамика валит шум и треск. У усилителя DM8002 есть standby режим, а у DFPlayer Mini есть пин busy. Нужно просто перепаять резистор/перемычку справа (STBY->GND) налево (STBY->BUSY).
Качаем мой проект с GitHub и соединяем весть зоопарк по схеме:
— MAX7219 соединяем так GPIO13/D7 к DIN/MOSI, GPIO14/D5 к CLK/SCLK, GPIO15/D8 к CS (можно поменять через вебморду), Vcc к +4.0v..+5.0v и Gnd к Gnd.
— DFPlayer Mini: GPIO5/D1 к RX, GPIO4/D2 к TX, Vcc к +3.2v..+5.0v, Gnd к Gnd, 2W/4ohm динамик к SPK1 и SPK2. Пишем файлы и папки mp3_sd_root на заранее отформатированную в FAT16 или FAT32 SD карту размером до 36GB.
Прошиваем WeMos Mini D1 с помощью Flash Download Tools. Предварительно выставив:
— SPI speed 80MHz
— SPI Mode QIO
— Flash Size 32Mbit
— поставить галку DoNotChgBin
— адрес для fw_latest.bin 0x00000
— адрес для fs_latest.bin 0x200000
Если вы все сделали правильно, то по после прошивки и нажатия reset у вас должна появится новая точка доступа MatrixClock. Подключитесь к ней введя пароль12345678. После удачного подключения введите в браузере 192.168.4.1/
и в появившемся окне User name: admin и Password: 12345678.
В целях безопасности меняем пароль точки доступа Settings -> Access Point Config и входа в систему Settings -> Server Config page. Незабывем нажмимать Save.
Дальше идем в Settings -> Station Config и вписываем имя и пароль вашего роутера. Для тех кому лень жмем кнопку Scan. ESP8266 найдет все точки доступа и рассортирует их по уровню сигнала. Если точек с одинаковым именем несколько, то ориентируемся по полю BSSID c MAC адресом роутера.
Было замечено, что ESP8266 неадекватно медленно отдает страницы при уровне сигнала меньше -60dBm. Советую подобрать уровень мощности передатчика в поле Power под себя. Текущий уровень сигнала можно посмотреть во вкладке Settings -> ESP8266 Modem Info
Жмем Save & Reboot. MatrixClock подключится к вашему роутеру — Wi-Fi точка доступа Matrix Clock исчезнет. Если матрицы не мигают 5 раз и не показывают время, перейдите на страницу Settings -> Matrix Driver Config и переставьте вывод CS в соответствии со схемой, затем нажмите Save & Reboot. Убедитесь, что GPIO13 / D7 подключен к DIN / MOSI, а GPIO14 / D5 — к CLK / SCLK.
Если у вас Windows 10, то в браузере набираем http://matrixclock.local/. На Android и Win7 используйте IP-адрес часов вместо mDNS. Его можно найти в логах UART на скорости 115200 бит/с или в админке вашего роутера. Переходим в Settings -> NTP Config и устанавливаем часовой пояс, затем нажмите Save & Reboot.
Получаем бесплатный ключ API от OpenWeatherMap и копируем его в соответствующее поле на странице Settings -> Weather Config, меняем другие поля под себя. Жмем Save & Reboot. Теперь часы начнут обновлять текущую погоду каждые 2.5 минуты и показывает значок погоды и температуру в течение 5 секунд каждые 10 секунд.
Чтобы кукушка заработала нужно включить DFPlayer Mini модуль на странице Settings -> MP3 Player Config и настроить громкость MP3 Player-а
После этого идем в Settings -> Alarm Config и настраиваем кукушку с будильником.
Жмем Save & Reboot. Все, минимальная настройка часов завершена.
- Импульсный (ударный) гайковёрт средней мощности MILWAUKEE 2962-20
- 13.99$ Охлаждающая подставка для ноутбука.
- Автоподзаводчик для часов (виндер)
- Ультразвуковая щетка CkeyiN TL-703 для очистки лица (мужская), краткий обзор.
- Суперконденсаторный джамп стартер - гарантированно запускаем двигатель в случае разрядки АКБ
- Суперконденсаторный джамп стартер v2.0
- Корпусные RGB-вентиляторы Coolmoon C47324
- 79.99$ Часы-телефон Rogbid Air
- Внешняя 2,5 GbE сетевая карта Wavlink WL-NWU330GC
- Зарядное устройство BlitzWolf® BW-S20 20 Вт PD3.0 QC3.0 за 10.99$