哈爸陪你問Webduino之如何成為Open Hardware的 Maker( Webduino篇 )- Q&A

聊天 Agenda

聊天規則

進門請禮貌打招呼,離開也請打招呼再離開,線上活動,不介意大家隨時離開

請先報到,如果有正在做東西,可分享的,請跟大家分享

很多人一起聊天,容易混亂,聊完也無法有效收集成果。

所以嘗試用共筆的方式,看看能不能聊出點花樣。

所有地方都是開放大家隨意編輯,請大家多多貢獻與分享,相信來的能人很多,請大家一同幫助 Maker 的新手

注意事項

請注意,此為公開的紀錄,可公開分享的才寫在這裡。其他在臉書閒聊就好

顧問準備事項

在當天討論之前,本篇主要是給顧問團提前準備相關的 Q&A, 以及互相認識,年落感情之用,希望在當天之前,只有顧問才能看到內容(準備時期,保持點神秘感)。當討論開始,就會開啟權限給所有人可讀寫

顧問白板

此區讓大家認識這次的顧問團,請顧問們自行填寫。建議列上正在做的東西,推薦的臉書討論區等

哈爸

參與人員報到區

請報到,歡迎提供聯絡方式(臉書,Email),需要保持神秘感,可用綽號

Maker1

Maker 的玩具

請參與者,有再做東西的,可以分享一下。比較容易找到同好,也容易得到別人的幫助

如何成為Open Hardware的 Maker( Webduino篇 )- 哈爸雜記

參考資料

網站

課程

入門

問與答

本問答為個人淺見,僅提供參考。由於是共筆型態,也歡迎大家持續補充與修正

Q1 : 如何入門?

A1 : Marty在Modern Web的分享,看這份能最快瞭解Webduino [簡報] [影片]

Q2 : 那麼多種 Maker 可以做,為何要做 Open Hardware Maker?

A2 : 參考以前哈爸給你問

Q3 : 有那麼多 Open Hardware, Webduino 有什麼特色?

A3 : Webduino強調的是反轉控制,改以Web技術為主體,透過WiFi控制 Arduino,其特色就是用 Web技術(不用寫 C/C++) 能很容易操控Arduino,實現了一些原本在Arduino上很難做到的事

例如

 1) 結合 Youtube

 

2) 用語音同時控制五台自走車

3) 結合既有的網頁遊戲

Q4 : 人多學得快,該去參加哪些臉書群組?哪裏找同好?

A4 : 來的這些,就是現成的同好與顧問團,會後記得聯繫

Q5 : 有沒有什麼人在教?

A5 :  官方有舉辦一系列教學課程 [Link] , 10月份的 社團活動Webduino全新課程

[請大家補充]

Q6 :  Webduino和Arduino的比較

A6 :  Webduino本身是OpenSource技術 ,Webduino開發板本身是Arduino Pro Mini + WiFi (ESP8266),和Arduino相比主要是開發方式的差異,如下圖

Q7 : 用 Web 當開發主體好像很炫,而且結合 Internet 智能好像很強,有沒有什麼有趣的可以分享?

A7 : 可以參考Q3的回答,那些都是結合web技術的實例。另外像結合google map,D3做視覺化在使用webduino都會比原來用mcu思維操控web來的簡單方便。

Q8 : Webduino 可能跟 IFTTT 接上,可能有更好玩的應用?

A8 :嗯,我們有串過,難度不高,但IFTTT 的事件主動通知需要15分鐘,這有點討厭,不夠即時

Q9 : 有沒有用 PC 上的 Camera 和 Webduino 結合的應用?

A9 : 倒不一定是pc,我們整過在raspberry pi上將camera影像用webrtc串流到瀏覽器,再結合tracking.js(有點像openxv,但是是javascript)實現人臉,顏色的追蹤。

 

Q10 :  Webduino 有沒有需要什麼社群上的幫助?

A10 : webduino是open source,MIT License,需要大家一起做出很多有趣的web元件來激發更多的創意與應用

Q11:Webduino 看起來是個可以從 javascript 端控制 arduino 的方案。聽說 Webduino 是採用 firmata 的協定實作的 (現在還是吧?)。想請問 firmata 是否只 focus 在腳位本身的控制? 舉例來說閃爍 LED 的功能。arduino 的寫法可能是 digitalWrite(ledPin, LOW); delay(300); digitalWrite(ledPin, HIGH); delay(300);。若是 Webduino 可能會是先用 getElementById 取得物件, 然後用 javascript 的 setInterval 處理時間的觸發間隔。然後用像是 led.off(); led.on(); 就可以了! 這其中 .on() .off() 的函數呼叫底層應該最後是走 firmata,也許最後對應 digitalWrite() 的動作?但是其實原本 arduino 的 delay() 動作,是 javascript 語言自身處理掉的。所以想問 firmata 的協定是否不處理這些問題,只針對腳位本身的 read status 以及 write state 控制?

 Firmata本身有實作 I/O方面的處理,輸入腳位也有polling 時間的設定,但是沒有涉及訊號延遲控制,不過Firmata有自訂命令 0xF0 ...0XF7,完全可以根據自行需求加工處理。

Q12:Webduino 的周邊支援像是蜂鳴器,servo 似乎得一一自己實作。過去 Webduino 所開設的課程都聚焦在如何「使用」周邊感測器。未來是否可以考慮開設周邊感測器的「開發」課程? 教大家如何增加一個支援 Webduino 的周邊。這樣或許也可以吸引更多開發者一起開發周邊.

謝謝您的建議,隨著我們10月底將open source Arduino firmware code,會著手規劃『自己的感測元件自己包』的課程,分享如何入門,有什麼感興趣的主題也請告訴我們。

我在新竹,但之前有去高雄上過課 (因為北部的課太難搶了XD)。去上課之前,有人借我一塊 Webduino 我照著你們官網上的練習,以及在 fb 社團上分享的上課講義,其實很容易地就可以上手了。去上課之前其實我已經跑過所有範例了。所以我才覺得既然他是個很好上手的平台,應該可以把方向轉為開發多一點的周邊,吸引更多人將自己的轉案嘗試轉成 Webduino :D

Q13:是否可提供 power 電路底板的線路圖? 想說用麵包版做實驗的話或許可以取得較多的 pin 腳。

好的,我們會找時間撰文分享如何在麵包板上使用Webduino技術

Q14:目前馬克1號仍然是 arduino mini + esp8266 + power 電路底板. 目前有打算將馬克 n 號集成為單一電路板嗎?

一直有這想法,但是一直還沒落實 XD ,我們現階段重點還是會先擺在元件自訂、擴充,雲端燒錄、安全性等議題上

Q15 : webduino server 可以在自己的電腦上模擬嗎?

webduino走MQTT,所以npm install  mosca 就可以玩了