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

ЗДЕСЬ ОБСУЖДАЕМ ТОЛЬКО ДАННУЮ ПРОШИВКУ
ВСЕ ЧТО НЕ ПО СИЯ ТЕМЕ И ПРОШИВКЕ, ВСЕ СНОСИТСЯ НА@@@!

Очень просим не делать репост "ЦИТИРОВАНИЕ" сообщений! Делать только в КРАЙНЕЙ необходимости, удаляя лишний текст (у нас не ЧАТ)!
Иначе опять будет 160 страниц и 0 пользы ....

Для ответа КОНКРЕТНОМУ пользователю, достаточно нажать " ОТВЕТ"

При описании проблемы обязательно, как можно подробнее, описывайте ход своих действий до ее возникновения. Телепатов (как я думаю) среди участников нет. Потом 20 постов будет только для того, чтобы Вас понять.
Если Вы считаете ваше сообщение важным и его нужно поднять в шапку, пишите мне в личку с пометкой "Сообщение в шапку"


ПО ВОПРОСАМ РАБОТЫ ПРИЛОЖЕНИЯ ОТ KOTEYKA ИДЕМ В ЭТУ ТЕМУ

Голосовое управление лампой Гайвера, через Яндекс Алису (прошивка Gunner47).

Яндекс диск Файл ПДФ. Актуально на 27.01.2020г
наш сервер НЕ ОБНОВЛЯЕТСЯ, от 27.01.2020г
Прошивка gunner47 v.2 "86 эффектов в 1" или уже больше - разработку ведет @Сотнег
Прошивка gunner47 v.2.X_web : веб-интерфейс (без необходимости перепрошивки) - разработку ведет @alvikskor
Прошивка от Shaitan с поддержкой mp3 и пульта (тут не обсуждается. Обсуждается в теме прошивки)
Прошивка FireLamp with Remote Control - разработку ведет @SlingMaster

Для тех у кого умный дом Home Assistant есть отличный компонент

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

Комментарии

mechanic

★★★★✩✩✩
Команда форума
31 Июл 2018
403
202
ЗДЕСЬ ОБСУЖДАЕМ ТОЛЬКО ДАННУЮ ПРОШИВКУ
ВСЕ ЧТО НЕ ПО СИЯ ТЕМЕ И ПРОШИВКЕ, ВСЕ СНОСИТСЯ НА@@@!

Очень просим не делать репост "ЦИТИРОВАНИЕ" сообщений! Делать только в КРАЙНЕЙ необходимости, удаляя лишний текст (у нас не ЧАТ)!
Иначе опять будет 160 страниц и 0 пользы ....

Для ответа КОНКРЕТНОМУ пользователю, достаточно нажать " ОТВЕТ"

При описании проблемы обязательно, как можно подробнее, описывайте ход своих действий до ее возникновения. Телепатов (как я думаю) среди участников нет. Потом 20 постов будет только для того, чтобы Вас понять.
Если Вы считаете ваше сообщение важным и его нужно поднять в шапку, пишите мне в личку с пометкой "Сообщение в шапку"


ПО ВОПРОСАМ РАБОТЫ ПРИЛОЖЕНИЯ ОТ KOTEYKA ИДЕМ В ЭТУ ТЕМУ

Голосовое управление лампой Гайвера, через Яндекс Алису (прошивка Gunner47).

Яндекс диск Файл ПДФ. Актуально на 27.01.2020г
наш сервер НЕ ОБНОВЛЯЕТСЯ, от 27.01.2020г
Прошивка gunner47 v.2 "86 эффектов в 1" или уже больше - разработку ведет @Сотнег
Прошивка gunner47 v.2.X_web : веб-интерфейс (без необходимости перепрошивки) - разработку ведет @alvikskor
Прошивка от Shaitan с поддержкой mp3 и пульта (тут не обсуждается. Обсуждается в теме прошивки)
Прошивка FireLamp with Remote Control - разработку ведет @SlingMaster

Для тех у кого умный дом Home Assistant есть отличный компонент

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

ldir

★✩✩✩✩✩✩
1 Мар 2020
11
13
@ldir, это ваш код начальный? В нашей прошивке вставлю все необходимые копирайты, пожалуйста предоставьте строку которую считаете верной. Поскольку у нас сейчас стоит:
C++:
// ----------- Эфеект "ДНК"
// База https://pastebin.com/jwvC1sNF адаптация и доработки kostyamat
* Спасибо за работу.
Да, это я писал. На самом деле неожиданно наткнулся на свой код, когда смотрел ваш код. Хотел посмотреть на вашу реализацию субпикселя, оказалось, что вы адаптировали алгоритм satubarosu. Тогда неясно зачем оставили процедуру wu_pixel, она делает вроде тоже самое что у вас drawPixelXYF по идее.
так, кстати, если по ссылке перейти на пастебин, в шапке кода у меня все прописано )
 
  • Лойс +1
Реакции: kDn и stepko

kDn

★★★★★✩✩
18 Ноя 2019
1,103
437
Да, это я писал. На самом деле неожиданно наткнулся на свой код, когда смотрел ваш код. Хотел посмотреть на вашу реализацию субпикселя, оказалось, что вы адаптировали алгоритм satubarosu. Тогда неясно зачем оставили процедуру wu_pixel, она делает вроде тоже самое что у вас drawPixelXYF по идее.
так, кстати, если по ссылке перейти на пастебин, в шапке кода у меня все прописано )
Я мало занимаюсь эффектами как таковыми, в основном делаю ядро проекта. То что сабпиксели на целочисленной арифметике и на плавающей точке - одно и то же я знаю, даже говорил об этом. Но как переносили, так и прижилось. Возможно вам будет интересны также варианты drawPixelXYF_X и drawPixelXYF_Y, где практически то же самое, но не для 4 пикселей, а для двух.
* Копирайты сейчас перетяну.
 

kostyamat

★★★★★★✩
29 Окт 2019
1,097
630
Тогда неясно зачем оставили процедуру wu_pixel, она делает вроде тоже самое что у вас drawPixelXYF по идее.
Для упрощения переноса эффектов. Многие на wu_pixel.

* Копирайты сейчас перетяну.
Новая "Огненная лампа", видимо, тоже начальный код @ldir можете и туда вписать.
 
  • Лойс +1
Реакции: kDn и ldir

Сотнег

★★★★★★★
15 Янв 2020
4,160
1,452
порадовало меня как вы здорово мой код зашайтанили, весь смысл ДНК был в том, что спирали не просто рисуются, а в местах пересечения проходят одна над другой, получалось похоже на трехмерную ДНК. Это достигалось играми с яркостной компонентой HSV.
А вы просто забили туда 255 чтобы работало ))):

Посмотрите как эта спираль должна выглядеть
И авторство нормально поставьте в скетче пожалуйста
У нас матрица на трубу намотана и размытие у пикселей,
поэтому, к сожалению, вся ваша красота с трёхмерностью терялась.
Я убрал.
Оставил для вытянутых горизонтальных матриц (для @I_One).

И авторство нормально поставьте в скетче пожалуйста
Ок.

Возможно вам будет интересны также варианты drawPixelXYF_X и drawPixelXYF_Y, где практически то же самое, но не для 4 пикселей, а для двух.
Он реально думает, что в них есть смысл.
 
  • Лойс +1
Реакции: I_One и ldir

ldir

★✩✩✩✩✩✩
1 Мар 2020
11
13
У нас матрица на трубу намотана и размытие у пикселей,
поэтому, к сожалению, вся ваша красота с трёхмерностью терялась.
Я убрал.
Оставил для вытянутых горизонтальных матриц (для @I_One).

Ок.

Он реально думает, что в них есть смысл.
Да, этот эффект не для матовых экранов, согласен
 

kDn

★★★★★✩✩
18 Ноя 2019
1,103
437
а у вас тут интересно, приятно познакомиться!
Привет, будет желание что-то делать под наш вариант - присоединяйтесь, только лучше писать в нашей теме :), поскольку под обсуждаемую в данной теме прошивку я разработки не веду, а наша прошивка под PIO.
 

kostyamat

★★★★★★✩
29 Окт 2019
1,097
630
@ldir, и нам приятно. :) Я из-за вашего огня даже в редит зарегался, хотел пару вопросов задать, потом сам справился с переносом. Хотя вопросы остались. Но это если вы никуда не уходите, то походу задам.

Пс. Я ваш огонь на вертикальный субпиксель перевел (что и вызывает вопросы кстати) и вылет искр добавил. Да и работает он у меня не на градиентных палитрах, и вполне не плохо смотрится.
 

ldir

★✩✩✩✩✩✩
1 Мар 2020
11
13
@ldir, и нам приятно. :) Я из-за вашего огня даже в редит зарегался, хотел пару вопросов задать, потом сам справился с переносом. Хотя вопросы остались. Но это если вы никуда не уходите, то походу задам.

Пс. Я ваш огонь на вертикальный субпиксель перевел (что и вызывает вопросы кстати) и вылет искр добавил. Да и работает он у меня не на градиентных палитрах, и вполне не плохо смотрится.
изначально цель была сделать самый короткий алгоритм огня.Оказалось что он довольно красивый получился.
а где посмотреть как вы его на субпиксель перевели, очень интересно, думал что не получится это сделать.
 

kostyamat

★★★★★★✩
29 Окт 2019
1,097
630
@ldir, https://github.com/DmytroKorniienko/FireLamp_JeeUI/blob/dev/src/effects.cpp ищите по тегу "Огненная лампа".
Честно говоря, результат субпикселя мне не до конца нравится. На самых низких скоростях (где он самый красивый, ИМХО), сильно проседает ФПС. Потому как субпиксель там несколько псевдо, если честно.
 
Изменено:

ldir

★✩✩✩✩✩✩
1 Мар 2020
11
13
@ldir, https://github.com/DmytroKorniienko/FireLamp_JeeUI/blob/dev/src/effects.cpp ищите по тегу "Огненная лампа".
Честно говоря, результат субпикселя мне не до конца нравится. На самых низких скоростях (где он самый красивый, ИМХО), сильно проседает ФПС. Потому как субпиксель там несколько псевдо, если честно.
Посмотрел код. Нашёл ещё свои эффекты )))

Посмотрел код. Нашёл ещё свои эффекты ))) цветение и дождь за окном, которые с пометкой soulimage. Дождь за окном конечно название интересное. В оригинале это был Digital rain. https://www.reddit.com/r/FastLED/comments/igeenz
 

kostyamat

★★★★★★✩
29 Окт 2019
1,097
630
@ldir, ну дык не удивительно. Я их дергал откуда только удавалось. А так как в галерее соулмейт куча копий у разных товарищей - что и чье не совсем ясно. Вы список таких составьте, все копирайты добавим.
 

ldir

★✩✩✩✩✩✩
1 Мар 2020
11
13
@ldir, ну дык не удивительно. Я их дергал откуда только удавалось. А так как в галерее соулмейт куча копий у разных товарищей - что и чье не совсем ясно. Вы список таких составьте, все копирайты добавим.
Ну мои получается 4 штуки, днк, огонь, дождь и цветение
 
  • Лойс +1
Реакции: kostyamat

kostyamat

★★★★★★✩
29 Окт 2019
1,097
630
@ldir, могли бы вы дать ссылки на первоисточник дождя и цветения, пожалуйста? Это полезно, если что-то сломается кем то, и можно будет глянуть оригинал, чтобы понять что не так.

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

ППС. Первоисточник "Дождя" нашел сам.
 
Изменено:
  • Лойс +1
Реакции: stepko

ldir

★✩✩✩✩✩✩
1 Мар 2020
11
13
@ldir, могли бы вы дать ссылки на первоисточник дождя и цветения, пожалуйста? Это полезно, если что-то сломается кем то, и можно будет глянуть оригинал, чтобы понять что не так.

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

ППС. Первоисточник "Дождя" нашел сам.
А есть ваша модификация, где они ещё стекали? Интересно посмотреть
 

kostyamat

★★★★★★✩
29 Окт 2019
1,097
630
@ldir, Если я не ошибаюсь, эта версия (но не уверен)
C++:
//------------ Эффект "За окном идет дождь"
// (c) ldir (Soulmate)
class EffectCRain : public EffectCalc
{
private:
    byte rain[NUM_LEDS];

    byte counter = 1;
    int8_t _speed = 1;
    float hue;
    bool storm = false;
    bool clouds = false;
    void setDynCtrl(UIControl*_val) override;

    void changepattern()
    {
        int rand1 = random16(NUM_LEDS);
        int rand2 = random16(NUM_LEDS);
        if ((rain[rand1] == 1) && (rain[rand2] == 0))
        { //simple get two random dot 1 and 0 and swap it, this will not change total number of dots
            rain[rand1] = 0;
            rain[rand2] = 1;
        }
    }

    void raininit(byte rain[NUM_LEDS])
    { //init array of dots. run once
        for (int i = 0; i < NUM_LEDS; i++)
        {
            if (random8(18) == 0)
            {
                rain[i] = 1;
            }
            else
            {
                rain[i] = 0;
            } //random8(20) number of dots. decrease for more dots
        }
    }

    void updaterain(CRGB *leds, float speedFactor);


    bool crainRoutine(CRGB *leds, EffectWorker *param);
    //void setDynCtrl(UIControl*_val) override;

public:
    bool run(CRGB *ledarr, EffectWorker *opt = nullptr) override;
};



//------------ Эффект "За окном идет дождь..."
// (c) ldir (Soulmate) переделан kostyamat
void EffectCRain::setDynCtrl(UIControl*_val)
{
  EffectCalc::setDynCtrl(_val); // сначала дергаем базовый, чтобы была обработка палитр/микрофона (если такая обработка точно не нужна, то можно не вызывать базовый метод)
  if(_val->getId()==3) // Тучка
    clouds = _val->getVal() == "true";

  if(_val->getId()==4) // Молния
    storm = _val->getVal() == "true";
}
bool EffectCRain::run(CRGB *ledarr, EffectWorker *opt ) {
  return crainRoutine(*&ledarr, &*opt);
}

void EffectCRain::updaterain(CRGB *leds, float speedFactor)
{
    byte sat = beatsin8(30, 150, 255);
  for (byte i = 0; i < WIDTH; i++)
  {
    for (float j = 0.; j < ((float)HEIGHT - (clouds ? 4.5 : 1.)); j += speedFactor)
    {
      //byte layer = rain[XY(i, (((uint8_t)j + _speed + random8(2)) % HEIGHT))]; //fake scroll based on shift coordinate
      byte layer = rain[myLamp.getPixelNumber(i, (((uint8_t)j + _speed + random8(2)) % HEIGHT))]; //fake scroll based on shift coordinate
      if (layer)
      {

        myLamp.drawPixelXYF_Y(i, j, CHSV(scale == 255 ? 144 : hue, scale == 255 ? 96 : sat, scale ==255 ? sat-50: 220));
        //leds[XY(i, j)] = CHSV(100, 255, BRIGHTNESS);
      } //random8(2) add glitchy effect
    }
  }
  _speed++;

  fadeToBlackBy(leds, NUM_LEDS, scale < 255 ? 35: 20);

}

bool EffectCRain::crainRoutine(CRGB *leds, EffectWorker *param) {
  float speedfactor = EffectMath::fmap((float)speed, 1., 255., 0.1, 0.9);
  EVERY_N_MILLISECONDS(5) {
    changepattern();
  }

  if (counter)
  {
    raininit(rain);
    counter = 0;
  } //init array of dots. run once
  if (millis() - lastrun > 40) {
    if (scale != 1)
      hue = scale;
    else
      hue += 0.5;
    updaterain(*&leds, speedfactor);
    lastrun = millis();
  }
  if (clouds)
    EffectMath::Clouds(2, storm ? EffectMath::Lightning(CHSV(30,90,255), 255U) : false);
  else if (storm) EffectMath::Lightning(CHSV(30,90,255), 255U);
  return true;
}

// Зависимости

bool EffectMath::Lightning(CRGB lightningColor, uint8_t chanse)
{
  //uint8_t lightning[WIDTH][HEIGHT];
  // ESP32 does not like static arrays  https://github.com/espressif/arduino-esp32/issues/2567
if (random16() < chanse)
  {     
    uint8_t *lightning = (uint8_t *)malloc(WIDTH * HEIGHT);                                                           // Odds of a lightning bolt
    lightning[scale8(random8(), WIDTH - 1) + (HEIGHT - 1) * WIDTH] = 255; // Random starting location
    for (uint8_t ly = HEIGHT - 1; ly > 1; ly--)
    {
      for (uint8_t lx = 1; lx < WIDTH - 1; lx++)
      {
        if (lightning[lx + ly * WIDTH] == 255)
        {
          lightning[lx + ly * WIDTH] = 0;
          uint8_t dir = random8(4);
          switch (dir)
          {
          case 0:
            EffectMath::setLed(myLamp.getPixelNumber(lx + 1, ly - 1), lightningColor);
            lightning[(lx + 1) + (ly - 1) * WIDTH] = 255; // move down and right
            break;
          case 1:
            EffectMath::setLed(myLamp.getPixelNumber(lx, ly - 1), CRGB(128, 128, 128)); // я без понятия, почему у верхней молнии один оттенок, а у остальных - другой
            lightning[lx + (ly - 1) * WIDTH] = 255;                                 // move down
            break;
          case 2:
            EffectMath::setLed(myLamp.getPixelNumber(lx - 1, ly - 1), CRGB(128, 128, 128));
            lightning[(lx - 1) + (ly - 1) * WIDTH] = 255; // move down and left
            break;
          case 3:
            EffectMath::setLed(myLamp.getPixelNumber(lx - 1, ly - 1), CRGB(128, 128, 128));
            lightning[(lx - 1) + (ly - 1) * WIDTH] = 255; // fork down and left
            EffectMath::setLed(myLamp.getPixelNumber(lx - 1, ly - 1), CRGB(128, 128, 128));
            lightning[(lx + 1) + (ly - 1) * WIDTH] = 255; // fork down and right
            break;
          }
        }
      }
    }

    free(lightning);
    return true;
  }
  return false;
}

void EffectMath::Clouds(uint8_t rhue, bool flash)
{
#ifdef SMARTMATRIX
  const CRGBPalette16 rainClouds_p(CRGB::Black, CRGB(75, 84, 84), CRGB(49, 75, 75), CRGB::Black);
#else
  const CRGBPalette16 rainClouds_p(CRGB::Black, CRGB(35, 44, 44), CRGB(29, 35, 35), CRGB::Black);
#endif
  //uint32_t random = millis();
  uint8_t dataSmoothing = 50; //196
  uint16_t noiseX = beatsin16(1, 10, 4000, 0, 150);
  uint16_t noiseY = beatsin16(1, 1000, 10000, 0, 50);
  uint16_t noiseZ = beatsin16(1, 10, 4000, 0, 100);
  uint16_t noiseScale = 50; // A value of 1 will be so zoomed in, you'll mostly see solid colors. A value of 4011 will be very zoomed out and shimmery
  const uint16_t cloudHeight = (HEIGHT * 0.2) + 1;

  // This is the array that we keep our computed noise values in
  //static uint8_t noise[WIDTH][cloudHeight];
  static uint8_t *noise = (uint8_t *)malloc(WIDTH * cloudHeight);
  for (uint8_t x = 0; x < WIDTH; x++)
  {
    int xoffset = noiseScale * x + rhue;

    for (int z = 0; z < cloudHeight; z++)
    {
      int yoffset = noiseScale * z - rhue;
      uint8_t noiseData = qsub8(inoise8(noiseX + xoffset, noiseY + yoffset, noiseZ), 16);
      noiseData = qadd8(noiseData, scale8(noiseData, 39));
      noise[x * cloudHeight + z] = scale8(noise[x * cloudHeight + z], dataSmoothing) + scale8(noiseData, 256 - dataSmoothing);
      if (flash)
        EffectMath::drawPixelXY(x, HEIGHT - z - 1, CHSV(random8(20,30), 250, random8(64, 100)));
      else
        nblend(myLamp.getUnsafeLedsArray()[myLamp.getPixelNumber(x, HEIGHT - z - 1)], ColorFromPalette(rainClouds_p, noise[x * cloudHeight + z]), (250 / cloudHeight));
    }
    noiseZ++;
  }
  if (flash) {
    for (uint16_t i = 0; i < WIDTH; i++)
    {
      for (byte z = 0; z < 10; z++)
        EffectMath::drawPixelXYF(i, EffectMath::randomf((float)HEIGHT - 4., (float)HEIGHT - 1.), CHSV(0, 250, random8(96, 120)));
    }
    EffectMath::blur2d(100);
  }
}

void EffectMath::drawPixelXYF_Y(uint16_t x, float y, const CRGB &color, uint8_t darklevel)
{
  if (x<0 || y<0 || x>((float)WIDTH) || y>((float)HEIGHT)) return;

  // extract the fractional parts and derive their inverses
  uint8_t yy = (y - (int)y) * 255, iy = 255 - yy;
  // calculate the intensities for each affected pixel
  uint8_t wu[2] = {iy, yy};
  // multiply the intensities by the colour, and saturating-add them to the pixels
  for (int8_t i = 1; i >= 0; i--) {
      int16_t yn = y + (i & 1);
      CRGB clr = EffectMath::getPixColorXY(x, yn);
      if(yn>0 && yn<(int)HEIGHT-1){
        clr.r = qadd8(clr.r, (color.r * wu[i]) >> 8);
        clr.g = qadd8(clr.g, (color.g * wu[i]) >> 8);
        clr.b = qadd8(clr.b, (color.b * wu[i]) >> 8);
      } else if(yn==0 || yn==(int)HEIGHT-1) {
        clr.r = qadd8(clr.r, (color.r * 85) >> 8);
        clr.g = qadd8(clr.g, (color.g * 85) >> 8);
        clr.b = qadd8(clr.b, (color.b * 85) >> 8);
      }
      EffectMath::drawPixelXY(x, yn, EffectMath::makeDarker(clr, darklevel));
  }
}
Я как правило стараюсь сохранить код до "улучшений" и "багфиксов", но не всегда успеваю, это сделать, и код тонет в сотнях коммитов на гитхаб. При желании найти можно, но это не очень быстро.

ПС. Скорость там статична. Размер капель зависит от переменной speed, а цвет от scale. Обе переменные могут принимать значения 0-255.
 
Изменено:

ldir

★✩✩✩✩✩✩
1 Мар 2020
11
13
@ldir, могли бы вы дать ссылки на первоисточник дождя и цветения, пожалуйста? Это полезно, если что-то сломается кем то, и можно будет глянуть оригинал, чтобы понять что не так.

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

ППС. Первоисточник "Дождя" нашел сам.
https://editor.soulmatelights.com/gallery/250 это цветение, https://editor.soulmatelights.com/gallery/256 дождь
 
  • Лойс +1
Реакции: kostyamat

kostyamat

★★★★★★✩
29 Окт 2019
1,097
630
@ldir, ну, в принципе так и стояло изначально. Только я первую букву перепутал I вместо l (i вместо L) ;)

Пс. Уже поправлено. Только дожду еще ссылку на соулмейт добавить нужно.
 

Константин 271

★★★✩✩✩✩
12 Июл 2020
948
103
три недели как на испанской таможне. Хрен его знает, что они там в нем изучают.
пока они изучают, я - уже изучаю эту плату у себя.

Громкость - да, хороша, вполне дружит с динамиком 3Вт и орёт нормально.

С флэшки - играет исправно. Причём, удивило: если ты подключен по блютусу, и кнопкой на плате перевёл в режим Music - играет sd-карта, то при начале проигрывания на телефоне плата сама перекидывает звук на блютус. Т.е. блютус вообще не выключается, и мониторится постоянно. Даже при проигрывании с флэшки. Просто прерывает музыку с флэхи и начинает играть блютус.

Единственное, что ещё не затестил - как она работает по выводам RX/TX. Если как и DF-player, то надо, чтобы сама переходила с блютуса на флэху при поступлении такой команды по RX/TX. Кнопки-то не будет в доступе, когда плата внутри лампы.

Как вы думаете, контакты rx/tx это то же самое, что и на дф-плеере?
 

kostyamat

★★★★★★✩
29 Окт 2019
1,097
630
Как вы думаете, контакты rx/tx это то же самое, что и на дф-плеере?
Да. Моя плата пока так и не доехала, треш какой-то в этой стране с почтой. Впрочем, так было всегда. Она даже на таможне не отбивается, вошла и... растворилась.
 

Константин 271

★★★✩✩✩✩
12 Июл 2020
948
103
вошла и... растворилась.
Если станет легче - меня тоже ждали разочарования :)

Не работает эта зараза с прошивкой Шайтана. То ли протокол другой, то ли вообще эти tx/rx не для того же самого, как у df-player.
Я даже перепаивал их местами, на всякий случай, мало ли. 2 варианта перебрал - не проходят на неё команды на проигрывание нужной папки. Вообще молчит.

Так что она - только для блютуса, или для проигрывания с флэшки, но управлять - кнопками.

В остальном всё хорошо. Звук в димамик отдаёт, в наушники тоже, звучание неплохое. Даже влазит в 50-ю трубу)

Кстати, а сама матрица не выступает в роли экрана? Когда wi fi плату прячешь в трубу из матрицы - это не плохо ли? Ведь сама матрица - спираль из проводников. Экран, как никак.
 

kostyamat

★★★★★★✩
29 Окт 2019
1,097
630
@Константин 271, я же неоднократно писал, что эта плата никак не совместима с dfplayer по командам, и нужно искать/писать свою библиотеку управления. Вы пропустили, или не поверили? При этом ее функционал аналогичен + сильно перекрывает таковой у dfplayer. Так что не удивительно, что она у вас в лампе не заработала.

Кстати, а сама матрица не выступает в роли экрана? Когда wi fi плату прячешь в трубу из матрицы - это не плохо ли? Ведь сама матрица - спираль из проводников. Экран, как никак.
Плохо. И да, матрица работает как экран и источник помех. Поэтому я лично никогда бы электронику лампы в трубу не пихал бы.
 

Константин 271

★★★✩✩✩✩
12 Июл 2020
948
103
я же неоднократно писал, что эта плата никак не совместима с dfplayer по командам, и нужно искать/писать свою библиотеку управления.
Жаль.
Пропустил, видимо.
Вот зачем они жизнь усложняли, спрашивается, сделали бы унифицировано. Новую библиотеку приклеивать к прошивке шайтана я не стану, конечно же...
При этом ее функционал аналогичен + сильно перекрывает таковой у dfplayer.
Ну, перекрывает только возможностью играть мелодии с мобилы по блютус. И наушниковый выход есть - можно на стерео-усилок вывести и сделать мощную блютус-колонку. Поэтому я и купил 2 платы)

матрица работает как экран и источник помех.
Странно, мысль мне эта пришла недавно, а сделано уже 3 лампы, везде детали в трубе (ну а куда их ещё пихать?), и хоть бы хны. Видимо, потому что матрицу поднимал на 3-4 см выше.