前回、Raspberry Pi Pico Wを使って、 BMP280とSCD40のセンサーで読み取った値を表示するものを試した。
今回は、これをWebブラウザで参照できるようにしたい。
その前に、Pico Wの無線LANモジュールが、ほんのり暖かいせいか、温度がやや高めに表示されるのが気になったので、配置変更。センサー類をPico Wの遠くに配置。
次にWebブラウザから表示できるようにしていく。
以前試した↓ ようにWebSocketで実現しようかと考えた。
同じコードで、再度コンパイルしたところ、今度はエラーになってしまった。
ボードライブラリも、 ESPAsyncWebServer.h もアップデートされていて、不整合が生じるようになってしまったようだ。ChatGPTにいろいろ訊いてみたのだが、いろいろ面倒臭い回答が返ってきたので、あっさり断念。
普通に、Webブラウザから定期的に問い合わせるように、ChatGPTにサンプルプログラムを書いてもらって、移植した。
電源投入時にカウントダウンと一緒に割り当てられたIPアドレスを表示。
そこにアクセス
まぁ、前にも同じようなことをやったので、特に問題なく動作
でも、これだけだとちょっとつまらないと思って、以前に買っておいたRGB LEDのPL9823を付けてCO2濃度に応じた色に発光させるようにする。
あと、SWでOLED表示とLEDのON/OFFの切り替えを出来るようにする。
回路図はこちら↓
RGB LEDは Adafruit_NeoPixelというライブラリを使う。
前にも使ったことが有るので大丈夫だろうと思っていたら、コンパイルでエラーになってしまう。困ったのでChatGPTに訊いたら、どうもボードライブラリと不整合を起こしているらしい。
Adafruit_NeoPixelの以前の安定版を勧められたので、バージョン1.15.1にしてみる
ライブラリマネージャーから1.15.1にインストールし直してからコンパイルすると、今度はちゃんと動くようになった。
CO2濃度に応じて、ちゃんと色が変わる
まぁ、こんなもんぢぁろう。
今回のスケッチはこちら↓ 興味のある方はどうぞ
お知らせ
故あって、家を引っ越すことになった。
引っ越すといっても同じマンション内の別区画への移動なのだが。
ちょっと引っ越し準備で忙しくなってきたので、しばらくお休みします。
「おいらも引っ越すのか? もう4回目だニャ」
あんたは、寝てる間に移動するだけだからね









