• Raspberry Pi 5

    @kkumax
    RaspberryPi5にシリアルコンソールを接続して見ました。
    とても安定していてssh接続でCLI操作ならこちらの方が良いと思います。
    シリアル.jpg

  • みなさん

    カーネルが少しバージョンアップしたので6.6.30-rt30にしました。
    clangでビルドしてあります。
    RPi4/5でi2s-dacで768KHz出るようになってます。
    RPi5でigb/igcが使えるようにしてあります。
    よろしければお試し下さい。
    https://udo.sakura.ne.jp/aoe/2024-03-15-raspios-bookworm-arm64-lite-clto-aoe.img.xz

  • @udosan さん
    何時もありがとうございます。
    どこか?自分が間違っていると思いますが...
    DSD512まで再生可能になっている様な??
    音は力強さに分解能も良く素晴らしいと思います。

    root@raspberrypi:~# cat /proc/asound/card0/pcm0p/sub0/
    hw_params info prealloc prealloc_max status sw_params
    root@raspberrypi:~# cat /proc/asound/card0/pcm0p/sub0/hw_params
    access: RW_INTERLEAVED
    format: S32_LE
    subformat: STD
    channels: 2
    rate: 1536000 (1536000/1)
    period_size: 512
    buffer_size: 65536

  • @kkumax さん
    ありがとうございます。
    1536KHzとかは単に定義を書いているだけで実際に音が出るかは全く試してないです😅

  • @udosan さん
    Raspberry Pi 5で@udosanが発言 :

    1536KHzとかは単に定義を書いているだけで実際に音が出るかは全く試してないです

    現状、変換無しでこの周波数を試すにはAK4499EX DAC-ICを使った機器でしか
    試す事が出来ないと思います。
    自家用システムはI2S信号用デジタルチャンネルデバイダーを使っていて
    PCM192KHzまでしか対応していませんがプレーヤー部分の高性能化は
    何かしらのメリットがあるように感じています。

  • @udosan さん
    >1536KHzとかは単に定義を書いているだけで実際に音が出るかは全く試してないです

    申し訳ないのですが 1536000Hzまで拡張するために追加する部分が良く分からないので
    教えていただけないでしょうか。
    特に linux/include/sound/pcm.hのこの部分です。
    1411200 と 1536000 で良いですか?
    (何時ものやってみたい病ですm(_ _)m)

    $ diff linux/include/sound/pcm.h linux.ori/include/sound/pcm.h
    122,125d121
    < #define SNDRV_PCM_RATE_705600 (1U<<15) /* 705600Hz /
    < #define SNDRV_PCM_RATE_768000 (1U<<16) /
    768000Hz /
    < #define SNDRV_PCM_RATE_1411200 (1U<<17) /
    1411200Hz /
    < #define SNDRV_PCM_RATE_1536000 (1U<<18) /
    1536000Hz */
    138,144c134,136
    < #define SNDRV_PCM_RATE_8000_384000 (SNDRV_PCM_RATE_8000_192000|SNDRV_PCM_RATE_352800|
    < SNDRV_PCM_RATE_384000)
    < #define SNDRV_PCM_RATE_8000_768000 (SNDRV_PCM_RATE_8000_384000|SNDRV_PCM_RATE_705600|
    < SNDRV_PCM_RATE_768000)
    < #define SNDRV_PCM_RATE_8000_1536000 (SNDRV_PCM_RATE_8000_768000|SNDRV_PCM_RATE_1411200|
    < SNDRV_PCM_RATE_1536000)

  • @kkumax さん
    めっちゃ見落としてました。
    私が加えているのはこんな感じです。同じですかね。

    #define SNDRV_PCM_RATE_705600		(1U<<15)	/* 705600Hz */
    #define SNDRV_PCM_RATE_768000		(1U<<16)	/* 768000Hz */
    #define SNDRV_PCM_RATE_1411200		(1U<<17)	/* 1411200Hz */
    #define SNDRV_PCM_RATE_1536000		(1U<<18)	/* 1536000Hz */
    
    #define SNDRV_PCM_RATE_8000_768000	(SNDRV_PCM_RATE_8000_384000|\
    					 SNDRV_PCM_RATE_705600|\
    					 SNDRV_PCM_RATE_768000)
    #define SNDRV_PCM_RATE_8000_1536000	(SNDRV_PCM_RATE_8000_768000|\
    					 SNDRV_PCM_RATE_1411200|\
    					 SNDRV_PCM_RATE_1536000)
    

    あとsound/core/pcm_native.cも変更しています。

  • @udosan さん
    今コンパイルが終わった所です。
    これから組み込んで動作確認です。
    ありがとうございます。m(_ _)m

    内容は同じなので多分OKだと思います。
    自分が何もやらかしてなければ(笑)

    root@raspberrypi:~# uname -a
    Linux raspberrypi 6.6.30-rt30+ #1 SMP PREEMPT_RT Sat May 25 15:48:46 JST 2024 aarch64 GNU/Linux
    root@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..1536000 Hz
    Sample formats: S16_LE, S24_LE, S32_LE
    Buffer size range from 32 to 131072
    Period size range from 16 to 1024

      Subdevice 0, name `subdevice #0'
    

    たぶんOKだと(笑)

  • みなさん
    raspberry pi os liteのベースが更新されたのであわせてカーネルも6.6.42-rt37にしました。
    clangでビルドしてあります。
    RPi4/5でi2s-dacで768KHz出るようになってます。
    RPi5でigb/igcが使えるようにしてあります。
    よろしければお試し下さい。
    https://udo.sakura.ne.jp/aoe/2024-07-04-raspios-bookworm-arm64-lite-clto-aoe.img.xz

  • みなさん
    カーネルを6.6.44-rt39にしました。
    clangでビルドしてあります。
    RPi4/5でi2s-dacで768KHz出るようになってます。
    RPi5でigb/igcが使えるようにしてあります。
    よろしければお試し下さい。
    https://udo.sakura.ne.jp/aoe/2024-07-04-raspios-bookworm-arm64-lite-clto-aoe.img.xz

  • みなさん
    カーネルを6.6.51-rt42にしました。
    clangでビルドしてあります。
    RPi4/5でi2s-dacで768KHz出るようになってます。
    RPi5でigb/igcが使えるようにしてあります。
    よろしければお試し下さい。
    https://udo.sakura.ne.jp/aoe/2024-07-04-raspios-bookworm-arm64-lite-clto-aoe.img.xz

  • @udosan さん
    こんばんはkkumaxです。このイージは最初からsshが有効になっているのでしょうか?
    起動はする?様ですがデスプレイに接続しても最後の最後で真っ暗になって以後何も映らないのですが?何かやらかしていますか?

  • @kkumax さん
    このイメージは純正のRaspberry Pi OS liteのカスタマイズなので、
    sshの有効化や通常ユーザーの作成は
    Raspberry Pi Imagerを使って行います。
    これを使って書き込まないとsshを有効に出来ないです。

  • @udosan さん
    balena-etcher-electronで書き込んでいました。
    Raspberry Pi Imagerを使ってユーザーパスワードを設定して
    無事にログインできました。ありがとうございます。

  • みなさん
    いろいろ考えてカーネルを6.12.1にしました。
    標準RTオプションが使えるのでRTにしてます。
    clangでビルドしてあります。
    RPi4/5でi2s-dacで768KHz出るようになってます(にしたつもりです)。
    よろしければお試し下さい。
    https://udo.sakura.ne.jp/aoe/2024-11-19-raspios-bookworm-arm64-lite-clto-aoe.img.xz

    そのままではビルドが通らなかったので一ヶ所修正しました。
    起動してaoeで音が出ることしか確認してません😅
    drivers/dma-buf/heaps/system_heap.c

    static const unsigned int orders[] = {8, 4, 0};
    #define NUM_ORDERS ARRAY_SIZE(orders)
    static unsigned int module_max_order = orders[0];
    ↓
    static const unsigned int orders[] = {8, 4, 0};
    #define NUM_ORDERS ARRAY_SIZE(orders)
    static unsigned int module_max_order = 8;

  • @udosan さん
    いつもありがとうございます!
    今回のバージョンもRPI5でうまく動作しています。

    ちなみに動作がちょっと変わったのは、以下の点でした。
    (今後使われる方のための参考情報として。)

    ・SDカードを焼いてRPI5に差し込み、電源投入してもraspberrypi5.localで認識されませんでした。scan してIPアドレスを見つけてログインしました。
    ・nmcli c down 'Wired connection 1' && sudo nmcli c up 'Wired connection 1'でIPアドレスを変更すると、即座に変更となりました。(以前はリブート後に変更されたと思います。)
    ・mpd, nginx -> iPhone のyaMPCだと raspberrypi5 をリブートしないと認識しませんでした。

  • @mgroovy さん
    報告ありがとうございます。

  • ラズパイ5を購入する予定で、電源について調べてます。
    ラズパイ4はUSB-CとUSB-Aのケーブルで、モバイルバッテリーやFF電源のA端子に繋いで使ってました。ラズパイ5は同様にUSB-CとUSB-Aのケーブルで使用できますか?
    それともGaNアダプター等PD対応の電源が必要になりますか?

  • @シネマ さん
    とりあえず私のイメージはダイソーの2.1Aアダプタで起動して音が出ました。
    ただ常用はしていないので大丈夫とは言い切れないです。

  • @udosan さん

    情報ありがとうございます😊