Select Your Language

免責事項

  • 本サイトの情報の利用、内容、サービスによって、利用者にいかなる損害、被害が生じても、著者は一切の責任を負いません。ユーザーご自身の責任においてご利用いただきますようお願いいたします。

    本サイトで頒布している基板およびキットは、技術者、またはそれに準ずる電気的知識をお持ちの電子工作ファンの方のためのものです。 一般のオーディオファンの方のためのものではありません。
    また、頒布基板およびキットは、いかなる条件でも動作を保証するものではございませんので、あらかじめご了承ください。

    電子工作では、火傷、感電、火災などの可能性があります。 十分に注意をして作業して下さい。

    営利目的のご使用は認めておりません。  記事の転載や、基板・キットの商用利用の方は、ご連絡ください。
    学生やサークルの学習目的でまとめてご購入する場合は特別なコースをご用意させていただきます。

スポンサー

« Moode Audio 有機ELディスプレイとヘッドホン端子増設 | トップページ | 0dB HyCAAのCG画像 »

2017年6月28日 (水)

SabreberryDAC ZEROの基板上のスイッチを使う方法 [Volumio2編]

Volumio2があまりに頻繁にお亡くなりになるもので。。。思ったように作業が進ません。 この不安定さ、起動の遅さはどうにかならないものなのか?

以前の 1.5x系の安定性と動作の軽快さはどこに行ったのでしょうか。 ここ1週間でSDカード焼き直し(ふりだし)は20回を超えてます。。。 

Sb_zero7

   << SabreberryDAC ZEROの操作スイッチ >>

やっとVolumio2でこのスイッチをうまく使える方法が見つかりましたのでご報告いたします。 ただし、V2.175以降、最新版(V2.201)までは、本当に不安定でどうしょうもないクzなのでV2.114を使います。

http://updates.volumio.org/pi/volumio/2.114/volumio-2.114-2017-03-02-pi.img.zip

 

Volumio_pi

いい夢をみるために流す曲はもう、これしかないですね。

 

I2S-DAC 設定

まずは、SabreberryDAC ZERO用にI2S-DACを設定します。「HifiberryDAC」でOKです。 一番標準的なI2Sドライバです。 (V2.185などは、これを選択するだけで運が悪いとクラッシュします。)

Volumio_plugin0

リプートすると有効になります。 リブート後、Mixer Typeを「software」にします。 ついでにボリュームステップを「2」くらいにしておくと良いでしょう。 設定はSaveボタンを押しますが運が悪いとフリーズします。

Volumio_plugin4

特にMPD Client Volume Controlには触れないように。 フリーズ後、二度と音が出なくなり、SDカード焼き直しの刑が待っています。 他の項目にも出来るだけ触れないようにしてください。 挙動がおかしいときは、System からFACTORY RESET で直ることが多いです。 Systemにも入れない(表示されなくなった)場合は、SDカード焼き直しでふりだしに戻ります。

 

 

基板上のスイッチ GPIOの設定

Volumio2にはプラグインというものが用意されています。

メニューのPLUGINS から入ります。

Volumio_plugin1_3  

Search plugins -> System Tools で「GPIO Button」を選択してインストールします。

Volumio_plugin2

しばらくすると、プログレスバーが100%になりインストールされます。 

Volumio_plugin3

ここで 「ON」して Settingに入ります。 

Volumio_plugin

SabreberryDAC ZEROのスイッチのアサインはこのようになります。 停止ボタンはシャットダウンにしました。 アサインするかしないかは任意にできます。

このシステムはなかなか素晴らしいですね。 

でも、ここままだと動きません(笑 

 

GPIOのプルアップをONに

Volumio2にsshでリモートログインします。

IP:volumio.local

User:volumio

Pass:volumio

 

デバイスオーバーレイをダウンロードして、所定の位置に置きます。 (パスワードを求められたら「volumio」と答える)

wget http://nw-electric.way-nifty.com/blog/files/mygpio-overlay.dtb

sudo cp mygpio-overlay.dtb /boot/overlays/

これを起動時に有効にするために/boot/config.txt を編集します。

sudo nano /boot/config.txt

で開いて、下記の1行を追記します。

device_tree_overlay=overlays/mygpio-overlay.dtb

Ctrl+oで保存。Ctrl+x で閉じます。 再起動後に有効になります。

 

何をしているのかというと、GPIOの内蔵プルアップ抵抗を起動時にONしているのです。

gpio readall

とコマンドを打つと、GPIO一覧と名前やHi/Low状態が見えます。

基板上のタクトスイッチは、下記のようにアサインしています。
物理pin番号 (GPIO No.)

 Prev:  7 pin (GPIO 4)

 Play:  11 pin (GPIO 17)

 Next:  13 pin (GPIO 27)

 Stop:  32 pin (GPIO 12)

 Down: 31 pin (GPIO 5)

 Up:    33 pin (GPIO 6)

ややこしいことに、上記のpluginの中では「BCM」に振られたGPIO番号、WiringPi ではまた別の番号、PythonのIOは物理Pin番号として認識されます。

 

 

最後に、SabreberryDAC ZEROは24bitDACなので、mpd設定で24bitを指定しておくと、ボリュームを絞ったときにも量子化ノイズが聞えにくくなります。

sudo nano /etc/mpd.conf で下記の1行を追記します。 一番下の行でOK

audio_output_format  "*:24:*"

 

以上です。 お疲れ様でした。  私は、とても疲れました。 バグ多すぎ。。。

余計な項目を押さないのが吉です。 マインスイーパのように各所の爆弾が隠されています。 電源強制OFF->ONで戻るものもあれば、SDカード焼き直ししなければ戻らないものまであります。

Volumeを 0 にすると「バツ、バツ」というノイズがでますが、これもVolumio2特有のバグかと思います。 Moode AudioやRaspbian、Volumio 1.55では出ません。 

 

Volumio2の完成度が上がる日を心待ちにしています。。。 

 

 

参考文献

https://github.com/tomatpasser/gpio-buttons

https://github.com/fivdi/onoff/wiki/Enabling-Pullup-and-Pulldown-Resistors-on-The-Raspberry-Pi

 

 

にほんブログ村 PC家電ブログ PCオーディオへ にほんブログ村
ブログランキングに参加中です。 めざせ1位! 
もしよろしければ「ぽちっと」お願いします。 

« Moode Audio 有機ELディスプレイとヘッドホン端子増設 | トップページ | 0dB HyCAAのCG画像 »

Raspberry Pi」カテゴリの記事

コメント



お世話様でした。

>sudo mygpio-overlay.dtb /boot/overlays/
を実行すると、comand not foundでした
そこで、適当にmvで /boot/overlays/へ移動させました
(何かエラー?が出ましたがmygpio-overlay.dtbが /boot/overlays/
に在ったのでok?)

結果は、ボリュームup/down以外のボタンは機能しました

プレイバックオプションのmixer typeをソフトウェアにしても
ミキサーコントロールネームが選択出来ませんでした。

Volumio2 : ver 2.201

バージョンが違うとダメなのかな?

metabo55 さん

> を実行すると、comand not foundでした
コマンド、ミスってました。修正しました。 mvでも大丈夫だと思います。

> ミキサーコントロールネームが選択出来ませんでした。
バグじゃないでしょうか。 あれこれ弄ると、フリーズして再起動しても全然応答しなくなりますね。

音量ボタンは長押しで連続するようにはできていないようです。 連打してみてはいかがでしょう。

そもそも、バグで音量調整が効かない可能性もありますね。V2.114がオススメです。

お世話様です。

>音量ボタンは長押しで連続するようにはできていないようです。 連打してみてはいかがでしょう。

長押しでは無く、繰り返し押してるんですが。。。

一つ確認ですがヘッドホンジャックもボリュームボタン効きますよね?

>そもそも、バグで音量調整が効かない可能性もありますね。V2.114がオススメです。

そうですか、V2.114の作成試してみます。
(Windows10だと古いPCなので時間が掛かって)

metabo55 さん

> プレイバックオプションのmixer typeをソフトウェアにしても
> ミキサーコントロールネームが選択出来ませんでした。

この時点でまともな動作をしてません。 何度か試しても更新されないのですよね? 既に正常ではないことに気付いて下さい。
ファクトリーリセットか、SDカード焼き直しが必要です。 それでも直らなければ、バージョンを古いものに変えてください。

> 一つ確認ですがヘッドホンジャックもボリュームボタン効きますよね?

まともに動作するソフト(ディストリビューション)では音量調整できます。 
ちなみに、Softwareボリュームの不具合は、去年の3月くらいに報告されていて、今年に入ってやっと動きました。 でもここ3ヶ月でまたダメになってきてます。

たかじんさん、お世話様です。

一まづ、V2.114を再作成したらボタンも全て機能しました。

サポート有難う御座いました

只、今回の事とは関係が無いと思いますがV2.201では問題無かったSpotifyプラグインで、再生が出来なくなりました(Youtubeプラグインは問題無し)

やっぱり、安定してるのはmoode audioですかね!?(検討します)

たかじんさんの大変なご苦労のうえアミ出した方法で動きました
ありがとうございます。
sshコマンドをどう入力するがちょっと難しかったです。

基板のスイッチが使えるようになるとiPhoneから操作することもなく超快適
電源OFFもグッドですヨ。

これ本当に使いやすい。音質も最高です。iPhone6Plusで聞くよりもずっといい。

しいて問題点を言うとPi ZEROとDAC ZEROの組み合わせが軽すぎるって部分w
ヘッドフォンケーブルに引きずられてしまうwww

電池入れられるケースでDAP作製します!
手作りでDAPを作れる時代に入りましたネ

完成したらまた報告します。

metabo55 さん

昨年の11月ころにはSpotifyが使えていたらしいですよ。 それもダメになっていたとは。。。

このバグに嫌気がさすならMoodeに10ドル払う価値はあると思います。


Ohkawa さん

こちらこそありがとうございます。 
sshの説明、簡易的すぎましたね。 すみません。

DAP完成のご報告、お待ちしております。

うちのvolumio2は一度 sshで入れなくなって、factory resetをした後はすこぶる機嫌が良いです。
全く落ちないです。
raspberry pi2だから?

yosyosさん

なるほど。 Pi2ですか。 

ツイッターのほうでも安定して動くという方もいらっしゃるので、何か爆弾を踏まなくなる技が存在するのかもしれません。

たかじんさん、初めまして。
Sabreberry32を楽しく使わせて頂いております。
こちらにも、SWを付けて利用しようとチャレンジしています。
今回のSabreberryDAC zero を参考にしようと思っていますが、
mygpio-overlay.dtsの編集内容を参考にさせて頂けませんか?
よろしくお願いします。

Kazupon さん

記事の最後に書いてある参考文献の2つ目に、方法が書いてあります。 スイッチを繋げたポートのプルアップ抵抗をONするように記載してコンパイルするとmygpio-overlay.dtb が完成します。

my_pins: my_pins {
brcm,pins = ; /* gpio no. */
brcm,function = ; /* 0:in, 1:out */
brcm,pull = ; /* 2:up 1:down 0:none */
};
という部分です。

GPIO番号と、物理的なPIN番号が異なるので注意してください。

gpio readall というコマンドを打つと、両方が表示されます。

たかじんさん
ありがとうございます。
mygpio-overlay.dtsもVolumioのgpio buttons pluginもGPIO番号を記載すれば良いのですよね。

Kazupon さん

その通りです。

gpio readall というコマンドを打つと、pin番号とgpio番号の両方が表示されますので判りやすいです。

その節は大変お世話になりました。
タカチMX2-7-12に入れてみました。操作用タクトスイッチは別に作ってフロントパネル側で操作出来る様にしています。
そこで、気がついたのですが、ボリュームのUPは33ピンが正しいのでは?

ちなみにプレイインジケータのLEDはどこに接続されているのでしょうか
何故か光らなくて困ってます。(汗)

Silverbbs さん

たしかに33pinですね。 訂正いたしました。 ご指摘ありがとうございます。

インジケータは3.3VがアノードでカソードがLRCK端子です。 2.2kΩ抵抗で流れる微小な電流で十分に光る高輝度LEDが必要です。

たかじんさん
ありがとうございます。
無事点灯しました。

Silverbbsさん

よかったです。 

コメントを書く

(ウェブ上には掲載しません)

トラックバック

この記事のトラックバックURL:
http://app.cocolog-nifty.com/t/trackback/587107/65465533

この記事へのトラックバック一覧です: SabreberryDAC ZEROの基板上のスイッチを使う方法 [Volumio2編]:

« Moode Audio 有機ELディスプレイとヘッドホン端子増設 | トップページ | 0dB HyCAAのCG画像 »

サイト内検索

Sponsors link

2017年9月
          1 2
3 4 5 6 7 8 9
10 11 12 13 14 15 16
17 18 19 20 21 22 23
24 25 26 27 28 29 30

最近のトラックバック

無料ブログはココログ