最初は立たなくてとても苦労しました。原因はプログラムのループにかかる時間で、最初はカッコつけのために画面に角度を表示するようにしていたのですが、思っていた以上に描画に時間がかかっていたようで(30msくらい)描画の処理を外したところ安定して倒立することができました。
倒立する事ができます。
TCP通信を使って外部からパラメータを調整することができます。
M5Stack Gray上で主な計算をします。(以降M5Stack GrayをM5Stackと呼びます)
M5Stack上には9軸IMUが乗っているのでそれを使用して角度を計算します。
M5Stack上ではFreeRTOSが動作していて、2コアで動作するM5Stackでは1コア目でWiFiとTCP通信の処理、2コア目でメインの計算などのプログラムが動作しています。
メインの計算は200Hzで動作していて、最速で3~4msでループが回っています。200Hzでは5msで動作する必要があるので少し余裕があります。