NVIDIA Jetson Nano 開機故障排除
NVIDIA Jetson Nano 是這兩年當紅的 AI 運算平台,本身其實就是一套執行 Linux 的嵌入式系統主機。剛入手時如果發生惱人的開機問題也別慌,因為是 NVidia 大廠委外代工,品管都非常嚴格,拿到「機王」的可能性非常微小。
就我們經手的主機而言,唯一真正有問題的是有一台機器無法設定 800x600 以上的解析度,透過 xrandr -q
查看設定發現可能是罕見的 HDMI EDID 故障,應該是 HDMI I2C 連接的線路有問題。其他的狀況都是外接 GPIO 造成損壞,請見 如何安全地在 Jetson Nano 或 Raspberry Pi 樹莓派上使用 GPIO 一文說明。
譬如一般電腦開機會顯示 BIOS / EFI 之類的開機畫面,讓你知道至少主機可以正確輸出顯示。但是 Jetson Nano 的 boot loader 目的只是要載入儲存在 SD 卡上的作業系統,並不像是 PC 的 BIOS 包山包海,所以在沒有正確載入作業系統前是「完全沒有畫面」,必須等到作業系統自行驅動 HDMI 輸出功能後才會呈現畫面。所以接下來我們從頭開始檢查吧!
- 電源是否正常運作?以 Jetson Nano 4GB 為例,有兩種連接電源的方式。預設是採用 2.5A 以上的 USB 線,如果要採用大電流的 DC 變壓器方式供電,一定要把電源選擇 Jumper J48 插上,才能順利供電。
- 由於 Jetson Nano 本身有做電源序列(簡單講相當於開關彈跳保護)的關係,建議先把 DC 插頭與 AC 插頭都插入後,另外用一個(延長線上的)AC 開關控制開機啟動,這樣每次都能順利開機。如果是先把變壓器通電再插上 DC 插頭,因為會有彈跳問題,綠燈可能閃一下就滅了.... 使用時也請保持開發板穩定連接 DC 插頭。
- 如果 HDMI 沒有顯示輸出,請務必檢查或更換線材與螢幕,我們遇過太多次使用者認為故障無法開機的狀況,其實是線材品質不佳、或是螢幕解析度不相容所致。
- 還有一點就是,請務必用從官網下載、最新或最穩定的完整 image 進行開機,如果是在之前舊的主機上用一些 SDK manger 之類工具下載。因為這類系統有時會去修改主機上的某些設定,所以可能會發生舊主機可以正常運作,新主機反而出狀況的靈異事件。所以請掌握一個原則:新主機務必使用燒錄完整、乾淨系統 image 的 SD 卡開機,避免自尋困擾。典型範例可詳見 https://tr.makehub.tw/samples/jetson_nano/JP4.5_bootrom_on_older_board.log
- 如果還是無法進入系統,這時需要透過 console port 連接直接去看系統開機時的訊息輸出,詳見 Jetson/General debug。另外,如果對於 boot 程序有興趣的話,可以參考官方文件 Boot Flow
- 官方論壇上置頂的這兩份文件 Debug tips when you hit any issue (fail to boot/ keep reboot …etc) 與 Jetson Nano FAQ 很不錯,請多多參考。
- 尤其是第一份文件,清楚地告知使用者必須提供詳盡的使用環境版本、以及 log 檔案(避免使用照片,文字才容易查找問題),以便讓官方工程師參與協助解決問題。那些「無法啟動」或「畫面一片漆黑」的回報,只會讓人傻眼,因為有各種可能狀況,工程師並不會通靈,無法憑藉這樣模糊的敘述抓問題。
- 有任何技術問題,也可以這個 Forum 上提出,會有 NVidia 工程師親自提出權威解答。