/ 雑記帳

RaspberryPi5 rt-kernelのBuildにやっと成功した!

昨日、○どさんのアドバイスを貰ってやっと自分環境で
RaspberryPi5用rt-kernelのBuildに成功したぁ〜
自分が所有する最速?PCでも一時間程度時間がかかるので
力任せの trial and error というワケにもいかなくて停滞していたのだが...
その結果としてやはり768000Hzまでのパッチを当てても
352800Hzまでにしかならなかった...
この結果はrt-kernelではない通常kernelでも同じだったので
やはりそうなのか...となった。

ネット上にはRaspberryPix用kernel再構築の記事はいくつもあるのだが
最新であるRaspberryPi5用且つ日本語のものは見つけられなかった。
加えて大筋のやり方は書いてあるが
付随する細かいところはそれぐらい分かるでしょ!
見たいな感じでやってみては失敗を繰り返して...(笑)

自分環境はArchlinux上にクロスコンパイル環境を作ってkernelのコンパイルまでを行い
RaspberryPi5本体へ成果物を移す作業及びモジュールをインストールする作業は
sshfs を使ってクロスコンパイルを行ったディレクトリーを
RaspberryPi5内のディレクトリーへマウントして行っている。
LANを通してコピーすると余りに時間がかかってしまうからだ。
この方法の欠点はRaspberryPi5内にもクロスコンパイル環境を作らなければいけない事だ(笑)
で!今回ネットを徘徊していたら直接メディアに向けてインストール出来るコマンドオプションを発見!

KERNEL=kernel_2712 make modules_install INSTALL_MOD_PATH=/media/manta/root/ ¥
ARCH=arm64 CROSS_COMPILE=/usr/bin/aarch64-linux-gnu-

たぶんこれは/media/manta/root/ この部分に
インストールメデイアのrootパーテーションを指定すると思われる!
今度試して見ようと思う。

— posted by くま at 08:38 am  

音が楽しい 良いと思う!

うどさんに作っていただいた例のイメージはRaspberry Pi Imagerで
USBメモリーに焼いてもOK!ヤリィ!m(_ _)m

1.aptでmpd upmpdcli をインストール /etc/mpd.conf /etc/upmpdcli.confを設定
2./boot/firmware/config.txt へ併記の形でデバイス名を入れる。再起動...
3.upnp環境があればこれだけでUPnP audio Control Point系ソフトで再生可能に!

まぁ細かい事は気にしないで...(768000Hzは?)
RaspberryPi5の高性能を楽しむのも良いのでは...

— posted by くま at 11:00 pm  

RaspberryPi5 今までの設定で音が出るのかぁ?!(>ω<)

事のはじまりはRaspberryPi5でPCIeカードを動作させることが可能になった事だった。
実際にサウンドカードを刺してみるとモジュールがロードされるのにalsaでは認識されない不具合が発生した!
確認のためその環境のままRaspberryPi4で問題なく動作していたI2S出力可能なHATを取り付けてみると
あれ!I2Sデバイスを認識しない!という困った状況が発生!そこから色々弄り始めたが自己破壊モードに入ったり(笑)
何度もやり直しテストが続いた...とにかく思いつく限りのキーワードでネットを検索していたら
前記事を見つけてこれだ!って思った。

この一行が鍵だった!!
dtoverlay=hifiberry-dacを併用すると有効になる
kkuma@raspberrypi:~$ uname -a (※通常のImagerでインストール可能なラズビアンで成功したのが嬉しい!)
Linux raspberrypi 6.6.20+rpt-rpi-2712 #1 SMP PREEMPT Debian 1:6.6.20-1+rpt1 (2024-03-07) aarch64 GNU/Linux

kkuma@raspberrypi:~$ cat /boot/firmware/config.txt

# Enable audio (loads snd_bcm2835)
dtparam=audio=on
dtparam=i2s=on
dtoverlay=hifiberry-dac
dtoverlay=i2s-dac

kkuma@raspberrypi:~$ aplay -l
**** ハードウェアデバイス PLAYBACK のリスト ****
カード 0: vc4hdmi0 [vc4-hdmi-0], デバイス 0: MAI PCM i2s-hifi-0 [MAI PCM i2s-hifi-0]
サブデバイス: 1/1
サブデバイス #0: subdevice #0
カード 1: vc4hdmi1 [vc4-hdmi-1], デバイス 0: MAI PCM i2s-hifi-0 [MAI PCM i2s-hifi-0]
サブデバイス: 1/1
サブデバイス #0: subdevice #0
カード 2: sndrpirpidac [snd_rpi_rpi_dac], デバイス 0: RPi-DAC HiFi pcm1794a-hifi-0 [RPi-DAC HiFi pcm1794a-hifi-0]
サブデバイス: 0/1
サブデバイス #0: subdevice #0

追加でソースからalsacapコマンドを追加して見たが

kkuma@raspberrypi:~$ alsacap
*** Scanning for playback devices ***
Card 0, ID `sndrpirpidac', name `snd_rpi_rpi_dac'
Device 0, ID `RPi-DAC HiFi pcm1794a-hifi-0', name `RPi-DAC HiFi pcm1794a-hifi-0', 1 subdevices (1 available)
2 channels, sampling rate 8000..192000 Hz
Sample formats: S16_LE, S24_LE
Buffer size range from 32 to 131072
Period size range from 16 to 1024

Subdevice 0, name `subdevice #0'

拡張kernelを作りたいが...作リ方が分からない...

※注意事項 
自分の環境はサウンドデバイスを使用せずRaspberryPi5のI2S出力ピンから
直接I2S信号を取り出している。
その後にAK4137基板でMCLKを加えDACへ送信している状態で音出し成功...

— posted by くま at 04:55 pm  

 

Interface 5月号 ラズベリーパイ5大研究

i2sデバイスが使える様にならないので
「Interface 5月号 ラズベリーパイ5大研究」を仕方がなく購入して
I2S関連部分だけ読んでみました。(笑)
なるほどrapi4までとはIO関連部分が違うのか!
新たに搭載されたI/O chip である RP1 に機能が移行(I2Sも含む)しているから
I2Sの扱いは今までどうりでは動作不可なんだぁ〜!
という事が分かった(早く買えよ
参考URL Raspberry Pi 5のRP1に搭載されているPIOは今のところ簡単には使えないという話

で!i2s対応関連では volumio OSが最先端? 
見たいな事が書いてあったので早速試して見ました。
おぉ久しぶりにi2s-DACデバイスが表示されるのを見ました(笑)
音もまずまずです。
たぶん5A仕様の電源で動かす効果なのか太くて力が漲る音がするのでは?(個人的見解
これなら仕様が明確になってi2sの使い方が何処かで公表されるまで使えそうだと思いました。

volumio-1


かなり以前にvolumioのカーネルを入れ替えて遊んでいた時期があったなぁ...
rt-kernel化とか帯域を最大限まで広げるとかやりたくなるが体力がぁ 今は無い残念!
--------------------------------------------------------------------------------------------
追記 2024/04/04
ここに知りたい事が書いてあった!うーんRaspberryPi5はAudioに適さないかも

/boot/config.txtの扱い

いつの間にやら/boot/firmware/config.txtへのリンクでもなくなった。
/boot/config.txtを編集してはいけない。
/boot/firmware/config.txtを編集すること。
仕様がころころと変わる。何が正しいのかわからない。

dtoverlay=audremapが有効にならない

RPI4の場合
$ pinctrl get 12,13
12: a0 pn | lo // GPIO12 = PWM0_0
13: a0 pn | lo // GPIO13 = PWM0_1
RPI5の場合
$ pinctrl get 12,13
12: no pd | -- // PIN32/GPIO12 = none
13: no pd | -- // PIN33/GPIO13 = none
ソースを調べたところoverlay_map.dtsでBCM2712はaudremapを外されている。
PWMオーディオは終わった。
RP1用PWMオーディオのドライバを作ればよいのだが大変な作業だ。
なぜかPRI5用にsnd-bcm2835ドライバが残っている。これをRP1に書き換えればよい。

dtparam=i2s=onの動きが異なる

RPI4の場合、有効になる
$ pinctrl get 18-21
18: a0 pd | hi // GPIO18 = PCM_CLK
19: a0 pd | lo // GPIO19 = PCM_FS
20: a0 pd | lo // GPIO20 = PCM_DIN
21: a0 pd | lo // GPIO21 = PCM_DOUT
RPI5の場合、有効にならない
$ pinctrl get 18-21
18: no pd | -- // PIN12/GPIO18 = none
19: no pd | -- // PIN35/GPIO19 = none
20: no pd | -- // PIN38/GPIO20 = none
21: no pd | -- // PIN40/GPIO21 = none
dtoverlay=hifiberry-dacを併用すると有効になる
$ pinctrl get 18-21
18: a2 pn | lo // PIN12/GPIO18 = I2S0_SCLK
19: a2 pn | lo // PIN35/GPIO19 = I2S0_WS
20: a2 pn | lo // PIN38/GPIO20 = I2S0_SDI0
21: a2 pn | lo // PIN40/GPIO21 = I2S0_SDO0
ドライバを併用しないとI2Sが有効にならない。
RP1の影響と思われる。
--------------------------------------------------------------------------------------------

— posted by くま at 12:11 pm  

rAudio or Volimio? for RaspberryPi5

rAudio or Volimio 自分の選択基準は(イジれるでは無くて)音はどちらが好みか?(笑)
今!メインシステムでの試聴をしているが
残念ながらVolimioの方が低音域の分解能が高い様に感じていて...こちらがメインになりそうだ。
プラシーボ全開なのか?ただのVolumio(失礼)なのに凄い音が出ている様に感じている。
5V/5Aがかなり効いている様に思う。余裕すぎる電源がAudioの基本だと考える古い自分である(笑)

— posted by くま at 10:02 am  

これもRaspberryPi5に対応してる様な...しかも...

rAudio


参考URL  rern /rAudio
ベースがArchlinuxなのが好ましいです(笑)
元々はvolumioの開発に参加していた方々がリリースしているらしいです。
volumioと比較して何の小細工も無いのが良い。
なによりUSBメモリーへ焼いて使えます。(SDカードは突然壊れるので嫌いです。)
で!使用DACの設定をi2s-dacにするればHAT基板を取り外しても認識状態のままです。

NEW-5



— posted by くま at 02:05 pm  

RaspberryPi5 現在地

3歩進んで4歩下がる的状況であります(笑)
電源アダプターについてはSSD起動メインで考えているので
ワーニングが出る状況は許容できませんが
デジキーに注文して純正アダプターを購入するのも大げさかなぁ〜とかで
アマゾンで販売されているちょっと怪しいアダプターを購入しました。
PCIeコネクターにM.2(SSD)を取り付けるアダプターを販売している会社製です。
(型番を明記するのも何だかなぁなのでこんな書き方にm(_ _)m)

現状USB経由で音出ししていますがパワー感たっぷりの音です。
まぁCPUの実力が出ているのでしょう(笑)

今、一番知りたいのはどうすればdtbファイルのデバイスを使える様になるのか?ですね。

Screenshotfrom2024-03-2916-49-59


Screenshotfrom2024-03-2916-50-18


このメニューでenableにしてもI2Sデバイスをalsaは認識してくれない??
とりあえず
動作している環境の完全なバックアップを取れる様になるまでは冒険は控える事にします。
起動しなくなってかなり凹んだので(笑)

追記 
現状使用しているM.2は 
エッセンコアクレブ KLEVV SSD 256GB CRAS C710 M.2 Type2280 PCIe3×4 NVMe 3D TLC NAND Flash採用というモノです
ウエスタンのチップを採用したSSDは動作しないという変なPCIe→M.2アダプターを使う場合には選択肢はかなり狭くなる様に思われます。
一応型番は書きましたが 保証の限りではありません。念の為!

— posted by くま at 01:14 pm  

撤退 悲報 RaspberryPi5は文鎮化したが...復活!

ファームウエア編集を誤り二度と起動出来なくなりました。
SSDの6だけで書き込んだら...( BOOT_ORDER=0xf6 )
OSが起動していない状態ではファームを変更出来ないですよね...
何だかなぁ....
書き換えコマンドに eeprom というタームが入っているので
純?ハード的に修理するならば
もう一台RaspberryPi5を購入して基板上のeepromを外して
起動しない方に移植直後に起動して起動したままeepromを外して
内容が誤っているeepromを取り付けて編集をやり直せばOKだと思うが(爆)
やらないと思う。
---------------------------------------------------------------------------
追記...
復活の呪文は何処かにあるんじゃないかと諦め切れずに探したら
参考になる記事を見つけました!
参考URL raspi4 が起動しなくなった(EEPROMエラー)のでなおした。
でもこれはRaspi4に関するものなのでRaspi5用のものは無いか?ネットを徘徊...見つけました!
rpi-boot-eeprom-recovery-2024-02-16-2712
これをdownloadしてRaspberry Pi ImagerでSDカードに書き込んで取り付けて起動させると
前述の記事の内容のとおり画面全体がグリーン色になって止まりました。そのまま電源を入れ直すと
SSDから起動出来る様になっていました。苦しい何日間かが終わりました(笑)

— posted by くま at 10:55 pm  

SSDからubuntuを起動する様にして出音を確認できたが?

root@RaspberryPi5:~# aplay -l
**** ハードウェアデバイス PLAYBACK のリスト ****
カード 1: D20 [DIYINHK USB Audio 2.0], デバイス 0: USB Audio [USB Audio]
サブデバイス: 0/1
サブデバイス #0: subdevice #0

USBデバイスはもちろん認識もして良い音を出せるが?
I2S出力を持ったデバイスをalsaが認識しないのが??
余談...
RaspberryPi5の公式OS?を何度もインストールし直してイジっていたが
とにかく遅くてイライラが酷くなってubuntuを入れてみたら超快適である。
CPUの能力が2倍でメモリーが8Gなんだから速く無いと変だよね(笑)
まぁ変な事を書くと
この環境なら前回動作しなかったサウンドカードが動作する様な気がしてる。
簡単そうに書いているが(笑)
ubuntu にupmpdcliをインストールするのは結構な作業量になる。
libnpupnp-6.1.1.tar.gz
libupnpp-0.26.3.tar.gz
upmpdcli-1.7.9.tar.gz
aptでmpdはOKだがその他にこの3つをソースインストールして設定ファイルを整える必要がある。
ubuntuに開発環境パッケージを入れてコンパイルする。
足りないパッケージは./configureをすれば都度エラーで表示されるので
それら根気強くインストールして消していく。かなり面倒くさいし時間がかかる。

— posted by くま at 11:49 pm  

 

BOOT_ORDERの設定について

BOOT_ORDERの設定について
ブートローダーを更新
# rpi-eeprom-update

編集コマンド
# rpi-eeprom-config --edit

[all]
BOOT_UART=1
POWER_OFF_ON_HALT=0
BOOT_ORDER=0xf461

ブートオーダーの詳細は
0x1 SD CARD. SDカードブート
0x2 NETWORK ネットワークブート
0x4 USB MSD USBブート
0x6 NVME PCIe接続のNVMe SSDブート(Raspberry Pi 5)
0xf RESTART BOOT_ORDERの最初から繰返す

BOOT_ORDERの内容は右端から順に実行されるので
例えば0xf461の場合は
SDカードブート→NVMeブート→USBブート となる。

— posted by くま at 10:28 am  

<< . >>
SMTWTFS
       
 
























T: Y: ALL: Online:
ThemePanel
Created in 0.0950 sec.