Часы на NodeMCU Lua + MAX7219 минус все лишнее.

Тема в разделе "Глядите, что я сделал", создана пользователем ИгорьК, 4 сен 2018.

Метки:
  1. mikhail09p

    mikhail09p Гик

    Я указал...
    dat = {}
    dat.tz = 2
    dat.anm = true -- animation
    .........

    Я в окне редактора меняю и нажимаю Sawe to ESP.
     
    Последнее редактирование: 21 мар 2019
  2. mikhail09p

    mikhail09p Гик

    Уже:
    disconnected
    PANIC: unprotected error in call to Lua API (askapixu.lua:25: attempt to index global 'wth' (a nil value))
     
  3. ИгорьК

    ИгорьК Гуру

    Лучше так. Откройте файл в текстовом редакторе и внесите изменения.
    Потом загрузите файл через кнопку "Upload".
    У вас явно нет сохранения файла в модуль.

    upload_2019-3-21_14-22-56.png
     
    Последнее редактирование: 21 мар 2019
  4. ИгорьК

    ИгорьК Гуру

    Так. Здесь вы явно применяете третью версию файла c первой версией программы. Внимательнее.
     
  5. mikhail09p

    mikhail09p Гик

    Погодите. Файл askapixu.lua в первой версии не нужно менять на Ваш исправленый - "Измененный файл askapixu.lua для первой и третьей версии." с поста 170 ?
     
  6. ИгорьК

    ИгорьК Гуру

    1. В целом, с новым форматом apixu будет работать либо первая либо третья версия.
    2. Для первой версии файл лежит в папке ver01 архива, для третьей - ver03. пост 170.
    3. Вы берете файл соответствующей версии из поста 170 и заменяете им аналогичный в старых версиях.
    4. Если это первая версия - вам нужно внести изменения в файлы, которые я уже указал в посте 170.
    В частности, в новый файл apixu.lua и в старые main.lua и setglobals.lua

    Надеюсь завтра я все исправлю и комплекты файлов будет правильным. А пока попробуйте выполнить п. 4 для первой версии. Но вы все сделали, только перепутали версии из архива поста 170.
     
    Последнее редактирование: 21 мар 2019
  7. mikhail09p

    mikhail09p Гик

    В архиве AmperkaMAX7219.zip для первой версии?
    То менять файл askapixu.lua в архиве AmperkaMAX7219.zip на новый файл с поста 170 ?
     
  8. ИгорьК

    ИгорьК Гуру

    Да. Из папки ver01.
    Также внести изменения текстовым редактором в файлы setglobals.lua, main.lua

    Завтра я все исправлю и проверю.
     
  9. mikhail09p

    mikhail09p Гик

    Изменения в setglobals.lua:
    dat = {}
    dat.tz = 2
    dat.anm = true -- animation
    dat.int = 20 -- interval
    .......
    Изменения в main.lua:
    function gettime()
    tm = rtctime.epoch2cal(rtctime.get()+dat.tz*60*60)
    local sh = tostring(tm.hour)
    local sm = tostring(tm.min)
    .....
    Файл askapixu.lua версии 1.
    local key = "96d5eb294b77407ca2d84727192003"
    local city = "Krasilow"
    print(city)
    ......
    Ошибка:
    Got Time: do main
    24920
    PANIC: unprotected error in call to Lua API (askapixu.lua:94: '<eof>' expected near 'end')

    > dofile('askapixu.lua')
    askapixu.lua:94: '<eof>' expected near 'end'
    stack traceback:
    [C]: in function 'dofile'
    stdin:1: in main chunk
    >
     
  10. ИгорьК

    ИгорьК Гуру

    :) завтра внесу изменения сам
     
  11. ИгорьК

    ИгорьК Гуру

    Вы чем вносили изменения?
    Это проблема ESPlorer. В некоторых версиях винды он работает некорректно.
     
  12. mikhail09p

    mikhail09p Гик

    В конце файла нужно убрать последний end.
     
  13. mikhail09p

    mikhail09p Гик

    > dofile("setglobals.lua");
    No DS18b20!
    > Got Internet!
    Got Time: do main
    24888
    Krasilow
    Now: 14:21
    disconnected
    Got Sky codes: 1006 1009
    Got Temp: 8.0
    Got Max: 9.5 Min: 1.4
    24608
     
  14. mikhail09p

    mikhail09p Гик

    А при выполнении _init.lua :
    dofile("_init.lua")
    > No DS18b20!
    PANIC: unprotected error in call to Lua API (strleft.lua:9: filename is NULL)

    ets Jan 8 2013,rst cause:1, boot mode:(3,7)

    load 0x40100000, len 27164, room 16
    tail 12
    chksum 0xf6
    ho 0 tail 12 room 4
    load 0x3ffe8000, len 2188, room 12
    tail 0
    chksum 0x59
    load 0x3ffe888c, len 136, room 8
    tail 0
    chksum 0x6f
    csum 0x6f
    „гмѓgдЫsѓт'|дdd$l c›џ|;“lњoаѓoг
    Что это такое?
     
  15. ИгорьК

    ИгорьК Гуру

    Вы где-то файл strleft.lua потеряли, он у вас загружен? Или ещё какой-то не загрузили или опять версиях запутались.

    В общем, в сообщении сказано что попытка вызвать несуществующий файл. Причин две. Или не загрузили или перепутаны версии.
     
  16. mikhail09p

    mikhail09p Гик

    Та да...
    Залил отдельно этот файл, и :
    > dofile("_wifi.lua")
    >
    192.168.0.118 255.255.255.0 192.168.0.1
    dofile("_init.lua")
    > No DS18b20!
    Got Internet!
    Got Time: do main
    24952
    Krasilow
    Now: 14:39
    disconnected
    Got Sky codes: 1006 1009
    Got Temp: 8.0
    Got Max: 9.5 Min: 1.4
    24688

    Может, правда, потерял... Сейчас подключу индикатор.
     
    Последнее редактирование: 21 мар 2019
    ИгорьК нравится это.
  17. ИгорьК

    ИгорьК Гуру

    Справились. Отлично!
     
  18. mikhail09p

    mikhail09p Гик

    Да, работают.
    Если не тяжело, подскажите, где указано количество индикаторов. Это оно -
    local numberOfModules = 4 в strleft.lua ?
    Хочу попробовать расширить немного. :)
     
    Последнее редактирование: 21 мар 2019
  19. ИгорьК

    ИгорьК Гуру

    Во-первых, в главном модуле дисплея тот что с цифрами 7219, во-вторых - возможно ещё где-то во вспомогательных файлах.

    Но я не думаю что у вас получится. Модуль дисплея я писал сам и особо не расчитывал на бОльшее количество матриц.

    Если надо больше - это к Ивану в соседнюю ветку. Там другая концепция. Поработайте с его часами и решите, раздражает вас много мультипликации особенно утром или нет.
     
  20. mikhail09p

    mikhail09p Гик

    Часы Ивана я пробовал, большое ему спасибо за огромную работу. С его проекта я и начал осваивать ESP.
    Но там правда, очень много мультипликации... Стоишь и ждёшь, чтобы посмотреть время, а на часах бегущая строка бежит минуту... Потом они перестали внезапно брать время с сервера...
    Я хотел вывести температуру и время одновременно. На 8 матриц.
    Но, с другой стороны, если не сумею, будет 2 шт. часов. :D