本文將說明LinkIt Smart 7688 Duo Wi-Fi 常見的問題與處理方式
文:Ted Lee李俊德 個人CC授權發布於CAVEDU blog
Q:我的7688 Duo(以下簡稱7688D)上的Wi-Fi LED永遠都亮著,既不在外網模式(Station mode)──無法連外網;也不在內網(Access Point)模式──無法連內網192.168.100.1。它變磚(brick)了嗎?
A:
Wi-Fi燈一直亮著的情況可分成「解決之道、軟體工程師的聖經、根本原因(root cause)、哪裡可以問?」共四部份來思考,我們先一個步驟接一個步驟(step by step)的詳細列出兩種解決方法(solutions):重置(reset)及解磚。第二到四奌再來補充此問題衍生出的(derived)各種可供思考的各種可能的面向(aspects)。
圖1:MTK以Gitbook建立的線上知識庫。
圖2:YouTube上的「MediaTek LinkIt™ Smart 7688 tutorial. Perform factory reset.」影片。
圖3:FB上專門討論MTK的LinkIt Smart家族的LinkIt開發社群社團,有MTK首席工程師進駐(on site)解惑。
2. 解磚──更新韌體(firmware update) 我們將完整的做法詳列如下:[4]
- 從MTK官網下載啟動映像檔 lks7688.img[5]。
- 將I備妥的檔案複製到USB隨身碟(handy drive)的根目錄(root directory)下(根目錄不需清空)。
- 將此隨身碟連到7688 Duo的USB埠(port)。II-III的配置如圖4所示。
圖4:解磚第II-III步,備妥乾淨的啟動程式映像檔。
4. 同時按下Wi-Fi及MPU的重置鈕,再放開MPU重置鈕後誏Wi-Fi重置鈕持續按壓20秒以上。
5. 待Wi-Fi的LED燈亮起後,放開Wi-Fi重置鈕。此時7688 Duo會開始讀取啟動程式(Wi-Fi LED會快速閃爍)並將它升級(upgrade)。這個過程會持續2秒左右。
圖5:YouTube「MediaTek LinkIt™ Smart 7688 tutorial – Bootloader upgrade with USB」影片。
複習(review)
7688D接上電源後會發生的兩件事(如圖6)以做為本問題的控制組(control group):
- 開機階段(booting phase) 供電、初始化載入程式(loader)、載入OpenWrt、Wi-Fi備妥。
- 四種狀態(states) 正常開完機後,7688D被設定為只連內網的AP模式時,若LED燈號熄滅則表示此刻沒有其他人連入。此外,若每秒燈號閃爍3次後再停頓5秒,則表示有人連到7688D;另一方面,在連外網的情況下,若每秒閃爍2次表示此刻7688D正連接外網中。除此之外,就表示它和外網是接通的。
圖6:7688D開機流程及其隨後會進入的四種狀態。
進階閱讀(further reading)
以下二至四奌初學者可略過不看,或者僅作為背景知識(background knowledge)快速讀過即可。
第二:軟體工程師的聖經 對於新晶片(chips),軟體工程師的任務通常是根據開發手冊(spec)[6]寫出測試(test)、除錯(debug)、補丁(patch)等軟體工具。因此,該類手冊素來被軟體界視為必定要「熟讀、精讀」的聖經。根據筆者的經驗,大部份的問題其實都寫在手冊裡了喔!不信請看以下第三項,最新版的手冊內已明載本問題的肇因。
圖7:MTK提供之離線軟體開發手冊──LinkIt Smart 7688 Developer’s Guide。
第三:根本原因 萬般皆有因,晶片亦無例外。在MTK Gitbook知識庫(圖1)的第6章:Wi-FI LED States結尾的「Common Errors」中指出:本問題乃系統影像(system image)或Wi-Fi驅動程式(driver)損壞所致!
圖 8:本問題的根源MTK已破解。
第四:哪裡可以問? 除了前述的臉書上討論十分熱絡的社團(圖3)外,MTK更是提供充足的原廠支援(support)。圖8就是他們極其用心經營的硬體及軟體(含範常式式討論)開發者論壇(developer’s form)!不過,請稟持maker精神[7],發問前請先查書(圖1或圖7)[8];發問者請於問題討論串結尾請做總結──如有驗証無誤的程式碼也敬請開源(open source)共用喔!
圖8:7688D的官方論壇,據說是由第一線R&D高階主管親上火線答覆各方的疑難雜症。
[2] 在MTK Gitbook知識庫(knowledge base)的4.3節「Factory Reset」內有詳細說明(圖1)。
[3] 實例可參考Yen-Ta Chen於2016年3月30日在FB的LinkIt開發社群社团(圖3)上之提問。
[4] 圖1的4.4節「Update the Bootloader」,或圖4修復啟動程式(bootloader)影片。
[5] lks=LinkIt Smart, ldr=Loader。
[6] 7688D的官方線上手冊放在Gitbook知識庫(圖1)內,或者可下載「LinkIt Smart 7688 Developer’s Guide」的PDF檔(圖7)。
[7] 筆者歸納的maker精神為:
- 無懼失敗(不驚、不怖、不畏),錯越多,學越多
- 樂於分享(share)與開源
- 樂於互助
- 「主动」發掘問題,解決問題(這條是和業界PM討論出的人材需求特質)
- 從實作中體驗學習的樂趣(learning by doing)、找出改良與創新的方法
- 想到就動手作出來(just do it!)
[8] 根据筆者的學術經驗,沒查書就發問是不負任的行為喔!
補充[7]的Maker精神:
(博士生研究法)問問題前先試著自己找資料──老蘇、磚家說的不一定都是对的!