Pirate Audio Line-outのセットアップは自動インストールスクリプトの使用でお手軽かんたん

レビュー

先日購入したPirate Audioが届きました。自分用と友人に依頼された分と合わせて2つ購入しました。1つはLine-outタイプ、もう一つが3W Stereo Ampタイプで紹介されていた3Wスピーカーも合わせて購入しました。今回はLine-outタイプをセットアップしていきます。

Pirate AudioはGPIO端子に接続するI2S DACです。ハイレゾ(24-bit / 192KHz)で再生できる優れものです。これまでも同様のHATはありましたが、今回は1.3インチ液晶ディスプレイと4つのカスタムボタン付きです。

一台は自宅用の現在使っているMoodeAudioのリプレイス、もう一台は友人のお子さんに頼まれた小さなミュージックサーバを作成します。

更新 バグだったのか、内蔵のオーディオがオンのままでも問題なかったので修正しました。
また、ローカルファイルの指定の仕方を追記しました。

今回の環境

以下のような構成で行いました。

Pirate audioの構成

  • Raspberry Pi Zero WH
  • Raspbian lite(2019-09-26-raspbian-buster-lite.zip)
  • Pirate audio Line Out
  • microSDカード(TEAM製32GB)
  • ウーハー付きの2.1chパッシブスピーカー
  • ミュージックサーバーのソフトウェアはMopidy
    (これにSpotifyConnectを設定し、WEBインターフェイスにIris)

microSDカードの準備

microSDカードをフォーマット後、ダウンロードしたRaspbian Lite OSを書き込みます。

手動設定の場合は事前にいくつか準備しておきます。(※必須ではありません)

  • SSHの空ファイルをコピー
  • Wi-Fiの設定ファイル(wpa_supplicant.conf)をコピー
  • config.txtでSPI通信を有効に(自動インストールスクリプトで対応)
  • config.txtでオンボードのオーディオを無効に(自動インストールスクリプトで対応)
  • DACを有効にしてGPIOも指定する(自動インストールスクリプトで対応)

これらを準備後、RaspberryPiを起動します。

※モニターに繋げば全てRaspbianの起動後に設定出来ます。ヘッドレスインストールでUSB電源アダプターしか繋がずにセットアップするために事前に用意した場合のお話です。

SSHファイルとwpa_supplicant.conf

これはラズパイダでは「Raspberry Pi のWi-Fi設定を事前に用意しておこう!」などで何度もご紹介しています。

自動インストールスクリプトの使用

Pimoroniが用意した自動インストールスクリプトを実行する前にgit cloneができるようにします。

ラズパイが起動したらコマンドプロンプトで順番に実行していきます。

手順1 アップデートとアップグレード

sudo apt update && sudo apt upgrade

手順2 gitのインストールとgit clone

今回Raspbian Buster Liteなのでgitコマンドを先にインストールします。(入っていない)

sudo apt install git

git cloneでgithubからダウンロードします。

git clone https://github.com/pimoroni/pirate-audio

デフォルトで実行するとユーザーPiフォルダの中にprirate-audioフォルダが出来上がります。GitHubからフォルダ毎コピーしてきたわけです。

prirate-audioフォルダのmopidyフォルダの中にインストールスクリプトがあるので移動します。

cd pirate-audio/mopidy

管理者権限(sudo)でインストールスクリプトファイルを実行します。

sudo ./install.sh

\ Raspberry Pi 4はメモリー8GBが最新 /

【セット概要】「データーベース」「Webサーバー」「NAS」「AI処理」「4K画像での2画面処理」などの高負荷がかかる処理を、長時間稼働させるのに必要な負荷テスト行い、当社で厳選した高品質なパーツを組み合わせたセットです。高品質なAnker製USB電源の採用、トラブルの原因になりやすい電源周りをデジタルモニターリングできるをType-Cケーブル、Raspberry財団認定モデル 高速タイプ 100MB/sec 128GB MicroSD、静音FANによる強制冷却など、高負荷運用でも長期に渡る安定稼働が可能です。また単品でご購入いただくよりお得です。

終了すればすぐに反映される

All done! で完了です。

参考までにターミナルのログを転載しておきます。

インストールが完了した時のログ

Successfully built Mopidy-PiDi pidi-display-pil pidi-display-st7789 mopidy-raspberry-gpio musicbrainzngs font-roboto
Installing collected packages: musicbrainzngs, Mopidy-PiDi, font-roboto, fonts, pidi-display-pil, st7789, pidi-display-st7789, mopidy-raspberry-gpio
Successfully installed Mopidy-PiDi-0.1.0 font-roboto-0.0.1 fonts-0.0.3 mopidy-raspberry-gpio-0.0.2 musicbrainzngs-0.6 pidi-display-pil-0.1.0 pidi-display-st7789-0.1.0 st7789-0.0.1
Resetting /etc/mopidy/mopidy.conf to package defaults.
Any custom settings have been backed up to /etc/mopidy/mopidy.conf.backup-2019-11-29-09-22-12
Synchronizing state of mopidy.service with SysV service script with /lib/systemd/systemd-sysv-install.
Executing: /lib/systemd/systemd-sysv-install enable mopidy
Created symlink /etc/systemd/system/multi-user.target.wants/mopidy.service → /lib/systemd/system/mopidy.service.
All done!
Mopidy configuration has changed, see summary below and make sure to update /etc/mopidy/mopidy.conf!
Your previous configuration was backed up to /etc/mopidy/mopidy.conf.backup-2019-11-29-09-22-12
diff: /etc/mopidy/mopidy.conf.backup-2019-11-29-09-22-12: No such file or directory
pi@raspberrypi:~/pirate-audio/mopidy $

この状態で既に液晶ディスプレイには!

ただ、この状態ではどうなっているのか分かりませんね?

正常に終わって起動しているのかを確認するには以下の通りステータスを確認します。

sudo systemctl status mopidy

特に問題なくActive: active (running) でした。

Mopidyにアクセス

Irisが入っているのでWEBUIで操作可能です。

WEBブラウザにMopidyを入れたIPアドレスとポート番号6680を入れてみてください。(例:192.168.0.11の場合)

192.168.0.11:6680
これならOK。irisをクリック。
名前だけ適当に決めました。デフォルトは番号の羅列です。
settingからいくつか設定できます。

ローカルファイルのスキャンなんかもここから可能です。

Spotifyの設定はmopidy.conf

Spotifyのプレミアム会員であればMopidyでも再生可能です。自動インストールスクリプトの使用でMopidy-Spotifyプラグインがインストールされています。

sudo nano /etc/mopidy/mopidy.conf

一番下に

[spotify]
enabled = false
username = ; Must be set.
password = ; Must be set.
client_id = ; Must be set.
secret = ; Must be set.

enabledをtrueに変え、以下4項目をSpotifyのアカウントとパスワード、そして以前にお伝えした「SpotifyのIDなど追加」にあるようにMopidyのウェブサイト(https://www.mopidy.com/authenticate/#spotify)でclient_idとsecretを発行しコピーします。

だけどね・・・
ただ、以前にも起こったこのMopidy-Spotifyプラグインは、オープンソースで開発されたlibspotifyライブラリなんですが、これ開発も終了しているし、そもそもSpotify公式のものではないので、あまり使いたくないなと思っています。

更に、あまり反応が宜しくないのは、恐らくSpotify本家の仕様変更に対応していないからと思われます。その点、MoodeAudio6は、とても安定していてしかも反応が速い!ニュータイプなんです。

何でも独自開発しているらしく、新しい仕様にバッチリ合っていてチューニングしてあるということらしい。

Mopidyなのでこのまま使うしかないですね。MoodeAudio6で何とか使えるようにしたいな・・・。

NASと接続する

手持ちのNASと接続するには以前の「番外:NASをマウントする」を参照してください。(長いので)

ファイル転送

とりあえず再生して確かめるには、Macならscpコマンドか、ラズパイにNetatalkをインストールする。「ラズパイZeroWで作る簡単アクションカメラ——バイク編」で使ったscpコマンドが超絶に便利だった。

またはUSBメモリーからコピーする方法がある。

しかし、この場合コマンド操作に慣れていないと失敗すると思う。
特にデフォルトのメディアのフォルダは/var/lib/mopidy/mediaで、所有権がmopidy:audioなので注意してください。
ローカルファイルの置き場所を、/rtc/mopidy/mopidy.confでユーザーホーム内とかに変更した方が無難です。

手動設定の場合(自動ならしなくて良い)

自動インストールスクリプトを使用すれば以下の手順は必要ありません。

これらを全て自動インストールスクリプトがやってくれます!
情報として一応記載しておきますね。

/boot/config.txtに記述する必要があります。

SPI通信を有効にする。このSPI通信は、液晶ディスプレイのためです。

dtparam=spi=on

オンボードのオーディオを無効にする。

オンボードは無効にしなくてもOKになりました。

dtparam=audio=offon

DACを有効にしてGPIO番号も指定する。

dtoverlay=hifiberry-dac
gpio=25=op,dh

ちなみに、用意されている4つのボタンはそれぞれBCM 5、6、 16、20 (A、B、X、Y)です。

Pirate audio abxyボタン
GPIOボタン名初期割当
BCM5A再生/ポーズ
BCM6B音量Down
BCM16X次へ
BCM20Y音量UP

config.txtに記述する内容をまとめると、

dtparam=spi=on
dtparam=audio=off
dtoverlay=hifiberry-dac
gpio=25=op,dh

手動インストールではMopidyもすべて行わないとなりません。手動インストールの場合は以下を参考にしてください。

自動だと楽ですね。

ローカルファイルを演奏させよう

久しぶりに触ったmopidy.confをだいぶ忘れていました。色々とやって思い出してきて、注意点を含め情報を載せておきます。

先ず、Spotify以外にローカル、つまりmicroSDカード内に音楽ファイルをコピーして演奏させる方法です。

デフォルトのメディアディレクトリは、/var/lib/mopidy/mediaです。

しかし、ここにコピーしても恐らく所有権限を付与しないとダメでしょう。そこにコピーするより、デフォルトの指定フォルダを変更しましょう。

sudo nano /etc/mopidy/mopidy.conf

上の方に[local]が見つかると思います。デフォルトだと media_dir = /var/lib/mopidy かと思います。ここに予めPiユーザーフォルダなのに作成しておいた任意のフォルダを指定します。
(例:ホームフォルダにmediaを作りました)

[local]
media_dir = /home/pi/media

最後にスラッシュはなしでそのフォルダまで指定します。この例の場合は ~/media とも書けます。

ちなみにフォルダ作成は

sudo mkdir ~/media

フルアクセス与えるなら

sudo chmod 777 ~/media

これらコマンドはいくつかまとめてありますのでご覧ください。

https://raspida.com/command

mopidy.confを書き換えたら、mopidyのサービスを再起動させましょう。

sudo systemctl restart mopidy

ライブラリに追加するには、local scanをしないとなりません。これもWebクライアントIrisからおこなってください。

mopidy setting

Setting → local scanボタン

これでOKです。WebクライアントIrisからBrowse → local mediaで出てきます。

注意

今回はサービスと動いているので、mopidyにあるコマンドは使わない方が無難です。例えばスキャンや設定ファイル類です。

  • mopidy local scan
  • mopidy config
  • mopidy

これらを行わなくてもメディアファイルの場所は前述のように変更可能です。
mopidy configするとユーザーフォルダの隠しファイルとして「.config/mopidy/mopidy.conf」などが作成されます。

mopidy.confが複数あり混乱すると思いますので、オススメできません。隠しファイル.configの方はサービスで動くmopidyのconfとは異なります。

またスキャンはコマンドではなくWebクライアントIrisから行なってください。

権限が違う:実はmopidyをユーザーがコマンドで起動する場合と、今回のようにサービスとして動いている場合の権限だと動作(confファイルの読み込み)などが異なります。

この辺はちょっとややこしいので、色々と触ってみてください。

※今回はサービスとしてmopidyが動いていますので、権限はpiではありません。
試しにデフォルトのメディアフォルダを見てみると・・・。

cd /var/lib/mopidy
ls -l
drwxr-xr-x 2 mopidy audio 4096 Dec  7 11:37 local
drwxr-xr-x 2 mopidy audio 4096 Dec  7 06:42 local-images
drwxr-xr-x 2 mopidy audio 4096 Dec  7 12:20 media
drwxr-xr-x 2 mopidy audio 4096 Dec  7 12:22 pidi
drwxr-xr-x 2 mopidy audio 4096 Oct 15 18:17 playlists

所有権はmopidy:audioになっていますね。ユーザーがmopidy、グループがaudioです。

シンボリックリンクという手もありますが、単に設定ファイルであるmopidy.confのmedia_dirを変更すれば簡単に行えます。

最後に

とりあえず・・・、コケました!

自動インストールスクリプトが終わった後、音楽ファイルをコピーして再生させようとしたら、4秒で落ちる・・・。しかもMopidyのサービスもコケるというダメっぷり。

何で再生されないのか・・・??

githubのissuesに内蔵のオーディオを無効する必要がある旨が書いてあります。ええ、だからそう書いてあったじゃん?

念のためconfig.txtを確認した。

Enable audio (loads snd_bcm2835)
dtparam=audio=on
 [pi4]

って、おい!

自動インストールスクリプトではオンになってる!!

これ、オンでも大丈夫でした。詳しくは分かりませんが、Githubでのissuのやり取りでも、きちんとサウンドカードを指定すれば良いとのことでしたが、実際には音が鳴りませんでした。

しかし、数日後に再度初めからやり直すと問題ありませんでしたので修正します。

ReadMeには書いてあっても自動インストールスクリプトは変更になっていないってオチでした。

オフに直してから再起動。

問題無く再生されました。良かった。良かった。

Mopidy以外で使えるようにしようっと。

ボタンの反応が良くて、押した瞬間にちゃんと次の曲へ切り替わったりする。こんなに安価なのにスゲー。非力なRaspberry Pi Zero Wなのにスゲー。

しかも液晶画面は240ドットですが綺麗。スゲェ時代だ。

最初のセットアップは自動インストールスクリプトの使用でOKというお話でした。

ラズパイダ

ラズパイダ

学べる楽しむ便利になる。小さいくせにヤケにパワフル。そんなRaspberry Pi をまだ知らない人に伝えたい。様々な場所で利用されているRaspberry Pi を知って「あっ、これもラズパイだっ!」だからラズパイダ!

関連記事

特集記事

コメント

この記事へのコメントはありません。

最近の記事 はじめて向け
  1. Pimoriniからシンプルスーパースリムな「Audio DAC SHIM」

  2. Raspberry Pi OS のバージョンアップ方法とaptについて

  3. 遊び半分、学び半分でRaspberry Piを活用しよう!

  4. Raspberry Pi Imager更新、イメージ選択数を計測のためデータ収集も

  5. 「fre:ac」はラズパイでもmp3やFLACに変換できる無料のオーディオコンバーター

  1. 【初心者向け】Raspberry Pi 4との接続方法(電源、HDMI)

  2. 【初心者向け】はじめてRaspberry Pi OS をダウンロードする人へ

  3. Raspberry Pi OS のインストールは、公式ツール1つだけでOK

おすすめの記事

  1. ラズパイ(Raspberry Pi)を使ってできるメディアセンター3選

  2. ラズパイ4にも対応している軽量でクールなOS「Manjaro」はアリ

  3. Raspberry Pi 4のOSをデスクトップPCとして使うためにUbuntuMATEをインストールしてみた

  4. 期待が高まるWindowsに似ている新しいLinuxのフレーバー「Endless OS」がRaspberry Pi 4用に登場予定

  5. 正式にUbuntuがラズパイ4に対応(Ubuntu 20.10)

  6. ラズパイ4で動いたOS一挙に10選とおすすめのデスクトップ代替OS

今月の人気記事

  1. 1

    Raspberry Pi で動く様々なOS一覧まとめ13種類!

  2. 2

    ラズパイ4をUSB接続のSSDから起動する方法(USBブート)

  3. 3

    初心者でもラズパイでNASサーバーを作ってみよう!

  4. 4

    Raspberry Pi 4の初期設定2020年版

  5. 5

    Raspbian のWi-Fi設定(Raspberry Pi 初期設定)

  6. 6

    ラズパイ4とOMV5(openmediavault5)で作る自宅NASサーバーの設定方法

  7. 7

    Raspberry Pi 4を起動したのにモニターに画面が映らない対処法

  8. 8

    ラズパイで使うmicroSDカードの選び方

  9. 9

    Raspberry Pi 4のOSをデスクトップPCとして使うためにUbuntuMATEをインストールしてみた

  10. 10

    ラズパイ4はPCライクな性能になったけどPCではないよという話

記事ランキングページ

TOP