机上の空論主義者

-♰- 有言不実行の自身をブログ名で戒めろ -♰-

M5stackが大流行した秘密を自作基板との比較から考える

こんにちは。

皆さんにとってはM5stackの時代は終わり、M5stack Core2に騒いでいることでしょうが、僕は時代が止まっているので今更M5stack Core1に手を付けました。

というのも、昔の記事で「M5stackに100歩届かず」なんてタイトルにしながら、一回も触ったことがないのは問題だと感じたためです。
嘘です。ただやりたかっただけ。

ume-boshi.hatenablog.jp

先日、M5stackGray(2018年)を研究室から借りることができたため、自作基板と比較して何が優れているのか・なぜ大流行したのかを考えてみました 。


これが比較対象としたM5stackGrayと自作基板です(前者画像はswitch scienceのHPより)。

https://d2air1d4eqhwg2.cloudfront.net/images/3648/500x500/d52de1b8-d6b8-4b62-bd54-54e3f473ac89.jpg

f:id:ume-boshi:20200723033355j:plain:w400
自作基板のかっこいい写真

特徴を洗い出す

まず手始めに、それぞれの特徴について分析しました。特徴分析のために下記の3項目について特徴を列挙しています。
・M5stackと自作基板の同じ点
・M5stackのいいところ
・自作基板のいいところ

M5stackと同じところ

まずは自作基板(一般人の頭で思いつく機能)と同じ点について列挙してみます。

  • SDカードを刺せる
  • 9軸センサがついてる(M5stackはMPU6886かBMM150らしい)
  • ボタンがついている
  • ディスプレイがついている
  • サイズがほぼ同じ
  • SPI、I2Cのピン(コネクタ)に一般対応している
  • 分解できる


SPIやI2Cという拡張性は残しながら、9軸センサやSDカードといった組込み系ではよく使用するものの、後付けで追加するのは面倒くさい機能を常備しているといった所でしょうか。常備でディスプレイを採用したことにより、出力できる箇所を莫大に増やせるという利点が生まれます。つまり、従来の開発ボードは限られた個数のLEDや音のみで出力を行なっていましたが、ディスプレイでは{ピクセル個 x 色域}だけの出力の表現力を持たせることができます。


M5stackのいいところ

次に、M5stackの特別な点について列挙してみます。

  • ケースがある → コネクタがつけやすい
  • 机においてもグリップがあるので滑らない!
  • 同じピン番号のコネクタが左右から出ており、なおかつオスメスで使用することができる さらに用途と自由なピン番号の表示の2種類にある
  • Groveコネクタを採用している
  • TypeCなので、書き込みが容易である
  • 別基板をスタック可能
  • ネジ穴付き?
  • ESP-WROOM-32にアンテナがついている
  • 低ピンヘッダを用いている(存在すら知らなかった)
  • 電池制御IC IP5306を搭載している
  • USB2UARTのIC IC2104 SIL NS4148 を搭載している
  • スピーカ用のアンプ
  • バッテリーが内蔵されている
  • 別の機能を持つ基板をスタックできる
  • (CORE2に限り)タッチパネルを搭載


拡張性を設けただけでなく、一般利用向けにGroveコネクタへの統一や、ケースへのピン番号の印字など使用感を高めていることがわかります。また、TypeCの採用や書き込み機、バッテリー内蔵をしたことにより、使用上のちょっとした面倒ごと(差し込む向きやバッテリー保管場所など)へ対応しています。

また、大量生産ができるため部品の小型化がされており、その分多くの機能が搭載できているのだなと感じました。私はリフローができないため、一部の表面実装部品が実装できません。。。

最後に、CORE2に限りますが、タッチパネルを搭載したことで、インプットの数を莫大に増やせています。これはディスプレイを搭載した理由と同じで、従来はスイッチなどを用いていたところを、極論では無限個のインプットを実現できます。


自作基板の良いところ

最後に、自作基板だけが持つ特徴を列挙してみます。

  • 基板がむき出しなほうが明らかにかっこいい
  • ケースがない分、微妙なずれによってSDカードが抜き差ししづらいことがない
  • 初期でDIPスイッチやフルカラーLED等がある。
  • 書き込みを外付けにしている分、軽量化されている
  • 取り付けが容易
  • M5.power()的な問題を排除できる(はじめてM5stackを触ったときに必要なのを知らなくて躓いた)



なんかぱっとしないですね。主観的な感想が多く、機能的に優れている点があまりありません。取り付けが楽な点は気に入っていますが。

実は、別基板による拡張性があまりない状態なので、拡張性の面でM5stackの利便性には遠く及んでいない感じがします。DIPスイッチやフルカラーLEDを搭載したことにより、パラメータの調節可能性は上がっていますが、まだまだ必要機能を洗い出しできていない感じがしますね。

特徴からわかるM5stackが起こした革命

ここまでM5stackと自作基板の特徴を列挙してきましたが、これらを基に、何がM5stackの起こした革命的な要素だったのか考察してみました。

  • SDカードや9軸センサなどの、使用頻度が高く準備が面倒なものをブラックボックスしHW部分は初心者から隠蔽
  • ディスプレイ / タッチパネルによる出力 / 入力の莫大な増加
  • ケースへの印字やコネクタの統一により、外付け機能の拡張性を向上
  • 別基板をスタック可能で、スタックによる形状変化が少ない
  • TypeCやバッテリー内蔵により、刺す向きや電源不足などの使用上のちょっとした面倒ごとに対応
  • etc...

これだけ革命的な点があれば、大流行する理由もよくわかりますね!

おわりに

やはり一番強烈なインパクトを世間に与えたのは、ディスプレイを初期装備したことなのかな思います。もはや開発ボード界での革命児。

やっぱすげぇや!



さて、私はまだM5stack Core2を手に入れていませんが、皆さんは既に持っているかと思いますので、更なる利点を見つけ出せることでしょう。より広い視野角を持ち、タッチパネルを備えていることは非常に大きな進展です。しかし、スマホの進化と同じように物理的なスイッチを無くしてしまったことは危険な挑戦な気もします。電子工作の1つの利点である物理性を持たなくなってしまう。。。

皆さんはM5stackの発売で、開発生活がどのように変わったでしょうか?この記事を参考に、オリジナルの考察をしてみても面白いかもしれません(なぜ日本でだけ大流行したや、積みstackしてしまう理由など)。



では。