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
M5Stack Core2とAlexaでインターフォンに自動で対応してくれるIoTデバイスを作...
Search
ufoo68
December 21, 2021
Technology
770
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
M5Stack Core2とAlexaでインターフォンに自動で対応してくれるIoTデバイスを作りたかった話
ufoo68
December 21, 2021
More Decks by ufoo68
See All by ufoo68
BlenderをCodexで動かす
ufoo68
1
790
改めて考えるOSSのあり方について
ufoo68
0
94
文法で学ばないJavaScript
ufoo68
0
100
Cookieとは?
ufoo68
1
110
今更ながら、開発現場での生成AI活用について
ufoo68
0
100
28歳独身エンジニア 婚活してみた
ufoo68
0
57
OpenAIでクッキー型を作る
ufoo68
1
87
初めて開発リーダーをやってみた話
ufoo68
0
160
M5Stack用の指紋認証デバイスを試す
ufoo68
0
970
Other Decks in Technology
See All in Technology
ソフトウェア ファクトリー - 再現性のあるソフトウェアの工場づくり / Software factory
iktakahiro
7
5.1k
価値について
gree_tech
PRO
0
100
Conditional PED-ANOVA: Hyperparameter Importance in Hierarchical & Dynamic Search Spaces
pfn
PRO
0
140
Rust で関数型ドメインモデリング
takonda
0
170
スプシの手作業からの解脱 ~更新はClaude Codeに、見せ方と使い方はGASアプリに任せる~
kentarofujii
0
160
10年後、Engineering 行為を剥奪されるとして、わたしたちは、どう、何を創ればいいだろうか。 / If Engineering Is Taken Away in 10 Years, How and What Should We Create?
bitkey
PRO
1
200
AI コーディングと人間の認知スループット / CTO Night & Day 2026 Morning Session / AI Coding and Human Cognitive Throughput
prog893
5
1.3k
夫婦で子育てするための育児標準化
codmoninc
PRO
0
460
Rustuna: Rustによる高速なOptuna実装
pfn
PRO
0
200
Optunaの最新リリースv5.0について
pfn
PRO
0
120
PHPカンファレンス関西の招待状 / Invitation to PHP Conference Kansai
ykanoh
0
210
M5Stackで作る BLEマウス GPSログの世界
tomokusaba
PRO
0
440
Featured
See All Featured
DBのスキルで生き残る技術 - AI時代におけるテーブル設計の勘所
soudai
PRO
68
58k
Ruling the World: When Life Gets Gamed
codingconduct
0
400
Why Your Marketing Sucks and What You Can Do About It - Sophie Logan
marketingsoph
0
430
The SEO identity crisis: Don't let AI make you average
varn
0
590
Lightning Talk: Beautiful Slides for Beginners
inesmontani
PRO
2
730
Fantastic passwords and where to find them - at NoRuKo
philnash
53
4k
30 Presentation Tips
portentint
PRO
1
430
Lessons Learnt from Crawling 1000+ Websites
charlesmeaden
PRO
1
1.6k
More Than Pixels: Becoming A User Experience Designer
marktimemedia
3
570
SEO Brein meetup: CTRL+C is not how to scale international SEO
lindahogenes
2
2.9k
Building Adaptive Systems
keathley
44
3.3k
The Cult of Friendly URLs
andyhume
79
7k
Transcript
M5Stack Core2とAlexaでインターフォンに自動 で対応してくれるIoTデバイスを作 @IoTLT vol.82
M5Stack Core2とAlexaでインターフォンに自動 で対応してくれるIoTデバイスを作 りたかった話... @IoTLT vol.82
自己紹介 • 松永勇太(27歳男性) • 滋賀県在住 • エンジニア3年生 • たまにお絵かきをする
最近の出来事1 滋賀に引っ越しました
最近の出来事2 転職しました
今回の内容 12/6のIoTLTアドベントカレンダー投稿分です
新居でやることは?? そうだね、スマートホーム化だね。
スマートホーム化のオトモ スマートリモコンとAlexa
やりたいこと こんなんをAlexaで操作したい • M5Stack Core2 • M5Stack用Servo2モジュール • サーボモーター
まずはM5Stack一式を購入 合計1万くらい (まあまあの出費)
開発編
ソースコード全容 https://github.com/ufoo68/alexa_intercom
PlatformIOを使ってみる このArduinoIDEからの卒業♪
PlatformIOのいいところ • vscode拡張なので、vscodeユーザーにとっては使い慣れたエディタでコーディング ができるので快適 • npmのような特定のプロジェクトに特定のバージョンのライブラリを依存させるよう な、モジュール管理ができる • gitでの開発がやりやすいフォルダ構造になっていて、デフォルトで.gitignoreが用 意されている
サーボモーターを動かす 基本的には公式のサンプルコードがあるのでコピペ M5.begin(true, true, true, false, kMBusModeInput); Wire.begin(21, 22); なのですが、M5Stack
Core2でServo2モジュールを使う場合は、 以下の初期設定をしよう!!
動いた
OTAで無線開発しよう OTAとは? • Over The Airのこと • アプリケーションを遠隔でアップデートをすることができる仕組み • 今回はWiFiを経由
ネット記事のコードをコピペでOK void otaSetup() { ArduinoOTA.setHostname("m5stack-core2"); ArduinoOTA .onStart([]() { String type;
if (ArduinoOTA.getCommand() == U_FLASH) type = "sketch"; else // U_SPIFFS type = "filesystem"; Serial.println("Start updating " + type); }) .onEnd([]() { Serial.println("\nEnd"); }) .onProgress([](unsigned int progress, unsigned int total) { Serial.printf("Progress: %u%%\r", (progress / (total / 100))); }) .onError([](ota_error_t error) { Serial.printf("Error[%u]: ", error); if (error == OTA_AUTH_ERROR) Serial.println("Auth Failed"); else if (error == OTA_BEGIN_ERROR) Serial.println("Begin Failed"); else if (error == OTA_CONNECT_ERROR) Serial.println("Connect Failed"); else if (error == OTA_RECEIVE_ERROR) Serial.println("Receive Failed"); else if (error == OTA_END_ERROR) Serial.println("End Failed"); }); ArduinoOTA.begin(); } PlatformIO向けの記事でなくても 基本は動くと思います
Alexaデバイス化しよう fauxmoESPを使う • ESP32をPhilips Hue化させるライブラリ • 名目上はAlexaからHueへのライトON/OFF(もしくは明るさ)制御を利用してESP32 の周辺機器を制御する • 過去のIoTLTで紹介された有名(だと思う)ライブラリ
Alexaを騙せ!デバイス追加を騙せ! Alexa用アプリで連携する
動いた
ここから先はおまけ
オチその1 壁紙用両面テープじゃ重さに耐 えきれない🙅
オチその2 サーボモーターの固定が甘いので サーボモーター自体が浮く🙅
まとめ • PlatformIOでvscodeを使った快適なマイコン開発ができる • Servo2モジュールをM5Stack Core2で使うには初期設定の魔改造が必要 • OTAでUSBケーブルいらずのデバッグが可能に • fauxmoESPでM5StackをHue化できる
残った課題 賃貸の壁であとを残さずに、 M5Stackとサーボモーターを壁に取り付ける方法