SSブログ

Pi3でレトロゲーム専用機を仕立てる(Lakka) [Raspberry Pi]

OSMC を入れてメディアプレーヤーにするつもりだった Pi3。 結果が芳しくなく放置していたのだが,Pi3B+が出たので,再度,試してみたかった。 で,やっとPi3B+を購入,余ったPi3の使い道が思い浮かばなかったので,とりあえず,レトロゲーム専用機に仕立ててみることに…

肝心のメディアプレーヤーの方は,後日。。。
# だって,こっちの方が楽しそう(笑

以下は,いつも通りの,忘備録です。(なので,ちょっと長い)


ケース

ラズパイのケースって,色々出てて,本家のヤツや,フルアルミやらポリカ板積層やら,それこそ色々。 今回は,レトロゲーム専用機なので,スーパーファミコン風のケースにしてみた。
Amazon.jpの TENCO Raspberry SUPERPiケースJCase Raspberry Pi B+/3B/2B/B+対応 ってヤツ。

picase1.jpg

ちなみにこのセットには,ヒートシンクや冷却ファンは付いていない。
全部入りのセットもあるけど,無駄に高い...
ヒートシンクは,元々貼り付けずみだし,冷却ファンは,手持ちのヤツで間に合わせる事にした。

ケースの作りは,なかなか良い感じ。
おまけ(?)のスーファミ風コントローラーもいい味出しています。

早速,Pi3を入れてみたところ…

  • セットには,ドライバー(ネジ回し)が付いてくるが,ネジに合っていない。
  • 取り付け用のネジが非常に硬い。
    新品なので,ネジ穴にタップが切られていない為。
  • 背の高いヒートシンクは,ケース内部に干渉する。
    正直,microSDカード入れは要らないと思う(開くギミックは良いけど 笑
    今回は,ヒートシンクはそのままに,ケースを削って無理やり押し込む。
  • 冷却ファンは,高さ(厚さ)8mmに対応していて,"爪"で固定する。
    手持ちの10mmは付くけど,固定不可。 別途,タッピングスクリューか,ホットボンドで固定。
    基盤から出てるFAN端子は5V出力。 そのままでは,結構うるさい。 3.3Vに繋いだ方が良いかも…
  • USBポートが天地逆
    地味にイッラとする(笑

電源回路に入っているIC(刻印は2065)が,"電流制限パワー・ディストリビューション・スイッチ"の2065ならMax1Aな品物。
高負荷にした時,電源周りが危ないかも…


recalbox-os

今まで幾度となく試してみたけど,相変わらず微妙… 試すたびに???が増える感じ。
今回も,速攻消した(爆
# 信仰者の皆さん,ごめんなさい… 当方,我慢できません。


Lakka

使ったことがないので,今回は,こちらを採用。

XMB風UIが素敵(笑
何よりシンプル! 変な音楽が鳴ったり,起動アニメションでイラッとさせられたりしない。

使ったimgは
Lakka-RPi2.arm-2.1.1.img.gz

使い方は,本家サイト参照
Lakka documentation - Home


UIを日本語化

XMBの『歯車』→User →Language: 日本語
使っている Font,いい感じです。

Timezone

Lakka documentation - Timezone settings

Lakka:~ # echo "TIMEZONE=Asia/Tokyo" > /storage/.cache/timezone
Lakka:~ # reboot

なんで,UI無いんだろう〜

右上に日時を表示

PS3っぽくする為に,あえて時刻を表示させてみます。

  1. XMBの『歯車』→ユーザーインターフェース →詳細を表示: ON
  2. XMBの『歯車』→ユーザーインターフェース →表示 →日付と時刻を表示: ON

詳細を表示:ONにすると,メニュー項目が大量になり,かなり見づらい。
普段使いなら,詳細を表示:OFFの方が良いかも。

Wifiを使う

2コン側USBポートに,キーボードを繋いで作業した方が,パスワード入力など楽です。

XMBの『歯車』→Wi-Fi

SSHを有効

XMBの『歯車』→Lakkaのサービス →SSHを有効: ON
$ ssh root@Lakka
root@lakka's password: 
###########################################
# Lakka - The DIY retro emulation console #
# ...... visit http://www.lakka.tv ...... #
###########################################

Lakka (community): 2.1.1 (RPi2.arm)

Lakka:~ # uname -a
Linux Lakka 4.9.80 #1 SMP Mon Jun 18 20:37:20 CEST 2018 armv7l GNU/Linux
Lakka:~ # df -h
Filesystem                Size      Used Available Use% Mounted on
devtmpfs                370.3M         0    370.3M   0% /dev
/dev/mmcblk0p1          511.7M    328.0M    183.8M  64% /flash
/dev/mmcblk0p2           13.8G      1.3M     13.8G   0% /storage
/dev/loop0              316.0M    316.0M         0 100% /
tmpfs                   375.8M         0    375.8M   0% /dev/shm
tmpfs                   375.8M      6.4M    369.3M   2% /run
tmpfs                   375.8M         0    375.8M   0% /sys/fs/cgroup
tmpfs                   375.8M      1.9M    373.8M   1% /var
tmpfs                   375.8M         0    375.8M   0% /tmp
none                     13.8G      1.3M     13.8G   0% /tmp/joypads
none                     13.8G      1.3M     13.8G   0% /tmp/cores
none                     13.8G      1.3M     13.8G   0% /tmp/shaders
none                     13.8G      1.3M     13.8G   0% /tmp/database
none                     13.8G      1.3M     13.8G   0% /tmp/assets

user/passwordがroot/rootなのが,結構恐怖(笑

rootのパスワード変更をしてみる…

Lakka:~ # passwd

 There is no working 'passwd'.

 The 'passwd' command changes passwords for user accounts.

 With LibreELEC it is not possible to change the system password

 SSH is included only as a last support resort. SSH is off by default.
 Most users never need SSH and need help using it so we need a default
 password. If you need to keep SSH always on then this is unsupported
 but can be secured with certificates.

 TIP: disable password authentication in ssh and use public key authentication.

出来ないってさ… orz

しようがないので,キー認証にする。

Lakkaで秘密鍵/公開鍵を作る。

Lakka:~ # ssh-keygen -t rsa 
Lakka:~ # cd ~/.ssh/
Lakka:~/.ssh # cat id_rsa.pub >> authorized_keys
Lakka:~/.ssh # chmod 600 authorized_keys
Lakka:~/.ssh # chmod 700 ~/.ssh
Lakka:~/.ssh # rm id_rsa.pub

Macで秘密鍵を取ってきて設定,sshしてみる。

$ scp root@lakka:~/.ssh/id_rsa ~/.ssh/
root@lakka's password: 
id_rsa                                      100% 1679    22.7KB/s   00:00    
$ mv id_rsa lakka_rsa
$ nano .ssh/config
    :

host lakka
        user root
        port 22
        IdentityFile ~/.ssh/lakka_rsa

$ ssh lakka
###########################################
# Lakka - The DIY retro emulation console #
# ...... visit http://www.lakka.tv ...... #
###########################################

Lakka (community): 2.1.1 (RPi2.arm)
Lakka:~ # 

キー認証が成功したら,パスワードログインを無効にする。

Lakka:~ # nano /storage/.cache/services/sshd.conf
    :

SSH_ARGS="-o PasswordAuthentication=no"

Lakka:~ # sudo reboot

Lakkaでは/etc/ssh/sshd_configを直接編集できない。
その代替え方法として,上記の方法を使う…らしい。

内蔵BTでDualShock3

Lakka documentation - Wireless Dualshock

Pi3のBT内蔵が使えます。
上記URLの手順通りで接続完了。
作業は,セッカチにならないように,ゆっくりと行う事。

一度,ペアリングできてしまえば…

  1. Lakkaを起動
  2. DS3のPSボタンを押す。
    • DS3のLED4つが点滅
    • ペアリングが成功すると,LEDが点灯
  3. Lakkaのメニューが操作可能になる。

Gameは入れてみていないので,どんな動きをするかは不明(オイオイ汗)。

Safe-Shutdownを動かす。

このケース,メーカーさんで,電源SWで安全にShutdownできる様にするスクリプトを用意している。

Safe Shutdown Script : retroflag-picase(Github)

RetroPieとRecalBoxに対応っぽい。

* この機能を使うには,内部のSWを切り替える必要がある。 このSWは外からアクセス不可。
picase2.jpg
中央下のスライドスイッチ

Lakkaで動くのか試します。 →ダメでした(笑

まぁ,なんとかなるかな?っと思っていたのですが,Lakkaは,apt-getが使えない。
使えないのではなく,入っていない orz
# いやぁ〜Lakka 固っつ

それでも何か方法は?って事で検索してみたけど見当たらない…
でも,そんな中,見つけたのがこれ。

lakka_nespi_power (Github)

中のコードを見て見たら…

  • インストール時,Lakkaに入っていない RPi.GPIO のLibを入れてくれる。
  • Lakkaのpythonは2.7,それで動くようなスクリプト。
  • shutdown.pyで使用しているGPIOピンは,ケースメーカーの物と同一。

lakka_nespi_powerを入れてみる。

Lakka:~ # wget -O - "https://github.com/marcelonovaes/lakka_nespi_power/raw/master/install.s
h" | bash
Connecting to github.com (192.30.255.112:443)
Connecting to raw.githubusercontent.com (151.101.108.133:443)
-                    100% |***************************************************|  1185   0:00:00 ETA
bash: 0: unknown operand
Connecting to github.com (192.30.255.112:443)
Connecting to codeload.github.com (192.30.255.121:443)
master.zip           100% |***************************************************| 52388   0:00:00 ETA
Archive:  master.zip
bb4efa29d3227ea705f2a24e35de8e99e0263c7c
   creating: lakka_nespi_power-master/
   creating: lakka_nespi_power-master/.config/
 extracting: lakka_nespi_power-master/.config/autostart.sh  
  inflating: lakka_nespi_power-master/README.md  
  inflating: lakka_nespi_power-master/install.sh  
   creating: lakka_nespi_power-master/lib/
  inflating: lakka_nespi_power-master/lib/RPi.GPIO_flub.tar  
  inflating: lakka_nespi_power-master/lib/RPi.GPIO_flub_quad_core.tar  
   creating: lakka_nespi_power-master/lib/RPi/
  inflating: lakka_nespi_power-master/lib/RPi/GPIO.so  
 extracting: lakka_nespi_power-master/lib/RPi/__init__.py  
  inflating: lakka_nespi_power-master/lib/RPi/__init__.pyo  
   creating: lakka_nespi_power-master/precompiled_libs/
  inflating: lakka_nespi_power-master/precompiled_libs/README.md  
   creating: lakka_nespi_power-master/scripts/
  inflating: lakka_nespi_power-master/scripts/shutdown.py  
SUCCESS! Shutdown Script configured!
Installation done. Will now reboot after 3 seconds.

電源SW ON →OFFで,いきなり切れずに,なんかやってからOFFする。
ResetSWも,なんかやってからRebootする。

どっちも,"なんかやって" の時間が短すぎて,本当に大丈夫か不明(笑


ゲームは,まだ,何も入れていない。
なんか,ここまでやって,満足した感じ(笑
いつも通り『目的と手段が…』ですね。

手持ちの PS1 のゲームでも入れてみるか… (方法はこれから(笑)


タグ:ラズパイ
コメント(0) 
共通テーマ:趣味・カルチャー

コメント 0

コメントを書く

お名前:[必須]
URL:
コメント:
画像認証:
下の画像に表示されている文字を入力してください。

※ブログオーナーが承認したコメントのみ表示されます。
raspi-conifgで,2-N3が効..Pi3B+でもOSMC ブログトップ

この広告は前回の更新から一定期間経過したブログに表示されています。更新すると自動で解除されます。