全体表示

[ リスト ]

CJMCU-811をESP8266で使う

CJMCU-811 (CCS811) を ESP8266で使おうと試したが動作させることができるようになるまでに時間がかかった。

ライブラリには https://github.com/AKstudios/CCS811-library を使う。
まず、Error: Incorrect Hardware ID detected が出てしまう問題があった。ADDをオープンにしているのが良くなかった。VCCにつないでデバイスのI2Cアドレスとして 0x5Bを使い、WAKEもGNDにつなぐことでこの問題は解決した。しかし、ADDとWAKEの一方だけではうごかなかったので手間取った。後で試すとWAKEはESP8266のピンにつないでも動作したのだが...。
CJMCU-811の回路図がないのでプルアップなどがされているのかわからないのが問題といえば問題。

次に、Error: Firmware still in boot modeがでた。
boot mode から application mode に移行するのに時間がかかっているようなので、モードの移行のwriteの後に遅延を入れた。
delayを最初1000msに設定することで動作するようになった。しかし、後で試すとこれでも同じエラーが出たので delay(3000)にしたら大丈夫になった。これも適切な値が何かよく分かっていない。初期化なので繰り返しはしないが、3秒は長い気がする。

これで一応動作するようになった。最初はCO2が0とか400ppm、TVOCが0ppmとなっていた。しかし、アルコール消毒スプレーを散布すると数値が上がるので反応していると考える。
しかし、TVOCだけではなく、CO2も大きく変動している。
Spark Funの次のページのコメントにあるようにCO2は計算で求めているだけで測っているのではなさそう。

その後、WAKEの端子をオープンにしても動作していたりしたが、何度も試すとダメな場合もあり、大丈夫でも測定値が大きく変わってしまってWAKEをGNDにつないでも元の数値に戻らない。しかし、リセットすると元の値に近い値に戻るということでWAKEの影響が測定値にどのように影響するのかはっきりしない。
WAKEをライブラリの本来の使い方でESP8266のピンで制御しても動作することを確認した。最初なぜ動かなかったのかよく分からない。

CJMCU-811の回路図がないとはっきりしない。

しばらく通電状態で試していたら数値の動きがでてきた感じ。しばらく様子をみることにする。



閉じる コメント(0)

コメント投稿

顔アイコン

顔アイコン・表示画像の選択

名前パスワードブログ
絵文字
×
  • オリジナル
  • SoftBank1
  • SoftBank2
  • SoftBank3
  • SoftBank4
  • docomo1
  • docomo2
  • au1
  • au2
  • au3
  • au4
投稿

.


プライバシー -  利用規約 -  メディアステートメント -  ガイドライン -  順守事項 -  ご意見・ご要望 -  ヘルプ・お問い合わせ

Copyright (C) 2019 Yahoo Japan Corporation. All Rights Reserved.

みんなの更新記事