Sahara's WebLog

日記のような、備忘録のような、うらみつらみのような、自慢のような…。

ESP-WROOM-02 + Si7021(SHT21 HTU21 GY-21) + Orange Pi PC2

BME280モジュールは実践投入して久しい
気圧はどこで測定しても同じだろうから、温度と湿度だけのセンサーでいいやと思って、Si7021の載ったSHT21 HTU21 GY-21 などどシルク印刷のあるセンサー・モジュール(以後SHT21)を買ってあった。
だいぶ放置していたが、やっと使ってみることにしたのでその覚書き。

ESP-WROOM-02+SSD1306+BME280で使っている外注基板がまだ余っているのでこれを流用する。
BME280モジュールSHT21はピン配列が同じなのでそのまま基板に取り付けて使うことができる。

バッテリー駆動で野外で使おうと思うので、とりあえず表示装置は無しにしてある。

ここのスケッチを参考にさせていただいた。
http://www.esp8266learning.com/esp8266-si7021-temperature-sensor-example.php#codesyntax_1
基板を作るときにI2Cの端子が逆になっていて、その設定がうまくいかないせいか、AdafluitのサンプルやSparkFunのサンプルはうまく動かなかった。
上のコードでは、Wire.begin();をWire.begin(5, 4);とするだけで測定値が表示された。
AdafluitやSparkFunのサンプルではこれがどこにあるのか、どこで設定しているのか探せなかった。
このスケッチに、BME280の基板で使っているサーバー用のデータ転送処理を加えて、すぐにOrange Pi PC2上のサーバーにデータを送ることができた。

左から順に、時刻、気温、湿度、電圧のADC値の順だ。
もっとてこずるかと思ったが、以前書いたコードをコピペするだけでほぼそのまま動いた。

関連ソフトウェア一式を売り出してみた。
https://neo-sahara.booth.pm/items/1924398

このエントリーをはてなブックマークに追加

Posted under: ESP8266, I2C, Orange Pi, 作例


コメントを残す

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

Time limit is exhausted. Please reload CAPTCHA.