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
8
PicoRubyでMQTTサポートの実装をしている話
Roppongi.rb #26 登壇資料
ryosk7
January 09, 2025
Tweet
Share
More Decks by ryosk7
See All by ryosk7
Gitを理解した話
ryosk7
6
950
Kaigi on Rails 2024 その後
ryosk7
0
21
30万人が利用するチャットをFirebase Realtime DatabaseからActionCableへ移行する方法
ryosk7
5
600
【月刊MEMTUS】2024ハッカソン登壇後アプデ内容
ryosk7
0
69
非課税で110万円のクーポンと交換, NEMTUS Hackathon 2024
ryosk7
0
80
技術書典からバックレなくて良かった話
ryosk7
1
190
Rails7.0でTrilogyを試す
ryosk7
0
270
Rails on Cloud Runになったので、Rails.cacheをRedisに変えた話
ryosk7
0
220
「失われたRailsの輝きを追い求めて」開発者たちの悩みと希望の物語
ryosk7
0
430
Other Decks in Programming
See All in Programming
shadcn/uiを使ってReactでの開発を加速させよう!
lef237
0
240
Effective Signals in Angular 19+: Rules and Helpers
manfredsteyer
PRO
0
340
fs2-io を試してたらバグを見つけて直した話
chencmd
0
280
技術的負債と向き合うカイゼン活動を1年続けて分かった "持続可能" なプロダクト開発
yuichiro_serita
0
270
Scalaから始めるOpenFeature入門 / Scalaわいわい勉強会 #4
arthur1
1
390
KubeCon + CloudNativeCon NA 2024 Overviewat Kubernetes Meetup Tokyo #68 / amsy810_k8sjp68
masayaaoyama
0
290
責務を分離するための例外設計 - PHPカンファレンス 2024
kajitack
9
2.3k
コンテナをたくさん詰め込んだシステムとランタイムの変化
makihiro
1
180
ATDDで素早く安定した デリバリを実現しよう!
tonnsama
1
1.2k
短期間での新規プロダクト開発における「コスパの良い」Goのテスト戦略」 / kamakura.go
n3xem
2
210
Compose UIテストを使った統合テスト
hiroaki404
0
120
CloudflareStack でRAGに入門
asahiiwm
0
150
Featured
See All Featured
Unsuck your backbone
ammeep
669
57k
Why You Should Never Use an ORM
jnunemaker
PRO
54
9.1k
A Tale of Four Properties
chriscoyier
157
23k
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
226
22k
Making Projects Easy
brettharned
116
6k
Bootstrapping a Software Product
garrettdimon
PRO
305
110k
Product Roadmaps are Hard
iamctodd
PRO
50
11k
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
29
2k
Scaling GitHub
holman
459
140k
GraphQLの誤解/rethinking-graphql
sonatard
68
10k
Become a Pro
speakerdeck
PRO
26
5.1k
Principles of Awesome APIs and How to Build Them.
keavy
126
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に出ます
前夜祭で登壇します!
なんとか形にします。 。(まだ時間はある)
おわり