2022年10月8日土曜日

M5StickC Plus + LINE Notify

SGP30 を利用したタバコ検知の続きです。

窓を閉める季節になってしまい、音のデータ取得を中止しました。貯めたデータでは、低周波側でいくらか特徴のあるピークを得られたものの、ノイズと綺麗に分離できるほどでもない程度でした。

今期のコードは TVOC と eCO2 の両方が閾値を超えたら ライト点滅、ブザー発信、LINE に観測値を送る、という仕様にとどめました。eCO2 も急上昇することが分かったので、両方を組み合わせました。

LINE に関しては、異なる部屋にいたときになかなか気づかないことがあったので、その対応策です。ただ、これにハマりました。
API が用意されていますのでそれを叩くだけ & コードはネットに転がっている & どれも同じ内容、なので間違えようがないのです。でも、スマホに着信しない。Windows から叩いてみると着信しますので、環境的に使えないわけではありません。

3日ほど試行錯誤した結果、原因がわかりました。
常時データを送信している Ambient は WiFiClient でないとダメ、LINE Notify は WiFiClientSecure でないとダメ、でした。
もう一つ、void setup()  に setInsecure(); も必要でした。 

Ambient ambient;
WiFiClient client;
void ambientConnect(){
・・・
}

WiFiClientSecure clientS;
void lnotify(String msg){
・・・
}

void setup() {
  ・・・
    clientS.setInsecure();

これをクリアすれば、着信しました。

今期はココまで。また春に出番が来たら、起こしましょう。

0 件のコメント:

コメントを投稿