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
ryosk7
January 09, 2025
Programming
0
33
PicoRubyでMQTTサポートの実装をしている話
Roppongi.rb #26 登壇資料
ryosk7
January 09, 2025
Tweet
Share
More Decks by ryosk7
See All by ryosk7
PicoRubyでMQTTサポートの実装をしている話 (3)
ryosk7
0
54
PicoRubyと暮らす、シェアハウスハック
ryosk7
0
300
Gitを理解した話
ryosk7
8
1k
Kaigi on Rails 2024 その後
ryosk7
0
39
30万人が利用するチャットをFirebase Realtime DatabaseからActionCableへ移行する方法
ryosk7
5
710
【月刊MEMTUS】2024ハッカソン登壇後アプデ内容
ryosk7
0
90
非課税で110万円のクーポンと交換, NEMTUS Hackathon 2024
ryosk7
0
90
技術書典からバックレなくて良かった話
ryosk7
1
200
Rails7.0でTrilogyを試す
ryosk7
0
280
Other Decks in Programming
See All in Programming
PHPer's Guide to Daemon Crafting Taming and Summoning
uzulla
2
1.1k
The Evolution of Enterprise Java with Jakarta EE 11 and Beyond
ivargrimstad
0
1.4k
Chrome Extension Techniques from Hell
moznion
1
100
DataStoreをテストする
mkeeda
0
250
custom_lintで始めるチームルール管理
akaboshinit
0
190
Windows版PHPのビルド手順とPHP 8.4における変更点
matsuo_atsushi
0
390
Agentic Applications with Symfony
el_stoffel
1
170
PHPUnit 高速化テクニック / PHPUnit Speedup Techniques
pinkumohikan
1
1.3k
フロントエンドテストの育て方
quramy
11
2.8k
Defying Front-End Inertia: Inertia.js on Rails
skryukov
0
380
Django for Data Science (Boston Python Meetup, March 2025)
wsvincent
0
290
Fluent UI Blazor 5 (alpha)の紹介
tomokusaba
0
160
Featured
See All Featured
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
22
2.6k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
507
140k
YesSQL, Process and Tooling at Scale
rocio
172
14k
Fireside Chat
paigeccino
37
3.4k
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
177
52k
Git: the NoSQL Database
bkeepers
PRO
430
65k
Designing for Performance
lara
606
69k
What’s in a name? Adding method to the madness
productmarketing
PRO
22
3.4k
Testing 201, or: Great Expectations
jmmastey
42
7.4k
The Cult of Friendly URLs
andyhume
78
6.3k
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
129
19k
Intergalactic Javascript Robots from Outer Space
tanoku
270
27k
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に出ます
前夜祭で登壇します!
なんとか形にします。 。(まだ時間はある)
おわり