0
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

WADFS-35 ミニIPSディスプレイをPythonで使用する

Last updated at Posted at 2025-04-30

BitTradeOne さんから、ちょっと面白いミニディスプレイが発売になりました。

いわゆるサブモニターとして使うのではなく、
ArduinoやRaspberryPiなどマイコンで直接ディスプレイに表示するような用途を
USB接続してPCやMacから行うことができます。
マイコン側はデバッグが大変なので、処理をPC側に持ってこれるのは助かります。

自分は仕事でセンサー類を用いた実験器具を作成することがあり、
実験の計画作成やデータ保存などはPC側からPythonで行い、
センサーの読み取りや表示はArduino等マイコン側で行うことが多かったのですが、
これを使用すると表示の制御もPC側に持ってくることが可能です。

それでは使用方法を見ていきます。
Python環境がすでに入っていることを前提としています(スミマセン)。
また、今回はPython実行環境としてVSCodeを使用しています。

使用方法
ミニディスプレイをPCまたはMacに接続します。
製品にはいい感じに強そうなUSBケーブルが同梱されていますが、
USBA-USBCなので、Macで使用する場合は変換コネクタが必要になります。

接続すると、ミニディスプレイにテスト用の文字列が表示されます。

IMG_4849.jpg

次に、こちらのミニディスプレイを使用するためのGitHubからリソースを取得します。

image.png

ダウンロードして解凍(またはClone)したら、そのフォルダをVSCodeで開きます。

image.png

simole-program.pyを開きます
image.png

実行すると、
image.png
背景の上に文字やプログレスバーが表示されるデモ画面になります。

IMG_4852.jpg

試しに

    lcd_comm.DisplayText("Basic text", 50, 85)

の部分を変更すると、表示位置や文字列を変更することができました。
背景画像は

background = f"res/backgrounds/example_{lcd_comm.get_width()}x{lcd_comm.get_height()}.png"

のように直接引っ張ってくることが可能です(↑の例では解像度で引っ張ってくる画像を変えています)。

もともとPCのステータス等を表示する用途で用意されたライブラリだけあって、
プログレスバーや円形にデザインされたグラフが用意されているようです。

        lcd_comm.DisplayText(str(datetime.now().time()), 160, 2,
                             font=Path(__file__).parent / "res" / "fonts" / "roboto" / "Roboto-Bold.ttf",
                             font_size=20,
                             font_color=(255, 0, 0),
                             background_image=background)

でテキストを表示したり、

        lcd_comm.DisplayRadialProgressBar(98, 260, 25, 4,
                                          min_value=0,
                                          max_value=100,
                                          value=bar_value,
                                          angle_sep=0,
                                          bar_color=(0, 255, 0),
                                          font_color=(255, 255, 255),
                                          background_image=background)

で円形のプログレスバーを表示したりしています。
他にも、
library > lcd > lcd_comm.pyの中を見てみると、

    def DisplayLineGraph(self, x: int, y: int, width: int, height: int,
                         values: List[float],
                         min_value: float = 0,
                         max_value: float = 100,
                         autoscale: bool = False,
                         line_color: Color = (0, 0, 0),
                         line_width: int = 2,
                         graph_axis: bool = True,
                         axis_color: Color = (0, 0, 0),
                         axis_font: str = str(Path(__file__).parent.parent.parent / "res" / "fonts" / "roboto" / "Roboto-Black.ttf"),
                         axis_font_size: int = 10,
                         background_color: Color = (255, 255, 255),
                         background_image: Optional[str] = None):

でグラフを描いたりといったことができるようです。

以上、簡単な使用方法の説明でした!

0
1
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
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?