總結這 5 天的結論:
arduino firmata protocol 類似 MIDI protocol
只要 attach 對應 command 的 callback function , host computer 就能觸發對應command的事件,執行我們所需進行的動作。
爬 firmata.h /cpp source code 的過程,我們可以知道 firmata 在 read / write 資料也是藉由 hardware 中的 serialport 對外溝通。
我們要跟 arduino 藉由 firmata protocol 溝通,還是要跑在 aorduino 內建的 USB - serial port 這個介面上。
所以我們又回到如何控制 serial port 這個議題上。
假設能夠讓 Android 使用 USB - serial port 就可以藉由 firmata protocol 跟 arduino 溝通,並控制其外部 I/O 。
這邊我找到現有的 open source project 是 usb serial port for android 。
可能會用的到參考資料:
http://developer.android.com/guide/topics/connectivity/usb/accessory.html
http://developer.android.com/guide/topics/connectivity/usb/host.html
明天開始會著手介紹如何使用 usb serial port for android 跟arduino 溝通
我們明天見