Upgrade to Pro — share decks privately, control downloads, hide ads and more …

用 Raspberry Pi 做手機 - PiPhone

用 Raspberry Pi 做手機 - PiPhone

用Raspberry Pi做手機。
硬體包括Raspberry Pi Model B,Adafruit PiTFT 2.8" Touchscreen,EFCom Pro GPRS/GSM Module,鋰電池等。
軟體使用AT command和GSM模組溝通,Tkinter處理畫面,Xstroke與tegaki為手寫輸入。

台灣樹莓派

October 02, 2014
Tweet

More Decks by 台灣樹莓派

Other Decks in Technology

Transcript

  1. • 專注於 Raspberry Pi 應用與推廣 • 舉辦 Raspberry Pi 社群聚會和工作坊

    • Facebook : • 搜尋 RaspberryPiTaiwan about 台灣樹莓派
  2. • David Hunt 用 Raspberry Pi , PiTFT 和 SIM900

    GSM/GPRS 組合成一支手機 PiPhone 新聞 http://www.davidhunt.ie/piphone-a-raspberry-pi-based-smartphone/
  3. • Raspberry Pi Model B • Adafruit PiTFT 2.8” Touchscreen

    • SIM900 GSM/GPRS module • 2000mAh LiPo battery • DC-DC boost converter • Cables, connectors, switch, etc. • MIC and Speaker 所需硬體
  4. • EFCom Pro GPRS/GSM Module(AT commands) • IO List: GND

    , +5V , RX , TX , PWR , RST. • Quad-Band 850/ 900/ 1800/ 1900 MHz • Power Supply: +5V GSM 通訊模組 http://goo.gl/7jCgpd
  5. • 3.7V 鋰聚合物 ( 記得配充電器 ) • 升壓模組可將 3.7V 電壓升到

    5V • Input voltage: 3V - 35V • Output voltage: 4 - 35V • Output Current: 3A (MAX) 電源供應 http://www.elecfreaks.com/store/lm2596-dcdc-stepdown-module-bkdc010-p-292.html
  6. • 收發電話 , 傳送簡訊 , GSM/GPRS 狀態 • AT command

    • 畫畫面 , 互動介面 • Tkinter • 文字輸入 • Xstroke, tegaki 所需軟體
  7. • Hayes command set, for Hayes Smartmodem (1981) • Dialing,

    hanging up, and changing the parameters of the connection • AT - "Attention" AT Command http://www.elecfreaks.com/wiki/index.php?title=EFCom_Pro_GPRS/GSM_Module
  8. • Pi to Modem : 直接透過 UART(TX/RX) • PC to

    Modem : 或者用 FT232(FTDI) 轉接板 如何溝通 http://www.elecfreaks.com/wiki/index.php?title=EFCom_Pro_GPRS/GSM_Module
  9. • 範例: AT+CEER ( 錯誤報告 ) • 測試命令 AT+<x>=? –

    AT+CEER=? • 查詢命令 AT+<x>? – AT+CEER? • 設定命令 AT+<x>=<y> – AT+CEER=0 • 執行命令 AT+<x> – AT+CEER 擴展類命令
  10. • 寄簡訊 • AT+CMGF=1 • AT+CMGS=”0987654321” • Ctrl + Z

    • 撥電話 • ATD0987654321; • 掛電話 • ATH • 接電話 • ATA AT Command 範例
  11. • AT+CSQ # 檢查目前 GSM 信號 (Max 31.99) • AT+CREG?

    # 查詢目前是否連上網路 • AT+COPS? # 查詢目前連上的 Operator • AT+CLIP=1 # 顯示來電號碼 • AT+GSN # 查詢 IMEI • AT+CMGF=1 # 選擇簡訊顯示為 readable AT Command 範例
  12. • Python binding to the Tk GUI toolkit • Raspberry

    Pi 內建 Tkinter 模組 • Layout, widget and event TKinter http://oreilly.com/catalog/pythonwin32/chapter/ch20.html
  13. • Model-View-Controller 模式 • View = UI 畫面 • Controller

    = 分派動作 • Model = 實際 AT command, 更新 UI 畫面 MVC in Tkinter http://en.wikipedia.org/wiki/Model%E2%80%93view%E2%80%93controller UI 畫面 AT 命令 分派動作
  14. • 硬體是獨占資源 • 如何在電話來時 , 顯示畫面 & 來電號碼? • 背景跑多執行緒監聽

    Serial port • 來電時叫起 UI 並將號碼傳送過去 接電話問題