5. ゲートウェイの初期設定

5.1. 準備

購入したばかりのRaspberry piにMy IoTへの接続およびMSM-PF竹端末と接続する手順について説明します。
EPFC部会員向けサイト(https://www.epfc.jp/bukai/iot-park/)のMSM-PF設定ツールにあるMSM-PF竹ゲートウェイ初期設定ファイル(MSM_PF_TakeGW_Tools.zip)をダウンロードし解凍します。
解凍すると以下のファイルが生成されます。
・ My IoT対応設定手順書:IoTストア_エッジGW_デフォルトOSイメージセットアップ手順書_v0.4_TLO_20220113.xls
・ My IoT対応スクリプトファイル:sip-iotstore-node-red-flow-feature-aws-2022-2Q_20220926.zip
・ MSM-PF竹端末用アプリケーション:gateway230228.zip
解凍したファイルは、この後で説明する手順の中で使用方法について説明します

5.2. Ubuntu OSのインストール

Ubuntuのインストールサイト(https://ubuntu.com/download/raspberry-pi)にアクセスし、uSDカードにOSイメージをインストールします。
uSDカードをRaspberry Piに挿入し電源を起動すると、自動的にOSの初期設定が開始されます。
初期設定時のYour Nameとusernameは必ず”ubuntu”という名前で作成する必要があります
パスワードは任意に設定します。 事務局でプリインストールした時の初期パスワードは”Dspc2022!”になります。
loginオプションははautomaticallyを選択します。

5.3. My IoT向けライブラリ・ツールのインストール

準備のところで解凍したファイルIoTストア_エッジGW_デフォルトOSイメージセットアップ手順書_v0.4_TLO_20220113.xlsに記載されている手順に従ってライブラリ・アプリのインストールを実施します。

注意事項
usbmountは、ubuntuインストール時にインストールされているのでインストールは不要です。
スクリプトファイルをインストールする場合、スクリプトファイル(sip-iotstore-node-red-flow-feature-aws-2022-2Q_20220926.zip)を解凍するためのパスワードについては
EPFCお問い合わせ先への連絡をお願いします。

手順書の記載された手順がすべて終了した後、プロビジョニング用証明書をダウンロードする必要があります。
ログインパスワードにつきましてはEPFCお問い合わせ先への連絡をお願いします。
上記サイト画面の左側のメニューより、セットアップ→プロビジョニング用証明書の画面から証明書をダウンロードしzipファイルを解凍。USBメモリにMyIoTフォルダを作成し、解凍した証明書をその中に保存。USBメモリをMSM-PF竹ゲートウェイに接続したままリブートすると自動的に証明書が本体にダウンロードされます。以降USBメモリは不要となります。

5.4. MSM-PF竹端末用アプリのインストール

(1)アプリケーションプログラムのインストール
準備の際解凍したMSM-PF竹端末用アプリケーション:gateway230228.zipをhomeディレクトリにコピーし解凍する。
gateway230228というディレクトリが生成されるので、ディレクトリ名をgatewayに変更する。
解凍後のMSM-PF竹端末用アプリのディレクトリ構造は以下となります
gateway
├── gateway/cloud_cert
│   ├── gateway/cloud_cert/AWS_IoT_cert
│   │   ├── gateway/cloud_cert/AWS_IoT_cert/Amazon-root-CA-1.pem
│   ├── gateway/cloud_cert/Mqtt_broker_cert
│   │   ├── gateway/cloud_cert/Mqtt_broker_cert/TAKE001
│   │   │   ├── gateway/cloud_cert/Mqtt_broker_cert/TAKE001/client.crt
│   │   │   ├── gateway/cloud_cert/Mqtt_broker_cert/TAKE001/client.key
│   │   │   ├── gateway/cloud_cert/Mqtt_broker_cert/TAKE001/msmpf_private_CA.crt
│   │   ├── gateway/cloud_cert/Mqtt_broker_cert/TAKE002
│   │   │   ├── gateway/cloud_cert/Mqtt_broker_cert/TAKE002/client.crt
│   │   │   ├── gateway/cloud_cert/Mqtt_broker_cert/TAKE002/client.key
│   │   │   ├── gateway/cloud_cert/Mqtt_broker_cert/TAKE002/msmpf_private_CA.crt
├── gateway/configuration
│   ├── gateway/configuration/setting.ini
├── gateway/app_config.py
├── gateway/cloud.py
├── gateway/data_transform.py
├── gateway/gateway.py
├── gateway/main.py
└── gateway/sensor.py
└── gateway/sensorDataStructure.py
└── gateway/sensorLora.py
└── gateway/gateway.service

(2)必要ドライバのインストール
アプリケーションプログラムを実行するために、以下のドライバをインストールします。

>sudo apt-get install libusb-dev libdbus-1-dev libglib2.0-dev libical-dev libreadline-dev libdbus-glib-1-dev unzip
>pip3 install setuptools==58
>pip3 install protlib gatt
>pip3 install awsiot awsiotsdk
>pip3 install numpy
>sudo apt-get install python3-dbus
>pip3 install paho-mqtt
>pip3 install pyserial

(3)My IoT - MSM-PFクラウド連携

My IoT画面から、MSM PFのデータを連携させるために以下の作業を行います
a)My IoT管理者に、My-IoTへ接続したゲートウェイと、MSM-PF竹端末(TAKExxx)との紐づけをお願いします。
b)ゲートウェイアプリの初期設定ファイルに記載のあるendpoint接続先をMy IoTのサーバーへ変更します。
  gateway/configuration/setting.ini

[MQTT_BROKER_1]
private_CA_path = ./cloud_cert/Mqtt_broker_cert/TAKE001/msmpf_private_CA.crt
certificate_path = ./cloud_cert/Mqtt_broker_cert/TAKE001/client.crt
private_key_path = ./cloud_cert/Mqtt_broker_cert/TAKE001/client.key
endpoint = msmpf-edge-data.park.epfc.jp
port = 8883
id = TAKE001