Raspberry Pi4発表のニュースを見て、久しぶりにRaspberry Piを引っ張り出してきて触っていました。
Raspberry Piは前にも少し触っていたのですが、PCとRaspberry Piの間で、マウス・キーボード・モニターを行ったり来たりするのが億劫になって、次第に使わなくなってしまいました。
PCだけでRaspberry Piを使う、何かいい方法ないかなぁと調べていたら、下記の記事を見つけました!!
PCのVisual Studio Codeから、リモートで他のPCにアクセスし、そのPCのディレクトリをツリー表示してファイルを直接編集できるようにする拡張機能「SSH FS」です!
マイクロソフトも「Remote-SSH」という似たような拡張機能を出しているのですが
- リモートPCはx86のみで、ARMのRaspberry Piには使えない
- リモートPCに通信アプリがインストールされてしまう
- ログインはSSHキーのみでID・パスワードは使えない
など、色々制約があって使うのを躊躇していました。
一方「SSH FS」は使い方も直感的で、想像通りの動きをしてくれます。
リモートの環境も汚さないし、もうこれで決まりじゃないですか!いいもの見つけました!
ここまでくると、完全にマウス・キーボード・モニターなしにしたくなってきました。
以下、ざっくりと、「Raspberry Pi 周辺機器フリーへの道」の道のりを記しておこうと思います。
OSイメージ準備
- GUIは使わないのでRaspbianのLiteをインストール
- 公式サイトからダウンロードすると遅いので、ミラーサイトからダウンロード
- 立ち上げたらすぐにWiFiに接続してSSHログインできるよう、イメージを書き込んだSDカードをPCに差して「boot」ドライブ直下に「ssh」「wpa_supplicant.conf」の2ファイルをコピー
- https://www.raspberrypi.org/documentation/configuration/wireless/headless.md
- 「ssh」:中身は空
- 「wpa_supplicant.conf」:中身は下記
ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=netdev update_config=1 country=JP network={ ssid="[ssid_name]" psk="[password]" }
このSDカードをRaspberry Piに差して起動すると、WiFiに自動で接続してSSHログイン可能な状態で待機していてくれます。
IPアドレス探す
- スマホアプリで同じWiFiに接続して、Raspberry PiのIPアドレスを探す
下記で、WSL(Windows Subsystem for Linux)からRaspberry PiにSSHログインして、Raspberry Piの基本設定をする。
ssh pi@[IPアドレス]
- デフォルトユーザー名:pi
- 初期パスワード:raspberry
IPアドレス固定
「/etc/dhcpcd.conf」ファイルを編集
sudo nano /etc/dhcpcd.conf
下記のような設定を追記(「192.168.111」あたりを、WiFiの設定に合わせて編集)
static ip_address=192.168.111.105/24 static routers=192.168.111.1 static domain_name_servers=192.168.111.1 8.8.8.8
Raspberry Pi基本セットアップ
sudo raspi-config
主な設定項目
- [Change User Password] -> 初期パスワード変更
- [Boot Options]-[Desktop / CLI]-[Console] -> GUI無し。コンソールログイン。
- [LocalisationOptions]
- [Change Locale]-[ja_JP.UTF-8 UTF-8] -> 日本語。文字コードUTF-8
- [Change Timezone]-[Asia]-[Tokyo] -> 日本時間
- [Interfacing Options] -> カメラ・I2Cなどのハードウェアを接続する時はここで設定
- [Advanced Options]-[Memory Split] -> GUIは使わないので、メモリのGPUへの割当分を最小の「16」にする
Visual Studio Code の設定
- 「SSH FS」拡張機能をインストール
- Alt+v でコマンドパレットを開き「SSH FS」のコンフィグファイル作成
- Raspberry PiのIPアドレス・ユーザー名・パスワードを設定して登録
- エクスプローラーに「SSH FILE SYSTEMS」が追加されるので、右クリックで「接続」「切断」を行う
Raspberry Piのシャットダウン・再起動のやり方
下記コマンドで行う
sudo shutdown -h now # シャットダウン sudo shutdown -r now # 再起動
電源は、必ずシャットダウンしてから切る
感想
ネット越しにLチカさせると、何かIoTしてるって感じがしてきます!
作ったアプリはGithubにでも入れておけば、いつでも復旧できるので安心です。
前に買ったけど、思ってたより面倒くさくて放置していた液晶ディスプレイも、ネットのソースコピペですんなり動きました。
やっぱり普段使いのPCでやると作業効率が全然違いますね。
これで興味のあった電子工作を再開できるといいなぁ。
参考記事
https://qiita.com/JHiyama/items/158ab35ed0247a7fc406