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
PicoRubyでMQTTサポートの実装をしている話
Search
ryosk7
January 09, 2025
Programming
810
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
PicoRubyでMQTTサポートの実装をしている話
Roppongi.rb #26 登壇資料
ryosk7
January 09, 2025
More Decks by ryosk7
See All by ryosk7
Extreme MQTT on PicoRuby
ryosk7
1
320
Campfireから学ぶ、37signalsのRails設計入門
ryosk7
0
87
実践「Clean Coder」
ryosk7
1
30
実運用を目指す、PicoRuby と MQTT
ryosk7
1
660
PicoRubyでMQTTサポートの実装をしている話 (3)
ryosk7
0
220
PicoRubyと暮らす、シェアハウスハック
ryosk7
0
1k
Gitを理解した話
ryosk7
9
1.2k
Kaigi on Rails 2024 その後
ryosk7
0
150
30万人が利用するチャットをFirebase Realtime DatabaseからActionCableへ移行する方法
ryosk7
5
1.8k
Other Decks in Programming
See All in Programming
社内AIエージェント「Askワンバン」における コストチューニングの取り組み
t0yohei
0
160
Python Lambdaにおけるテストしやすい設計とAI支援の活用 / Designing Testable Python Lambda Functions with AI
kitano_yuichi
1
300
Spec-Driven Development - Why Vaadin Is the Perfect Fit
simas
PRO
0
230
3回つくってわかった、 定期実行ジョブ基盤の本質情報
takai
4
3.7k
AmebaブログはKMPから卒業します
kmars0605
0
330
学びを記事・スライド・Xへ高速展開する― AI-assisted Learning Loopで回すコンテンツ生成術
ochtum
0
200
baseline으로 마이그레이션, 리팩토링 안전하게 맡기기
fornewid
1
920
そのデザイントークン、Flutterでも同じ見た目になりますか?
nakamizu
0
310
Goコンパイラを作ってGoをもっと理解する / Build a Go compiler to better understand Go
ikura_hamu
0
120
自作Discord音声botをLambda MicroVMsに移行した話 / Migrating My Discord Voice Bot to Lambda MicroVMs
akihisaikeda
1
290
作って学ぶSpring BootのAuto Configuration / JJUG Night Seminar 2026-10-19
rshindo
0
220
AI時代のIaC入門 〜なぜインフラをコードで管理したいのか?〜 / Introduction to IaC in the AI Era
akihisaikeda
6
1.4k
Featured
See All Featured
The innovator’s Mindset - Leading Through an Era of Exponential Change - McGill University 2025
jdejongh
PRO
1
390
Digital Ethics as a Driver of Design Innovation
axbom
PRO
1
510
Measuring & Analyzing Core Web Vitals
bluesmoon
9
1.1k
The AI Search Optimization Roadmap by Aleyda Solis
aleyda
2
6.4k
Building a Scalable Design System with Sketch
lauravandoore
464
34k
DevOps and Value Stream Thinking: Enabling flow, efficiency and business value
helenjbeal
2
430
HDC tutorial
michielstock
2
1k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
333
23k
Conquering PDFs: document understanding beyond plain text
inesmontani
PRO
4
3.3k
Winning Ecommerce Organic Search in an AI Era - #searchnstuff2025
aleyda
2
2.2k
ラッコキーワード サービス紹介資料
rakko
5
5.7M
Beyond borders and beyond the search box: How to win the global "messy middle" with AI-driven SEO
davidcarrasco
3
300
Transcript
PicoRubyでMQTTサポートの実装をしている話 ryosk7
None
今日会社の新年会で表彰されました。 うれしい!
それでは本題
PicoRubyとは PicoRuby は、ワンチップ マイクロコントローラ向けの最小の Ruby 実装です。 主にRaspberry Pi Picoをサポートしています。
去年8月にWiFiサポートが入りました
これでPicoRubyはIoTを作れるようになった(神)
と、いうことで
HTTP接続してみた!
みづらいと思うので、次のスライドへ
できること IPアドレス検索 (DNS Resolver) Get、Put、PostといったHTTPリクエスト
これでスマートロックを作ろうと思っています。 BLEを使ったスマートロック(モドキ)は作りました。
ただ、実際にやってみるとメモリ不足に。
HTTPプロトコルはヘッダー情報が大きい。 だいたい200~800バイト。
そこで、MQTT。
MQTT MQTT (Message Queuing Telemetry Transport) は、軽量で効率的な通信プロトコル。 リソースが限られたデバイス同士の通信で使用される。
MQTTのしくみ (1)
MQTTのしくみ (2) ヘッダーサイズは2~10バイト。 HTTPは200~800バイトだったので、かなり小さい。
MQTTのしくみ (3) パブリッシュ(Publish): メッセージを送信する側が特定の「トピック」にデー タを送る。 サブスクライブ(Subscribe): トピックを購読している側がそのメッセージを受 け取る。 ブローカー(中央のサーバー): メッセージを中継する。
PicoRubyで実装中。 。 。
Connectionさせるところまでできた! あとは、Keep Aliveさせるところを実装してPRを投げるつもり。
東京RubyKaigiに出ます
前夜祭で登壇します!
なんとか形にします。 。(まだ時間はある)
おわり