首先說明Arduino的接線,PIN2當作IO輸入接一個10K到地的電阻,平常是LOW,當按鈕被觸發時(這裡以接到5V表示),代表元件被觸發,PIN2變成High,要送Push
message給android
硬體接完換軟體,直接進parse的Embedded-->選Arduino Yun,這裡的Raspberry Pi我也試過,可以正常的玩
安裝SDK,其中第五步比較麻煩一點,我是用Filezilla登入Arduino,再把Parse的SDK丟進去,然後用SSH登入Arduino,在資料夾內輸入opkg
install *.ipk就安裝完畢
這裡說明一下如何使用我的方法安裝SDK
1、先知道Arduino的IP號碼,在browser登入http://arduino.local,我的IP是192.168.0.104
2、使用MobaXterm輸入IP、帳號(root)密碼(arduino),然後SSH登入arduino,就會看到這個畫面
接著Arduino需安裝openssh才可以用filezilla對連,請輸入以下指令
opkg update
opkg install vsftpd openssh-sftp-server
打開Filezilla,把parse的SDK丟進去
再回到SSH,進入linux_package_parse的資料夾,輸入opkg install *.ipk,這樣SDK就安裝完畢
接著就依照quick start所說的步驟照做,只是把程式碼copy paste
編譯過後,打開Serial Monitor,當出現Push Installation ID後,在網頁上按這個鈕,就可以收到如下圖的輸出
從Parse Starter Project到Push Installation ID出現要20秒左右,說實在這有點慢,也就是說從上電到可以工作要20秒,那如果做RTOS的無線門鈴,平時是完全sleep的,從開機到送出訊息約20-30秒才回應,這樣訪客都走了,有時間再研究要怎麼修改這部份
還記得在Android端的兩個按鈕嗎?
在這裡我們當改成Arduino收到openLed打開Arduino LED及closeLed關閉Arduino LED
String command =
push.getString("alert");
if (command == "openLed") {
digitalWrite(13, HIGH); // turn on LED
}else if (command == "closeLed")
{
digitalWrite(13, LOW); // turn off LED
}
// NOTE: ensure to close current push message
// otherwise next push won't be available
push.close();
沒有留言:
張貼留言