SSブログ

Volumio2で音楽4 [Volumio]

それでは、有機ELディスプレイとボタンを接続します。接続は以下の通りしました。

GPIO.JPG

Volumio2を起動し、プラグインの設定をします。プラグインでGPIOボタンの設定を追加します。

plugin1.JPG

インストールを実行し、設定を行います。

plugin2.JPG

どの操作をどのGPIOに接続されたボタンに割り振るか設定をします。

plugin3.JPG

ボリュームをソフトウェアで実行する場合は、プレイバックオプションで設定をします。しかしながら、設定してもうまくボリュームを操作することができませんでした。私の場合、アンプで音量調節をするので、GPIOボタンの設定とボリュームのソフトウェアでの設定はしないようにします。

plugin4.JPG

あとは、有機ELディスプレイに表示するプログラムを書くだけです。

Volumio2で音楽3 [Volumio]

ログインしたら、rootユーザにスイッチします。
volumio@volumio:~$ sudo su -
[sudo] password for volumio: (パスワードはvolumio)
root@volumio:~#
I2Cインタフェースに有機ELディスプレイを接続した状態で、i2cdetectコマンドで 接続状態を確認します。
root@volumio:~# i2cdetect -y 1
     0  1  2  3  4  5  6  7  8  9  a  b  c  d  e  f
00:          -- -- -- -- -- -- -- -- -- -- -- -- --
10: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
20: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
30: -- -- -- -- -- -- -- -- -- -- -- -- 3c -- -- --
40: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
50: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
60: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
70: -- -- -- -- -- -- -- --
root@volumio:~#
I2Cインタフェースのアドレスが3Cであることがわかります。
つぎに、ライブラリをインストールするための準備をします。以下備忘録ですので、現時点で通用 するかは確認できていません。

apt-getコマンドで取得するサーバの情報を追加します。viコマンド(エディタ)が普通のLinuxにある場所にありませんので、フルパスで指定します。
root@volumio:~# /var/tmp/mkinitramfs_8pJogT/bin/vi /etc/apt/sources.list
以下の内容を追加します。
deb http://archive.raspberrypi.org/debian/ wheezy main
apt-getコマンドでアップデートしてバージョン情報を更新します。エラーが出るのでapt-keyコマンドでキーを登録します。
root@volumio:~# apt-get update
root@volumio:~# apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 82B129927FA3303E
root@volumio:~# apt-get update
必要なライブラリをapt-getコマンドでインストールします。
root@volumio:~# apt-get -y install python-daemon python-smbus --force-yes
root@volumio:~# apt-get -y install python-imaging fonts-takao-gothic
つぎに手動でライブラリをインストールします。pythonのインストーラであるpipコマンドを インストールします。
root@volumio:~# wget https://bootstrap.pypa.io/get-pip.py
root@volumio:~# python get-pip.py
Volumio2と通信するのに必要なsocketIOをダウンロードしてインストールします。
root@volumio:~# wget https://pypi.python.org/packages/12/d4/abeb2596c2f16276c66910362b27d04b8d2cf12a746dcccf1d00de3f691b/socketIO-client-0.7.2.tar.gz#md5=ecdbfa4cc00118d2948632cd50b10735
root@volumio:~# tar xvf socketIO-client-0.7.2.tar.gz
root@volumio:~# cd socketIO-client-0.7.2
root@volumio:~# pip install -U socketIO-client
root@volumio:~# cd ..
これでソフトを動かす準備ができました。そういえば、I2Cインタフェースの接続方法がまだでした。つぎは、このあたりを書きたいと思います。

Volumio2で音楽2 [Volumio]

曲名を出すのに小型のディスプレイをI2Cと呼ばれるインタフェースでRaspberry piと接続します。使用しているディスプレイは、SSD1306と呼ばれるコントローラをのせた有機ELディスプレイです。私は、aitendoのこれ、http://www.aitendo.com/product/14958 を使っています。
I2Cとの接続をコントロールするため、pythonと呼ばれるプログラム言語を使用しました。インターネットでいろいろキーワード検索すると、やりたいことの断片的な情報があるため、それをつなぎ合わせて目的のものを作成します。
ライブラリをインストールするために、Linuxにリモートログインする必要があります。Volumio2をネットワークに接続すると、おそらくvolumio.localというマシン名が使えるようになります。PCからTeraTermなどのソフトを使用して接続します

teraterm1.JPG

ユーザとパスワードはどちらも、volumio、です。

teraterm2.JPG

無事、リモートログインできれば、以下のようなプロンプトが出てきます。

teraterm3.JPG

これで、ライブラリをインストールすることができます。

Volumio2で音楽1 [Volumio]

私の家の音楽環境は、Raspberry piを使った自作のネットワークオーディオです。 Raspberry piに自作のDACを作り、Volumio2と呼ばれる音楽再生ソフト(Linux)を使って実現しています。
Volumio2は、Webブラウザを通して操作するようになっています。でも、普段はPCを起動しなくても使いたいという欲求にかられます。Volumio2のプラグインで、再生、曲送りなどボタンをGPIOで操作することが可能なのですが、曲名など表示する機能がありません。そこで、Raspberry piに小型のディスプレイを接続して、自作のプログラム(インターネットをあちこち調べました)で表示させることができました。トップ画面の写真がそれです。
自作のDACは、PCM5102と呼ばれるICを使用して、何度か試行錯誤して作ってきました。それを元に人生初めての基板の設計をCADで行い、基板発注して作りました。無事1回の発注で動かすことができました。いろいろと調べたことを今後、つらつらと書いていきます。

この広告は前回の更新から一定期間経過したブログに表示されています。更新すると自動で解除されます。