プログラミング
ZTE B860H: Armbianを導入する
ZTE B860H: Getting Armbian into It (pen.waltuh.cyou)
要約
この記事は、ZTE B860H(V1/V2)セットトップボックスにArmbianをインストールするためのガイドです。root化やストックROMからの変更が不要な方法で、microSDカードと特殊なHDMIブートドングルを使用します。Linuxデスクトップ環境での作業が推奨されますが、Windowsでの代替手段も示唆されています。
全文翻訳
ZTE B860H: Armbianを導入する
この記事では、B860H V1 / V2向けのArmbianインストールガイドを扱います。
注意: このモデルはV5と混同してはなりません。両リビジョンは内部のハードウェアが全く異なります。
ここで使用する方法では、セットトップボックスが既にroot化されている必要はなく、ストックROMの外にある必要もありません。
STBがストック状態にあると仮定します。
最良の結果を得るためには、全てのフラッシュ作業をLinuxデスクトップで行うことを推奨します。そうでなければ、Windowsでの代替手段が存在し、後で説明します。
要件
インストール
Armbianのフラッシュ
U-Bootのフラッシュ
TL;DR
ボックスへ...
eMMCへのインストール
追加: zramの設定
追加: irqbalanceの設定
トリビア
困惑していますか?
このガイドはFiberHome HG680Pボックスでも動作します(ただし、トリビアを確認してください)。
要件
microSDカードスロットを備えたパーソナルコンピュータ(そうでない場合は、microSD<->USBアダプターを使用します。これらは機能します)
microSDカード(これをメインとして使用する場合は、クラス10のmicroSDカードを使用してください)
自分で作成するか、オンラインストア(ID: Shopee Indonesia | global: Tindie)で既製のものを購入できる、特別に作られたHDMIブートドングル
実際のボックス本体(B860H)で、ブート状態に関わらず電源を投入できるもの(LEDがオレンジ、または緑、またはその他の色であっても構いません。root化されているか、ストック状態か、そうでないかは関係ありません)。
添付されたコマンドを盲目的にコピー&ペーストしないこと
インストール
B860Hを動作させるには、HG680P U-Bootブートローダーを使用する必要があります。これはここから入手できます(u-boot.binとして保存してください)。
以下の手順は順番に行う必要があります。
1. Armbianのフラッシュ
Armbianイメージはophub/amlogic-s9xxx-armbianから入手できます。それぞれ異なるディストリビューションで構成されています。例えば、この記事の執筆時点では:
– resolute はArmbian OSのUbuntuエディションです
– trixie はArmbian OSのDebianエディションです。
s905x と b860h という2つのキーワードを含むリリースを探す必要があります。例えば:
Armbian_26.11.0_amlogic_s905x-b860h_trixie_6.18.51_server_2026.09.14.img.gz
ダウンロードしたら、解凍します:
gzip -k -d -v Armbian_26.11.0_amlogic_s905x-b860h_trixie_6.18.51_server_2026.09.14.img.gz
注意: ファイル名はダウンロードしたリリースに合わせて調整してください。
フラッシュするmicroSDカードを挿入し、その場所を確認します:
yonle@yonle:/mnt$ lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINTS
mmcblk0 179:0 0 58.6G 0 disk
├─mmcblk0p1 179:1 0 511M 0 part
└─mmcblk0p2 179:2 0 58.1G 0 part
この場合、/dev/mmcblk0です。
特別: SDカードUSBアダプターを使用している場合、これらは通常sd[a...c]というプレフィックスで名前が付けられます(例: sdb)。既存のメインSATAドライブと混同しないようにしてください。
そして、Armbianイメージをカードにフラッシュします:
sudo dd if=Armbian_26.11.0_amlogic_s905x-b860h_trixie_6.18.51_server_2026.09.14.img of=/dev/mmcblk0 bs=4M status=progress sync
(はい、sync IS a command)
/dev/mmcblk0 をmicroSDスロットのパスに合わせて調整してください。これはlsblkコマンドで確認できます。
注意: これを行うと、microSDカード上の全てのデータが消去されます。続行する前に、重要なものがあればバックアップしてください。
フラッシュ後、BOOTパーティションを変更する必要はありません。これらはブートステージ中に自動的に行われます。
2. U-Bootのフラッシュ
Windowsでは、この手順はAmlogic Bootcard Makerというプログラムを使用して行われます。同様に、Linuxでも同じことができます。
以前にu-boot.binをダウンロードしたディレクトリに移動します。例:
cd ~/Downloads
そしてフラッシュします:
sudo dd if=u-boot.bin of=/dev/mmcblk0 conv=fsync,notrunc bs=1 count=442
sudo dd if=u-boot.bin of=/dev/mmcblk0 conv=fsync,notrunc bs=512 skip=1 seek=1 sync
そして最後に、microSDカードを取り出します。
フラッシュ TL;DR
簡単に言うと、上記のタスクは以下の通りです:
sudo dd if=Armbian_26.11.0_amlogic_s905x-b860h_trixie_6.18.51_server_2026.09.14.img of=/dev/mmcblk0 bs=4M status=progress
sudo dd if=u-boot.bin of=/dev/mmcblk0 conv=fsync,notrunc bs=1 count=442
sudo dd if=u-boot.bin of=/dev/mmcblk0 conv=fsync,notrunc bs=512 skip=1 seek=1 sync
ボックスへ...
ボックスが既にハックされているかどうかを判断できます。これは通常、LEDインジケーターで判断されます:
– 緑色の場合、Androidが実行されている可能性が高いです。
– オレンジ色の場合、通常のAndroidブートローダーを使用していないか、緊急ダウンロードモードになっています。
工場出荷時のAndroid ROMが入っているボックスでは、通常、microSDカードをボックスに挿入するだけで、microSDカード上のものがすぐに起動するとは期待できません。
ストックブートローダーはすぐにAndroid OSを起動し、おそらく望まないBOOTパーティションを間接的に変更します。
このボックスのブートローダーにmicroSDカード上のものを強制的に起動させるために、特殊なHDMIドングルが特別に作られています。これは、緊急/ダウンロードモード用であるとされています。
このHDMIドングルがまさに求めているものであるかを確認するために、i2cdetect(i2c-toolsからインストール可能)を使用してHDMIバスを確認できます。
まず、私のラップトップのHDMIポートのバスがどれかを知りたいです:
yonle@yonle:~$ sudo i2cdetect -l
i2c-0 i2c Synopsys DesignWare I2C adapter I2C adapter
i2c-1 i2c Synopsys DesignWare I2C adapter I2C adapter
i2c-2 i2c i915 gmbus dpa I2C adapter
i2c-3 i2c i915 gmbus dpb I2C adapter
i2c-4 i2c i915 gmbus dpc I2C adapter
上記の例では、私のバスはi2c-2、つまりi915 gmbus dpa(dpXプレフィックスに注意)です。
i2c-2の末尾の2に1を加えると、3になります。
これで、HDMIドングルをラップトップのHDMIポートに接続します:
yonle@yonle:~$ sudo i2cdetect -y -r 3
0 1 2 3 4 5 6 7 8 9 a b c d e f
00: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
10: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
20: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
30: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
40: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
50: -- -- 52 -- -- -- -- -- -- -- -- -- -- -- -- --
60: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
70: -- -- -- -- -- -- -- --
このドングルが求めているものであれば、0x50で、上記のように3番目の列に52があるはずです。
次に、その中身を確認します:
yonle@yonle:~$ sudo i2cdump -y -r 0xf8-0xff 3 0x52
No size specified (using byte-data access)
0 1 2 3 4 5 6 7 8 9 a b c d e f
0123456789abcdef
f0: 62 6f 6f 74 40 53 44 43 boot@SDC
文字列値はboot@SDCである必要があります。
ドングルが求めているものであることがわかったので、インストールプロセスを開始しましょう:
ボックスの電源を全て抜きます。
– 前述のmicroSDカードをmicroSDカードスロットに挿入します。
– HDMIドングルをボックスに接続します。
そして電源を接続し、電源LEDインジケーターに注意してください。
この段階で緑色のインジケーターがオレンジ色に変わるはずです。
インジケーターがこの段階でオレンジ色のLEDライトのまま15秒間続く必要があることに注意してください(この段階で緑色に変わってはいけません。もし変わった場合は、フラッシュが間違っています!)。
15秒経過してもLEDがオレンジ色のままなら、HDMIドングルを抜き、テレビ/モニター/キャプチャカードからボックスへのHDMIケーブルを接続できます。
TTYに似たものが表示されるはずです:
そこから、Armbianがセットアップを求めてくる段階になったら、次の2つの方法のいずれかで行うことができます:
1. キーボード方式: キーボードをSTBに接続し、ここからセットアップを行います。
2. ネットワーク方式: SSH経由でこのボックスをセットアップしたい場合:ルーターからボックスへLANケーブルを接続します。ルーターページでIPアドレスを確認し、SSHで接続します:
ssh root@10.42.x.x
デフォルトパスワードは1234です。
セットアップと新しいパスワードの設定を求められます。
完了したら、それでおしまいです。ボックス経由でmicroSDカードにArmbianのインストールが完了しました。ただし、U-Bootを使用させるためには、まだHDMIドングルを使用する必要があります。
U-Bootを永続化する
以前と同様に、ネットワーク経由でu-boot.binをボックスに送信します:
scp u-boot.bin root@10.42.xx.xx:u-boot.bin
シェルに入り、eMMCがどれかを確認します:
root@armbian:~# lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINTS
mmcblk1 179:0 0 58.6G 0 disk
├─mmcblk1p1 179:1 0 511M 0 part /boot
└─mmcblk1p2 179:2 0 58.1G 0 part /
mmcblk2 179:32 0 7.3G 0 disk
├─mmcblk2p1 179:33 0 511M 0 part