ESP, IoT WiFi лампа-будильник. Обсуждение проекта

Сообщение изъято на правах администрации
ВНИМАНИЕ !!!
те кто живой и хочет увидеть ссылку на свое исполнение, прошу централизовать все свои доработки и сообщения. Далее в теме пишем сообщение с ссылкой на ваше сообщение (с проектом), с пометкой @mechanic .


В данной ветке обсуждаются только сия проект. Общие вопросы, доработки и проблемы, не относящиеся к конкретным прошивкам!. Вопросы по прошивкам решаем в темах самих прошивок. Здесь такие разговоры оффтоп.
Всякий любой вопрос не по теме сразу удаляется БЕЗ объяснения причины!
Для этого есть соответствующие ветки форума. Вопрос почему удалили мой пост? также удаляется.

  • Общаясь на форуме будьте взаимно вежливы!
  • Обратите внимание на то, что у нас принято говорить Спасибо путём повышения репутации, нажав на кнопочку
    .
  • Если есть претензии то нажмите кнопку .
  • Запрещено писать красным цветом в ваших постах - этот цвет только для Модераторов .
  • Вопросы, ответ на которые есть в шапке или в FAQ, будут удаляться. За повторный вопрос пользователь может быть наказан.
  • Убедительная просьба придерживаться тематики ветки, избегать флуда и оффтопа!
Очень часто при первом запуске лампы, при подключении к сети лампы не открывается менеджер сетей WIFI.
Помогает комментирование строки #define ESP_USE_BUTTON (отключение кнопки) и заливка скетча выставив Erase flash в All Flash Content
После того, как вы подключили лампу к сети эту строку можно раскомментировать и залить скетч с параметром Erase flash установленным в Only Sketh
Наш участник собрал много полезной информации по блокам питания для лампы. Качественное питание - необходимое условие надёжной работы любого устройства. Изучаем: https://community.alexgyver.ru/threads/nebolshoj-opus-po-bp-dlja-gyverlamp-wifi-lampa-budilnik.3523/

ВНИМАНИЕ! Если у вас не компилируется или не загружается скетч - значит вы сделали что-то неправильно. Специально для вас созданы две темы:
ESP8266, проблема с компиляцией скетча
ESP8266, проблема с загрузкой скетча
Читайте (ЧИТАЙТЕ! Не пишите!) эти темы, там уже есть решение вашей проблемы.
Здесь подобные вопросы считаются оффтопом и молча удаляются, а авторы получают баллы нарушений.
 

Комментарии

recoshet

★✩✩✩✩✩✩
15 Июн 2019
1
14
Сообщение изъято на правах администрации
ВНИМАНИЕ !!!
те кто живой и хочет увидеть ссылку на свое исполнение, прошу централизовать все свои доработки и сообщения. Далее в теме пишем сообщение с ссылкой на ваше сообщение (с проектом), с пометкой @mechanic .


В данной ветке обсуждаются только сия проект. Общие вопросы, доработки и проблемы, не относящиеся к конкретным прошивкам!. Вопросы по прошивкам решаем в темах самих прошивок. Здесь такие разговоры оффтоп.
Всякий любой вопрос не по теме сразу удаляется БЕЗ объяснения причины!
Для этого есть соответствующие ветки форума. Вопрос почему удалили мой пост? также удаляется.

  • Общаясь на форуме будьте взаимно вежливы!
  • Обратите внимание на то, что у нас принято говорить Спасибо путём повышения репутации, нажав на кнопочку
    .
  • Если есть претензии то нажмите кнопку .
  • Запрещено писать красным цветом в ваших постах - этот цвет только для Модераторов .
  • Вопросы, ответ на которые есть в шапке или в FAQ, будут удаляться. За повторный вопрос пользователь может быть наказан.
  • Убедительная просьба придерживаться тематики ветки, избегать флуда и оффтопа!
Очень часто при первом запуске лампы, при подключении к сети лампы не открывается менеджер сетей WIFI.
Помогает комментирование строки #define ESP_USE_BUTTON (отключение кнопки) и заливка скетча выставив Erase flash в All Flash Content
После того, как вы подключили лампу к сети эту строку можно раскомментировать и залить скетч с параметром Erase flash установленным в Only Sketh
Наш участник собрал много полезной информации по блокам питания для лампы. Качественное питание - необходимое условие надёжной работы любого устройства. Изучаем: https://community.alexgyver.ru/threads/nebolshoj-opus-po-bp-dlja-gyverlamp-wifi-lampa-budilnik.3523/

ВНИМАНИЕ! Если у вас не компилируется или не загружается скетч - значит вы сделали что-то неправильно. Специально для вас созданы две темы:
ESP8266, проблема с компиляцией скетча
ESP8266, проблема с загрузкой скетча
Читайте (ЧИТАЙТЕ! Не пишите!) эти темы, там уже есть решение вашей проблемы.
Здесь подобные вопросы считаются оффтопом и молча удаляются, а авторы получают баллы нарушений.
 

Bratishka

✩✩✩✩✩✩✩
14 Июл 2020
4
0
Ищу контакты Евгения, который моделировал делали для 3d печати
https://github.com/AlexGyver/GyverLamp/tree/master/3D_print/Евгений
вот эти.
Евгений, если ты это читаешь, напиши, пожалуйста, в ЛС.

В леруа есть плафоны прямоугольной формы, а не круглые. У меня как раз такой, недосмотрел когда покупал) Нужна помощь с моделированием основания для прямоугольных плафонов.
Или если кто-то другой сможет с этим помочь за вознаграждение, пишите.

UPD
Спасибо @avramenkoal за предоставленные ссылки!
Оставлю тут, может кому-то ещё пригодятся :
https://www.thingiverse.com/thing:4070703
У пользователей
@SkyFOX и @Ingvarik здесь https://community.alexgyver.ru/threads/wifi-lampa-budilnik.1406/page-5
@Sierra здесь https://community.alexgyver.ru/threads/wifi-lampa-budilnik.1406/page-6
@Jery здесь https://community.alexgyver.ru/threads/wifi-lampa-budilnik.1406/page-7 , а на этой же странице от
@MasterShu полный набор STLов.
Ребят есть где то еще информация по поводу оснований под плафон из Леруа кроме той что выше?
 

Сотнег

★★★★★★★
15 Янв 2020
4,340
1,492
@Bratishka, тут были:
 

wrerwer

✩✩✩✩✩✩✩
15 Сен 2020
9
1
@wrerwer, Я пока пользуюсь просто CD42
Там всё есть: Вход, 5V, Вход для аккумуляторов и выход на нагрузку)

ps На сколько я понял: CD42 это IP5306 Но это не точно)
IP5306 вот оно решение !)
Модуль на основе микросхемы IP5306 предназначен для:
  • контроля заряда лития с индикацией уровня заряда (4 уровня)
  • бесперебойного питания нагрузки напряжением 5В и током до 2А, автоматическое включение повышающего модуля от Литий-Ионного источника
  • питание нагрузки 5В от литиевого элемента (повышающий модуль) и индикацией процента разряда батареи и защитой от переразряда
Спасибо
 
  • Лойс +1
Реакции: Belokota

Ckoe'Tael

★✩✩✩✩✩✩
13 Фев 2020
7
23
Добрый день, форумчане! Столкнулся с проблемой, при подаче питания на матрицу загорается в полсилы один диод синим цветом, при работе лампы если диод участвует в отображении то он отрабатывает, но цвет немного некорректно отображается, т.к. синяя часть постоянно горит, ставил конденсатор, пробовал другой бп, изменений нет. Причем изначально такого не было, матрица работала абсолютно нормально, артефактов не было. Подключал как и с esp так и просто подавал питание на контакты матрицы, форум прошерстил, но, видимо, не смог найти ответ((
 

kostyamat

★★★★★★✩
29 Окт 2019
1,098
632
@Ckoe'Tael, ну, ответ наверное очевиден - ему плохо. Пока не сдох окончательно покупайте ему замену, и ищите кто вам его перепаяет (имхо, это не тривиальная задача в домашних условиях, без подогрева и фена). Или поменяйте его местами с последним в цепочке на матрице (тот с которого dout выходит), если там он сдохнет, то матрица продолжит работать, но если он сдохнет на своем месте - погаснет остаток матрицы за ним.
 

Ckoe'Tael

★✩✩✩✩✩✩
13 Фев 2020
7
23
Пробуй пин ленты изменитьч
пин в плане на есп или на матрице?

@Ckoe'Tael, ну, ответ наверное очевиден - ему плохо. Пока не сдох окончательно покупайте ему замену, и ищите кто вам его перепаяет (имхо, это не тривиальная задача в домашних условиях, без подогрева и фена). Или поменяйте его местами с последним в цепочке на матрице (тот с которого dout выходит), если там он сдохнет, то матрица продолжит работать, но если он сдохнет на своем месте - погаснет остаток матрицы за ним.
Спасибо, я рассматривал этот вариант, но меня смутило что он постоянно горит когда остальная матрица не горит, как будто дело не в диоде а в контроллере, или там он внутри диода? Ну если вариант с пином не поможет буду перепаивать(
 

Сотнег

★★★★★★★
15 Янв 2020
4,340
1,492
Новый
Эффект Змейки

Эффект устанавливается с теми, у которых бегунок Скорость не регулирует задержку между кадрами.
На видео сперва показана некая модификация похожего эффекта от другого автора,
а ближе к середине то, что я сделал по мотивам оригинала.

C-like:
// ------------- Змейки --------------
// (c) SottNick

//#define bballsMaxNUM    (WIDTH * 2)          // максимальное количество червяков
//uint8_t bballsNUM;                                   // выбранное количество червяков
//long  bballsTLast[bballsMaxNUM] ;  // тут будет траектория тела червяка
//uint8_t или float butterflysPosX[bballsMaxNUM]; // тут будет позиция головы
//uint8_t или float butterflysPosY[bballsMaxNUM]; // тут будет позиция головы
//float butterflysSpeedX[bballsMaxNUM]; // тут будет скорость червяка
//float butterflysSpeedY[bballsMaxNUM]; // тут будет дробная часть позиции головы
//float butterflysTurn[bballsMaxNUM]; не пригодилось пока что
//uint8_t butterflysColor[bballsMaxNUM]; // тут будет начальный цвет червяка
//uint8_t butterflysBrightness[bballsMaxNUM]; тут будет направление червяка

#define SNAKES_LENGTH (8U) // длина червяка от 2 до 15 (+ 1 пиксель голова), ограничена размером переменной для хранения трактории тела червяка

void snakesRoutine(){
  if (loadingFlag)
  {
    loadingFlag = false;
    bballsNUM = (modes[currentMode].Scale - 1U) / 99.0 * (bballsMaxNUM - 1U) + 1U;
    if (bballsNUM > bballsMaxNUM) bballsNUM = bballsMaxNUM;
    for (uint8_t i = 0; i < bballsNUM; i++){
      bballsTLast[i] = 0;
      butterflysPosX[i] = random8(WIDTH);
      butterflysPosY[i] = random8(HEIGHT);
      butterflysSpeedX[i] = (255. + random8()) / 255.;
      butterflysSpeedY[i] = 0;
      //butterflysTurn[i] = 0;
      butterflysColor[i] = random8();
      butterflysBrightness[i] = random8(4);//     B00           направление головы змейки
                                           // B10     B11
                                           //     B01
    }

  }
  //hue++;
  //dimAll(220);
  FastLED.clear();
  float speedfactor = (float)modes[currentMode].Speed / 2048.0f + 0.001f;

  int8_t dx, dy;
  for (uint8_t i = 0; i < bballsNUM; i++){
butterflysSpeedY[i] += butterflysSpeedX[i] * speedfactor;
if (butterflysSpeedY[i] >= 1)
{
butterflysSpeedY[i] = butterflysSpeedY[i] - (int)butterflysSpeedY[i];
    if (random8(10U) == 0U)
      if (random8(2U)){ // <- поворот налево
        bballsTLast[i] = (bballsTLast[i] << 2) | B01; // младший бит = поворот
        switch (butterflysBrightness[i]) {
          case B10:
            butterflysBrightness[i] = B01;
            if (butterflysPosY[i] == 0U)
              butterflysPosY[i] = HEIGHT - 1U;
            else
              butterflysPosY[i]--;
            break;
          case B11:
            butterflysBrightness[i] = B00;
            if (butterflysPosY[i] >= HEIGHT - 1U)
              butterflysPosY[i] = 0U;
            else
              butterflysPosY[i]++;
            break;
          case B00:
            butterflysBrightness[i] = B10;
            if (butterflysPosX[i] == 0U)
              butterflysPosX[i] = WIDTH - 1U;
            else
              butterflysPosX[i]--;
            break;
          case B01:
            butterflysBrightness[i] = B11;
            if (butterflysPosX[i] >= WIDTH - 1U)
              butterflysPosX[i] = 0U;
            else
              butterflysPosX[i]++;
            break;
        }
      }
      else{ // -> поворот направо
        bballsTLast[i] = (bballsTLast[i] << 2) | B11; // младший бит = поворот, старший = направо
        switch (butterflysBrightness[i]) {
          case B11:
            butterflysBrightness[i] = B01;
            if (butterflysPosY[i] == 0U)
              butterflysPosY[i] = HEIGHT - 1U;
            else
              butterflysPosY[i]--;
            break;
          case B10:
            butterflysBrightness[i] = B00;
            if (butterflysPosY[i] >= HEIGHT - 1U)
              butterflysPosY[i] = 0U;
            else
              butterflysPosY[i]++;
            break;
          case B01:
            butterflysBrightness[i] = B10;
            if (butterflysPosX[i] == 0U)
              butterflysPosX[i] = WIDTH - 1U;
            else
              butterflysPosX[i]--;
            break;
          case B00:
            butterflysBrightness[i] = B11;
            if (butterflysPosX[i] >= WIDTH - 1U)
              butterflysPosX[i] = 0U;
            else
              butterflysPosX[i]++;
            break;
        }
      }
    else { // двигаем без поворота
        bballsTLast[i] = (bballsTLast[i] << 2);
        switch (butterflysBrightness[i]) {
          case B01:
            if (butterflysPosY[i] == 0U)
              butterflysPosY[i] = HEIGHT - 1U;
            else
              butterflysPosY[i]--;
            break;
          case B00:
            if (butterflysPosY[i] >= HEIGHT - 1U)
              butterflysPosY[i] = 0U;
            else
              butterflysPosY[i]++;
            break;
          case B10:
            if (butterflysPosX[i] == 0U)
              butterflysPosX[i] = WIDTH - 1U;
            else
              butterflysPosX[i]--;
            break;
          case B11:
            if (butterflysPosX[i] >= WIDTH - 1U)
              butterflysPosX[i] = 0U;
            else
              butterflysPosX[i]++;
            break;
        }

    }
}
        switch (butterflysBrightness[i]) {
          case B01:
            dy = 1;
            dx = 0;
            break;
          case B00:
            dy = -1;
            dx = 0;
            break;
          case B10:
            dy = 0;
            dx = 1;
            break;
          case B11:
            dy = 0;
            dx = -1;
            break;
        }

    long temp = bballsTLast[i];
    uint8_t x = butterflysPosX[i];
    uint8_t y = butterflysPosY[i];
    //CHSV color = CHSV(butterflysColor[i], 255U, 255U);
    //drawPixelXY(x, y, color);
    drawPixelXYF(x, y, CHSV(butterflysColor[i], 255U, butterflysSpeedY[i] * 255));
    for (uint8_t m = 0; m < SNAKES_LENGTH; m++){ // 16 бит распаковываем, 14 ещё остаётся без дела в запасе, 2 на хвостик
      x = (WIDTH + x + dx) % WIDTH;
      y = (HEIGHT + y + dy) % HEIGHT;
      drawPixelXYF(x, y, CHSV(butterflysColor[i] + m*4U, 255U, 255U));

      if (temp & B01){ // младший бит = поворот, старший = направо
        temp = temp >> 1;
        if (temp & B01){ // старший бит = направо
          if (dx == 0){
            dx = 0 - dy;
            dy = 0;
          }
          else{
            dy = dx;
            dx = 0;
          }
        }
        else{ // иначе налево
          if (dx == 0){
            dx = dy;
            dy = 0;
          }
          else{
            dy = 0 - dx;
            dx = 0;
          }
        }
        temp = temp >> 1;
      }
      else { // если без поворота
        temp = temp >> 2;
      }
    }
    x = (WIDTH + x + dx) % WIDTH;
    y = (HEIGHT + y + dy) % HEIGHT;
    drawPixelXYF(x, y, CHSV(butterflysColor[i] + SNAKES_LENGTH*4U, 255U, (1 - butterflysSpeedY[i]) * 255)); // хвостик
  }
}

@kostyamat, я сперва адаптировал то, что у вас в dev было на сегодня. Но, видимо, рано взялся...
Не смог с наскока понять, чего они бледные такие, и зачем периодически исчезают некрасиво.
Плюс не охота было разбираться, как массивы с отдельными классами для змеек из Авроры
по-экономнее вставить в гуннеровскую прошивку.
Поэтому набросал простенькую реализацию на имеющихся массивах данных.
 
Изменено:

Шахтёр

✩✩✩✩✩✩✩
27 Сен 2020
1
0
Здравствуйте , товарисЧи.
У меня проблемка: ноут не видит плату (LOLIN(WEMOS) D1 R2 & mini ).
Она не сгоревшая , при подключении платы к электричеству (через кабель к ноуту или БП) моргнёт светодиод и появляется точка доступа.
То есть , когда я подключаю кабель с платой к ноуту , ноут даже не издаёт характерного звука (виндовс) .
Дело было так: подключил плату к ноуту , всё что надо сделать ,сделал, и нажал на кнопку загрузки .
Выдало ошибку , на форуме винили версию Arduino IDE .
Нуу... я решил, на последок, ещё раз загрузить скетч (авось выйдет:)) . Нажал кнопку загрузить, в этот момент ноут издал звуки подключения и отключения Юсб порта несколько раз, и компилятор выругался . Смотрю , а он плату вообще не видит(а по началу видел и откликался на неё). Подключил к другим портам , тоже самое .
взял Ардуино уно, подключил к ноуту , звук есть и всё работает (пустую прошивку тоже загрузил).
Arduino IDE удалил и заново скачал (загрузил самую свежую версию 1.8.13(на сегодня))..............): не работает
ШОБЫ У ВАС УВСЕХ здоровье было деньги были И САМОЕ ГЛАВНОЕ
 

kDn

★★★★★✩✩
18 Ноя 2019
1,103
437
Здравствуйте , товарисЧи.
У меня проблемка: ноут не видит плату (LOLIN(WEMOS) D1 R2 & mini ).
Судя по всему у вас лента запитана через контроллер, а не отдельно, либо же не был включен блок питания лампы. Соответственно после прошивки и включения ленты вы выжгли или "подпалили" защитный диод, он бывает не умирает полностью, а имеет некоторое сопротивление. Так что проверяйте его в первую очередь, меняйте на другой, либо на перемычку. В случае если замените на перемычку не переделав схему питания лампы (либо подключите к компьютеру без дополнительно включенного БП), то выгорит уже не диод а порт в ноутбуке. Защитный диод как раз защищает порт, чтобы те кто подключают неправильно, либо забывают обеспечить доп. питание - не выжигали его.
 

WoolF

✩✩✩✩✩✩✩
2 Окт 2020
4
0
Подскажите, пожалуйста. В видео про большую лампу (
) Алекс упоминает, что "эффект огня выглядит не так круто из-за того, что он рассчитан на меньшее рассеивание". Вопрос: что нужно сделать, чтобы и эффект огня хорошо выглядел? Если приобрести, например, LED с плотностью не 30, а 60, то это поможет? Или это программно как-то надо решать, если так, то как?
 

Константин 271

★★★✩✩✩✩
12 Июл 2020
950
105
что нужно сделать, чтобы и эффект огня хорошо выглядел? Если приобрести, например, LED с плотностью не 30, а 60, то это поможет? Или это программно как-то надо решать, если так, то как?
Совершенно очевидно, что нужен абажур меньшего диаметра, чтобы от LED до него было 1-2 см.
 

Константин 271

★★★✩✩✩✩
12 Июл 2020
950
105
А увеличение размера трубы не подойдёт?
Можно.

Только и ленты уйдёт ещё больше, и размерность иная будет. Бюджет и без того жирный - станет ещё жирнее. Влезет ли это в возможности microLED - тоже вопрос. Я бы тогда просто уменьшил высоту. Ну или экспериментировать.
 

WoolF

✩✩✩✩✩✩✩
2 Окт 2020
4
0
Ну вот, а говорили "совершенно очевидно". Значит всё таки есть варианты. :)

Только и ленты уйдёт ещё больше, и размерность иная будет.
Ну, это не проблема, в настройках можно соответствующие размеры задать.

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

Влезет ли это в возможности microLED - тоже вопрос.
А вот это хороший вопрос, не хотелось бы, чтобы закупившись оказалось бы, что модуль "не тянет". Никто не проверял его в работе с большим количеством светодиодов?

Я бы тогда просто уменьшил высоту.
В моём случае это не особо вариант. Я наоборот думаю, как бы светильник слишком маленький не получился за счёт того, что ножка будет убрана (у меня вариант на основе напольного светильника из IKEA). Всё таки хочется полноценный торшер, а не уменьшенный вариант и тем более не настольную лампу. Подумываем в перспективе может и вовсе два поставить, по обе стороны дивана. Я вообще сначала думал делать на основе торшера "видья" ( https://www.ikea.com/ru/ru/p/vidya-svetilnik-napolnyy-belyy-80360550/ ) - в этом случае бюджет бы ещё больше получился. Но меня смущали эти горизонтальные полосы и, вроде как, тканевый плафон.
 

Сотнег

★★★★★★★
15 Янв 2020
4,340
1,492
Подскажите, пожалуйста. В видео про большую лампу (
) Алекс упоминает, что "эффект огня выглядит не так круто из-за того, что он рассчитан на меньшее рассеивание". Вопрос: что нужно сделать, чтобы и эффект огня хорошо выглядел? Если приобрести, например, LED с плотностью не 30, а 60, то это поможет? Или это программно как-то надо решать, если так, то как?
По-моему, здесь не было пока что удачного решения для "эпичной лампа".
Вам придётся быть тем человеком, который подберёт идеальные соотношения расстояний
между пикселями
между лентой и плафоном
между лентой и дополнительным рассеивателем (возможно)
между плафоном и дополнительным рассеивателем.
 

zimarsky

✩✩✩✩✩✩✩
27 Сен 2020
5
1
Нигде (включая видео) не могу найти как правильно матрицу крепить на трубе. Первый раз собрал, получил эффект "огонь" вертикально. Перебрал все "точки подключения и направления" по таблице, добился огня снизу. Но вижу что цифры отображаются зеркально (правда они всё равно сильно размыты и почти не читаются). На видео, при включении видно было что стартовый диод загорается где-то внизу, у меня вверху...
Готов разобрать и переделать, но не понимаю как матрицу позиционировать внутри лампы... ))) Подскажите пожалуйста
 

Сотнег

★★★★★★★
15 Янв 2020
4,340
1,492
@zimarsky, можно как угодно.
В прошивке настройки есть для угла поворота.
Вот отзеркаливание - это странно. У вас какая-то матрица странная, или вы уже поковырялись в настройках подключения в прошивке?
 

zimarsky

✩✩✩✩✩✩✩
27 Сен 2020
5
1
@zimarsky, можно как угодно.
В прошивке настройки есть для угла поворота.
Вот отзеркаливание - это странно. У вас какая-то матрица странная, или вы уже поковырялись в настройках подключения в прошивке?
Я только исправлял вертикаль/горизонталь меняя цифры "connection angle" и "strip direction"
А матрицу покупал в комплекте с остальными деталями по ссылке из проекта.
Сейчас стою перед решением все разобрать и сначала попробовать скетчи из FastLED
 

Сотнег

★★★★★★★
15 Янв 2020
4,340
1,492

zimarsky

✩✩✩✩✩✩✩
27 Сен 2020
5
1
@Сотнег, Ух какой я невнимательный... У меня эти три точки подключения горизонтально расположены, а тут вертикально! В этом дело? А точка с подключением получается самая нижняя?
 

kDn

★★★★★✩✩
18 Ноя 2019
1,103
437
@zimarsky, можете вместо перепаивания использовать наш вариант прошивки, которая однозначно работает со всеми видами подключения матриц и поддерживает отзеркаливания обоих координат. :)
 
  • Лойс +1
Реакции: stepko

zimarsky

✩✩✩✩✩✩✩
27 Сен 2020
5
1
@kDn, Мне неловко, но не понимаю "наш вариант". Сейчас я залил от Гувер и пробовал менять углы переменными.
 

vlad_

✩✩✩✩✩✩✩
3 Окт 2020
1
0
при загрузке прошивки, пишет (exit status 1 timer2Minim.h: No such file or directory) помогите кто знает