Category Archives: OS

Allwinner H3搭載のOrange Pi向けのLinuxのお薦め(2016/12/01版)


Allwinner H3/H2+搭載のOrange Piシリーズとして、以下のものがリリースされています。
・Orange Pi 2 / Orange Pi mini 2
・Orange Pi Plus / Orange Pi Plus 2
・Orange Pi PC
・Orange Pi PC Plus
・Orange Pi Plus 2E
・Orange Pi One
・Orange Pi Lite
・Orange Pi Zero

「Orange Pi 2」と「Orange Pi mini 2」は無線LANの有無だけなので同一扱いです
「Orange Pi Plus」と「Orange Pi Plus 2」はメモリ容量の違いのみで同一扱いです
「Orange Pi」と「Orange Pi Mini」はAllwinner A20搭載の旧機種なので当blogでの取り扱い対象外です
Allwinner H5搭載の「Orange Pi PC2」については別記事を作成する予定です。

Orange Pi公式として、いくつかOSがリリースされていますが、全然更新していってくれません。
最初にリリースしたら、それっきりで放置されています。
基本的にはDebian/Ubuntuなどのarmhf向けの公式リリースを利用しているので、いろんなパッケージのアップデートに関しては問題ありませんが、Linux Kernelなどに対する更新が提供されていません。

これをどうにかするには、現状だとOrange Piが提供していない、それ以外のディストリビューションを選択する必要があります。

・お薦め度 No1:armbian
Debian/Ubuntuの公式リリースのバイナリパッケージを利用しつつ、Linux kernelなどのカスタマイズが必要な部分については、自分たちのレポジトリをきちんと用意し、継続してアップデートする環境を整えているディストリビューションです。
長期で使いたい場合は、最有力となるものです。

armbianのAllwinner H3向けは各機種ともLinux kernel 3.4.113が基本ですが、Linux kernel 4.9のものが開発中です。
現状、Orange pi PC向けとして開発中ですが、HDMI出力はサポートしていない状態です。
今後に期待です。

開発ツリー:https://github.com/igorpecovnik/lib

・メディアプレーヤ向けのOpenELEC for Orange pi
TVにOrange Piを接続し、ムービーとかを再生するためのメディアプレイヤーとして使う場合に適しているディストリビューションの「OpenELEC」をOrange Pi向けに移植したものです。
Orange Piの公式フォーラムで配布しており、イメージは「Latest prebuilt images」にてダウンロードできます。
HDMI接続したテレビのリモコンを使っての操作が可能な設定になっているはずなのですが、どうやらTV側の機種を選ぶようで、うまく動かないことが多いようです。
うまく動かない場合は、テレビリモコンでの操作は諦めましょう。

ただ、動画再生時、CPUからの発熱が酷いのでヒートシンクやCPUファンなどの冷却機能を用意する必要があります。
また、ラズパイ向けのOpenELECと比較すると微妙な点が多いのでどれくらい実用化というと・・・

開発ツリー:https://github.com/jernejsk/OpenELEC-OPi2/

DietPi
armbianの成果物を利用しつつ、インストールサイズを最小化したコンパクトなラズベリーパイ向けディストリビューションであるDietPiがAllwinner H3機種向けにも提供されています。
Orange Pi系では、Orange Pi PCとOrange Pi Oneの2機種に提供されています。

このディストリビューションもこまめにアップデートされています。

開発ツリー:https://github.com/Fourdee/DietPi

Huawei MediaPad T1 7.0 LTEが海外でHonor LTE 7.0として登場


Spreadtrum社のSoC SC9830i搭載で登場した「Huawei MediaPad T1 7.0 LTE」ですが、海外では「Huawei Honor LTE 7.0″」として登場したようです。

SC7731搭載の「Huawei Honor 3G 7.0″」に対するアップグレードモデルとして、SC9830i搭載の「Huawei Honor LTE 7.0″」が登場した、との「Huawei MediaPad T1 7.0」と「Huawei MediaPad T1 7.0 LTE」の関係性そのままのプレスリリースがSptreadrum社で公開されていました。
Spreadtrum LTE SoC Platform Powers Huawei Tablet

改造ネタを探す時は「Huawei Honor LTE 7.0″」で探すといいかもしれません・・・
とはいえ、現状だと、他のHonorシリーズの検索結果が多すぎて探すのが大変そうですけどね

2016/11/15 20時ごろにOrange Pi PC2で動くLinuxイメージが公開されました


なかなか公開されなかったOraneg Pi PC2向けのLinuxイメージですが、2016/11/15 20時頃にようやく公開されました。
公式ダウンロードページ」にてDebian ServerとDebian xfceが公開されています。
ただ、どちらも、Google Driveにリンクが張られているように見えますが、そちらの実態はOrange Pi Mini2向けで、使えません。
Baidu側のリンクからダウンロードする必要があります。

しかし、Debian_Desktop_jessie_xfce4_PC2.img.xzの方は475.4MBと、Baiduのブラウザダウンロード上限容量を超えてしまっており、専用ツールを使ってダウンロードする必要があります。
Debian_Server_jessie_PC2.img.xzの方は76.6MBと小さめなので、なんとかブラウザダウンロードが可能です。

私も現在ダウンロード中なので、ほんとに使えるかどうかはわかりません。
2016/11/16 0:40追記

Debian_Desktop_jessie_xfce4_PC2.img.xz のダウンロードが完了し、起動試験を行いました。
HDMIにブートロゴ・ブートメッセージは表示されず、電源ONすると黒い画面のまましばらく待つと
いきなりX-Windowのログイン画面が表示されます。
ダウンロードページには「user(root), password(orangepi)」と書いてありますが
試したところ「user(orangepi), password(orangepi)」であるようです。(ユーザ名:orangepi、パスワード:orangepi)

また、標準状態ではイーサケーブルをつないでもリンクアップしませんでした。
ターミナルを開き「sudo dhclinet eth0」を実行することで、リンクアップし、DHCPでのIP取得が行われました。
いくつか、まだ初期設定に問題があるようです

設定を見直すと「/etc/network/interfaces」ファイルに問題がありました。

# interfaces(5) file used by ifup(8) and ifdown(8)
# Include files from /etc/network/interfaces.d:
# source-directory /etc/network/interfaces.d

3行目の「source-directory」の前に「#」があるため、設定が反映されていませんでした。
下記のように書き換えて再起動すればOKです。

# interfaces(5) file used by ifup(8) and ifdown(8)
# Include files from /etc/network/interfaces.d:
source-directory /etc/network/interfaces.d

また、バグとして1000Mbpsでリンクアップしない、というものがあります。
元となるOrange Pi H5用SDKの11/13あたりで修正が行われてるっぽいですが、この配布物には含まれていません。


2016/11/16 追記
dropboxに転載した:Debian_Desktop_jessie_xfce4_PC2.img.xz
無料アカウントなので1日当たり20GB分しかダウンロードできません。
それを超えると24時間ダウンロードできなくなります


2016/11/17追記

いつものコマンド出力結果を忘れていたので追加

orangepi@Orangepi:~$ cat /proc/cpuinfo
Processor       : AArch64 Processor rev 4 (aarch64)
processor       : 0
processor       : 1
processor       : 2
processor       : 3
Features        : fp asimd aes pmull sha1 sha2 crc32
CPU implementer : 0x41
CPU architecture: AArch64
CPU variant     : 0x0
CPU part        : 0xd03
CPU revision    : 4
Hardware        : sun50iw2
Serial          : 34005035c120182f0b4c
orangepi@Orangepi:~$ cat /proc/meminfo
MemTotal:        1003192 kB
MemFree:          866332 kB
Buffers:            7100 kB
Cached:            58304 kB
SwapCached:            0 kB
Active:            39296 kB
Inactive:          51976 kB
Active(anon):      26144 kB
Inactive(anon):     6420 kB
Active(file):      13152 kB
Inactive(file):    45556 kB
Unevictable:           0 kB
Mlocked:               0 kB
SwapTotal:             0 kB
SwapFree:              0 kB
Dirty:                40 kB
Writeback:             0 kB
AnonPages:         25840 kB
Mapped:            13676 kB
Shmem:              6700 kB
Slab:              20040 kB
SReclaimable:       8232 kB
SUnreclaim:        11808 kB
KernelStack:        3616 kB
PageTables:          572 kB
NFS_Unstable:          0 kB
Bounce:                0 kB
WritebackTmp:          0 kB
CommitLimit:      501596 kB
Committed_AS:      96440 kB
VmallocTotal:   251658176 kB
VmallocUsed:       16080 kB
VmallocChunk:   251641916 kB
orangepi@Orangepi:~$ uname -a
Linux Orangepi 3.10.65 #3 SMP PREEMPT Tue Nov 15 09:46:50 CST 2016 aarch64 GNU/Linux
orangepi@Orangepi:~$
orangepi@Orangepi:~$ df -h
Filesystem      Size  Used Avail Use% Mounted on
/dev/mmcblk0p2  1.1G  934M   75M  93% /
devtmpfs        482M     0  482M   0% /dev
tmpfs           490M     0  490M   0% /dev/shm
tmpfs           490M  6.6M  484M   2% /run
tmpfs           5.0M  4.0K  5.0M   1% /run/lock
tmpfs           490M     0  490M   0% /sys/fs/cgroup
/dev/mmcblk0p1   50M   13M   38M  26% /boot
tmpfs            98M     0   98M   0% /run/user/1000
orangepi@Orangepi:~$

Cpufreq関連

root@Orangepi:/home/orangepi# cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_available_governors
interactive conservative ondemand userspace powersave performance
root@Orangepi:/home/orangepi# cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_available_frequencies
480000 648000 720000 816000 912000 1008000 1104000 1152000 1200000
root@Orangepi:/home/orangepi#

CPUfreq のポリシーと速度のチューニングより

root@Orangepi:/home/orangepi# for file in /sys/devices/system/cpu/cpu*/cpufreq/c
puinfo_*; do echo = $file =; cat $file; done
= /sys/devices/system/cpu/cpu0/cpufreq/cpuinfo_boot_freq =
1008000
= /sys/devices/system/cpu/cpu0/cpufreq/cpuinfo_cur_freq =
1008000
= /sys/devices/system/cpu/cpu0/cpufreq/cpuinfo_max_freq =
1536000
= /sys/devices/system/cpu/cpu0/cpufreq/cpuinfo_min_freq =
480000
= /sys/devices/system/cpu/cpu0/cpufreq/cpuinfo_transition_latency =
2000000
= /sys/devices/system/cpu/cpu1/cpufreq/cpuinfo_boot_freq =
1008000
= /sys/devices/system/cpu/cpu1/cpufreq/cpuinfo_cur_freq =
1008000
= /sys/devices/system/cpu/cpu1/cpufreq/cpuinfo_max_freq =
1536000
= /sys/devices/system/cpu/cpu1/cpufreq/cpuinfo_min_freq =
480000
= /sys/devices/system/cpu/cpu1/cpufreq/cpuinfo_transition_latency =
2000000
= /sys/devices/system/cpu/cpu2/cpufreq/cpuinfo_boot_freq =
1008000
= /sys/devices/system/cpu/cpu2/cpufreq/cpuinfo_cur_freq =
1008000
= /sys/devices/system/cpu/cpu2/cpufreq/cpuinfo_max_freq =
1536000
= /sys/devices/system/cpu/cpu2/cpufreq/cpuinfo_min_freq =
480000
= /sys/devices/system/cpu/cpu2/cpufreq/cpuinfo_transition_latency =
2000000
= /sys/devices/system/cpu/cpu3/cpufreq/cpuinfo_boot_freq =
1008000
= /sys/devices/system/cpu/cpu3/cpufreq/cpuinfo_cur_freq =
1008000
= /sys/devices/system/cpu/cpu3/cpufreq/cpuinfo_max_freq =
1536000
= /sys/devices/system/cpu/cpu3/cpufreq/cpuinfo_min_freq =
480000
= /sys/devices/system/cpu/cpu3/cpufreq/cpuinfo_transition_latency =
2000000
root@Orangepi:/home/orangepi#

旧タイトル:2016/11/14 19時現在Orange Pi PC2で動くLinuxイメージは公開されていません
2016/11/14 19時現在、Orange Pi PC2で動作するLinuxイメージは公開されていません。

armbianでは、Allwinner A64搭載のPine64に対応しているので、対応も早いのかな?と思いきや
Orange Pi Zeroや他のボードへの対応作業が忙しいので後回しにします、と宣言されてしまっています。
(発言のソース:Armbian for OrangePi PC2, AllWinner H5の2つめの発言)

Orange Pi公式でOrange Pi PC2用のSDKだ、といって配布しているものは、微妙に不完全だったようで、上記のスレッドでも「There is no Linux SDK.」とか書かれています。

時系列的にはソレを受けてだと思われるのですが、Allwinner H5用SDKを元にOrange Pi PC2向けの修正を加えたOrange Pi PC2用のSDKが「https://github.com/orangepi-xunlong/OrangePi_H5SDK」にて公開されました。

これでLinux向けのkernelがコンパイルできるようになってるのか?
試行錯誤が行われていきそうです。

なお、上記のSDKファイルを調べると、Orange Pi PC2のアーキテクチャは「sun50iw2p1」であるようです。


2016/11/15追記
linux-sunxiのIRCチャネルで、armbianの開発をやってる1人のtkaiserさんが、Debianイメージを公開しました。
が・・・うちの環境で試した限りではHDMI出力ができてない、というのと
一般公開してるような感じではないので、詳細の紹介はやめておきます。
なお、Linux kernelは 3.10.65となっていました。

追記2
Orange piの公式フォーラムに管理者のzhao_stevenさんが「Orange Pi PC2 Debian server prerelease」として投稿しているものが出所でした。

Orange Pi PC2が届いたのでAndroidイメージで動かしてみた


11月5日に発注したOrange Pi PC2が8日経過した今日、11/13に届いたので早速電源を入れてみた。

パッケージングは、Orange Piの標準サイズの箱に入ってきました。
opipc2-a

旧機種のOrange Pi PC(箱入り)と並べるとこんな感じ。
opipc2-c
(左:非純正ケースのOranegi Pi PC、真ん中:純正ケースのOranegi Pi PC、右:Oranegi Pi PC2)

開けた状態だとこんな感じ
opipc2-b

基板サイズ、コネクタ配置はOrange Pi PCと同じであるため、ケースを流用することが可能です。

さて・・・電源を入れましょう

とはいえ、今回、公式でダウンロード可能なOSは、Android/AOSPベースのOrange OSのみ。
しかもGoogle Driveのリンクは死んでおり、Baiduのリンクのみという状態。

まぁ、Baiduからダウンロードして、書き込みました。

Orange Pi系にAndroidイメージを書き込む場合の注意点としては、ddコマンドなどでは書き込めず、
Windows上で動作するPhoenixCardという専用ツールを使って書き込む必要があります。
PhenixCardのダウンロード場所と使い方

このツールはWindowsのAdministrator権限で実行する必要があります。
また、かなり書き込みに失敗しやすいツールです。
何度もトライしてみてください。

ただ、microSDによっては、どうしても書き込みが失敗する、ということもあるようです。
うちでは、SUMSUNGのEVO 32GBが新品にもかかわらず失敗し続けるという事態が起きました。
おそらくは個体差なんでしょうけど、どうしてもうまく行かない場合は別のmicroSDを試してみるなどしてください。
また書き込める場合でも、非常によく失敗します。

10回ぐらい再試行して書き込みが完了しました。
書き込みに成功した場合は下記の様になります。
2016-11-13

書き込んだmicroSDをOrange Pi PC2に入れて電源ON。
電源コネクタはEIAJ#2というタイプで、しばらく前だとPSP用の電源ケーブルとして100円ショップに並んでいたりしました。

秋葉原で探す場合は、千石電商で、極性統一#2、内径φ1.7、外径:φ4.0のDC05-4017,DC-4017を当たりを探しましょう

もしくはジャンク屋あたりを回ると富士通の周辺機器用で使われていた5V 3Aぐらいのアダプタが見付かるかもしれません・・・

さて、電源を入れるとまず、下記のH5ロゴが表示されます。
opipc2-1

1分ちょっと表示したあと、起動音と共にAllwinnerロゴに変わります。
opipc2-2

3分ぐらい表示したあと、30秒ぐらい真っ暗の画面になり、その後下記のAndroid画面が表示されます。
opipc2-3

起動までに約5分かかる、という感じです。

なお、画面が映らない場合、まずは、基板上の状態を確認します。
正常に動作していれば下記の赤枠部分にあるLEDが赤く点灯しています。
opipc2-da

点灯していない場合はmicroSDにイメージが正常に書き込まれていない可能性が高いです。
念のためさしなおして再挑戦、それでも駄目ならPhenixCardツールで再度書き込みを行ってください。

起動したOrange OS/Androidは、見ての通りに中国語表記です。

日本語表記にするためには右下の赤枠部分を選んで設定画面に行きます。
opipc2-3a

次に、下の赤枠を選んで言語設定画面に行きます
opipc2-4

同じく赤枠を選びます。
opipc2-5

一番上に日本語がありますので選択します。
opipc2-6

日本語の画面になります。
opipc2-7

さて・・・・・・
Androidが起動しましたが、実は、これ
Google Playがインストールされていません。

えぇ・・・入っていません。

そして、公式としてGoogle Playのインストール手法について、特には案内していません。
ランチャーにいろいろアプリアイコンがありますが、基本Playストアからインストールしろ、となっているわりに、なにもしてくれません。

つまり・・・現状、たいしたことには使えません・・・
Playストアが無くてもインストールできるapkファイルで遊ぶしかないかんじです。

とりあえずLinuxが出てくるまでは使い道がない感じですね…

Android 5.1
Kernel Version 3.10.65

Orange Pi PCなどAllwinner H3向けのOpenELECについて(2016/11/08版)


Linuxをメディアプレイヤーとして使う方法として、「OpenELEC」というメディアプレイヤーに特化したディストリビューションがあります。
(2016年に分裂騒動があり「LibreELEC」が派生しています)

これをOrange Pi PCなどのAllwinner H3向けに移植したものについて、去年「Orange Pi PCをメディアプレイヤー(OpenELEC)にする」にて紹介しました。

公式スレッド「Openelec Build for OPI PC and 2 now with HW decoding
各機種用イメージ配布場所「Latest prebuilt images
初心者向けQ&A「[FAQ] Openelec OPi for beginners

あれから約1年。
久しぶりに使ってみました。
今回はOrange Pi Oneで実験です。

・初回起動は時間がかかる
 ロゴ画面がずっと変わらず表示されるが、正常動作中です。
 とりあえず5分待ちましょう

・ヒートシンクは必須。ファン付けるの推奨
 フォーラムに「heatsink strongly recomended」と書かれていますが
 ヒートシンクを付けていてもめちゃくちゃ発熱しています。
 ちゃんと冷やさないと熱で死にそうです。

・起動直後の設定は英語表示
 日本語表示にするためには「Linux(ラズパイ/OrangePiなど)のKodiで日本語を表示させる方法」で設定すること

・起動直後の設定だとHDMI経由で音が鳴らない
 初期設定では、音声出力がアナログオーディオとなっているためHDMI接続していても音声が出てこない。
 Kodiの「設定」-「システム」-「オーディオハードウェア」にて
 「オーディオ出力デバイス」を「HDMI」に変更することで、HDMI経由で音声出力される。

・動画再生の一部が変?
 DVDサイズの動画を出力したところ、本来の画質から落ちた状態のものを引き延ばした感じで表示される
 設定変更箇所があるのか分からなかった。

・HDMI経由のリモコン操作が怪しい
 2016/08/16以降のバージョンからHDMI CEC対応になっているのだが動きが怪しい
 今回、試した際は、初回ブートし、途中までは動いていたものの、突如動作しなくなり
 それ以後は電源入れ直しても動いていない状態となりました。
 自動アップデート関連でなにかあったのだろうか?
 FAQにも書いてありますが、動く環境と動かない環境があるようで、作者の方ではお手上げなようです。

 なお、HDMIのリモコンが動かない場合は、マウスで操作するしかありません。
 もしくは、赤外線リモコンを登録して使う、という方法もあります。