Получилось: Raspberry Pi и китайский TFT 3.2"

Действуя по проверенной схеме:

  1. купить, не заподозрив подвоха (а вот анонс этого поста)
  2. потратить кучу времени без результатов
  3. заменить устройство, которое будет управлять дисплеем
  4. опять не получить результатов
  5. офигеть от вот этого вот всего
  6. начать вдумчиво искать в интернетах
  7. ...*
  8. PROFIT!

...мне удалось заставить ноунеймовый дисплей работать с Raspberry Pi 3 и её предшественницей - Model B+ (Raspberry Pi 1).

*можно было не покупать более свежую модель Raspberry Pi, а просто правильно опознать модель дисплейного модуля, хотя тут без везения не обошлось - мог бы ничего и не найти про него.


Что было сделано:

Сначала я искал по названию контроллера (ili9341), и вышел на страничку http://marcosgildavid.blogspot.com/2014/02/getting-ili9341-spi-screen-working-on.html

Там я нашёл команду для включения фреймбуфера для дисплея (не забудьте активировать SPI в raspi-config, или напрямую в /boot/config.txt), подключённого через GPIO:

sudo modprobe fbtft_device custom name=fb_ili9341  gpios=reset:25,dc:24,led:18 speed=16000000 rotate=90 bgr=1

Это не дало результатов, в dmesg писало, что не может задействовать 25-й пин для ресета, ибо он занят, или что-то в таком духе. Поискав, где вообще этот пин расположен, я обнаружил, что дисплей к нему в принципе не подключён - колодка с контактами дисплея не подсоединяется к нему, потомучто она короче на несколько пинов, чем шина GPIO.

После этого я решил, что стоит поискать альтернативные пути. И тогда всё получилось.

По названию и упоминанию контроллера тач-скрина получилось найти магазин производителя оригинального дисплея, клон которого я и купил. Гуглил по "3.2 rpi display ili9340 xpt2046", вышел на http://www.waveshare.com/3.2inch-rpi-lcd-b.htm, что по виду экрана и кнопок было один-в-один с купленным мною на Алиэкспрессе, но вот обратная сторона заметно отличалась. Внизу страницы производителя так же был набор фото оригинальных и пиратских дисплеев: http://www.waveshare.com/img/devkit/general/RPi-LCD-Anti-Piracy-l.jpg - мой был в списке пиратских (3.2").

После этого я поискал по "waveshare 3.2 fbtft rpi" - попал на https://github.com/notro/rpi-firmware/issues/6

Там я уже узнал, что можно завести этот дисплей командой

sudo modprobe fbtft_device custom name=fb_ili9341 gpios=dc:22,reset:27 speed=48000000 rotate=90 bgr=1

И это заработало!

После, порывшись в Вики у fbtft я набрёл на https://github.com/notro/fbtft/wiki/FBTFT-RPI-overlays, где чудным образом была ссылка на https://github.com/swkim01/waveshare-dtoverlays.

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

Для работы в консоли на этом экране - нажимаем Alt+Ctrl+F1. Для переключения на экран HDMI - Alt+Ctrl+F7(или F6).

+1
Добавить комментарий

Оставить комментарий

    • bowtiesmilelaughingblushsmileyrelaxedsmirk
      heart_eyeskissing_heartkissing_closed_eyesflushedrelievedsatisfiedgrin
      winkstuck_out_tongue_winking_eyestuck_out_tongue_closed_eyesgrinningkissingstuck_out_tonguesleeping
      worriedfrowninganguishedopen_mouthgrimacingconfusedhushed
      expressionlessunamusedsweat_smilesweatdisappointed_relievedwearypensive
      disappointedconfoundedfearfulcold_sweatperseverecrysob
      joyastonishedscreamtired_faceangryragetriumph
      sleepyyummasksunglassesdizzy_faceimpsmiling_imp
      neutral_faceno_mouthinnocent