GyverPortal

Комментарии

AlexGyver

★★★★★★✩
Команда форума
30 Июл 2018
357
564
@ASM,
еще непонятно, почему такой вариант выдает розовый)
Потому что неправильно настроен порядок цветов в ленте, см примеры или уроки по fastled
 

ASM

★★★★✩✩✩
26 Окт 2018
1,485
292
@AlexGyver, странно это... Проекту уже несколько лет, всё работало... А тут вдруг неправильно стало, не меняя тип ленты.
 

aidar_i

✩✩✩✩✩✩✩
1 Май 2021
64
8
@ASM, библиотеки постоянно обновляют, что то поменяли значит. У вас скорее в инициализации ленты проблема, в строке FastLED.addLeds<WS2811,2,RGB>(leds,NUM_LEDS); поиграйте с параметром RGB (BRG, GRB и тд) пока не будет правильно.
 

AlexGyver

★★★★★★✩
Команда форума
30 Июл 2018
357
564
@ASM,
Проекту уже несколько лет, всё работало.
Вот так вот вдруг ни с чего (0, 255, 255) в розовый не превращается. Значит тип ленты изначально стоял неправильный и цвета были искажены
 

ASM

★★★★✩✩✩
26 Окт 2018
1,485
292
Вот он многолетний косяк, который прошел многое со времен ардуинки, который только сейчас всплыл))
C++:
#define COLOR_ORDER GRB
FastLED.addLeds<WS2812B, LED_PIN, RGB>(leds, NUM_LEDS);
тип ленты указан верно, но почему-то вместо переменной указано значение.
никто за это время не пожаловался на этот момент, и было бы не заметно, пока я не сменил HEX на RGB...
 

aidar_i

✩✩✩✩✩✩✩
1 Май 2021
64
8
Это Вы невнимательны, я сколько пользовался никогда такого не было, сперва смотрел этот параметр. В примерах может быть ошибки, но библиотека же правильная.
 

novik1

✩✩✩✩✩✩✩
23 Ноя 2022
26
0
контроль соединения как проще реализовать?
как определить на веб странице - есп еще доступна в локалке или уже нет?)
 

ASM

★★★★✩✩✩
26 Окт 2018
1,485
292
@novik1, в стандартных примерах, проверка статуса WiFi)
C++:
while (status != WL_CONNECTED) {
Пусть код определяет, и если что переподключается.
 

ASM

★★★★✩✩✩
26 Окт 2018
1,485
292
@novik1, так поддерживать соединение, зачем web проверка?)
Или какие-то особенные запросы?)
 

novik1

✩✩✩✩✩✩✩
23 Ноя 2022
26
0
@ASM,
вот я сижу и втыкаю на страничку есп.
Отлучился куда нить.
Возвращаюсь к монитору, а за время пока я шлялся, роутер помер или есп)))
Как мне браузер об этом может сообщить?

Получается я не знаю - актуальные ли данные отображаются прямо сейчас на веб странице.

вот этот нюанс можно как то обработать?
 

Старик Похабыч

★★★★★★★
14 Авг 2019
4,159
1,267
Москва
Чисто теоретически можно отправлять раз в цать сек. запрос и уже обрабатывать от него ответ. Не спец в html, а гайверпортале вообще ничего не знаю. Но на html + javascript подобное сделать можно.
 

novik1

✩✩✩✩✩✩✩
23 Ноя 2022
26
0
Чисто теоретически можно отправлять раз в цать сек. запрос и уже обрабатывать от него ответ.
вооо то что надо!
если нет ответа - маякуем на страничке как нибудь!

никто не делал такое?

можно же свой код вставить в портале, ну чтоб в библиотеку не лезть.
Ток не уверен что проканает код с такими тегами: "<script>тутсвойкод</script>"
 

ASM

★★★★✩✩✩
26 Окт 2018
1,485
292
@novik1, думаю да, только надо JavaScript проверки сделать. Либо делать проверку значений через update, и если проверка обновлений не прошла, вывести сообщение. Точно не могу сказать, не применял похоже)
 

ASM

★★★★✩✩✩
26 Окт 2018
1,485
292
@novik1, можешь свой код, можешь ссылаться на файл в памяти.
C++:
GP.JS_TOP();                        // верхний блок JS скриптов (для кликов, слайдеров и т.д.)
GP.JS_TOP_FILE();                   // файл скриптов скачается из памяти (/gp_data/scripts.js)
GP.JS_BOTTOM();                     // нижний блок JS скриптов (для кликов, слайдеров и т.д.)

GP.SEND(код);                       // добавить свой код на страницу ("строка", F("строка"), String)
GP.SEND_P(pgm код);                 // добавить свой код на страницу (PGM_P, PROGMEM)
 

AlexGyver

★★★★★★✩
Команда форума
30 Июл 2018
357
564
@novik1,
как определить на веб странице - есп еще доступна в локалке или уже нет?)
сделал, появится в обновлении v3.4

можно же свой код вставить в портале, ну чтоб в библиотеку не лезть
конечно, отправляешь любой текст через GP.SEND()

код с такими тегами: "<script>тутсвойкод</script>"
именно так это и делается
 
Изменено:

aidar_i

✩✩✩✩✩✩✩
1 Май 2021
64
8
Что то не могу вывести иконку
C++:
#include <WiFi.h>
#include <GyverPortal.h>
GyverPortal portal;
IPAddress local_IP(192,168,1,200);
IPAddress gateway(192,168,1,1);
IPAddress subnet(255, 255, 255, 0);
void action()
{
}
void setup()
{
    WiFi.mode(WIFI_STA);
    WiFi.begin("MTS", "12345678");
    WiFi.config(local_IP, gateway, subnet);
    if(0) portal.enableAuth("login", "password");
    portal.attachBuild(build);
    portal.attach(action);
    portal.start();
}
void build()
{
    GP.BUILD_BEGIN();
    GP.THEME(GP_DARK);
    GP.ICON_SUPPORT();
    GP.ICON("camera");
    BUILD_END();
}
void loop()
{
  portal.tick();
}
 
Изменено:

Barmer

✩✩✩✩✩✩✩
3 Ноя 2022
4
0
float в Ajax графике не поддерживается?
Как выкрутиться можно?
График Ajax:
GP.AJAX_PLOT("plot3", 3, 1200, 3000);

if (portal.update("plot3"))
    {
      float answ[] = {value3, value2, value4};
      portal.answer(answ, 3);    //отсутствуют экземпляры перегруженная функция "GyverPortal::answer", соответствующие списку аргументовC/C++
    }
Делителя в заголовке функции не увидел.
Хотя в wiki написано, что у всех трех типов есть делитель.
 
Изменено:

ASM

★★★★✩✩✩
26 Окт 2018
1,485
292
@aidar_i, никто не ответил) похоже проблема на стороне сервиса, у них там новый формат появился)
@Barmer, в WIKI
C++:
void answer(int16_t* v, int am);            // массив int размерностью am, для графика
void answer(int16_t* v, int am, int dec);   // + делитель
 
Изменено:

aidar_i

✩✩✩✩✩✩✩
1 Май 2021
64
8
@aidar_i, никто не ответил) похоже проблема на стороне сервиса, у них там новый формат появился)
Если вставляю в браузере в Просмотреть код эту строку, то иконка появляется. Значить из библиотеки не передается?
 

ASM

★★★★✩✩✩
26 Окт 2018
1,485
292
@aidar_i, думаю, да. Подождём обновления. Или пропиши вручную код картинки в нужном месте)