Разработка Linux-драйвера для TFT-дисплея с контроллером ILI9488 по SPI-интерфейсу (режим RGB565)
20 000 UAHРазработать модуль ядра Linux, обеспечивающий поддержку TFT-дисплея с контроллером ILI9488, работающего по SPI в режиме RGB565. Драйвер должен корректно функционировать на одноплатных компьютерах Raspberry Pi 3 Model B и Raspberry Pi Zero W 2 под управлением последней стабильной версии Linux (Raspberry Pi OS).
Приложения 1
-
Попробуйте драйвер от ILI9341 с адаптацией с помощью чат gpt мне помог.
-
Здравствуйте. Драйверами для линукса я занимался, последний раз как раз для эмбеддед, правда 6 лет назад. Как я понял вы уже эту тему просмотрели и потому вопросы:
- есть ли хоть что-то подобное и работающее под Linux в исходниках- есть ли техническая документация на данную модель
- есть ли у вас в системных файлах файл .config
-
Добрый день.
подобное конечно же у кого то есть.
Документация на что? На ILI9488? в инете полно.
Config.txt конечно же в малинке есть.
-
Вот полное ТЗ, видимо не все прочитали файл
Техническое задание
Разработка Linux-драйвера для TFT-дисплея с контроллером ILI9488 по SPI-интерфейсу (режим RGB565)
1. Цель
Разработать модуль ядра Linux, обеспечивающий поддержку TFT-дисплея с контроллером ILI9488, работающего по SPI в режиме RGB565. Драйвер должен корректно функционировать на одноплатных компьютерах Raspberry Pi 3 Model B и Raspberry Pi Zero W 2 под управлением последней стабильной версии Linux (Raspberry Pi OS).
2. Основные требования
2.1 Поддержка железа:
- Контроллер: ILI9488
- Интерфейс: SPI 4-проводной (MOSI, SCLK, CS, DC)
- Режим цвета: RGB565
- Поддерживаемые платы: Raspberry Pi 3 Model B, Raspberry Pi Zero W 2
2.2 Базовая реализация:
- Реализация на языке C, в виде модуля ядра Linux
- Основой может служить существующий драйвер tinydrm/ili9486.c с доработками под ILI9488
- Поддержка вывода через framebuffer /dev/fb1
- Использование DRM (Direct Rendering Manager) или tinydrm фреймворка
- Минимальные зависимости, без использования userspace-компонентов
3. Конфигурирование
Конфигурация подключения дисплея и параметров должна задаваться через config.txt с помощью Device Tree Overlay.
Пример строки подключения в /boot/config.txt:
dtoverlay=novotest-ili9488,speed=32000000,rotate=90,gpios=dc:18,reset:2
Поддерживаемые параметры:
- speed=<hz> — частота SPI (по умолчанию: 32000000)
- rotate=<0|90|180|270> — поворот изображения
- gpios=dc:<gpio>,reset:<gpio> — номера GPIO для управляющих сигналов
4. Структура поставки
Проект должен быть оформлен как репозиторий на GitHub, содержащий:
- Исходный код драйвера на языке C
- Makefile для сборки модуля под актуальное ядро Raspberry Pi
- .dts файл (Device Tree Overlay) для подключения дисплея через config.txt
- Инструкция по установке:
- Компиляция драйвера
- Установка и загрузка модуля
- Правильное подключение дисплея
- Настройка /boot/config.txt
- Проверенные конфигурации для Raspberry Pi 3B и Zero W 2
5. Дополнительно
- Желаательно использование DMA для ускорения передачи кадров в дисплей.
- Драйвер долден поддерживать только ILI9488. Поддержка иных контролеров должны быть полностью удалена
-
Можно упростить задачу
вот это
https://github.com/under-view/spi-tft-ILI9488?tab=readme-ov-file
компилируется, но не работает.
-
ILI9486 и ILI9488 по командам одинаковы и по разрешению одинаковые)
Что Вам мешает указать при загрузке в дереве устройств, экран как ILI9486 )
https://github.com/torvalds/linux/tree/master/drivers/gpu/drm/tiny -
далее Вы по ссылкам не идете ) уж если хотите что то свое))
https://lore.kernel.org/all/cover.1592055494.git.kamlesh.gurudasani@gmail.com/T/#m5cfbc15d11ee31224c2c707f12a451c39eb7a03fВопрос только зачем Вам єкран 3.5 дюйма для linux ?
что Вы планируете на него выводить?
есть много разных вариантов реализации работы с ним. -
На вопрос ЗАЧЕМ, ответ , затем что нужно 🙂
ВЫ сделать можете то что написано в ТЗ?
-
А гуглом я то же умею пользоваться 🙂
но все что нашлось, неработоспособно по разным причинам, от не компилируется, до просто не работает
-
На вопрос ЗАЧЕМ, ответ , затем что нужно 🙂
Хорошо, нужно - делайте.)
Хотите чтоб так просто заработало ))
Это распбери там столько подводных камней ) для серьезных проектов их вообще лучше не использовать )
Просто исходя из потребностей , возможны разные реализации. -
Актуальные фриланс-проекты в категории C и C++
Реверс-инжиниринг консольных утилит для опроса контроллеров SSD (Flash ID)1. Цель работы Выделение программного интерфейса (API) взаимодействия с контроллерами SSD/NVMe из предоставленного набора консольных утилит (Phison, Silicon Motion, Realtek, Maxiotek, Marvell, JMicron и др.). Результатом должно стать рабочий код на языке C/C++ или точная… C и C++, Десктопные приложения ∙ 4 дня 10 часов назад ∙ 5 ставок |
Разработка карты семян Minecraft Java / просмотрщика семян для сайтаРазработка карты семян Minecraft Java / Seed Viewer для сайтаОписание проекта Необходимо разработать браузерный инструмент Minecraft Java Seed Map / Seed Viewer, который будет работать на нашем сайте и позволит пользователю ввести семя Minecraft Java Edition и просмотреть… C и C++, HTML и CSS верстка ∙ 4 дня 17 часов назад ∙ 14 ставок |
Сравнительный анализ эффективности кастомного ПО (v2.2-field) и эталонного ПО (Meshtastic v2.x)
1000 UAH
Сравнительный анализ эффективности кастомного ПО (v2.2-field) и эталонного ПО (Meshtastic v2.x) на идентичной аппаратной платформе (ESP32 + SX1268, 2W) по критериям дальности, пропускной способности, стабильности линка и энергопотребления. Провести тесты с замерами с учетом… C и C++, C# ∙ 9 дней назад ∙ 2 ставки |
Консультация и аудит текущего проекта на Odoo 19 Community EditionИщем Odoo разработчика — соло-разработчика с опытом разработки на Odoo 19 Community Edition, в том числе с использованием Claude Code. Нам нужен специалист, который успешно реализовал проекты в Odoo и имеет практический опыт разработки с использованием Claude Code. Важно:… C и C++, Javascript и Typescript ∙ 12 дней 1 час назад ∙ 8 ставок |
Разработка ПО для Arduino (RF-модули 3–7.5 ГГц, автоматическое сканирование частот)Необходимо разработать систему на Arduino для автоматического поиска активного аналогового видеосигнала и автоматической настройки передатчика на обнаруженную частоту.Планируется использование трех отдельных приемно-передающих модулей: 3000–4200 МГц; 4900–6000 МГц; 6100–7500… C и C++, Встраиваемые системы и микроконтроллеры ∙ 13 дней 2 часа назад ∙ 5 ставок |