2013/10/23

Arduino Yún:基本設定與無線燒錄

有位朋友借我Arduino Yún,所以試著用用看。

這張開發板取了個中文名字Yún(雲),跟其他Arduino板子不同的地方在於,Yún除了有一顆微控制器ATmega32U4(跟Leonardo一樣),還有一顆Atheros AR9331,運行Linux發行套件Linino(以OpenWRT為基礎修改而成),並且連接有線網路(Ethernet)與無線網路(WiFi),另外也連接板子上的USB A埠(主方)與micro SD卡插槽。

板子上沒有5V穩壓器,可從micro USB埠輸入電源,或從Vin與5V腳位,但要自己穩壓。

因使用ATmega32U4,其腳位配置與Leonardo與Uno一樣,在此不再多說。不過Serial1保留作為ATmega32U4與AR9331之間的溝通管道。

板子上有3個重置鍵:
左上標示為32U4 RST的重置鍵,重置ATmega32U4這顆微控制器。
右下標示為Yún RST的重置鍵,重置AR9331,重新啟動Linux系統(Linino),記憶體中的東西全部不見,執行中的程式也會終止。
左下標示為WLAN RST的重置鍵,有兩個作用,第一是將WiFi組態重置回工廠設定值,會讓WiFi晶片進入AP(access point)模式,IP是192.168.240.1,分享出來的網路名稱是「Arduino Yun-XXXXXXXXXXXX」,其中X是WiFi無線網路卡的MAC位址,按著此重置鍵不放、持續5秒,即可進入WiFi組態重置模式。第二個作用是將Linux映像檔重置回工廠預設的映像檔內容, 必須按著重置鍵不放持續30秒,這麼一來,儲存在板子裡的快閃記憶體(與AR9331連接)的檔案,通通都會消失。




Arduino軟體從1.5.4版開始才支援Yún。安裝驅動程式的步驟跟Leonardo一樣,在此便不浪費篇幅了。

Yún接上電源後,此時WiFi處於AP模式,所以可從電腦連接,其分享出來的SSID會類似Arduino Yun-XXXXXXXXXXXX。


連接後,開啟瀏覽器輸入網址http://arduino.local或192.168.240.1,便可看到如下畫面,要求輸入密碼,預設密碼是「arduino」。


成功登入後便可看到如下畫面,再點按「CONFIGURE」進行組態設定。


YÚN云NAME,算是給予主機名稱吧,請自由設定,但要記住,將來存取時需要這個名稱。
PASSWORD,在此輸入新密碼,若不輸入則沿用預設密碼。
COUNTRY,可選擇所在城市。
勾選I want to configure my WiFi network。
WiFi NAME:輸入你可存取的WiFi網路名稱。
SECURITY:安全協定,請根據路由器組態設定。
PASSWORD:存取該WiFi網路時的密碼。

按下CONFIGURE & RESTART,組態設定完成並重新啟動,然後Yún的WiFi就會進入一般模式,連接你指定的無線網路。


成功後,找出它動態取得的IP位址,仍可從瀏覽器登入,修改組態。


開啟電腦上的Arduino IDE,可從選單「工具-序列埠(Tools-Port)」看到含有IP位址的Yún,勾選後,記得從選單「工具-板子」勾選Yún。

Yún使用Bonjour在區域網路內發佈服務,如果你的作業系統是Windows而且看不到Yún的話,請到這裡下載安裝Bonjour,另外也請確認沒有防火牆或防毒軟體擋住連接埠5353。

然後找份草稿碼,進行上傳動作,會要求你輸入密碼,然後就會進行燒錄動作,哇!


嗯,基本設定完成囉,還有很多可以玩,慢慢來吧。


參考資料:

143 comments:

  1. 你好,请问arduino Yun 可以用来测量wifi的RSSI吗?

    ReplyDelete
    Replies
    1. Yun的WiFi晶片接在Atheros AR9331(運行Linino這套Linux),既然它是Linux,應該就可以使用各種指令取得wifi的RSSI,
      從Yun的Arduino端可透過程式庫Bridge、Process等去執行Linux指令取回結果,這麼做應該可以達到你想要的要求。

      Delete
    2. 我做到了,谢谢!
      但是我又有另一个问题了。
      请问,如果我有2个网络,我该如何让yun自动disconnect 网络1,然后再自动连接网络2?

      Delete
    3. 哇,真是厲害,何不發篇分享文呢?讓我拜讀。

      關於你的問題,我不知道。

      Yun使用Linino,我猜想,大概的作法是手動修改關於網路組態的設定檔,找出可以控制連接哪個網路的指令,然後從Arduino端發出指令加以操控;大概吧。

      Delete
    4. 哪里,多亏你指引呢。。嘻嘻
      那openwrt是不是这样用的啊?在下还不是很明白openwrt这个东东哦!哈哈~

      Delete
    5. 我也不懂openwrt喔。
      呵呵

      Delete
    6. 好的,谢谢你哦~
      我自个儿研究研究呗。。呵呵

      Delete
  2. Anonymous4/9/14 13:52

    你好,我照著你的步驟做到最後
    但是arduino IDE中並沒有顯示有IP位址的Yún
    請問有什麼可能的問題呢 (OSX 10.9)

    ReplyDelete
    Replies
    1. Yún的確有取得IP嗎?
      Yún跟你的電腦位於同一個區域網路內嗎?是否被路由器隔斷了?有些路由器的預設設定會隔斷Ethernet與WiFi?
      我有時候也會出現這種情況,原因不明,可試著等久一點,重置Yún(拔掉整個電源),嘗試各種方法。

      Delete
  3. 您好,版主打擾
    這篇文章對我好有幫助,但目前遇到一些問題要跟你請教一下
    就是我拿arduino yun當AP 用手機傳值控制是正常的
    後來我把yun當wifi,但照理說WLAN的藍燈會亮但是卻沒有亮起
    而我筆電連接AP然後輸入yun的ip卻沒辦法連上
    但是Ethernet卻可以連上
    會是yun版的wlan壞掉了嗎?

    ReplyDelete
  4. WLAN沒亮,那就是不正常,應該是組態沒設定正確吧,所以無法連上你的路由器,檢查一下WiFi NAME、PASSWORD等等設定值吧。

    不行的話,試著重置WiFi晶片;此篇內文有寫。

    不行的話,試著重刷韌體。

    會是yun的wlan壞掉了嗎? 應該沒那麼容易壞。

    ReplyDelete
  5. Dear yehnan:
    今天全部重製過了,可是有時候WLAN RST按下去WLAN藍燈卻不會閃爍但有時候又會
    進入WiFi組態重置模式設定完,也透過AP分配一組IP給yun板,(192.168.0.101)
    但輸入這組IP卻連了好久都連不到yun的網頁(確定PC有連到這台AP,有線無線都有分配一組IP但都連不進去)
    去看這台AP的DHCP設置卻發現抓不到yun板的MAC,測試了一整天還是毫無頭緒
    希望葉大可以給些意見讓我去troubleshooting一下感激不盡

    ReplyDelete
  6. > 也透過AP分配一組IP給yun板,(192.168.0.101)
    > 去看這台AP的DHCP設置卻發現抓不到yun板的MAC
    這不是很奇怪嗎?抓不到yun的MAC、卻又可以分配IP給yun,why?

    你的PC被分配到的IP是什麼? 有些路由器的預設設定會隔斷Ethernet與WiFi。
    試試從PC下指令ping yun的IP吧,這是基本的簡單檢測,譬如:
    C:\> ping 192.168.0.101
    如果有類似下列的回應
    Reply from 192.168.0.101: bytes=32 time<1ms TTL=64
    代表兩台機器之間應可連接。

    我並沒有在這些地方碰到太多問題,搜尋網路後也沒找到分享文與經驗談。

    ReplyDelete
  7. Dear yehnan:抱歉我打太快了!
    應該是說 我第一次重置AP有分配IP給yun,但我每次要連進去都很慢,有時還會白底黑字出現錯誤,必須多按幾次F5讓她重新整理才進得去,然後我寫一隻APP程式試著丟東西來去觸動arduino動作,一開始連線都是成功的可是有時候卻沒辦法連線
    然後第二次重置,進去AP裡面看卻發現DHCP沒有抓到yun的MAC
    實際上我重置數次了,但每次狀況都不同
    有時候按WLAN RST藍燈也不會亮,偶爾又會
    然後連不上網頁的狀況也有
    謝謝您的耐心回答,感激!!我還在試著troubleshooting

    ReplyDelete
  8. 你說的AP是哪一台?

    WLAN RST是想要重置Yun的WiFi組態時才需要去碰的。

    Yun一開始處於AP狀態,電腦從網頁連入後、設定WiFi組態,然後讓Yun變成一般的電腦連接到你的路由器、取得動態IP,然後從電腦也可再登入的話,就成功了,之後就不需要重置了。

    ReplyDelete
  9. Dear yehnan:
    我使用的AP是TP-LINK的無線IP分享器
    就是取得動態IP,LAN的介面我設定192.168.0.101,為了確保無線壞掉可以用有線登入
    我WAN的介面我設定為192.168.0.102
    剛剛我又試了一遍,我電腦網址登入無線設定的101進去,網頁沒辦法跑出來(這時候網路線沒有接上)
    然後我把網路線接上試著用有線方式登入網址登入102,網頁OK,此時想說試看看101登入好了,結果網頁就可以登入了
    在想是不是這塊yun無線模組故障了...

    ReplyDelete
    Replies
    1. 根據你之前所說,不是曾經成功連線嗎?這樣的話應該沒有故障吧;當然也是有可能啦。

      嗯,加油。

      Delete
    2. 謝謝您我會加油的

      Delete
  10. 您好:

    想請教一下,您有嘗試過讓 yun進入過睡眠狀態嗎,除了需要 yun連上 wifi時再效能全開,其餘時間是處於休眠狀態?

    ReplyDelete
    Replies
    1. 沒有。

      Yun有兩顆主晶片,ATmega32u4(相同於Arduino Leonardo)與Atheros AR9331(運行Linux),

      如果用一般的Sleep程式庫(http://playground.arduino.cc/Learning/arduinoSleepCode),只會讓ATmega32u4進入睡眠,而ATmega32u4只佔15%的電源消耗,

      想要讓Atheros AR9331進入睡眠的話,ㄟ,我不知道怎麼做,

      上網找到這一篇(http://forum.arduino.cc/index.php?topic=190441.0),裡頭提到一種作法,再加另一塊Arduino板子(低耗電的),由它來控制Yun的電源啟動與關閉,達到省電的目標;但我沒試過,這也太麻煩了吧。

      Delete
  11. 您好,
    想請教一下,我將yun連結電腦時跑得程式ㄧ切順利,但是用行動電源去接,程式就沒動了,想請問是不是我哪裡沒有設定好呢?

    ReplyDelete
    Replies
    1. 或許是因為行動電源無法穩定輸出5V,並提供足夠的電流給yun。
      找朋友借別的行動電源試試吧。

      Delete
  12. 你好 我試了三四個行動電源 也無法連線
    也試過手機充電器 (都有注意挑5v DC)
    但依舊無法 但一插了電腦就可以
    想請問這是為何呢?

    ReplyDelete
    Replies
    1. 嗯,不知道。

      試著去http://blog.cavedu.com/問問看吧,他們對Yún應該很清楚。

      Delete
    2. 你好,我們也發生一樣的問題,請問你是怎麼解決的?

      Delete
  13. This comment has been removed by the author.

    ReplyDelete
  14. 你好,
    想請問一下,我arduino yun版原本可以正常運作,但是我把板子重置後,他就無法連到他原本的網站打192.168.240.1都進不去,可是手機卻可以連到YUN版的網路,而電腦有連到YUN版的網路,可是IP是錯的(169.254.99.31),請問一下哪裡有問題??

    ReplyDelete
    Replies
    1. yun的wifi原本處於AP模式,192.168.240.1,
      經過設定後,後來變成一般模式,連接到你自己的無線路由器。

      Delete
    2. 我們有讓他回到AP模式,可是電腦卻連不到YUN版,也無法連至192.168.240.1設定,但是WIFI有跑出來,有成功過連一次,可是設定完後,他又斷掉了,之後就都連不上,連上了也是錯誤的IP(169.254.99.31),請問是什麼問題???

      Delete
    3. 回到AP模式後,就應該能以192.168.240.1連線。若不能,請再次重置,確定有重置成功。

      設定完後,就變成一般模式,根據你給予的組態設定,連接到你的WiFi無線路由器或其他網路,
      若是DHCP,請查詢無線路由器動態分配給YUN的IP位址,然後再連線。

      169.254.x.x應該是DHCP分配失敗,YUN自己隨意給自己設定的IP位址。

      Delete
  15. 謝謝你!我現在試試看

    ReplyDelete
  16. 假如不插網路線 如何連接到Arduino Yun的組態設定頁面呢??

    ReplyDelete
    Replies
    1. 這一篇的內容都沒有插網路線。

      Delete
  17. 大大您好:
    請問雲這塊板子可以用RJ45的網路接頭做傳輸或控制嗎?
    是用跟ETHERNET Module一樣嗎?

    ReplyDelete
    Replies
    1. 呃,Arduino Yún的程式庫Bridge應該已經隔開底下的WiFi與Ethernet,
      使用這套程式庫,照理說應該察覺不出是走哪條路。
      當然使用RJ45做傳輸控制,不過要使用Bridge程式庫。

      Delete
    2. 不大懂QAO"
      所以是使用Bridge程式庫裡的哪個語法呢?
      要給Mac位置及DHCP嗎?
      還是電腦的網路接頭直接接上YUN的網路接頭就可以呢?

      Delete
    3. 應該是使用Bridge裡的YunClient與HttpClient。

      抱歉,沒真正試過Yun的Ethernet。

      Delete
  18. 板大您好:
    想請問一下如果於同一個區域下,使否可以由Arduino YUN讀取到另一個嵌入式系統的網路IP呢?
    或是由Arduino讀取到電腦的TXT檔?

    ReplyDelete
    Replies
    1. 讀取到另一個嵌入式系統的網路IP?什麼意思?

      Delete
  19. 將Arduino YUN與另外一個遷入式系統連結至同樣的區域網路,我們知道YUN的IP位置,是否可由YUN抓取到另一個遷入式系統的網路IP呢?
    謝謝

    ReplyDelete
    Replies
    1. 嗯,
      1. 指定靜態不變的IP。
      2. 該台主機應該擁有主機名稱吧,從另一台使用ping指令的話,應可查知IP。
      3. 如果私有IP是192.168.1.xxx,子網路遮罩是255.255.255.0,那麼下ping 192.168.1.255可查出其他在同一區域網路內的電腦。
      4. 指令arp -a,可得知IP與MAC位址。

      Delete
    2. 板大您好:
      謝謝您的指教
      請問您有試過運用Arduino YUN將感測器所讀取的數值上傳至Window Azure之類的雲端服務資料庫嗎?

      Delete
    3. Window Azure沒有。

      Delete
  20. 您好請問一下,我已經設定好組態,並且也得到 Arduino 的IP
    可是為什麼在 IDE 上就是沒有看到 Arudino的序列埠 呢@@?
    我是用手機當 AP,我有關閉防火牆,把防毒移除,也有下載 Bonjour,可是為甚麼還是沒看到呢@@?

    ReplyDelete
  21. Anonymous15/6/15 21:12

    您好,我想詢問為何 IDE 上就是沒有出現 Arduino Yun 的序列埠呢@@?
    我已經設定好組態,我有抓到 Yun 的IP
    我用手機當 AP,Windows系統,有下載Bonjour,防火牆關了,防毒也砍了
    請問為甚麼呢@@?

    ReplyDelete
  22. 好樣的,既然各種可能出現問題的地方,你都嚐試過了,我還能說什麼呢,呵呵:D。
    我覺得Bonjour部分比較可能出問題,試著重新安裝吧。

    參考資料:http://forum.arduino.cc/index.php?topic=188101.0

    ReplyDelete
  23. 我想問問,Yun的wifi的有效距離大概有多遠,我還是初學者還請大家多多指教

    ReplyDelete
    Replies
    1. 嗯,可以自己試試看吧,
      Example>Bridge>WiFiStatus

      Delete
  24. 老師您好,學生想詢問。
    當連接wifi從開機後,http://myyun.local(連不上),192.xxx.xxx.xxx是連得上,是正確還是有問題呢?

    ReplyDelete
    Replies
    1. 正常。
      http://arduino.local對應到192.168.240.1,這是yun當AP時的設定。

      Delete
    2. 老師您好,學生再次不恥下問:
      學生將Yun的名字修改為kkyun並連結家中wifi。
      當重新啟動Yun後,我的電腦與Yun也連到家中的wifi,我""利用瀏覽器輸入http://kkyun.local(但還是連不上),而輸入由Yun查到的家中ip輸入192.xxx.xxx.xxx(連得上)!""
      老師這是正常的嗎??

      Delete
    3. 既然你的電腦與Yun也連到家中的wifi,那麼網址與IP的對應,就會根據你家中wifi的設定。

      Delete
    4. 原來如此,謝謝老師指導

      Delete
  25. 老師我在arduino 社團中找到一個跟我一樣的問題"http://forum.arduino.cc/index.php?topic=189081.0"
    ,就是瀏覽器只能輸入ip進入yun,但是無法輸入"yun的名字.local"進入arduino yun控制,因此我希望分享這問題,請詢問老師!
    是否是防火牆問題?(擋住連接埠5353)

    ReplyDelete
    Replies
    1. 不清楚。或許可試試看底下:
      1. 檢查防火牆
      2. 檢查你的wifi ap的DNS設定
      2. 修改yun的dhcp組態

      Delete
  26. 老師你好,請問一下,怎麼從不同網路連接到此yun綁定的網路ip呢 謝謝

    ReplyDelete
    Replies
    1. 如果yun是在無線路由器的後面,那通常會取得私有IP。
      那麼,你需要查出無線路由器的公開IP,外界只能透過這個IP,
      然後需要設定無線路由器,開放、轉向你想連接的port,
      結果是:外界連接公開IP(與特定port),路由器收到後轉給yun。

      Delete
    2. 公開ip是指 IPv4的位址嗎?
      轉向是需要用到gateway的意思嗎?
      還有剛剛重新連yun 設定好wlan重新開機後,ip卻不是之前的192.168.1.116而變成192.168.1.1在網址列打192.168.1.1 結果需要輸入使用者帳密,那是為什麼呢?
      謝謝

      Delete
    3. 公開IP指internet上電腦、主機、伺服器所擁有的IP。
      若你的電腦在無線路由器之後,通常會是在內部私有區域網路內,一般來說擁有的是私有IP,通常是192.168.x.x。

      無線路由器會使用DHCP分派私有IP,所以重開機後可能會得到不同的ip。
      但應可設定,加以固定。

      192.168.1.1?你確定嗎?這可能是無線路由器自己的私有IP,所以你想要登入修改設定的話,需要輸入帳號密碼。

      Delete
    4. 了解您的意思,但是有沒有比較具體的做法,試了一些方法還是沒辦法。

      剛剛試了一下,如果改用手機熱點就沒有這個問題,也把它全部重置之後連回家裡wifi問題一樣存在。但是朋友也有一台yun,連家裡wifi結果是可以用的,不知道問題在哪?
      謝謝

      Delete
    5. 我說的是一般、通常的情況,但每人每個地方的網路組態情況不一,具體做法也不同。

      > 改用手機熱點就沒有這個問題
      是嗎?

      > 朋友也有一台yun,連家裡wifi結果是可以用的
      那要看他的網路組態。
      可以用的?什麼可以用?

      Delete
    6. 好的了解
      就是設定完成,跑完那條下面的you'll find me here 。Here我點下去 熱點的話會跑到輸入密碼,是可以連結,但是連家裡WiFi設定完點here會跑到404 not found
      朋友是指室友,跟我用同一個WiFi。就是他可以,我沒辦法連接

      Delete
    7. 已經混亂了,請問你的問題到底是什麼?

      我以為你已經照這篇的內容完成設定,可以從電腦透過wifi、燒錄程式碼到yun了。
      > 怎麼從不同網路連接到此yun綁定的網路ip呢
      以為你是要問如何從外面,連接到你區域網路內的yun?

      根據這篇,yun設定完成後應該連上你的wifi路由器,取得私有ip,
      如倒數第二張圖所示,yun得到私有ip。

      然後,另一台電腦若處於同一個區域網路內,就可以依然登入yun修改設定,
      或是如倒數第一張圖所示,可以燒錄程式。

      Delete
    8. 真是不好意思,讓您混淆,我第一要問的是"如何從外面,連接到你區域網路內的yun"沒錯,之前也有照這篇的內容完成設定了,也可以無線燒錄程式到yun。而現在需要的就是從外面連接到區網內的yun。

      第二問題是後來發生的,之前也有拿到私有ip沒錯,只是後來就沒辦法連接了,在arduino IDE>Tool>port顯示的ip是192.168.1.1而不是原本的192.168.1.116,也無法燒錄。
      感謝回答。

      Delete
    9. 之前可以,後來又不行。
      既然發生了第二個問題,那就要先解決,才能進行到第一個問題。

      192.168.1.1大概(不一定)是wifi路由器的私有ip。
      你應該可以從瀏覽器登入wifi路由器,查看它把私有ip分配給哪台機器。

      或許你在設定yun時,資料填錯了?wifi的AP名稱與密碼?...等等

      Delete
    10. 今天又在連一次,發現可以連了,不知道什麼原因。

      那第二個問題,是要在IDE內打指令才能讓外面連進來嗎?
      謝謝

      Delete
    11. 跟IDE無關。

      第二個問題之前已回答。
      如果yun是在無線路由器的後面,那通常會取得私有IP。
      那麼,你需要查出無線路由器的公開IP,外界只能透過這個IP,
      然後需要設定無線路由器,開放、轉向你想連接的port,
      結果是:外界連接公開IP(與特定port),路由器收到後轉給yun。

      同樣的,以上所述是一般、通常的情況,但每人每個地方的網路組態情況不一,具體做法也不同。每台wifi路由器的設定方式也不同。

      Delete
    12. 好的了解,我會再試試看,感謝回答

      Delete
  27. 我一restart cannot load the webpage

    ReplyDelete
  28. 我的arduino yun 無法重新設定網路環境QAQ

    ReplyDelete
    Replies
    1. 我在第一次設定有成功 但是在後面要轉換網路環境時,就舞法在正確連線,也嘗試過很多放法,還是舞法在無線網路內再次見到'arduiin yun。

      Delete
    2. 嗯,你只有說結果,沒有描述其中的細節、情況、可供參考的資訊,無法幫你。

      進入無線路由器,查詢yun是否連線成功。
      再看看這一篇與其他介紹初始設定的文章,是否漏掉了哪裡。

      Delete
    3. 剛拿到yun時我設定他在A環境的wifi下,也有讓他成功連線,但當我今天要重新設定在B環境時,卻無法讓他再回到預設的AP模式。
      這中間我試過用IDE內的範例程式YunSerialTerminal去還原到初始狀態但也沒有成功出現可搜尋的wifi。

      Delete
    4. 當我用YunSerialTerminal程式燒錄後。且下完指令 f 。 cd /usr/bin 。 ./reset-to-factory-anyway 。 後WLAN開始閃爍,後來重新啟動yun後並按下yun rst 後。等待出現可搜尋wifi。但都等不到。

      Delete
    5. 葉難你好,我是arduino yun的使用者應傑,不好意思向你詢問這些問題,希望你可以幫助我。
      首先我先講解一下,我的狀況,我剛拿到yun時在第一個環境(A環境)下讓他連上了wifi並測試過你的範例程式(
      Arduino Yún:Bridge程式庫入門(YunServer與YunClient))也有成功執行。然後到了第二個環境(B環境)我想讓arduino yun連上B環境。所以想讓牠回到出場狀態的AP模式。並參考了很多方式(http://jock36.blogspot.tw/2015/01/arduino-yun-wifi-configure-reset.html)
      但都沒有成功的讓我在wifi搜尋那邊看到我Arduino yun所開出的wifi。這使我百般不解。希望你可以指點我一下。

      還原出場設定過程 :
      當我用YunSerialTerminal程式燒錄後。且下完指令
      f
      cd /usr/bin
      ./reset-to-factory-anyway
      後WLAN開始閃爍,後來重新啟動yun後並按下yun rst 後。等待出現可搜尋wifi。但都等不到。
      也試過,長案yun rst 5-30S 並讓USB指示燈維持白光,也是沒有wifi。

      環境說明,A環境與B環境是完全不一樣的地方(沒有重複)。但我第一次在A環境下成功連線時,都可以很輕易地重新設定網路環境,但在沒有A環境下就無法重新設定了...這是我最納悶的一點。

      以上是我操作說明。如果有不明確的地方我會再補充。希望你可以幫幫我謝謝你了 。

      我有寄信給你希望你可以看一下

      Delete
    6. > 都沒有成功的讓我在wifi搜尋那邊看到我Arduino yun所開出的wifi。這使我百般不解
      我也百思不解,暫時想不到為什麼。

      你各種重置方式都試過了。
      Arduino yun的wifi晶片,重置後需要約60秒的時間,不過我想你應該等得夠久了。

      > 剛拿到yun時在第一個環境(A環境)下讓他連上了wifi並測試...成功執行...
      而且這些部分都成功了。

      我還能說什麼呢。:D

      Delete
    7. 重置後,回到A環境,正常嗎?

      如果正常,那B環境不就有鬼~~,呵呵。

      Delete
    8. 結果是線的問題~提供給大家ㄅ
      不能正常設定的時候,換條線看看ㄅ

      Delete
  29. 葉難你好,我是arduino yun的使用者,我在設定上出現一些疑問...
    1.將arduino yun開發板連接電腦電源後,我嘗試要連線arduino yun的wifi,但在選項裡沒有出現"Arduino yun-XXXX.."的項目,而是出現"Linino-XXXXX..."的選項,於是我選了這個
    2.後來到192.168.240.1頁面,理所當然沒有看到上述的畫面,而是看到Linino.org的頁面,上面要輸入密碼:
    "Welcome to your Arduino Yun . Please enter password to access the web control panel"
    但輸入arduino後顯示密碼錯誤。

    我想一開始連線Linino-xxxx就有問題,但我找不到Arduino yun-xxxxx
    以上是我碰到的問題,還麻煩您,謝謝。

    ReplyDelete
    Replies
    1. 我這篇文章寫在Arduino鬧分家之前。

      你的Yun裡裝設的韌體與設定,應該是Arduino.org的,
      預設密碼應該是 doghunter

      其餘設定請參閱官方文件
      http://labs.arduino.org/Getting+Started+with+Arduino+Yun

      Delete
    2. 您好:

      謝謝您的建議,已經有進一步發展了,
      不過陸續又碰到很多問題... ˊˋ,不知道能否用寄信的方式跟您詢問呢?

      Delete
    3. 不方便直接給你email。

      有問題請留言,盡量回答。

      或是到各Arduino論壇發問。

      Delete
    4. 您好:

      謝謝您,基本設定的問題都解決了,
      想請問arduino yun開發版寫入程式碼的方式一定要透過傳輸線嗎?
      還是可用無線網路傳輸的方式寫入?不須透過連接阜?

      Delete
    5. 我這篇已有介紹無線燒錄。

      Delete
    6. This comment has been removed by the author.

      Delete
  30. Anonymous20/1/16 13:50

    您好
    我做了一個能用YUN去傳送溫度到手機和PHP的資料庫的一個程式
    在插上馬達之前所有的功能都正常(包括正常傳送溫度到手機,以及資料庫,也可透過console顯示溫度到arduino的監控視窗)
    但插上馬達後上述的功能都出不來了
    再把馬達拔掉後,功能也都沒有了
    煩請老師幫忙解答!!

    ReplyDelete
  31. 照你的描述,大概是馬達吃電太多,導致yun重置或當掉吧。

    > 再把馬達拔掉後,功能也都沒有了
    嗯,不清楚。或許是因為程式無法正常重啟。

    ReplyDelete
  32. 不好意思 請問一下 YUN這塊板子有辦法直接將所監測得到的資料可以利用WI-FI直接傳到一台沒有網路PC嗎 還是可以利用甚麼方式直接傳到沒有網路的PC上

    ReplyDelete
    Replies
    1. > 利用WI-FI...沒有網路PC
      既然PC沒有網路,怎麼傳?
      為PC加裝Wi-Fi網卡吧。

      > 直接傳到沒有網路的PC上
      「USB-轉-序列埠」的轉接卡或轉接線,透過序列介面傳送。

      Delete
    2. 不好意思那您所說的 「USB-轉-序列埠」的轉接卡或轉接線,透過序列介面傳送。是甚麼意思

      Reply

      Delete
    3. 現在電腦大都沒有序列埠(RS-232),但有很多USB埠,
      買個「USB-轉-序列埠」的產品,

      請參考http://yehnan.blogspot.tw/2013/09/raspberry-pi.html,這篇文章裡有兩個產品,

      一端插電腦的USB埠,另一端連接Yun的序列埠,
      之間透過序列介面互傳資料。

      Delete
    4. 好謝謝你我試看看 那不好意思我再請教一下yun這塊板子是不是不能與桌電結合因為我都找不到她的網路 還有他的乙太網路孔是做作甚麼用的

      Delete
    5. > 不能與桌電結合
      當然可以。

      > 找不到她的網路
      Wi-Fi嗎?

      > 乙太網路孔
      當然是連接乙太網路啊。

      Delete
  33. 那不是要一端接yun的網路孔一端接電腦 可我的電腦搜尋不到arduino的網路

    ReplyDelete
    Replies
    1. > 一端接yun的網路孔一端接電腦
      這是有可能的,但需要使用「跳線(或稱交叉線)」的乙太網路線,
      另外,有些裝置可自動偵測要不要跳線。

      不過一般家裡不是這麼接的吧,
      通常有一台數據機,接到網路服務提供者、然後上網;
      數據機可接到一台集線器或交換機,然後接到各台電腦;
      數據機也可接到Wi-Fi無線路由器;
      若由Wi-Fi無線路由器上網(把帳號密碼交給它),然後把IP分享給其他電腦,那麼其他電腦會得到私有IP,例如192.168.x.x。

      當然啦,上述只是常見方式的一種,還有很多其他種類的網路組態。

      > 可我的電腦搜尋不到arduino的網路
      你電腦有Wi-Fi嗎?
      請再看看這篇文章的內文;
      請再詳細說明,

      Delete
  34. 好我了解我在試看看 不好意思我對這方面的知識比較不足 我現在在研究這方面的專題 未來如果有問題方便請教嗎

    ReplyDelete
    Replies
    1. 有問題請留言,盡量回答。

      Delete
  35. 老師 不好意思請問一下 我們一開始sensor讀出來得值會傳到google doc或直接存入SD卡裡 今天我想把存在google doc的部分直接換成傳到筆電上建立的file夾裡面 這個方法可行嗎 那是要怎麼執行

    ReplyDelete
    Replies
    1. 你的yun跟筆電,如何連接?

      Delete
  36. Replies
    1. 筆電端撰寫網路程式,扮演伺服器,讓Yun連線,兩者傳輸溝通。

      筆電安裝Apache or nginx,安裝MySQL、PHP、等等元件,成為伺服器,撰寫Web應用程式,提供REST API,讓Yun(扮演客戶端)登入並發出HTTP請求,進行操作存取。

      讓Yun成為伺服器,提供REST API,筆電端撰寫客戶端程式,定時連接到Yun並抓取資料,然後儲存。

      到網路上找提供雲端服務的站台,讓Yun上傳資料,讓筆電下載資料。

      等等。

      Delete
  37. This comment has been removed by the author.

    ReplyDelete
  38. This comment has been removed by the author.

    ReplyDelete
  39. 不好意思 那有沒有軟體可直接用 類似遠端資料接收那類的 電腦與yun點對點的方式下去傳送 yun負責發送 電腦負責接收

    ReplyDelete
    Replies

    1. 我說的作法都是點對點的方式,yun跟電腦可互相傳輸資料。
      除了「到網路上找提供雲端服務的站台,讓Yun上傳資料,讓筆電下載資料。」

      不懂你的意思,你要的是更高階的作法吧,我不清楚,請人幫你寫?

      Delete
    2. 到temboo找看看。

      Delete
  40. This comment has been removed by the author.

    ReplyDelete
  41. http://www.86duino.com/?p=9879&lang=TW

    該網頁有介紹86Duino如何連接USB keyboard 和USB mouse,請問Arduino Yun本身的USB接口如果直接連接USB keyboard 或USB mouse,驅動程式該如何安裝呢? 有相對應的USB keyboard 和USB mouse 的libraries可以使用嗎?

    ReplyDelete
    Replies
    1. 嗯,yun的openwrt似乎預設不支援低速USB裝置,沒有驅動程式,
      或可按照這篇所說,
      http://forum.arduino.cc/index.php?topic=207069.0
      自行安裝。

      Delete
  42. 想再請問Arduino Yun本身的USB接口如果直接用一條usb線連接電子琴(midi keyboard),驅動程式該如何安裝呢?
    我是有找到對應的Arduino MIDI Library(http://playground.arduino.cc/Main/MIDILibrary)。

    另外在http://www.notesandvolts.com/2015/02/midi-for-arduino-input-test.html 網站中也有用到這個Arduino MIDI Library,但它是用5 pin 的接口,並非USB的接口,想請問這個Arduino MIDI Library是否也支援USB接口?

    ReplyDelete
    Replies
    1. Arduino MIDI Library應該是透過序列埠介面,不是USB。

      Delete
  43. 老師您好 我想請問我連接Arduino yun mini 後 wifi 沒有跑出 Arduino-xxxx 給我連線做登入?

    ReplyDelete
    Replies
    1. yun mini的wifi組態可能已經被設定過了,請參考這篇文章將WiFi組態重置回工廠設定值。

      yun mini可能使用Linino,請找找以Linino開頭的wifi名稱。

      Delete
  44. 老師您好, 我目前有兩台Arduino 一台已經最選一個做接下來專題時電腦跟Yun都會用的無線網路及該無線網路的密碼,一台是插在麵包版上,而麵包版上訊號是人體的心跳脈搏計數
    ,請問有辦法將此訊號 利用wifi 傳送到 連接PC的Arduino嗎 ?

    ReplyDelete
    Replies
    1. > 一台已經最選一個做接下來專題時電腦跟Yun都會用的...
      啥?逗號加一下。

      兩台都連接到同樣的無線網路嗎?
      如果是,一台做server,一台做client,不就能傳遞資料了。
      Yun的話,就是使用Bridge程式庫里的YunServer和YunClient。

      Delete
  45. 抱歉造成老師的困擾,目前2台都已連上同個無線網路了 !

    1. 我們使用Arduino yun mini 然後在Bridge 沒找到 yunserver 和 yunclient 但在Arduino wifi 有找到 Rest server/client 這是一樣的嗎?
    2. 如果找到 Server 和 Client 直接燒錄上傳就可傳遞了嗎 ?

    ReplyDelete
    Replies
    1. > 在Arduino wifi 有找到 Rest server/client
      Arduino wifi是什麼?
      Rest server/client是什麼?某程式庫提供的API嗎?在哪?

      > 如果找到 Server 和 Client 直接燒錄上傳就可傳遞了嗎 ?
      通常不行吧。
      那是讓你用來寫程式的,你不是要自己寫程式:一方送、一方收資料嗎。


      抱歉,我覺得我們雙方在雞同鴨講,請再描述清楚一點。

      Delete
    2. 那我簡單一點問 目前我再Bridge 程式庫 沒找到 yunserver 和 yunclient 我們是使用yun mini

      Delete
    3. 怎麼可能?不論是arduino.cc或arduino.org提供的Arduino IDE,
      在目錄libraries/Bridge/src裡頭,都有YunServer.h和YunClient.h。

      Delete
  46. 請教 為何登入的YUN板子 是LININO的畫面

    ReplyDelete
    Replies
    1. 因為它裝的是LININO啊。

      因為arduino鬧分家。
      YUN板子硬體應只有一處製造商,但軟體有兩套,分別由arduino.cc與arduino.org提供。

      Delete
  47. 請問使用yahoo GetWeatherByAddress的CODE
    #include
    #include
    #include "TembooAccount.h" // contains Temboo account information, as described below

    int numRuns = 1; // Execution count, so this doesn't run forever
    int maxRuns = 10; // Maximum number of times the Choreo should be executed

    void setup() {
    Serial.begin(9600);

    // For debugging, wait until the serial console is connected
    delay(4000);
    while(!Serial);
    Bridge.begin();
    }

    void loop() {
    if (numRuns <= maxRuns) {
    Serial.println("Running GetWeatherByAddress - Run #" + String(numRuns++));

    TembooChoreo GetWeatherByAddressChoreo;

    // Invoke the Temboo client
    GetWeatherByAddressChoreo.begin();

    // Set Temboo account credentials
    GetWeatherByAddressChoreo.setAccountName(TEMBOO_ACCOUNT);
    GetWeatherByAddressChoreo.setAppKeyName(TEMBOO_APP_KEY_NAME);
    GetWeatherByAddressChoreo.setAppKey(TEMBOO_APP_KEY);

    // Set Choreo inputs
    GetWeatherByAddressChoreo.addInput("Address", "Ilan");
    GetWeatherByAddressChoreo.addInput("Units", "c");

    // Identify the Choreo to run
    GetWeatherByAddressChoreo.setChoreo("/Library/Yahoo/Weather/GetWeatherByAddress");

    // Run the Choreo; when results are available, print them to serial
    GetWeatherByAddressChoreo.run();

    while(GetWeatherByAddressChoreo.available()) {
    char c = GetWeatherByAddressChoreo.read();
    Serial.print(c);
    }
    GetWeatherByAddressChoreo.close();
    }

    Serial.println("Waiting...");
    delay(30000); // wait 30 seconds between GetWeatherByAddress calls
    }

    TembooAccount.h是

    #define TEMBOO_ACCOUNT "minyuan" // Your Temboo account name
    #define TEMBOO_APP_KEY_NAME "myFirstApp" // Your Temboo app key name
    #define TEMBOO_APP_KEY "e6prgO0ypFey9etSdwkYR4QVnse1kOJT" // Your Temboo app key

    出現的Serial Monitor是
    Running GetWeatherByAddress - Run #1
    Error
    curl: (6) Couldn't resolve host 'minyuan.temboolive.com'
    HTTP_CODE
    000
    Waiting...
    大概是什麼問題呢 TembooAccount.h裡的設定都沒錯
    請葉大幫我看看 謝謝了!

    ReplyDelete
    Replies
    1. 沒空看,orz。

      錯誤訊息
      curl: (6) Couldn't resolve host 'minyuan.temboolive.com'
      代表無法查出該網址的IP吧。
      你temboo帳號建立有誤?

      Delete
  48. 老師你好 你的教學文寫得非常清楚
    我第一次有連線成功 但換到另一台後出現問題了

    請問YUN組態設定後 就會一直轉為一般模式嗎?

    因為我照著步驟到了"成功後,找出它動態取得的IP位址,仍可從瀏覽器登入,修改組態。"
    可是我從WIFI上找不到他的位址 然後從手機上還是看的到他的SSID
    我用的是桌電接WIFI分享器 WIN10 是用手機做組態設定

    麻煩了 謝謝

    ReplyDelete
    Replies
    1. > 請問YUN組態設定後 就會一直轉為一般模式嗎?
      這篇文章的目的就是讓yun轉為一般模式,告訴它wifi名稱與密碼,讓它開機後自動連上去。

      > 我從WIFI上找不到他的位址 然後從手機上還是看的到他的SSID
      那就代表設定不成功。

      Delete
    2. 謝謝 解決了
      結果他不能連5HZ的WIFI
      只能連2.4HZ的

      Delete
  49. 老師您好,我在開機時一直出現overlayfs ERROR接著自動halt但不管我從console重置多少次還是都在這個錯誤卡關,想請問老師有和解決方法?

    ReplyDelete
    Replies
    1. Update:我是使用failsafe mode執行/usr/bin/reset-to-factory-anyway腳本來重置

      Delete
    2. 我已經沒在玩Yun了耶,
      建議你到別處詢問。

      Delete
  50. 葉老師 我想請問一下
    如果Yun透過usb接上電腦
    可是Ardunio ide 卻沒有顯示連結
    其他Yun用同樣的方式抓得到 就這片無法
    是不是代表這片Yun壞了
    還是有其他方法可以修好
    感謝

    ReplyDelete
    Replies
    1. 換USB埠、換USB線試試看。

      Delete
  51. 葉老師我想請問一下
    wlan rst 案30秒 LINUX恢復原廠 會不會造成 YUN之後無法使用 要重新刷韌體

    ReplyDelete
    Replies
    1. 不會。

      第二個作用是將Linux映像檔重置回工廠預設的映像檔內容, 必須按著重置鍵不放持續30秒,這麼一來,儲存在板子裡的快閃記憶體(與AR9331連接)的檔案,通通都會消失。

      Delete
  52. 老師您好,我的arduino Yun 在重置網路後(按下WLAN RST),使 Yun 的 WiFi 處於 AP 模式,並從電腦連接他所分享出來的網路,然後開啟瀏覽器輸入192.168.240.1(或http://arduino.local)但出現的畫面卻都是進入到一個寫著『index of/』的畫面,請老師幫我看看是不是哪裡出問題了,還是板子壞掉了? 老師麻煩您了
    圖片連結點
    https://drive.google.com/open?id=1vyjRTFzZ47MeQJzmDLdPq39T64jqPy0_

    ReplyDelete
    Replies
    1. 板子之前有人用過吧?網頁的檔案不見了。

      試試重新燒錄韌體,或是WLAN RST的重置鍵的第二種作用(見這篇文章)。

      Delete
    2. 非常感謝老師,板子已經可以正常使用囉!
      謝謝老師唷!

      Delete
  53. This comment has been removed by the author.

    ReplyDelete
  54. 您好,感謝您上次回答伺服馬達的問題,但後來直接詢問伺服馬達公司的老闆,問題的原因是S777CG/6BB啟動電壓需要5A,上次的問題已解決。
    這次關於Arduino YUN有個問題想請教,我今天下午使用USB連接我的板子,突然跳出類似連WIFI之類的畫面,於是我想說並沒要使用WIFI功能,就直接拔掉板子,結果板子再次連接在電腦上,工具裡的序列埠呈現暗的,電腦裝置管理員也是沒有找到Arduino的COM,我也上網查詢過各種RST的方法還是沒辦法,是板子卡在WIFI設定的步驟了嗎??
    ArduinoIDE內建的重製YUN的程式,因無法燒入也沒辦法使用。
    想請問有沒有正確的RST Arduino YUN 的方式,或有沒有解決的方式

    ReplyDelete
    Replies
    1. > 5A
      這麼大的電流?厲害。

      > 電腦裝置管理員也是沒有找到Arduino的COM
      不該如此。驅動程式沒裝?

      > 板子卡在WIFI設定的步驟了嗎??
      你沒登入、沒設定的話,它會一直在那個狀態,你應該能夠登入並設定。

      reset的方式,這篇文章都說了。

      Delete
    2. 感謝!!
      設定完WIFI在燒入重置程式就好了

      Delete
  55. This comment has been removed by the author.

    ReplyDelete