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

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

?

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

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

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

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

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

    IvanUA Гуру

    Причина была в кривости моих рук. Я так думаю что и не только моих. Код как он был написан прекрасно компилился и хорошо работал на версии платы 2.4. А вот с переходом на версию 2.5 полезли артефакты. Естественно первая мысль, что менял? Откатил версию и все восстановилось... Начал искать варианты как выкрутиться, и случайно заметил одну закономерность в случайных точках на экране, и потом понемногу раскрутил все свои косяки))))
    Ну я же обещал поправить... Это был тоже мой косяк))))
    Да будет, но немного позже, хочу все таки довести эту до ума.
     
    Юра 80, yucan, RonAD и ещё 1-му нравится это.
  2. IvanUA

    IvanUA Гуру

    Это не артефакт. Это я поставил точку, когда искал косяки и потом ее не убрал. Позже уберу. Спасибо
    Тут я не скажу, у меня просто нет сейчас этого датчика что бы проверить. Попробуйте потестить, если не идет - пишите в личку, может как то общими усилиями получится поправить))))
    Все скетчи обязательно будут когда внесу все изменения в код. Сейчас мне нужно только ваше участие в тестировании всего что я меняю. Просто если выложу скетч появится куча вопросов, то библиотека не идет то еще чего, так что лучше сразу оттестить, а потом уже можно и в скетч лазить))))
     
    Vladis_a и RonAD нравится это.
  3. Vladis_a

    Vladis_a Гик

    Иван, небольшая просьба..... Когда будете выкладывать скетчи, сделайте, пожалуйста, что-то вроде таблички - какие библиотеки использовали, какая версия плат, настройки этих самых плат в Ардуино ИДЕ.
    Мне кажется, так и Вам будут меньше вопросов задавать и нам всем будет легче :)
    Табличку можно будет прикрутить к первому сообщению.
     
    Юра 80 и drserj нравится это.
  4. drserj

    drserj Нерд

    Добрый день. Вопрос скорее к Ивану, впрочем, если кто может чего сказать - велком :)
    История такая, что сделав часики 4х1 на матрицах 3 см, захотелось большего (в прямом смысле этого слова) :)
    Во-первых, захотелось матрицы 2088 (эт которые 6 см сторона), во вторых матриц захотелось 10 (2х5).
    Заказал десяток MAX7219EWG и ... решил всё-таки глянуть, какой же тип матрицы можно использовать. Судя по схеме - матрица с общим катодом (AS). Есть такие, но более 300 грн за 10 шт., в отличие от матриц с общим анодом (BS), кои стоят около 200... Т.е. разница в треть - это не мало. Как я понимаю, разница в цене только из-за магазина, ибо у нас стоимость одинакова, но слишком высока.
    Так вот вопрос: если я вместо матрицы с общим катодом всуну матрицы с общим анодом, код и схему модифицировать надо, или та настроечка с углом поворота позволит решить проблему? Не, переписать код с инверсией не есть проблема, но зело лениво :) И будет ли 5х2 или максимум 4х2 ?
     
    ermilin нравится это.
  5. ermilin

    ermilin Нуб

    Мне китайский "друг" подсунул матрицы с общим анодом (синего цвета), теперь ломаю голову, что с ними делать...
    Постоянно, полностью горят все модули, едва видно неразличимое движение текста, мигание точек...
     
  6. IvanUA

    IvanUA Гуру

    В самом коде уже есть функция инверсии. Если это поможет, то можно в вебе сделать переключатель и всех делов)))

    Сейчас заморочился со вторым погодным сервером. Нашел свой старый ключ от openweathermap.org и он оказывается работает. Хотя много было сообщений что новые ключи дают только прогноз на сегодня, но все же решил использовать как второй сервер openweathermap.org. По крайней мере его будет потом легче сменить как какой другой.
     
    Последнее редактирование: 22 окт 2019
    Vladis_a, yucan и ermilin нравится это.
  7. max50a5

    max50a5 Гик

    Не проблема. Код и схема не меняется, поворачиваем матрицу на плате на 90 градусов и все. Вот готовая плата.
     

    Вложения:

    drserj нравится это.
  8. ermilin

    ermilin Нуб

    Иван, ткни носом, где и что в коде поменять для инверсии, попробую, отпишусь. Если заработает, можно будет переключателем заморочится, для универсальности твоей прошивки.
     
  9. drserj

    drserj Нерд

    Благодарствую.
     
  10. max50a5

    max50a5 Гик

    Не вопрос.
    Кстати, платы нарисованы для заказа на заводе, для лут могу скинуть вечером.
     
  11. jgupdimon

    jgupdimon Гик

    Делал самостоятельные матрицы на 10мм светодиодах, любого цвета.
     
  12. jgupdimon

    jgupdimon Гик

    openweathermap.org работал если не изменяет память месяца 3 без сбоев, только вчера заменил ключ и опять всё работает.
     
  13. jgupdimon

    jgupdimon Гик

    В бинарнике я же не могу ничего изменить, только с веб мордочки заменить датчики. По этому протестить работу DHT22 не могу.
     
  14. IvanUA

    IvanUA Гуру

    Вот в коде есть такая функция
    Код (C++):
    void invert(byte zone) {
      for(int i = (zone ? NUM_MAX0 * 8 : 0); i < (zone ? NUM_MAX0 + NUM_MAX1 : NUM_MAX0) * 8; i++) scr[i] =~ scr[i];
    }
    Как видно из кода инвертируются все переменные scr
    Функция вывода на экран данных из этой переменно - void refreshAll()
    Так что вам нужно перед выводом на экран эти данные инвертировать))))
    Вчера добавил этот сервер в код - пока тестяю, вроде бы пока работает.
    Вы можете залить более старую версию и там потестить. Дело в том что функции датчиков я давно не менял. Ну или дождаться когда у меня будет возможность самому подключить и потестить...
     
  15. drserj

    drserj Нерд

    Если не сложно - буду благодарен :)
     
  16. IvanUA

    IvanUA Гуру

    Добавил в скетч второй погодный сервер. Его можно будет выбрать через веб.
    Так же во вкладку настройки времени добавил пункт RTC (on/off)
    Если подключить по I2C шине модуль реального времени, и включить эту галку, то при старте часы будут брать время из модуля, а при обновлении времени с сервера, будут обновлять время в модуле. Короче говоря если часы перенести в место где нет интернета и включить, то они будут брать время из модуля. Не знаю правда как поведет себя прошивка при включении этой функции если модуль будет физически отсутствовать???
    Модуль часов подойдет любой DS1307 - DS3231
    Прошивка пока под двух секторную версию дальше по ветке форума есть бинарник
     
    Последнее редактирование: 24 окт 2019
    RonAD, max50a5 и Vladis_a нравится это.
  17. SteinMark

    SteinMark Гик

    Доброе время суток. Не могу переключить на вкладке Weather Server на "weatherbit", сбрасывает видно по дефолту на "openweathermap"
    Key и City остаются введеные
     
  18. IvanUA

    IvanUA Гуру

    Если у вас на этой вкладке одно поле для ключа и города, то перезалейте бинарник. Если нет, то.... буду искать проблему.
    должно быть так:
    [​IMG][​IMG]
     
  19. Michael74Rus

    Michael74Rus Нуб

    Новые ключи дают погоду на сегодня и прогноз на 5 дней/каждые 3 часа (то есть в одном запросе возвращается 40 прогнозов).
    Пробовал сделать прогноз на завтра из этого прогноза 5д/3ч, но буфера в ЕСП не хватает чтоб распарсить такой объем данных.
     
  20. SteinMark

    SteinMark Гик

    Да у меня одно поле. Приеду с работы попробую перезалить.