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
·
SiteGround - Reliable hosting with speed, security, and support you can count on.
→
ryosk7
January 09, 2025
Programming
740
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
270
Campfireから学ぶ、37signalsのRails設計入門
ryosk7
0
61
実践「Clean Coder」
ryosk7
1
28
実運用を目指す、PicoRuby と MQTT
ryosk7
1
580
PicoRubyでMQTTサポートの実装をしている話 (3)
ryosk7
0
200
PicoRubyと暮らす、シェアハウスハック
ryosk7
0
920
Gitを理解した話
ryosk7
9
1.2k
Kaigi on Rails 2024 その後
ryosk7
0
140
30万人が利用するチャットをFirebase Realtime DatabaseからActionCableへ移行する方法
ryosk7
5
1.7k
Other Decks in Programming
See All in Programming
運用ダッシュボードの設計を誰も教えてくれないのだけどみなさんどうしてるんですか? - チームに監視するという文化を根付かせるための第一歩を踏みたい -
satoshi256kbyte
1
130
Detecting Compromised CI with eBPF and Cilium Tetragon
lizrice
0
210
yield再入門 #phpcon
o0h
PRO
0
1.1k
バグを直したら useEffect が消えた
colorful12
2
580
Building a Meta Ray-Ban display app
akkeylab
0
160
今さら聞けない .NET CLI
htkym
0
200
Augmenting AI with the Power of Jakarta EE
ivargrimstad
0
620
<title><a id="</title>君はこのHTMLをパースできるか"></a></title> #雑LT_study
pizzacat83
0
150
Claude Code全社展開のためにやったことn選~プラグイン302個・コミッター271人を支えるために~
kenchan
5
1.6k
Go 1.27 における memory allocation の高速化
andpad
0
230
AI時代に設計が 最大の生産性レバーになる 意図駆動開発とデータを消さない設計|Don't Delete Your Data or Your Intent — Design as the Deepest Lever in the AI Era
tomohisa
1
1k
ソフトウェア設計に溶けるインフラ ― AWS CDK のインフラ認識論
konokenj
3
800
Featured
See All Featured
The Art of Delivering Value - GDevCon NA Keynote
reverentgeek
16
2.1k
SEOcharity - Dark patterns in SEO and UX: How to avoid them and build a more ethical web
sarafernandez
0
240
Breaking role norms: Why Content Design is so much more than writing copy - Taylor Woolridge
uxyall
0
370
AI in Enterprises - Java and Open Source to the Rescue
ivargrimstad
0
1.4k
Bootstrapping a Software Product
garrettdimon
PRO
307
120k
How to build a perfect <img>
jonoalderson
1
5.9k
HU Berlin: Industrial-Strength Natural Language Processing with spaCy and Prodigy
inesmontani
PRO
0
650
For a Future-Friendly Web
brad_frost
183
10k
So, you think you're a good person
axbom
PRO
2
2.1k
Git: the NoSQL Database
bkeepers
PRO
432
67k
Balancing Empowerment & Direction
lara
6
1.2k
How to Align SEO within the Product Triangle To Get Buy-In & Support - #RIMC
aleyda
2
1.8k
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に出ます
前夜祭で登壇します!
なんとか形にします。 。(まだ時間はある)
おわり