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

Возможна ли запись в файл на "малом ВебСервере"?

pvvx

Активный участник сообщества
Называется Serial nvSRAM на их сайте. По крайней мере раньше была дешевле FRAM и позиционировалась ими (и их представителями) как дешёвая альтернатива FRAM.
Вы говорили про супервайзер и лазание по flash. :)
Т.е. уже согласились с моим утверждением. Прелестно, что хоть так - путем обмана.
Я ссылаюсь? Где? Я пишу только на основани своего опыта.
Это как раз Ваш стиль - голословно утверждать всякую чушь.
Итак, Ваше утверждение: "Статистика при этом точнее 5 минут никому не требуется" - где подтверждения этого утверждения? Со статистическими данными, собранными на основе анализа всех устройств, где ведётся статистика?? Приведите - ответьте за свои слова.
Можно, но только после вас. Уже глянул - есть дома в наличии несколько устройств из до 2008 года, снятых с устройств и полных записей. Включил один - работает (можно в сеть воткнуть - у меня фикс.IP, а не с работы, как вы). Жду вашего хода.
Ещё: "никакого серийного изготовления электроники, да ещё по описываемым вами принципам в России не существует" - да ладно? А если я Вам приведу адреса конкретных предприятий, Вы ответите за это своё утверждение? И не так как тут обычно - пустым трёпом (на который Вы только и способны) - а реально, скажем своими деньгами? И ответите за это каждому, кто приведёт адреса таких предприятий? Или Вы только трепаться способны?
Да - ждем. :) Только устройство должно соответствовать вашим же описанным параметрам - не два транзиcтора :)
PS: Остальной пустой трёп и смысла нет читать. Лучше не лезьте в то чего не понимаете. Сидите себе тихо на своей ардуине да поучайте чайников. Вы как видно кроме ардуины ни с чем реальным и не имели дела, всё только по наслышке....
Мы и с Arduino посидим, но в серийку не пустим. Нам то что? У вас там битва, суета и подсчет краски - а у нас всё хорошо и процветает - постоянно увеличивается штат...
А на счет Serial nvSRAM - она не дешевле FRAM уже после примерно 2001 года и проблем с ней больше. :p
 
Последнее редактирование:

pvvx

Активный участник сообщества
А товарища pvvx лечить похоже бесполезно - болезнь уже в запущенной форме. Чел похоже не работал ни в одной серьёзной конторе ни в одном серьёзном проекте (не брали видимо ;) из чего делает вывод, что таких контор нет, что все вокруг лохи и только он один крут. Видно, что он перебивается случайными халтурками в шарашкиных конторах, колхозит свои поделия на ардуйне всякой и что с али заказать удастся... Ну что-ж - "по сеньке и шапка" :D
Остаётся только разве посочувствовать.
Забеспокоилиcь, как вам привели примеры? :)
Я пока не видел ни одной вашей поделки... Мне то есть что представить из большого списка знакомых вещей практически каждому. Даже не надо искать - сами у себя найдете, если напишу что... :)
Такой у нас сурьезный rst, но нифига не может ни предложить, ни показать что готовое :) :)
Только лает - наверно жизнь у него такая - клоуном работать...
Вы похоже в поисках раб-боты? :)
PS: Мозг расшевелился (?) какое ныне предложение то по обсуждаемой теме (ну там логгеры всякие, как и в топике данной темы)? NVRAM нет охоты ставить в новое устройство (старое тогда сойдет), а разгребать flash – тоже не выход…
Как-бы вы уже описали свои больные моменты и уже пошли повторы, дальше будет скучно... Сочувствовать не будем – дело давайте.
 
Последнее редактирование:

rst

Member
Вы говорили про супервайзер и лазание по flash. :)
Вы похоже даже не поняли, что я писал. Прочитайте ещё раз.
Я писал что один из вариантов реализации: супервизор+сброс_во_flash. Это можно сделать самостоятельно в своём изделии (и я в одном из проектов так и делал). А можно взять готовое изделие, которое реализует этот принцип (имея в виду эту nvSRAM) +добавив один внешний кондёр к нему.

Уже глянул - есть дома в наличии несколько устройств из до 2008 года, снятых с устройств и полных записей. Включил один - работает
И что??? Как наличие какого-то хлама у Вас дома подтверждает тезис "Статистика при этом точнее 5 минут никому не требуется"??? Какая здесь логическая связь?
Для подтверждения Вашего утверждения, приведите плиз исходники всех чужих устройств, ведущих статистику! Ну или хотя-бы для упрощения - хотя-бы исходники всех интеллектуальных устройств учёта эл-энергии/воды/тепла/ и т.п. Или ссылки на сайты их производителей, где это говорится.

Достаточно одной ссылки, опровергающей сразу все Ваши пустопорожние бредни: АСКУЭ, АИИС КУЭ, коммерческий учет электроэнергии, система куэ, внедрение АСКУЭ, askue, aiiskue
Итак, данный счётчик ведёт профиль мощности с интервалом 1 минута (это насчёт "статистики 5 мин").
Данный счётчик имеет Гарантийный срок эксплуатации == 5лет (это насчёт "1 год - вы наверно не догадываетесь, что это стандартный гарантийный срок").
Данная контора серийно производит счётчики, модемы, контроллеры и пр. уже несколько десятилетий (это насчёт "серийного изготовления электроники в России" и насчёт "У них жизненный цикл мал - год, два и кратны") - читаем раздел "О компании" и убеждаемся сколько лет и что производят. Если не верим - связываемся с их заказчиками и убеждаемся.

Далее - известное предприятие в НН: Нижегородское научно-производственное объединение имени М. В. Фрунзе - электросчетчики, счетчики электроэнергии, радиоизмерительные приборы, АСКУЭ, GPS ГЛОНАСС навигатор, навигационные системы, цифровая телевизионная приставка, ультразвуковой дефектоскоп, генераторы сигналов - СЭТ-4ТМ.03М, СЭТ-4ТМ.02М
Опять смотрим параметр "время интегрирования" (это насчёт "статистики 5 мин").
Смотрим: "Гарантийный срок эксплуатации".
Смотрим: "о компании".

Далее - Томск: Компания ЭлеСи: промышленная автоматизация технологических процессов, Компания ЭлеСи: промышленная автоматизация технологических процессов - то же самое.
Далее - опять Омск: http://www.niitkd.com - смотрим "о компании" и например описание изделия "Борт" - какие оно логи ведёт и с каким интервалом.
Достаточно?
Опять будете приводить в ответ ссылку на валяющийся у Вас под столом китайский хлам?
Если Вы имели дело только с китайским хламом с али, то мне Вас жаль.
 

rst

Member
Я пока не видел ни одной вашей поделки...
Клоун pvvx, где хотя бы одна ссылка на подтверждение ваших слов??? Я привёл уже массу.
Очевидно Вы чем-то обижены на жизнь, поэтому поносите всех и вся. Считаете что Вас не признают и не понимают и значит все вокруг козлы и недоумки.
От Вас тут нет ни одной здравой мысли - только слюни и хамство.
Может пора взглянуть в зеркало и понять что все ваши проблемы они вот они - перед вами?

PS: Да, и с этого момента - ваше место - игнор. Можете дальше сколько угодно тешить своё самолюбие перед чайниками. Я больше ваших бредней и хамства, больной тролль, не увижу.
 

pvvx

Активный участник сообщества
Вы похоже даже не поняли, что я писал. Прочитайте ещё раз.
Я писал что один из вариантов реализации: супервизор+сброс_во_flash. Это можно сделать самостоятельно в своём изделии (и я в одном из проектов так и делал). А можно взять готовое изделие, которое реализует этот принцип (имея в виду эту nvSRAM) +добавив один внешний кондёр к нему.


И что??? Как наличие какого-то хлама у Вас дома подтверждает тезис "Статистика при этом точнее 5 минут никому не требуется"??? Какая здесь логическая связь?
Для подтверждения Вашего утверждения, приведите плиз исходники всех чужих устройств, ведущих статистику! Ну или хотя-бы для упрощения - хотя-бы исходники всех интеллектуальных устройств учёта эл-энергии/воды/тепла/ и т.п. Или ссылки на сайты их производителей, где это говорится.

Достаточно одной ссылки, опровергающей сразу все Ваши пустопорожние бредни: АСКУЭ, АИИС КУЭ, коммерческий учет электроэнергии, система куэ, внедрение АСКУЭ, askue, aiiskue
Итак, данный счётчик ведёт профиль мощности с интервалом 1 минута (это насчёт "статистики 5 мин").
Данный счётчик имеет Гарантийный срок эксплуатации == 5лет (это насчёт "1 год - вы наверно не догадываетесь, что это стандартный гарантийный срок").
Данная контора серийно производит счётчики, модемы, контроллеры и пр. уже несколько десятилетий (это насчёт "серийного изготовления электроники в России" и насчёт "У них жизненный цикл мал - год, два и кратны") - читаем раздел "О компании" и убеждаемся сколько лет и что производят. Если не верим - связываемся с их заказчиками и убеждаемся.

Далее - известное предприятие в НН: Нижегородское научно-производственное объединение имени М. В. Фрунзе - электросчетчики, счетчики электроэнергии, радиоизмерительные приборы, АСКУЭ, GPS ГЛОНАСС навигатор, навигационные системы, цифровая телевизионная приставка, ультразвуковой дефектоскоп, генераторы сигналов - СЭТ-4ТМ.03М, СЭТ-4ТМ.02М
Опять смотрим параметр "время интегрирования" (это насчёт "статистики 5 мин").
Смотрим: "Гарантийный срок эксплуатации".
Смотрим: "о компании".

Далее - Томск: Компания ЭлеСи: промышленная автоматизация технологических процессов, Компания ЭлеСи: промышленная автоматизация технологических процессов - то же самое.
Далее - опять Омск: http://www.niitkd.com - смотрим "о компании" и например описание изделия "Борт" - какие оно логи ведёт и с каким интервалом.
Достаточно?
Опять будете приводить в ответ ссылку на валяющийся у Вас под столом китайский хлам?
Если Вы имели дело только с китайским хламом с али, то мне Вас жаль.
Дык где ваше-то и счет краски, лог на 5 пять лет? :) Графики и выдаваемая распечатка?
Может откроете их поглядите что там стоит? Уже явно не ваше предложение. :)
 
Последнее редактирование:

pvvx

Активный участник сообщества
И что??? Как наличие какого-то хлама у Вас дома подтверждает тезис "Статистика при этом точнее 5 минут никому не требуется"??? Какая здесь логическая связь?
....
Достаточно одной ссылки, опровергающей сразу все Ваши пустопорожние бредни: АСКУЭ, АИИС КУЭ, коммерческий учет электроэнергии, система куэ, внедрение АСКУЭ, askue, aiiskue
Читайте: Профиль мощности электроэнергии предприятия: снятие с прибора учета
Т.е. требуют шаг в 1 час и 90 суток.
В о компании маловато будет обслуженных "объектов" - у нас в конторе поболее...
Итак, данный счётчик ведёт профиль мощности с интервалом 1 минута (это насчёт "статистики 5 мин").
Данный счётчик имеет Гарантийный срок эксплуатации == 5лет (это насчёт "1 год - вы наверно не догадываетесь, что это стандартный гарантийный срок").
Доки откройте - там нет ничего про 5-ти летний лог с 1 минутой. :)
И? :) Там как раз описано, то что я вам и рекомендовал. Вы думаете это за 26 лет нашего предприятия я не рассмотрел? :)
Спасибо - вы нашли то, про что вам и писалось - список параметров полностью соответствует данными мной для вас рекомендациям, но нет стандартного интерфейса для отображения для пользователей (хоть на айфоне) и неприличные цены для повального бытового использования.
Что, они тоже краску считают? :)
Уже лучше - становитесь ближе к теме, даже выдумали про супервайзер и кондер :) Но, к сожалению, это решение не всегда годиться из-за параметров времени записи-стирания блока у flash... Не забудьте о текущем отображении - там у нас шаг 1..5 сек, с цикличностью буфера от 10 килобайт, и более - на период цикличности производственных процессов (для бытового применения = времени переходного процесса). Почему от 1 сек - опишу потом :) На новый вариант предполагается шаг текущего графика не менее 0.1 сек. Ну и расчетный минимальный срок эксплуатации у нас всегда был 10 лет, а не 5-ть. :)

Да и надо глянуть - возможно у каждого из вашего списка предприятий уже стоит моё поделие... возможно и на "обслуживании". :)

Т.е. теперь у вас есть список необходимых интервалов и указанные вами предприятия их всё-таки реализовали спустя 10 лет после запуска аналогичных у нас на производстве, но более дешевых и расширенными интерфейсами (web-сервером, графическим отображением, не исключая и промышленные интерфейсы) :) Т.е. теперь, возможно, вам станет понятно, по чему затеяна тема про логгеры – типа конкуренты догоняют (если ничего не делать, то догонят по данному направлению через не менее 5-ти лет :)). Запас ещё есть. А пока накалякаем что на Arduino, для отладки и опроса… В итоге у детей будет круче и дешевле :)
 
Последнее редактирование:

pvvx

Активный участник сообщества
И что??? Как наличие какого-то хлама у Вас дома подтверждает тезис "Статистика при этом точнее 5 минут никому не требуется"??? Какая здесь логическая связь?
Она в том, что там ведется лог с 10-ка аналоговых датчиков и нескольких ключей, да показания подписаны явно не домашними назначениями :)
В общем гоните один спам, совершенно выпав из реалий.
Так и не нашли что “серийного”, кроме принудительного “в нагрузку” для граждан России, выпускается? :)
Могу подсказать – покопайте “Глонас на каждое авто” и ранее всякие кассовые примочки…
На этом всё, т.к. всё остальное изготовлено в Китае (как и писал вам – разработчик в Китае), а тут перепродано под другим именем. :p
От этого и беситесь, по причине, что имея ваши предрассудки не можете организовать тут производство хоть “мелко-серийного” и завидуете мне – у меня предприятие работает уже более 26 лет и выпускает смешанную продукцию (что можем, то делаем сами, а не покупаем из-за границы), да и никого не увольняем за всю историю...
Кто участвует у нас в разработке, переучивается от полтора года до двух лет, прежде чем осознать все тонкости и освободиться от ваших показных и навеянных из вне глупостей … На столько большая разница у реального производства тут.
Вот у вас так-же - как дело дошло до реальности, то полностью сами подтвердили то, что я вам говорил, а до этого только выпендривались и гнали про какую-то краску, как будто разговор шел о стройматериалах для домашнего использования из мелких, постоянно закрывающихся шарашкиных контор. :)
 
Последнее редактирование:

Elik

New member
Хорош воевать, оба на одном и том же языке говорите, а друг дружку не понимаете, смените баудрейт что ль )))))

Помогите лучше по теме, как данные приходящие по RX записать в файл или вывести в вебинтерфейс? с прямой связью все понятно, вот команда:

newAJAXCommand('web.cgi?sys_ram0x60000000=0x3d&sys_ram0x60000000=0x26&sys_ram0x60000000=0x31&sys_ram0x60000000=0x2d&sys_ram0x60000000=0x6f&sys_ram0x60000000=0x6e&sys_ram0x60000000=0xa');
а вот обратно как и куда принимать?
Хочу обратную связь сделать...
 

pvvx

Активный участник сообщества
newAJAXCommand('web.cgi?sys_ram0x60000000=0x3d&sys_ram0x60000000=0x26&sys_ram0x60000000=0x31&sys_ram0x60000000=0x2d&sys_ram0x60000000=0x6f&sys_ram0x60000000=0x6e&sys_ram0x60000000=0xa');
а вот обратно как и куда принимать?
Хочу обратную связь сделать...
Ну а зачем лезть в регистры UART? Это sys_ram0x60000000=xx - просто пример прямой записи в регистр или память.
Соответственно чтение будет [inline]~sys_ram0x60000000~[/inline] вставленное в HTML или в считываемый скриптом по AJAX XLM файл.
Откройте Help на самом Web ESP8266, там найдете краткое описание ко всем переменным.
Снимок1528.gif
Для передачи данных из HTTP web страниц применяют специальные форматы и протоколы.
Стандартного решения по данному поводу не бывает, по этому вы должны сами описать протокол связи с вашим внешним устройством и продумать какие скрипты и команды будут у вас на странице.
Для передачи данных в HTTP и js туда и обратно из броузеров удобнее пользоваться Websocket.

PS: Cпросите у спорщика - он всё знает и все вам напишет - у него стаж и всё такое :) Я подожду его решения и демки...
 
Последнее редактирование:
  • Like
Реакции: Elik

Elik

New member
Ну а зачем лезть в регистры UART? Это sys_ram0x60000000=xx - просто пример прямой записи в регистр или память.
Соответственно чтение будет [inline]~sys_ram0x60000000~[/inline] вставленное в HTML или в считываемый скриптом по AJAX XLM файл.
Откройте Help на самом Web ESP8266, там найдете краткое описание ко всем переменным.
Посмотреть вложение 4316
Для передачи данных из HTTP web страниц применяют специальные форматы и протоколы.
Стандартного решения по данному поводу не бывает, по этому вы должны сами описать протокол связи с вашим внешним устройством и продумать какие скрипты и команды будут у вас на странице.
Для передачи данных в HTTP и js туда и обратно из броузеров удобнее пользоваться Websocket.

PS: Cпросите у спорщика - он всё знает и все вам напишет - у него стаж и всё такое :) Я подожду его решения и демки...
Благодарствую, спасибо за помощь! постараюсь переварить, мне сложно дается это искусство, старый я ))))
Не могли бы примерчик считывания подсказать, далее мне будет легко пристроить в js присваивание и вывод...


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

Elik

New member
Ну а зачем лезть в регистры UART? Это sys_ram0x60000000=xx - просто пример прямой записи в регистр или память.
Соответственно чтение будет [inline]~sys_ram0x60000000~[/inline] вставленное в HTML или в считываемый скриптом по AJAX XLM файл.
Пишу вот так:
uartmessage = newAJAXCommand('web.cgi?sys_ram0x60000000');
if(uartmessage){
document.getElementById('UARTmes').innerHTML = uartmessage;
}

говорит:
Command failed.
Connection to device was lost
 
Последнее редактирование:

pvvx

Активный участник сообщества
Пишу вот так:
uartmessage = newAJAXCommand('web.cgi?sys_ram0x60000000');
if(uartmessage){
document.getElementById('UARTmes').innerHTML = uartmessage;
}

говорит:
Command failed.
Connection to device was lost
А так и не выйдет. Данные то как передадутся в newAJAXCommand?
В Web-диск добавляете data.xml и в него вписываете что-то типа:
[inline]<data>~sys_ram0x60000000~</data>[/inline]
Этот data.xml и запрашиваете. Обработав выуживаете данные.
Или просто в сам текст HTM какого файла на диске-сервера ставите [inline]~имя_переменной~[/inline] - тогда при отдаче этого файла там будет его значение. Для автоматического отделения Web-ом от другого текста и стоят "~". По ним он разбирает, что там переменная...
Примеры на это всё даны в самом web...

И уже говорил много раз (повторять и разъяснять каждому лично уже очень-очень надоело, ищите в теме про TCP2UART и Web-свалке) - просто так вывести данные на HTML страницу с UART не выйдет. Вы или там выдумывайте и описывайте в СИ какой протокол, да...
 
Последнее редактирование:
  • Like
Реакции: Elik

Elik

New member
А так и не выйдет. Данные то как передадутся в newAJAXCommand?
В Web-диск добавляете data.xml и в него вписываете что-то типа:
[inline]<data>~sys_ram0x60000000~</data>[/inline]
Этот data.xml и запрашиваете. Обработав выуживаете данные.
Или просто в сам текст HTM какого файла на диске-сервера ставите [inline]~имя_переменной~[/inline] - тогда при отдаче этого файла там будет его значение. Для автоматического отделения Web-ом от другого текста и стоят "~". По ним он разбирает, что там переменная...
Примеры на это всё даны в самом web...

И уже говорил много раз (повторять и разъяснять каждому лично уже очень-очень надоело, ищите в теме про TCP2UART и Web-свалке) - просто так вывести данные на HTML страницу с UART не выйдет. Вы или там выдумывайте и описывайте в СИ какой протокол, да...
Да понимаю вас, сделал я так вчера по примеру, как вы и описали )))
Получилось! Спасибо большущее!
 

Elik

New member
Или просто в сам текст HTM какого файла на диске-сервера ставите [inline]~имя_переменной~[/inline] - тогда при отдаче этого файла там будет его значение.
Что то я завис
Пишу вот так:
Код:
<div id="UARTmes0">~sys_ram0x60000000~</div>
<div id="UARTmes1">~sys_ram0x60000000~</div>
<div id="UARTmes2">~sys_ram0x60000000~</div>
<div id="UARTmes3">~sys_ram0x60000000~</div>
<div id="UARTmes4">~sys_ram0x60000000~</div>
<div id="UARTmes5">~sys_ram0x60000000~</div>
<div id="UARTmes6">~sys_ram0x60000000~</div>
получаю при помощи этого:
Код:
function readUart(){
for(i=0;i<7;i++){
 hex = document.getElementById('UARTmes' + i).innerHTML;
 uartString[i] = hex.substr(8, 9);
 mesUart += String.fromCharCode(parseInt(uartString[i],16));
 }
 document.getElementById('UARTmes').innerHTML = mesUart;
}
месидж, который послал, но хочу автоматизировать процесс через джаваскрипт, вот так:
Код:
function readUart(){
for(i=0;i<7;i++){
 hex = "~sys_ram0x60000000~";
 uartString[i] = hex.substr(8, 9);
 mesUart += String.fromCharCode(parseInt(uartString[i],16));
 }
 document.getElementById('UARTmes').innerHTML = mesUart;
}
Когда пишу в боди документа, то считывается последовательно все символы, а когда при помощи javascript пытаюсь считать последовательно, то ничего не выходит (((, каждый раз нужно перезагружать документ? в чем загвоздка, как без перезагрузки считывать?
 
Последнее редактирование:

pvvx

Активный участник сообщества
ничего не выходит, в чем загвоздка?
Файл то не перечитывается и в нем текст не возобновляется.
По этому и делают запрос на чтение файлика [inline]*.xml[/inline] который при отдаче сервером каждый раз будет иметь новые данные.
Вот пример: esp8266web/gpio.xml at master · pvvx/esp8266web · GitHub
Этот файл запрашивается newAJAXCommand('gpio.xml', updateStatus, true);
( esp8266web/gpio.htm at master · pvvx/esp8266web · GitHub )
И по приему разбирается именам переменных
Код:
function updateStatus(xmlData) {
var x1 = getXMLValue(xmlData, 'имя тега xml');
var x2 = getXMLValue(xmlData, 'имя другого тега xml');
}
 
Последнее редактирование:

Elik

New member
Файл то не перечитывается и в нем текст не возобновляется.
По этому и делают запрос на чтение файлика [inline]*.xml[/inline] который при отдаче сервером каждый раз будет иметь новые данные.
Ааааа......тормознул, да, спасибо, сейчас доходит ))))
 

Elik

New member
Файл то не перечитывается и в нем текст не возобновляется.
По этому и делают запрос на чтение файлика [inline]*.xml[/inline] который при отдаче сервером каждый раз будет иметь новые данные.
Вот пример: esp8266web/gpio.xml at master · pvvx/esp8266web · GitHub
Этот файл запрашивается newAJAXCommand('gpio.xml', updateStatus, true);
( esp8266web/gpio.htm at master · pvvx/esp8266web · GitHub )
И по приему разбирается именам переменных
Код:
function updateStatus(xmlData) {
var x1 = getXMLValue(xmlData, 'имя тега xml');
var x2 = getXMLValue(xmlData, 'имя другого тега xml');
}
Вы просто крассавчик! Спасибо, работает! Криво пока, но работает ))))
 

pvvx

Активный участник сообщества
Вы просто крассавчик! Спасибо, работает! Криво пока, но работает ))))
Это нельзя назвать "работа". Во первых, эти команды, с ~ram~ сделаны исключительно для отладки. Во вторых так не делают передачу из HTTP в устройство, не имеющее протоколов для поддержки многопользовательского доступа и т.д.
К примеру с modbus, где уже существует разбиение на блоки (по UART) с как-то разбираемой последовательностью того кто, кому и когда что передал и кому когда какой ответ пришел, чтобы иметь всегда готовые данные и не было путаницы на страницах HTMl приходится делать дополнительные управляющие структуры и буферизацию.
Пример https://esp8266.ru/forum/threads/modbus-tcp-rtu-rs-485-web-server.911/page-2#post-14098
С websocket, в общем случае для UART это решается проще и короче, без дополнительных ошибок и несовместимостей. Но web-сервер-свалка делась под ряд проектов, где дополнительный канал доступа к UART мешает основным и варианта, с UART-websocket не требовалось.
 

Elik

New member
Это нельзя назвать "работа". Во первых, эти команды, с ~ram~ сделаны исключительно для отладки. Во вторых так не делают передачу из HTTP в устройство, не имеющее протоколов для поддержки многопользовательского доступа и т.д.
К примеру с modbus, где уже существует разбиение на блоки (по UART) с как-то разбираемой последовательностью того кто, кому и когда что передал и кому когда какой ответ пришел, чтобы иметь всегда готовые данные и не было путаницы на страницах HTMl приходится делать дополнительные управляющие структуры и буферизацию.
Пример https://esp8266.ru/forum/threads/modbus-tcp-rtu-rs-485-web-server.911/page-2#post-14098
С websocket, в общем случае для UART это решается проще и короче, без дополнительных ошибок и несовместимостей. Но web-сервер-свалка делась под ряд проектов, где дополнительный канал доступа к UART мешает основным и варианта, с UART-websocket не требовалось.
То есть открыв страницу на 2х девайсах управлять не получится?
Кнопки посылают определенную последовательность, которую принимает исполняющее устройство (ведомое) распознает и исполняет, далее отправляет ответ туда же, устройство ведь одно, оно не может отправить разные команды в разные устройства если исполнило уникальную команду, то есть два устройства будут показывать один и тот же результат и ведь должны нет?
Если я включил к примеру пин 5 на ведомом устройстве и оно отправило ответ, что пин подтянут на 50% (в случае с ШИМ) то он отправляет это всем устройствам, ведь так и должно быть.
Увы если бы у меня, да и у остальных пользователей не с такими широкими и глубокими познаниями было бы все хорошо с программированием микроконтроллеров, то все бы писалось с нуля и было бы заточено под определенные нужды...а так приходится импровизировать...
Спасибо вам за труды еще раз и за поддержку этой прекрасной прошивки! Если както у вас руки дойдут сделайте многим еще один подарок - допишите управление HTTPS - UART, не для отладки, а для использования в штатном режиме, это будет просто великолепно!
 
Сверху Снизу