自宅環境観測プローブ

Prometheusで自宅環境を観測するためのExpoter

Goで書いています。(go version go1.21.0 linux/arm)

センサなど

ハードウェアは Raspberry Pi Zero W を使っていますが、必要なI/Fが実装されていれば他のでもいけそう。

ビルド

makeco2/i2cdev/wxbeacon2の3バイナリを作ります。 ./binにバイナリを吐くので、sudo mv ./bin/* /usr/local/bin/などで。

GitHub Actionsでarmとarm64のビルドを作ってReleaseに入るようにしてあります。

起動設定

unit にそれぞれのバイナリを起動するためのsystemd sample unitファイル例を入れてあります。

listenするアドレスはデフォルトで:9821ですが、--listenで適当に変更して衝突しないようにしてください。

  • co2
    • MH-Z19Bへアクセスできるtty deviceのpathを引数--mhz19で渡してください。
  • i2cdev
    • Raspberry Pi OSの場合、起動ユーザがi2cグループメンバである必要があります。
    • BME280の出力する温度情報はどうも数度高めに出るようなので、--temp_offsetでオフセットを設定できるようにしてあります。
    • 海面更正気圧を記録する場合は--above_sea_levelに海抜(m)を設定してください。
  • wxbeacon2
    • Linuxの場合、BLEの操作にCAP_NET_ADMINが必要です。
    • WxBeacon2のMacアドレスを引数--wxbeaconに渡してください。
    • 海面更正気圧を記録する場合は--above_sea_levelに海抜(m)を設定してください。

ライセンス

MIT

作者

walkure