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
590
PicoRubyでMQTTサポートの実装をしている話
Roppongi.rb #26 登壇資料
ryosk7
January 09, 2025
Tweet
Share
More Decks by ryosk7
See All by ryosk7
Campfireから学ぶ、37signalsのRails設計入門
ryosk7
0
42
実践「Clean Coder」
ryosk7
1
12
実運用を目指す、PicoRuby と MQTT
ryosk7
1
130
PicoRubyでMQTTサポートの実装をしている話 (3)
ryosk7
0
150
PicoRubyと暮らす、シェアハウスハック
ryosk7
0
500
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
どんと来い、データベース信頼性エンジニアリング / Introduction to DBRE
nnaka2992
1
130
Rで始めるML・LLM活用入門
wakamatsu_takumu
0
160
2026年は Rust 置き換えが流行る! / 20260220-niigata-5min-tech
girigiribauer
0
220
RAGでハマりがちな"Excelの罠"を、データの構造化で突破する
harumiweb
9
2.5k
RubyとGoでゼロから作る証券システム: 高信頼性が求められるシステムのコードの外側にある設計と運用のリアル
free_world21
0
210
受け入れテスト駆動開発(ATDD)×AI駆動開発 AI時代のATDDの取り組み方を考える
kztakasaki
2
520
NOT A HOTEL - 建築や人と融合し、自由を創り出すソフトウェア
not_a_hokuts
2
560
日本だけで解禁されているアプリ起動の方法
ryunakayama
0
370
手戻りゼロ? Spec Driven Developmentとは@KAG AI week
tmhirai
1
160
nuget-server - あなたが必要だったNuGetサーバー
kekyo
PRO
0
170
LangChain4jとは一味違うLangChain4j-CDI
kazumura
1
140
エラーログのマスキングの仕組みづくりに役立ったASTの話
kumoichi
0
110
Featured
See All Featured
Docker and Python
trallard
47
3.8k
The Straight Up "How To Draw Better" Workshop
denniskardys
239
140k
Paper Plane (Part 1)
katiecoart
PRO
0
5.1k
How to train your dragon (web standard)
notwaldorf
97
6.5k
Bootstrapping a Software Product
garrettdimon
PRO
307
120k
Fantastic passwords and where to find them - at NoRuKo
philnash
52
3.6k
The Power of CSS Pseudo Elements
geoffreycrofte
82
6.2k
WCS-LA-2024
lcolladotor
0
470
The Anti-SEO Checklist Checklist. Pubcon Cyber Week
ryanjones
0
87
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
133
19k
Raft: Consensus for Rubyists
vanstee
141
7.3k
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
360
30k
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に出ます
前夜祭で登壇します!
なんとか形にします。 。(まだ時間はある)
おわり