Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
Moddableで始めるJavaScript×IoT開発
Search
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
Shinya Ishikawa
July 14, 2020
Technology
190
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Moddableで始めるJavaScript×IoT開発
M5Stackユーザーミーティング vol.8 の発表資料です。
Shinya Ishikawa
July 14, 2020
More Decks by Shinya Ishikawa
See All by Shinya Ishikawa
なぜModdableで作るのか(あるWeb屋さんの場合)
meganetaaan
0
140
Other Decks in Technology
See All in Technology
Optunaの最新リリースv5.0について
pfn
PRO
0
120
「Docker Desktop不要の時代」は 来たのか?
ueponx
0
770
日本語に強いオープンな大規模言語モデル「LLM-jp」
odashi
4
1.1k
サブエージェントと Claude Mods で作る独自 Advisor ツールの話
kenichiodo
2
160
NDIでApple Vision Proにリアルタイム映像送信
jyouryuusui
0
120
QA4AI 2026-Oct 生成AI時代の品質保証
tokuty
1
860
分析の民主化を支えるメタデータ整備の実践
kakehashi
PRO
4
1.4k
Webの常識が通じないHTMLメールのダークモード
teamlab
PRO
0
120
DWH の限界突破! AI エージェント向け爆速リアルタイムデータ基盤 ClickHouse
jozono
1
470
1つのリクエストを追って理解する - llm-dのP/D分離
akhino
1
160
「事実」を「計測」して、「解釈」する 〜AWS Lambdaのメモリ最適解の見つけ方〜
maimyyym
0
170
子育てエンジニアの可処分時間が減っても成長を諦めない戦い方
sudoakiy
6
4.6k
Featured
See All Featured
Site-Speed That Sticks
csswizardry
13
1.6k
What does AI have to do with Human Rights?
axbom
PRO
1
2.5k
Lightning talk: Run Django tests with GitHub Actions
sabderemane
0
300
Self-Hosted WebAssembly Runtime for Runtime-Neutral Checkpoint/Restore in Edge–Cloud Continuum
chikuwait
0
890
Paper Plane
katiecoart
PRO
5
54k
Building an army of robots
kneath
307
47k
The Organizational Zoo: Understanding Human Behavior Agility Through Metaphoric Constructive Conversations (based on the works of Arthur Shelley, Ph.D)
kimpetersen
PRO
0
500
Rails Girls Zürich Keynote
gr2m
96
14k
Leveraging Curiosity to Care for An Aging Population
cassininazir
1
540
Context Engineering - Making Every Token Count
addyosmani
9
1.2k
GraphQLとの向き合い方2022年版
quramy
50
15k
[Rails World 2026] Durable orchestration on Rails: from continuation to workflow
palkan
1
750
Transcript
Moddableで始める JavaScript × IoT開発 あるフロントエンドエンジニアの場合 ししかわ @meganetaaan https://meganetaaan.github.io/
ししかわ@meganetaaan • M5Stack-Avatar作者 • 株式会社アールティ ◦ フロントエンドエンジニア 兼 ロボットエンジニア見習い •
M5Stack自慢大会へのエントリーを完全に忘れていたうっかりさん やっちまったな!
Moddableはいいぞ! #M5Stack_UGjp お伝えしたいこと
Moddableとは • JavaScriptでIoTアプリケーションが作れるプラットフォーム • M5Stack/M5StickCにも対応している https://www.moddable.com/
背景: ArduinoでIoTを始めた フロントエンドエンジニアの悩み いっぱいセンサとかモータまわして 低レイヤつよつよになるぞ~
悩み1:C/C++がわからなくて、疲弊する • デバイス側で動くコードはC/C++ • 組み込みの知識とCの文法を同時に学習する必要 • 最初はArduinoのサンプルスケッチのコピペでなんとなく動くが ◦ 応用が効かない ◦
何かトラブルがあったら自分で解決できない !?!?? !?!?! ??!!? 詰む…
悩み2:凝ったUIが作れなくて、もんもんとする • 普段Webブラウザ越しのこういう ↓ 画面を見慣れている https://experience.soletanche-bachy.com/en/T219-metro-singapore • 画面に映えが足りない… 積む… 夜の砂漠のように
荒涼としている
Moddableなら… C/C++がわからない… JavaScriptが使える! 凝ったUIが作れない… 画像も音声も タッチ入力も自在! つまない!!
Moddableの特徴*2
極小JavaScriptエンジン「XS」 • ModdableのコアとなるJavaScriptエンジン • RAMが少ないマイコンでも動く • オフラインでも動く • 小さいのにECMAScriptの最新仕様をほぼ網羅
99.6% ModdableのEcmaScript仕様適合率 https://github.com/tc39/test262 ↓つまり ChromeとかFirefoxと同じレベルで全部の文法が使えるってこと!
マイコン向けUIフレームワーク「piu」 • Moddableに同梱のUIフレームワーク • モダンなUI構築のための機能が全部入り ◦ ☑文字 ◦ ☑画像 ◦
☑音声 ◦ ☑タッチ入力 ▪ (M5Core2が来れば…!) ◦ ☑アニメーション/トランジション ◦ ☑レスポンシブデザイン ◦ ☑コンポーネント指向 ◦ ☑国際化対応
「良さそう」と思いましたか?
実際
Moddableはいいぞ! #M5Stack_UGjp お伝えしたいこと(再掲)
前置きが長くなりましたが
作品自慢します!
作例1:たたけ!ボンゴキャット https://github.com/meganetaaan/moddable-examples/ • ボタンを押す→ニャーンと鳴く • MACアドレスを使って背景色算出 →端末によって色とりどりのキャット 音声 C API
画像 (PNG)
作例2:ゲーミング板 • ゲーミング概念を板状に固めたもの • NeoPixel(WS2812B) NeoPixel
作例3:Twitterクライアント https://github.com/meganetaaan/moddable-examples/ • M5Stack単体でちゃんと動くTwitterクライアント • Twitterのタイムライン取得APIを正規の方法で叩いている JSON HTTP トランジショ ン
文字 (日本語)
作例4:ポモドーロタイマー https://github.com/meganetaaan/moddable-examples/ • パーティーパロットが回ることで仕事への意欲が不思議とアガるタイマー • 残り時間が少なくなると回転速度もアガる 画像 (gif) Timer
作例5:息子ロボ https://github.com/meganetaaan/moddable-examples/ • 息子のスケッチがツボにはまったので作った • M5ATOMでマイクロサーボを駆動 PWM NeoPixel
作例6:PLEN5Stackの制御 https://github.com/meganetaaan/moddable-plen5stack/ • PLEN5Stack拡張ボードとI2C通信 • 音声はGoogleCloudTTSで生成 →piuの音声再生機能で再生 • TypeScriptで制御された 世界初の2足歩行ロボット(自称)
I2C 音声
早く作って 公開できる たくさん フィードバックが もらえる 知識が付く JavaScriptなら
つまり
Moddableはいいぞ! #M5Stack_UGjp お伝えしたいこと(再掲)
宣伝:ModdableコミュニティのDiscordあります Moddable Developers Japan https://discord.com/invite/trX3udZ