0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

kazuedaの活動記録2024Advent Calendar 2024

Day 6

GUDドライバを使ってRaspberry pi picoでLinux用USB接続2.8インチミニサブディスプレイ

Last updated at Posted at 2024-12-05

はじめに

 GUDドライバの実験でRaspberry pi picoを使ったミニディスプレイの発表準備を行っていると、Interface誌2023年12月号に様々なLCDをつないでUSB接続のディスプレイにする記事があることに気づきました。

 「LILO&東海道らぐオフラインミーティング 2024-01-28」の発表後、さっそく雑誌を取り寄せて内容を確認しました。
 記事で対応しているLCDは以下のものです。
 Pimoroni製のPico Display Pack

 1.14インチのIPS LCD搭載のRaspberry pi pico用のボードです。4個のボタンとRGBLEDも搭載されています。

 2.0インチ(320x240)のIPS LCDディスプレイ搭載のRaspberry pi pico用ボードです。4つのボタン、RGB LED、それからPicoプロジェクトに使えるスペースも用意されています。

 Waveshare製の2.8inch Touch Display Module for Raspberry Pi Pico

 262千色、320x240のSPI接続可能な、Raspberry pi pico用2.8インチタッチディスプレイです。
 ここでは、Waveshare製の2.8inch Touch Display Module for Raspberry Pi Picoの使用例を紹介します。

UF2ファイルのビルド

 私は、/home/kazueda/rpipicoで作業を行っています。
 記事中に掲載のダウンロードサイトから、ソースファイルを含む圧縮ファイル、IF2210TS.zipをダウンロードします。
 ダウンロードしたファイルを解凍すると、IF2210TSディレクトリが生成します。IF2210TSディレクトリに移動して、pico-sdkをgit cloneします。
 その後、pico-sdkディレクトリに移動します。

$ cd pico-sdk

 サブモジュールをアップデートします。

$ git submodule update –init

「gud-pico/libraries/gud_pico/usb_descriptors.c」の修正
の修正を行います。
「.wMaxPacketSize.size = CFG_GUD_BULK_OUT_SIZE,」

「.wMaxPacketSize = CFG_GUD_BULK_OUT_SIZE,」
と修正します。
 最後に、UF2ファイルの作成です。

$ ./build.sh
$ make

私の場合、

/home/kazueda/rpipico/IF2210TS/gudpico/build/examples/pico-display

のディレクトリに
pico_display.uf2
が生成します。
「 pico_display.uf2 」をRaspberry pi picoにペーストすると、Raspberry pi pico側の準備は終了です。
 「2.8inch Touch Display Module」に接続して、USBケーブルを介してLinuxマシンに接続します。

ディスプレイの動作状況

Ubuntu22.04のデスクトップ環境で無事映りました。Ubuntu(デフォルト)、つまりデフォルトのリッチなUnity環境です。
image.png

$ uname –a

を使って、システムの状態を見ると、以下の様になっています。

Linux kazueda-U700 6.5.0-25-generic #25~22.04.1-Ubuntu SMP PREEMPT_DYNAMIC Tue Feb 20 16:09:15 UTC 2 x86_64 x86_64 x86_64 GNU/Linux

 一方、Raspberry pi OSは緑のままで、デスクトップは表示されません。PIXELを使用しています。
  image.png
 こちらも、

$ uname -a

を使って、システムの状態を見ると、以下の様になっています。

Linux raspi4 6.1.21-v8+ #1642 SMP PREEMPT Mon Apr  3 17:24:16 BST 2023 aarch64 GNU/Linux

デスクトップ環境を選ぶのかもしれません。

おわりに

 Linuxカーネルのバージョンが5.15以上のデスクトップ環境だと動作するとの説明でしたが、ディスプレイマネージャ依存があるのかもしれません。
 Interface誌2023年12月号の記事にはGUDドライバの仕組み等の解説がありますので、GUDドライバの資料として手元に置いておくのがいいでしょう。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?