【FON】To Brick, or not to Brick: that is the question



贊助商連結


頁 : [1] 2 3

FYI
2008-03-29, 04:24 PM
話說小弟最近拿到一個方塊酥(Bricked FON), 於是好好做了一些功課, 接上網路和電源, POWER LED 亮, INTERNET LED 閃爍, 但是WLAN LED 沒動靜, Ping 所有想得到的位址都沒反應, 不得已只好祭出最後的法寶 - 傳輸線 (http://www.pczone.com.tw/attachments/15/15011d1205403569.attachment), 記得老師有說 "開機不接TxD", 不過小弟也發現只要啟動FON 之後再插上TxD, 那麼不論Reset 或Reboot 都不會妨礙啟動, 終於看到了問題所在:

Kernel panic: Attempted to kill init!
記得以前也曾經在ET-22S 的Syslog 看過類似訊息, 既然知道是韌體的問題, 於是著手刷新韌體, FON 韌體大約2MB, 以網路傳輸當然比以RS232 來得快, 而對於RedBoot 來說, TFTP 又比HTTP 方便, 所以先準備好Tftpd32 或PumpKIN, 由於不確定FON 的網路埠是否支援Auto MDI/MDX, 於是小弟以跳線直接接上PC 的網路埠, 設定好ip_address 之後, 接著發現Ping 沒問題, 但卻找不到TFTP Server, 不得已只好改用Xmodem 傳輸, 還好Baudrate 可提高到921600 bps, 心想反正辛苦也只一次, 事實上還是失敗了好幾次, 終於莫名其妙刷成功了(過程記不得了), 於是把FON 接上網路, 此時小弟注意到TECOM AR4031C LED 閃爍頻繁, 小弟很有耐心的等候至少半小時以上才登入FON 查看, 結果發現韌體已經更新到0.7.2 r3 (最新據說是r4), 這可能也是FON 變成方塊酥的主要原因, 除非不連網, 否則對於多數業餘玩家來說, 由於不能預期, 也無法控制FON 何時更新或修補韌體, 所以建議連網後, 最好不要任意關機, 以免慘案發生

此外, 小弟發現更新韌體最好還是找台交換器, 比較不容易出錯, 可以減少不必要的問題, 事後也證明FON 支援Auto MDI/MDX, 所以跳線是沒必要的

另外根據這幾天的研究, 別看La Fonera 1.0 (FON2100) 比一包香煙盒大不了多少, 裡頭卻是個小烤箱, FON 的預設功率是18 dBm (63 mW), 散熱片溫度可以高達72 ℃ (http://tech.am/2006/10/06/autopsy-of-a-fonera/)以上, 小弟將功率改成14dBm (25 mW), 在室溫24 ℃之下, 散熱片溫度約64 ℃, 也就是比室溫至少高出30 ℃, 等夏天來臨時更不得了, 若未做好散熱, 可能兩年保固期還沒到, 就壽終正寢了, 尤其是對於其中三個電解電容來說, 長期處於高溫環境之下, 將會是最大的地雷, 這點在La Fonera 1.1 (FON2200) 已經修正, 所以請至少留意La Fonera 1.0 的擺放方式, 若不知道該如何放置, 請看底部的預留掛勾方向就知道了, 如果降低功率, 則訊號強度也降低, FON 隨附的是2dBi 天線, 不妨考慮換成4~6dBi 天線, 室內使用, 請勿換成全向性高增益天線, 以免訊號夾角變小, 導致涵蓋範圍縮小

Power 15 dBm 表示可推的動 15dBi 的天線嗎 (http://www.pczone.com.tw/thread/44/138092/)
gelPlog >> Fonera - Debricking and more (http://www.easy2design.de/bla/?page_id=98)
RedBoot User's Guide (http://ecos.sourceware.org/docs-latest/redboot/redboot-guide.html)

贊助商連結


FYI
2008-04-17, 05:38 AM
才說FON2100 是個小烤箱, BrainSlayer 立刻就推出他最拿手的超頻 (http://www.dd-wrt.com/phpBB2/viewtopic.php?t=30305)了, 不過他玩的是FON2200, 所以200MHz 根本不是問題, CPU 也只是溫溫的, 由於改的是RedBoot, 不是Kernel, 所以以上兩種都可以改, 只不過FON2100 已經夠燒的了, 小弟心裡想的反而是用BrainSlayer 所找的的數值, 設法把183.5MHz 降速, 看看是否能降到125MHz, 不過由於修改不全, 會影響UART, 所以暫時還是作罷

92*10/5 = 184
40*10/2 = 200
另一個引發的問題是, 如果可以這樣直接修改, 又不用改Checksum, 那麼RedBoot 就太不可靠了, 萬一哪部份程式碼錯誤, 那就麻煩了, 小弟原先也在懷疑是否RedBoot 有問題, 以至於更新了好幾次才終於把方塊酥給救了回來, 其次是FON2100 有好幾個版本(A~F and more), RedBoot Checksums 似乎也都不一樣, 使得版本檢查有困難, 也不見有人上傳RedBoot, 所以就先不管了, 當作是好的, 將就著用

FYI
2008-06-26, 06:16 AM
今天抽空把完了一下La Fonera+ (FON2201), 主要為了一項測試:

:start
ping -n 1 -w 100 192.168.1.1
if errorlevel 1 goto start
目的在於La Fonera+ 開機時偵測Redboot, 結果竟然跳不出迴圈! 也就是Ping 毫無反應, 但機器並無問題, 因為可以從Serial Console 登入Redboot, 後來才想到網路上的教學很少提到該如何連接, 所以通常都是PC 直接連接La Fonera+ 的LAN 埠, 有部份教學會建議增加一部交換器, 但並未特別指明使用時機, 結果小弟發現自己的測試電腦過於老舊, 網卡初始化需要數秒鐘, 已經超過Redboot 允許中斷的等候時間, 預設只有兩秒, 也就是當La Fonera+ 關機時, 網卡顯示 "已拔除網路電纜", 當La Fonera+ 開機之後, 等到網卡顯示 "已連線", 則早已超過Redboot 的等候時間, 當然怎麼Ping 都沒反應, 此時如果以一台交換器連接電腦和La Fonera+, 讓網卡一直保持連線, 就可以避免以上問題, 不過話說回來, 除非您將La Fonera+ 變成 "Bricked", 否則您大概不會用到這個特殊技巧

刷新韌體有一定的風險, 以上方法同時也適用於其他分享器

至於Serial Console, La Fonera+ 可以預先插著傳輸線再開機, 就可以看見Redboot 訊息, 沒有第一代La Fonera 那種奇怪的限制, 然而FON 也學聰明了, 雖然可以從Serial Console 和Telnet 登入Redboot, 但是載入Linux Kernel 之後就關閉了所有的後門, 目前只能找到對於 v1.1.1r1 以暴力開啟SSH 的方法, 之後就可以再開啟getty, 但小弟手上的版本是v1.1.1r2, 降級得花三十分鐘以上, 而且還有不少風險, 所以暫時作罷, 等候BrainSlayer 修改出支援Marvell 88E6060 交換器的韌體再說

另外有一個消息是第一代La Fonera 如果連接10Base-T Half-Duplex 設備, 則會產生效能嚴重降低的問題, 解決方法是增加一個交換器, La Fonera+ 似乎無此問題

最後, 小弟大略提一下一個來自國外的創意, 相信不少人用過WinPE, BartPE 或XPE, 反正就是一個免安裝的Live OS, 執行後就有機會直接存取NTFS 分割區的資料, Broadcom CFE 支援從網路載入映像檔, 有點類似PXE Boot, 同樣的道理, Redboot 也可以從網路載入映像檔並執行, 再透過mount 就有機會對/jffs 動手腳, 達到開機便執行的目的, 不用刷新韌體, 風險最低, 相容性最高, 也可以用來測試韌體, 傑克, 這真是太神奇了!

FYI
2008-07-28, 08:22 PM
升級前, 升級後, 永遠記得恢復出廠預設值, 並且重新啟動

在回覆網友韌體更新的問題之時, 小弟也不斷複習更新過程所應該注意的事項, 網路上教學文章多如鴻毛, 再加上不同機種又有不同的程序, 小弟不可能全部涉獵, 所以難免掛一漏萬, 但多複習幾次, 總會有一些發現, 先是在 "5.8.5 TFTP Flashing Buffalo Routers under Windows - Installation - DD-WRT Wiki (http://www.dd-wrt.com/wiki/index.php/Installation#TFTP_Flashing_Buffalo_Routers_under_Windows)" 找到一個被小弟遺忘的資訊:

如何停用 Windows 中 TCP/IP 的媒體探測功能 (http://support.microsoft.com/kb/239924)
其實這個KB 以前也曾經瀏覽過, 但久未接觸也就忘記了, 前一篇為了解決網卡初始化和速率偵測時間過久的問題, 無計可施之下, 只好把腦筋動到裝置管理員的網卡內容, 事實上設定成 "10Mbps/半雙工" 並無多大幫助, 而關閉 "媒體探測 (Media Sensing)" 也只能多爭取一點點時間, 並且有副作用 (影響DHCP Client), 所以重點仍是分享器必須支援 "Boot Wait", 而且時間不能過短, 否則很難把握Boot Wait 瞬間, 容易導致TFTP 逾時, 因此外接一台交換器仍是最好的方法

另一個重點則是多數分享器的 "Boot Wait" 預設只有短短的 "一秒", 如果手動操作則很容易錯失良機, 小弟雖然也設計了可以自動偵測的批次檔, 但現在發現 "5.8.5.1 Another way is to use a (script) cmd file under Windows - Installation - DD-WRT Wiki (http://www.dd-wrt.com/wiki/index.php/Installation#Another_way_is_to_use_a_.28script.29_cmd_file_under_Windows)" 設計得更周全, 當然其中運用了一些WindowsXP 所獨有的擴充指令, 不一定適用於其他環境

為了盡量拓展FON 的地盤, La Fonera 預設將無線功率調到最大的63mW (18dBm), 只可惜原廠為了省錢, 所以搭配的是2dBi 天線, 竟然忘了設計FON 就是要盡量把訊號傳送出去, 否則就應該搭配4dBi 天線才對, 實在是美中不足, 不管怎麼說, 如果設法開啟SSH 的話, 則可以登入舊版La Fonera 將無線功率調小, 當然如此就失去了分享的意義, 這點在一開始推出La Fonera+ 之時就學乖了, 調整無線功率的程式碼也已經修正, 現在想修改輸出功率則沒那麼容易, 雖然63mW 不算很高, 但是La Fonera & La Fonera+ 實在沒有足夠的散熱空間, 上蓋也缺少散熱孔, 導致很容易發燙, 耐用程度令人存疑

另一個讓小弟不能理解的設計是La Fonera+ 的無線晶片並沒有以金屬罩覆蓋(EMI?), 舊版則有, 導致小弟也不知道適不適合自行裝上散熱片? 是否會干擾無線訊號? 理論上既然能通過電信單位的檢驗, 應該就沒有問題, 但小弟還沒看過Broadcom 機種少了這片金屬罩的

記憶體不足? 3.5. via the OpenWrt commandline - OpenWrtDocs/Installing - OpenWrt (http://wiki.openwrt.org/OpenWrtDocs/Installing#head-f290dc5e843501f7f97a5996d60cf022f3061d47)

wget http://www.somesite.com/firmware.trx -O - | mtd -e linux -r write - linux
Power 15 dBm 表示可推的動 15dBi 的天線嗎 (http://www.pczone.com.tw/thread/44/138092/)

linczs2000
2008-07-28, 11:49 PM
升級前, 升級後, 永遠記得恢復出廠預設值, 並且重新啟動

另一個讓小弟不能理解的設計是La Fonera+ 的無線晶片並沒有以金屬罩覆蓋(EMI?), 舊版則有, 導致小弟也不知道適不適合自行裝上散熱片? 是否會干擾無線訊號? 理論上既然能通過電信單位的檢驗, 應該就沒有問題, 但小弟還沒看過Broadcom 機種少了這片金屬罩的



Broadcom的機種中,BUFFALO的WHR-HP-G54也是沒金屬片去罩無線晶片

FYI
2008-08-08, 04:52 PM
真的可以不需要法拉第罩嗎? 小弟是大外行且孤陋寡聞, 感謝您的告知

除了前面提到以交換器輔助之外, 還有一個小技巧是預先紀錄分享器的MAC, 並由Windows 設定 "arp -s", 這樣可以減少一次廣播的時間, 等升級完畢之後再以 "arp -d" 解除, 事實上小弟無法判斷以上方法, 何者可以有效協助中斷CFE 或RedBoot 的Boot_Wait, 所以只好吹毛求疵, 把所有想到的方法都提出來, 如果您知道答案的話, 歡迎提出來分享

bv2lk
2008-08-08, 05:01 PM
Broadcom的機種中,BUFFALO的WHR-HP-G54也是沒金屬片去罩無線晶片

純猜測
會不會 在 塑膠外殼內側 塗上特殊的塗料 隔離電磁波?

linczs2000
2008-08-08, 05:57 PM
真的可以不需要法拉第罩嗎? 小弟是大外行且孤陋寡聞, 感謝您的告知

除了前面提到以交換器輔助之外, 還有一個小技巧是預先紀錄分享器的MAC, 並由Windows 設定 "arp -s", 這樣可以減少一次廣播的時間, 等升級完畢之後再以 "arp -d" 解除, 事實上小弟無法判斷以上方法, 何者可以有效協助中斷CFE 或RedBoot 的Boot_Wait, 所以只好吹毛求疵, 把所有想到的方法都提出來, 如果您知道答案的話, 歡迎提出來分享


純猜測
會不會 在 塑膠外殼內側 塗上特殊的塗料 隔離電磁波?

我也是之前在明誠推出WHR-HP-G54之後,才去找WHR-G54S跟WHR-HP-G54有什麼不同的地方
http://www.right.com.cn/forum/viewthread.php?tid=6395&extra=page%3D8

bv2lk
2008-08-08, 07:46 PM
這裡有 超大圖
Buffalo WHR-G54S vs WHR-HP-G54S (http://www.dd-wrt.com/phpBB2/viewtopic.php?t=1595)
由圖片中看不出差別 兩台機器 外殼顏色本來就不一樣.

WHR-HP-G54 (BCM5352)老機器 舊晶片,該淘汰了.
不知道台灣會不會買到這種機器,WHR-HP-G54 翻新機 (http://www.right.com.cn/forum/viewthread.php?tid=15275&highlight=whr-hp-g54)

在其他的設備上曾經看過, 塑膠外殼內側塗上特殊的塗料隔離電磁波.
才會有此推測地...

FYI
2008-08-10, 07:43 PM
大部分Broadcom CFE 的預設Boot_Wait 只有短短一秒, Fonera's RedBoot 則預設兩秒, 由於無法得知啟動過程, 若無適當方法, 則不容易掌握登入的空檔, 傳輸線是有利的工具, 可以觀看啟動過程, 但也不一定非要不可, 不過由於Windows 內建的 "ping" 有個很大的缺點, 也就是無法精確控制ping 的間隔, Linux 之下倒是有很方便的工具 "arping", 配合適當的腳本就可以自動登入RedBoot, 幸好小弟找到一個可以取代Windows ping 的工具 - Fping, 能夠精確控制ping 的間隔, 對於手動登入RedBoot 多少有點幫助

Fping for windows: fast ping with great options (http://www.kwakkelflap.com/fping.html)
Synscan - Programs - arping (http://www.habets.pp.se/synscan/programs.php?prog=arping) (不同於Debian "iputils-arping" Package)
freshmeat.net: Project details for Arping (http://freshmeat.net/projects/arping/)
Download ARPing 2.0.6 - Sends ARP and/or ICMP requests to the specified host and displays the replies - Softpedia (http://www.softpedia.com/get/Network-Tools/IP-Tools/ARPing.shtml)
Arping for Win32 - Carboogle (http://mathieu.carbou.free.fr/wiki/index.php?title=Arping_for_Win32)

NSLU2-Linux - HowTo / TelnetIntoRedBoot browse (http://nslu2-linux.org/wiki/HowTo/TelnetIntoRedBoot)