Top View


Author yukabeoka

【はじめての Raspberry Pi4】第 1 回 環境センサーと Raspberry Pi のセットアップ

2021/12/08

ざっくり方法

  1. Raspberry Pi の準備
  2. Raspberry Pi -> DynamoDB に IoT Core 経由でデータを貯める
  3. API Gateway で貯まったデータを取得する API を作る

必要なもの

  • Raspberry Pi4
  • HDMI ディスプレイ
  • USB キーボード
  • USB マウス(頑張ればなくてもいける。キーボード猛者なら余裕)
  • MicroSD カード(Raspi キット等を購入すると付属でついているかも)
  • MicroSD カードリーダー(※後述)

【注意】

弊社が購入したセット には SD カードリーダーがついていたのですが、一度 SD カードを差すとめっっっちゃ取りづらくなります。
デバイスの扱いに長けているが苦戦しながらもペンチでそーっとそーっと外しました。
これを毎回は絶対にやりたくないのでカードリーダーは別途用意しようと心に決めました。

【注意2】

今回は Raspberry Pi 4 で検証しました。以前のものと色々仕様が変わっているようなので、まとめ記事を貼っておきます!

インストール

↓ のドキュメントを参考に SD カードに OS を書き込みます。(カードリーダーがないとここで詰む)

何も気にせず Imager ダウンロードを選択すればよいです。

OS は 2 種類あってデスクトップアプリがあるものとないものです。 ターミナルに慣れている方はダウンロードサイズが小さく、黒い画面のみで操るRaspberry Pi OS Liteでもよいです。

SSH の設定

OS のインストールが完了したら、手元の PC から入れるよう SSH の設定を行います。(デフォルト無効とのこと)
マイクロ SD カードを PC につないだまま下記コマンドを実行すれば完了です。

SSH の許可

touch /Volumes/boot/ssh

Wi-Fi の設定

同じように Wi-Fi の設定を書いたファイルを Root に作っておきます。
※ 実際にやってからわかりましたが、ここで設定しなくても GUI だと OS 起動時に初期設定ウィザードが表示されたので、OS 入れたらそのまま Raspberry Pi 起動しても良いかも。。CUI の場合はやっておいたほうが安全そう。

touch /Volumes/boot/wpa_supplicant.conf

wpa_supplicant.conf の中身

country=GB
ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=netdev
update_config=1

network={
    ssid="Your-Wi-Fi"
    psk="Password"
}

とここまでやったら SD カードを PC から取り出し、Raspi に差します。 ディスプレイ、キーボード、マウス等つなぎスイッチオン! ちなみに我が家では反応しないキーボードあったため、相性があるようです。

※Raspi 猛者は当然知ってることかもしれませんが、SD カードを Raspberry Pi から抜くと wpa_supplicant.conf は消えてました。。
ここに気づかずなぜ通信できない?とハマりました。ファイルを再作成して解決。

Bluetooth の設定

GUI の場合、OS が起動したら画面上の Bluetooth アイコンから Bluetooth を有効にします。
※初期設定ウィザードで設定しても OK です!楽!

CUI 用のコマンド

# bluetooth off
sudo hciconfig hci0 down

# bluetooth on
sudo hciconfig hci0 up

環境センサーを見つける

sudo hcitool lescan

LE Scan ...
DD:CC:EE:AA:CC:66 Env

今回の環境センサーとはペアリングせず、ブロードキャストするものを受けとるようにします。
センサーに電池をセットすると一瞬緑に光ります。(電池が少ないと赤になります)
そのタイミングからスキャン可能になっています。
スキャンしてEnv が出てきたら OK です

環境センサーが見つからない場合 bluetooth がうまく行かない場合、パッケージのアップデートをするとうまくいく場合があります。

bluetooth pi-bluetooth bluez bluepy blueman

(最初スキャンできませんでしたが、このあたりをアップデートするとスキャンできるようになっていました… 🤔)

ログイン

ここから Raspberry Pi 単体にし、PC からリモートでもろもろ作業しました。
Terminal or 後述の VSCode から SSH します。

ssh pi@raspberrypi.local

デフォルトのパスワードはraspberryです

めっちゃ便利な VSCode 拡張「Remote - SSH」

Microsoft 様公式の VSCode 拡張 Remote - SSH!!

VSCode から Raspberry Pi へログインできるし、コードも直接いじれます。とても便利!
VSCode 経由でのファイルのドラッグ&ドロップもできました。
SD カードをちまちま差し替えしなくていいのでとても便利!(2 回目)

リモートデスクトップ

試していないですがリモートデスクトップができるようです 👀

つづく

おわりませんでした。
次回は、環境センサーからデータを受け取りパースして IoT Core へ向けて MQTT 通信します。

yukabeoka

yukabeoka

カスタマーサポートからエンジニアにジョブチェンジ。脳の老化に抗いがんばる。最近はAzureにいじめられている。