Dragon Board 410c WoT Tutorial - webdino/gecko-embedded GitHub Wiki
Web æè¡ã ãã§ Real (ã»ã³ãµãŒãããŒããŠã§ã¢ã®å ¥åºå) à Virtual (Web ãã©ãŠã¶ã«ããç»é¢åºå) + Network (ãµãŒããšã®ãããã¯ãŒã¯éä¿¡ã§ãµãŒãã¹é£æº) ã®åºç€ãåŠã³ã€ã€ Web of Things (ãããã¯åã« IoT) æä»£ã®ããŒããŠã§ã¢ããã€ã¹ã®äœéšããããã¿ã€ãã³ã°éçºãå§ããŠããã ãããã®ãã¥ãŒããªã¢ã«ã§ãã
Web éçºè ã¯å¿è«ãåŠçãªã©ã§ã Web (HTML/CSS/JavaScrit) ã®åºç€çãªç¥èã ãã§ç°¡åã« WoT (Web of Things ãããã¯åã« IoT) ããã€ã¹ã®ãããã¿ã€ãã³ã°ãåºæ¥ããããªç°å¢ãšãµã³ãã«ã³ãŒããçšæããŠããŸããããŒããŠã§ã¢åŽã«ã€ããŠãåç°ããŠãåè·¯èšèšã®ç¥èãªã©ããªãã¬ãã«ããéå§ã§ããããã«ããŠããŸãã
Project GEM (Gecko Embedded) ã§å¯Ÿè±¡ãšããŠããããã©ãŠã¶æè¡ã ãã§å®çŸããçµã¿èŸŒã¿è£œåéçºã«é¢å¿ã®ããæ¹ã¯å¿è«ãåŠæ ¡ãå°éåŠæ ¡ã§ã®æè²çšã®ææãšããŠããå©çšãã ããã
-
Dragon Board 410c - Chip1Stop
-
AC ã¢ããã¿
- AC ã¢ããã¿ã¯ä»æ§äžã¯ 12V/2A ãèŠæ±ãããŠãããããã®ãã¥ãŒããªã¢ã«ã®ç¯å²ã§ã¯ 12V/1.5A ã®ãã® ãªã©ã§ãåäœããŸã (æ¥ç¶ããã€ã¹ãå¢ããããããšé»åäžè¶³ã«ãªãå¯èœæ§ããããŸã)
- ã³ãã¯ã¿å€æã±ãŒãã«
-
AC ã¢ããã¿
- Grove æ¡åŒµ (Mezzanine) ããŒã (96 Boards Sensors) - Switch Science
- Grove GPIO å
¥åã¢ãžã¥ãŒã« (ãããã)
- ON/OFF ã®ããžã¿ã«å ¥åãè¡ãã¢ãžã¥ãŒã«ãæ¬ãã¥ãŒããªã¢ã«ã§ã¯ãã¿ã³ã䜿ãå Žåã§èª¬æããŸããåŸãã»ã³ãµãã¿ããã»ã³ãµã䜿ãå Žåã¯ãã¿ã³ãæŒããšãããåŸãããšãã»ã³ãµã«ã¿ãããããªã©ãšèªã¿æ¿ããŠãã ããã
- ãã¿ã³ - Seeed, Switch Science
- åŸãã¹ã€ãã - Seeed, Switch Science - è§åºŠã§ã¯ãªãè»¢åæ€åºãªã©
- ã¿ããã»ã³ãµ - Seeed, Switch Science
- Grove GPIO åºåã¢ãžã¥ãŒã« (ãããã)
- ON/OFF ã®ããžã¿ã«åºåãè¡ãã¢ãžã¥ãŒã«ãæ¬ãã¥ãŒããªã¢ã«ã§ã¯ LED ã䜿ãå Žåã§èª¬æããŸãããã¶ãŒã䜿ãå Žå㯠LED ãç¹ç¯ãããšããããã¶ãŒã鳎ããšèªã¿æ¿ããŠãã ããã
- LED (èµ€) - Seeed, Switch Science
- ãã¶ãŒ - Seeed, Switch Science
- Grove ADC ã¢ãžã¥ãŒã«
- ã¢ããã°ã»ã³ãµãŒã®å¯å€å€ãèªã¿åãããã® I2C ã¢ãžã¥ãŒã«ãADC ã¢ãžã¥ãŒã«çµç±ã§ã¢ããã°ã»ã³ãµãŒãæ¥ç¶ããŸãã
- ADC (Analog to Digital Converter) - Seeed, Switch Science
- Grove ã¢ããã°ã»ã³ãµãŒ (ãããã)
- æ¬ãã¥ãŒããªã¢ã«ã§ã¯å ã»ã³ãµã䜿ãå Žåã§èª¬æããŸããæž©åºŠã»ã³ãµãæ°Žåã»ã³ãµã䜿ãå Žåã¯ããããã«èªã¿æ¿ããŠãã ããã
- å ã»ã³ãµ - Seeed, Switch Science
- 枩床ã»ã³ãµ - Seeed, Switch Science
- æ°Žåã»ã³ãµ - Seeed, Switch Science - å°äžã®æ°Žåãæ°Žæ·±ãªã©
- Grove I2C å
¥åã¢ãžã¥ãŒã«
- ãžã§ã¹ãã£ãŒã»ã³ãµãŒ - Seeed, Switch Science
- Grove I2C åºåã¢ãžã¥ãŒã«
- OLED (0.96 ã€ã³ã) - Seeed, Switch Science
- KVM ããã€ã¹ã»ãã (USB/WiFi çµç±ã®ãªã¢ãŒãæ¥ç¶ã§éçºããå Žåã¯äžèŠ)
- HDMI ãã£ã¹ãã¬ã€ãHDMI ã±ãŒãã« (Full ãµã€ãº)
- USB ããŒããŒããUSB ããŠã¹
- micro USB éä¿¡ã±ãŒãã« (OS ã€ã¡ãŒãžæžãæããš HDMI ãã£ã¹ãã¬ã€å©çšæä»¥å€ã¯äžèŠ)
- å é»å°çšã®ã±ãŒãã«ãšééããªãããã«æ³šæããŠãã ãã
ãã®ãã¥ãŒããªã¢ã«ã§ã¯çµã¿èŸŒã¿è£œåã§å®éã«äœ¿ãã SoC ã䜿ã£ã Linux ãåäœããã®éçºããŒããšããŠã¯æãããªäŸ¡æ Œã§å®¹æã«å ¥æå¯èœã§ãæé©ãééããŠåœå ã§ãå®å¿ããŠäœ¿ãã Dragon Board ãå©çšããŸããDragon Board ã«ã€ããŠè©³ãã㯠éçºããŒãã®ããŒãž ãåç §ããŠãã ããã
åšèŸºããŒããŠã§ã¢ã«ã¯ç°¡åã®ãã Grove ã·ã¹ãã ã®ã¢ãžã¥ãŒã«ã䜿ããŸããLow Speed æ¡åŒµã³ãã¯ã¿ã® GPIO/I2C 端åã«åçš®ã»ã³ãµãŒãããã€ã¹ãçŽæ¥ç¹ãããšãåºæ¥ãŸãããGrove ã§ã¯ã³ãã¯ã¿ãã±ãŒãã«ãããŒãã®ãµã€ãºãçµ±äžããŠããžã¿ã«ä¿¡å·ãã¢ããã°ä¿¡å·ãUARTãI2C ã§éä¿¡ããããã€ã¹ãç°¡åã«æ¥ç¶åºæ¥ãããã«ãªã£ãŠããŸããArduino ã Raspberry Pi ã§ãããã¿ã€ãã³ã°ãè¡ãéã«ã䟿å©ã§ãã
Dragon Board ã¯åºè·æã« Android OS ãæèŒãããŠããŸãããæ¬ãã¥ãŒããªã¢ã«ã§ã¯ Yocto Linux ã®ãã«ãã«æžãæãããã®ã䜿çšããŸããDragon Board 410c ã®ã¡ã¢ ããŒãžèšèŒã® OS ã€ã¡ãŒãžæžãæãæé ã«åŸã£ãŠäºåã«æžãæããŸãã
- 黿ºã®ãªã³ãªãã«ã€ããŠ
- ããŒãã®èµ·åã«ã¯ AC ã¢ããã¿ã®æ¥ç¶ãå¿
èŠã§ããmicro USB ã±ãŒãã«ãªã©ããã®é»æºäŸçµŠã§ã¯èµ·åããŸããã
- éåžžã® AC ã¢ããã¿ã¯ç³»ã®å€§ãããç°ãªãããã倿ã±ãŒãã«ã䜿ã£ãŠæ¥ç¶ããŠãã ããã
- 黿ºãªã³ã«ããã«ã¯ãAC ã¢ããã¿ã®é»æºã±ãŒãã«ãåºããŠãã ãããFirefox on Yocto Project (Linux) ã®ã€ã¡ãŒãžã§ã¯ã±ãŒãã«ãæ¿ãããèªåçã«èµ·åããŸãã黿ºãå ¥ããš PWR, RESET ãªã©ã® LED ãç¹ç¯ããŸããäœã LED ãç¹ç¯ããªãå Žåã¯é»æºãã確èªããŠãã ããã
- 黿ºãªãã«ããã«ã¯ãAC ã¢ããã¿ã®é»æºã±ãŒãã«ãæããŠãã ãããçµäºãããŠãèªååèµ·åããã®ã§ãFirefox ã Node ãçµäºãã㊠RAM/SD ãžã®æžã蟌ã¿ãè¡ãããªãç¶æ ã§ã±ãŒãã«ãæããŠãã ããã
- ããŒãã®èµ·åã«ã¯ AC ã¢ããã¿ã®æ¥ç¶ãå¿
èŠã§ããmicro USB ã±ãŒãã«ãªã©ããã®é»æºäŸçµŠã§ã¯èµ·åããŸããã
- micro USB ã±ãŒãã«ã䜿ã£ãŠã·ãªã¢ã«ã³ã³ãœãŒã«ãããã°ã€ã³ããå ŽåããWiFi çµç±ã§ SSH ã䜿ã£ãŠãã°ã€ã³ããå Žåã
dragonboard-410c-32 login:
ã®çšã«è¡šç€ºããããã°ã€ã³ããã³ããã§ã¯ root ãŠãŒã¶ãæå®ããŠèµ·åããŠãã ãããã»ãã¥ãªãã£äžã¯è¯ããªãèšå®ã§ãããä»åã¯ç°¡åã®ããå šãŠ root ã§åäœãããŸãã
- 黿ºããªã³ã«ãããš root ãŠãŒã¶ã§ãã°ã€ã³ãã Linux ã®ãã¹ã¯ãããã衚瀺ãããŸãã
- ã¢ããªã±ãŒã·ã§ã³ã®èµ·å
- ã¢ããªã±ãŒã·ã§ã³ã¯ãã¹ã¯ãããã®å³ã¯ãªãã¯ã¡ãã¥ãŒããèµ·åããŸããFirefox 㯠Internet â Firefoxãã¿ãŒããã«ã¯ Terminals â Xterm ãèµ·åããŠãã ãããã¡ãã¥ãŒã«ã¯ä»ã«ãå€ãã®ã¢ããªã±ãŒã·ã§ã³åã衚瀺ãããŸãããä»åã®ãã«ãã€ã¡ãŒãžã«ã¯æå°éã®ã¢ããªã±ãŒã·ã§ã³ããå«ããŠãããèµ·åã§ããŸããã
- Workspace ã®åãæ¿ã
- ãã¹ã¯ããã (ããŠã¹ãã€ã³ã¿ããŠã£ã³ããŠäžã«ç¡ãç¶æ ) ã§çžŠã¹ã¯ããŒã«ããããš 4 ã€ã®ã¯ãŒã¯ã¹ããŒã¹ãåãå€ãããŸãããã€ãŒã«æäœãªã©ã§æå³ããåãå€ããããšãããã®ã§æ³šæããŠãã ããã
Dragon Board ã« Grove ã®æ¡åŒµããŒããèŒãã䜿ãããã¢ãžã¥ãŒã«ãæ¥ç¶ããŸããGrove ã³ãã¯ã¿ã¯åœ¢ãåãã§ãé»å§ (5V ããã㯠3.3V) ãéä¿¡æ¹åŒ (ããžã¿ã«ãã¢ããã°ãUARTãI2C) ãç°ãªãã®ã§é©åãªç«¯åã«ç¹ãããæ³šæããŠãã ããã
- 96 Boards Sensors (æ¡åŒµããŒã) ã«ä»å±ã®ã¹ããŒãµãŒ 4 ã»ãããåãä»ããŸã
- æ¡åŒµããŒãã®è¡šé¢ (ã³ãã¯ã¿ã倿°çããŠããæ¹) ããããžã穎ã«éããè£é¢ããå è§åœ¢ã®ã¹ããŒãµãŒãåãä»ããŸã
- Dragon Board ã® J8 ã³ãã¯ã¿ (äœéæ¡åŒµã³ãã¯ã¿ã2x20 ãã³ãåºããé»ãã³ãã¯ã¿) ã«åãã㊠96 Boards Sensors ãäžããéã㊠2 é建ãŠã«ããŸã
- Grove ãã¿ã³ã¯å梱ã®ã±ãŒãã«ã§ 96 Boards Sensors ã® G3 端å (çœè²ãåçŽãäžå€®ä»è¿ USB ããŒããã) ã«æ¥ç¶ããŸã
- Grove ãã¿ã³ã¯ç«¯åã«ã«ããŒãä»ããŠããããšããããŸãããã®ãŸãŸã§ã¯ã±ãŒãã«ãåºãããªãã®ã§å€ããŠãã ãã
- ãã¿ã³ä»¥å€ã«ãä»»æã® GPIO ããžã¿ã«å ¥åããã€ã¹ã䜿ãããšãã§ããŸãã
- Grove LED ã¯å梱ã®ã±ãŒãã«ã§ 96 Boards Sensors ã® G2 (EF) 端å (ããŒãžã¥ãæ°Žå¹³ãäžå€®åŽã® USB ããŒãäž) ã«æ¥ç¶ããŸã
- Grove LED ã¯åºç€ãš LED ãåé¢ããç¶æ ã§åºè·ãããŠããŸãã®ã§ãåãã«æ³šæããŠæã蟌ãã§ãã ãããåºæ¿ã«æžãããŠããåã¯å®å šãªæ£åã§ã¯ãªãã±ãŒãã«ãæ¿ãã³ãã¯ã¿åŽãäžé𿬠ããŠåŒŠã«ãªã£ãŠããéšåããããŸããLED åŽãåæ§ã«æ¬ ããŠããéšåãããã®ã§äž¡è ã®æ¹åãæããŠãã ããã
- LED 以å€ã«ããã¶ãŒãªã©ä»»æã® GPIO Output ããã€ã¹ã䜿ãããšãã§ããŸãã
- æ¥ç¶ãã GPIO 端åã®äœçœ®ã¯ JavaScript åŽã§æå®ããããŒãçªå·æ¬¡ç¬¬ã§ããI2C ããã€ã¹çšã®ããŒãã«æ¥ç¶ããªãããšãGROVE ã³ãã¯ã¿ã§äŸçµŠãããŠããé»å§å€ (5V or 3.3V) ãªã©ã«ã¯æ³šæãå¿ èŠã§ãããJavaScript åŽãæžãæããã°ä»ã® GPIO ããŒãã§ã䜿çšå¯èœã§ãã
micro USB ã±ãŒãã«ã WiFi çµç±ã§ Dragon Board ã®ã·ã§ã«ã«ãã°ã€ã³ã§ããããã«ãããããã·ãªã¢ã«ã³ã³ãœãŒã«ã®ã¯ã©ã€ã¢ã³ããš ssh/scp ã³ãã³ãã䜿ããããã«æºåããŸããssh ã³ãã³ã ã¯å®å šã«ç«¯æ«ã®ã·ã§ã« (ã¿ãŒããã«) ã«ãã°ã€ã³ããããã«äœ¿ããscp ã³ãã³ã 㯠SSH ãå©çšã㊠cp ã³ãã³ãã®ããã«ç«¯æ«éã§ã®ãã¡ã€ã«è»¢éãè¡ãããã«äœ¿ãã³ãã³ãã§ãã
-
macOS
- OS æšæºã® cu ã³ãã³ããssh/scp ã³ãã³ãã䜿çšããŸããã€ã³ã¹ããŒã«ãå¿ èŠãªãã®ã¯ãããŸãã
- ãã©ã€ããªã©ã®ã€ã³ã¹ããŒã«ãäžèŠã§ã
-
Windows
- ã¿ãŒããã«ãšãã¥ã¬ãŒã¿ Tera Term ãã€ã³ã¹ããŒã«ããŠãã ãã
- ã·ãªã¢ã«ã³ã³ãœãŒã«ã®ãã©ã€ããã€ã³ã¹ããŒã«ããŠãã ãã
- ãã©ã€ãé åžããŒãž ãã Windows çšã®ããã€ã¹ãã©ã€ã ãããŠã³ããŒãããŠãã ãã
- Dragon Board ã« 96 Boards Sensors ãæèŒããŠé»æºãå ¥ããŠãã ãã
- 96 Boards Sensors ã® micro USB 端å (æ¡åŒµããŒãã®æ¹) ãšããœã³ã³ãæ¥ç¶ããŠãã ãã
- æ°ããããã€ã¹ãæ€åºããã©ã€ããã€ã³ã¹ããŒã«ãããŠã£ã¶ãŒãã衚瀺ãããããã³ã³ãã¥ãŒã¿äžã®ãã©ã€ããéžæããŠã€ã³ã¹ããŒã«ããæ¹ãéžæããå
ã»ã©ã® ZIP ãã¡ã€ã«ãå±éãããã£ã¬ã¯ããªãéžæããŠãã ãã
- ãŠã£ã¶ãŒãã衚瀺ãããªãå ŽåãéããŠããŸã£ãå Žåãããã€ã¹ãããŒãžã£ (ã³ã³ãããŒã«ããã« â ããŒããŠã§ã¢ãšãµãŠã³ãããéããŸã) ã§ FT230X 96Boards Console ãå³ã¯ãªãã¯ããŠãã©ã€ããŒãœãããŠã§ã¢ã®æŽæ°ãã³ã³ãã¥ãŒã¿äžã®ãã©ã€ããéžæããå ã»ã©ã® ZIP ãã¡ã€ã«ãå±éãããã£ã¬ã¯ããªãéžæããŠãã ããã
- USB Serial Converter ãšããŠèªèãããåæã«æ°ãã USB Serial Port ãçºèŠãããŸãããããå³ã¯ãªãã¯ããåæ§ã«ãã©ã€ããŒãœãããŠã§ã¢ã®æŽæ°ãããŠãã ããã
- USB Serial Port ãèªèããããŒãçªå· (COM3 ãªã©) ãå²ãåœãŠãããã°ãã©ã€ãã®ã€ã³ã¹ããŒã«ã¯å®äºã§ãã
ãŸãã¯ã¿ãŒããã«ã«æ¥ç¶ããŠã³ãã³ãã©ã€ã³ã·ã§ã«ã§ããŒãã®æäœãã§ããããã«ããŸãã
HDMI ãã£ã¹ãã¬ã€ãç¹ãã§ããå Žåãã¿ã¹ã¯ããŒãªã©ãç¡ãã·ã³ãã«ãªãã¹ã¯ãããã§ããéåžžã® Linux ã«ãã°ã€ã³ããŠããç¶æ ãšåãã§ã (黿ºãå ¥ãããšèªåçã« root ãŠãŒã¶ãšããŠãã°ã€ã³ããŸã)ãããŠã¹ã®å³ã¯ãªãã¯ã¡ãã¥ãŒãã Terminals â Xterm ãèµ·åããŸãã
96 Boards Sensors ã® micro USB ã³ãã¯ã¿ãšããœã³ã³ãç¹ããš USB ã·ãªã¢ã«ã³ã³ãœãŒã«ãšããŠäœ¿çšã§ããŸããDragon Board æ¬äœã® micro USB 端åã¯ã·ãªã¢ã«ã³ã³ãœãŒã«ãšããŠäœ¿çšã§ããŸããã96 Boards Sensors ãç¡ãå Žåã¯æ¢ã« WiFi èšå®ãå®äºããŠã㊠SSH æ¥ç¶åºæ¥ãã HDMI ãã£ã¹ãã¬ã€ã䜿ã£ãŠçŽæ¥æäœã§ããå¿ èŠããããŸãã
- 96 Boards Sensors ã® Micro USB ã³ãã¯ã¿ãšããœã³ã³ãæ¥ç¶ããŠãã ãã
- æ¡åŒµããŒãåŽã§ããDragon Board åŽã® micro USB ã¯ã·ãªã¢ã«ã³ã³ãœãŒã«ãšããŠã¯å©çšã§ããŸãã
- Windows ã§ã¿ãŒããã«ãšãã¥ã¬ãŒã¿ Tera Term ã䜿çšããå Žå:
- ttermpro.exe ãèµ·åã Serial ã§ Port ã«
COM3: USB Serial Port (COM3)
ãªã©ãšãªã£ãŠãããã®ãéžæããŸãã - Setup ã¡ãã¥ãŒã® Serial port... ãéã Baud Rate ã 115200 ã«å€æŽããŸãã
-
dragonboard-410c-32 login:
ã®ããã«è¡šç€ºãããã®ã§ãã°ã€ã³ãããŠãŒã¶åãroot
ãšå ¥åããŸã- 衚瀺ãããªãå Žå㯠USB ã±ãŒãã«ãæ¿ãããŸãŸã§ Dragon Board ãåèµ·å (黿ºã±ãŒãã«æãå·®ã) ããŠãã ãããLinux èµ·åããã»ã¹ã®ãã°ã¡ãã»ãŒãžã衚瀺ãããåŸããã°ã€ã³ããã³ããã衚瀺ãããŸã (ããã»ã¹ã衚瀺ããããããã³ãããåºãªãå Žåã¯äžåºŠãšã³ã¿ãŒããŒãæŒããšè¡šç€ºãããããšããããŸã)ã
-
root@dragonboard-410c-32:~#
ã®ããã«ã·ã§ã«ã衚瀺ãããã°ã€ã³å®äºã§ãã
- ttermpro.exe ãèµ·åã Serial ã§ Port ã«
- Mac ã®å Žå:
-
ls /dev/tty.*
ã§ tty ããã€ã¹ã®ãªã¹ãã確èª- Mac ã§ã¯
/dev/tty.usbserial-DACRG7O
ãªã©ããªã¹ãã«åºãŠããŸããããã®å€ã¯ãã·ã³ã«ãã£ãŠç°ãªããŸããåèªã®ç«¯æ«ã§å®éã«è¡šç€ºããã tty ããã€ã¹åã䜿çšããŠãã ããã
- Mac ã§ã¯
-
sudo cu -s 115200 -l /dev/tty.usbserial-DACRG7O
ã®ããã«éä¿¡é床ã 115200 ããŒãããã€ã¹åãå ã»ã©ã®ãã¹ã§æå®ããŠã·ãªã¢ã«ã³ã³ãœãŒã«ã«æ¥ç¶ããŸã- -s ãªãã·ã§ã³ã§éä¿¡é床ãæå®ããªããšæ£ããéä¿¡ã§ããŸãã
-
Connected.
ãšè¡šç€ºãããŸãããã㯠USB ã±ãŒãã«ã®å ã«ç«¯æ«ããããã©ããã«é¢ãããéä¿¡ããŒããšããŠæºåãåºæ¥ããšããæå³ã§ãã黿ºãå ¥ã£ãŠããªãã£ããããŒãã®ã·ã§ã«ã«ãã°ã€ã³ã§ããŠããªãç¶æ ã§ããã®ããã«è¡šç€ºãããŸãã
-
Password:
ãšããããã³ããã衚瀺ããããã Mac ã®ãã°ã€ã³æã«äœ¿çšããŠãããã¹ã¯ãŒããå ¥åããŠãã ããã- ãã®ã³ãã³ãã®å®è¡ã«ã¯ Mac ã®ç®¡çè
æš©éãå¿
èŠã§ãã
sudo
ã³ãã³ãã䜿çšãããã Mac ã®ç®¡çæš©éãæã€ãŠãŒã¶ã®ãã¹ã¯ãŒãå ¥åãæ±ããããŸãã
- ãã®ã³ãã³ãã®å®è¡ã«ã¯ Mac ã®ç®¡çè
æš©éãå¿
èŠã§ãã
-
dragonboard-410c-32 login:
ã®ããã«è¡šç€ºãããã®ã§ãã°ã€ã³ãããŠãŒã¶åãroot
ãšå ¥åããŸã- 衚瀺ãããªãå Žåã¯ãšã³ã¿ãŒããŒãæŒããŠãã ããããšã³ã¿ãŒããŒãæŒããŸã§
Connected.
ã®è¡šç€ºã§åæ¢ãããŸãŸã«ãªãããšããããŸãã
- 衚瀺ãããªãå Žåã¯ãšã³ã¿ãŒããŒãæŒããŠãã ããããšã³ã¿ãŒããŒãæŒããŸã§
-
root@dragonboard-410c-32:~#
ã®ããã«ã·ã§ã«ã衚瀺ãããã°ã€ã³å®äºã§ãã
-
ãŸã㯠WiFi ã«æ¥ç¶ã㊠IP ã¢ãã¬ã¹ã確èªããŸãã
nmtui ã³ãã³ãã䜿ã£ãŠ WiFi ã«æ¥ç¶ããŸããWiFi ãããã¯ãŒã¯ã¯ SSID ãå ¬éãããŠãããæ¥ç¶ããŠãã端æ«éã§ã®éä¿¡ã®ãã£ã«ã¿ãªã³ã°ããããŠããªããã®ãçšæããŠãã ãããã¹ããŒããã©ã³ã§ãã¶ãªã³ã°ããŠãã®ãããã¯ãŒã¯ã«æ¥ç¶ããŠãæ§ããŸããã
-
(äžèšæé ã§ Dragon Board ã®ã¿ãŒããã«ã«æ¥ç¶ããŸã)
-
nmtui
ã³ãã³ããå®è¡ããŸããããã¹ãããŒã¹ã® GUI ã§ç°¡åã« WiFi ã«æ¥ç¶ã§ããŸãã -
Activate a connection
ãéžæãæ¥ç¶ããã SSID ãéžæããŸãã -
Authentication required by wireless network
ãã€ã¢ãã°ã§ WiFi ãããã¯ãŒã¯ã®ãã¹ã¯ãŒããå ¥åãQuit ãéžæããŸãã -
nmcli device status
ã³ãã³ãã§æ¥ç¶ããŠãããããã¯ãŒã¯äžèЧã確èªã§ããŸããwlan0 ã® STATE ã connected ã«ãªã£ãŠããã°æ¥ç¶å®äºã§ããroot@dragonboard-410c-32:~# nmcli device status DEVICE TYPE STATE CONNECTION wlan0 wifi connected mozilla1 lo loopback unmanaged -- sit0 sit unmanaged --
-
å®éã«å€éšãããã¯ãŒã¯ãžã®æ¥ç¶ã確èªãããå Žåã¯
ping github.com
ãªã©ã®ã³ãã³ãã§çé確èªããŠãã ããã
-
ip addr
ã³ãã³ããå®è¡ããŠãã ãããæ¬¡ã®ããã« IP ãããã¯ãŒã¯æ å ±ã衚瀺ãããã®ã§ãWiFi ãããã¯ãŒã¯ (wlan0) ã® IPv4 ã¢ãã¬ã¹ (inet ã®å€) ãèªã¿åããŸãã以äžã®åºåäŸã®å Žåã§ã¯192.168.11.3
ã®éšåã§ããããã«ç¶ã/24
ãªã©ã®éšåã¯ãµãããããã¹ã¯ãbrd 192.168.11.255
ãªã©ã¯ãããŒããã£ã¹ãã¢ãã¬ã¹ã§ããroot@dragonboard-410c-32:~# ip addr 1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue qlen 1 link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00 inet 127.0.0.1/8 scope host lo valid_lft forever preferred_lft forever inet6 ::1/128 scope host valid_lft forever preferred_lft forever 2: sit0@NONE: <NOARP> mtu 1480 qdisc noop qlen 1 link/sit 0.0.0.0 brd 0.0.0.0 3: wlan0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq qlen 1000 link/ether 02:00:27:ed:2d:20 brd ff:ff:ff:ff:ff:ff inet 192.168.11.3/24 brd 192.168.11.255 scope global dynamic wlan0 valid_lft 172295sec preferred_lft 172295sec inet6 fe80::27ff:feed:2d20/64 scope link valid_lft forever preferred_lft forever
Dragon Board ãä»ã®äººãšåããããã¯ãŒã¯ (WiFi) ã«æ¥ç¶ããå Žåãä»ã®äººãåæã« (ãããã¯èª€ã£ãŠ) æ¥ç¶ããªããããèªåã®ããŒãã® root ãŠãŒã¶ã«ãã¹ã¯ãŒããèšå®ããŸããèšå®åŸã¯ã·ãªã¢ã«ã³ã³ãœãŒã«ã SSH ã§æ¥ç¶ãããšãã«ãã®ãã¹ã¯ãŒããæ±ããããã®ã§æ³šæããŠãã ããã
-
passwd
ã³ãã³ããå®è¡ããŸã - æ°ããèšå®ãããã¹ã¯ãŒãã®å
¥åã 2 åæ±ãããããããåããã¹ã¯ãŒããå
¥åããŸãã
root@dragonboard-410c-32:~# passwd Enter new UNIX password: Retype new UNIX password: passwd: password updated successfully
ããœã³ã³ãã SSH ã³ãã³ãã䜿ã£ãŠ WiFi çµç±ã§ Dragon Board ã®ã¿ãŒããã«ã«æ¥ç¶ã§ããŸããäž¡æ¹ã®ç«¯æ«ãåããããã¯ãŒã¯ã«æ¥ç¶ããŠããå¿ èŠãããã®ã§æ³šæããŠãã ããã
- äžèšæé ã§ Dragon Board ã WiFi ã«æ¥ç¶ããŸãã
- ããœã³ã³åŽãåã WiFi ãããã¯ãŒã¯ã«æ¥ç¶ããŸãã
Windows ã§ MSYS ã Cygwin ã䜿ã£ãŠããã Mac/Linux ç°å¢ã§ã³ãã³ãã©ã€ã³ã® ssh ã䜿çšããå Žåã§ãã
-
ããœã³ã³ã§æ°ããã¿ãŒããã«ãŠã£ã³ããŠãŸãã¯ã¿ããèµ·åããŠãã ãããDragon Board ã®ã·ã§ã«ã«æ¥ç¶ããŠããã¿ãŒããã«ã§ã¯ãããŸããã
-
ssh [email protected]
ã®ããã« @ ã®ååŸã« Dragon Board ã®ãŠãŒã¶åãš IP ã¢ãã¬ã¹ãæå®ããŠæ¥ç¶ããŸãã- ããŒãã®ãŠãŒã¶åã¯
root
ã§ããããŒãã® IP ã¢ãã¬ã¹ã¯äžèšã®ããã«äºåã« Dragon Board äžã§ip addr
ã³ãã³ãã䜿ã£ãŠç¢ºèªããŸãã
- ããŒãã®ãŠãŒã¶åã¯
-
SSH ååæ¥ç¶æã¯ãµãŒã (ããŒã) åŽã®ãã£ã³ã¬ãŒããªã³ãã衚瀺ãããã®ã§
yes
ãšå ¥åããŸããIP ã¢ãã¬ã¹ãå€ããæ¯ã«åã確èªã衚瀺ãããŸãããåã IP ã¢ãã¬ã¹ã§ 2 床ç®ä»¥éã®æ¥ç¶ããããšãã«ã¯è¡šç€ºãããŸããã$ ssh [email protected] The authenticity of host '192.168.11.3 (192.168.11.3)' can't be established. ECDSA key fingerprint is SHA256:VIHbNtrjqWmp3iC27tZtqhAvC3ZSLQ/8GXiKuRZYnJ0. Are you sure you want to continue connecting (yes/no)? yes Warning: Permanently added '192.168.11.3' (ECDSA) to the list of known hosts. Last login: Tue Nov 8 02:17:52 2016 from 192.168.11.2 root@dragonboard-410c-32:~#
- Dragon Board ã® root ãŠãŒã¶ã«ãã¹ã¯ãŒããèšå®ããŠããå Žåã¯ãã¹ã¯ãŒããèãããã®ã§å ¥åããŸã
-
root@dragonboard-410c-32:~#
ã®ããã«ã·ã§ã«ã衚瀺ãããã°ã€ã³å®äºã§ãã
Windows ã§ã¿ãŒããã«ãšãã¥ã¬ãŒã¿ Tera Term ã䜿çšããå Žåã§ãã
- ã¿ãŒããã«ãšãã¥ã¬ãŒã¿ Tera Term ãã€ã³ã¹ããŒã«ããŠãã ããã
- ãšã¯ã¹ãããŒã©ãªã©ãã ttermpro.exe ãèµ·åã TCP/IP ã® Host ã«äžèšã§èª¿ã¹ã Dragon Board ã® IP ã¢ãã¬ã¹ãå ¥åããŸãã
- Service ã SSH ã«ãªã£ãŠããããšã確èªããŠãã ãã
- åå㯠SECURITY WARNING ãšããŠãµãŒããã¹ãã®ãã£ã³ã¬ãŒããªã³ãã衚瀺ãããŸãã®ã§ Continue ããŠãã ãã
- Dragon Board äžã®ãŠãŒã¶å (root) ãšãã¹ã¯ãŒã (åæèšå®ã§ã¯ç©ºãèªåã§èšå®ããå Žåã¯ãã) ãå
¥åããŠ
OK
ãã¯ãªãã¯ããŸãã -
root@dragonboard-410c-32:~#
ã®ããã«ã·ã§ã«ã衚瀺ãããã°ã€ã³å®äºã§ãã
ããœã³ã³ãã SSH (WiFi) ãã·ãªã¢ã«ã³ã³ãœãŒã« (USB) ã䜿ã£ãŠãã¡ã€ã«ã転éã§ããŸãã
-
ãµã³ãã«ã¹ã¯ãªããé㯠gecko-embedded-scripts ãªããžããªã® grove-samples ãã£ã¬ã¯ã㪠ã«å ¥ã£ãŠããŸãã
-
ãªããžããªããŸãšã㊠ZIP ãšããŠããŠã³ããŒãããŠãã ããã(git clone ããå ŽåãZIP ã«ãŸãšããã以äžã®ãã¡ã€ã«è»¢éãåäžãã¡ã€ã«ã§ã¯ãªããã£ã¬ã¯ããªå šäœã®ã³ããŒãšããŠãã ãã)
-
ããœã³ã³ã§æ°ããã¿ãŒããã«ãŠã£ã³ããŠãŸãã¯ã¿ããèµ·åããŠãã ãããDragon Board ã®ã·ã§ã«ã«ã·ãªã¢ã«ã³ã³ãœãŒã«ã SSH ã§æ¥ç¶ããŠããã¿ãŒããã«ã§ã¯ãããŸããã
-
scp gecko-embedded-scripts-master.zip [email protected]:~
ã³ãã³ãã§ ZIP ãã¡ã€ã«ãããœã³ã³ãã Dragon Board ã®ããŒã ãã£ã¬ã¯ããªã«è»¢éããŸãã- scp ã³ãã³ã㯠cp ã³ãã³ãåæ§ã«ã³ããŒå
ãšã³ããŒå
ãåŒæ°ã«åããŸããããã¡ã€ã«ãã¹ã®åã«
[email protected]:
ã®ããã«ããªã¢ãŒããµãŒãã®ãŠãŒã¶åãš IP ã¢ãã¬ã¹ãš:
ãä»ããããšã§ãããŒã«ã«ãã·ã³ã§ã¯ç¡ããªã¢ãŒããµãŒãäžã®ãã¡ã€ã«ããã£ã¬ã¯ããªãæå®ã§ããŸãããã®äŸã®å Žåã³ããŒå ã®ãã£ã¬ã¯ããªã¯~
ã€ãŸãããŒã ãã£ã¬ã¯ããªãæå®ããŠããŸãã - ZIP ãã¡ã€ã«åäœã§ã¯ç¡ã ZIP å±éæžã¿ããã㯠git clone ãããã©ã«ããã³ããŒãããå Žåã¯
scp -r gecko-embedded-scripts-master/grove-samples [email protected]:~/gecko-embedded-scripts-master
ã®ããã«ã³ããŒå ã®ãã¡ã€ã«ãå«ããã£ã¬ã¯ããªãšã³ããŒå ã®ãã£ã¬ã¯ããªã -r ãªãã·ã§ã³ä»ãã§æå®ããŸãã
$ scp gecko-embedded-scripts-master.zip [email protected]:~ gecko-embedded-scripts-master.zip 100% 9802 9.6KB/s 00:00
- scp ã³ãã³ã㯠cp ã³ãã³ãåæ§ã«ã³ããŒå
ãšã³ããŒå
ãåŒæ°ã«åããŸããããã¡ã€ã«ãã¹ã®åã«
micro USB ã±ãŒãã«ã§ã®ã·ãªã¢ã«ã³ã³ãœãŒã«æ¥ç¶ã§ããã¡ã€ã«ã®è»¢éã¯å¯èœã§ããäœãããã§ã¯èª¬æãçç¥ããŸããWiFi æ¥ç¶ã䜿ããªãå Žåãªã©ã¯äŸãã° http://d.hatena.ne.jp/hirose31/20060910/1157901142 ãªã©ã®èª¬æãåèã«ããŠãã ããã
- åè¿°ã®æé ã§ã¹ã¯ãªããã® ZIP ãã¡ã€ã«ã転éã§ããã Dragon Board ã®ã¿ãŒããã«ã«ãã°ã€ã³ããŸã (ãã§ã« SSH ãããã¯ã·ãªã¢ã«ã³ã³ãœãŒã«ã§ãã°ã€ã³æžã¿ã§ããã°ãã®ã¿ãŒããã«ãéããŸã
-
unzip gecko-embedded-scripts-master.zip
ã§ gecko-embedded-scripts ãªããžããªã®ãã¡ã€ã«ãå±éããŸãã -
cd gecko-embedded-scripts-master/grove-samples
ã§ Grove ã䜿ã£ããµã³ãã«ã¹ã¯ãªããã®ãã£ã¬ã¯ããªã«ç§»åããŸã
ãµã³ãã«ã¹ã¯ãªããã®ãã£ã¬ã¯ã㪠ã«ã¯ä»¥äžã®ãã¡ã€ã«ãå«ãŸããŠããŸã
- index.js
- ãã¿ã³ãLEDããžã§ã¹ãã£ãŒã»ã³ãµãŒãOLCD ããã«ã䜿ã£ããµã³ãã«ã³ãŒããåãããµãŒãã¹ã¯ãªããã§ãã
- package.json
- express ãªã©äŸåã©ã€ãã©ãªã管çããããã®ããã±ãŒãžæ å ±ãã¡ã€ã«ã§ãã
- lib/
- ã©ã€ãã©ãªã® JavaScript ãã¡ã€ã«ãåãããã£ã¬ã¯ããªã§ãã
- public/
- index.js ã§ãã¹ããããlocalhost ãµãŒãã®éçã³ã³ãã³ããåãããã£ã¬ã¯ããªã§ãã
- test/
- åããã€ã¹ã®ãã¹ãã³ãŒããåãããããã£ã¬ã¯ããªã§ãã
- test/adc.js
- I2C 端åã« ADC ãšã¢ããã°ã»ã³ãµãŒãç¹ãã§å ¥åå€ãã«ãŒãåºåããã³ãŒãã§ãã
- test/button-led.js
- GPIO 端åã®ãã¿ã³ãæŒããš GPIO 端åã® LED ãå ããã¹ãã³ãŒãã§ãã
- test/gesture-oled.js
- I2C 端åã®ãžã§ã¹ãã£ãŒã»ã³ãµãŒã«å¿ã㊠GPIO 端åã® LED ãå ããã¹ãã³ãŒãã§ãã
- test/gpio-input.js
- GPIO 端åã®å ¥åå€ãã«ãŒãåºåãããã¹ãã³ãŒãã§ãã
- test/gpio-output.js
- GPIO 端åã®åºåããªã³ãªãç¹°ãè¿ããã¹ãã³ãŒãã§ãã
- (äžèšæé ã§ Dragon Board ã®ã¿ãŒããã«ã«æ¥ç¶ã㊠grove-samples ãã£ã¬ã¯ããªã«ç§»åããŸã)
-
npm install
ã³ãã³ãã package.json ãã¡ã€ã«ã®ååšãã grove-samples ãã£ã¬ã¯ããªã§å®è¡ãããšãå¿ èŠãšãªãäŸåã©ã€ãã©ãªãèªåçã«ã€ã³ã¹ããŒã«ãããŸãã
- (äžèšæé ã§ Dragon Board ã®ã¿ãŒããã«ã«æ¥ç¶ã㊠grove-samples ãã£ã¬ã¯ããªã«ç§»åããŸã)
-
node index.js
ã³ãã³ããå®è¡ãããš Node ãµãŒããèµ·åããŸã - HDMI ãã£ã¹ãã¬ã€ãæ¥ç¶ããŠããå Žå㯠Dragon Board ã®ãã¹ã¯ããããå³ã¯ãªãã¯ã㊠Internet â Firefox ãèµ·åã㊠http://localhost:3000/ ã«ã¢ã¯ã»ã¹ããããšã§ãµãŒãã«ã¢ã¯ã»ã¹ã§ããŸãã
- åäžãããã¯ãŒã¯ã®ããœã³ã³ãã㯠http://192.168.11.3:3000/ ã§ã¢ã¯ã»ã¹ã§ããããã«ãªããŸãã
- ããŒãã§ã¯ avahi-daemon ãåäœããŠãã mdns ã§ã®åå解決ãå¯èœã§ããåäžãããã¯ãŒã¯äžã«è€æ°ã®ããŒãããªãç°å¢ã§ããã° http://dragonboard-410c-32.local:3000/ ãªã©ã§æ¥ç¶ããããšãå¯èœã§ãã
- ãã©ãŠã¶ã« public ãã£ã¬ã¯ãã®äžèº«ã衚瀺ãããããšã確èªããŠãã ãã
- Ctrl+C ããŒã§ node ãµãŒããçµäºãããŸã
Grove ã·ã¹ãã ã®ã¢ãžã¥ãŒã«ãå©çšãããµã³ãã«ã¹ã¯ãªãããåãããŠã¿ãŸãããã
-
Hello Sensors World
- Grove ã®ãã¿ã³ (GPIO Input) ã¢ãžã¥ãŒã«ã G3 (G pin) 端å (åçŽãäžå€®ä»è¿ USB ããŒããã) ã«æ¥ç¶ããŸãã
- Grove ã® LED (GPIO Output) ã¢ãžã¥ãŒã«ã G2 (E pin) 端å (æ°Žå¹³ãäžå€®ä»è¿ USB ããŒãäž) ã«æ¥ç¶ããŸãã
- åè¿°ã®éã Dragon Board äžã® grove-samples ãã£ã¬ã¯ããªã§
node test/button-led.js
ãå®è¡ã node ã¹ã¯ãªãããèµ·åãããŸãã - Grove ãã¿ã³ãæŒããã LED ãç¹ç¯ããããšã確èªããŸãã
- Dragon Board äžã§ Ctrl+C ããŒãæŒã㊠node ã忢ãããŸãã
-
ADC ãšã¢ããã°ã»ã³ãµãŒã䜿ã£ãŠã¿ã
- Grove ã® ADC (I2C) ã¢ãžã¥ãŒã«ã P8 端å (æ°Žå¹³ãHDMI ããŒãã®äž) ã«æ¥ç¶ããŸãã
- ADC ã¢ãžã¥ãŒã«ã®ã³ãã¯ã¿ã®ãã¡ãè£é¢ã« SCL, SDA, VCC, GND ãšæžãããŠããæ¹ã I2C 端åã§ãããŒãã® P8 端åã«æ¥ç¶ããåŽã§ãã
- Grove ã®å
ã»ã³ãµãŒ (ã¢ããã°ã»ã³ãµãŒ) ã¢ãžã¥ãŒã«ã ADC ã¢ãžã¥ãŒã«ã«æ¥ç¶ããŸãã
- ADC ã¢ãžã¥ãŒã«ã®ã³ãã¯ã¿ã®ãã¡ãè£é¢ã« GND, VCC, NC, SIG ãšæžãããŠããæ¹ã«ã¢ããã°ã»ã³ãµãŒãæ¥ç¶ããŸãã
- (å¿
èŠã«å¿ããŠ) ADC ã¢ãžã¥ãŒã«ã®ã¢ãã¬ã¹ã«åãããŠã³ãŒããæžãæããŸã
- Grove ADC ã¢ãžã¥ãŒã« 㯠I2C ã¢ãã¬ã¹ãããã©ã«ãã§ 0x55 ãšãããŠããŸããããããã«ãã£ãŠã¯ããã©ã«ãã®ã¢ãã¬ã¹ãç°ãªãããã¢ãžã¥ãŒã«ã®é ç·ãã«ããããããšã§åã¢ãžã¥ãŒã«ã®ã¢ãã¬ã¹ã倿Žã§ããŸãããææã¡ã®ã¢ãžã¥ãŒã«ã«åãã㊠test/adc.js ãã¡ã€ã«ã® I2C_ADDR ã®å€ãæžãæããŠãã ããã
- åè¿°ã®éã Dragon Board äžã® grove-samples ãã£ã¬ã¯ããªã§
node test/adc.js
ãå®è¡ã node ã¹ã¯ãªãããèµ·åãããŸãã - 1 ç§æ¯ã«ã»ã³ãµãŒã®é»å§å€ãååŸããŠè¡šç€ºãããŸããã»ã³ãµãŒãæã§èŠã£ããããŠæããããšå€ãå€ããããšã確èªããŸãã
- Dragon Board äžã§ Ctrl+C ããŒãæŒã㊠node ã忢ãããŸãã
- Grove ã® ADC (I2C) ã¢ãžã¥ãŒã«ã P8 端å (æ°Žå¹³ãHDMI ããŒãã®äž) ã«æ¥ç¶ããŸãã
-
Express ã䜿ã£ã Node ãµãŒãã䜿ã£ãŠã¿ã
- Grove ã®ãã¿ã³ (GPIO Input) ã¢ãžã¥ãŒã«ã G3 (G pin) 端å (åçŽãäžå€®ä»è¿ USB ããŒããã) ã«æ¥ç¶ããŸãã
- Grove ã® LED (GPIO Output) ã¢ãžã¥ãŒã«ã G2 (E pin) 端å (æ°Žå¹³ãäžå€®ä»è¿ USB ããŒãäž) ã«æ¥ç¶ããŸãã
- Grove ã®ãžã§ã¹ãã£ãŒã»ã³ãµãŒã¢ãžã¥ãŒã«ã P8 端å (æ°Žå¹³ãHDMI ããŒãã®äž) ã«æ¥ç¶ããŸãã
- Grove ã® OLED ã¢ãžã¥ãŒã«ã P11 端å (åçŽãP8 端åã®é£) ã«æ¥ç¶ããŸãã
- åè¿°ã®éã Dragon Board äžã® grove-samples ãã£ã¬ã¯ããªã§
node index.js
ãå®è¡ããnode ãµãŒããèµ·åãããŸãã - ããœã³ã³åŽãã http://192.168.11.3:3000/ ã«æ¥ç¶ããŠåããŒãžã§åäœã確èªããŸã (URL ã® IP ã¢ãã¬ã¹ã¯åèªã®ããŒãã®ãã®ã§èªã¿æ¿ããŸã)
- Dragon Board äžã§ Ctrl+C ããŒãæŒã㊠node ã忢ãããŸãã