Я завел LVGL на esp32-s3 с дисплеем, у которого разрешение 800х480. Итог - 4 fps ((( Сейчас в поисках SoC, на котором LVGL заведется без тормозов и без linux
Вы можете попробовать экран с параллельным интерфейсом, у которого скорость обмена в 8-10 раз выше чем у SPI. SPI экраны на такое разрешение используют, если нужно получить более дешёвый вариант системы и требования к быстродействию системы не высоки
@@kirill-ivanychev экран с параллельным интерфейсом. Я разместил график на весь экран, который постоянно обновлялся, поэтому LVGL перерисовывал весь фреймбуфер целиком. Фреймбуфер лежал во внешней RAM и перекачивался в дисплей через DMA. Как вариант можно попробовать параллельную отрисовку и закачку фреймбуфера в дисплей. Для этого потребуется буфер-качели. Но что-то мне подсказывает, что оно того не стоит, производительность особо не вырастет. Я уже все пересмотрел на ютубе по lvgl, везде тормоза, и единственная baremetal железка, которая тянет эту библиотеку - это плата на allwinner v3s. На одном канале пользователь завел на ней freertos + lvgl. На этой же плате запускают linux + lvgl, но производительность графики при этом падает. Такие дела.
У всех stm есть параллельный интерфейс и экранов под него полно, скорость передачи ограничена экранами, но она там все равно большая, ибо параллельно 16 бит. У esp32s3 тоже есть параллельный интерфейс но в ее случае почти все ножки на него уйдут. Еще лучше в плане графики это RGB интерфейс по ножкам тоже самое теже же 16 бит, но изображение хранится в самом МК что дает больше возможностей в плане слоев, прозрачности но памяти оперативной нужно много …. А для spi хорошо только 320х240, уже 320х480 кадров 8 дает всего. Если кнопки еще куда не шло, а вот графики такое себе
@@gt540gfxя все это знаю и работал с разными дисплейными интерфейсами, вплоть до LVDS, MIPI, и eDP. SPI, I2С я даже никогда не рассматривал. На таких камнях, как ESP, при работе с большим разрешением и сложной графикой максимум что можно сделать - это перекачивать готовые картинки на экран. Так работают дисплеи DWIN, например. Ну а для того, чтобы отрисовывать графику программно с LVGL нужен мощный камень. Я закономерно получил 4 fps esp32-s3 на дисплее с разрешением 800х480. На stm32f103 я работал с монохромным дисплеем 160х128. Та же беда, главный тормоз - это заполнение фреймбуфера, отрисовка в нем шрифтов и графических примитивов. В итоге я пришел к выводу, что плавную красивую графику на дохлом железе не отрисуешь. Если нет GPU, всегда упираешься в герцы. Устройства, с плавным качественным GUI сделаны в основном на Android на соответствующем железе.
@@kirill-ivanychev вот взял себе ESP32S3 с 800*480 дисплеем, интерфейс парраллельный, пример от ESP запустил, дико лагает, на СТМ32 гораздо лучше работает, либо пример кривой, хотя там по сути только настройка интерфейса и описание 2х функция работы с экраном, либо есп для UI такое себе
Канал изобилует темой ESP32.
Пожалуй подпишусь)
Вэлкам :-)
Спасибо! надеюсь будет продолжение с более сложным примером и при помощи SquareLine Studio
вот это я понимаю контент, а не все эти ваши Ардуино))
Спасибо:-)
Мигание светодиодом становится все сложнее и сложнее, хорошо что всё ещё можно использовать аналоговый двухпозиционный выключатель. 😂
Неожиданно 😂. Тулчейн в виндус 🤣
Да, неожиданно:-)
советую GUI-Guider от NXP как редактор UI и генератор кода LVGL
Он может генерировать код для ESP32?
@@kirill-ivanychev без разницы какой камень, он генерирует несколько фалов с UI и калбеками действий. Копируешь в свой проект просто
Пожалуйста, шушуть добавьте задержку к звуковой дорожке, рассинхрон с картинкой ломает мозг, а тема-то крайне интересная, оторваться не могу!
Увы, уже низя
Здравствуйте! Скажите пожалуйста, можно ли управлять esp32 через яндекс колонку по протоколу zigbee
Да, можно.
Esp32-h2 и ESP32-C6 разработаны для этой цели.
@@kirill-ivanychev спасибо большое за ответ!
Сложно, но можно)
@@Anton-kr5vc да, можно:-)
Эл-ви-джи-эль проджектс.
@@IvanEng747 да
Я завел LVGL на esp32-s3 с дисплеем, у которого разрешение 800х480. Итог - 4 fps (((
Сейчас в поисках SoC, на котором LVGL заведется без тормозов и без linux
Вы можете попробовать экран с параллельным интерфейсом, у которого скорость обмена в 8-10 раз выше чем у SPI.
SPI экраны на такое разрешение используют, если нужно получить более дешёвый вариант системы и требования к быстродействию системы не высоки
@@kirill-ivanychev экран с параллельным интерфейсом.
Я разместил график на весь экран, который постоянно обновлялся, поэтому LVGL перерисовывал весь фреймбуфер целиком.
Фреймбуфер лежал во внешней RAM и перекачивался в дисплей через DMA.
Как вариант можно попробовать параллельную отрисовку и закачку фреймбуфера в дисплей. Для этого потребуется буфер-качели. Но что-то мне подсказывает, что оно того не стоит, производительность особо не вырастет.
Я уже все пересмотрел на ютубе по lvgl, везде тормоза, и единственная baremetal железка, которая тянет эту библиотеку - это плата на allwinner v3s. На одном канале пользователь завел на ней freertos + lvgl. На этой же плате запускают linux + lvgl, но производительность графики при этом падает.
Такие дела.
У всех stm есть параллельный интерфейс и экранов под него полно, скорость передачи ограничена экранами, но она там все равно большая, ибо параллельно 16 бит. У esp32s3 тоже есть параллельный интерфейс но в ее случае почти все ножки на него уйдут. Еще лучше в плане графики это RGB интерфейс по ножкам тоже самое теже же 16 бит, но изображение хранится в самом МК что дает больше возможностей в плане слоев, прозрачности но памяти оперативной нужно много …. А для spi хорошо только 320х240, уже 320х480 кадров 8 дает всего. Если кнопки еще куда не шло, а вот графики такое себе
@@gt540gfxя все это знаю и работал с разными дисплейными интерфейсами, вплоть до LVDS, MIPI, и eDP. SPI, I2С я даже никогда не рассматривал. На таких камнях, как ESP, при работе с большим разрешением и сложной графикой максимум что можно сделать - это перекачивать готовые картинки на экран. Так работают дисплеи DWIN, например. Ну а для того, чтобы отрисовывать графику программно с LVGL нужен мощный камень. Я закономерно получил 4 fps esp32-s3 на дисплее с разрешением 800х480. На stm32f103 я работал с монохромным дисплеем 160х128. Та же беда, главный тормоз - это заполнение фреймбуфера, отрисовка в нем шрифтов и графических примитивов.
В итоге я пришел к выводу, что плавную красивую графику на дохлом железе не отрисуешь. Если нет GPU, всегда упираешься в герцы. Устройства, с плавным качественным GUI сделаны в основном на Android на соответствующем железе.
@@kirill-ivanychev вот взял себе ESP32S3 с 800*480 дисплеем, интерфейс парраллельный, пример от ESP запустил, дико лагает, на СТМ32 гораздо лучше работает, либо пример кривой, хотя там по сути только настройка интерфейса и описание 2х функция работы с экраном, либо есп для UI такое себе
Это фронтенд?
Можно и так назвать