2017.01.16 Embedded system

497b0ae3672631318bc2450ec0c7d87f?s=47 blue chen
January 16, 2017

2017.01.16 Embedded system

497b0ae3672631318bc2450ec0c7d87f?s=128

blue chen

January 16, 2017
Tweet

Transcript

  1. Blue

  2. None
  3. None
  4. None
  5. None
  6. IT# Hardware# device## # # # # 近年年來來應⽤用. 服務 .

    價值在 這裡發光發熱
  7. IT# Hardware# device## # # # # Javascript# 近年年來來應⽤用. 服務

    . 價值在 這裡發光發熱
  8. 全端物聯聯網開發 Javascript (Node.js) 不在僅是跑在 server 上 希望他可以跑在你我周遭的任何事物上
 javascript 現在可以來來做 native

    phone app, native desktop app, browser app, server … etc (投資報酬率較⼤大的選擇)
  9. LinkIt™ Smart 7688 與 Node.js 的邂逅

  10. > npm install express …. ran out of memory …

    npm install 耗⽤用極⼤大 memory npm install ⼤大約基礎會耗掉接近 60 mb 的 memory
  11. > opkg install node …. no space … 硬碟只有 16

    MB, 只剩 4 mb 可⽤用空間 nodejs 在各平台⼤大約基礎會耗掉 6~8 mb 的 space
  12. • MT7688 • 128MB DDR2 • 32MB Flash • Chip

    Antenna (default) • IPEX Ext Antenna • microSD • USB Host • JTAG LinkIt Smart 7688
  13. • MT7688 + ATmega32U4 • 128MB DDR2 • 32MB Flash

    • Chip Antenna (default) • IPEX Ext Antenna • microSD • USB Host • JTAG LinkIt Smart 7688 Duo
  14. MT7688& ATMega32U4+ Sensor USB device LinkIt Smart 7688 Duo MT7688&

    Sensor USB device LinkIt Smart 7688
  15. MPU ( Microproccess Unit) MCU (MIcrocontroller Unit) 1. ⼯工作時脈幾百MHz 2.

    MB 等級的 RAM 3. 含有 MMU 可以跑完整的 Linux 1. ⼯工作時脈 100MHz 以下 2. KB 等級的 RAM 3. Real-time OS : freeRTOS …etc
  16. MT7688& ATMega32U4+ Sensor USB device LinkIt Smart 7688 Duo MT7688&

    Sensor USB device LinkIt Smart 7688 MPU, 邏輯端運算 MCU, Real-time control
  17. 先從⼀一般基本跑得動 Node.js (javascript) 情境來來談 Nodejs OS Applicaton 想像⼀一下各位現有的 server 如何跑

    Node.js(javascript) ? 規格 架構 Linux, openWRT…etc 硬碟⾄至少要 1X mb, RAM 建議⾄至少要 64 mb
  18. MT7688& ATMega32U4+ Sensor USB device LinkIt Smart 7688 Duo MT7688&

    Sensor USB device LinkIt Smart 7688 MPU, 邏輯端運算 MCU, Real-time control Node.js 跑在這
  19. 關於開發版的外型

  20. 總結硬體介⾯面上 7688 擁有三個領域的玩法 USB device Sensor Wifi, OS driver/pkg

  21. Node.js需要有其他的軟體架構擴充 對嵌入式開發板⽽而⾔言 1.PWM, GPIO, I2C …. etc ( libmraa )

    2.跟 MCU 端溝通 ( node-serialport, firmata ) 3.USB device ( node-hid )
  22. NodeJS ( v0.12.7 ) node-serialport node-hid Firmata, cylonJS Your application

    OpenWRT OS (Wifi, driver) (MCU 溝通) (MCU 溝通) mraa (USB)
  23. 7688 OpenWRT OS 完全開源 1. OpenWRT 創始⼈人之⼀一親⾃自操⼑刀使⽤用最新 15.05 架構製作 2.

    全部開源在 github 上 3. Upgrade all lib/pkg version
  24. OpenWRT 重點玩法 1. full stack wifi: AP mode, Station mode

    2. wifi Router/gateway 玩法 3. 超級豐富的 package, driver community
  25. 1. full stack wifi: AP mode, Station mode 2. wifi

    Router/gateway 玩法 3. 超級豐富的 package, driver community OpenWRT 重點玩法
  26. 7688 Duo 外網網路路孔 外部網路路(有線網路路) <-> 7688 Duo <-> 家⽤用裝置

  27. 1. full stack wifi: AP mode, Station mode 2. wifi

    Router/gateway 玩法 3. 超級豐富的 package, driver community OpenWRT 重點玩法
  28. OpenWRT package management > opkg update > opkg install 套件名

    我們提供 opkg 清單: http://mirror2.openwrt.org/mt7688_v0.9/packages/
  29. ruby, python, nodejs, lua, perl, php, erlang, javm, opencv, ffmpeg,

    bluez … 
 找不到? 來來 contribute 吧!
  30. Demo (mjpg-streamer)

  31. Demo (CD-player) opkg update opkg install kmod-scsi-cdrom opkg install kmod-scsi-core

    opkg install kmod-scsi-generic opkg install kmod-fs-isofs
  32. NodeJS ( v0.10.27 ) node-serialport node-hid Firmata, cylonJS Your application

    OpenWRT OS (Wifi, driver) (MCU 溝通) (MCU 溝通) mraa (USB)
  33. USB device Sensor Wifi, OS driver/pkg 全部交給 OpenWRT mraa, node-serialport,

    firmata node-hid
  34. Demo (keyboard)

  35. USB device Sensor Wifi, OS driver/pkg 全部交給 OpenWRT mraa, node-serialport,

    firmata node-hid
  36. MT7688& ATMega32U4+ Sensor ( mcu, mpu溝通) USB device LinkIt Smart

    7688 Duo MT7688& Sensor ( libmraa ) USB device LinkIt Smart 7688
  37. 如何讓兩兩個晶片溝通? Duo 上玩 Arduino Sensor

  38. node-serialport 接收對話 Firmata 把每個通道都打通 Digital 0~13 PWM i2C Arduino sensor

    MT7688& ATMega32U4+ Linkit Smart 7688 Duo 相同的 baudrate下
  39. MPU Atmega32U4 Application 101010000000 node-serialport framework Digital 0~13 PWM i2C

    Arduino sensor Firmata 把每個通道都打通 LinkIt Smart 7688 Duo 相同的 baudrate下
  40. Framework 的選擇

  41. firmata 的效能及市場性問題 Duo 上玩 Arduino Sensor

  42. firmata 的效能及市場性的問題 Firmata is not a good pattern MPU Atmega32U4

    Application 101010000000 node-serialport framework Digital 0~13 PWM i2C Arduino sensor Firmata 把每個通道都打通 LinkIt Smart 7688 Duo 相同的 baudrate下
  43. Firmata is not a good pattern MPU Atmega32U4 Application 101010000000

    node-serialport framework Digital 0~13 PWM i2C Arduino sensor Firmata 把每個通道都打通 LinkIt Smart 7688 Duo 相同的 baudrate下 1 且所有運算都在 MPU 端 很多 sensor 只有 C 不提供 JS parser 2 firmata 的效能及市場性的問題
  44. None
  45. 挑戰⼆二如何讓兩兩個晶片溝通 ? firmata ? Firmata is not a good pattern

    MPU Atmega32U4 Application node-serialport framework Digital 0~13 PWM i2C Arduino sensor LinkIt Smart 7688 Duo 相同的 baudrate下 運算在 MCU 端處理理好
  46. 挑戰⼆二如何讓兩兩個晶片溝通 ? firmata ? Firmata is not a good pattern

    MPU Atmega32U4 Application 這是 blue 的指紋 node-serialport framework Digital 0~13 PWM i2C Arduino sensor LinkIt Smart 7688 Duo 相同的 baudrate下 運算在 MCU 端處理理好
  47. 讓兩兩顆晶片各司其職

  48. Demo (指紋辨識機)

  49. USB device Sensor Wifi, OS driver/pkg 全部交給 OpenWRT mraa, node-serialport,

    firmata node-hid (指紋辨識機) (web cam, CD-player) (keyboard)
  50. mcs.mediatek.com labs.mediatek.com

  51. mcs.mediatek.com

  52. /PEFKTປᆜTVQQPSU 48)8ປಆῘჷ -FWFSBHFBMM"SEVJOPTFOTPS 䌉ࡄ֥≐ڛ↩ⅴ⇼ ൲ᾁӑьၒ ಸၞΆೆਈ㸗ᾲ؍

  53. Make it big with something small

  54. 感謝所有參參與 LinkIt smart 7688 專案的所有同仁