概要

RaspBerry Pi に I2C 接続の単色 128*64 ドットの OLED(有機 EL) ディスプレイを接続して、コンソール画面(CTRL+ALT+F1 を押したときの画面)を表示するディスプレイとして使う手順です。RaspBerry Pi 本体に接続した USB キーボードから 16x8 文字表示のコンソールにログインして、シェル上で操作できます。

DHCP 環境で RaspBerry Pi にリモートでログインしたいけれども IP アドレスが分からない場合、通常は外部ディスプレイを接続する必要があって面倒ですが、このコンソール画面があれば "ifconfig | less" コマンドで調べられます。調べるだけでなく "ifconfig eth0 192.168.0.1" などとして IP アドレスを変更したり "vi /etc/dhcpcd.conf" で設定ファイルを編集することまでなんとかできます。解像度は高くありませんが、超小型(27.3mm*27.3mm)のディスプレイなので、普段から接続したままでも邪魔になりません。

zero.jpg

動作

初期設定

自動設定スクリプト(Install.sh)を使う場合

(1) 配線

hardware.png

(2) fileoled.zip をダウンロードして展開し、root 権限で自動設定スクリプト Install.sh を実行する

# sh Install.sh

(3) I2C の有効化

# raspi-config

手動で設定する場合(通常は不要です)

(1) 配線

(2) fileoled.zip をダウンロードして展開し oled コマンドを /bin/oled に置いて実行パーミションを付ける

# cp oled /bin/oled
# chmod a+x /bin/oled

(3) 8dot フォント(alt-8x8 他)をインストール

# export DEBIAN_FRONTEND=noninteractive
# apt-get install console-data

(4) I2C の有効化

# raspi-config

(5) 解像度の追加

mode "128x64-60"
    # D: 25.175 MHz, H: 31.469 kHz, V: 59.94 Hz
    geometry 128 64 128 64 8
    timings 39722 48 16 33 10 96 2
endmode

(6) oled サービスの追加

[Unit]
Description = oled daemon
After = multi-user.target
# After=display-manager.service
[Service]
ExecStartPre=/bin/bash -c "/bin/sleep 10; /bin/chvt 1; /bin/fbset '128x64-60'; /bin/setfont 'alt-8x8'"
ExecStopPost=/bin/bash -c "/bin/fbset '800x600-60'; /bin/setfont 'default8x16'"
ExecStart = /bin/oled
Restart = always
Type = simple
[Install]
WantedBy = multi-user.target

(7) OS 起動時にサービスを開始するように指定

# systemctl enable oled 

を実行する(不要になったら systemctl disable oled で無効化できる)。

Raspberry Pi Zero に横向きに OLED を接続する方法

gpio-zero1.jpg
gpio-zero2.jpg

補足

外部リンク

ソフトウェア

ソフトウェアのダウンロード

oled コマンドについて

# oled [-h] waitTime i2cAddress i2cDeviceFile framebufferDeviceFile Brightness
引数意味省略時のデフォルト値
waitTime画面転送の周期(ms)100
i2cAddressI2C のスレーブアドレス0x3c
i2cDeviceFileI2Cのデバイスファイル名/dev/i2c-0 と /dev/i2c-1(open できたほうを使用)
framebufferDeviceFileフレームバッファのデバイスファイル名/dev/fb0
BrightnessOLED の明るさ(0-255)128

Counter: 15758, today: 2, yesterday: 1

検索用キーワード:Raspberry pi, ラズベリーパイ, ラズパイ, OLED, 有機EL, LCD, 液晶, コンソール, ログイン、USB, キーボード, スクリーンエディタ, コマンド, サービス, login

[https://goo.gl/ZAZqIj]
fanoutsendai@lait.sakura.ne.jp

トップ   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS