M5StickCPlusとWi-SUN HATでスマートメータから情報を得る
M5Stick-CとWi-SUN HAT(BP35A1)を接続する。
WiFiとスマートメータールートBとAWS IoT Coreの接続情報をjson形式で書いてdata/settings.json
ファイルに保存する。
(data/
ディレクトリがない場合は作る。)
接続情報例(data/settings.json)
{
"wifi": {
"SSID": "************",
"password": "********"
},
"RouteB": {
"id": "********************************",
"password": "************"
},
"DeviceId": "********",
"SensorId": "**********",
"AwsIoT": {
"Endpoint": "***************************************************",
"root_ca_file": "/AmazonRootCA1.pem",
"certificate_file": "/certificate.pem.crt",
"private_key_file": "/private.pem.key"
}
}
DeviceIdはMQTT publish / subscribe 識別用(自由に決めればよい)
SensorIdはDynamo DBのパーティションキー(自由に決めればよい)
AWS IoTからダウンロードした証明書ファイル
- AmazonRootCA1.pem("-----BEGIN CERTIFICATE-----"から始まるファイル)
- certificate.pem.crt("-----BEGIN CERTIFICATE-----"から始まるファイル)
- private.pem.key("-----BEGIN RSA PRIVATE KEY-----"から始まるファイル)
以上のAWS IoT 証明書ファイルをdata/
におく。
AWS IoTからダウンロードした証明書ファイル(public.pem.keyは不要)
こんなの
AmazonRootCA1.pem
6*************************************************************76-certificate.pem.crt
6*************************************************************76-private.pem.key
は長いので適当にリネームする。
PlatformIO で Upload Filesystem Image するとdata/
ディレクトリの内容がM5Stickにアップロードされる。
PlatformIO で Build & Upload する。
AWS IoTページのMQTTテストクライアントで device/+/data
をサブスクライブすると、これが発行するMQTT通信が(うまくいっていると)見られる。