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
27
PicoRubyでMQTTサポートの実装をしている話
Roppongi.rb #26 登壇資料
ryosk7
January 09, 2025
Tweet
Share
More Decks by ryosk7
See All by ryosk7
PicoRubyでMQTTサポートの実装をしている話 (3)
ryosk7
0
33
PicoRubyと暮らす、シェアハウスハック
ryosk7
0
270
Gitを理解した話
ryosk7
8
980
Kaigi on Rails 2024 その後
ryosk7
0
32
30万人が利用するチャットをFirebase Realtime DatabaseからActionCableへ移行する方法
ryosk7
5
640
【月刊MEMTUS】2024ハッカソン登壇後アプデ内容
ryosk7
0
79
非課税で110万円のクーポンと交換, NEMTUS Hackathon 2024
ryosk7
0
82
技術書典からバックレなくて良かった話
ryosk7
1
200
Rails7.0でTrilogyを試す
ryosk7
0
270
Other Decks in Programming
See All in Programming
Formの複雑さに立ち向かう
bmthd
1
830
ASP. NET CoreにおけるWebAPIの最新情報
tomokusaba
0
370
技術を根付かせる / How to make technology take root
kubode
1
250
『GO』アプリ データ基盤のログ収集システムコスト削減
mot_techtalk
0
120
Immutable ActiveRecord
megane42
0
140
チームリードになって変わったこと
isaka1022
0
200
Honoのおもしろいミドルウェアをみてみよう
yusukebe
1
210
AWS Organizations で実現する、 マルチ AWS アカウントのルートユーザー管理からの脱却
atpons
0
150
Writing documentation can be fun with plugin system
okuramasafumi
0
120
さいきょうのレイヤードアーキテクチャについて考えてみた
yahiru
3
750
Grafana Cloudとソラカメ
devoc
0
170
動作確認やテストで漏れがちな観点3選
starfish719
6
1k
Featured
See All Featured
Visualization
eitanlees
146
15k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
45
9.4k
The Web Performance Landscape in 2024 [PerfNow 2024]
tammyeverts
4
410
How To Stay Up To Date on Web Technology
chriscoyier
790
250k
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
40
2k
jQuery: Nuts, Bolts and Bling
dougneiner
63
7.6k
The World Runs on Bad Software
bkeepers
PRO
67
11k
The Power of CSS Pseudo Elements
geoffreycrofte
75
5.5k
A Philosophy of Restraint
colly
203
16k
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
27
1.9k
How to Create Impact in a Changing Tech Landscape [PerfNow 2023]
tammyeverts
49
2.3k
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
160
15k
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に出ます
前夜祭で登壇します!
なんとか形にします。 。(まだ時間はある)
おわり