Raspberry Piへインストールする際の注意事項
TWELITE STAGE APPは、一部を除く Raspberry Pi で動作します。
- マウスとタッチスクリーンに対応します。
- ビルドツールチェインが付属しており、コンパイルもできます。
- 実行形式には、X11版のほかにフレームバッファ版(
nox
)があるほか、半透明エフェクトなどを省略した軽量版があります。
環境
以下の環境で開発・動作確認しています。
ハードウェア
- Raspberry Pi 3 Model B
- LCD Screen: Raspberry Pi Touch Display (7")
ソフトウェア
- Raspberry PI OS (32bit) Lite (Version:August 2020)
既知の問題・制限事項
- 1回目の起動で
/dev/serial0
の動作に失敗することがあります。 - Raspberry Pi 4B では
/dev/serial0
の動作は未検証です。 - Raspberry Pi 4B ではタッチスクリーンの動作は未検証です。
- TWELITE STAGE への入力文字列が
/dev/tty1
上で動作してるシェルやgetty
へ入力文字列がそのまま渡されます。/dev/tty1
から起動することを推奨します。 - 他のインストールや動作のプログラム(X11など)に影響を受けることがあります。
アーカイブの展開
ダウンロードしたアーカイブファイルは、パス名に空白や日本語などが含まれないフォルダに展開します。
以下ではRaspberry Piのホームフォルダに展開しています。
cd /home/pi
unzip MWSTAGE2020_XX_YYYY.zip
フォルダ構成
../MWSTAGE
TWELITE_Stage.run TWELITE_Stage アプリ
BIN/ ファームウェアBINファイル
MWSDK/ MWSDK ライブラリなど
TWELITE_Stage/ TWELITE_Stage アプリ関連ファイル
デバイスドライバ
TWELITE STAGE から MONOSTICK や TWELITE R を認識するためには、ftdi_sio
モジュールのアンロードや、USBデバイスに対する読み書き権限の付与が必要です。
USBデバイスのIDを以下に示します。
- ベンダーID
0x0403
- プロダクトID
0x6001
(MONOSTICK,TWELITE R) または0x6015
(TWELITE R2)
この設定を自動化するための udev
の設定スクリプトを用意しています。/etc/udev/rules.d
に定義をコピーして、設定をリロードしています。設定後は USB デバイスを抜き差ししてから TWELITE_Stage.run
を実行してください。起動直後の画面で USB デバイスが表示されたなら、設定が反映されています。
cd ./MWSTAGE/TWELITE_Stage/INSTALL/ubuntu/
sudo ./set_udev_sudo.sh
定義ファイル(読みやすいように改行しています)
ACTION=="add",
ATTRS{idVendor}=="0403", ATTRS{idProduct}=="6001",
MODE="0666",
RUN+="/bin/sh -c 'rmmod ftdi_sio && rmmod usbserial'"
ACTION=="add",
ATTRS{idVendor}=="0403", ATTRS{idProduct}=="6015",
MODE="0666",
RUN+="/bin/sh -c 'rmmod ftdi_sio && rmmod usbserial'"
シリアルポートの取り扱い
上述の環境では、raspi-config
よりシリアルポートの設定をすることで /dev/serial0
が利用できます。
sudo raspi-config
メニューより
"3 Interface Options Configure connections to peripherals"
→"P6 Serial Port Enable/disable shell messages on the serial connection"
以下のようにログインシェルとしては利用しない、ハードウェアを有効化するを選択します。
"Would you like a login shell to be accessible over serial?" ->
"Would you like the serial port hardware to be enabled?" →
配線例
[TWELITE] [Raspberry Pi]
GND ------------------ Gound (#6,#9,#14,#20,#25,#30,#34,#39のいずれか)
TXD(DIO6,DIP#10) ------ GPIO15/UART0 RXD (#10)
PRG(SPIMISO,DIP#7) ---- GPIO23 (#16)
RXD(DIO7,DIP#3) ------- GPIO14/UART0 TXD (#8)
RST(RESETN,DIP#21) ---- GPIO22 (#15)
VCC ------------------ 3V3 (#1,#17のいずれか)
SET(DIO12,DIP#15) ----- GPIO12 (#32)
- TWELITE, Raspberry Pi それぞれのマニュアルを参照してください。
- DIP# は TWELITE DIP のピン番号です。
- 上記の配線は TWELITEが安定稼働することを保証するものではありません。
TWELITE STAGE APPの起動
- フレームバッファ版(
nox
)はX11のデスクトップ上では動作しません。X11を終了しておきます。 TWELITE_Stage.run
を実行します。スクリーン画面上のTWELITE STAGE APPが表示されます。
留意事項
- マウスとタッチパネルに対応します。
- TWELITE STAGE APP中で、入力した文字はコンソール画面にも表示される場合があります。
その他
/dev/dri
エラー
TWELITE_Stage.run
の起動時に以下のエラーが出る場合がありますが、無視して構いません。
"The path /dev/dri/ cannot be opened or is not available"
メモリ不足
CPU数が4以上の場合、ビルド時はCPU数を一つ引いた値の並列コンパイルを実行します(4コアなら3並列)。 場合によってはメモリ不足が発生するかもしれません。その場合は並列数を変更してください。
Raspberry Pi 4
busterにおける注意事項
OpenGL関連のドライバを有効とする必要があります。
- raspi-config の Advanced Settings → A2 GL Driver → G2 GL (Fake KMS) を選択します
- libgles-dev パッケージを導入しておきます
2024年6月現在、Raspberry Pi OS (32bit, bookworm)では、Linuxカーネルの更新に伴いピンの制御を行えず、モジュールを認識・操作できない不具合が発生しております。
また、bookworm では libccm 等に関するエラーにより起動できない不具合も確認されていますが、次のコマンドを実行することで解消できる場合があります。
sudo apt update
sudo apt install --reinstall libraspberrypi0 libraspberrypi-dev libraspberrypi-doc libraspberrypi-bin
このとき、再起動すると lightdm の起動に失敗してしまう場合があります。
その際は raspberrypi-ui-mods
の導入をお試しください。
sudo apt update
sudo apt install raspberrypi-ui-mods
お手数ですが、当分は Raspberry Pi OS (32bit, bullseye) をご利用ください。
追記:Raspberry Pi OS (bookworm) に対応した TWELITE STAGE アプリのベータ版を作成しました。
【32bit版パッチの導入方法】
cd MWSTAGE
wget https://twelite.net/files/TWELITE_Stage_Wayland.run.zip
unzip TWELITE_Stage_Wayland.run.zip
./TWELITE_Stage_Wayland.run
- 本体:TWELITE_Stage_Wayland.run.zip
- SHA256:
76da281f80dc998fde1acb9eeb4d5168179f810b03342feb8b3e8ad644a978a2
- SHA256:
【64bit版パッチの導入方法】
cd MWSTAGE
wget https://twelite.net/files/TWELITE_Stage_Wayland_64.run.zip
unzip TWELITE_Stage_Wayland_64.run.zip
mv Tools/ba-elf-ba2-r36379 Tools/ba-elf-ba2-r36379-bkup32
wget https://twelite.net/files/ba-elf-ba2-r36379_aarch64.tgz
tar -xzf ba-elf-ba2-r36379_aarch64.tgz
mv ba-elf-ba2-r36379 Tools/
./TWELITE_Stage_Wayland_64.run
- 本体:TWELITE_Stage_Wayland_64.run.zip
- SHA256:
2f784b3d667ccb08b9cc9fe5eda8cd48e37c2e11c1747718087fe279be693a0f
- SHA256:
- ツールチェーン:ba-elf-ba2-r36379_aarch64.tgz
- SHA256:
81a9546c2d1d77344358426a1eefa275a08e24d8b497d2faefce07d497776a45
- SHA256: