/wfh_monitor

Environment Monitor

Primary LanguageC++MIT LicenseMIT

Build Docs Common

Work from Home Monitor

おうち環境モニター

img

機能

  • Grove接続されたI2C I/Fを持つセンサ値を読み取る
  • LCDに現在の値を表示する
  • microSDカードからの設定の読み書き
  • microSDカードへのセンサ値保存
  • Ambient へのセンサ値送信
  • Taskことに分離された実装による拡張性
    • C/C++の実装経験があれば、自分の好みの機能を追加したり修正したりすることができます
  • Dockerを使ったビルド環境
    • ビルド環境構築に悩む必要はもうありません

必要なもの

接続方法

Wio Terminal 画面左下のGrove Connector に I2C Hub を接続し、 I2C Hub の Grove Connector に BME680 と TSL2561 を接続します。

書き込み方法

  1. Build - Github Actionsからビルド済バイナリをダウンロードします。
  2. Bootloaderモードで起動します
  3. PCに接続するとArduinoのストレージデバイスが見えるので、wfh_monitor.ino.uf2をドライブ上にコピーします
  4. 無事に起動したら完了

設定ファイル

SDカード直下にwfhm.jsonというファイルに設定を記述することで、挙動変更やWiFi機能の有効化を行うことができます。

設定内容

GlobalConfig.h を参照 wfhm.jsonが作成されていないFAT32で初期化されたSDカードを挿入した状態で起動することで、デフォルト設定の雛形が自動作成されます。

コンパイル時定数

SDカードでは設定できず、コンパイル時定数として埋め込まれる設定も存在します。 詳細は FixedConfig.h を参照

依存ライブラリ

素晴らしいライブラリをありがとうございます。

開発者向け情報

ドキュメント

doxygenを整備しています。 Docs - GitHub Actions から最新のものをDLするか、$ docker-compose run docs, $ doxygen等でビルドすることで入手することができます。

FWのビルド方法

Dockerを推奨しますが、同様の環境を作れば任意の環境で開発できます。 安定性確保のためにはlib下のモジュールとバージョンを合わせることを推奨します。

Docker

$ docker-compose run build

Arduino CLI & Python

.lib下にあるライブラリとSeeeduino:seeed_wio_terminalの追加が必要です。 詳しくは arduino-cli.Dockerfile をご参照ください

$ ./build.sh

Arduino IDE

  1. seeed_wio_terminalをボードマネージャから追加します
  2. ./lib下にあるライブラリをインストールします
  3. にwfh_monitor.inoを開いてコンパイルして書き込んでください。

License

MIT