Часы на esp8266 и max7219 + android управление

Тема в разделе "Глядите, что я сделал", создана пользователем IvanUA, 28 авг 2017.

?

Вы повторили это проект?

  1. Нет (просто ознакомился)

    35 голосов
    13,3%
  2. Да, один раз (попробовал)

    111 голосов
    42,0%
  3. Да, не однократно

    122 голосов
    46,2%
Можно выбрать сразу несколько вариантов.
  1. Pitruxa

    Pitruxa Гик

    если бы я хотел сделать тупые часы, то сделал бы на модуле реального времени, для чего городить ESP.
    А это часы - ИНФОРМЕР, чем всех и привлекает данный факт. А раз это ИНФОРМЕР, то они должны соответствовать желаниям пользователя!
     
    Shura2000 нравится это.
  2. Pitruxa

    Pitruxa Гик

    м-да, он там есть, но не работает :(
    так что можно сказать что нет :)
     
  3. mataor

    mataor Нерд

    добрый день.
    если кому потребуется - откорректировал на работу с DS3231 (версия 11.11.18, убрал сохранение времени во флеш, обновляет время по NTP, чтение часов 3 раза в секунду)
    https://yadi.sk/d/6T4O9m0HkLaRdw

    для интересующихся причиной - хз почему, но с моим домашним микротиком временами хреново работает(хотя сейчас по комментарию сменил плату на ESP8266-2.4.0-rc1 и вроде норм стало), а без синхронизации время порой и на час за сутки может убежать... вот надоело и приделал RTC ;)
     
    Последнее редактирование: 1 май 2019
    GeorgeZ, klslab и Shura2000 нравится это.
  4. b707

    b707 Гуру

    ужас какой. зачем?
    Если речь о чтении времени с DS3231 - нет ни малейшего смысла читать чаще раза в секунду, а для экономии батарейки можно пользоваться миллис и только корректировать время с RTC раз в минуту. 10 минут. час...
    надеюсь, о чтении времени с NTP 3 раза в секунду речь не идет.
     
  5. GeorgeZ

    GeorgeZ Нерд

    Если можно то поподробнее- первое включение DS она должна быть настроена или как и зачем 3 раза в секунду не понятно...
     
  6. mataor

    mataor Нерд

    Все абсолютно верно.
    так часто не обязательно, но если читаешь раз в секунду временами возникнет эффект, который правда без показа секунд в текущих часах мы не увидим. можно увеличить вплоть до секунды, сменив 300 на 1000 в updateTime().
    NTP как было так и оставил... Меньше секунды не стоит - проще было закомментировать расчет минут/часов/дней/месяцев в программе и возложить на часы.
    не понял про экономию какой батарейки? часы кушают батарейку ток при отсутствии питания, так что их можно опрашивать хоть 100 раз в секунду.
    после первой же синхронизации будет настроена
     
  7. Deniskyn

    Deniskyn Гик

    Тогда вам в "Закажу проект"...
     
  8. Pitruxa

    Pitruxa Гик

    Ну подскажите, что может быть за косяк
    Если заливаю bin-файл, то погода с api.apixu.com отображается нормально и на сегодня и на завтра
    А если заливаю скетч через Arduino IDE, то погода на завтра не синхронизируется, только на сегодня
    пробовал на версиях 11.11.18 и на 25.10.18
     
  9. mataor

    mataor Нерд

    попробуй это для начала, до этого внезапно появился тот же косяк
     
    Последнее редактирование: 3 май 2019
    Pitruxa нравится это.
  10. Pitruxa

    Pitruxa Гик

    Спасибо огромное! Как бабка пошептала!
     
  11. lesnoy

    lesnoy Нерд

    Мое почтение. Подскажите пожалуйста, кто знает - при проверке перед загрузкой выдает такую ошибку: error: ArduinoJson.h: No such file or directory
    Где взять этого ArduinoJson.h:
     
  12. Pitruxa

    Pitruxa Гик

    Качайте библиотеки Автора с первой страницы темы. Там всё уже имеется.
     
  13. IvanUA

    IvanUA Гуру

    Сейчас прошивку данных часов перевожу на PlatformIO. Возникла похожая проблема. Как показали натурные испытания - не весь пакет приходит в ответе сервера. Думаю что скорее всего просто буфер в который заходит пакет, просто маленький.
    Короче говоря надо ковыряться в библиотеке клиента, там скорее всего должна быть настройка размеров буфера.
    ПС. По поводу часов реального времени... Уже есть механизм (функция) работы с этим модулем (в следующей прошивке будет добавлена возможность использовать данный модуль в веб морде). Правда не с постоянным опросом оного, а только для синхронизации. Я считаю что со счетом времени прекрасно справляется и millis(). А вот когда на долго пропадает интернет или питание, вот тогда использование данного модуля очень оправдано.
     
    Последнее редактирование: 5 май 2019
    Deniskyn, mataor и om1212 нравится это.
  14. ИгорьК

    ИгорьК Гуру

    Apixu увеличил количество данных в заголовке ответа.

    Есть ли смысл? У меня часы проработав 2 недели без Интернета ушли вперёд на минуту. Это экстремальная проверка. Часы - они неразрывно связаны с интернетом, он их суть. Часы имеют веб- интерфейс. Неужели есть места, где есть wifi, но нет Интернета?
     
    SergeiL нравится это.
  15. SergeiL

    SergeiL Оракул Модератор

    Да понятное дело, проблема в коде.
    У меня часы на ESP8266 с DS3231, с большим индикатором и синхронизацией по NTP, более года на минуту разбежаться не могут...
    Нужно смотреть, сколько выполняются функции, и сколько они могут выполняться в принципе.;)
     
  16. IvanUA

    IvanUA Гуру

    Возможно, но это не есть причине. Дело в том что на том же железе но если заливаю прошивку через ИДЕ Ардуино (старую) то все прилетает.
    В последней моей командировке я столкнулся как раз со случаем что есть wifi довольно таки слабый, а интернета на нем можно сказать больше нет чем есть... Ввиду того что я не рассчитывал на такой поворот событий, то мои часы часто висели (имеется ввиду индикация), и все время пробовали или подключиться к роутеру, или обновить время и погоду... Короче, они шли, но очень коряво.
    \На такой случай я хочу попробовать использовать модуль РТЦ. В вебе можно будет указать период времени (в секундах) до следующей синхронизации времени... Ну и собственно будет галка использовать РТЦ модуль. Если к примеру раз в сутки не удалось обновить время из интернета, то он просто возьмет время из модуля. Если обновление прошло успешно, то часы обновят свое локальное время и время на модуле. Ну и соответственно после моего переезда, еще не имею доступа к нету часы уже будут сразу показывать точное время.... Опять же, галку что есть модуль РТЦ можно снять, тогда все обновления будут только из нета.
    Я сейчас больше склоняюсь таки брать время из html ответа гугла чем из серверов времени. Не возникает проблемы с настройкой, и не надо думать что бы на разных устройствах были разные сервера (с одни одновременно не синхронизируются).
     
  17. SergeiL

    SergeiL Оракул Модератор

    Честно говоря, не понимаю в чем проблема.
    У меня дома четверо часов, и на всех прописан один и тот же сервер времени.
    Работают не первый год.
     
  18. Pitruxa

    Pitruxa Гик

    Всё оказалось банально проще: сменил плату на ESP8266-2.4.0-rc1 и всё норм стало
     
  19. lesnoy

    lesnoy Нерд

    временное отсутствие интернета пережить устройству вполне по силам, а для стабильности питания можно добавить аккумулятор с поддержкой подзарядки
     
  20. SergeiL

    SergeiL Оракул Модератор

    Ну да, в тех, которые с собой таскать, RTC неплохо бы добавить. Тоже думал.
    Еще две кнопки: часовой пояс + и -.

    Тоже вожу с собой часы, привык к тому, что проснулся ночью - посмотрел сколько времени.
    Вожу маленькие, без RTC (3,5 см * 10 см)
    Бывает интернет в гостиницах с необходимостью открыть WEB страницу, ввести номер, фамилию для подключения к интернету.
    В таких местах для первой синхронизации включаю раздачу интернета с телефона, и после синхронизации часов, раздачу выключаю.

    А дома, там где свой Wi-Fi, в часах на ESP, RTC точно не нужен, ИМХО.
    В большие (высота сегмента 2,4 дюйма) поставил DS3231, но не разу не видел, чтобы часы использовали RTC.
    У меня, если долго не было синхронизации по NTP, часы начинают мигать одной точкой.
    Одну точку видел только когда тестировал часы без интернета.