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
PicoRubyでMQTTサポートの実装をしている話
Search
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
ryosk7
January 09, 2025
Programming
630
0
Share
PicoRubyでMQTTサポートの実装をしている話
Roppongi.rb #26 登壇資料
ryosk7
January 09, 2025
More Decks by ryosk7
See All by ryosk7
Campfireから学ぶ、37signalsのRails設計入門
ryosk7
0
44
実践「Clean Coder」
ryosk7
1
14
実運用を目指す、PicoRuby と MQTT
ryosk7
1
410
PicoRubyでMQTTサポートの実装をしている話 (3)
ryosk7
0
170
PicoRubyと暮らす、シェアハウスハック
ryosk7
0
770
Gitを理解した話
ryosk7
9
1.1k
Kaigi on Rails 2024 その後
ryosk7
0
110
30万人が利用するチャットをFirebase Realtime DatabaseからActionCableへ移行する方法
ryosk7
5
1.6k
【月刊MEMTUS】2024ハッカソン登壇後アプデ内容
ryosk7
0
140
Other Decks in Programming
See All in Programming
「接続」—パフォーマンスチューニングの最後の一手 〜点と点を結ぶ、その一瞬のために〜
kentaroutakeda
5
2.5k
夢の無限スパゲッティ製造機 -実装篇- #phpstudy
o0h
PRO
0
200
Nuxt Server Components
wattanx
0
250
レガシーPHP転生 〜父がドメインエキスパートだったのでDDD+Claude Codeでチート開発します〜
panda_program
0
580
存在論的プログラミング: 時間と存在を記述する
koriym
5
830
今からFlash開発できるわけないじゃん、ムリムリ! (※ムリじゃなかった!?)
arkw
0
190
Redox OS でのネームスペース管理と chroot の実現
isanethen
0
550
実践CRDT
tamadeveloper
0
360
iOS機能開発のAI環境と起きた変化
ryunakayama
0
170
VueエンジニアがReactを触って感じた_設計の違い
koukimiura
0
160
Rethinking API Platform Filters
vinceamstoutz
0
11k
Smarter Angular mit Transformers.js & Prompt API
christianliebel
PRO
1
120
Featured
See All Featured
AI Search: Where Are We & What Can We Do About It?
aleyda
0
7.3k
Information Architects: The Missing Link in Design Systems
soysaucechin
0
870
Technical Leadership for Architectural Decision Making
baasie
3
310
What does AI have to do with Human Rights?
axbom
PRO
1
2.1k
Gemini Prompt Engineering: Practical Techniques for Tangible AI Outcomes
mfonobong
2
350
Statistics for Hackers
jakevdp
799
230k
We Analyzed 250 Million AI Search Results: Here's What I Found
joshbly
1
1.1k
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
31
3.1k
Avoiding the “Bad Training, Faster” Trap in the Age of AI
tmiket
0
120
Exploring the relationship between traditional SERPs and Gen AI search
raygrieselhuber
PRO
2
3.8k
Building Experiences: Design Systems, User Experience, and Full Site Editing
marktimemedia
0
480
Visualization
eitanlees
150
17k
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に出ます
前夜祭で登壇します!
なんとか形にします。 。(まだ時間はある)
おわり