Так вроде бы библиотеку исправили и переписали ? Она идет в комплекте дистрибутива.Сейчас задержка практически не ощущается. На DUE реально всё летает.Omiroshin писал(а):... использую стандартную библиотечку для этой платы, после прочтения статьи (в ней описан баг с подвисаниями клиентов web-сервера) захотелось обойти описанный в статье баг, как это можно сделать?
Arduino Mega Server
Модератор: Alex
-
- Сообщения: 2575
- Зарегистрирован: Пт ноя 06, 2015 10:22 am
- Откуда: Кишинёв
- Благодарил (а): 303 раза
- Поблагодарили: 282 раза
Re: Arduino Mega Server
AMS : ESP32 + NRF24 + 1Wire-I2C мост DS2482 + счетчик DS2423 + сеть MySensors + редактирование страниц в браузере + Upload по воздуху + SPIFFS
-
- Сообщения: 2575
- Зарегистрирован: Пт ноя 06, 2015 10:22 am
- Откуда: Кишинёв
- Благодарил (а): 303 раза
- Поблагодарили: 282 раза
Re: Arduino Mega Server
Тут скорее всего проблема с библиотеками. Сам только что поставил десятку. Настроить IDE еще не успел. Пробую скомпилировать на портабл-версии 1.8.4 под семёркой.abulka писал(а):Не подскажете новичку, чем недовольна программа.
Скачал AMS.
В настройках IDE, сделал как указано.
Библиотеки не обновлял.
IDE сегодняшней версии 1.8.5
Для начала надо скачать и в коде переименовать библиотеку "TimeLib". О результатах отпишусь чуть позже.
PS.
Теперь понял , откуда ноги растут у TimeLib.h и почему компилятор орет на неё. Надо файлы ковырять и искать обращение к библиотеке.
В менеджере плат опустите версию для 2560 до 1.6.7 и посмотрите результат. Потом потихоньку поднимайте.
СпойлерПоказать
AMS : ESP32 + NRF24 + 1Wire-I2C мост DS2482 + счетчик DS2423 + сеть MySensors + редактирование страниц в браузере + Upload по воздуху + SPIFFS
- nick7zmail
- Сообщения: 7573
- Зарегистрирован: Пн окт 28, 2013 8:14 am
- Откуда: Екатеринбург
- Благодарил (а): 121 раз
- Поблагодарили: 2010 раз
Re: Arduino Mega Server
Господа ардуинщики, помогите пожалуйста. Вчера пол вечера убил пытаясь решить просто гипер простую проблему....
Вопрос не совсем по АМС, а по ардуино коду в целом...
Суть - надо в цикле "склепать" выражение формата REL1=0.
В инете говорят надо пользоваться для этого sprintf, ибо если просто к "REL" прибавлять int - то получается херня. Рекомендуют подобное выражение
Но оно тоже в req закидывает херню какую-то, и с новыми итерациями цикла вообще непойми что делает...то ли строку урезать начинает, то ли наоборот добавлять что-то. В общем если никто не ответит - скрины вечером скину...
Ну по-любому же сталкивались с таким...подскажите ответ плиз...
Вопрос не совсем по АМС, а по ардуино коду в целом...
Суть - надо в цикле "склепать" выражение формата REL1=0.
В инете говорят надо пользоваться для этого sprintf, ибо если просто к "REL" прибавлять int - то получается херня. Рекомендуют подобное выражение
Код: Выделить всё
sprintf(req, "%s%d%s", "REL", i, "=0");//i - счетчик цикла (integer)
Ну по-любому же сталкивались с таким...подскажите ответ плиз...
Raspberry Pi3+Broadlink+esp8266 (blynk)+AMS
Если вам помогло какое-либо сообщение - не забывайте пользоваться кнопкой "СПАСИБО".
Услуги в профиле коннект
>>>>>Мой новый канал на ютутбе, подписывайтесь!<<<<<
Если вам помогло какое-либо сообщение - не забывайте пользоваться кнопкой "СПАСИБО".
Услуги в профиле коннект
>>>>>Мой новый канал на ютутбе, подписывайтесь!<<<<<
-
- Сообщения: 2575
- Зарегистрирован: Пт ноя 06, 2015 10:22 am
- Откуда: Кишинёв
- Благодарил (а): 303 раза
- Поблагодарили: 282 раза
Re: Arduino Mega Server
Склепать в смысле что бы потом отправить? Тогда посмотри как это сделано в электро-модуле.
И должен быть какой то буфер.
СпойлерПоказать
Код: Выделить всё
void sendElectroMajor(char obj[], byte STT, byte STP) {
// для посылки дробной части значения
int UPrms_[MAX_UI_SENSORS];
// Вычисляем дробные части значений для формирования строки
UPrms_[U] = (middleUPrms[U] - (int)middleUPrms[U]) * 100;
for (int i = STT; i < STP; i++) {
UPrms_[i] = (middleUPrms[i] - (int)middleUPrms[i]) * 100;
}
if (STT == START_PIN && STP == END_PIN) {
sprintf(buf, "GET /objects/?object=%s&op=m&m=update&%s=%0d.%d&%s=%0d.%d&%s=%0d.%d&%s=%0d.%d&%s=%0d.%d&%s=%0d.%d&%s=%0d.%d&%s=%0d.%d&%s=%0d.%d&%s=%0d.%d&%s=%0d.%d&%s=%0d.%d&%s=%0d.%d&%s=%0d.%d HTTP/1.0", // количество этих кракозябр должно быть равно количеству объектов.
obj, "u", (int)middleUPrms[U], abs(UPrms_[U]),
"p1", (int)middleUPrms[1], abs(UPrms_[1]), "p2", (int)middleUPrms[2], abs(UPrms_[2]),
"p3", (int)middleUPrms[3], abs(UPrms_[3]), "p4", (int)middleUPrms[4], abs(UPrms_[4]),
"p5", (int)middleUPrms[5], abs(UPrms_[5]), "p6", (int)middleUPrms[6], abs(UPrms_[6]),
"p7", (int)middleUPrms[7], abs(UPrms_[7]), "p8", (int)middleUPrms[8], abs(UPrms_[8]),
"p9", (int)middleUPrms[9], abs(UPrms_[9]), "p10",(int)middleUPrms[10],abs(UPrms_[10]),
"p11",(int)middleUPrms[11],abs(UPrms_[11]), "p12",(int)middleUPrms[12],abs(UPrms_[12]),
"p13",(int)middleUPrms[13],abs(UPrms_[13]));
#ifdef MAJORDOMO_FEATURE
sendHttpRequest(MAJOR_IP, MAJOR_PORT, mclient);
#endif
}
} // sendElectroMajor( )
AMS : ESP32 + NRF24 + 1Wire-I2C мост DS2482 + счетчик DS2423 + сеть MySensors + редактирование страниц в браузере + Upload по воздуху + SPIFFS
- nick7zmail
- Сообщения: 7573
- Зарегистрирован: Пн окт 28, 2013 8:14 am
- Откуда: Екатеринбург
- Благодарил (а): 121 раз
- Поблагодарили: 2010 раз
Re: Arduino Mega Server
Не совсем...склепать, чтоб потом обратиться к этой строке (вкладка server_ajax, если правильно помню, пример с LED, где if LED1=1 then elseif LED1=0...и так далее). Как сделать тоже самое в цикле? Может я буфер неправильно объявил? Я его задал как char* req[6]; , и в него пытался грузить через sprintf...получалась дикая фигня...говорю - вечером скрины кину.
Raspberry Pi3+Broadlink+esp8266 (blynk)+AMS
Если вам помогло какое-либо сообщение - не забывайте пользоваться кнопкой "СПАСИБО".
Услуги в профиле коннект
>>>>>Мой новый канал на ютутбе, подписывайтесь!<<<<<
Если вам помогло какое-либо сообщение - не забывайте пользоваться кнопкой "СПАСИБО".
Услуги в профиле коннект
>>>>>Мой новый канал на ютутбе, подписывайтесь!<<<<<
- ser009
- Сообщения: 595
- Зарегистрирован: Сб окт 13, 2012 9:55 am
- Благодарил (а): 4 раза
- Поблагодарили: 43 раза
Re: Arduino Mega Server
Если речь об отправке Get запросом
Подробнее тут
Код: Выделить всё
sprintf(reg, "REL%d=%d", i, value); // i - номер в цикле, value - значение
- nick7zmail
- Сообщения: 7573
- Зарегистрирован: Пн окт 28, 2013 8:14 am
- Откуда: Екатеринбург
- Благодарил (а): 121 раз
- Поблагодарили: 2010 раз
Re: Arduino Mega Server
Ну ахренеть блин...
Пришел домой, думаю ща примерчик накатаю...залил скетч из 5 строчек в ардуино - работает Оо...
Вставил его в АМС - работает ОО"!
Вчера реально весь вечер убил, в разных вариациях пробуя всякие команды, в том числе и эту...не работало...бред =D.
Пришел домой, думаю ща примерчик накатаю...залил скетч из 5 строчек в ардуино - работает Оо...
Вставил его в АМС - работает ОО"!
Код: Выделить всё
sprintf(req_name1, "%s%d%s", "REL", i+1, "=1");
Raspberry Pi3+Broadlink+esp8266 (blynk)+AMS
Если вам помогло какое-либо сообщение - не забывайте пользоваться кнопкой "СПАСИБО".
Услуги в профиле коннект
>>>>>Мой новый канал на ютутбе, подписывайтесь!<<<<<
Если вам помогло какое-либо сообщение - не забывайте пользоваться кнопкой "СПАСИБО".
Услуги в профиле коннект
>>>>>Мой новый канал на ютутбе, подписывайтесь!<<<<<
- nick7zmail
- Сообщения: 7573
- Зарегистрирован: Пн окт 28, 2013 8:14 am
- Откуда: Екатеринбург
- Благодарил (а): 121 раз
- Поблагодарили: 2010 раз
Re: Arduino Mega Server
Alex, как гуру процессинга, подскажи плс...ещё в 14 версии пробовал это сделать - как то не вышло....ща опять пытаюсь повторить...
Я же правильно понимаю - лого слева вверху написано на процессинге?
Как там включать/отключать опции, которые в обычном коде процессинга идут в setup?
Например пытаюсь врубить noStroke(); - ни в таком виде не хочет, ни в виде context.noStroke(); не хочет. Говорит такая функция не найдена...хотя в обычном скетче для чистого процессинга врубается спокойно.
(выдержка из rgb_cube)
Я же правильно понимаю - лого слева вверху написано на процессинге?
Как там включать/отключать опции, которые в обычном коде процессинга идут в setup?
Например пытаюсь врубить noStroke(); - ни в таком виде не хочет, ни в виде context.noStroke(); не хочет. Говорит такая функция не найдена...хотя в обычном скетче для чистого процессинга врубается спокойно.
Код: Выделить всё
void setup()//------------------------------------------------------------
{
size(64, 48, P3D);
by = height - buttonSize;
noStroke();
noSmooth();
mouseY = height * 100 / 45;
}
Raspberry Pi3+Broadlink+esp8266 (blynk)+AMS
Если вам помогло какое-либо сообщение - не забывайте пользоваться кнопкой "СПАСИБО".
Услуги в профиле коннект
>>>>>Мой новый канал на ютутбе, подписывайтесь!<<<<<
Если вам помогло какое-либо сообщение - не забывайте пользоваться кнопкой "СПАСИБО".
Услуги в профиле коннект
>>>>>Мой новый канал на ютутбе, подписывайтесь!<<<<<
-
- Сообщения: 2575
- Зарегистрирован: Пт ноя 06, 2015 10:22 am
- Откуда: Кишинёв
- Благодарил (а): 303 раза
- Поблагодарили: 282 раза
Re: Arduino Mega Server
У Alex не очень лестные отзывы о нем. Сейчас я пробую Open-Smmart на 3,2 дюйма с тачем. Пока все нравиться. Только калибровку тонкую надо делать.
AMS : ESP32 + NRF24 + 1Wire-I2C мост DS2482 + счетчик DS2423 + сеть MySensors + редактирование страниц в браузере + Upload по воздуху + SPIFFS