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
実録!ある担当者がみた「謎ガジェット」開発一年史
Search
uzulla
September 07, 2018
Programming
0
2.7k
実録!ある担当者がみた「謎ガジェット」開発一年史
at builderscon tokyo 2018 1日目 メインホール
by uzulla
uzulla
September 07, 2018
Tweet
Share
More Decks by uzulla
See All by uzulla
More Context, Better Code. 既存コードやOAS等をコンテキストとしてLLMに与える事で、よりよいコード生成を行う話
uzulla
1
99
あなたのアプリ、ログはでてますか?あるいはログをだしてますか? (Funabashi.dev用 軽量版)
uzulla
3
170
セッションのトークセッション / Traps for PHP session features in growing web apps
uzulla
2
110
Crafting a Own PHP - ウキウキ手作りミニマリストPHP
uzulla
5
1.9k
例外を投げるのをやめてみないか? あるいは受け入れてみないか? - How to use exceptions other than throwing
uzulla
4
890
PHPerが ISUCONでやるべき事
uzulla
1
830
開発生産性は上がらない - N Ways to Reduce Development Productivity
uzulla
1
220
test is not a job
uzulla
1
480
あなたのPHPアプリ、ログはでてますか?あるいはログをだしてますか? / Are you writing a log? Or just out a log?
uzulla
17
7.4k
Other Decks in Programming
See All in Programming
『ドメイン駆動設計をはじめよう』のモデリングアプローチ
masuda220
PRO
8
540
3rd party scriptでもReactを使いたい! Preact + Reactのハイブリッド開発
righttouch
PRO
1
600
距離関数を極める! / SESSIONS 2024
gam0022
0
280
Hotwire or React? ~アフタートーク・本編に含めなかった話~ / Hotwire or React? after talk
harunatsujita
1
120
ピラミッド、アイスクリームコーン、SMURF: 自動テストの最適バランスを求めて / Pyramid Ice-Cream-Cone and SMURF
twada
PRO
10
1.3k
AI時代におけるSRE、 あるいはエンジニアの生存戦略
pyama86
6
1.1k
シールドクラスをはじめよう / Getting Started with Sealed Classes
mackey0225
4
640
Arm移行タイムアタック
qnighy
0
310
Jakarta Concurrencyによる並行処理プログラミングの始め方 (JJUG CCC 2024 Fall)
tnagao7
1
290
3 Effective Rules for Using Signals in Angular
manfredsteyer
PRO
0
100
OSSで起業してもうすぐ10年 / Open Source Conference 2024 Shimane
furukawayasuto
0
100
Remix on Hono on Cloudflare Workers
yusukebe
1
280
Featured
See All Featured
Keith and Marios Guide to Fast Websites
keithpitt
409
22k
How to Think Like a Performance Engineer
csswizardry
20
1.1k
Speed Design
sergeychernyshev
24
610
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
29
2.3k
A designer walks into a library…
pauljervisheath
203
24k
YesSQL, Process and Tooling at Scale
rocio
169
14k
Fantastic passwords and where to find them - at NoRuKo
philnash
50
2.9k
It's Worth the Effort
3n
183
27k
5 minutes of I Can Smell Your CMS
philhawksworth
202
19k
Code Review Best Practice
trishagee
64
17k
Music & Morning Musume
bryan
46
6.2k
Building Adaptive Systems
keathley
38
2.3k
Transcript
࣮ʂ͋Δ୲ऀ͕Έͨ ʮṖΨδΣοτʯ։ൃ Ұ࢙ builderscon tokyo 2018
@uzulla PHPer(?) ϝʔϧϑΥʔϚʔ ౦ژീԦࢠࢢ
ʮṖΨδΣοτʯͱʁ • ిࢠ໊ࡳ • Raspberry pi + e paper display
• ిΛͭͳ͙ͱɺಈ͖ग़໊͢ࡳ • https://github.com/builderscon/ electronic_badge_2018 • αϙʔλʔϊϕϧςΟ • mercari༷ڠࢍʹΑΓ࣮ݱ • 200ݸ
USBυϥΠϒʹͳΔ • PCͱͭͳ͙ͱɺUSBυϥΠϒͱͯ͠ೝ ࣝ͠ɺϑΝΠϧίϐʔՄೳ • ʢͪΐͬͱ·͔ͬͯΒʣ • PC͔Β͵͍ͯɺిݯΛૠ͢͠ͱ • ը૾͕εϥΠυγϣʔʂ
• https://www.youtube.com/watch? v=ldZi0VksX1o
Ϋϥυಉظػೳ • QRίʔυΛεϚϗͰεΩϟϯ • ͖ͳը૾ΛΞοϓϩʔυ • ໊ࡳΛ࠶ىಈʂ • ࣗಈͰөʂʢཁWifiʣIoTͬΆ͍ʂʂ •
(ձWifiҰԠॳظઃఆͯ͋͠Γ·͢) • (Ϋϥυαʔόޙऴྃ͠·͢ɺ ίʔυެ։ࡁΈ) • https://www.youtube.com/watch? v=RRAVv2eyS_Y
Ϗϧίϯ˒ࡾؒ˒ϋοΩϯά • ͦΕ͚ͩ͡Όͳ͍ɺϋοΧϒϧͳ໊ࡳʂ • ʢىಈ࣌ؒΛআ͘ʣ
Helloworld • NAFUDAΛPCʹͭͳ͗·͢ • ҎԼͷίʔυΛstartup.shͱͯ͠ NAFUDAυϥΠϒԼอଘ echo "hello NAFUDA world!"
| show_txt - # ͜ͷαϯϓϧsimple-sampleͷதʹ͋Γ·͢ • (ͪΐͬͱ͔ͬͯΒऔΓ֎͠࠶ىಈ) • Hello worldʂ • ྫ͑curlͰσʔλͱ͖ͬͯͯදࣔͰ ͖Δʂ
show_img • ಉ͡ϊϦͰɺը૾දࣔͰ͖·͢ # ը૾ΛDLͯ͠ show_imgͰදࣔ curl 'https://builderscon.io/static/images/mrbeacon-001.png' > /tmp/bcon.png
show_img /tmp/bcon.png
ϋʔυ৮Γ͍ͧ͢ʂ • GPIOΛ࠹͕ͳ͍ߏʂ • ݟ͍ͯͯෆ҆ʹͳΔʁςʔϓΛషΔͳ Ͳ͠·͠ΐ͏ʂ
• ϒϨουϘʔυΛ༨നʹΓ͚ͭͨΓ • ϘλϯΛ͚ͭͨΓ • LEDΛ͚ͭͨΓ͢Δͱ • ͜ͷΑ͏ʹՒʑ͘͠ૉఢʹͳΓ·͢
• ޙ͍͍ײ͡ʹ͍ͬͯͬͯ͘Εʂৄ͘͠GithubͷυΩϡϝ ϯτͷdocs/FOR_HACKER.mdʹܝࡌ͞ΕͯΔϤʂ • NAFUDAυϥΠϒʹεΫϦϓτஔ͖େม͗͢Δ͔Βɺͬ͞ ͞ͱdocs/HOW_TO_LOGIN.mdΛݟͯɺϩάΠϯͯ͠Ͷʂ • όάϨϙͱ͔ISSUEʹ͍ͩ͘͞ʂͰ·ͣTROUBLESHOOT.md Έͯ͘Εʂ
հ͓ΘͬͨͷͰɺຊɻ • ͜ΕΛ200ͭͬͨ͘ɺͱ͍͏ͷ͕ࠓճͷ͓Ͱ͢
ຊτʔΫͷత • (͕ࣗ࡞Βͳͯ͘)ṖΨδΣοτ͕΄͍͠!! • (࡞Δ|αϙʔτ)͢Δ(ਓ|৫)͕૿͑ͯ΄͍͠ • ผͷṖΨδΣοτ͕ొ͠ɺ͜ͷṖΨδΣοτ͕དྷʹ ʮฏͷṖΨδΣοτ…ʯͱ͔ݴΘΕΔΑ͏ʹͳͬͯ΄͍͠ʂ • ʮٕ͘͢͝ज़͕͍ΔΘ͚Ͱͳ͍ʂʯ
• (ࢲૉਓͰ͢!!ϓϩͷࢦಋΛ͏͚·͠ΐ͏)
࠷ॳʹ·ͱΊ • ҙཉ͕େ • ͕࣌ؒେ • ͓͕ۚେ • ͕ؒେ •
͕େ
͋Β͢͡ ʮ͋ΔஉΠϯλʔωοτͰݟ͔͚ΔʰόοδʱʹಌΕ͍ͯͨʂ ͔͜͠͠ͷฏͷຊʹ͓͍ͯͦ͏͍ͬͨϞϊΛ͍ͯ͠Δ ΧϯϑΝϨϯεͳ͔ͬͨʂ͔͠͠ʂஉఘΊͳ͔ͬͨʂࣗෲΛ ͖ΓɺṖͷύʔπΛதࠃ͔Β༌ೖͨ͠Γͯ͠ݽಠʹ༷ʑͳಠࣗݚ ڀΛ͓͜ͳ͍ͬͯͨʂʯ
ʮόοδʯͱ • "electronic badge"Ͱݕࡧ • ւ֎ͷΧϯϑΝϨϯεͰ͋Δ ʢΒ͍͠ʣ • ిࢠΨδΣοτతͳαϜγϯά •
΄͍͠ʂͰɺΈͨ͜ͱͳ͍ • ʮΑ͏͠ʂΔ͔ʂʂʯ
ͱ͜ΖͰɺͳʹ͕໘ന͍ʢओ؍ʣͷ͔ʁ • ΨδΣοτ໘ന͍ʢఆཧʣ • ʮେ͕͍࣋ͬͯΔʯͷ͕໘ന͍ • ࣗͻͱΓͩͱऐ͍͠ • ࡢͷʮ͠Ό͡ʯ
લᩀʢ201Xʙ2017 ʣ • ʮΓͨ͞ʯ͋ͬͨ • Ͳ͏Δ͔ʁ • όοδେମͷ߹ʮϚΠίϯʯ͕ΘΕ͍ͯΔ • ʮϚΠίϯ͔ʙʙʯʢࡏॅPHPerஊʣ
• όοδΛ࣮ݱ͢Δํ๏ΛɺझຯͰՋͳ࣌ʹ୳͍ͯͨ͠
ྫ͑ɺArduino • ·͋ɺఆ൪ • ͔͠͠ɺArduinoߴ͍… • ͍ͭ͘छྨ͕͋Δ͕ɺ༗໊ͳUno ͳͲ3ʙ4000ԁ͘Β͍ • ޓ͍͕҆ɺେྔʹೖΕΒΕΔ
ͷ͔Ṗ
8pino • ஸɺ͋Δࣄ(?)Ͱ৮ͬͯΈ͍ͯͨ • arduinoޓʢͷΑ͏ͳͷʣ • 8bit, 8MHz, 8KB, ෯8mm,
888ԁ • 8݄8ੜ·ΕͷീԦࢠࡏॅʹ࠷ߴʂ • খͯ͘͞࠷ߴɺ0.5g • (ӈͷج൫ંͬͯ͘Β͍ʹͳΔ)
Digisparkʢதԝʣ • ͍Θ͍҆8pino • ͦͦ͜͜খ͍͞͠ɺ USBʹͦͷ··ͬͯ͞͞࠷ߴ • ΊͪΌ͍҆ ˇ300Ґ •
αϯϓϧίʔυ͕๛ͰɺΩʔϘʔυ ϚεΛΤϛϡϨʔτͰ͖ͯͨͷ͠ ͍ʢBad USBΈ͍ͨͳͷΛ࡞ͬͯ༡ Δʣ
esp32 • Wifi͕͋Γɺߴੑೳ ʢͦ͜ΒͷϚΠίϯʹ͘ΒΕʣ • ͍҆ʂʢ७ਖ਼arduinoʹൺΕʣ • লిྗͦΕͳΓ • ʢαϒηοτͷʣpython͕ಈ͘ʂ
• ʮϝϞϦ͕ͬͱ΄͍͠ͳ…ɺhttpsͷ JSON APIؾܰʹୟ͖͍ͨͳ…ʯ
m5stack • (جຊతʹESP32) • ӷথɺόοςϦʔɺεϐʔΧʔɺϘλ ϯɺWifi͖Ͱ࠷ߴʂ • ͔͠͠ೖखੑʹ͋Γʢਓؾނʣ • ଂόοςϦʔͨͳ͍
ʢ110mAhʣ
micro:bit • ༗໊ɺ͘͢͝Α͘Ͱ͖ͯΔ • ηϯαɺεΠονɺLED༷ʑ͍ͭͯΔ • JSPythonͰίʔυ͕ॻ͚Δɺ Web IDEΑ͘Ͱ͖ͯΔ •
͍͚Δ͔ʁʁ • ʢ…Μ͚ͩͲɺI2CSPIͰ֎෦σόΠε ੍ޚ͕Ͳ͏ʹ͏·͘ಈ͔ͣఘΊͨʣ
ָʹͰ͖ͦ͏ͳͷ৭ʑࢼͨ͠ • ݁ͱͯ͠ʮ͜Ε͍͠ͳʙʙʯ • Δલ͔Β͏ͬ͢ΒΘ͔͍͕ͬͯͨɺ ͬͯΈͯʮͰ͖ͳ͍/ͬͯΒ͑ͳ͍ࣗ৴ʯ͕Ͱ͖ͨ • ਖ਼͘͠ɺօؤுΕͰ͖Δ͕ɺؤுΒͤΔͷͲ͏ͳͷ͔ʁ • ʮΈΜͳָ͕ʹϋοΫͰ͖Δʯͱ͍͍ͳ…
։ൃɾσόοά͕ͭΒ͍ • ී௨ͷΣϒΤϯδχΞʹʂ • CasmͰॻ͍ͯɺϏϧυͯ͠సૹ͢Δ • PC༻ͷϦονͳC libେମ͏͔͝ͳ͍ (ϝϞϦతʹ) •
ϓϦϯτσόοά͔͠Ͱ͖ͳ͍ • ʢJTAG ങͬͯΒ͏ͷ…ʣ • ͦΕͱͯ͠γϦΞϧม͕͍Δ
σόοά͕ͭΒ͍̎ • ී௨ͷΣϒΤϯδχΞʹʂ • ʮͳΜ͔จࣈ͕Ͱͳ͍…ʯ • ʮͦ͏ͩܗΛݟͯΈΑ͏ʂʯ • ʮ͜Ε੍͕ޚ৴߸ɺ͕࣍HͰ…ʯ ʢσʔλγʔτΛᛀΈͳ͕Βʣ
• (օ͞Μͷ͝ՈఉʹΦγϩ͕͋ͬͯ I2CSPIΛύʔεͰ͖Δϓϩτί ϧɾΞφϥΠβͳ͍߹͕ଟ͍)
ݱ࣮ͱͯ͠ج൫Λ࡞Δඞཁ͕͋Δ • σʔλΛ࡞ΓʼPCBʹൃ͠ʼήοτʂ • ͔ͨ͠ʹϚδοΫͰॻ͍ͯυϒ௮͚ͯ͠λϫγͰຏ͘ੲΑΓָ • ʮͱ͍͑(ࠓͷࢲʹ)ݱ࣮తͰͳ͍…SMTແཧ…ʯ • खΓ͢Δͱۚͱ༹͕͚࣌ؒΔ •
(ւ֎ΧϯϑΝϨϯεΈ͍ͨʹɺԿສਓ͘ΔͳΒ͍͍͚Ͳ(?)
ੑೳݫ͍͠ • CPUɺϝϞϦ͕ශऑ • ϝϞϦ͕ʮଟͯ͘ʯ512KBʢ8KBͱ͔ʣ • ʮωοτϫʔΫʁͳʹͦΕ͏·͍ͷʁʯ • ʮGETͰ͖·͢ʂSSLʁΒͳ͍ࢠͰ͢Ͷʯ •
ʮHTTPSରԠʂ…jsonύʔεͪΐͬͱ…ʯ • ΣϒܥʢؚࣗΉʣʹϋοΫͮ͠Β͍ʂʂ
ͱ͍͏͜ͱͰ • ʢ͋͘·Ͱࣗͷ༻్ͰʣϚΠίϯແཧͩͳ͋… • ΓSBCʢγϯάϧϘʔυίϯϐϡʔλʔʣ͔… • (ϥζύΠͱ͔ɺLinuxͱ͔͕ಈ͘େମPCΈ͍ͨͳͭ)
raspberry pi 2 model B • (ॴҦɺී௨ͷϥζύΠ) • ͳΜͰͰ͖Δ͕ɺͰ͔͍ •
Ձ͕֨΅ͪ΅ͪߴ͍(5000ʙ7000ԁ) • 2AͷUSBిݯͰ҆ఆ͠ͳ͍ͱఆධͷ ߴফඅిྗ • (ը૾WikipediaΑΓ)
Raspberry pi zero w • খ͍͞ʂফඅిྗʂʢ150mAhʣ • Έͳ͞Μ͓ͳ͡ΈLinux͕ಈ͘ʂ • Wifi͖ʂ
• ʮPHP͕ಈ͔͘Β࠾༻ʂʂʯ • PythonͳͲ͕͏͘͝ʂ • ͍҆ʂ • ͜Ε͍͍ͨͳ…
͔͠͠zero (w)ೖखੑ͕ѱʮ͔ͬͨʯ • ʮࡏݿΕʂʯʮ͓ҰਓҰݸʂʯ • ͢Δͱ2018/1ʹRaspberry Pi zero ʮwhʯ͕ొʂ •
ʢ্͕͕ͬͨʣඦݸͰ؆୯ʹखʹೖΔʂ • ϐϯϔομ࠷ॳ͔Β͍ͭͯΔʂ (wɺϐϯϔομΛࣗͰΜ͚ͩ͢Δඞཁ͕͋ͬͨ) • ͍͚ͦ͏ʂ
σΟεϓϨΠฏߦͯ͠୳͍ͯͨ͠
όοΫϥΠτແ͠ӷথ • ී௨ͷӷথ • ဧͼऐͼΛײ͡ΒΕͯΑ͍ • ফඅిྗ͍ͷָ • ίϯτϩʔϥ͕͍ͭͯΔͷͪΐͬͱ ߴ͍
ΩϟϥΫλӷথ • ͍҆ • ੍ޚָ͕ • ݟ͕ͨߥʑ͍͠ʢྑ͍ʣ • ׂͱେ͖͍ը໘͋Δ •
ࣈग़ͤΔͭߴ͍ • ࢹ͕֯ڱ͍ʢͷ͕ଟ͍ʣ
TFTӷথ • Χϥʔͩ͠ɺԠੑߴ͍ • ͋Δҙຯ࠷ߴ • Ձ͕֨ߴ͍ • ిྗ͕݁ߏඞཁ •
HDMIϙʔτଓΰπ͍͠ɺ SPIଓ͠ͳ͍ͱ͍ʢ͠ɺղ૾ ͕…ʣ
OLED(ϞϊΫϩ༗ػEL) • ʢൺֱతʣফඅిྗ • ϞϊΫϩͷบʹະདྷײ͕͋Δ • ϓϩάϥϜ͍͢͠ • େը໘ϨΞɺଟ͘ͷͷখ͗͢͞ Δ
• (͜͏͍͏൚༻Կ͔ͷྲྀ༻ͳͷͰɺ ʮΑ͋͘ΔαΠζʯʹภΓ͕͋Δ)
LEDϚτϦΫε • Ԡߴ͍͠ΊͪΌΊͪΌ໌Δ ͍ʂ(໌Δ͗͢Δ) • ղ૾͍ʢ㲈Ͱ͔͍ʣ • ফඅిྗߴ͍ʢًʹΑΔ͕ɺը૾ͷ WS2812Bͷ16x16ϑϧύϫʔͩͱA ͏ɺӈͷྫ໌Δ͞ΛߜͬͨLED෦
͚ͩͷܭଌʣ • ͍҆LEDઢ͕ϦΞϧεύήοςΟʹ ͳ͍ͬͯ(WS2812Bͱ͔σʔλ ઢ1ຊͰࡁΉ͕)
৭ʑݟ͍ͯΔதͰ • ిࢠϖʔύʔ(E Paper Display) ΛങͬͯΈͨ • ৭ʑࢼͨ͠ޙͳͷͰɺ ධՁ͖࣠ͬΓ͓ͯ͠Γɺ ʮ͋ͬʂ͜Εͩʂʯͱײ
• ! ໊ࡳͱͯ͠ࢹ֯࠷ߴ • ! ιϑτΣΞͷ࣮͕ϥΫ • ! ػ࣌ফඅిྗ •
! ిݯΦϑͰදࣔܧଓ • ❌ϞϊΫϩʢ3৭ͷͷ͋Δ͕ߴ͍ʣ • ❌Ԡ͕ѱ͍
৭ʑ͞ΘͬͯΔɺ༷ʑͳಛੑɺධՁ࣠ • ஈɺೖखੑ • ফඅిྗ • ࣮ݱͰ͖Δಛੑʢղ૾ɺ৭ɺʣ • ϋʔυΣΞ࣮ͷָ͞ •
ιϑτΣΞ࣮ͷָ͞
·ͱΊ • ࣮ࡍങͬͯ͞ΘͬͯΈͳ͍ͱධՁ͕࣠Ͱ͖ͳ͍ • ৮͍ͬͯΔͱɺ࣮ඞཁͳՃಛੑݟ͑ͯ͘Δ • ͍҆ӷথ্͔Βݟ͑ΔͱಡΊͳ͍ͱ͔ɺফඅిྗগͳ͍ͱ ͍ͬͯεϦʔϓ͠ͳ͚Ε࣮༻্େࠩͳ͍ͱ͔ • શʹࣗͷཁ͚݅ͩͰબఆͰָ͖͍ͯ࣌͠ظ
• php͕ಈ͔ͳ͍ΠϚΠνͱࢥͬͨΒɺ٫ԼͰ͖Δ
• ʮΑ͠ʂ͋ͱͲ͏ʹ͔ͳΔΖʂʂʯ • ʢࢠڙฒΈͷײ֮ɾఆͰ࣮ߦΛܾҙͨ͠ʂʣ
͋Β͢͡ ʮͦͯ࣌͠2017ʂ͍ͭʹ͍͍ײ͡ͷΈ߹ΘͤΛൃݟʂσ ϞػΛ࡞Γɺbuildersconओ࠻ͷlestrratࢯʹڠྗΛʢञΛͷ·ͤͭ ͭʣ୰ئʂ͢Δͱ͋ΕΑ͋ΕΑͱ͍͏·ʹϝϧΧϦ༷͕ڠࢍΛܾ ఆʂిࢠ໊ࡳͷ։ൃ͕͡·ͬͨͷͩͬͨʂʯ
͍͖ͳΓ·ͱΊʢόοαϦলུʣ • PoCͷσϞػΛϏϧίϯओ࠻ͷ͞ΜʹݟͤΔ(ञΛೖΕͭͭ) • ͍͍ײ৮ͳͷͰɺ෦Ͱݕ౼ΛਐΊɺఏҊʂ اը → ʮ͜Ε͠Ό͡2.0Ͱ͢ʂʯ(৽ن֓೦Ͱͳ͘ɺVerUP) ֓ࢉݟੵ →
ʮ͓҆͘Ͱ͖·͢ʂʯ(ίετμϯؤுΔʂ) • ṖΨδΣοτʹཧղͷ͋ΔϝϧΧϦ༷͕࠾༻ʂ • ʮΑ͠ʂకΊΓ·ͰͩʂͳΜͱͯ͠Δͧʂʯ
͋Β͢͡ ʮࢿۚखʹೖͬͨͷͷɺ։ൃฏୱͳಓͷΓͰͳ͔ͬͨʂ ༷มߋʂ෦ࡐมߋʂઃܭมߋʂ͞·͟·ͳมߋ͕ऻ͍͔͔Δʂ ࣗͷݟ௨͠ͷѱ͞ʹқ͢Δʂ͔͠͠ͳ͕Β్தmacopyࢯͳͲ ؒΛΈ͚ͭɺͳΜͱ͔ྔ࢈ϓϩτλΠϓͨ͠ͷͩͬ ͨʂʂʂʯ
ྔ࢈ϓϩτλΠϓΛͭ͘Ζ͏ʂ • ࣮ࡍͲ͏͍͏Ϟϊ͕Ͱ͖Δͷʁ • ʢࣗͰʣ࡞ΕΔͷʁ • ෦ࡐೖΕΒΕΔͷʁ • ༧ࢉʹऩ·Δͷʁ •
εέδϡʔϧʁ • ͜͜ΒΜΛ͖ͬΓͤ͞Α͏ɻ
None
• ͋Ε͜Εໝ͢Δ࣍͘Β͍ʹָ͍͠ • ͔͠͠ɺݱ࣮ͱ໘͢ΔϑΣʔζ • ͳ͓ɺೖΕಉ࣌ਐߦͰ͢
EPD
Ͳ͏͍͏ͷ͕Ͱ͖Δ ͷʁ • ͜͜Ͱྫྷ੩ʹσϞػΛݟΔ • ͏Μ… • খ͍͞Ͷ… • ໊ࡳͱͯ͠…
• ͱ͍͏͜ͱͰɺ༧ࢉ͕֬ఆ͍ͯ͠Δͷ ʹը໘Λେ͖͘͢Δ͜ͱʹ͠·ͨ͠ʂ ʢʁʣ
ಠΓΑ͕Γͷةͳ͞ • ʮͳͥؾ͔ͮͳ͍ʁʯʮҰਓͰ͔ͬͯͨΒ…ʯ • ʮݟੵΓޙʹ༷େมߋͱ͔͋Δ·͖͡Ͱͳ͍ʁʯ • ʢ΄Μͱ͏ʹ֤Ґ͢Έ·ͤΜͰͨ͠…ʣ • ͔͠͠ɺΦϨಠΓͩͬͨΜͩ…ɻ •
(օڵຯ͋ΕͲɺຊؾͰ࣌ؒΛίϛοτͰ͖ΔਓɺΓগ ͳ͍…ʣ
ؾΛऔΓͯ͠ • αΠζҧ͍Λ֬ೝ • 7.5ίϯτϩʔϥ͕ผͩ͠ɺ·Μ·ϓ ϥ൘ͰંΕͦ͏ • 4.2ίϯτϩʔϥج൫ҰମͰߏతͳ αϙʔτ͕ෆཁ •
ωδ݀͋ΔͷͰɺऔΓָ͚͕ʂ • 4.2ʹܾఆʂ • (ػೳతʹ2.13ύʔγϟϧॻ͖͑ ͋ͬͨͷ͕ͩ…೦)
7.5inch • ബͯ͘ഭྗ͕ͩɺྲྀੴʹׂΕͦ͏
4.2inchͷߋʹྑ͍ͱ͜Ζ • 2.137.5શ෦ͷGPIOΛ࠹͙Α͏ʹͭ ͚ΔʢHATతʣ • 4.2ɺόϥͷpinΛͭͳ͙ • Έཱͯ͠ΜͲ͍ • ଞͷpinʹ৮ΕΔʂϋοΧϒϧʂ
ʮ͍͡Γ͢͞ʯ্͕Δʂ • ࠓճϝϦοτ্͕ճΔ • ʮ݁ՌΦʔϥΠʂʯ
ͱ͍͏͜ͱͰɺଈൃ • ࠃͰऔΓѻ͍ͬͯΔձࣾʹ͍߹ͤͯ͠ൃ • தࠃͷϝʔΧʔʹେྔʹจ͢Δͷʢܦݧଇͱͯ͠ʣෆ҆ • ؔ੫Λ͍Ε͍͕ͯ҆ɺ௨ؔͰϞϝͨ͘ͳ͍ • 2ϲ݄Ͱ౸ண •
ʢ͜ͷओཁ෦ࡐ͕౸ண͢Δ·Ͱɺ҆৺Ͱ͖ͳ͔ͬͨ…ʣ
• ͪͳΈʹɺ࣌༗໊ͳళʢळ݄ɺઍੴɺʣʹऔѻ͕ͳ͍͔ ௐ͕ͨɺͳ͔ͬͨ • (༌ೖࣾͰͳ͍ͷͰɺೖΕ͕͋ͬͯऔѻͷͳ͍ Ҿ͚ͳ͔ͬͨ) • ͰɺࠓऔΓѻͬͯΔͬΆ͍Ͱ͢ɺमཧͰ͖·͢ΑʂΑ͔ͬ ͨͰ͢Ͷʂ •
ྫɿhttps://www.sengoku.co.jp/mod/sgk_cart/detail.php? code=EEHD-58US
൘
༷มߋʹ͏৽ͨͳ՝ • 4.2inchHATํࣜͰͳ͍ͷͰɺ ϥζύΠ͚ͩͰอ࣋Ͱ͖ͳ͍ → ϕʔεʹͳΔͷΛͭ͘Ζ͏ʂ • ࢲʮ͓ۚͳ͍͠ɺμϯϘʔϧͰ͍͍Μ ͡Όͳ͍Ͱ͔͢ʁʯ lestrratʮ͋Γ͑ͳ͍ʂʯ
• ʢίετμϯͰ͕ಶ͍ͬͯΔͱة ݥɺࣸਅ࣌ͷver.0ͷ࣮ʣ
औΓ͚Δʮ·ͱͳʯϞϊ͕ඞཁ • ʮϓϥμϯϘʔϧʁʯʮ·ͣμϯϘʔϧ͔ΒͳΕΑ͏͔ʁʯ • ϓϥʁΞΫϦϧʁABSʁʁమʁPCBʁ • ʮͲ͏ͬͯ࡞Ζ͏…ʯ • ʢํͦ͜·Ͱख׳Ε͍ͯͳ͍ʣ
͜͜Ͱٹੈओొʂ • ॳͷిࢠ໊ࡳ͕ؒδϣΠϯʂ • macopy!!!(@mackee_w) • (hachioji.pmͰͷؒ)
༷ʑͳٞ • mʮ3DϓϦϯλʹ͠·͠ΐ͏Αʯ ʢ˞ macopy3DϓϦϯλ͕झຯͰ͢ʣ • uʮ͑͑…ઈରྔ࢈ΉΓͰ͠ΐ…ʯ • mʮ͔ͨ͠ʹɺͰϨʔβʔΧολʔʁʯ •
uʮ࠾༻ʂʯ • ೋਓʹͳΔͱ͕͍ʂ
• 3DϓϦϯτΊͪΌΊͪΌϋΠίετ • ϞσϦϯά͍͠͠ɺՃ͍ • ϨʔβʔΧολʔ • ن֨ͷ൘ࡐྉ(͍҆)ΛΓൈ͘ͷͰখϩοτͰ͍҆ • Ճ͕͍(ΧολʔʹΑΔ͕ɺҰຕʙ10)
• ෳࡶͳ༷Λூࠁ͢Δͷ(ൺֱత)͍ɺ࣭҆ఆ • ֎͍͢͠(ۀऀ͕ࢁଘࡏ)
ͱ͍͏ࣄͰϨʔβʔΧολʔ • ૉࡐ͕ࣗಈతʹݶఆ • MDF(ͬΆ͍ͳʹ͔) • ΞΫϦϧ • ʮීஈօ͕৮ͬͯͳ͍ૉࡐͷ΄͏͕ྑ ͍ɺMDFʹ͠Α͏ʯ
• ۙॴͷϨʔβʔΧολʔ͕आΓΒΕΔ ίϫʔΩϯάεϖʔεʹߦͬͯΈͨ
ͨͷ͍͠ʂ • ࣸਅϑΥʔΧεࣦഊͰΕͣʹࠇ͍ ઢ͚ͩҾ͔Ε༷ͨࢠͰ͢ɻ
Tips • ҆ՁͳϨʔβʔΧολʔ͋ͳͨͷ༧ ΑΓ͍ • য͕͍͛͢͝͠ɺ࣌ؒಈ͔͢ͱग़ྗ ͕҆ఆͤͣɺΕͳ͍͜ͱ… • Trotec Speedyͱ͔ɺ͍͍Ϡπ͖Ε͍
• େखͷϝΠΧʔζεϖʔεͱ͔ʹ͋ Δͭ • ʮ͓͠ΌΕεϖʔεԕ͍…ʯ
• ࣮ΧΠϯζʹ͋Γ·͢ɻવళ ʹMDFചͬͯΔɻ࠷ߴʂ • ʢ௨Γ͕͢Γͷ͓ͬͪΌΜ͕͛͠͠ ͛ͱ͖ࠐΜͰ͘Δʣ • ͘͢͝ؾʹೖ͚ͬͨͲɺΨϥΨϥͰ ৺ʹͳΔɻ •
ݐͷΧϑΣͰσʔλ࡞ → USBϝϞϦΛ࣋ͬͯϨϯλϧਃ • ʢΧΠϯζߴ͍͍͔ͯ͘Βm2.6͔ ΒωδφοτΛ͓͍ͯɺࡐΛࣺͯ ͤͯ͘͞Εͳ͍͔ͳ…ʁʣ
ͱ͍͏͜ͱͰࢼ࡞Λ܁Γฦ͢
Ұ߸ػ • େମͷܗ͜ͷ࣌ͰͰ͖͍ͯͨ • ՃػͱMDF͕ѱ͍ͷ͔ɺΊͬͪΌয ͛ͨ • μΠιʔͷ͍҆MDFΊͬͪΌয͛ͯ ष͍ʢݟͰ͢ʣ
ೋ߸ʢࠨʣɺࡾ߸ʢӈʣ • ೋ߸όοςϦʔऔΓ͚Λࢼߦࡨޡ ͍ͯͨ͠ʢݱࡏͱಉ͡όοςϦʔΛɺ Լ෦ʹԣʹ͚ͭΔ༧ఆͩͬͨʣ • ࡾ߸൘ްΛ4mmʹɺόοςϦʔऔΓ ͚͕݀·ͩͳ͍ʢ࣌ผͷฏ͍ͨ όοςϦʔΛ͏༧ఆͩͬͨʣɺΰϜ όϯυϦϒՃ
• sponsorΛs"u"ponsorͱ͍͏க໋తͳε ϖϧϛεw
None
ݱ߹Θͤͷ3.5߸ • όοςϦʔΛΊͯݻఆ͢ΔࣄΛࢥ͍ ͖ͭɺݱ߹Θͤ͢ΔͨΊʹՃ • ࣦഊ࡞ʢ͕݀ൈ͚ͳ͔ͬͨʣΛࢳڒͰ Δ • MDFׂΕͳ͍͠ɺ͘͞͞Εͳ͍ͷ ͰՃ͕҆શͰΑ͍
• MDFͱࢴͷؒ͘Β͍ͷϞϊ • (ָͩͱݴ͍ͬͯͳ͍ɺׂͱͩ͘)
࢛߸(ྔ࢈લࢼ࡞) • όοςϦʔऔΓ͚݀Λ࣮ࡍʹ͚ͭͨ • ϥζύΠཪͷ݀͛ͨ • ී௨ͷϥζύΠऔΓ͚݀Λ૿͠ɺ ֦ுੑΛ͋͛ͨ • ༷Λௐ
• εϖϧϛεΛͨ͠
࠷ऴతͳಛͷհ • όοςϦʔ͕མͪʹ͍͘ΊࠐΈࣜ • ͔͍͍ͬ͜ʢओ؍ʣάϥϑΟοΫ • ࣮Ͱ͔͍ϥζύΠ֦ͭ͘ுੑ • ԣஔ͖Ͱ͖Δ݀ (݀ʹͳʹ͔͍ͯͩ͘͞͠͞)
• GPIOʹ৮Γ์ͷ͍݀
Αʔ͠ɺ൘Λྔ࢈͢Δͧʂ • େମ3ʙ5͘Β͍ΧΠϯζʹ௨͍ͭΊΕ͍͚ͦ͏ʂ • ̍̔࣌ؒɺٳΈແ͘ɺΧολʔ͕ނোͤͣɺMDFΛೖΕ ΒΕΔͱͯ͠ • ϋϋϋͭ͜Ίϋϋϋ • ۀऀʹґཔ͠·͠ΐ͏
Ͳ͜ͷۀऀʹ͢Δ͔ʁ • άάͬͯ5Օॴ͘Β͍ʹݟੵΓΛͱͬͨ • ࢼ࡞σʔλʢaiʣ ࢼ࡞࣌ͷػࡐ໊ ࢼ࡞ग़ྗͷࣸਅ رࡐྉʢMDF 4mmްʣ رೲظ
Λهࡌͯ͠ϝʔϧ͢ΕɺେମͲ͜ͳ̍͘ʙ̎ӦۀͰ ݟੵΓ͕͖ͨɻ
ݟੵΓͷΒ͖ͭɺఏҊͷࠩ • Aʮʢ͘͢͝ૉૣ͍ϨεͰʣ60ສͰ͢ɺ͓ຍલʹೲ͠·͢ʯ • Bʮ20ສͰ͢ɺয͛ରࡦ͠·͢ɻσʔλܗࣜ͜Εʹม͑ͯͩ͘ ͍͞ɺ͓ຍલʹൃૹʯ • Cʮ10ສͰ͢ʂͲ͏Ͱ͔͢ʂೲظड࣌ʹ͓͑͠·͢ʂʯ • Dʮ40ສͱͳΓ·͢ɺೲظདྷ݄ʯ
• ૯߹తʹBʹͨ͠ɺ౸ண·Ͱ13΄Ͳ͔͔ͬͨ
None
• ຊςετൃͯ͠ൺֱ͔ͨͬͨ͠ • ͓ຍલͰ͕࣌ؒͳ͔ͬͨ(ࣗۀࣗಘ) • ݁Ռɺூࠁ෦͕ࢼ࡞ΑΓͪΐͬͱூ Γ͕ਂ͘ͳͬͨʢೱ͘ͳͬͨʣ • ΠϝʔδͱมΘ͕ͬͨɺࡉ͔͍จ ࣈͳͲΫοΩϦͨ͠
• ூࠁ෦ʢృΓઢʣɺʮਂ͞ʯΛ۩ ମతʹࢦఆ͢Δ͜ͱ͍͘͢͝͠ • (MDFΧολʔछྨ͕৭ʑ͋Δ ͠ɺҹͷ༷ʹߍਖ਼͢Δࢦඪͳ͍)
• ͕࣌ؒ͋Δʹ༨༟͕͋Δ Ͱͳ͍ ͕࣌ؒ͋ΔʹվળͰ͖Δʮ༨ʯ͕͋Δ Ͱ͢ɻ • ࣌ؒʮ࡞ۀΛޙճ͠ʹͰ͖ΔνέοτʯͰͳ͍ʂʂ • Կॻ͖·͕͢ɺʮ࣌ؒʯʮ͓ۚʯͱಉ͘͡Β͍վળʹܨ ͕Δڧ͍ྗͰ͢ɻ͕Μͬͯ༻ҙ͠·͠ΐ͏ɻ
• ʢॻ͍͍ͯͯࣗͰ಄͕௧͘ͳ͖ͬͯͨ…ʣ
ͱ͍͏͜ͱͰ൘͕Ͱ͖ͨɻ • RPzEPD͏͋Δɻ • ʮ͋ͱΈཱͯΔ͚ͩͰͰʁʂʯ • ͍͍…όοςϦʔʁ
όοςϦʔ
Ξς͋ͬͨ • ʮμΠιʔͷ̏̌̌ԁͷ͕͍͍ͭΑɺ͍҆͠ʂʯ • mʮͳΜ͔Ͳ͜ʹചͬͯͳ͍Ͱ͢Αʯuʮ·͡Ͱʯ • Εʂʂʂೖՙະఆʂʂʂ • ʮ͡Ό͋…μΠιʔͷബ͍̑̌̌ԁͷͭʹ͠Α͏…ʯ •
จෆՄೳʂʂʂ • ͪΐͬͱ·ͬͯ…ʁ͘ͳ͍…ʁ
• 100ۉจͰ͖ΔͷͱɺͰ͖ͳ͍ͷ͕͋Δ • (ͦ͏͍͏ചͰ͋Δ) • ఆ͍ͯͨ͠όοςϦʔ͕จͰ͖ͳ͍ʂ ʢ͕࣌ؒ͋ͬͯʂࡏݿͱ͔ؔͳ͘ʂʣ • ࣮ϞόΠϧόοςϦʔߴ͍ɺඦԁͰߟ͍͑ͯͨͷʹ… 1000ԁݫ͍͠…
• ͍ʂ → ٸ͍ͰଞΛ୳͢
• ผͷೖखઌΛ͕͞͞ͳ͍ͱʂ • ָఱͰʮશʹҰகʯΛΈ͚ͭͨ • ଈҰݸߪೖɺ΄΅શʹҰகΛ֬ೝ • ൢചձࣾʹ࿈བྷ͠ɺେྔߪೖͰ͖Δ͔ ࣭ →
OK! • ༧ࢉΦʔόʔ͕ͩɺखͰ͖ͨʂ • ˇ200ʢˎ210ʹˇ42000ʣ্ঢɺ ݁ߏ௧͍ • ࢮʹҰੜ • ౸ணͯ͠ຊʹ҆৺ͨ͠…
Tips • ಧ͘·Ͱɺ҆৺͢Δͳʂ • օେ͖amazonൢചళͱަবͰ͖ͳ͍ • ָఱͰ͖Δʢී௨ʹ࿈བྷઌ͕͔͍ͯ͋Δʣ • ళͱϝʔϧɺిͳͲͰަব͢Δͱྑ͍ʢতྗʣ •
Ξιʔτʢ৭ҧ͍͕ࠞ͟Δʣަব࣍ୈ • ʢࠓճϐϯΫΛ͍ͨʣ
USB έʔϒϧ • όοςϦʔʹ͍͖ͭͯͨΦϚέͷUSB έʔϒϧ͕ॆిઐ༻ͩͬͨ • ͠·ͬͨɺ͜͜࠷ॳͷఆαϯϓϧ ͱҧ͏͔… • ͜Ε·ͨผ్ങ͏ඞཁʢΪΤʔʣ
• ༧ࢉͳ͍͠ɺ100ۉͰ͍͖͍ͬͯͨ • μΠιʔ → ແ͍ʢΕʣ • μϝݩͰࢼͣ͞ΩϟϯυΡͷ௨ൢʢ36 ݸ͔Βʣ →
ʮବͰͨ͠ʂʂʯ • μϝݩͰηϦΞʹ… • ʮ͑ͬɺ͍͍έʔϒϧࢁ͋Δͧʁʯ • ࡾछྨങ͏ → શ෦௨৴OKʂ • શ෦100ԁ
• 2AॆిͰ͖ʢͱ͏͍ͨͬͯΔʣ microUSBࢠ͕྆໘ʢن֨ͱ…ʁʣ ௨৴OKͳϞϊʹ͠·ͨ͠ɻ • 100ԁͰ͜ͷεϖοΫྑ͍ • Σϒ͔Β͍߹Θͤˠ ʮ300ݸ͔ΒOKͰ͢ʯ •
༨Δ͕ɺഎʹෲ͔͑ΒΕͳ͍ͳʂ • ΓऔΓʹ2d,ଈৼࠐΈͯ͠1w΄ͲͰ ແࣄ౸ண
༨ͬͨUSBέʔϒϧ • ॆిઐ༻200ຊ…σʔλ௨৴70ຊ… • ͍ΈͪืूதͰ͢… • (ಉࠝ͠Α͏͔ͱࢥ͚ͬͨͲɺʮσʔ λʯʮॆిઐ༻ʯέʔϒϧΛऔΓؒҧ ͑ͯ͏͔͝ͳ͍ʂͱ͍͏ใࠂ͕ଟ͔ͬ ͨͷͰΊ·ͨ͠)
• όοςϦʔͱɺέʔϒϧղܾͨ͠ɺ ͋ͱ… • microSDʂ
microSD • ͜Ε࣮݁ߏߴ͍͠ɺ͍҆ͷෆ҆ • amazon.co.jpͱ͔ɺͬͯΈΔͱΘ͔Δ͕ඦݸങ͑ͳ͍ • ʮࢁങ͑Δʂʯͱ͍͏ᨳ͍จ۟ͷۀऀߴ͍…ࢁങ͏ͷʹ… • (Ձ֨ʹͩ͜ΘΒͳ͚Ε͘͠ͳ͍) •
͔ͨ͠ͳ͍ͷͰɺ৭ʑͳͱ͜ΖͰɺ҆ΛҰݸ͔ͮͭͬͯͨΊ ͯ͠ΈΔ
• ;ͱɺۙॴͷυεύϥʹߦͬͯΈͨΒ͍҆8GB͕ • ࣗෲͰങͬͯࢼ͢ˠେৎͦ͏ʂ • ʮ͜Εɺࢁ΄͍͠ΜͰ͚͢Ͳʯ ʮԿݸͰ͔͢ʁʯ ʮ210ݸʯ ʮ…গʑ͓ͪΛʯ •
͔݁Β͍ͬͯจͰ͖ͨɺւ֎͔ΒऔΓدͤɻ
ஈʑมΘΔ • ݟੵΓ͕དྷͨͷͰɺޙൃ͠ʹళฮ (;ͱɺళ಄ͷಉҰΛݟͯ) ͏ʮ…ݟੵ࣌ΑΓԼ͕Γͯ͠·͕͢ɺ͜ΕʹͳΓ·͢ʁʯ υʮ…Θ͔Γ·ͨ͠ʂʯ • ҙਂ͘ݟΔͱಘ͢Δ͜ͱ͋Δ͆ • ී௨ݟੵΓ͕࣌ਖ਼ͳͷͰɺஃަবྑ͘ͳ͍͚Ͳɺ
ରԠͯ͘͠Εͯ͋Γ͕ͱ͏υεύϥʂ
• ݟੵ̏ɺൃ̍ɺ౸ண·Ͱ2ʙ3ि • ʮόοςϦʔʹ͘ΒΕΠʔδʔϞ ʔυ͗͢Δʯ • ͔͠͠ɺఆ֎͕ͳ͍Θ͚Ͱͳ͔ͬ ͨʂ
ϩοτ͕มΘΔ • શ͘ಉ͡ʹΈ͑Δ͕ผϞϊ • ϊʔϒϥϯυɺϞϊ͕มΘΔ
None
None
͕ҧ͏ʂʂ
༰ྔ͕ҧ͏ʂʂʂ • (ΞλϦͩͬͨΒ͓ΊͰͱ͏͍͟͝·͢ʂ) • (࣮༻্ʮ·ͬͬͨ͘ʯࠩ͋Γ·ͤΜ)
8GB != 8GB • ʢϒϥϯυͦΜͳࣄͳ͍͔ʣ • ͭ·ΓɺσΟεΫΠϝʔδΛSDҰഋʹ࡞ΔͱޙͰ٧Έ·͢ʂ • ࠓճ2GBҎԼͰΠϝʔδͭ͘Γ·ͨ͠ •
খ͍͞ํ͕Ϗϧυָͩ͠ • (raspbianͷॳճىಈ࣌ͷresizeΛফͨ͠) • ʮ2GBҎԼͳΒGitHubͷReleaseʹULͰ͖ͯศརʂʯ
ͱ͍͏͜ͱͰ • RPz,EPD,൘,όοςϦʔ,USBέʔϒϧ,microSD • ᘳͩͳʂ • ͍͍͑ɺ·ͩ͋Γ·͢
ωδʂ • ʮ྆໘ςʔϓͰ…ʯ ʮΊΖʯ • ωδΛങ͏ɺͰͲ͜Ͱʁ
• ϗϜηϯ → ·ͣM2.6ͱ͔ແ͍ • amazonͱ͔ → ΄ͱΜͲແ͍ • ۀൢ
→ ࠷খϩοτ͕ສ୯Ґɺʮૉਓ͝ԕྀ͍ͩ͘͞ʯ • ϓϩ͚௨ൢ → ݁ߏ͔͍ͨ… ʢ͠ɺຊདྷݸਓͬͨΒବʣ ʢ·͋ϑϦʔϥϯεͰ͋Δ͠…ʣ • ʮͦͦن֨දݟͯɺਖ਼Α͘Θ͔ΒΜͳʯ
ͦΜͳ࣌ळ༿ݪ • ిࢠʹߦ͘ • => ݱΛݸങͬͯΈΔ • => ͦͷͰ٤ళʹߦ͖ɺ͘ΈͨͯͯΈΔ •
=> ʮΑ͠ʂ͜Εͩʂʯ • (ඇৗʹ໌շɺ̎࣌ؒάάΔͳΒͬ͞͞ͱΞΩόʹߦ͖͘)
• ʮ͜Ε͍ͩ͘͞ʯ ʮԿݸͰ͔͢ʁʯ ʮ4000ݸ͘Β͍ʯ ʮ4000͋Δ͔ͳʙʙʯ ʢ͓ΉΖʹ͔Γʹβϥβϥͱྲྀ͠ࠐΉʣ • ʢ͕͢͞ઐళɺऔΓཚ͞ͳ͍ʣ • ʢ͜ΕܥͷళΫϨΧ͔ͭ͑ͳ͍ࣄଟ͍ͷͰҙʣ
• ʮ೦ɺ΄͍͠φοτͷࡏݿ͕ΪϦΪϦޙ500ݸͨΓͳ͍ʯ • ͳͷͰɺφοτͷ༷Λͪΐͬͱม͑ͨɻ • ͳ͓ɺΕ͍ͯ͠ΔͷΛൃ͢Δͱ2ϲ݄ͩͦ͏Ͱ͢ • (͜ͷ࣌Ͱ2ϲ݄͓ͬͯΓɺϠό͔ͬͨʣ • ωοτͰݟ͔͚ͨΑ͏ͳಛघͳωδ·ͬͨ͘ແ͍ࣄ͋Δ͠
ʮങ͑Δʢങ͍͍͢ʣʯϞϊͰఘΊΔͷॏཁ
• ݁Ռɺ4ສԁڧ • ωδଟ͍ͱ݁ߏ͔͍ͨͳʂ ʢωδΛݟΔ͕มΘΔ… ɹEPDʹ࠷ॳ͔Β͍͍ͭͯͨωδશ෦ࣺ͕ͣͯͯͨ͠… ɹ͜Εී௨ʹങ͑2ສҐͨ͠ͷͰ…ʣ
ྔΓചΓ͍ͭͯ • ʮ͜Ε…͋ͬͯΜͷ͔ͳʁʯ ʢ͔֬Ίͨ͘ͳ͍ʣ • ݁ɺ ωδΪϦΪϦΓͯʢͭ·Γਖ਼͍͠ φοτ݁ߏ༨ͬͨ • (1%ҎԼͷޡࠩͩͱࢥ͏)
• ͕͢͞ʹͪΌΜͱͯ͠Δɻ • ༨ΒͤΔͷԿ͕ͩɺଟগ༨༟Λ ͬͨํ͕Αͦ͞͏ɻ
Tips • ྔ͕͋ΔͱεοΰΠॏ͍ɺ͍ͭͰͷ༻ࣄઌʹ͢·ͤ·͠ΐ͏
Αʔ͜͠ΕͰʂ • ͍ɺ·ͩ͋Γ·͢ • ؇িࡐʢͱ͍͏͔ࠝแࡐʣɺ ϓνϓνͷ੩ిࢭା • 2(ย໘͕ತԜ)ͱ3(྆໘͕ฏ໘)͕͋ Γ·͢ɻένΒͣ3͕Α͍Ͱ͠ΐ͏ɻ •
ੇ๏ʹ͓͍ͯɺॎԣ͚ͩͰͳ͘ɺϖ ίϦʢંΓฦ͠෦ʣΛͪΌΜͱݟ· ͠ΐ͏ɻ • ී௨ʹamazonͰߪೖʢָ͗͢Δ…ʣ
ͱ͍͏͜ͱͰ • શ෦͕͋ͭ·ͬͨͧʂʂʂ • (ଞʹΰϜόϯυ͕͕͋ͬͨɺamazonͰങͬͨ) • ϓϩτλΠϓ(?)ʂ͋ͱΈཱͯΔ͚ͩʂ
ʮ࡞ͬͨʂͱ͍͏͕…ʯ • ·ʮࠓճզʑ͕ͬͨ͜ͱ…ͭ·ΓͳͷͰʁʯ • ͏ʮγʔοʂʂʯ
͋Β͢͡ ʮଓʑͱू·Δ෦ʂͦͯ͠શ෦ͱ༐ऀ͕ौ୩ʹू݁ʂօӈख ʹυϥΠόʔΛͪɺ·ΔͰϚγʔϯͷΑ͏ʹऔΓΉʂʂ࣍ʑ ʹΈ্͕Δిࢠ໊ࡳʂઓ૪ͷΑ͏ͳΈཱ͕ͯऴΘͬͨ࣌ɺօ ͷલʹେྔͷిࢠ໊ࡳ͕͍ͬͨμϯϘʔϧ͕ͦͼཱ͑ͭͷ ͩͬͨʂʂʂʯ
ࢼ͠ʹҰݸΜͰΈͨ • Ұݸେମ5ʙ10͘Β͍ • 200ݸ͘Β͍͋Δ • ͳΔ΄Ͳ2000ʁ • ʹ 33.3hourʢٳΈແ͠ʣ
• ͗ΐ͑ͬʂ
ਓւઓज़ • ϏϧίϯSlackʹͯʮٸืɿωδճ͕͠ ಘҙͳਓʯ • ελοϑͷπςͰVOYAGE GROUP༷ͷ ΦϑΟε͓आΓͰ͖ͨɺ͋Γ͕ͱ͏͝ ͍͟·͢ʂ •
ंͰશ෦ࡐΛ࣋ͪࠐΈɺେྔੜ࢈ • 9ਓ͕͔ΓɺҰͰͳΜͱ͔ྃ • chocopie116ࢯɺdoi-tࢯɺmorizooo ࢯɺsatoࢯɺuessyࢯɺmacopyࢯɺ lestrratࢯɺͦͯ͠࠺ɺ͋Γ͕ͱ͏…ɻ
ཱ͔࣌͠͠ʹ༙͍ͯ͘Δ
ෆྑ • EPDͱج൫ͷϑϨΩΛ͜͡Δͱ෮׆ʂ • ͠ͳ͍ͭ͋ͬͨ… • ϥζύΠͱͭͳ͙έʔϒϧ͕͓͔͍͠ ͷ • →
ෆ҆ͳͷͰɺ͘ɻ
όοςϦʔ • ௨ి͠ͳ͍ͳʁ์ిͯ͠Δͷ͔ʁ -> ॆిͰ͖ͳ͍ɺյΕͯΔ… • ʮ͓͍ɺ͜Εࢠ͓Εͨͧʁʯ
ԚΕ • (ͳΜ͔ϕλϦͱΑ͝ΕͯΔͳɺ১͜͏) • ʮ…ʁʯ • ͜ͷԚΕ…อޢγʔϧͷԼʹ ͍Δͩͱ…ʁ • QC
OKͷγʔϧҰମͳΜͩͬͨͷ͔
ඍົͳϐϯζϨ • Ұݸ͚ͩɺϐϯ͕ͣΕ͍ͯΔͷ͋ ͬͨ • ʮ࣏ͤΔ͠ɺ͜Εྑʢ͍ͩͿζϨ ͖͍ͯͯΔՁ؍ʣʯ • ஸೡʹઌग़͠ηϯυόοΫରԠ͍ͨͩ ͍ͨ
• KSY͞Μ࠷ߴʂࠓޙޚࣾͰϥζύΠ ങ͍·͢ʂ
݁Ռతʹશݕࠪ • EPDɿ (ԚΕɺέʔϒϧؚ) ෆྑ 2% ΄Ͳ • όοςϦʔɿ ෆྑ
5% • ϥζύΠɿ 1͚ͭͩϐϯζϨɺަ • microSDʀ̍ຕॻ͖ࠐΈ͕ົʹ͍ͷ • ʮશݕࠪɺඞཁ͗͢Δ…ʯ
ಥʹɺ෦ࡏݿཧͷ • ʮ։ൃ༻ʯʢࣗෲͰ͋ͬͨͱͯ͠ʣ • ʮྔ࢈༻ʯ • ʮࣄલ༻ʯʢςετελοϑͳͲʣ • ʮσϞ͓͠༻ʯʢڠࢍاۀ༷ͳͲʣ •
શ෦ผͰݕ౼ɾཧͨ͠΄͏͕Α͍ • ʮྔ࢈ʯ͚ͩͰཧͯͨ͠Β͍ͩͿࠞཚͨ͠ɻ
શ์ిͨ͠USBόοςϦʔ • ͪΐͬͱҐిྗ͋Δͱࢥ͕ͬͨɺશ์ి͕ଟ͗͢Δɻ ॆి͠Α͏ɻ • Ұຊ̐࣌ؒʢʁʣ* 210ຊ = 840h •
≒ 35 • (͜ͷ࣌ͰɺΓ݄Ґʣ • ࢁҰʹॆి͠Α͏ʂʂ
• 16ϙʔτͰ16ഒͩʂ • Πϧϛωʔγϣϯ៉ྷ • ࠺ʮ͜ΕՐࣄʹͳΒͳ͍ͷʁʯ ͏ʮͳΒͳ͍…ͱࢥ͍͍ͨ…ʯ (ͳΒͳ͔ͬͨ) • 4ϙʔτߴग़ྗUSBॆిث೩͑Δ΄Ͳ
ൃͨ͠ͷͰ3ϙʔτʹ͕ͨ͠ɺͲ͏Ͱ ͍͍13ϙʔτͷσʔλHUB13ݸͿ ΒԼ͛ͯԹ͔͍ఔͰॆిͰ͖ͯศ རͩͬͨ…ɻ (ຊʹॆిͰ͖ͯΔ͔ෆ҆ͳ΄Ͳʹ)
ຊମ͕ग़དྷͨʂmicroSDমͧ͘ʂ • खͰম͘ͱɺҰݸম͘ͷʹ5 • 5 * 210 / 60 =
17.5h • ʢ5ʹҰׂΓࠐΈ͕ೖΔ࡞ۀΛٳΈແ͠Ͱͬͨ߹ʣ • ·͋ɺΘ͔͍ͬͯͨΑʂ
• σϡϓϦέʔγϣϯۀऀΛ͔ͭ͏ͱɺ େମ10ʙ30ສ͢ΔͷͰݕ౼֎ • ϓϩ༻ͷσϡϓϦέʔλʔػࡐߴ͍ (20ʙ50ສͱ͔͢Δ) • ͜ΕྲྀੴʹݸਓͰങ͍ͨ͘ͳ͍… • ͱ͍͏͜ͱͰ…
ʮϏϧίϯϚγϯʯര • 10 ϙʔτͷUSBΛଓͨͭ͠ • USB3.0ߏʂ • Ұຊ̍ສԁʂ • 30Ͱ10ຕম͚·͢ʂʢ࣮ʣ
• 10ഒͰͳ͍ɺҊ֎͍
• 210ຕ / 10 * 30 / 60 • =
10.5࣌ؒ(ٳΈແ͠) • ॏཁͳͷɺख͕ؒ30ʹҰͳ͜ͱ ͱख͕ؒ1/10ͳ͜ͱʂ • ʮ10࣌ؒΩϥΩϥͰΩϨΠʂ()ʯ • ιϑτແʹEtcher • ৴པੑˍָ͞ˍϕϦϑΝΠ͖ • (EtcherෳυϥΠϒॻ͖ࠐΈػೳ ͕͋Δ)
ͱ͍͏͜ͱͰ • ϋʔυΣΞམͪண͍ͨͷͰ͋ͬͨ… • ʮ͏ʰͰ͖ͨʱͳʂʂʯʢຫ৺ʣ • (͜ͷ࣌͢Ͱʹ͓ຍޙ…)
͋Β͢͡ ʮϋʔυ͕ͯ͠ιϑτ͕ͳ͚Ελμͷ൘ʂ ʰ͜ΕͲ͏͔ͬͯͭ͏ΜͰ͔͢ʁʱ ʰ͑ͬɺεϚϗͰ͔ͭ͑ͳ͍ͷʁʱ ʰೝࣝ͠ͳ͍ΜͰ͚͢Ͳ…ʱ ༷ʑͳόάཁٻ͕զઌʹऻ͍͔͔Δʂʂࠁʑͱ͗͢Δ࣌ؒʂʂ ݟ͑ͳ͍ϦϦʔεʂʂखݩͰ࠶ݱ͠ͳ͍όάʂʂՌͨͯ͠ιϑ τΣΞ͢Δͷ͔ʂʁʯ
Φν: ͠·ͨ͠ʂʢʁʣ • https://github.com/builderscon/electronic_badge_2018 • ҰԠࠓͷࣗιϑτΣΞ͕ຊۀͳͷͰؤுͬͨ ʢͳ͓ɺ͜ͷεϥΠυॻ͍ͯΔ࣌Ͱͯ͠ͳ͍͔ʣ
ॳͷఆ • ʮօϋοΧʔͩ͠ɺ ɾόϥͷ෦Ͱͯ͠ ɾHelloworld͘Β͍ͷςετίʔυ ɾυΩϡϝϯτID/PASS ͘Β͍Ͱ͍͍ΑͶʂʯ
͝ҙݟ • ʮઈରΈΜͳ࡞ΒΜʯ => ཱࡁΈ • ʮsshΒͳ͍ਓ͍ΔͰ͠ΐʯ => USBϝϞϦϚϯτՄೳʹ •
ʮεϚϗͷਓͲ͏͢Δͷʁʯ => ΫϥυରԠʂʂ • ͲΕ͍͍ͪͪ͝ɺଞਓͷҙݟॏཁʂ
ແݶʹ৳ͼΔTodo • ΊͬͪΌେมͩͳ… • (ݟ͍ͯΔ͚ͩͰ಄௧͕) • ఘΊ߲͍͔ͨͭ͘…
• ໊ࡳͷϥΠϒϥϦ͕Python2ͩͬͨͷͰɺ3ରԠ • ໊ࡳΞϓϦࣗମɺςΩετ,ը૾ΛEPDʹදࣔ͢ΔCLIπʔϧ • ໊ࡳΛUSB υϥΠϒNICͱͯ͠ೝࣝͤ͞Δߏ • USBυϥΠϒʹઃఆϑΝΠϧΛஔ͘ͱڍಈذ •
ݎ࿚(?)ʹͳΔΑ͏ʹ֤छىಈ࣌ࣗݾஅɺࣗݾम෮ • ΫϥυʹΑΔը૾ొ • etc,etc.
• ࠭യͷgithubʹଟগ͕ੜ͑Δ • (squashͨ͠ͷΛؚΊΔͱɺ 300ίϛοτ΄Ͳ) • ʮࣄ͡ΌΜ͜Εʯ
ిࢠ໊ࡳ։ൃ࣌ͷख๏
ίʔσΟϯάڥ • MacͱpycharmͰ։ൃͯ͠సૹ͠ • ࣮ػʹsshͯ͠vimͰඍௐ • ࣮ػʹPython3.6ΛೖΕΔͷఘΊͨ • खؒɺσΟεΫ༰ྔɺ݁ߏඞཁ •
pyenvͰ3.5ΛMacʹ
MacͰ։ൃ͢ΔͨΊʹ • EPDͷϥΠϒϥϦɺPILΛड͚͚͍ͯͨ • PIL.show()ͰϨϯμϦϯά݁ՌΛදࣔͰ͖Δ • EPD_PSEUDO_MODEͳͲεΠονΛ͚ͭͯɺPCͰඳըϩδοΫ ςετ͕Ͱ͖ΔΑ͏ʹ • ৼΓฦΔͱɺ͜Ε͔ͳΓॏཁͩͬͨ
Linuxڥ͋ͬͨ΄͏͕ྑ͍ • ext4Λ͖ͪΜͱϚϯτͰ͖Δ͔Β • ىಈ͠ͳ͘ͳͬͨ࣌ʹதΛݟΔඞཁ͕͋Δ͔Β • ԾڥͰՄɻ • ྫɿParallelsMacͷཧUSBΛVMʹૠͤΔ •
(VirtualBoxͱ͔Ͱɺ·ͱʹಈ͘ͷ͔Βͳ͍)
Tips ΠϝʔδϑΝΠϧΛϚϯτ • ΠϝʔδϑΝΠϧΦϑηοτࢦఆ͢ΕϚϯτͰ͖Δ • ޙ͔Βࠟগͳ͘ΠϝʔδΛվม͢Δ͜ͱͰ͖Δ $ mount -v -o
offset=50331648 -t ext4 micro_sd.img /mnt/nafuda
Windows͋ͬͨ΄͏͕Α͍ • વͳ͕ΒɺWindowsͰͷಈ࡞ςετඞཁͳͷͰɻ • ಉ༷ʹɺ·ͱͳԾԽιϑτΣΞͳΒVMͰςετ͢Δ͜ͱ Ͱ͖Δͣʢg_etherͷυϥΠόΛࢼͨ͠ΓͳͲͨ͠ʣ
։ൃ࣌ͷཧɾίʔυసૹ • Git(Hub)͔Zip͔ → GitͰʂ • ࣮ػͰͪ͝Όͬͱ͍ͬͯ͡ɺdiff͕ݟΕΔͷ࠷ߴʂ • ΰϛίϛοτ͕૿͑·͘Δ…ͷఘΊΔʢ͋Δ͍ྺ࢙վ͟ Μʣ
• ࣮ػͰ͍ͬͯ͡ɺίϛοτ࿙Εͷ··ॳظԽͯ͠ফ͑ͨίʔυ গʑ͋Δ
• ΠϝʔδΛͲ͏ϦϦʔε͢Δ͔ • 2GB͋ΔBLOB • Ͳ͔͜ͷΣϒαʔόʔʹஔ͘ʁίετ͔͚ͨ͘ͳ͍ͳ… • lestrratࢯʮGitHub ͷReleaseʁʯ •
͑ͬɺ2GB·Ͱλμʁʙ͍͍ͷʁଠͬෲʙʙ • ͨͩɺULʹ̍࣌ؒ͘Β͍͔͔ΔͷͭΒ͍…
journaldΛͪΌΜͱ͏ • ։ൃػͰϩάΛ͢Α͏ʹઃఆ͢Δʢແઃఆͩͱɺشൃʣ • journalctl -b -1 -u nafuda-bootup •
buΦϓγϣϯͰʮNճલͷిݯೖ࣌ɺಛఆͷαʔϏεʯ ͚ͩݟΕΔ • lessͰϩϩ͠ͳ͍͍ͯ͘ʂศརʂ • (୯ʹϑΝΠϧʹग़͍ͨ࣌͠ෆศ…)
ઃఆ # /etc/systemd/journald.conf ʹه [Journal] Storage=persistent SystemMaxUse=128M ө sudo mkdir
/var/log/journal sudo systemctl restart systemd-journald
੍࡞ͨ͠ιϑτΣΞʹ͍ͭͯ • େ͖͚ͯ͘2ͭ • EPDඳըͷαϯϓϧίʔυ • Py3ରԠͷϥΠϒϥϦɺ໊ࡳ༻εϥΠυγϣʔͳͲ • bootup •
ʮిࢠ໊ࡳʯͷϑΝʔϜΣΞΈ͍ͨͳͷ • NAFUDAυϥΠϒ࣮ݱɺىಈ࣌ࣗݾॳظઃఆͳͲ
simple-nafuda • Կͷมͳ͍ը૾εϥΠυγϣʔ • ʮ͑ͬɺ͜Εύιίϯ͕ͳ͍ͱ͑ͳ͍ͷʁʯͱ͍͏࠺ͷҰݴ ͰΫϥυػೳՃ • ࠷ॳPHPͰॻ͜͏ͱࢥ͍͕ͬͯͨɺ͕࣌ؒͳ͔ͬͨͷͰ Pythonʹͳͬͨ •
มͳ͍͠ɺ಄ͷʮిࢠ໊ࡳհʯͱ͔ͿΔͷͰলུ
bootup • ύεϫʔυॳظԽ • ϗετωʔϜॳظԽ • NAFUDAυϥΠϒ༗ޮԽ • ͋Δ͍Gadget Ether,serial༗ޮԽ
• simple-nafuda ໊ࡳϓϩάϥϜىಈ • Λىಈ࣌ʹߦ͏ɺେͳBashεΫϦϓτ
ϔουϨεͳϚγϯ • ىಈεΫϦϓτΛ৭ʑՃ͍ͯ͠Δ • ϛεΔͱىಈʹࣦഊ͢Δʂ • 㙽ʹ֯ϋʔυΣΞͷγϦΞϧඞཁ • ϒʔτϩά͕ݟΕͯɺwifi͕ࢮΜͰγΣϧʹ৮ΕΔ •
quietɺ࠷ޙ·Ͱͷͨ͜͠΄͏͕҆৺ • Linux ڥอݥͱͯ͠ཉ͍͠ॴʢSDΛ֎ͰϚϯτʣ
ύεϫʔυੜʁ͍Δͷʁ • linuxͷΨδΣοτʹϦϞʔτϩάΠϯͰ͖Δ࠷ߴʂ͕ͩ…ɻ • RaspbianͷσϑΥϧτ pi / raspberry • ʮύεϫʔυͲ͏ͤσϑΥϧτͰ͠ΐʁจࣈ௨ΓϦϞʔτ
ͰϋοΫ͠·͘ΔΘʂʂʂʢসإʯͱ͍͏ํ͕͍Βͬ͠Όͬͨ ͷͰ… • ύεϫʔυੜ͠ͳ͍ͱବͩͳ…
# ϥϯμϜจࣈྻΛύεϫʔυ༻ʹੜ͢Δ /usr/bin/openssl rand -base64 6 > /boot/default_passwd.txt /bin/echo "pi:`/bin/cat
/boot/default_passwd.txt`" | /usr/sbin/chpasswd • chpasswdSTDIN͔ΒύεϫʔυΛ͏͚͚ͭͯมߋͯ͘͠ΕΔ
• ੜͨ͠ύεϫʔυɺNAFUDAυϥΠϒ͔Βݟ͑ΔΑ͏ʹ͠ ͓͍ͯͨ • ىಈ࣌ͷใදࣔʹɺύεϫʔυΛද͍ࣔͯ͠Δ • ʢͭ·Γɺ͜Ε໊ࡳΛϦϞʔτͰָʹϋοΫͤ͞ͳ͍ҝͰɺ ໊ࡳͷηΩϡΞ͞Λ্͛ΔҝͰͳ͍ɻ໊ࡳʹॏཁͳσʔλΛ ͍Εͳ͍Α͏ʹʂʣ
͜ͷॲཧʮॳظύεϫʔυ࣌ͷΈʯ • Raspbianݩʑ/run/sshwarnͷΈ͕͋ΓɺσϑΥϧτύε ϫʔυͩͱlogin࣌ʹܯࠂ͕ग़Δ • ར༻͔͕ͨͬͨ͠ɺPAMͷΈΛ͍ͬͯͯboot࣌ʹͳ͍ • ͔ͨ͠ͳ͍ͷͰɺPythonͰ/etc/shadow͔Βpiͷߦ͔ΒsaltΛर ͬͯraspberryΛϋογϡԽ͠ɺҰக͢Δ͔νΣοΫ͢Δπʔϧ ॻ͍ͨ
ಉ༷ʹϗετ໊ੜ • avahiʢBonjourʣͰϗετ໊͕িಥͨ͠ΒհͳͷͰ • ʢͦ͜·Ͱॏཁߴ͘ͳ͍ʣ
NAFUDAυϥΠϒ • g_mass_storageΛར༻͠ɺ໊ࡳΛPCʹଓ͢ΔͱɺPC͔Β USBυϥΠϒʹݟ͑Δ • ϑΝΠϧίϐʔͰ͖ͳը૾͕ηοτͰ͖Δ • WifiઃఆϑΝΠϧΛஔ͚࠶ىಈ࣌ʹө • ͳΜͳΒɺࣗͷίʔυஔ͚Δ(startup.sh)
• ศརʂΨδΣοτͬΆ͍ʂʢࣗݾຬʣ
g_mass_storage • vfatͰϑΥʔϚοτͨ͠σΟεΫΠϝʔδΛࢦఆͰ͖Δ • (࣮ࡍʹɺத͕vfat͔Ͳ͏͔͋Μ·Γؔແ͍) • fs͕յΕ͍ͯͯͳ͍ʢࣗʹ͋Δͳ͋…ʣ • MacWinͰ࠶ϑΥʔϚοτ͢Δͱڍಈ͕มΘΔ͜ͱ… •
ʢ͍ͬͯ͏͔mkfs.vfatͰ࡞Δͱwin͕จ۟ݴΘͳ͍ʁʣ
FSΛ͜ΘΕͨ··ʹ͠ͳ͍ྗ • յΕͨ··ͩͱɺԿͰ͖ͣʹ٧ΜͰ͠·͏ɻ • Τϥʔ͕͋Εɺͱʹ͔͘mkfs͢͠ʂ • fs͕݈શͰதʹimgσΟϨΫτϦ͕ͳ͔ͬͨΒϦϏϧυ • ≒ ࠷ѱɺPCଆ͔ΒϑΥʔϚοτ͓͚ͯ͠ڧ੍ϦϏϧυ
• ͦΕͰϚϯτͰ͖ͳ͍͜ͱ͋Δ͔…ෆ҆…ɻ • (ςετͷઈରྔ͕Γͳ͍…)
NAFUDAυϥΠϒͷ֎ಉ࣌Ϛϯτ • /home/pi/virtual_sd.imgϒϩοΫϑΝΠϧΛUSBͰ֎ʹఏڙ͠ ͭͭɺதͰloopbackͰ/dev/virtual_sdʹmount • ແةݥɺ͔ͦ͠͠͏͠ͳ͍ͱதͷΛಡΊͳ͍ͷͰɻ • ʮͰ͖Δ͚ͩʯroͰϚϯτ͍ͯ͠Δɻ • ͳ͓ɺroͰϚϯτ͍ͯͯ͠ةͳ͍ةͳ͍Ͱ͢ɻ
• ʢύοͱࢥ͍ͭ͘ɺྑ͍ղܾࡦ͕ແ͍…ʣ
՝ • ڥͳͷ͔ɺwrite backͷ߹ͳͷ͔ɺॻ͖ࠐΜͰ͙͢ʹஅ͢ ΔͱϑΝΠϧ͕ফ͑Δ • ʮ࣌ͷϑΝʔϜΣΞʯΑΓ৽͍͠όʔδϣϯͰɺΧʔ ωϧύϥϝλΛ͍͍ͬͯ͡ΔɺΑΖ͚͠ΕόʔδϣϯΞοϓ ͓ئ͍͠·͢ɻ •
͜ͷ͋ͨΓɺςετͷઈରྔ͕ෆ͍ͯͯ͠ख़ͤ͞Δ͜ͱ͕ Ͱ͖ͳ͔ͬͨɻ
USB ΨδΣοτϞʔυͷΓ͚ • USBυϥΠϒҎ֎ʹωοτϫʔΫΠϯλʔϑΣΠεγϦΞϧ ʢCOMʣϙʔτͱͯ͠PCʹೝࣝͤ͞ΒΕΔɻͦΕΛNAFUDAυ ϥΠϒʹ͓͍ͨϑΝΠϧͰΓସ͑ɻ • ϥζύΠఆ൪ͷʮcmdline.txtʹॻ͖·͠ΐ͏ʯͰͳ͘ɺىಈ தʹࣗલͰmodprobe͍ͯ͠Δ
if [ -e ${VSD_BASE_DIR}/enable_g_ether ] then G_MODE="g_ether" ${VSD_RW} /bin/rm ${VSD_BASE_DIR}/enable_g_ether
${VSD_RO} modprobe g_ether ifconfig usb0 up ifconfig usb0 169.254.123.45/16 # IPݻఆ fi if [ -e ${VSD_BASE_DIR}/enable_g_serial ] then G_MODE="g_serial" ${VSD_RW} /bin/rm ${VSD_BASE_DIR}/enable_g_serial ${VSD_RO} modprobe g_serial systemctl start
[email protected]
fi if [ -z "${G_MODE}" ] then G_MODE="g_mass_storage" modprobe g_mass_storage file=${VSD_IMG_PATH} stall=0 removable=1 fi
• lsmod,rmmodͰޙ͔ΒͰ֎ͤΔͧʂ • rmmod͢ΔͱσόΠε͔Βফ͑Δɺͨͷ͍͠ʂ • → Γ͗͢Δͱ؋ͷMac͕ڍಈෆ৹ʹͳͬͨΓɺ Panic͢Δ͜ͱ͕͋Γ·͢
ىಈͷߴԽ • ࠷ॳͷόʔδϣϯىಈʹ100ʙ120ඵ • ௐͯ͠ɺ40ʙ50ඵʹ • ʢ͜ͷىಈͱɺEPD͕ͳΜΒ͔ಈ͖ग़͢·Ͱͷ࣌ؒʣ
Ͳ͏ௐ࣮ͯࢪ͢Δʁ • systemd֤αʔϏεىಈ࣌ؒΛௐΒΕΔ • ·ͣܭଌʂ • ޙ͍ͷΛҰݸҰݸࡴͨ͠ΓɺରࡦΛߟ͑Δ • systemdΑ͘Ͱ͖ͯΔ…͍͢͝… •
(͔͠͠ɺ͜ΜͳࣄͰͳ͚Ε͋Μ·ΓΘͳ͍͔)
systemd-analyze time $ systemd-analyze time Startup finished in 2.745s (kernel)
+ 40.594s (userspace) = 43.340s
systemd-analyze blame
systemd-analyze plot > systemd.svg
systemd-analyze critical-chain
ߦͬͨࣄ • hciuart.serviceͷແޮԽ (BT serial) • ΧʔωϧίϚϯυϥΠϯ(cmdline.txt)मਖ਼ • rootࢦఆΛUUID͔Β/dev/ࢦఆ •
quietՃ
• ࣗ࡞ϒʔτΞοϓεΫϦϓτͷҐஔௐ • ॳmulti-user͕ͩͬͨnetworkͷafterʹͨ͠ • dhcpcdɺ߹͋Γ์͠ • 110 -> 45ඵ΄Ͳɺ͏ʔΜɺ·͍͍͔͋ɻ
͜ΕҎ্Λૂ͏ʹ… • dhcpcdΛௐ͢Δʢ͋Δ͍ωοτϫ ʔΫΛఘΊΔʣ • ໊ࡳͷBootupίʔυࣗମΛݟ͢ • ↑͜ΕΒҎ֎ޡࠩɺͬͯ͋Μ·ҙ ຯͳ͍ •
࣮ʹ໌֬Ͱྑ͍ɺແବ͕ͳ͍ʂ (ਖ਼͘͠ແବͳ͕࣌ؒͳ͔ͬͨ)
ͱ͍ͬͨײ͡ͰɺιϑτΣΞͰ͖ͨʂ • ͩʂ • ͦͷͨΊʹ…
ϥΠηϯεʂ • ීஈͳΒ ʮࣗͷίʔυΛ͚ͩ͢Ε͍͍ʂ ɹϥΠϒϥϦґଘੑղܾπʔϧͰʂʯ • ࠓճͰ͖ͳ͍ʂʂ • Disk imageͳͷͰʂ
• blob blob
ιʔείʔυެ։ • ίʔυಉࠝͰ͖ͳ͍͕ɺαΠτ͕͋Εྑ͍ • ʮίʔυ͔͜͜ΒDLͰ͖ΔΑʂʯ • rabpbianެࣜͷϦϯΫ • EPDϥΠϒϥϦެࣜͷϦϯΫ •
ిࢠ໊ࡳGitHubϨϙδτϦͷϦϯΫ
• ͱ͍͏͕… • ࣮ࡍ࠶Ͱ͖ͳ͍ιϑτΣΞ͕ೖͬͯͳ͍͔ෆ҆ • ʢEPDϥΠϒϥϦ݁ߏ৭ʑ͍ͬͯͯෆ҆ͳͷͰɺ PythonҎ֎ެࣜαΠτ͔ΒDLͯ͠Β͏͜ͱʹ͠·ͨ͠ʣ • ʮRaspbian͕࠶Ͱ͖ΔͳΒɺେମOKͩΑͶʂʯ
Raspbian • DLϖʔδʹҙॻ͖͕ • Oracle - Java, • Wolfram Research
- Mathematica, • ͳΔ΄Ͳʂ྆ํͱແ͍͔ؾΛ͚ͭΑ ͏ʂ • dpkg-query -l |grep java • ೖͬͯͳ͍ͷͰηʔϑ
• ଞͳʹ͕͍ͬͯΔΜͩʁ • /usr/share/doc/*/copyrightΛΈΑ͏ʂ $ grep -h '^License:' \ /usr/share/doc/*/copyright
| \ sort -i | \ uniq -ic | \ sort -n
None
;͓͓…
(ൃද࣌GIFΞχϝ)
ଟ͗͢ʂ
238छྨͷϥΠηϯεʂ • ಉ໊͡લͷϥΠηϯεΛ·ͱΊͯ͜Ε • (ࡶͳूܭͷͰ͢ͷͰɺ࣮ଶද͍ͤͯͳ͍) • Raspbian LiteͰ࠷ݶͷύοέʔδͳͷʹ͜Μͳʹ… • GPLͱͷσϡΞϧϥΠηϯεʢ࣮࣭GPLʣ͕ଟ͍
• ͳΜͳͷ͜Εʁͱ͍͏ϥΠηϯεଟ͍…
ൈਮ 1 License: Binary redistribution (Atheros) 4 License: Beer-ware •
ͳΔ΄ͲόΠφϦͳΒOK • ͳΔ΄ͲϏʔϧΣΞʢ͍͔ͭػձ͕͋ΕϏʔϧΛ…ʣ • ͜ΕΒΘ͔Δɺ͔͠͠…
ൈਮ 2 License: probably-PD 2 License: config-h 4 License: none
5 License: custom 12 License: other
none!
other!!
custom!!!
probably!!!!
͜ΕϠό͍ • ݟͳ͔ͬͨ͜ͱʹ…Ͱ͖ͳ͍Αͳ͋ɻ • ҰԠࢹؤுͬͨʢग़དྷͨͱݴ͍ͬͯͳ͍ʣ • BLOBͷυϥΠόόΠφϦ࠶ͳΒOKͬΆ͍ • Ұ෦ͷʮຊʹṖʯͳϥΠηϯεͳΜͱݴ͑ͳ͍ •
(LinuxͷσΟετϦϏϡʔγϣϯ͍ͬͯ͢͝ͳ…)
ιʔείʔυҎ֎… • mercari͞Μͷϩΰ͕ೖͬͨը૾ͱ͔ʢͪ͜Β࠶ېࢭͰ͢ʣ • buildersconͷը૾ͱ͔ʢCC BY-SA) • ʮଟେৎʂͰ͠ΐʂʂʯ
·͋㙽ʹ֯Πϝʔδ͢Δͧʂ • ͰɺෳͷͨΊʹSDΧʔυΛಡΈࠐΜͰɺ σΟεΫΠϝʔδʹ͠Α͏ʂ
·ͣऔΓࠐΉ • SDΧʔυΛMacʹͭͳ͍Ͱɺ͓ͳ͡ΈddίϚϯυΛ͏ • dd if=/dev/rdisk2 of=bc.img count=1776 bs=1m •
/dev/diskXͰͳ͘ɺ /dev/rdiskXΛ͔͍ͭ·͠ΐ͏ɺ͕10ഒ͍ɻ • (bs=1mͷ࣌ͷ)count=1776ͬͯͲ͔͜Βग़͖ͯͨʁ →ʢΦϚέΛݟͯͶ
• ͔͠͠ɺ࡞ۀsd͔ΒΠϝʔδ࡞ΔͱΰϛͩΒ͚ • ΫϦʔϯͳRaspbianΠϯετʔϧࡁΈΠϝʔδ͔ΒϦϦʔεΠ ϝʔδΛϏϧυ͢Δͧʂ
ͭΒ͍ʂ • 1Ϗϧυ 1࣌ؒʢେମaptͪʣ • ϚελSD͔ΒΠϝʔδʢ10ʣ • ਅ৺ςετ30ʢେମ࠶ىಈͪʣ • ͷͨΊʹGH
Releaseʢ60) • 1प2࣌ؒ • ͭΒ͍ʂʢ·͋ͳΜͱ͔ͬͨ…ʣ
ʮCI͖ͯ͘Εʂʂʯ • ͕࣌ؒͳ͔ͬͨͷͰɺඋͰ͖·ͤΜͰͨ͠ɻ • ࣍ճͷ՝Ͱ͢ɻ
ελοϑϏϧυΛͯ͠ςετͯ͠Β͏ • ʮͰ͖ͨʂσόοάͯ͠ʂʯ=>ʮΘ͔ͬͨʂʯ • ʮͳΜ͔chroimum͕͏͔͝ͳ͍ͳʙʯ • …ͦΕϑΝʔϜΣΞͷσόοάͱؔͳ͘Ͷ͑ʁ • ʮέʔϒϧͲ͔͍͖͜·ͨ͠ʯ •
ͦ͏͔…ͦΕ೦ͩ…
ଞਓࣄʹ͓͍ͯ༏ઌॱҐ͍ʂ • Έͳ͍͠ʂͨΓલͩͳʂΦϨͩͬͯଟͦ͏ͩΘʂ • ͭ·Γɺ͕ࣗΔ͔͠ͳ͍ͬͯ͜ͱͩͳΨοϋοϋʂ • ͦΕͰ̍ʙ̎ճɺىಈςετΛͯ͠ΒͬͯوॏͳόάϨϙ ήοτʂʢͷ͋͘͢͝Γ͕͔ͨͬͨʂ͋Γ͕ͱ͏ macopyʂʂʣ •
ʢͨΓલ͕ͩʣؒͰʮνʔϜʯͱʮϔϧϓʯҧ͏
ςετͯ͘͠ΕΔਓ وॏʂʂʂʂ ԿΑΓوॏʂʂ
• ୯ҰڥͰ࠶ݱ͠ͳ͍όάΛ֬ೝ͢Δ͜ͱ΄΅ෆՄೳ • ඞࢮʹVM࣮ػΛͳΒͯࣗͰςετ͢Δ • ࣗ༝͕ߴ͍ͷόάͷྔ͕ҟৗʹଟ͍ʂ • ͬͯ͘͠ΕΔਓ͕͍ͨΒɺશྗͰαϙʔτ͠Α͏
• ͼدΔखൈ͖ • ςετ͕େม͗ͯ͢ɺҰ෦ఆखॱΛʮ࣮ࡍͷӡ༻ͱҟͳΔʯ खॱͰͬͯ͠·͍ͬͯͨʢ̍࣌ؒॖͰ͖Δ…ʣ • ྫɿγϦΞϧίϯιʔϧͰWifiύεϫʔυઃఆ • Ҋͷఆఆ֎ͷόά͕͍ͨ •
set -eͰίέΔఔͷ… • ࣮ػͰɺఆͷखॱͰɺςετ͠ͳ͚Εବʂ
ͨ͠ʂ • ʮࢼͯ͠Έ͚ͨͲಈ͔ͳ͍Ͱ͢ʯ ʮͦΕଟ࠷৽ϑΝʔϜͰͳ͓͍ͬͯ·͢ɺম͍ͯΈͯΒ ͑·͔͢ʁʯ • ʢͦͯ͠ɺԠ్͕ΕΔʣ • ͔ͨ͠ͳ͍…͔ͨ͠ͳ͍…ɻ
• ࠺ʹ͓ئ͍ͯ͠ςετͯ͠Β͏ → ࠺ʹͰ͖ͨʂ • ͜Εʹ͔ͳΓࣗ৴͕༙͍ͨ • ʢͨͩɺ͜͜Ͱόάݟ͚ͭͨʣ
Γ͔ͨͬͨ…ʂʂ • ςελʔͷखؒΛΒͨ͢ΊʹOTAΞοϓσʔτΛ࡞Γ͔ͨͬ ͨɻ • ໊ࡳͷిݯΛ͍ΕΔͱશࣗಈͰΠϝʔδΞοϓσʔτ • ख๏ΛΜͰ͍͕͍͍ͨҊ͕ࢥ͍͔ͭͣɺແཧͩͬͨ • ࣍Δͧʂʂʂʢ͕࣍͋Δͷ͔ʁʣ
͏ҰͭͷςΫɺ࣮ػΛଟ͘Ε • ଟ͘ͷਓʹ͘Εɺϫϯνϟϯͬͯ͘ΕΔਓ͕ग़Δ • ΔϞϊΛ࡞Δˠ·͋ɺͲ͏ʹ͔ͳΔ • ʮͬͯ͘ΕΔਓʯΛ୳͢ˠͭɺͭΒ͍… • ʮ͜ͷۤ࿑ຊ࣭తͰͳ͍ʂʢ͍͍͑͜Ε͕ຊ࣭Ͱ͢ʣʯ •
͔ͭͬͯΈ͍ͨʂͱࢥΘΕΔϓϩμΫτͳΒྑ͍ͣͩ!(?)
• ͋Δ͍ɺ͏ޏͬͪΌͬͨ΄͏͕ྑ͍͔ • ΄ͱΜͲࣄͩ͠ɺ͜Εࣄͩʂ • (ͱɺݴͬͨΒʮႢಹత͗͢ͳ͍ʁʯͱ͍ΘΕͨͷͰɺਫ਼ਆ͕ζ Ϩ͖͍ͯͯΔՄೳੑ͕͋Γ·͢) • ͜Ε·͋ɺίετͷ߹Ͱ͍͠Ͱ͢Ͷ… •
ʮίετμϯ͠·͢ʂʯͱ͔ܾҙ͠ͳ͍΄͏͕ྑ͍͆
ςετ͕ͭΒ͍ • 㙽ʹ࣮֯ػͷςετ͍ͨΜ • ͭ͘Γͳ͕Βςετ͢Δͷ͍ͨΜ • ػೳ͕;͑ͯɺόοαϦػೳΛ͓ͱͯ͠ɺϦϑΝΫλͯ͠ =>σάϨʂ
• օ༷ෆ۩߹͕͋Εɺ͓ڭ͍͑ͩ͘͞ɻ • …ͨͩɺ࠷ॳʹυΩϡϝϯτͷTROUBLESHOOT.mdΛΈͯ͘Ε Δͱ͏Ε͍͠Ͱ͢ • ʢ͏͔͝ͳ͍ཧ༝ͷׂ̓ɺϙʔτΛ·͕͍ͪ͑ͯΔ͔ɺผ ͷॴ͔Β͖ͬͯͨ૬ੑͷѱ͍USBέʔϒϧΛͭͳ͍Ͱ͍ ΔɺͰ͢ʣ •
ʢWifiʹ͍ͭͯύεϫʔυ͕ҧ͏ͱ͔…كʹಛघͳ wpa_supplicant.confͷઃఆ͕ඞཁͳAP͋ΔΒ͍͕͠…ʣ
ಀ͍͛ͯ͘ • ʮόάΈ͚ͭͨɺͳ͓ͦ͏ʢ-ʣʯ • ʮ͜ͷػೳ͍ΔΑͳɺ͚ͭΑ͏(-1)ʯ • ͕࣌ؒͲΜͲΜΔ • microSDΛম͕࣌ؒ͘…
…͏ʔΜ
ഒʹ͠Α͏ʂʂ • ϏϧίϯϚγʔϯҰຊ1ສ͘Β͍ͳͷ Ͱɺ2ສͰ͢ɻ • ࣗͷਓΛৼΓฦΕɺ໌Β͔ʹ҆ ͍ࢿʂ • (USB HUB
ˇ4000, SD reader ˇ500*10)
• ؾ߹Λ͍ΕΕ༦ํ6͔࣌Βਂ0࣌Ͱ 210ຕম͚Δʂ • ࠷ߴʂ • (Ұʹ2ͭͭͳ͙ͱ͍ͷͰɺ࣮ࡍ2 ͷMacͰΓ·ͨ͠) • ͜ΕͰ͏ͪΐͬͱ։ൃͷ͕࣌ؒՔ͛
Δͧʂ
…ͱ͍͏͜ͱͰ • Ͱ͖·ͨ͠ʂʢಥʣ • ʢ͜ͷεϥΠυΛॻ͍͍ͯΔ࣌ͰʮͰ͖͍ͯΔͣʯʣ • ʢಉ࣌ظʹɺॆిͨ͠microSDͱόοςϦʔΛࠩ͠ࠐΈͳ͓͠ ͯɺശ٧Ί͢Δɺͱ͍͏࡞ۀ͕͋Γɺ࠺ʹखͬͯΒͬͨɻ ιϑτΣΞΛॻ͖ɺ࠺͕ࠝแɻՈ੍खۀ͜͜ʹۃ· ΕΓɺ͋Γ͕ͱ͏࠺ɺ͋Γ͕ͱ͏ʣ
ͦͯ͠ૹͱͱαϙʔτ • TBD • (͜ͷεϥΠυΛॻ͍͍ͯΔ࣌Ͱ·ͩυΩϡϝϯτΛه͢ Δ༧ఆ)
·ͱΊ • ͜ͷΑ͏ͳ༷ʑͰిࢠ໊ࡳͰ͖·ͨ͠ • Γӽ͑ΒΕͳ͍นʢ࠷ॳ͔Βආ͚͍ͯͨͷͰʣͳ͔ͬͨ • ͨͷ͍͠ʂʂʂ • ͕࣌ؒ͋ΕͰ͖Δ͋Μͳࣄ͜Μͳࣄʹະ࿅
• ςετʹͤΑɺҙݟूΊʹͤΑʮؒʯ͕Ұ൪رগͰ͢ • ࣌ؒރׇ͠·͢ʢஅݴʣͰ͖ΔݶΓר͖·͠ΐ͏ • ͓ۚϞνϕͱͱަবͰͲ͏ʹ͔͢ΔͷͰ͢(ࠇ͞) • ٕज़ख࣋ͪΛ׆༻Ͱ͖ΕϥοΩʔɺҐͰͩ͜ΘΒͣ • ͋ͱΔؾʂʂΔؾ͕͋ΕԿͰͰ͖Δʂʂ
ϨοπτϥΠʂ • ʰԶొΓ࢝Ί͔ͨͬΓ͔ͩΒΑɺ͜ͷṖΨδΣοτࡔΛ Α…ʱ • ͭͮ͘…ʂʢʁʁʁʣ
None
͓·͚
ϏϧίϯϚγʔϯͷૉࡐ • ਖ਼ɺ͜͏͍͏ͷ৭ʑࢼ͞ͳ͍ͱʮͲΕ͕͍͍ʯ͔ෆ໌
• ৭ʑങͬͯΈͨΒɺOricoͷ10ϙʔτ͕͍҆ͷʹ҆ఆ͍ͯͨ͠ • 4000ԁ • https://www.amazon.co.jp/dp/B00ZT9MRLW • 2ݸങ͚ͬͨͲෆྑແ͠
• ϦʔμʔυεύϥͷUSB3.0ରԠ500ԁͷ͕ͭ҆ఆ͍ͯͨ͠ • Ұݸ500ԁ • http://www.dospara.co.jp/5shopping/detail_parts.php? ic=446699 • 21ݸങ͚ͬͨͲෆྑແ͠ •
USB3.0ʹͭͳ͍ͩ࣌ɺൃ݁ߏ͍͢͝… • ʢ·͋ɺ6࣌ؒஅଓతʹম͍ͯେৎ͚ͩͬͨͲʣ
• ͋͘·Ͱɺࢲͷ߹ɺͰ͢ɻ • ৭ʑࢼ͠·͠ΐ͏ɻ
༨ஊ)USB3.0͍͢͝ʂ • USB 3.0ͷൺֱత৽͍͠MBP • USB 2.0ͷൺֱతݹ͍MBP • ੑೳ͕ࠩʂ
None
None
͍ʂ • 39 vs 49 • 10ຕ࣌ͷ࣮ޮ1.2ഒ͘Β͍ • (·͋ɺ͜ͷʮιϦϡʔγϣϯʯ͕ΠϚΠνͳͷͩ) •
(ຊͷϚγʔϯύϥϨϧͰ͍Β͍͠ɺॴḨ·͕͍ͩ… ·͋ࠓճे͚ͩͬͨͲ…)
ϠϓγʔϚγʔϯ ϦεϖΫτ • moznionࢯ࡞ͷൃϚγʔϯΛ݁Ռ ͱͯ͠ϦεϖΫτ • (DIYɺԹௐཧث) • (ʮYet Another
Perl Cookingʯඞݟ) • 60ʹ͋ͱ10ಧ͔ͳ͔ͬͨ…
• ͳ͔ͥҰ෦ͷMacͩͱmicroSDϦʔμ Λ̍̎ݸ·Ͱ͔͠ೝࣝ͠ͳ͔ͬͨɺݹ ͍Macʹ͔͑ͨΒͪΌΜͱ̎̌ݸೝࣝ ͨ͠ɻṖͰ͢
༨ஊ)ޙμΠιʔʹ͍ͬͨΒ… • όοςϦʔΛผͳॴ͔ΒҾ͍ͨޙɺμΠιʔʹUSBόο ςϦʔͷΞοϓσʔτ൛͕࠶ೖՙ͍ͯͨ͠ɻ • ʮ…·͋ɺͱΓ͋͑ͣങ͏͔…ʯ • ͦͯ͠όϥͯ͠Έͨ
None
• ಉ͡ݟ͕ͨͩɺΒͯ͠ΈΔͱݸੑ͕͋Δ • ج൫શ෦ҟͳΔɺઢํࣜҟͳΔɻ • μΠιʔ৽ܕʮόοςϦʔʹΜ͚ͩ͞Ε͍ͯͳ͍ʯɺη ϧ͕ަͰ͖Δɺ͍͢͝ʂਐԽΛײ͡Δ…ʂ • (҆όοςϦʔେମ༹͕ବͰෆྑ͕ଟ͍Ά͍) •
(ʔɺ͜ΕΛେྔจͰ͖ͨΒΑ͔ͬͨͷʹͳʔ…ʣ
༨ஊ)ϥϯμϜจࣈྻΛ࡞Δπʔϧͱͯ͠ͷ openssl • ͳΕ͍ͯΔ҆͠શͳؾ͕͢ΔʢݸਓͷײͰ͢ʣ • ؾ͋͠͞Δ • .rndΛੜͰ͖ͳ͍ͱɺʢฦΓ͕ʣΤϥʔ… • ͭ·Γɺsystemdͷىಈ࣌ʹΔͱΤϥʔʂ
• set +eͰճආʢ͍ͩ͞…ʣ
༨ஊ)ddͰಡΈࠐΉ࣌ͷcountͷܭࢉ $ sudo fdisk -e /dev/disk2 fdisk: 1> print Disk:
/dev/disk2 geometry: 958/255/63 [15400960 sectors] Offset: 0 Signature: 0xAA55 Starting Ending #: id cyl hd sec - cyl hd sec [ start - size] ------------------------------------------------------------------------ 1: 0C 0 130 3 - 6 4 22 [ 8192 - 88472] Win95 FAT32L 2: 83 6 30 25 - 226 104 6 [ 98304 - 3538944] Linux files* 3: 00 0 0 0 - 0 0 0 [ 0 - 0] unused 4: 00 0 0 0 - 0 0 0 [ 0 - 0] unused
#: id cyl hd sec - cyl hd sec [
start - size] ------------------------------------------------------------------------ 1: 0C 0 130 3 - 6 4 22 [ 8192 - 88472] Win95 FAT32L 2: 83 6 30 25 - 226 104 6 [ 98304 - 3538944] Linux files* 3: 00 0 0 0 - 0 0 0 [ 0 - 0] unused • ʮ͜ͷ߹ɺΦϑηοτ98304ηΫλ͔Βɺ 3538944ηΫλઌ ͕ऴηΫλͩͳʂʯ • 2048ηΫλ = 1024KiBͳͷͰ… • (98304 + 3538944) / 2048 = 1776
ͳ͓ɺLinuxͰΔ߹ • ͪ͜ΒऴηΫλ͕࠷ॳ͔ΒͰ͍ͯ ΔͷͰ͠ࢉෆཁ • 3637247 / 2048 = 1775.999511719
• 1776 (Γ্͛Δ)
# ݸਓతʹΑ͘ݟͯͨ(?)γϣοϓ - AliExpress(৭ʑͳҙຯͰ࠷ڧɺࣗݾ) - Amazon.co.jp(ṖͷۀऀͰ҆৺(?)) - εΠοναΠΤϯε (νϣΠεʹ͓͠ΌΕ͞Λײ͡Δ)
- ळ݄ిࢠ - ઍੴి - Ϛϧπ - Aitendo - adafruit (ͷγϣοϓ) - KSY (ͷɺಛʹRspberry pi Shop) - pimoroni - RSίϯϙʔωϯπ - strawberry-linux (ిݯ͕ຊʹྑ͍…) - Digikey (࠷ڧ) - Mouser (ʮ͝ΊΜʂۭ༌Ͱ͖ͳ͔ͬͨ͆ʯΈ͍ͨͳ͓ͳࣄ͋ͬͯΊͳ͍)
༨ஊ)͔Θ͍͍motd • http://patorjk.com/software/taag/ #p=testall&f=Graffiti&t=builderscon
༨ஊ OSXʢͷbashʣͱvfat $ ls -al ls: .: Invalid argument •
͜ͷΑ͏ͳΤϥʔ͕ग़ͨΓͰͳ͔ͬͨΓ͢Δɻ • ʢexfatΛ͏ͱղܾ͢ΔΒ͍͕͠ɺϓϩϓϥΠΤλϦͰ࠷ॳ͔ Βύοͱ͍Ε͓͖ͯͮΒ͍ʣ
༨ஊ)QEMUΛ͔ͭͬͨVMͲ͏͔ʁ qemu-system-arm \ -kernel kernel-qemu-4.9.59-stretch \ -cpu arm1176 \ -M
versatilepb \ -dtb versatile-pb.dtb \ -m 512 \ -no-reboot \ -serial stdio \ -curses \ -append "root=/dev/sda2 panic=1 rootfstype=ext4 rw" \ -hda 2018-06-27-raspbian-stretch-lite.img \ -net nic -net user,hostfwd=tcp::10022-:22 • ࠓճEPDΛ͔ͭ͏͕ɺVMʹEPDͳ͍ͷͰ͔ͬͨ͠
༨ஊ) ຊ(?)தࠃ͔Β ങ͏ • aliexpressָʂ • amazon.co.jpͰങͬͯதࠃૹଟ ͍ • ͔͔࣌ؒΔ(1ʙ2w)͕ɺૹྉແྉଟ
͍ • ീԦࢠͷࣗʹʑɺṖͷখแ͕ಧ͘
खͯ͠͠͏ • ۂ͕͍ͬͯΔϐϯ • Ϟή͍ͯΔઢ • σʔλγʔτΛάάΔ • ָ͍͠ʂʢʁʁʣ
aliexpressνϟοτͰΫϨʔϜͰ͖ͯศར • ϐϯͱ͔ͳ͓͍͍͕ͤ… • ෳݸങͬͨΒɺҰݸ͚ٕͩదγʔϧ͕ແ͍ࣄ͕͋ͬͨ • ʮͦΕ࣭ʹؔͳ͍ϤʂʯʮԶ͕ࠔΔʯ • ʮͦΕͷϛεͩϤʂόΠόΠʂʯ •
ͭΑ͍… • ʢݸͳΒ͍͍͕ɺ͜͜Ͱඦݸങ͑Δ͔ʁʁʁʣ
100ۉ௨ൢTips • μΠιʔηϦΞࢁ(ྫ:300pc)ങ͏ͱɺ௨ൢͰ͖Δ • ͲͪΒΣϒΧλϩάͳ͍ɺళฮͰJANίʔυΛௐͯ ͔ΒΣϒϑΥʔϜ͍߹ΘͤΔඞཁ͕͋Δ • Can˒DoΣϒΧλϩά͋Γɺ࠷গͳ͘จՄೳ (ͨͩɺిࢠখͷἧ͑͋Μ·Γ…ʣ
# νΣοΫϦετ - ࠒ͔ΒΞΠσΟΞΛஷΊɺ৭ʑങͬͯࢼ͓ͯ͜͠͏ - Αͦ͞͏ͳؒΛ͕͓ͯ͜͞͠͏ - ݟੵΓલʹϢʔβʔςετΛ͠Α͏ʂൿີओٛϋϯσʂ - ͭΒ͍ʂʢਏ͍Ͱͳ͍ʣ
- ૣ༷͘ݻΊΑ͏ʂ - ༧ࢉॊೈʹͰ͖ΔΑ͏ʹ͠Α͏ʂ༧උඅΛͭ͏ʂ - ෦ࡐ͕औΕΔ͔·ͣʹ͍߹ΘͤʂͪΜͨΒͬͯΔͱ෦ࡐ͕σΟείϯʂ - ͭΒ͍ʂʢਏ͍Ͱͳ͍ʣ - खʹ͍Γͦ͏ͳΒૣ͘จʂ - ؒΛΈ͚ͭΑ͏ʂ - ͍ॴΛ༻ҙʂʢϞϊΛஔ͍͓ͯ͘ʹͤΑɺΈཱͯΔʹͤΑʣ - βςετ༻ͷςετػૣΊʹ४උ͠Α͏ʂ - ΣϒͱҧͬͯޙͰσϓϩΠͰ͖ͳ͍͔Βग़དྷΔ͚ͩૣ͘ϕʔλ൛Λʂ - కΊΓΛ৳ͨ͢ΊͷͰͳ͘ɺվળͷͨΊʹʢͱݴͬͯʣۚΛ͓͏ʂ - ҙݟʹ͖͜͏ʂ͔ࣗ͠͠ͷඪ͔ͬ͠Γ࣋ͱ͏ʂ - ҙݟΛ͍ͬͯ͘ΕΔςελʔΛखްͯ͘ͳͦ͏ʂ - ͨͷ͍͠ʂ