Skip to content

Hec-EyeにつながるCO2モニタ

License

Notifications You must be signed in to change notification settings

miminashi/co2mon

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

co2mon

airnorm_mobile

RaspberryPiベースのコネクテッドなCO2モニタ

必要なハードウェア

必須

オプショナル

  • PIX-MT100
    • セルラー回線(LTE)で使用する場合のみ
  • USB接続のGPS受信機
    • 車載の場合など、移動しながら使用する場合のみ
    • GU-902MGG-USBが動作確認済
  • モバイルバッテリー
    • 車載の場合など、移動しながら使用する場合のみ

デプロイ

  • 手順がRaspberryPiのセットアップとアプリケーションのセットアップに分かれています
  • リバースポートフォワードを使用すると、RaspberryPiがどこのネットワークに存在していてもsshでシェルログインが可能になります

RaspberryPiのセットアップ(sshリバースポートフォワードを使用しない場合)

microSDの書き込み

microSDの書込には、write_sd.sh を使用します。

write_sd.sh はカレントディレクトリに ssh_keys ファイルが存在することを期待するので、以下のコマンドを実行して、ssh公開鍵を ssh_keys に書き込んでおきます。

cat ~/.ssh/id_ed25519.pub >> ssh_keys

次に、write_sd.sh を実行します。 <ホスト名> は、設定対象のRaspberryPiに設定したいホスト名です。

./write_sd.sh <ホスト名>

起動と接続の確認

書込が終わったら、RaspberryPiにmicroSDを挿し替えて、イーサネット(LANケーブル)と電源を接続する。 1分ほど待ってOSが起動したら、次のコマンドを実行する。

ssh -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no [email protected] /boot/setup/setup_raspberrypi.sh
# パスワードは raspberry

セットアップが完了すると自動的に再起動する。 これ以降は以下のコマンドでRaspberryPiにシェルログインできる。

ssh pi@<ホスト名>.local

RaspberryPiのセットアップ(sshリバースポートフォワードを使用する場合)

microSDの書き込み

microSDの書込には、write_sd.sh を使用します。

write_sd.sh はカレントディレクトリに ssh_keys ファイルが存在することを期待するので、以下のコマンドを実行して、ssh公開鍵を ssh_keys に書き込んでおきます。

cat ~/.ssh/id_ed25519.pub >> ssh_keys

次に、write_sd.sh を実行します。 <ホスト名> は、設定対象のRaspberryPiに設定したいホスト名です。

./write_sd.sh -p <リバースフォワードで使用するポート> -r <リバースフォワードサーバのIPアドレス> -u <リバースフォワードサーバに接続するユーザ> -k <リバースフォワードサーバのホスト鍵> <ホスト名>

リバースフォワードに使用するsshサーバが22番以外で接続を待ち受けている場合は、以下ように-Pオプションをつけて実行します。

./write_sd.sh -p <リバースフォワードで使用するポート> -r <リバースフォワードサーバのIPアドレス> -P <リバースフォワードサーバのsshポート> -u <リバースフォワードサーバに接続するユーザ> -k <リバースフォワードサーバのホスト鍵> <ホスト名>

起動と接続の確認

書込が終わったら、RaspberryPiにmicroSDを挿し替えて、イーサネット(LANケーブル)と電源を接続する。 1分ほど待ってOSが起動したら、次のコマンドを実行する。

ssh -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no [email protected] /boot/setup/setup_raspberrypi.sh
# パスワードは raspberry

セットアップが完了すると自動的に再起動する。 これ以降は以下のコマンドでRaspberryPiにシェルログインできる。

ssh pi@<ホスト名>

または、

ssh pi@<ホスト名>.local

アプリケーションのデプロイ

  • deploy.shを実行すると、ビルド、Dockerイメージの転送、HecEyeとのペアリング、緯度経度の設定が行われる
  • paring_url はHecEyeでデバイスを追加したときにQRコードの下に表示されるURL
  • targetはssh接続先として有効な文字列
    • RaspberryPiのセットアップ で指定したホスト名を用いて、同一セグメントからアクセスする場合: <ホスト名>.local
  • latは緯度, lng は経度
brew install pv  # 最初の1回のみ
./deploy.sh <target> <paring_url> <lat> <lng>
#
./deploy.sh [email protected] https://demo.hec-eye.jp/a/625c2d59bXXXXXXXX 35.70161 139.75318

co2monを使用しているプロジェクト

開発

開発者向けの情報は DEVELOPMENT.md を見てください

About

Hec-EyeにつながるCO2モニタ

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Shell 96.3%
  • Dockerfile 3.7%