eGospodarka.pl
eGospodarka.pl poleca

eGospodarka.plGrupypl.misc.elektronika › Obsługa wyświetlacza SPI TFT (ILI9341) w nowym Raspbianie
Ilość wypowiedzi w tym wątku: 30

  • 1. Data: 2021-11-24 17:07:12
    Temat: Obsługa wyświetlacza SPI TFT (ILI9341) w nowym Raspbianie
    Od: Atlantis <m...@w...pl>

    Powróciłem ostatnio do starego projektu na Raspberry Pi Zero, który od
    dłuższego czasu leżał w szufladzie. Po odpaleniu i zalogowaniu przez SSH
    stwierdziłem, że zainstalowany jest na nim przestarzały Raspbian Jessie.
    Podniosłem go więc najpierw do Stretcha, a potem Bustera.

    Niestety okazało się, że ta druga aktualizacja zepsuła działanie małego
    wyświetlacza LCD na SPI, który był obsługiwany za pomocą modułu jądra
    fbtft_device, identyfikował się w systemie jako /dev/fb1 i można było na
    nim uruchomić programy systemu okienkowego X.

    Konfiguracja wyświetlacza była zawarta w pliku /etc/modprobe/fbtft.conf
    options fbtft_device custom name=fb_ili9341 rotate=90 speed=16000000
    fps=50 bgr=1 buswidth=8 cs=1 gpios=reset:23,dc:24,led:25

    Niestety, próba wywołanie sudo modprobe z tymi parametrami powoduje
    wywalenie komunikatu:

    modprobe: FATAL: Module fbtft_device not found in directory
    /lib/modules/5.10.63+

    Wygląda więc na to, że ten moduł jądra nie jest kompatybilny z kernelem
    5/4 i został usunięty.

    Ktoś może orientuje się w jaki sposób obecnie należy korzystać z tych
    wyświetlaczy? Google zwraca głównie nieaktualne opisu tej już
    nieaktualnej metody, a także tutoriale do obsługi wyświetlaczy
    bezpośrednio, z poziomu Pythona.

    Zależy mi szczególnie na tym, żeby w konfiguracji dało się wybrać te
    same piny, z których korzystałem oryginalne - urządzenie ma już
    zaprojektowaną płytkę i np. drugi pin CE interfejsu SPI jest używany
    przez inne urządzenie.


  • 2. Data: 2021-11-24 21:14:29
    Temat: Re: Obsługa wyświetlacza SPI TFT (ILI9341) w nowym Raspbianie
    Od: heby <h...@p...onet.pl>

    On 24/11/2021 17:07, Atlantis wrote:
    > modprobe: FATAL: Module fbtft_device not found in directory
    > /lib/modules/5.10.63+
    > Wygląda więc na to, że ten moduł jądra nie jest kompatybilny z kernelem
    > 5/4 i został usunięty.

    Albo go nie zainstalowałes, to nie jest raczej część kernela, tylko
    osobny dodatek.

    Instalacja od zera nie działa?

    https://learn.watterott.com/hats/rpi-display/fbtft-i
    nstall/

    Internety twierdzą, że można aktualizować system, ale trzeba zatrzymać
    aktualizacje kernela.

    https://github.com/notro/fbtft/issues/10

    PS. Nie mam go, wiec mogę pomóc tylko w ciemno.


  • 3. Data: 2021-11-25 00:16:00
    Temat: Re: Obsługa wyświetlacza SPI TFT (ILI9341) w nowym Raspbianie
    Od: Atlantis <m...@w...pl>

    On 24.11.2021 21:14, heby wrote:

    > Instalacja od zera nie działa?
    >
    > https://learn.watterott.com/hats/rpi-display/fbtft-i
    nstall/

    Po wykonaniu tego skryptu instalacyjnego w /dev pojawia się plik fb1. W
    /boot/config.txt pojawia się linia zaczynająca się od dtoverlay=rpi-display.

    Nie mam jednak obrazu na ekranie. Dodatkowo przestaje działać DAC, który
    pracuje na tym samym interfejsie SPI, ale korzysta z pinu CE0. Być może
    więc chodzi tylko o konflikty ze sterownikiem ekranu, który domyślnie
    chce operować tym samym pinem, podczas gdy u mnie jest to CE1.
    Nigdzie nie mogę doszukać się informacji o tym, jak ten pin zamienić w
    konfiguracji.

    Gdy zakomentuję dtoverlay=rpi-display, DAC zaczyna działać po resecie.


    > Internety twierdzą, że można aktualizować system, ale trzeba zatrzymać
    > aktualizacje kernela.
    >
    > https://github.com/notro/fbtft/issues/10

    Temat z 2013 roku, czy na długo zanim w ogóle powstało to urządzenie
    (okolica roku 2016). Więc raczej tutaj mowa o znacznie starszym kernelu
    i znacznie wcześniejszej aktualizacji, która zepsuła działanie
    wyświetlacz u mnie.


  • 4. Data: 2021-11-25 19:57:07
    Temat: Re: Obsługa wyświetlacza SPI TFT (ILI9341) w nowym Raspbianie
    Od: heby <h...@p...onet.pl>

    On 25/11/2021 00:16, Atlantis wrote:
    >> Internety twierdzą, że można aktualizować system, ale trzeba zatrzymać
    >> aktualizacje kernela.
    >> https://github.com/notro/fbtft/issues/10
    > Temat z 2013 roku, czy na długo zanim w ogóle powstało to urządzenie
    > (okolica roku 2016). Więc raczej tutaj mowa o znacznie starszym kernelu
    > i znacznie wcześniejszej aktualizacji, która zepsuła działanie
    > wyświetlacz u mnie.

    Chodzi o to, że masz możliwość zatrzymania aktualizacji kernela. Skoro
    chodziło Ci na starym, to zainstaluj stary OS, zatrzymają aktualizaję
    kernela i zrób update.


  • 5. Data: 2021-11-26 21:01:00
    Temat: Re: Obsługa wyświetlacza SPI TFT (ILI9341) w nowym Raspbianie
    Od: Atlantis <m...@w...pl>

    On 25.11.2021 19:57, heby wrote:

    > Chodzi o to, że masz możliwość zatrzymania aktualizacji kernela. Skoro
    > chodziło Ci na starym, to zainstaluj stary OS, zatrzymają aktualizaję
    > kernela i zrób update.

    Myślałem o tym, ale w miarę możliwości chciałbym zachować w pełni
    współczesny system.

    Generalnie i tak prawdopodobnie będę chciał w tym projekcie zastosować
    inny wyświetlacz. Pierwotny zamysł zakładał, że wszystko będzie się
    mieściło na jednej "płycie głównej", w którą będzie wetknięty zarówno
    wyświetlacz, jak i RasPi0. Obudowa miała być drukowana w 3D albo
    wycinana laserem ze sklejki.

    Teraz zmieniłem koncepcję i całość trafi do metalowej obudowy, więc
    wyświetlacz umieszczę na przednim panelu i połączę go z płytą
    przewodami. Mogę więc sobie pozwolić na nieco większy wyświetlacz.

    Stąd moje kolejne pytanie:
    Ktoś może wie coś na temat SPRAWDZONEGO wyświetlacza SPI TFT o
    przekątnej 2,8"-3,5", który działałby ze współczesnym Raspbianem i był
    wykrywany przez system jako /dev/fbx?
    Warunek konieczny to możliwość skonfigurowania w sterowniku wszystkich
    pinów (łącznie z CS), bo płytka jest już gotowa.


  • 6. Data: 2021-11-26 21:06:36
    Temat: Re: Obsługa wyświetlacza SPI TFT (ILI9341) w nowym Raspbianie
    Od: heby <h...@p...onet.pl>

    On 26/11/2021 21:01, Atlantis wrote:
    > Ktoś może wie coś na temat SPRAWDZONEGO wyświetlacza SPI TFT o
    > przekątnej 2,8"-3,5", który działałby ze współczesnym Raspbianem i był
    > wykrywany przez system jako /dev/fbx?

    HDMI:

    MPI3508.

    > Warunek konieczny to możliwość skonfigurowania w sterowniku wszystkich
    > pinów (łącznie z CS), bo płytka jest już gotowa.

    Nic nie trzeba konfigurowac, działa z HDMI.


  • 7. Data: 2021-11-26 23:09:36
    Temat: Re: Obsługa wyświetlacza SPI TFT (ILI9341) w nowym Raspbianie
    Od: Atlantis <m...@w...pl>

    On 26.11.2021 21:06, heby wrote:

    > Nic nie trzeba konfigurowac, działa z HDMI.

    Trochę strzelanie z armaty do komara. W projekcie wyświetlacz będzie
    musiał pokazywać interfejs złożony ze statycznych grafik i tekstu.
    W dodatku widzę jeszcze jeden problem - zaproponowany MPI3508 nie ma
    otworów montażowych pozwalających na łatwe przykręcenie do przedniego
    panelu. Został zaprojektowany jako nakładka nm "duże" RasPi.


  • 8. Data: 2021-11-26 23:15:14
    Temat: Re: Obsługa wyświetlacza SPI TFT (ILI9341) w nowym Raspbianie
    Od: heby <h...@p...onet.pl>

    On 26/11/2021 23:09, Atlantis wrote:
    >> Nic nie trzeba konfigurowac, działa z HDMI.
    > Trochę strzelanie z armaty do komara.

    Tylko, że rozwiązuje bardzo dużo problemów za bardzo małą cenę.

    > W projekcie wyświetlacz będzie
    > musiał pokazywać interfejs złożony ze statycznych grafik i tekstu.

    Świetnie się sprawdzi. X-y na tym znakomicie działają.

    > W dodatku widzę jeszcze jeden problem - zaproponowany MPI3508 nie ma
    > otworów montażowych pozwalających na łatwe przykręcenie do przedniego
    > panelu. Został zaprojektowany jako nakładka nm "duże" RasPi.

    Od czego drukarki 3D. Wyświetlacz ma cztery "skrzydełka" w postaci
    wyrostkó z PCB, które mają słuzyć do mocowania.

    To że zaprojektowano do dużego Pi, nic nie zmienia. Sam go używałem,
    przez jakis czas, jako dodatkowy wyświetlacz w laptopie. Ma nawet
    dodatkowe zasilanie na microUSB, specjalnie do tego.

    Zaryzykuje, że jest idealnym zastepnikiem kłopotliwych ekranów na SPI, a
    mocowanie to jedyny problem.


  • 9. Data: 2021-12-01 22:45:20
    Temat: Re: Obsługa wyświetlacza SPI TFT (ILI9341) w nowym Raspbianie
    Od: Atlantis <m...@w...pl>

    Wydaje mi się, że analiza zawartości dmesg przybliżyła mnie nieco do
    ujawnienia przyczyny takiego zachowania.
    Kluczowe fragmenty poniżej:

    [ 8.969897] spi-bcm2835 20204000.spi: chipselect 0 already in use
    [ 8.973392] spi_master spi0: spi_device register error
    /soc/spi@7e204000/enc28j60@0
    [ 8.979635] spi_master spi0: Failed to create SPI device for
    /soc/spi@7e204000/enc28j60@0
    (...)
    [ 15.150009] ads7846 spi0.1: supply vcc not found, using dummy regulator
    [ 15.173601] ads7846 spi0.1: touchscreen, irq 160
    [ 15.175904] input: ADS7846 Touchscreen as
    /devices/platform/soc/20204000.spi/spi_master/spi0/s
    pi0.1/input/input0
    [ 15.258677] fbtft: module is from the staging directory, the quality
    is unknown, you have been warned.
    [ 15.298044] fb_ili9341: module is from the staging directory, the
    quality is unknown, you have been warned.
    [ 15.299292] fb_ili9341 spi0.0: fbtft_property_value: buswidth = 8
    [ 15.299340] fb_ili9341 spi0.0: fbtft_property_value: debug = 0
    [ 15.299367] fb_ili9341 spi0.0: fbtft_property_value: rotate = 270
    [ 15.299396] fb_ili9341 spi0.0: fbtft_property_value: fps = 50
    (...)
    [ 16.381278] graphics fb1: fb_ili9341 frame buffer, 320x240, 150 KiB
    video memory, 16 KiB buffer memory, fps=50, spi0.0 at 16 MHz
    (...)
    [ 18.704521] pinctrl-bcm2835 20200000.gpio: pin gpio18 already
    requested by spi0.0; cannot claim for 20203000.i2s
    [ 18.704566] pinctrl-bcm2835 20200000.gpio: pin-18 (20203000.i2s)
    status -22
    [ 18.704594] pinctrl-bcm2835 20200000.gpio: could not request pin 18
    (gpio18) from group gpio18 on device pinctrl-bcm2835
    [ 18.704613] bcm2835-i2s 20203000.i2s: Error applying setting, reverse
    things back
    [ 18.704673] bcm2835-i2s: probe of 20203000.i2s failed with error -22

    Wygląda więc na to, że:
    - dtoverlay=rpi-display (pomimo próby użycia odpowiednich parametrów)
    upiera się przy użyciu pewnych zafiksowanych parametrów.
    - Sterownik upiera się, żeby w roli pinu CE wyświetlacza używać CE0,
    chociaż u mnie ten pin jest wykorzystywany do sterowania kontrolerem
    LAN. Dochodzi do konfliktu i Ethernet się wykrzacza. Wyświetlacz
    oczywiście też nie działa, bo system nie może się z nim skomunikować,
    skoro ten w rzeczywistości jest na pinie CE1.
    - Żeby tego było mało, sterownik próbuje jeszcze aktywować warstwę
    dotykową przyjmując, że jest podłączona do pinu CE1. Dodatkowo do
    obsługi tej funkcji rezerwowane są inne piny, co prowadzi do konfliktu z
    I2S i wywala się DAC.

    Ktoś ma pomysł jak mu powiedzieć, że z ekranem ma się komunikować przez
    CE1, a funkcji ekranu dotykowego ma nie używać wcale?


  • 10. Data: 2021-12-01 23:12:39
    Temat: Re: Obsługa wyświetlacza SPI TFT (ILI9341) w nowym Raspbianie
    Od: heby <h...@p...onet.pl>

    On 01/12/2021 22:45, Atlantis wrote:
    > Wygląda więc na to, że:
    > - dtoverlay=rpi-display (pomimo próby użycia odpowiednich parametrów)
    > upiera się przy użyciu pewnych zafiksowanych parametrów.

    Masz te parametry podane w lini opcji jądra i/lub /etc/modules?

    https://tlfong01.blog/2020/05/23/mgd-blog-ili9341-sc
    reen-setup-notes/

strony : [ 1 ] . 2 . 3


Szukaj w grupach

Szukaj w grupach

Eksperci egospodarka.pl

1 1 1

Wpisz nazwę miasta, dla którego chcesz znaleźć jednostkę ZUS.

Wzory dokumentów

Bezpłatne wzory dokumentów i formularzy.
Wyszukaj i pobierz za darmo: