しぐれめも

何か作る過程をメモとして残したり、あと雑記

NeoPixelでabortしたらUpdate

Seeeduino Xiaoで動いていたスケッチ(プログラム)を、思い付きでM5 ATOMで動かしてみようとしたら、なぜか動かない。というかリセットを繰り返す。

試しにUSBケーブルをつないでprintデバッグしてみたところ、Adafruit_NeoPixelライブラリで実装されている関数「show()」でコケているらしい。

☝USB Serialで.show()の前後に文字を出すようにしてみたところ、

☝シリアルモニタで見ると「done.」が出力されることなく abort() が実行されている。

Adafruit_NeoPixel のshow関数の実装を見ると、使用するMCUマイコン)毎に分岐してアセンブリのコードで信号出力をしている模様。つまり、M5-ATOMは非対応なの?そんな~。と悲しい気持ちになっていたのですが。Adafruit_NeoPixelのライブラリいつインストールしたんやっけ?とふと思い、確認。「ツール」>「ライブラリを管理」からライブラリマネージャを開いて、Adafruit_NeoPixelを探します。

☝使っているのがバージョン「1.10.5」、最新が「1.11.0」。かなり更新サボってたわ

てへぺろ (・ω<)

というわけで「更新」ボタンをポチっとしてアップデート。

コンパイルして実行したら普通に動いた。LEDもちゃんと光っています✨

と、いう訳で。ライブラリのアップデートはちゃんとしようね。という教訓を得たのでした。