カテゴリー
Arduino PlatformIO ラズベリーパイ

天気予報チェッカの作成

今年のゴールデンウィークのオモチャは、Raspberry Pi Picoでした。

作ろうと思ったのは、天気予報のデータを自動取得して、翌日の天気で深夜電力による蓄電量を決め、EchonetTimerに設定するというものです。(今は、手作業でブラウザから設定。)

  • 翌日が晴れなら、深夜電力による充電は抑えめにする。
  • 翌日が雨などで十分な日照が得られそうにない場合は、深夜電力でしっかり充電する。

まずは、天気予報データをRaspberry Pi Picoで取得し、LCDに天気情報表示してみようと思いました。下の写真は(表示部分のみの)完成状態です。

日付の下に表示している3桁の数字(211と101)が天気コードです。

次の目標は、この天気コードと日付を組み合わせて、蓄電量を自動算出することです。

天気データの表示
4種類のボードの組み合わせとなっています。
3Dプリンタで作成したケースに入れた状態です。
カテゴリー
M5Stack PlatformIO

M5Stack(PlatformIO)環境での奇妙なエラーと回避方法

謎のエラーメッセージ

UnicodeDecodeError: ‘cp932’ codec can’t decode byte 0x98 in position 134: illegal multibyte sequence

というエラーメッセージで、C++(Arduino)のswitch~case文の中で起きました。「multibyte」とありますが、特に日本語を使ってるとかはありません。

case 0xc0:
    uint8_t r = 0x00;
    break;
カテゴリー
ESP32 M5Stack PlatformIO

M5Stackのデバッガが欲しくなった→ちょっと難しそう

Qiitaでこんな記事(VSCode+PlatformIOを使ったESP32のデバッグ開発環境)を見つけて、M5Stackでもできるはず、と思いました。

秋月電子で購入した、AE-FT2232が手元にあります。これとM5Stackで使われているESP32を繋げばいいんだろう、と。

カテゴリー
ESP32 M5Stack PlatformIO

M5Stackでもesp32-homekitが動きました

前回記事のesp32-homekitを試すで、M5Stackで動作しなかった原因

WiFi初期化の前に行っている、nvs(non volatile storage)の初期化でエラーになっていたことが原因であるようです。

カテゴリー
ESP32 PlatformIO

esp32-homekitを試す

AppleTVを買った

Apple TVを買ったら、HomeKitに興味が出てきました。

LAN内での操作なら、iPhoneとHomeKitアクセサリだけで完結するようですが、AppleTVをハブとすることで外出先からHomeKitアクセサリのコントロールができるとのこと。

GitHubで公開されているHomeKitライブラリであるesp32-homekitをforkして、試してみました。