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
IoTデバイスを、Raspberry Pi上でJSで 簡単に開発する環境を作った話
Search
Tokusei Noborio
August 24, 2017
Programming
2
1.4k
IoTデバイスを、Raspberry Pi上でJSで 簡単に開発する環境を作った話
IoT BoxというAtom用のパッケージを作った話をIoTLT#30にて発表させていただきました。
Tokusei Noborio
August 24, 2017
Tweet
Share
More Decks by Tokusei Noborio
See All by Tokusei Noborio
HaLake Kitを使った BluemixでIoT体験!
tnoborio
0
800
Other Decks in Programming
See All in Programming
contribution to astral-sh/uv
shunsock
0
140
SwiftDataを使って10万件のデータを読み書きする
akidon0000
0
230
いま中途半端なSwift 6対応をするより、Default ActorやApproachable Concurrencyを有効にしてからでいいんじゃない?
yimajo
2
440
Introduce Hono CLI
yusukebe
6
2.9k
タスクの特性や不確実性に応じた最適な作業スタイルの選択(ペアプロ・モブプロ・ソロプロ)と実践 / Optimal Work Style Selection: Pair, Mob, or Solo Programming.
honyanya
3
180
(Extension DC 2025) Actor境界を越える技術
teamhimeh
1
270
The Past, Present, and Future of Enterprise Java
ivargrimstad
0
500
組込みだけじゃない!TinyGo で始める無料クラウド開発入門
otakakot
1
330
スキーマ駆動で、Zod OpenAPI Honoによる、API開発するために、Hono Takibiというライブラリを作っている
nakita628
0
250
Devoxx BE 2025 Loom lab
josepaumard
0
110
CSC305 Lecture 05
javiergs
PRO
0
230
AIと人間の共創開発!OSSで試行錯誤した開発スタイル
mae616
2
750
Featured
See All Featured
Testing 201, or: Great Expectations
jmmastey
45
7.7k
No one is an island. Learnings from fostering a developers community.
thoeni
21
3.5k
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
46
7.7k
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
234
17k
How to Think Like a Performance Engineer
csswizardry
27
2.1k
The Invisible Side of Design
smashingmag
302
51k
XXLCSS - How to scale CSS and keep your sanity
sugarenia
249
1.3M
The Web Performance Landscape in 2024 [PerfNow 2024]
tammyeverts
10
880
Agile that works and the tools we love
rasmusluckow
331
21k
KATA
mclloyd
PRO
32
15k
For a Future-Friendly Web
brad_frost
180
10k
Embracing the Ebb and Flow
colly
88
4.9k
Transcript
IOTσόΠεΛɺRASPBERRY PI্ͰJSͰ ؆୯ʹ։ൃ͢ΔڥΛ࡞ͬͨ ొඌ@nyampass
ࣗݾհ ➤ ొඌ ಙ(ͷ΅Γ͓ ͱ͍ͤ͘) ➤ χϟϯύεגࣜձࣾ: ΣϒαʔϏεΞϓϦ։ൃɾ IoTϓϩτλΠϓΛ։ൃ ➤
Twitter ID: @tnoborio ➤ ʮ͡ΊͯͷClojureʯֶࣾ ➤ ίϫʔΩϯάεϖʔεHaLake(http://halake.com/) ➤ @࡛ۄݝӽ୩ࢢϨΠΫλϯ ➤ খֶੜ͚ϓϩάϥϛϯάڭࣨΛຖि։࠵
ಥવͰ͕͢ɺ RASPBERRY PIͷ ໘ͳॴ
RASPBERRY PIͰ໘ͳͱ͜Ζ ➤ σΟεϓϨΠΛܨ͍ͰWifiͷઃఆ ➤ SSHͰܨ͍Ͱ֤छύοέʔδΛΠϯετʔϧ ➤ ϓϩάϥϜΛॻ͍ͯͦΕΛసૹ ➤ SSHͰܨ͍Ͱɺ࣮ߦɾ݁ՌΛ֬ೝ
͜ͷ࡞ۀΛ ຖճΔͷ͕ ໘͍͘͞ʂ
ͦΕΛղܾ͢ΔπʔϧΛ ࡞Γ·ͨ͠!!
IOT BOX
➤ AtomςΩετΤσΟλͷύοέʔδͱͯ͠ಈ࡞ ➤ RaspbianΛೖΕͨSDΧʔυΛ༻ҙ͓͚ͯ͠ɺ SSHܦ༝Ͱϗετ໊ɺWifiใͷઃఆɺ࠷৽ύοέʔδͷಋೖɺ ىಈ࣌ͷϓϩάϥϜىಈΛߦͬͯ͘ΕΔ ➤ JavaScriptͰॻ͍ͨϓϩδΣΫτΛಉظ͠ɺ ࣮ߦ࣌ͷϩάӾཡ·ͰAtomܦ༝ͰՄೳʹʂ
▶։ൃ࣌ʹΩʔϘʔυɺϚεɺσΟεϓϨΠ͕ෆཁʂ ▶Raspberry PiΛ৮Δ࣌ʹLinuxͷ͕ࣝෆཁ JavaScript(Node.js)ͷϊϋ͚ͩͰIoT։ൃ͕Մೳʹʂ IOT BOXͱ
ATOMͰͷը໘ߏ
ATOMύοέʔδͰͷίϚϯυ ➤ Iotbox: Run - JavaScriptͷNodejsͰͷ࣮ߦ ➤ Iotbox: Toggle -
Raspberry PiͱͷଓใɾRaspberry Pi্ͷ࣮ߦ࣌ͷϩάදࣔ ➤ Iotbox: Put file - ϑΝΠϧసૹ ➤ Iotbox: Rpi Setup - Raspberry Pi༻ͷηοτΞοϓ ➤ Iotbox: Npm Update- package.jsonΛͬͨύοέʔδͷΠϯετʔϧ
IOT BOXύοέʔδͷઃఆ ➤ Raspberry Pi IP ଓઌIPΞυϨε ➤ Setup: Hostname
ઃఆ͢Δϗετ໊ ➤ Setup: Wifi SSID / Password ઃఆ͢ΔWifiใ
ߏਤ ϓϩάϥϜͷసૹ ֤छઃఆ ϓϩάϥϜͷ࣮ߦ݁Ռ WebSocketͰΓऔΓ
खॱ 1. SDΧʔυʹRaspbianΛॻ͖ࠐ Έɺ ॳճ͔ΒSSHαʔόͱͯ͠ Raspberry Pi͕ىಈ͢ΔΑ͏ʹSD Χʔυ্ʹsshͱ͍͏໊લͷϑΝ ΠϧΛ࡞Δ 2.
Raspberry PiΛىಈ͠ɺಉ͡ωο τϫʔΫ্ʹܨ͍ͩঢ়ଶͰɺ "IoTBox: RPi Setup" Λ࣮ߦɺϗετ໊ͷมߋɾWifi ใͷసૹɾىಈ࣌ʹ࣮ߦ͞ΕΔϓ ϩάϥϜ͕సૹ 3. ࠶ىಈ͠ɺ "IoTBox: toggle" ΛબͼIoT BoxϖΠϯΛ։͘ 4. "IoTBox: Put File" ϑΝΠϧͷసૹ "IoTBox: Run" ϓϩάϥϜͷ࣮ߦ "IoTBox: Npm Update" package.jsonϑΝΠϧʹॻ͔Εͨ ϥΠϒϥϦͷΠϯετʔϧ
σϞ
͍ํɾϓϩδΣΫτϖʔδ ➤ AtomύοέʔδIot Box https://github.com/nyampass/iotbox-atom-package ➤ Raspbery Pi্Ͱ࣮ߦ͞ΕΔεΫϦϓτɺWebSocketͷαʔό https://github.com/nyampass/iotbox-rpi
ࠓޙ ➤ ͔ͤͬ͘࡞ͬͨͷͰࢼͯ͠ཉ͍͠ɾ·ͩϕʔλ൛ͱ͍͏Ґஔ ͚ͮͳͷͰࠓޙษڧձͳͲΛͬͯ҆ఆԽɾ҆ఆԽͨ͠Β atom.ioʹొ༧ఆ ➤ ΫϥυͷαʔϏεΛఏڙ͍ͯ͠ΔձࣾͳͲΧδϡΞϧͳIoT ։ൃڥΛఏڙ͢Δ͜ͱʹڵຯͷ͋ΔاۀͱҰॹʹϫʔΫ γϣοϓΠϕϯτͳͲΓ͍ͨ ➤
ElectronͳͲͱΈ߹ΘͤͯRaspberry PiͰ खܰʹσεΫτοϓڥɺΩΦεΫϞʔυ͕։ൃͰ͖ΔΑ͏ ʹ͍ͨ͠