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
SORACOM LTE-M Button Powerd by AWSを使ってSwitchBot...
Search
KMiura
February 11, 2023
Technology
0
240
SORACOM LTE-M Button Powerd by AWSを使ってSwitchBotを動かしてみた
2023年2月11日 JAWS-UG 東海道 ”IoT ボタンハンズオン”
https://jaws-ug-tokaido.connpass.com/event/271449/
KMiura
February 11, 2023
Tweet
Share
More Decks by KMiura
See All by KMiura
運用しているアプリケーションのDBのリプレイスをやってみた
miura55
1
1.1k
Amazon Rekognitionを使ったインターホンハック
miura55
0
72
Pythonでルンバをハックしてみた
miura55
0
150
あなたの知らないクラフトビールの世界
miura55
0
330
Storage Browser for Amazon S3を触ってみた + α
miura55
0
200
Cloudflare R2をトリガーにCloudflare Workersを動かしてみた
miura55
0
210
あのボタンでつながるSORACOM
miura55
0
130
Postman Flowsで作るAPI連携LINE Bot
miura55
0
380
Lambdaと共に歩んだAWS
miura55
3
830
Other Decks in Technology
See All in Technology
生成AI時代のデータ基盤設計〜ペースレイヤリングで実現する高速開発と持続性〜 / Levtech Meetup_Session_2
sansan_randd
1
150
20250910_障害注入から効率的復旧へ_カオスエンジニアリング_生成AIで考えるAWS障害対応.pdf
sh_fk2
3
190
Vault を基盤として整備し、 みんなに使ってもらえるようになるまで
takahiko
1
120
共有と分離 - Compose Multiplatform "本番導入" の設計指針
error96num
1
270
会社紹介資料 / Sansan Company Profile
sansan33
PRO
6
380k
roppongirb_20250911
igaiga
0
150
Obsidian応用活用術
onikun94
1
430
Kubernetes における cgroup driver のしくみ: runwasi の bugfix より
z63d
2
260
「どこから読む?」コードとカルチャーに最速で馴染むための実践ガイド
zozotech
PRO
0
170
Codeful Serverless / 一人運用でもやり抜く力
_kensh
7
360
JTCにおける内製×スクラム開発への挑戦〜内製化率95%達成の舞台裏/JTC's challenge of in-house development with Scrum
aeonpeople
0
180
AWSで推進するデータマネジメント
kawanago
1
1.2k
Featured
See All Featured
Fashionably flexible responsive web design (full day workshop)
malarkey
407
66k
Being A Developer After 40
akosma
90
590k
Chrome DevTools: State of the Union 2024 - Debugging React & Beyond
addyosmani
7
840
For a Future-Friendly Web
brad_frost
180
9.9k
Scaling GitHub
holman
463
140k
Building an army of robots
kneath
306
46k
Site-Speed That Sticks
csswizardry
10
810
Imperfection Machines: The Place of Print at Facebook
scottboms
268
13k
Principles of Awesome APIs and How to Build Them.
keavy
126
17k
[RailsConf 2023] Rails as a piece of cake
palkan
57
5.8k
Typedesign – Prime Four
hannesfritz
42
2.8k
Music & Morning Musume
bryan
46
6.8k
Transcript
SORACOM LTE-M Button Powerd by AWSを使ってSwitchBotを動かしてみた KMiura(@k_miura_io)
自己紹介 • 三浦 耕生(こうき) • JAWS UG名古屋運営 • 三次元地図技術のスタートアッ プのエンジニア・社内のAWSの
管理人 • SORACOMを社内に布教した男 @k_miura_io koki.miura05
注意:このLTは以前SORACOM UGのLTで話したネタ のリバイバル+αです。見たことある方はあしからず m(_ _)m
Switch botを手に入れた • Amazonのブラックフライデーで手に入れた • BLEのAPIもオープンになっていてハックし放題 • OSS万歳!
https://qiita.com/ma2shita/items/d620bb09ba001b66593b
None
どうやってやろう🤔?
調べてみた • SORACOMのプラットフォームでMQTTをするならSORACOM Beam • 他のMQTTブローカー(AWS、Shifter.ioなど)の接続情報を設定することでデバイ ス側のMQTT接続が楽になる(らしい) • なんかよくわからんけど凄そう(小並感)
入力どうしよう・・・
こいつの出番だ!
SORACOMを知るきっかけ • 4年前にここでやったハンズオンで「あのボタン」に出 会う • ボタンを押すことでLambdaを使えたり、メール送信 ができるのは面白い • ビルの高層階からボタンの電波が届かなくて送信失 敗しまくったのはいい思い出w
システム構成 ※AWS IoT 1-Clickの連携先はLambdaしかない
実装のポイント:Raspberry Pi • AWS IoTのSDKではなく汎用的なMQTTライブラリを使っている • 接続時に使うトピックの中にIMSIをプレースホルダーにしておくとSORACOM Beamが 転送するときに置き換えてくれる →SIMが変わったり複数のデバイスが来ても安心
実装のポイント:Lambda • AWS IoT 1-Clickのプレイスメントでボタンを押したときのコマンドだけではなく、IMSIを 受け取れるようにすることでLambdaで環境変数を設定しなくて良くなる • LambdaでテストするときもJSONを設定するだけなので楽(詳しくは記事にて!)
DEMO
実際に設置してみた(+α要素) • Raspberry Pi zeroWで意外と安定して稼働している • SORACOM Arcの仮想SIMを交換するだけで移行 が簡単だったのは気持ちいい •
適度にボタンから再起動できるのは助かる • モニター用になにかディスプレイつけても良さそう
まとめ • SORACOM側でAWS IoTの接続情報を登録することでデバイス側のコードがとて もシンプルになる • IMSIをプレースホルダーにするとデバイス単位でも同じコードを使い回せる • Switchbotを使ったハックは楽しい •
コーディングに自身ある方はAWS IoT 1-Clickを検討するのもあり SORACOM × AWSは相性抜群!
今日紹介した内容 https://zenn.dev/kmiura55/articles/soracom-beam-switch-bot
宣伝 https://jawsug-nagoya.doorkeeper.jp/events/150228
END