文章類型
開發平台
解決方案
關注主題
文章類型
開發平台
解決方案
關注主題

【Tutorial】LinkIt Smart 7688 – OpenWRT操作篇

作者:Michael Huang

身為一個Maker會接線蠻正常的,基本上就是連連看,會按按鈕也很正常,但是要怎麼在系統裡面,打code跟執行程式呢?「A、B、C、D都看得懂,拼起來就是不會啊!」,那麼我們就使用7688,來嘗試第一次操作Linux系統吧!

從LinkIt Smart 7688的說明中,我們可以知道,7688上面有一顆執行Linux的MPU(Micro-Processing Unit),而其中的Linux Distribution則是跑OpenWRT(可參考平易近人的中文簡介)。

補充說明一下Linux Distribution是什麼?因為Linux是開源的共同開發「專案」(大到嚇人的專案…),所以依據不同開發者族群,就分別開發出許多不同分支,分別在功用與細節上有所差異,而各個Distribution也會各自維護更新。

設定7688網路模式

首先第一步當然就是送電囉,照著7688 developer’s guide(連結),我們在供電的地方接上MicroUSB送電。

第一步.在供電的地方接上MicroUSB送電

第一步.在供電的地方接上MicroUSB送電

7688預設會執行網路分享器的功能,所以我們在筆電可以搜尋到7688的無線網路訊號,(這邊使用Windows系統,Mac請自行類比囉),而WiFi訊號(所謂的SSID)最後面所看到的六碼,代表這一片7688的硬體位置,所以理論上如果有多顆7688,在沒有被修改的情況下,應該是不會搞混才是。

在筆電可以搜尋到7688的無線網路訊號

在筆電可以搜尋到7688的無線網路訊號

當我們連線上7688的無線網路訊號之後呢,我們就到瀏覽器中打入「mylinkit.local」,這時候會看到下圖的畫面,並且要求我們設定一組密碼(須設定六碼),這是因為全新的7688還沒有定義任何密碼,使用者可以自行決定,這邊要特別注意,這組密碼不是剛剛分享無線網路的密碼!這組密碼是我們要登入其中的OpenWRT的時候要用到的,所以要記好!

建立帳號密碼(六碼)

建立帳號密碼(六碼)

接著,按下提交(SUBMIT)之後,會跳出下圖的頁面,這次是要你登入,所以就再打入相同的密碼登入就好。

登入頁面

登入頁面

設置7688網路連線

登入之後,我們會進到下圖的頁面,其中包含現在7688的裝置名稱、IP、帳號密碼……等資料,這些基本上可以不改,不過對於我們現在的目的而言,我們要能夠進入OpenWRT,而又要在OpenWRT之中做些什麼事情的話,會需要網路連線。

登入Linux系統後的頁面

登入7688後的頁面

但是目前7688自己是AP(分享器,Access Point),怎麼辦呢?不要緊張!我們只要把7688設定成跟一般電腦一樣,去接外部的無線網路就好囉,馬上在橘黃色的部分選擇「Network」,就會看到以下畫面,也就是7688目前屬於AP mode,而且可以設定7688網路分享的密碼,既然我們要接到外部的無線網路,我們就要把設定改成「Station mode」,也就是7688跟其他裝置一樣都只是一個station而已。

7688目前屬於AP mode

7688目前屬於AP mode

接著我們就在搜尋WiFi列表中,選取我們要連接上的無線網路,並在下方打入正確的密碼。

在搜尋WiFi列表中,選取我們要連接上的無線網路

在搜尋WiFi列表中,選取我們要連接上的無線網路

按下CONFIGURE & RESTART之後,畫面會跳出下圖的視窗,同時7688也正在重新開機,並且設定成Station mode,請不要傻傻以為看到這個畫面,並且按下OK之後7688就重開好了,這只是個提醒畫面,還是要等7688硬體上面開好機才行!

按下CONFIGURE & RESTART之後,畫面會跳出的視窗

按下CONFIGURE & RESTART之後,畫面會跳出的視窗

好了,這時候就糗大了,現在筆電已經沒有連接到7688,那要怎麼連進去7688呢?痾….可是沒有連到7688的AP,就沒辦法在瀏覽器進入「mylinkit.local」,所以就看不到IP阿!這時候有三個解法:

  • 第一個,放棄(喂!)
  • 第二個,在選擇接上外部無線網路的時候,接到手機分享出來的訊號,這樣一來就可以從手機上看到分享給這台裝置的IP是多少。
  • 第三個,可以直接搜尋「IP Scanner」這類型的服務,就可以搜尋到同一個無線網路中,其他人的IP位置囉。
搜尋「IP Scanner」這類型的服務,查到IP

搜尋「IP Scanner」這類型的服務,查到IP

使用SSH的特殊連線

看到我們的裝置名稱「mylinkit」,而且查到IP之後,我們就開啟大家愛用的PuTTY(連結),使用一個叫做SSH的特殊連線方式(看看鳥哥怎麼說),打入IP位置就可以連線了。

打入IP位置,使用PuTTy連線

打入IP位置,使用PuTTy連線

按下Open之後,回出現如下圖的視窗,由於我們的筆電第一次跟這個裝置做SSH連線,所以會詢問說是否安全?是否要繼續執行?當然是啊!不然怎麼繼續!

SSH連線之安全詢問視窗

SSH連線之安全詢問視窗

接著,會有視窗跳出來,問我們要登入的裝置帳號,我們在之前mylinkit.local的網頁中有看到,帳戶預設是root,並打入我們在網頁設定的密碼,這邊要提醒:因為Linux系統的人非常重視安全問題,所以密碼是絕對不會顯示在螢幕上,連有幾碼都不會讓你看到,因此在輸入密碼的時候,畫面是不會有反應的,要自己默默記得輸入對的密碼就是了……

輸入帳號密碼

輸入帳號密碼

進入OpenWRT系統並更新

搭拉!我們進去OpenWRT了!通常進入Linux系統後,我們會看到綠色的游標,在游標之前還有「帳號@裝置名稱:現在位置#」這樣的字串,
每次看到#就代表使用者可以輸入的指令位置喔!也就是指隨後跟著的字串都是使用者輸入的。

進去OpenWRT

進去OpenWRT

螢幕中看到的就是現在處於「~」,也就是主目錄資料夾,而我通常做的第一步就是更新(Raspberry Pi也是一樣),所以我們就打入OpenWRT的指令「opkg」,加上「update」,進行更新。

鍵入指令,進行更新

鍵入指令,進行更新

再來呢,其實7688裝好了蠻多可以使用的套件了,但是我個人比較喜歡PTT式的發文方式,所以我還想要多安裝一個叫做「nano」的套件,nano是一個很簡單的文字編輯器,很方便上手喔!馬上鍵入「opkg install nano」;若要安裝其它套件xxx的話,基本上就是輸入「opkg install xxx」就好了。

鍵入指令,安裝「nano」套件

鍵入指令,安裝「nano」套件

Linux系統中常用到的指令

基本上Linux就是一個沒有圖形,只有文字的系統,所以它還是跟我們常用的Windows,或Mac一樣有著資料夾分類,但在資料夾的階層之間移動與瀏覽,並不是只要點點滑鼠,靠的是:「cd」(change directory)、「ls」(list),往上一層移動要使用「..」,往下一層移動,就只要輸入那個資料夾名稱。

所以下圖中我做了:「從/etc移動到上一層,列出這一層有什麼東西;其中有一個叫bin資料夾,移動去bin資料夾,列出bin裡面有什麼東西。」(記得喔!「#」後面就是使用者輸入的指令)

Linux系統中,常用指令示範

Linux系統中,常用指令示範

而從bin資料夾當然也可以直接回主目錄資料夾「~」,是不是突然變得很厲害了呢,當然移動還不夠,我們還要能夠建立資料夾、還有建立檔案才行!

所以我們在主目錄資料夾中建立一個資料夾「mkdir」(make directory),列出主目錄資料夾的內容物,確定有這個資料夾testFile,進入testFile之後,使用nano建立一個新的python檔案叫做test.py。

Linux系統中建立資料夾、檔案指令示範圖

Linux系統中建立資料夾、建立檔案指令示範

之後螢幕就會跳到像下圖,這樣的編輯視窗,下排寫著可以使用的功能鍵,其中「^」代表ctrl,再鍵入一段python程式,讓程式在螢幕上印出1~10,寫完之後,就要存檔離開,所以選擇「Exit」這個功能,按下ctrl+x。

編輯視窗

編輯視窗

螢幕會跳出問說是否要儲存,當然是要啊!所以按下y,不過,為了double check,nano會再問一次是否要修改名稱,原預設會跳出起初創立檔案時,我們所建立的名稱,因此可以直接按下enter,跳回原本的視窗。

nano會再問一次是否要修改名稱

nano會再問一次是否要修改名稱

再來,我們就可以執行python程式了,鍵入「python test.py」。

鍵入「python test.py」,執行python程式了

鍵入「python test.py」,執行python程式了

除了在資料夾之間移動,我們當然也會需要把檔案移來移去,我們可以使用「mv」(move)這個指令,操作如下:

  1. 列出testFile資料夾現在有什麼,確定有test.py
  2. 把test.py移動到上面一層,列出testFile資料夾內容,發現移走了所以沒東西
  3. 回到上一層,確定上一層資料夾列出包含testFile資料夾以及test.py
移動指令示範

移動指令示範

但如果僅能建立新資料夾、建立檔案,那容量不是一下就爆了嗎!當然我們還可以刪除檔案(rm, remove),跟刪除資料夾(rmdir, remove directory)操作:

  1. 移除test.py
  2. 列出主目錄資料夾,發現只剩下testFile資料夾
  3. 移除testFile資料夾
刪除指令示範

刪除指令示範

這麼一來大家都能夠簡單的玩OpenWRT對吧,讓我們一起來開創出更多7688的玩法吧!

(本文同時發表於《輕鬆動手》部落格)

Michael Huang

Michael Huang

即使國中便進了數理資優班,但仍然星期一到六天天至補習班報到。到了師大附中數理資優班,累積了這麼幾年過程困難的訓練,卻也因此而對事物有自己的一套理解方式。

有幸在台大電機努力四年後,在美國密西根大學挑戰機器人的衝擊,也因此更深刻體會台灣教育與學生的不足。我還不知道哪一條路會成功,但是至少我看過比較多失敗的方法。

現在致力推廣機器人及其教學,為全國機器人競賽「PowerTech全國青少年科技創意創作競賽」首席研發及講師。另一方面將以深入淺出的方式來引導實作方面的技術軟實力。

部落格:輕鬆動手
Michael Huang

上一篇: | 下一篇:

468 ad

我想回應

你的電子郵件位址並不會被公開。 必要欄位標記為 *

成城共創股份有限公司版權所有、轉載必究.Copyright(c) 2017 MakerPRO