BMP180で気圧測定(その2 LeifESPBaseHomie使って、MQTTノード化)

     

TAGS:

⌛️ < 1 min.

LeifESPBaseHomieというオープンライブラリを使ったDHT11センサーノードを作ったのですが、そこに、BMP180も追加します。

使っているボードは、NodeMCU1.0です。

なので、I2C通信のピンは、デフォルトでは、SDA -> Pin4(D2), SCL -> Pin5(D1)でした。
ちょうど空いていたのでよかった!

ほとんど、サンプルコードのままですが、以下が使っているコードです。

初期化部分@グローバル変数定義


Adafruit_BMP085 bmp;
接続確認@setupの中


// check BMP180
if (!bmp.begin()) {
	Serial.print("something is wrong for BMP180");
}
LeifESPBaseHomieプロパティ登録@setupの中


// pressure sensor
pPropAirPressure = pProp = pNode->NewProperty();
pProp->strFriendlyName = "AirPressure";
pProp->strID = "airpressure";
pProp->strUnit = "Pa";
pProp->bRetained = true;
pProp->bSettable = false;
pProp->datatype = homieInt;
pProp->SetValue("101325.0"); // default value? = Pa at sea level
気圧Publish@loopの中のどこか


//  update with BMP180 for AirPressure
int airPressure = bmp.readPressure();
sprintf(pressureChar, "%10d", airPressure);
pPropAirPressure->SetValue(pressureChar);
Serial.print("AirPressure : ");
Serial.println(airPressure);

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です