M5Stack製品であまり知られていないテクニック

 TwitterでM5Stack、M5StickC、M5StickVなどM5Stack製品に関するの情報収集していると、M5Stack公式も知らないようなかなりレアな情報を入手できます。Twitterだと流れてしまうので、気づいたものをまとめておきます。

★勝手に集めて載せている情報もあるのですが、もし都合が悪ければ削除しますのでメールやTwitterでご連絡くださいm(_ _)m

 もくじ(Index)

M5Stack関連の目次へ戻る

2019/2以降のM5Stack Grayは大きいサイズのアプリを作ることが可能

 らびやん氏(@lovyan03)に教えていただきました。M5Stack Grayは2019/2頃からFlashメモリが16MBに変更されています。そのため、4MBの頃より大きいサイズのアプリを作成することが可能です。

設定の仕方(ArduinoIDE)

 Borad情報に「M5Stack-Core-ESP32」を使用していると4MBの設定になってしまうので利用できません。ボード:「M5Stack-Fire」に設定し、に変更すると16MBフルに使えるようになります。

 ★ GrayにはPSRAMがないので、「PSRAM:Disabled」にした方が良いと思います。Fire用のアプリを開発する時は注意しましょう。

16MBかどうかの確認方法

 外見や基板を見ても判別不能なので、下記の方法で調べます。

①らびやんランチャーで調べる。

 初心者向けM5Stackの始め方(M5Burner/LovyanLauncher編)を参照してSeriesを「Stack-4MB」で書き込みを行い、起動した後、「Tools」→「System Info」を選択すると「Flash Chip Size」で確認できます。

②AdruinoIDEで書き込むときのログで確認する。

 ArduinoIDEで書き込むときのログで「Auto-detected Flash size: 16MB」というものがあれば16MBです。(たなかまさゆきさん(@tnkmasayuki)からの情報)

readPixel,readRectは動く

 画像を扱うアプリを作るときに躓くことが多いのですが、画面キャプチャーや背景のドットを保存するためのreadPixel、readRectは最近まで動作していませんでした。しかし、らびやん氏(@lovyan03)とTobozo氏(@TobozoTagada)の大発見により動くことが分かりました。ただし、2020/1/21時点ではGitHubのライブラリから最新をダウンロードして使わないといけません。下記はその変更点のCommitです。

RGB565の値はM5.Lcd.color565を使うとすぐ変換可能

In_eSPIライブラリの中にuint16_t color565(uint8_t red, uint8_t green, uint8_t blue)という関数があるので、下記の1行だけでRGB888から変換できます。

uint16_t white = M5.Lcd.color565(255, 255, 255);
uint16_t red = M5.Lcd.color565(255, 0, 0);

使えるGPIO

 GPIOは一見全部使えるように見えるのですが、使い方を気を付けないとうまく動かないという罠が潜んでいます。よく目にするのがGPIO25を利用して爆音が響くなど、、、

 らびやん氏(@lovyan03)がつぶやいていたのでまとめておきます。

★もし追加情報があったら教えてくださいm(_ _)m

一覧

 競合しているGPIOを使うと、ノイズや予期せぬ動きをする場合があります。(特にGPIO25のスピーカーは注意)

備考AnalogM-BUSM-BUSAnalog備考
×GNDG35(ADC)ADC1_CH7〇:入力のみ
×GNDG36(ADC)ADC1_CH0〇:入力のみ
×GNDEN(RST)×

SD,LCDと共有
G23(MOSI)G25(DAC/SPK)ADC2_CH8
スピーカーが鳴る

SD,LCDと共有
G19(MISO)G26(DAC)ADC2_CH9

SD,LCDと共有
G18(SCK)3.3V-×

USB-Serialと競合
G3(RXD0)G1(TXD0)
USB-Serialと競合

PSRAMと競合
G16(RXD2)GPIO17(TXD2)
PSRAMと競合

I2C用
G21(SDA)G22(SCL)
I2C用

※1
ADC2_CH2/T2G2(GPIO)G5(GPIO)

※1
ADC2_CH5G12(IIS_SK)G13(IIS_WS)ADC2_CH4/T4
ADC2_CH3/T3G15(IIS_OUT)G0(IIS_MK)ADC2_CH1/T1
※1
×HPWRG34(IIS_IN)ADC1_CH6〇:入力のみ
×HPWR5V×
×HPWRBATTERY×

※1、接続しているとスケッチの書き込み時や起動に失敗する場合あり

更新履歴

  • 2020/1/21  新規作成

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です