ラズベリーのパイが無ければ…バナナのパイを食べてみる
PIN64+と順序が逆になってしまいました
実はBeagleBoneを弄ったあと、やはり転がってたBananaPiM2Zeroを弄っていたのでした。
搭載されているCPUはAllwinnerのH3。実はM2Zero、当初はH2+が載ってていつの間にかH3に置き換わった?模様
完全にピンコンパチだし、大抵のソフトもそのまま動く
このSBC、載ってるメモリが512MByteなので最新のLinuxからは正式サポートが無かったり、と💦
Volumio3は箸にもひっかからない💦
正式ではなくてもArmbianをビルドしてみました
毎回同様、WinPC上のHyper-Vで動くDebianなどにクロス環境を構築し、
ここからリポジトリをクローンします
>sudo ./compile.sh
メニューが出たら「Full OS Image」→「Show a kernel configuration」(お好みで。変えなくても可→
一番下の「<Show CSC/WIP/EOS/TVB>」(正式サポート外)で、「BananaPiM2Zero」を選択
後はお好みで進めます
で、出来たイメージをmicroSDに書き込み、電源を入れ
シリアルコンソールで初回起動時の設定を進めればOK
さてArmbianが起動したところで何に使おうか…
上の写真には既に搭載されていますが、外部クロック(Si5351A)と外部DAC(PCM5102A)を搭載してmpdを動かそうと
もちろん内蔵PLLのジッタ多いクロックは排除します
で、問題なのはH3…MCLKがピンに出ていません
仕方ないのでBCLKとLRCLKだけ外部から供給(もちろんDACにも)、MCLKはDACにだけ供給
(順番が逆ですが)PINE64+で使っているsun8i-i2s.cを多少改変してEXT3clk設定した時にもMCLKは内部動作する様にしておきます
Armbianビルドのkernel configuration(2回目のメニュー)で、デバイスドライバのクロックの中でSi5351aモジュール、
DACモジュールのPCM510xを有効にしておく必要もあります
I2Sモジュールのsun4i-i2sは無効にするか、組み込まれない様に<m>か<n>に
codecドライバは、PINE64+同様、_tkz_氏の開発成果を利用させて頂きました
sun8i-i2s.cとi2s_mfdl.cは、BananaPiM2Zero実機でビルドしてもあまり負荷にはなりませんがカーネルソースは必要、
そのダウンロードにはそこそこ時間がかかります(armbian-configで実行可能
出来上がったドライバ2つをモジュールフォルダに投入してsudo depmod -a、そしてデバイスツリーオーバーレイ追加(armbian-add-overlay)
teratermのフォントを弄って、ちょっとレトロ感w
正常に認識したようです
あとはmpdの設定を行えばDACからの音楽再生が出来ます
追記:
BananaPiM2ZeroでのI2S関連信号です
MCLK 出てない
BCLK CON-27
LRCLK CON-28
DOUT CON-40
(おまけ SPDIF-OUT CON-37
最近のコメント