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
230
PicoRubyでMQTTサポートの実装をしている話
Roppongi.rb #26 登壇資料
ryosk7
January 09, 2025
Tweet
Share
More Decks by ryosk7
See All by ryosk7
PicoRubyでMQTTサポートの実装をしている話 (3)
ryosk7
0
74
PicoRubyと暮らす、シェアハウスハック
ryosk7
0
350
Gitを理解した話
ryosk7
9
1k
Kaigi on Rails 2024 その後
ryosk7
0
53
30万人が利用するチャットをFirebase Realtime DatabaseからActionCableへ移行する方法
ryosk7
5
820
【月刊MEMTUS】2024ハッカソン登壇後アプデ内容
ryosk7
0
110
非課税で110万円のクーポンと交換, NEMTUS Hackathon 2024
ryosk7
0
100
技術書典からバックレなくて良かった話
ryosk7
1
210
Rails7.0でTrilogyを試す
ryosk7
0
310
Other Decks in Programming
See All in Programming
Composerが「依存解決」のためにどんな工夫をしているか #phpcon
o0h
PRO
1
250
CursorはMCPを使った方が良いぞ
taigakono
1
250
Hack Claude Code with Claude Code
choplin
3
1.4k
チームで開発し事業を加速するための"良い"設計の考え方 @ サポーターズCoLab 2025-07-08
agatan
1
360
RailsGirls IZUMO スポンサーLT
16bitidol
0
180
Hypervel - A Coroutine Framework for Laravel Artisans
albertcht
1
110
Rubyでやりたい駆動開発 / Ruby driven development
chobishiba
1
670
ruby.wasmで多人数リアルタイム通信ゲームを作ろう
lnit
3
460
A2A プロトコルを試してみる
azukiazusa1
2
1.4k
都市をデータで見るってこういうこと PLATEAU属性情報入門
nokonoko1203
1
610
すべてのコンテキストを、 ユーザー価値に変える
applism118
3
1.2k
Blazing Fast UI Development with Compose Hot Reload (droidcon New York 2025)
zsmb
1
290
Featured
See All Featured
Adopting Sorbet at Scale
ufuk
77
9.4k
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
32
2.4k
[RailsConf 2023] Rails as a piece of cake
palkan
55
5.7k
Speed Design
sergeychernyshev
32
1k
The Illustrated Children's Guide to Kubernetes
chrisshort
48
50k
Balancing Empowerment & Direction
lara
1
430
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
29
9.6k
Measuring & Analyzing Core Web Vitals
bluesmoon
7
510
jQuery: Nuts, Bolts and Bling
dougneiner
63
7.8k
Navigating Team Friction
lara
187
15k
Stop Working from a Prison Cell
hatefulcrawdad
270
21k
Designing Dashboards & Data Visualisations in Web Apps
destraynor
231
53k
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に出ます
前夜祭で登壇します!
なんとか形にします。 。(まだ時間はある)
おわり