1
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

Moddable SDKのターゲットデバイスにATOMS3を追加してみた

Last updated at Posted at 2023-01-02

はじめに

2022年12月23日にATOMS3が(日本で)発売になり、入手することができたので、Moddable SDKのターゲットデバイスに追加する過程をメモに残します。(2022年12月27日に入手)

以前、M5StickC Plusを追加したことがあったので、おおよその見当はついていましたが、いくつかハマりどころがありました。

開発環境の構築

こちらの記事を参考に、サンプルコードが動作することを確認しました。
M5AtomS3ではなく、M5Unifiedで動作を確認しました。

液晶ディスプレイ(液晶ドライバ)

ATOMS3のMCUはESP32-S3で、扱うのは初めてでしたが、Moddable SDKのターゲットデバイスにESP32-S3-DevKitC、Adafruit QT Py ESP32-S3、Adafruit ESP32-S3 TFT Featherが登録されていましたので、参考にしました。

液晶ディスプレイはGC9107で、こちらも扱うのは初めてでしたが、事前にデータシートにアクセスできたのと、ST7789互換という情報をいただいたので、あまり心配していませんでしたが、結果的に動かすまで一苦労ありました。

仕様調査

ST7789のinitコードでは動作しなかったので、サンプルコードが動作したM5Unifiedのinitコードを確認しました。
実際にはM5GFXの中でinitコードを確認することができます。

そのままのinitコードでは、最初、動かなかったので、同じ液晶ディスプレイを使用しているLILYGO T-QTのinitコードを確認しました。

initコードは似ていますが、部分的に異なっています。また、データシートに記載されていないコマンドコードもあり、解釈が難航しました。(コマンドコードの意味が判明していないものが残りました)
結果的にInter register enable 1 (FEh)、Inter register enable 2 (EFh)のコマンドコードを送るタイミングを調整(遅延の時間を変更)して、動くようになりました。

表示位置のズレは(行方向の)オフセット値を調整し、回転操作(ローテーション)も問題ないことを確認しました。

表示色(色味)のズレ

動作テストも終盤になり、(Node-RED MCU Dashboardの)表示色がおかしいことに気づきました。

(M5Stack FIREは色味が異なっていますが、正面から見ると正常で、見る角度によって色味が変わっています。)

IMG_3305.jpg

色指定の順番(RGB、BGR)と色の反転(DISPLAY Inversion)を疑い、データシートを参考にして、initコードを変更したところ、問題を解消できました。

  • M5GFXのinitコード → 色指定をRGB→BGR、DISPLAY InversionをON→OFFへ変更
  • LILYGO T-QTのinitコード → DISPLAY InversionをON→OFFへ変更

GC9107の設定を追加し、パラメータシート(比較表)を更新しました。

6軸IMU (MPU6886)

最初、M5Atom Matrixと同じ設定をしたところ、Y軸の向きが反転していると指摘をいただきました。

M5StickC Plusで液晶ディスプレイ表示を見ながら動作を確認しました。

setup-target.jsの中でX軸、Y軸、Z軸の向きと値を入れ替えて問題を解消できました。

ついでに、ボタンが1つしかないので、ボタンを押す度にAccelとGyroの表示を切り替えるサンプルコードを作成しました。

さいごに

一通りテストで問題が出なくなったので、プルリク(PR)を送りました!

  • Moddable SDKのサンプルコード(piu/balls、piu/images)
  • Node-RED MCUフロー(コアノード、ネットワーク接続)、Sensorノード(I2Cでdefault(GroveポートにM5 ENV Ⅲ Unit)、internal(MPU6886))、rpi-gpioノード(ボタン)、Dashboardノード(ボタン、テキスト、ゲージ)

IMG_3316.jpg

1
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?