• Система автоматизации с открытым исходным кодом на базе esp8266/esp32 микроконтроллеров и приложения IoT Manager. Наша группа в Telegram

А можно несколько примеров?

lsm

Разработчик Smart.js
Команда форума
Присоединюсь к тестированию) Залил последний билд - сохранение настроек не завелось - отдаёт 404 ошибку на http://192.168.4.1/save_settings
Negor, поподробнее пожалуйста!
Только сохранение глючит? Как с другой функциональностью - есть проблемы? Какой браузер?
 

Negor

New member
lsm, извиняюсь, видимо было временное. Туперь не воспроихводится и я не знаю почему. Но усть другое - при считывании файлов первые две строчки - set_errno set spiff error -10003
 

Jazz777

New member
Будем реализовывать
Отлично. Спасибо. Тогда, я так понял, я пока что сажусь под пальму и жду чего нибудь для тестирования..

Тот факт что нельзя передавать STA пароль, усложняет дело - нужно придумать механизм как это сделать без костылей.
Конкретно здесь я, конечно, не могу знать в чем сложность. Могу пофантазировать например в конфиге по спец галочке отрубать доступ к файлам АР по вайфай, оставляя только вариант с UART, ну и звездочки на странице (понятно, такие звездочки, которые не открываются открывателями звездочек). А в целом согласен, лучше подумать и сделать нормально - потом с костылями затутыркаемся..
Теоретически остается дыра в виде доступа к этому паролю по UART, но, честно говоря, её бы я оставил в базовой версии. Это, наверное, корректно можно только шифрованием закрыть, а мы всё-таки не Windows Server верстаем ))
 
Последнее редактирование:
  • Like
Реакции: lsm

lsm

Разработчик Smart.js
Команда форума
lsm, извиняюсь, видимо было временное. Туперь не воспроихводится и я не знаю почему. Но усть другое - при считывании файлов первые две строчки - set_errno set spiff error -10003
А, это SPIFFS (SPI файловая система на флеше) ругается - https://github.com/pellepl/spiffs/blob/master/src/spiffs.h#L20 . Это можно игнорировать. Браузер запрашивает файл, а его нет.
Пожалуй стоит убрать debug output на UART1 - мы это сделаем настройкой по умолчанию.
 

Jazz777

New member
Ещё момент. Иногда в рандомных случаях не подключается к АР. Выглядит это так:

Ошибка подключения к АР.jpg
Со стороны девайса выглядит вот так:

Не подключается к АР.jpg

Никакого другого логирования нету, так что больше ничем тут помочь не могу. При этом через какое-то время подключается без проблем. Предлагаю в следующих версиях прошивки выводить более подробную информацию о подобных подключениях, ну или если тут всё и так понятно - то жду фикса.
 

lsm

Разработчик Smart.js
Команда форума
Ещё момент: на веб страничку, выведите, пожалуйста полный мак, чтобы пользователь мог сьидентифицировать себя по нему на сайте (можно, конечно и по обрезанному в названии АР, но если у кого совпадет, будет не приятно..)
Полный MAC - уже сделано! Доступен через Sys.ro_vars.mac_address (скролл вправо):

Код:
Starting Smart.js - see documentation at https://cesanta.com/developer/smartjs
==> Sys:
{"id":"esp8266_5ECF7F05FE8A","conf":{"xdebug":{"level":3},"debug":{"mode":2,"level":3},"http":{"enable_webdav":true,"port":"80","enable":true},"wifi":{"ap":{"dhcp_netmask":"255.255.255.0","dhcp_end":"192.168.4.200","dhcp_start":"192.168.4.1","channel":6,"hidden":0,"pass":"Elduderino","ssid":"SMARTJS_??????","enable":true},"sta":{"pass":"FDZPHKZF","ssid":"Sholz","enable":true}}},"ro_vars":{"fw_version":"ESP8266/cc/20151212-174957/26e807dc","arch":"esp8266","mac_address":"5ECF7F05FE8A"}}
Executing app_init.js

smartjs 24856/1092$
Заливайте, пробуйте:
https://backend.cesanta.com/devel/win_fw_20151213_130615.zip

Да, кстати говоря. Про WebDav. Как по мне, очень удобная вещь для редактирования файлов.
Влючаете модуль - как AP, STA, или SOFTAP (одновременно AP и STA). Я например для тестов всегда SOFTAP делаю, потому что модуль может в internet ходить, и на него тоже можно заходить.

Итак, например, включился модуль, и теперь доступен по 192.168.0.16 в локальной сети.
Берем Windows Explorer (на Mac - Finder). И монтируем модуль как внешний WebDAV диск:
Screen Shot 2015-12-13 at 11.36.48.png
Я Mac использую, поэтому скриншоты на маке покажу - на Windows аналогичный процесс.
После чего модуль видно как обычный диск:

Screen Shot 2015-12-13 at 12.59.47.png
Можно работать с файлами в обычном редакторе или IDE, делать backups, и тд.
Мой use case такой: редактирую app_init.js, опять редактирую до тех пор пока не станет работать как нужно.

Мы планируем сделать функциональность "сделать снимок", чтобы текущую прошивку можно было сохранить, залить на облако, и тд.
 

lsm

Разработчик Smart.js
Команда форума
Никакого другого логирования нету, так что больше ничем тут помочь не могу. При этом через какое-то время подключается без проблем. Предлагаю в следующих версиях прошивки выводить более подробную информацию о подобных подключениях, ну или если тут всё и так понятно - то жду фикса.
Да, мы тоже это заметили, разбираемся.
BTW - про WebDAV функциональность.
Насколько мне известно, мы первые которые так работают с wifi модулем. Это возможно потому что сетевое ядро Smart.js - это Мангуст (https://github.com/cesanta/mongoose) который кроме всего прочего умеет WebDAV.

Очень удобно - я напрямую в терминале или в редакторе работаю с файлами:

Код:
/Volumes/192.168.0.16$ ls
I2C.js                 conf.json              conf_sys_defaults.json sys_init.js
app_init.js            conf_app_defaults.json conf_sys_schema.json
clubby.js              conf_app_schema.json   index.html
/Volumes/192.168.0.16$ cat conf.json
{
  "wifi": {
    "sta": {
      "enable": true,
      "ssid": "MyWifi",
      "pass": "12345678"
    }
  },
  "debug": {
    "mode": 1,
    "level": 3
  }
}

Хотя я просто могу не знать - мне неизвестны другие проекты которые используют WebDAV для доступа к файловой системе IoT модулей.
 
Последнее редактирование:

Jazz777

New member
Да, кстати говоря. Про WebDav. Как по мне, очень удобная вещь для редактирования файлов.
Потестил - прям красота ))
В винде называется Подключение к вебсайту, на котором вы можете хранить документы и изображения.
Подключается, открывает, редактировать позволяет. Даже из Тотал коммандера никаких проблем с доступом.
Только когда пытаюсь туда новый файл записать, пишет:
Ошибка в ТС.jpg
В проводнике ошибка аналогичная. Всё это с правами админа.
 
  • Like
Реакции: lsm

Negor

New member
Также потестил. Остался доволен. Можно ли приделать конфиг, чтоб в нём задать какие файлы нужно эвалить при записи по DAV ?
 

lsm

Разработчик Smart.js
Команда форума
Также потестил. Остался доволен. Можно ли приделать конфиг, чтоб в нём задать какие файлы нужно эвалить при записи по DAV ?
Это для того чтобы сделать типа интерактивную консоль через WiFi ? Можете use case рассказать, как именно это будет использоваться?

Мысли про интерактивную консоль уже давно были, и даже простая реализация была - тут лежит: https://github.com/cesanta/smart.js/tree/master/platforms/esp8266/examples/http_eval, уже поломанная к сожалению.
Еще не придумали как сделать красиво, все на уровне дизайна пока.
 

Victor

Administrator
Команда форума
извиняюсь, что вторгаюсь в вашу весьма интересную беседу, но хотелось бы узнать:
1. поддержка mqtt еще не появилась? может имеет смысл пока запилить поддержку mqtt обернутую в WebSockets, раз поддержка WebSockets уже есть?
2. когда в планах https?
 

lsm

Разработчик Smart.js
Команда форума
извиняюсь, что вторгаюсь в вашу весьма интересную беседу, но хотелось бы узнать:
1. поддержка mqtt еще не появилась? может имеет смысл пока запилить поддержку mqtt обернутую в WebSockets, раз поддержка WebSockets уже есть?
2. когда в планах https?
Приветствую Виктор!

MQTT еще нет. На низком уровне (Мангуст, С) он есть, а до JS обертки еще руки не дошли. Конечно планируем, но точно не в ближайшие 2 недели. Середина Q1 2016. Сейчас заняты конфигурацией, HTTP, и OTA.

MQTT over Websockets - вариант, это кстати можно и на JS написать, нас можно не ждать. WebSocket JS клиент есть рабочий.

HTTPS - он уже в процессе, планируем выкатить до НГ, сейчас тестируем. Движок TLS - наш собственный, криптон: https://github.com/cesanta/krypton.

BTW штатный TLS который в SDK - когда мы на него последний раз смотрели, он даже проверки сертификата не делает, то есть что он есть, что его нет - security он никакого не предоставляет. Используется насколько я помню axTLS в качестве движка.
 

Negor

New member
Тут вот что вскрылось - при попытке создать файл, всё как у Jazz777, невозможно и всё такое. Но если посмотреть список файлов(File.list) то имеем
Код:
["Новый текстовый д\,"Новый текстовый д\,"app_init.js","conf.json","main.js","I2C.js","conf_sys_defaults.json","index.html","conf_app_defaults.json","conf_app_schema.json","conf_sys_schema.json","sys_init.js","clubby.js"]
Т.е. как ивдите - появилось в записях два файла с именем Новый текстовый... что то там. Может проблема в попытке создать новый файл через проводник - с именем из кирилицы?
 

lsm

Разработчик Smart.js
Команда форума
И да - функциональность
Т.е. как ивдите - появилось в записях два файла с именем Новый текстовый... что то там. Может проблема в попытке создать новый файл через проводник - с именем из кирилицы?
А ежели с аглицкими буквами новый файл сделать?
 

Negor

New member
всё) приплыли) Не могу ничего записать. И перезаливка прошивки ничего не даёт - файлы остаются. Как то можно переформатировать всё перед прошивкой? использую flashchip
 

Jazz777

New member
А ежели с аглицкими буквами новый файл сделать?
У меня же в примере на английском и не работает. Попробовал в проводнике создать на анлийском, но там я так понял сначала файл создается и записывается по-русски, а потом его переименовывать надо по идеалогии. Соответственно тоже глючит. Тотал позволяет сразу с английскими именами файлы создавать - но и там тоже ошибку выдает.
 

Negor

New member
Это для того чтобы сделать типа интерактивную консоль через WiFi ? Можете use case рассказать, как именно это будет использоваться?
Не, вот я отредактировал файл через webdav. Хочу проверить его работу. Для это в консоли мне нужно проэвалить отредактированный файл. А если б файл эвалился автоматом - я сразу перехожу к тестированию
 

Jazz777

New member
На самом деле ошибки с WebDav абсолютно не критичны. Намного больше интересно то, что мы по пунктам расписали. Можете хотя бы примерно сориентировать по времени когда это ждать?
 
Сверху Снизу