世界を動かす技術を、日本語で。

80ドルのRK3562 AndroidタブレットをDebian Linuxワークステーションに変えました

概要

  • rkdebian はDoogee U10(RK3562搭載)向けのDebian 12 Bookwormイメージを提供
  • SDカードから起動し、内部ストレージやブートローダーの変更不要
  • 主要ハードウェア機能の多くが動作、NPUによるLLM推論もサポート
  • ビルドシステム・環境変数・カスタマイズ方法を詳細に解説
  • 既知の問題点やカメラ/NPUベンチマークも掲載

rkdebian:Doogee U10(RK3562)向けDebian 12プリリリースイメージ概要

  • rkdebian は、Doogee U10タブレット(Rockchip RK3562 SoC搭載)専用のDebian 12 Bookwormイメージ生成システム
  • SDカード にイメージを書き込み、挿入して起動するだけでDebianが起動、SDカードを抜けばAndroidへ戻る
  • 内部ストレージやブートローダーの変更不要、完全なリバーズエンジニアリングで開発(BSPやベンダー資料・公式サポートなし)
  • Firefly RK3562のOSSリポジトリ をベースにClaude、Codex、Antigravity (Google Gemini)の支援で構築
  • イメージ配布・動画デモ :GitHub(tech4bot/rk3562deb)、YouTube

対応ハードウェア

  • SoC: Rockchip RK3562 (4× Cortex-A53 @ 2.0GHz)
  • NPU: 1コア (RKLLM推論対応)
  • RAM: 4GB LPDDR4
  • ストレージ: 128GB eMMC(Android)+SDカード(Debian)
  • ディスプレイ: 10.1インチ DSIパネル(1280×800)
  • PMIC: RK817

動作確認済み機能

  • ディスプレイ/タッチパネル: 完全動作 (gsl3673、10点マルチタッチ)
  • Wi-Fi/Bluetooth: 完全動作 (Seekwave EA6621Q)
  • スピーカー/マイク: 完全動作
  • 3Dアクセラレーション: 部分動作 (Panfrost、OpenGL ES動作)
  • NPU(RKLLM/rknn-llm): 有効
  • 加速度センサー: 完全動作 (SC7A20/DA223)
  • フラッシュライト(リアLED): 完全動作 (Phoshメニュー連携・輝度調整可)
  • 電源ボタン: 完全動作 (短押しでスリープ、長押しでシャットダウンダイアログ)
  • ロックスクリーン回転記憶: 完全動作
  • カメラ: 部分動作 (プレビュー・撮影可、色調整未完)
  • バッテリー・充電: 完全動作 (RK817 PMIC)
  • SDカードブート/USB OTG: 完全動作

標準インストールアプリ

  • Firefox ESR/Chromium (Webブラウザ)
  • FreeTube (Flatpak経由、軽量化時は省略可)
  • Drawing (タッチ対応ペイント)
  • Snapshot (カメラアプリ)
  • Dolphin (ファイルマネージャ)
  • Plasma Discover (アプリストア)
  • Okular (PDFビューア)
  • Gedit (テキストエディタ)
  • Pavucontrol (オーディオコントロール)
  • Terminal (kgx推奨、gnome-terminal代替)
  • Flatpak+Flathub (アプリ追加用)

NPUによるLLM推論対応

  • Rockchip RK3562 NPU でのローカルLLM推論をサポート

  • airockchip/rknn-llm (ランタイム、ツールキット、デモアプリllm_demo)を利用

  • モデル変換用コマンド例(ホストPC上):

    python3 convert_qwen_rk3562.py \
      --model-dir ./models/Qwen3-0.6B \
      --target-platform rk3562 \
      --quantized-dtype W8A8 \
      --optimization-level 0 \
      --num-npu-core 1 \
      --output ./out/Qwen3-0.6B_W8A8_RK3562_opt0.rkllm
    
  • Qwen3-0.6B モデル推論時のベンチマーク(タブレット実機、NPU経由):

    | モデル | 初期化(ms) | Prefill(tok/s) | Generate(tok/s) | |--------|------------|----------------|-----------------| | Qwen3-0.6B_W8A8 | 1788.70 | 57.62 | 4.92 | | Qwen2.5-1.5B-Instruct | 4800.76 | 42.78 | 2.18 |

  • Qwen3-0.6B が本機では高速

既知の問題点

  • 電源オフ後数時間でバッテリー残量が0%表示になる場合あり
    • rk-battery-gauge-fix.service が起動時に修正
    • 完全シャットダウンでなければ再起動が必要な場合あり
  • フロント/リアカメラの色合いが未調整

ビルド要件・手順

ホスト環境

  • x86-64 Linux (Debian/Ubuntu推奨)

  • ビルド依存パッケージ:

    sudo apt-get install \
      git make gcc-aarch64-linux-gnu \
      bc bison flex device-tree-compiler \
      genimage wget tar mtools \
      xz-utils \
      debootstrap qemu-user-static \
      e2fsprogs
    

ビルド方法

  • フルビルド(推奨) :U-Boot、カーネル、Debian rootfs、SDカードイメージを一括生成

    ./build.sh all
    
  • ログをファイルに保存しつつ実行:

    set -o pipefail
    ./build.sh all 2>&1 | tee build.log
    
  • 完成イメージ: out/rk3562-debian.img.xz (推奨)

各種ビルドターゲット

  • check :依存パッケージの検証
  • lunch :ビルド設定選択
  • uboot :U-Bootのみビルド
  • extboot :カーネルのみビルド
  • rootfs :Debian rootfsのみビルド
  • compile :U-Boot+カーネルのみビルド
  • image :既存成果物からSDイメージ生成
  • updateimg :互換イメージ生成(SDK互換)
  • updatepkg :オフラインアップデート用tarball生成
  • all :全工程一括ビルド(デフォルト)

環境変数・カスタマイズ

  • RKDEBIAN_FORCE_CLEAN_ROOTFS :1でrootfs再構築
  • ROOTFS_IMAGE_SIZE :rootfsパーティションサイズ指定
  • RKDEBIAN_DISPLAY_SERVER :wayland/x11/auto選択
  • RKDEBIAN_UI_SESSION :自動ログインセッション(phosh等)
  • RKDEBIAN_GPU_STACK :mali/panfrost選択
  • RKDEBIAN_CPU_GOVERNOR :CPUガバナー指定
  • RKDEBIAN_PREINSTALL_FREETUBE :0でFreeTube省略
  • RKDEBIAN_MINIMIZE_IMAGE :1でイメージ軽量化
  • RKDEBIAN_KEEP_OVERLAY_PMIC_PATCHES :1でカーネルPMICパッチ維持

例:rootfs再構築+4GB固定

RKDEBIAN_FORCE_CLEAN_ROOTFS=1 ROOTFS_IMAGE_SIZE=4G ./build.sh all

例:Waylandデスクトップイメージ

./build.sh all --display-server=wayland

例:イメージ軽量化+FreeTube省略

RKDEBIAN_FORCE_CLEAN_ROOTFS=1 RKDEBIAN_MINIMIZE_IMAGE=1 RKDEBIAN_PREINSTALL_FREETUBE=0 ./build.sh all

Phosh電源管理・UX拡張

  • rk-power-profile-sync.service でPhosh電源モードとcpufreqを自動同期
    • balanced:ガバナーは RKDEBIAN_CPU_GOVERNOR (デフォルトperformance)、最大100%
    • power-saver:powersave、最大65%
    • performance:performance、最大100%
  • リアカメラLED はPhoshのトーチアイコンで点灯・輝度調整可
  • 電源ボタン :短押しでサスペンド、長押しでシャットダウンダイアログ
  • ロックスクリーン回転 :直前のタブレット画面向きを記憶

この内容をもとに、 Doogee U10用Debian 12イメージの導入・カスタマイズ が可能です。詳細は GitHubリリースページ動画デモ も参照してください。

Hackerたちの意見

これの動機は何だったの?なんでこの特定のタブレットなの?

このタブレットは安いし、数年前に発売されたけど、今でも売ってるんだ。SDカードから起動するから、このプロジェクトにはぴったりだね。

AIのおかげで、時間をかける価値がないデバイスをハックするのがめっちゃ簡単になったのが好き。

昔、無料プランが使えた時にClaudeを使って、古くてサポートもドキュメントもないボードにLinuxを移植したことがあるんだ。メーカーはバイナリのAndroidイメージしか公開してなかったけど、幸運にもそれでいくつかの情報を得ることができた。これが私の想像力を刺激して、AIがポート(シリアルコンソール、GPIO、I2C、SPIなど)やターゲットボードの物理スイッチ(オン/オフ、リセットなど)に接続された、完全なビルドシステムを持つAI支援のリバースエンジニアリングプラットフォームについて考えたんだ。AIが複数のSDカードの間を回転できる論理スイッチを持っていて、開発PCとボードの間で自由にダウンロード、ビルド、テストできるようにすれば、最も時間のかかる部分をオフロードできると思った。

同意。出力と同じくらい、実際のプロンプトやプロセスも見てみたかったな。

そうだね。人気のTQ電動自転車モーターのファームウェアを逆アセンブルすることができるか、ちょっと気になる。ディーラーツールのAPIコールをキャッチすれば、そのファームウェアをダウンロードできるんだ。全く経験がないから、もしあったら試してみるんだけど。ディーラーツールを逆コンパイルしたけど、かなり複雑なWPFアプリで、コンパイル可能にはできないんだ。最新のClaudeのバージョンならできるかも。時間がかかるけど、そうじゃなければまた挑戦してみるかも。

AIがこういうリバースエンジニアリングにかなり得意みたいだけど、それを目的に使うための教育資料はあるのかな?postmarketOSを新しいデバイスに移植したり、既存のデバイスのサポートを改善したりするのに本当に役立ちそう。

これについて少し経験があるから、興味があれば記事を書けるよ。鍵は、ダウンストリームのソースを持っていて、AIに対して非常に保守的に、少しずつステップバイステップで進めることだね。C言語を知っていて、何が許可されているかの感覚も必要だよ。もう一つのポイントは、ソースを編集する前に、何をしようとしているのかを示すパッチで承認を求めること。そうすれば、AIが何をしようとしているのかを判断できて、パッチのダブルチェックを頼むことができる。量より質を重視してね。これはウェブフロントエンドのTailwindじゃないから、かなり厳格で、ある程度の知識が必要だよ。誰もがAIを使ってカーネルコードを書くことはできないから、しっかりした低レベルとエンジニアリングの知識が必要だね。

ああ、そうだね、何かを学ぶのを避けるためにAIに頼るのか。こんな態度を続けてたら、頭が煮えちゃうよ。

AIに直接聞いてみるのもいいかもね。

これは、AIとGhidraを使ってマルウェアを逆解析する14分のYouTube動画についての以前のディスカッションだよ。 https://news.ycombinator.com/item?id=43474490

ほとんどのデバイスでDebianが完全に機能するのは素晴らしいね。知りたいのは、4GBのRAMでどんなソフトウェアがちゃんと動くのかってこと。ウェブブラウジングは確実に可能だと思うけど、タブはかなり限られそうだね。すごく軽量なDEを使えば、もっと使いやすくなるかも。WezTerm + tmuxをDEとして使うのも、開発ツールのための余裕を残しつつ、さらに経済的かもしれないね。

ほとんど全部だね。2、3年前までは4GBのRAMしかなかったけど、スワップも使わずに問題なかったよ。

ブラウザやElectronベースのアプリは敵だね。Firefoxは実はメモリが少ない状況でも結構いい感じで、メモリが圧迫されるとタブを静かに捨ててくれるんだ。ただ、主な利点はちゃんとした広告ブロックができることかな。Chromiumベースのブラウザは最近は全然競争にならないよ。あとは、普通のGnomeベースのDebian Trixieデスクトップで十分だと思う。今は8GBのマシンを使ってて、3.7GBのRAMが空いてる。Firefox、Evolution、Gnomeカレンダー、Gnomeソフトウェアの4つのアプリだけが100MB以上使ってるけど、どれも必須ではないよ。

タブがたくさんあっても全然問題ないよ。ただ、YouTubeのタブが多いのが厄介だね。主な問題はユニティゲームによって引き起こされてるんだ。あれは大きなRAMを食うから、基本的な2Dゲームでもそうなんだよ(どうしてそうなるのか、KSPの頃からの退化が理解できない)。でも、たくさんの2Dゲームは問題なく動くし、開発者たちは最低限の要件を過大評価してると思う。

OPのことはもちろんわからないけど、少し前にAmazonで同じくらいの値段のx86-64 Windowsタブレットを買ったんだ(Celeron N4020 + 4GB RAM)。Linux Mintを少しカスタマイズしたカーネルでインストールしたよ(いくつかの特別な設定が必要だった)。古いSSDをSATA2USBアダプターで接続して、ホームファイルサーバーとHTPCとして使ってる。マイクロHDMI出力があって、テレビに接続してるよ。昼間は音楽をずっと流してて、夜は映画を観てる。高ビットレートのフルHD映画も問題なく再生できるし、CPUは全然負担になってない。4Kコンテンツも再生できると思うけど、持ってないから試せないな。(以前はMac MiniでVLCを使ってたけど、今のセットアップの方が安定してて満足してるよ。)

正直、ウェブブラウザ(やElectron)が必要ないなら、そんなにメモリを必要とするものって何だろう?動画や写真編集とか?Postgres?世界を再コンパイルするとか?

PinePhone Proは4GBだね。 > 「タブはすごく少ないに違いない」 そんなことないよ。あんまり重い使い方はしてないけど、タブに制限を感じたことはない。YouTubeのタブも複数開けるし。 > 「軽量なDEを使えばもっと使いやすくなるかも」 WezTermとtmuxをDEとして使ってるけど、すごく反応がいいよ。i3とXorgも同じように動くと思う。どちらもDEとは言えないけど、ターミナルとtmuxもそうだしね。

lynx

今のDoogee U10タブレットの状況だけど、あまり手に入らないね。もし一般的なハードウェアやデバイスでのすごい進展のニュースが広まったら、残念ながら購入コストが急上昇する可能性が高いよ。そんなデバイスが通常のオンラインショップで見つかるかどうかも怪しいけど。

ヘッドラインを見た瞬間、すぐにeBayをチェックしたら、アメリカに80ドルで発送可能なものがあったよ。 https://ebay.us/m/fYqBgc

アリエクスプレスで見たら、73ユーロで買えそうだよ。

どうやらBest Buyのサードパーティから購入できるみたいで、約10日で届くらしいよ: https://www.bestbuy.com/product/doogee-u10-android-13-tablet...

面白いね。テストするためのハードウェアは持ってないけど、- Bookwormを選んだのは意図的な選択っぽいね。13(aptアップグレードか直接インストールで)は動かないの? - このハードウェアの性能はどうなの?古いサムスンのタブレットがあって、ルート化できないんだけど、最近のAndroidではかなりもっさりしてる。こういうのが欲しいけど、遅いものを別の遅いものに交換したくないな。

Bookwormは保守的な選択だったね。Trixieはまだちゃんとテストしてないから、どうかは分からない。理論的にはrootfsは入れ替え可能なはず。性能は使えるレベルだよ、特にストックAndroidと比べると、バックグラウンドの無駄が少ないから。ターミナル作業や軽いブラウジング、VS Code、小さな実験には十分。もしよかったら、私の動画も見てみて:https://youtu.be/DbX13_mahKc

メインラインLinuxじゃないから、気になる人もいるかもしれないね。

4GBのそんなシステムは、いろんなアプリケーションにとってかなり役立つよ。古いAcerのChromebookにLinuxをインストールして、隅に置いておいて、VAXシステムを静かにクールにエミュレートしてるんだ。性能はVaxstation 4000/60くらいかな。

これには拍手を送りたい。理想的には、自分でTRMNLみたいなデバイスを作りたいけど、U10は478g(1.05ポンド)もあって、冷蔵庫に置くにはちょっと重すぎるかな。

それはいいけど、電子フォトフレームの多くはAndroidタブレットでもあるから、もっと安く手に入るよ。