N1, T1刷機記錄

weixin_34119545發表於2018-12-17

硬體配置

N1和T1使用的是晶晨Amlogic方案的晶片, 配置明細分別如下, 都是現在盒子的主流配置

N1
CPU: Amlogic S905, ARM Cortex-A53 四核 up to 2.0GHz
GPU: ARM Mali™-450, 5core
ETH: RTL8211F
ROM: 三星KLM8G1GEME,8GB eMMC5.1 MLC快閃記憶體顆粒
RAM: 三星K4B4G1646E, 絲印K4B4G1646E-BYMA, 4Gb(512MB) DDR3-1866MHz, 正反4顆, 總記憶體2GB

T1
CPU: Amlogic S912, ARM Cortex-A53 八核 1.5GHz up to 2.0GHz
GPU: ARM Mali-T820MP3 up to 750MHz
ROM: 三星KLMAG1JENB 16GB eMMC5.1 MLC快閃記憶體顆粒
RAM: 三星K4B4G1646E 4Gb(512MB) DDR3-1866MHz, 正反4顆, 總記憶體2GB
WLAN: AW-CM256SM
BT: RTL8726A, ARM Cortex M0、256KB eFlash、80KB RAM

工具準備

硬體上, 需要準備一根雙公頭的USB連線線

軟體上, 目前晶晨的燒錄工具, 在Linux下只支援Ubuntu14和16, 對18.04還不支援, 安裝時會直接提示在18.04下未驗證, 所以未能嘗試在Ubuntu下燒錄. 除此以外其他的工具adb, fastboot在Ubuntu18.04下都是可以正常使用的.

在Win7下需要使用的工具有 adb, fastboot, 這兩個是Android的標準除錯工具, USB Burning Tool 這個是晶晨的燒錄工具

另外需要準備的是用於給N1和T1降級使用的引導區韌體, boot.img, bootloader.img 和 recovery.img

以上需要的軟體, 都可以從這裡下載 https://pan.baidu.com/s/14i4HcbfyqyYVXYo-a0PZLg 提取碼: 1hjy

以及用於燒錄的系統韌體 -- 這個比較大, 500~700MB, 需要提前下載

系統降級

N1: 在執行介面的版本號上點選4次, 至出現"開啟adb", 這個狀態重啟後會保持
T1: 在配置中, 開啟"遠端除錯"

記下IP地址, 然後在命令列使用adb連線

adb connect 192.168.1.170

顯示連線成功後, 這一步是要使裝置啟動到fastboot模式以便於寫入那三個img, 執行命令後將usb連線到電腦

adb shell reboot fastboot

這時候系統會顯示找到新硬體, 待其自動安裝驅動, 直至完成. 如果完成後顯示硬體有問題(黃色感嘆號), 重啟電腦, 然後再重複一遍上面的操作

硬體正常工作後, 可以在命令列通過fastboot devices看到連線的硬體

fastboot devices -l

這時候就可以通過fastboot flash 寫入img了, 注意N1和T1的img是不同的, 不要搞混.

fastboot flash bootloader bootloader.img
fastboot flash boot boot.img
fastboot flash recovery recovery.img

# 結束後重啟裝置
fastboot reboot

.

燒錄過程

安裝USB Burning Tool, 最後會彈出驅動安裝, 一路繼續安裝

在系統裝置管理中, 手動新增過時裝置, 選取Install the hardware that I manually select from a list, 選取 libusb-win32 Usb Devices, 選取 WorldCup Device

這時候最好重啟一下電腦, 以便驅動生效

N1的燒錄

開啟USB Burning Tool, 匯入需要燒錄的img, 去掉Erase flash 和 Erase bootloader 這兩項的勾選

盒子斷開USB, 斷電, 然後加電(不需要連線USB), 待其進入系統獲得IP地址後, 使用adb讓其重啟

adb connect 192.168.1.170
# 這一步執行時要先拿好USB插頭
adb shell reboot update

在敲下最後這行命令回車時, 系統會立即重啟, 這時候請立即將USB連上電腦, 並立即點選USB Burning Tool的Start按鈕, 如果能看到進度條, N1就已經開始燒錄了. 

T1的燒錄

有些韌體需要預先將密匙放到USB Burning Tool安裝目錄 license 子資料夾下才能正常燒錄, 如果子目錄不存在則新建目錄

盒子斷電, 斷開usb, 然後USB Burning Tool點選開始後, 立即加電, 同時連上USB, 這時候USB Burning Tool就會直接識別開始燒錄

燒錄結束後, 保險起見, 先點選Stop, 關閉USB Burning Tool程式, 然後再給N1或者T1斷電.

執行Armbian Linux

準備好一個大於4G的U盤, 下載Armbian Linux的img.xz檔案, 下載地址

https://yadi.sk/d/pHxaRAs-tZiei
國內的可以訪問 https://share.weiyun.com/5eCvcvS (部分搬運)密碼:mivmcn

在Ubuntu18.04下, 使用系統自帶的Disk Image Writer直接寫入U盤

從 https://github.com/yangxuan8282/phicomm-n1/releases 中找到對應n1的dtb檔案, 下載.
路徑是 https://github.com/yangxuan8282/phicomm-n1/releases/download/dtb/meson-gxl-s905d-phicomm-n1.dtb

將這個檔案複製到U盤的boot分割槽的dtb資料夾, 並修改boot分割槽的uEnv.ini檔案, 將其中的dtb檔案改成這個檔案, 同時修改extlinux 目錄下的extlinux.conf, 把裡面的dtb檔案也改掉

關於使用U盤啟動

有些教程說直接將U盤插入USB口後, 加電即可從U盤啟動, 但是在我這裡並不是這樣, 加電後還是進入了自帶的Android系統. 這時候需要斷電把U盤拔下來.
檢查一下N1此時的IP, 通過 adb connect IP 連線一下, 再執行 adb shell reboot update , 在執行這個命令讓N1重啟的同時, 將U盤插入, 這時候就會從U盤啟動了. 而且這次啟動之後, 再開關機都會從U盤啟動. 即使N1自帶儲存已經寫入了Armbian系統, 還會先從U盤啟動

測試過的版本:
5.67 20181207
  Armbian_5.67_Aml-s9xxx_Debian_stretch_default_4.19.6_desktop_20181207.img.xz 圖形介面正常
  Armbian_5.67_Aml-s9xxx_Ubuntu_bionic_default_4.19.6_desktop_20181207.img.xz 圖形介面無法啟動, 命令列正常
  Armbian_5.67_Aml-s9xxx_Ubuntu_bionic_default_4.19.6_20181207.img.xz 工作正常, WIFI工作正常

如果要寫入N1, 以後從N1直接啟動, 直接在/root/目錄下執行 install.sh 就可以了. 看了命令明細, 就是把U盤裡的檔案往 /dev/mmcblk1p1 和 /dev/mmcblk1p2 這兩個分割槽裡寫.

關於配置WiFi

建議通過執行自帶的armbian-config, 在其介面總進行配置. 有時候連線會不太正常, 重試就好了. 重啟系統後不會自動連線WiFi, 這個還不知道如何配置

如何從Armbian Linux 刷回 Android TV

手裡這個N1, 斷電重啟, umount /dev/mmcblk1p1 格式化後再重啟, 都不會進入線刷狀態. 看來是必須要通過類似於 reboot update 這樣的命令才能實現了.

實現的途徑是: 用U盤製作一份 CoreELEC 的系統, 將系統寫入N1後, 再從N1中執行 root update 命令, 這時候就會進入線刷狀態.