超コンパクトPCのRazspberry Pのモデルで一番安価なのはRaspberry Pi Zero。
5ドルPCという位置づけなので、国内でもかなり安価に入手することができます。
Amazonなどではセットで売りが一般なので、安く本体だけ手に入れるならスイッチサイエンスあたりがよいかと思います。販売価格660円に送料を加えても860円で購入することができます。
ただ、残念ながら、ZeroにはWIFIが内蔵されていないため、以前に言及したようにネットワーク接続にはそれなりにハードルがあります。
Raspberry Pi Zeroのネットワーク接続には、外付けでLAN機器を接続する以外に、USBケーブルでPCと繋ぎ、PC経由でインターネットに接続するOTG(On-The-Go)という方法があります。
これをうまく活用すれば、余ったUSBケーブルとMicroSDカードがあれば、1,000円以下でネットにつなげるPCが作れるわけです(非力なので活用方法は考えないといけないですが)。
というわけで、本日はそれなりに設定が必要な、WindowsパソコンとのUSB-OTG接続について、メモも兼ねて記事にしたいと思います。
Raspberry Pi をOTGで接続するための設定
今回はOSインストール後からスタートです。インストールにについては前の記事を参照ください。SSHを有効にしておくのも忘れずに。
Raspberry Pi OSにおける環境設定
まずUSB OTGを利用するためには、Raspberry Pi OS側に設定を行います。
具体的には、OSを書き込んだSDカードをPCに認識させ、config.txtとcmdline.txtの2つのファイルを編集します(ディスプレイ、キーボードを接続できる方はRaspberryPi上で/boot内のファイルを直接編集しても構いません)。
なお、これらはOS起動に必要なファイルですので誤って壊してしまうと起動できなくなります。心配な人は編集前にファイルのバックアップをとっておきましょう。
config.txt
/boot/config.txtの最終行に、USB OTGの有効化を追加するdtoverlay=dwc2を1行を入力します。
[all]
#dtoverlay=vc4-fkms-v3ddtoverlay=dwc2
cmdline.txt
modules-load=dwc2,g_etherをrootwaitのあとに追記します。改行を入れずに半角スペース区切りで続けて記述するように注意します。
console=serial0,115200 console=tty1 root=PARTUUID=2fed7fee-02 rootfstype=ext4 elevator=deadline fsck.repair=yes rootwait modules-load=dwc2,g_ether quiet init=/usr/lib/raspi-config/init_resize.sh
なお、OSバージョンによって内容が異なる場合があるため、全文コピペはおすすめしません。自分のファイルを直接修正する方が無難です。
ファイルの修正が終わったら、SDカードをRaspberry Piに挿してUSBケーブルでPCと接続します。PCと接続する際は、通常使用する電源用のUSBポートではなく、基板中央よりの外部機器用のUSBポートにケーブルを接続します。
なお、ケーブルはデータ伝送ができるUSBケーブルであることが必要。見た目ではわかない電源専用のUSBケーブルを使うと、うまくいかずはまってしまいます。
Windowsパソコンの設定(デバイスドライバのインストール)
WindowsパソコンからOTGで接続するためには、Windows側でRaspberry Piをネットワーク機器として認識させる設定が必要となります。
具体的には、USBケーブルでつないだRaspberry Piを有線LANとして認識するためのデバイスドライバのインストールをします。
www.catalog.update.microsoft.com
ドライバ名は「 Acer Incorporated. - Other hardware - USB Ethernet/RNDIS Gadget」上記のサイトから21kbのファイルをダウンロードしますが、場所はよく変わっているようですので、検索してみてください。
コントロールパネルのデバイスドライバで、「ポート(COMとLPT)」を選び「ドライバの更新」で、ダウンロードしたファイルを選べばインストールできます。
・・・しかしながら、わが家でメインに使用していたノートパソコンには、更新対象の「COMまたはLPTポート」がそもそもありませんでした。
仕方ないので、ドライバのファイルをエクスプローラーで右クリックして直接インストールしました。
いずれにしても、最終的に「ネットワークアダプター」に機器が出現すれば成功です。
ネットワーク接続に新たなネットワークが出現します(USB-OTGと名前をつけました)。
ネットワークの共有でインターネットアクセス
Raspberry Pi側からインターネットにアクセスするためには、ネットワークの共有でインターネットに接続しているPCから接続します。
先ほどの「ネットワーク接続」から、インターネットに接続しているネットワークを選び設定画面をだします。
チェックをすると、PCのネット接続がRasoberry Pi側にも共有され、インターネットに接続ができるようになります。
上はリモートデスクトップを使って、Raspberry Pi Zeroから本ページにアクセスさせた画面。(Raspberry Pi Zeroは非力なので、上記のようなデスクトップ環境は表示はできるものの実用可能な速度ではありません)。