Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
M5Stackボードの選び方
Search
Sponsored
·
SiteGround - Reliable hosting with speed, security, and support you can count on.
→
TANAKA Masayuki
September 23, 2024
Programming
600
0
Share
M5Stackボードの選び方
TANAKA Masayuki
September 23, 2024
More Decks by TANAKA Masayuki
See All by TANAKA Masayuki
一夜漬けULP -アセンブラでM5StickCをLチカ- / LED Blink on M5StickC(ESP32) using Arduino IDE and ULP Debugger
tanakamasayuki
0
3.3k
Other Decks in Programming
See All in Programming
Oxcを導入して開発体験が向上した話
yug1224
4
210
ユニットテストの先へ:テスト技法で要求・仕様を整理するJava開発実践 / Beyond_Unit_Testing_Practical_Java_Development_Techniques_for_Organizing_Requirements_and_Specifications
shimashima35
0
260
今さら聞けないCancellationToken
htkym
0
200
Swiftのレキシカルスコープ管理
kntkymt
0
200
Sans tests, vos agents ne sont pas fiables
nabondance
0
160
3Dシーンの圧縮
fadis
1
420
次世代リンターで探る、tsgo 時代における型認識カスタムルールの現実解
ytakahashii
3
1.2k
不変条件と整合性境界—ビジネスが決める設計判断と実現パターン / Invariants and Consistency Boundaries
nrslib
10
2.8k
GitHub Copilot CLIのいいところ
htkym
2
1.1k
TSKaigi2026-静的解析への投資がAI時代のコード品質を支える ── カスタムESLintルールの設計と運用
hayatokudou
6
1.2k
Skillは並べた。動かなかった。契約で繋いだ。— 65個のSkillから、自走する開発サイクルへ
junholee
0
770
権限チェックの一貫性を型で守る TypeScript による多層防御
mnch
4
890
Featured
See All Featured
Navigating Weather and Climate Data
rabernat
0
200
Producing Creativity
orderedlist
PRO
348
40k
YesSQL, Process and Tooling at Scale
rocio
174
15k
KATA
mclloyd
PRO
35
15k
JAMstack: Web Apps at Ludicrous Speed - All Things Open 2022
reverentgeek
1
450
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
31
3.2k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
333
22k
[RailsConf 2023] Rails as a piece of cake
palkan
59
6.6k
VelocityConf: Rendering Performance Case Studies
addyosmani
333
25k
Breaking role norms: Why Content Design is so much more than writing copy - Taylor Woolridge
uxyall
0
300
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
46
2.8k
SEOcharity - Dark patterns in SEO and UX: How to avoid them and build a more ethical web
sarafernandez
0
190
Transcript
M5Stackボードの選び方 たなかまさゆき 2024/9/23
タカヲ(Takao) @mongonta555
タカヲ(Takao) @mongonta555
タカヲ(Takao) @mongonta555 ①安い・シンプル 1,573円 ②S3+PSRAM+画面 安価な万能機 3,113円 ③バッテリー搭載 バランス型 4,147円
④スタックチャン 8,536円 10,120円 15,565円 15,345円 2,783円 6,743円 1,155円 1,144円
M5Stackボードの選び方 結論 好きなのを 選べばいい!
ESP32シリーズの選び方 ESP32 基本で無難、Bluetooth Classicが使える ESP32-S3 ESP32より少し速くて、USBが使える ESP32-S2 中途半端でおすすめしない ESP32-C2 廉価版でおすすめしない(プロ向け)
ESP32-C3 安価にしたい場合 ESP32-C6 Zigbeeを使う場合 ESP32-C5 (未発売)5GHzのWi-Fiに対応 ゲーム機のコントローラー などで多い
開発環境の選び方 開発環境 言語 備考 ESP-IDF C/C++ プロ向け Arduino(公式) C/C++ NanoC6を開発する場合
Arduino(M5) C/C++ 全員におすすめ 少し古いが安定 PlatformIO C/C++ 中級者以上におすすめ UIFlow ブロック型 入門者におすすめ UIFlow2 ブロック型 中級者以上におすすめ これ以外にもたくさんあるよ!
ESP-IDF • ESP32シリーズの公式開発環境 • 各開発環境はESP-IDF上で動いている • 業務用の安定稼働しているボードは基本はESP-IDFを使う • 新しいチップや新機能は新しいバージョンでのみサポート •
バージョンによる機能差が比較的ある (Arduinoはラッピングされて影響が少なくなっている) • ホビーユースではArduino環境がおすすめ
Arduino 公式環境 • Arduino IDEを利用してC/C++言語での開発 • ボードマネージャーURL https://espressif.github.io/arduino-esp32/package_esp32_index.json • ESP32シリーズ公式開発環境で新しいバージョンで開発が可能
• nanoC6などはESP-IDFか公式環境でないと開発不可 • 2系から3系にバージョンアップしたときに大幅変更が発生 →M5Unifiedがまだ3系に正式対応していない(対応中)
Arduino M5Stack環境 • Arduino IDEを利用してC/C++言語での開発 • ボードマネージャーURL https://m5stack.oss-cn-shenzhen.aliyuncs.com/resource/arduino/package_m5stack_index.json • 少し古いArduino公式バージョンをベースにM5Stackのボードの
みに限定した開発環境 • nanoC6の開発には対応していない • M5Unifiedでの開発をするのであればこの環境がおすすめ
PlatformIO • VSCodeなどのエディタとPlatformIO環境を組み合わせて C/C++言語での開発 • ESP-IDFやArduinoなど複数の環境から選択して開発可能 • defineなどのビルドオプションを指定することが可能 • ライブラリなどのバージョン指定が可能
• ビルドがArduino IDEより早い • arduino-esp32は2系までのサポート(3系はサポート外) →今はいいけれど、バージョンアップに追従できない! 技術的な問題ではなく、契約的な問題で3に対応しないらしい。 非公式なボードマネージャーでは3系を利用可能ですが、複数種類ありどれが主流になるかわからない
UIFlow • https://flow.m5stack.com/ • ブラウザ上でブロックを組み合わせてプログラミング • 内部はMicroPython環境で動作 • まずユニットを動かしてみるときに使いやすい •
無印ESP32のみの対応(ESP32-S3、C3、C6などには非対応) • ボードごとに微妙に違う機能で特に電源周りがカオス
UIFlow2 • 新しいバージョンのMicroPythonで構築しなおしている • ESP32、ESP32-S3が対応(ESP32-C3, C6は非対応) • ボードごとに異なっていた処理を統合して再構築 • 初期化なども適切に分解されており、高度なプログラムが可能
(初心者には複雑に見えるかも?) • ログインが必要になりボード管理が簡単になった (アカウントを作る必要があり、メールアドレスが必要)