Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

LinkIt Smart 7688 Duo and MCS basics

14,001 views

Published on

introduction of LinkIt Smart 7688 Duo and MCS basics. Contents includes environments setup (Arduino IDE and Web UI); SSH log in; How to program nodejs and python on 7688; Mediatek Cloud Snadbox introduction.

And finally let your 7688 duo interact with MCS.

More interesting: http://www.cavedu.com

Published in: Devices & Hardware
  • Hey guys! Who wants to chat with me? More photos with me here 👉 http://www.bit.ly/katekoxx
       Reply 
    Are you sure you want to  Yes  No
    Your message goes here

LinkIt Smart 7688 Duo and MCS basics

  1. 1. LinkIt Smart 7688 Duo 物聯網 IoT 體驗夜 懶人包載點 CAVEDU 曾吉弘 151229
  2. 2. 硬體介紹
  3. 3. 原廠文件 • MTK 7688官網 • 7688開發者手冊 / 7688 Duo 開發手冊 • MCS與7688 • 7688 Knowledge base
  4. 4. 整合型應用 • FPV機器人或四旋翼 • Wifi工程車 – Michael Huang • 7688 迷你四驅車 – Makee.io
  5. 5. 開發環境比一比 7688 • Nodejs • Python • C/C++ 7688 Duo • Nodejs • python • Arduino • C/C++
  6. 6. Seeed 7688 Grove感測器套件包 • 1 x Grove - Light Sensor • 1 x Grove - Infrared Emitter • 1 x Grove - Infrared Receiver • 1 x Grove - Encoder • 1 x Grove - Touch Sensor • 1 x Grove - OLED Display 1.12" • 1 x Grove - Temperature & Humidity Sensor • 1 x Grove - Relay • 1 x Grove - Gas Sensor (MQ2) • 1 x IR Remote Control
  7. 7. 可搭配的擴充板
  8. 8. POWER USB HOST MPU / Wifi / MCU Micro SD 卡插槽在背面 WiFi天線
  9. 9. 7688 Duo pin layout (檔案在懶人包)
  10. 10. 接上電源開始吧
  11. 11. Arduino IDE setup Wi-Fi setup
  12. 12. Arduino IDE 下載 1. 請下載 Arduino 1.6.4 以後的版本 2. 從 board manager 安裝 7688 Duo 3. 安裝 driver • 網頁版教學請按我
  13. 13. 在Arduino IDE偏好設定中 貼上這個連結• File / Preferences • http://download.labs.mediatek.com/package_mtk_linkit_smart_7688 _test_index.json
  14. 14. 在選單中看到 7688,按 Install • Tools / Board / Boards Manager
  15. 15. 完成之後就可以看到 7688 了 • 在很下面…
  16. 16. 如果板子在網路上也可以抓到
  17. 17. 安裝 driver,請把 7688 接上電腦 • 在 Windows 裝置管理 員中會被歸類在[其他 裝置] 中。 • linkit_smart_7688.inf 在懶人包裡面,指到這 個位置即可
  18. 18. 安裝完成 後續操作上與一般 Arduino 開發板 是類似的
  19. 19. Wi-Fi LED 狀態
  20. 20. AP mode 連到 7688 但不連外
  21. 21. AP mode連線 • 連上 LinkIt_Smart_7688_XXX XXX這個AP,X 代表 MAC addr 後六碼 • 在瀏覽器輸入 http://mylinkit.local即可進 入主控台 • 預設帳號 root • 密碼自行設定
  22. 22. 基礎組態設定 AP mode 預設IP 改名字, 由於mDNS的關係, 請勿使用底線 _. EX: mylinkit_001.local <- 不行
  23. 23. 目前最新FW 0.9.2
  24. 24. Station mode • 切換到 Station mode 即可讓7688連到外部網路, 之後只要在同一網路下的裝置都可連到它。
  25. 25. 再次登入後可看到 IP 位址換了 連上外網之後的 IP
  26. 26. 如果 http://mylinkit.local 連不上怎麼辦 • 可能是 Windows 的 mDNS 問題 • 如果有別台電腦的話,試著用別台電腦來 看看是否可登入來找到 IP • 都不行的話,請用 IP 掃描工具來看看您的 7688 跑哪去了。EX: Free IP Scanner)
  27. 27. 連上外網之後 • 就不會再看到 7688 AP了。 • 一樣用 mylinkit.local 或 <IP> 來連上它 • 先更新一遍 – $ opkg update – $ opkg install nano (好用的文字編輯器) – $ opkg install fswebcam (拍照小程式)
  28. 28. 更新韌體 • http://download.labs.mediatek.com/MediaTek_LinkIt_Sm art_7688_Firmware,目前最新版本為 0.9.2 • 由 Web UI 點選 [UPGRADE FIRMWARE] 後選到上述檔 案 [lks7688.img] 即可。
  29. 29. 如何回到 AP Mode • 按住 Wi-Fi 按鈕 5 秒鐘即可從 station mode 回到 AP mode
  30. 30. 如何 Reset LinkIt Smart 7688 透過板子上的按鈕 • 插上電源後請稍等約2分 鐘等開機 • 按著板子上的 Wifi 鈕 20 秒。 • 放開後,就會開始看到橘 色燈閃爍代表 reset 中 • 靜置一段時間後,觀察是 否有新 的 LinkIt_Smart_7688_X XXXXX 之 AP 出現,若有 代表即完成。 透過 WebUI • 進去 WebUI 後,點選頁 面最下方的 [Reset] • 稍後 2~3 min 即可完成。
  31. 31. 如果以上通通不行… • 請用 USB 隨身碟重燒吧…QQ • https://www.gitbook.com/read/book/mediat ek-labs/linkit-smart-7688?key=84149961 • 4.1 Update Firmware with USB Drive
  32. 32. 如何自定義 AP SSID • 準備一個 USB 隨身碟與 micro USB 轉接線 • 於 USB 根目錄下新增一個名為[lks7688.cfg] ASCII 文字檔,檔案內容: – wifi_ssid=THE_AP_SSID – wifi_key=THE_AP_PASSWORD • 將 USB隨身碟插入 7688 USB host 之後開機。 – 按住 WiFi 鈕 – 按下一次 MPU reset 鈕 – 在 WiFi LED 亮起之後放開 WiFi 鈕 • 影片
  33. 33. SSH登入7688 • Windows: Putty 或 TeraTerm • MAC / Linux: Terminal $ root@mylinkit.local 或 $ root@<7688IP>
  34. 34. 開始寫程式啦!
  35. 35. First nodejs • $ vim app.js 或 $ nano app.js (編輯) • $ node app.js (執行)
  36. 36. First python • $ vim test.py 或 $ nano test.py (編輯) • $ python test.py (執行)
  37. 37. nodejs LED blinking • $ vim led.js 或 $ nano led.js (編輯) • $ node led.js (執行) • Wifi狀態LED即為 GPIO #44 pin • 0 = HIGH, 1 = LOW
  38. 38. MediaTek Cloud SandBox https://mcs.mediatek.com/resourc es/latest/tutorial/7688_tutorial
  39. 39. MediaTek Cloud Sandbox (MCS)
  40. 40. MCS主要功能 • 雲端平台,執行程式 • 例:Google App Engine、Amazon Web Services、Microsoft Azure • 提供網頁介面,讓你「點按滑鼠」就能建 立雲端程式 • 提供API程式存取介面 • 提供網頁介面,觀看與控制各種資料
  41. 41. MCS其他功能 • 通知(Notification),當某資料符合特定條 件時,寄送電子郵件 • 使用者權限(User Privilege),設定開發 成員的存取修改權限 • FOTA(Firmware Over The Air),版本控 管,韌體經由無線傳輸自動更新
  42. 42. 目標 • 到MCS註冊帳號 • 建立網頁應用程式(web application) • 透過MCS REST API進行溝通 • LinkIt 家族開發板、手機、瀏覽器
  43. 43. 範例 • 從雲端控制板子內建的LED • LED:想像成家裡的燈 • 為什麼從雲端?不能直接連線嗎?
  44. 44. MCS重要觀念 • Prototype,想像為程式樣板 • Data Channel,帶有時間資訊的資料串 • Data Channel Id:對應的資料接口 • Datapoint:每筆上傳的資料 • Test Device,想像為實際執行後的程式 • DeviceId、DeviceKey:用這個來鎖定裝 置 • 例:LED控制器、溫濕度感測站
  45. 45. MCS Android app • Google Play 下載
  46. 46. MCS Dashboard(儀表板)
  47. 47. MCS 重要選項 • Console:主控台 • Development: 建立Prototype、新增修改Data channel、查詢Data channel Id • Test Devices: 查詢DeviceId、DeviceKey • Resources: 教學文件、參考資料 • Resources:常見問題、論壇、回饋
  48. 48. 範例:控制LED並檢視狀態 程式:mcsled.js
  49. 49. 流程 1. 建立Prototype 2. 依照所需功能,新增Data channel,記下 Data channel Id 3. 建立Test device,記下DeviceId與 DeviceKey
  50. 50. 建立Prototype • Prototype name:LED Manager (或自定) • Prototype version:1.0 • Hardware platform:LinkIt Smart 7688 (MT7688) • Industry:自定 • Application:自定
  51. 51. Data channel 資料頻道 • Controller型:可控制 • Display型:僅能顯示
  52. 52. 目前有哪些類型? Controller • ON/OFF • Category • Integer • Float • Hex • String • GPS • GPIO • PWM • Analog • GamePad Display • ON/OFF • Category • Integer • Float • Hex • String • GPS • GPIO • PWM
  53. 53. ON/OFF • 控制高低電位。LED、繼電器等 • 顯示裝置的電位高低狀態
  54. 54. Category • 讓系統可在2~5個狀態之間切換
  55. 55. Integer / Float / Hex • 傳整數/浮點數/16進位值給裝置 • 顯示裝置的數值參數。各種感測器
  56. 56. String • 傳送字串給裝置 / 顯示裝置回傳的字串
  57. 57. GPS (Google Map~) • 傳送經度、緯度、標高給裝置 • 顯示裝置的GPS座標
  58. 58. 日期區間搜尋
  59. 59. GPIO • 控制/顯示裝置的 GPIO 腳位高低電位
  60. 60. PWM • 控制/顯示裝置的PWM腳位,可指定範圍
  61. 61. Analog (只有Controller) • 以滑桿方式送 出指定範圍之 內的數值
  62. 62. GamePad (只有Controller) • 這…很直覺吧 MCS教學請點我
  63. 63. 新增Data channel (1/2) • 請新增一個Controller型 • Data channel name:LED_Control • Data channel Id:LED_Control 重要!將用於程式碼內 • Data type:ON/OFF • 您當然可以使用別的名稱,只要一致就好
  64. 64. 建立Test device • 一個 prototype 可有多個 Test device • Device name:LED Manager (或自定)
  65. 65. Prototype List 頁面 • 這樣代表 test1229 這個 prototype 有一個 test device
  66. 66. 請到Development/Test Devices • 找出您剛剛建立的 test device: LED Manager
  67. 67. DeviceId / DeviceKey • 這兩筆資料要填在所有要與 MCS 溝通的程 式中 • Data channel Id 也不能錯喔: LED_Control
  68. 68. MCS + LED 閃爍 nodejs 與 python 各自要安裝模組 請打開本日資料夾的 mcsled(js).txt / mcsled(py).txt 複製到 7688 的 nano 裡即可
  69. 69. MCS 新增channel 完成 設定 nodejs 與 python 環境
  70. 70. MCSjs modules 7688 需要用到MCSjs module,這是一個 HTTP request library。使用 npm 即可安裝。 1. 請確認您的 7688 連上網路(station mode)後 SSH 登入它 2. 建立一個名為 app 的資料夾:$ mkdir app 3. 切換到 app 下:$ cd app 4. npm 初始化:$ npm init 5. 使用 npm 來安裝模組(需要一點時間): $ npm install mcsjs
  71. 71. 安裝完成 • /app 下應該會有一個 node_modules 的資 料夾,稍後執行的 mcsled.js 需位於同一資 料夾下才能順利執行
  72. 72. 檢查 npm 版本 $ npm –v 可看到目前的版本為 2.11.3
  73. 73. mcsled.js • 打開下載資料夾中的 mcsled(js).txt • 然後在 7688 terminal 中,進入剛剛建立的 /app 資料夾,輸入 $ nano mcsled.js • 在 nano 中貼入內容,並修改 deviceId / deviceKey,如下頁
  74. 74. 程式 mcsled.js修改處 var myApp = mcs.register({ deviceId: 'ABC123', deviceKey: 'XYZ123', }); 以上紅字換成您 test device的資訊
  75. 75. Python 要先安裝 request 模組 • $ pip install requests • 然後 $nano mcsled.py 來編輯檔案
  76. 76. 程式 mcsled.py修改處 DEVICE_INFO = { 'device_id' : 'YOUR_DEVICE_ID', 'device_key' : 'YOUR_DEVICE_KEY' } 以上紅字換成您 test device的資訊
  77. 77. 執行吧! • 執行時可看到 MCS test device 名稱左邊亮 起綠燈,代表裝置已與 MCS 連通 • 拿起Android裝置打開 MCS app 來玩吧
  78. 78. 執行畫面
  79. 79. 影像串流功能
  80. 80. 好棒好棒 • 7688 / 7688 Duo 已經安裝了 mjpgstreamer 套件,只要下指令就可以在 瀏覽器中看到即時影像喔! • 目前可用的 UVC class webcam 請點我 • 例如Logitech C170, C310 等
  81. 81. 如何確定裝置已抓到 • $ cd /dev • $ ls • 看到 /video0 就是了
  82. 82. 影像串流 • 在 termninal 輸入:$ mjpg_streamer -i "input_uvc.so -d /dev/video0 -r 640x480 -f 25" -o "output_http.so -p 8080 - w /www/webcam" & • 如果出現 v4l2 Fatal Error 或類似訊息請重新啟動 7688
  83. 83. 看到影像了嗎? • 完成後直接開啟 – http://mylinkit.local:8080/stream.html – http://<7688IP>:8080
  84. 84. 參考資料 • MCS 台灣使用者討論 FB 社團 • MCS github • 機器人王國商城

×