M5Atomのライブラリの displaybuff() が変?

M5Stack

 M5Atom用のライブラリを作成中。勉強をかねて。いよいよ公開できそう、という時点で、そういえばM5Atom自体のライブラリを更新してなかったと気づき。最新の0.0.5にしたら見事動かず! がっくり。

 FastLEDも更新したけどだめ。バージョンをいくつか試したら、Arduino IDEのライブラリマネージャーでダウンロードできる0.0.1、0.0.2、0.0.3では問題なし。GitHubの公式にある0.0.4でも問題なく動く(0.0.4のプロパティには0.0.3とあったけど、内容は違う)。

m5stack / M5Atom

 むむう。困ったのでさらに調べる。まずは確認。公式のサンプルで displaybuff() を使っている Button を試す。これも0.0.4までは問題なく動くけど、0.0.5ではだめ。表示がおかしくなる。全面表示されるはずが、下の方が欠けてるというか、なんか変。

 左が0.0.3、右が最新の0.0.5。そういえば色もおかしい。ほんとは左の赤が正解。

 一方、animation()とかは普通に動くんだよな。 displaybuff() だけがだめ。

 さてどうしよう。

その後

 ここから追記。

 ツイッターでのやりとりでいろいろなことが判明。バッファを作成する際に以下のような記述が必要になったとのこと。これでサンプルのButtonも正常な形状が再現される。

 M5.dis.setWidthHeight(5, 5);

 サンプルのButtonであれば、最初の方にある setBuff() の定義の1行目に追加すればOK(DisBuff[0] = 0x05; の前)。ほかでもいいかもだけど、とりあえずこれで動いた。

 また、色のバグが出現。RとGが逆になる。これまでのバージョンではdrawpix()などCRGBを使うやつで色が逆になっていた。displaybuff()はそうではなかったため、そのバグの対象外だった。ところが今回の0.0.5で行われた新たなバグ潰しのための改修が、別のところに波及したという感じだろうか。

 ツイッターでのやりとりはこのへん

 M5Stackのアカウントが「いいね」しているので、状況は把握してくれてるのかもしれない。修正を待つしかないかなあ。

コメント