Select Your Language

免責事項

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

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

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

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

スポンサー

« プロテクタ基板PRT-01と整流回路を合体したPRT-02リリース | トップページ | ALX-03 MOS-FETバージョンの歪率を計測 »

2018年5月 7日 (月)

軽量ディストリビューション Z-MPD APモード テスト版

ざっとPi3でテストしました。まだ不具合が残っている可能性が高いですが、先日リリースした軽量な音楽再生ディストリビューションZ-MPDのAPモード版(Wifi AccessPoint 対応版)をとりあえず下記においておきます。

2018-04-30-zmpd_LLAP.7z というファイルです。

 

Zmpd01

 

 

APモードなら、他のWifiルータを経由せずダイレクトに接続が可能になります。

スマホのwebブラウザから操作することができるようになります。MPDクライアントソフトでも接続できます。

Ap_mode

 

 

スマホからWifi APにアクセス

スマホからAccessPOINTをみるとこんな感じです。

AP名: Z-MPD

Password:123456789

です。

WEB-UIをみるには、iOSは http://raspberrypi.local

Androidでは、http://172.24.1.1 です。

 

SDカードにデータを入れる方法

winSCPにてz-mpdに接続します。 標準のRaspbianと一緒です。

Host名:raspberrypi.local

User名:pi

パスワード:raspberry

フォルダは /mnt/music/sd です。

 

winSCPの使い方はこちらの後半をご覧下さい。

SDカードの領域いっぱいまで広げると沢山の曲が入ります。

 

よろしくお願いします。

 

 

 

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

« プロテクタ基板PRT-01と整流回路を合体したPRT-02リリース | トップページ | ALX-03 MOS-FETバージョンの歪率を計測 »

Raspberry Pi」カテゴリの記事

Z-MPD」カテゴリの記事

コメント

たかじんさん

おはようございます。
たかじんさんのリリースを待てばよかったです。
昨日、Pi2+SabreBerry32用に、半日がかりでAPモード板を自作したばかりでした。

音がどことなく元気が無く聴こえるので、再生システム全体で鳴らし込んでみるか、たかじんさんのAPバージョンにさせていただこうと思います。

まるで都市伝説のようですが、使ったmicroSDが、いつも購入、使用するlexar製ではなく、以前音に違和感があり、目隠しテストを10回行い10回そのmicroSDとわかる、懸念付きで使ってなかったもので、そのせいかもしれません。

素人考えになりますが、microSDの内部は電子部品が集まった電気回路なので、
・内部で発生するノイズなどの影響があるのかもしれない
・SabreBerry32+Z-MPDはその違いがわかるくらいの忠実再現性
など思っています。

ターキーさん

確かにSDカードでも音に違いがでるかもしれません。 某S○NYさんもオーディオ用のSDカードを発売したくらいですし。

RaspberryPiの基板上の電源は決して強力とはいえず、最低限、ギリギリで動いているようなので、そういった動作の影響は十分に考えられると思います。

DACとRPIとの電源を分離してもなお、NAS接続とUSBメモリ内の音とで違いが出るので、人の耳ってどこを聞いて判断しているのだろうと不思議に思うこともありますね。

オーディオがデジタル化して音は変わらなくなった。 なんて話は全くのウソだったということは皆知ってますね。

はじめまして。

Z-MPDをSabreberry+から6L6GC、HLCompactに接続して鳴らしてみました。
とても良い音です。
当方、itunes storeで大量に曲を購入していたのでMoode、
volumioよりも伸びやで解像度が高い音がでてうれしいです。
macから繋いだ中華USB-DACよりも断然こちらの方がよく、気に入りました。

ありがとうございます。 これからも頑張ってください。

3 B+

Z-MPD APモード動作しています。 iPhone 8でも認識します。
至近距離ではとても快適です。

B+から5m以上離れるとwifiが切れ始めます

取り急ぎ報告まで

起動しません。
APモード版です。

これまでも軽量ディストリビューションを使ってきました。
Pi ZERO W+DAC ZEROの組み合わせです。

ご教授願えないでしょうか。

お騒がせしました。

EtcherでSDカードを書いていたのをwin32diskimagerにしたら起動できました。

Etcherでは、元の軽量ディストリビューションに書き戻しても
Volumioを書いても起動できなくなってしまったからです

他の方々もおきていますでしょうか?

先程の書き込みは「須藤」でした。

音質はVolumioに比べてずっとよく、起動時間も半分以下と速いので満足です。

これからもよろしくお願いいたします。

こんにちは、はじめまして。以前より良く拝見させていただいております。
Z-MPDを早速インストールしました。APモードの接続もOKで、良い音で鳴ってくれます。
スタンドアロンのプレーヤーとしていろいろ応用ができそうですね。

ken さん

HLコンパクト いいですね。 ゆったりしたサイズの割にピシっとした音像定位があって、弦楽器やボーカルがとても心地よかったような思い出があります。

gigaba さん

B+での動作報告ありがとうございます。 無事に動作しているようで良かったです。

wifiは意図的にパワーを落としています。
出力を上げたいときは、/etc/rc.localを編集してください。

iwconfig wlan0 txpower 0   の最後の0を 10、20、30 と数値を
大きくするとパワーが大きくなります。 31が最大と思います。


須藤さん

起動できたようで良かったです。

Etcherは、SDカードが新品のときは平気ですが、2回目以降は全域フォーマットをかけてから使わないとおかしなことが起きるようです。
全域フォーマットにはSDフォーマッタを使うと良いみたいです。

というより、win32diskimager やDDforWINなら、なんら問題ありません。
気のせいかEtcherよりも速度も速いように感じますね。

TYO.STDさん

ありがとうございます。
スタンドアローンで使うとNASなども要らないですし、お手軽ですね。

たかじんさん

B+はUSBからも起動できるので、データイメージをUSBメモリに入れて起動してみました。
SDカードとして1つ目のストレージにデータを入れると問題なく再生します。

しかしデータを入れた別のUSBメモリは認識できません。

gigabaさん

なんと、USBブートですか。 それは考慮していませんでした。

/dev/sda1を決めうちでマウントしているため、2個目のUSBメモリは認識しません。

今後の課題とさせてください。

RaspberryPi A+(USB-Wifiドングル)とSabreBerry+の組み合わせにてZ-MPDを利用させていただいております。APモードも問題なく動きました。
Z-MPDは軽量なのでA+には助かります。

ところで、Volumio2はAPモード中でもAirplayが利用できるのですが、Z-MPDでもできるようになると嬉しいです。

HAL さん

https://nw-electric.way-nifty.com/blog/2018/06/shairport-syncr.html
こちらの方法でAirPlay対応できます。

実際にZ-MPDで試しました。

Airplay出来ました。ありがとうございました。

HAL さん

良かったです。
時間ができたら、新しいバージョンのZ-MPDを作ろうと思っています。 そのときには最初から入れておきますね。

たかじんさん

こんにちは。
Z-MPD APモード テスト版は
2018年07月10日までの公開だったようですが、
以降のダウンロードできませんでしょうか?

けんぼさん

失礼いたしました。 下記からどうぞ。

https://yahoo.jp/box/rLSn5O

たかじんさん

どうもありがとうございました。
たいへん助かりました。

「新しいバージョンのZ-MPD」にも
期待しております。

たかじんさん

いつも楽しく拝見させて頂いております。
sabreberry32の車載を計画しておりまして、ディストリビューションとしてZ-MPDのAPモード対応版が使い勝手が良さそうだと考えております。今更ですがどちらかで公開頂くことは可能でしょうか?

travi さん

以下に置きました。 期間は30日間です。よろしくお願いします。 2018年4月なので、それ以降に発売になったPi4などでは起動しないと思います。Pi3B+もおそらくダメです。

https://xgf.nu/iOv4

たかじんさん

早々にご対応頂き有難うございます。
早速ダウンロードして使用させて頂きます。

travi さん

車載用途も奥が深いですね。 
私も時間ができたら挑戦してみたいのですが、MoodeAudioのようにEqualizerを駆使したくなってしまうかもしれないなぁって思っています。

Pi4は、熱くなるのでPi3くらいまでが実用限界ですね。できればPi ZEROで極限まで発熱を下げたい。

たかじんさん、こんにちは。Z-MPD AP版を車載でありがたく使用させていただいております。国内でもRasPi zero2wが発売になりましたが、Z-MPDの対応予定はないのでしょうか?

TYO.STDさん

zero2確保するところから始めます。。。

猛暑のせいか車載してたMPDが起動しなくなりました。

この際、軽量なMPDに変更しようとサイト拝見しておりましたが、大分前の事ですのでリンクが切れております。

よろしければ再公開していただけると有難いです。
宜しくお願い致します。

abc さん

こちらに置きました。 よろしくお願いいたします。
https://xgf.nu/9zHaj

たかじんさん

早々のご配慮、及びご対応頂き、感謝致します。
早速、活用させて頂きたいと思います。

たかじんさんのWebサイトの情報は常にチェックさせて頂き、趣味のオーディオに時間を投入しにくい状況ですが、妄想ふくらませ基板購入し、楽しみながら勉強させて頂いております。

これからも面白そうなオーディオ基板等のご提案及び、ご活躍を期待しておます。

この度はありがとうございました。

たかじんさん

お世話になります。
Z-MPD なかなか良い音で通勤させて頂いております。

が、車用ですので操作ボタンで動作させたいのですが、以前のGPIO配線では動作しない為、操作ボタンのスクリプト側の編集で対応したいのですが、お手数ですが方法を教えて頂けませんでしょうか?

宜しくお願い致します。

abc さん

GPIOは、OSこと2018年当時のままですので、そのまま動くとは思うのですが、ダメでしたでしょうか。

https://nw-electric.way-nifty.com/blog/sbdaczero.html
こちらの「基板上のスイッチによる再生・音量コントロール」 という部分を参考にしてみてください。

よろしくお願いします。

たかじんさん

すみません。言葉足らずでした。
たかじんさんの基板とは異なるGPIO-キー配線の為、そのままでは動作しない状況です。以前はVOLUMIO2で任意のGPIOに割り当ててました。


Z-MPDのGPIO指定方法について

Z-MPD内の下記相当箇所を、「任意の番号に書換え、保存する」と理解しましたが、該当箇所の読み出しコマンドについて教えて頂けませんでしょうか?素人ですみませんが、よろしくお願いします。

以下Otaさん資料より抜粋
PIN_PREV_BTN = 7
PIN_PLAY_BTN = 11
PIN_NEXT_BTN = 13
PIN_STOP_BTN = 32
PIN_VOL_UP_BTN = 33
PIN_VOL_DW_BTN = 31

abc さん

それでしたら、こちらも参考にどうぞ。
https://nw-electric.way-nifty.com/blog/2017/06/sabreberrydac-5.html

gpio端子を指定しているのは、先日のページに書いてある「mpd_ctrl_zero.py」です。 それを編集してください。

また、プルアップが必要な基板でしたらプルアップも忘れずに。

よろしくお願いします。

たかじんさん

情報ありがとうございます。
「mpd_ctrl_zero.py」 任意の物理pin番号に編集しました。
PIN_PREV_BTN = 31
PIN_PLAY_BTN = 26
PIN_NEXT_BTN = 29
PIN_STOP_BTN = 8

が、物理SWは機能しません・・・
物理pin番号は間違いありません。
物理pin→GPIO番号に変更しても同様です。

プルアップはONにしております。
sudo nano /boot/config.txtに下記の1行を追記。
device_tree_overlay=overlays/mygpio-overlay.dtb 

状態確認の為、
gpio readallコマンドでGPIO一覧と名前やHi/Low状態確認の為
「gpio readal」を打ちましたが、何も表示され無い状態です。

何のミスが考えられますでしょうか?
アドバイス頂けると助かります。

abc さん

ピンアサインを変更しても、プルアップをONにしてもだめとなると厳しいですね。 その基板の設計がどうなっているか分かりませんし。

gpio readall コマンドが通らないときは、
https://qiita.com/ma2shita/items/b11045717333bcd79d15

この辺当たりの情報を試してみるとどうでしょうか。

たかじんさん
情報ありがとうございます。

GPIOコマンドについて
・PCでputty操作の為、車載用のPI-ZEROでは無く、有線LAN付属のラズパイにSDカードを差替えてた為、そもそもGPIOコマンドが通らないのではと気づきました・・・
・キーSWユニットを有線LAN付属のラズパイに移植し、puttyで操作するのがベターでしょうか?←分解大変ですがトライしようと思います。
・又は有線LANが無いPI-ZEROにputtyで接続する方法はありますでしょうか?

物理キーについて
・各物理キー自体の正常動作をテスターで確認しております。
・物理キーは各GPIOに配線したのみです。←Z-MPDではNGでしょうか?
・以前のVOLUMIO2で操作可能でした。
・この場合、Z-MPDの初期GPIOにキーSW配線を修正し一致させると、SW操作は可能になるとの考えは正しいでしょうか?

宜しくお願いします。

abc さん

なるほど。 ラズパイ自体もDAC基板も違うのですか。 このOSは2018年当時の物ですので、あまり深追いしない方が良いかもしれませんね。

RTカーネルの作成
https://nw-electric.way-nifty.com/blog/2018/02/raspberrypirt-l.html

高速起動化
https://nw-electric.way-nifty.com/blog/2017/04/raspberry-pi-ze.html

MPDお手軽インストーラー
https://nw-electric.way-nifty.com/blog/2022/07/post-3c1c4a.html

GPIOとMPD連携
https://nw-electric.way-nifty.com/blog/sbdaczero.html

あたりを参考にどうぞ。 記事は古いので現在のOSのしきたりに変更する必要があるかと思います。

有線LANをとめているのは、高速化の所に書いてあるとおりです。 dhcpdを復活させると有効になると思います。
もしかしたら固定IP化もしているかもしれません(記憶が怪しい)
https://nw-electric.way-nifty.com/blog/2017/09/raspbian-stretc.html

たかじんさん

お手数お掛けしてすみません。
予想外に困難であり、スキル不足を痛感しております。

なかなか時間が取れないのですが、可能な範囲でトライしてみようと思います。

情報ありがとうございました。

abc さん

RaspberryPiは色々な種類がでてきて、その都度OSが更新されて新しいものに対処してきました。
ですので、新しい基板(内部ファームウェアが更新されただけでも)では古いOSが正常に動作しないことがあります。

一番の対策がOSを新しいものに変更するという事になります。

Z-MPDは当時、RTカーネルをビルドしたり、MPDもソースからコンパイルしたりと凝ったことをやっていたため、同様のことをするとき、少々のスキルと多大な時間が必要になってしまいました。

たかじんさん
 連休にトライしてみました。

結果ですが、
 初期のキー設定のGPIOに物理キー配置でMPD全操作可能でした。
 物理キー側の対応で一旦車載しました。

GPIOキー設定変更が反映されない謎について
 「mpd_ctrl_zero.py」 で任意のGPIOに変更しても初期のGPIOにのみMPDが反応します。何故でしょうか?(リブート後、編集内容の更新確認済です)

設定変更に必要な個所は「mpd_ctrl_zero.py」 のみでなく他にもありますか?
「mygpio-overlay.dts」も変更必要でしょうか?

ソフト側での編集にチャレンジしたく、よろしくお願いします。


abc さん

そういえば、プルアップ抵抗の指定はmygpio-overlay.dts ですね。

https://nw-electric.way-nifty.com/blog/2017/06/sabreberrydac-5.html
の「GPIOのプルアップをONに」 という項目に書いてありました。

overlayのコンパイル方法は以下が参考になると思います。
https://github.com/fivdi/onoff/wiki/Enabling-Pullup-and-Pulldown-Resistors-on-The-Raspberry-Pi

たかじんさん

ありがとうございます。

mygpio-overlay.dts にてプルアップ抵抗の編集にトライしてみます。

abc さん

すみません。 プルアップはmpd_ctrl_zero.py の中で
  GPIO.setup(pin, GPIO.IN, pull_up_down=GPIO.PUD_UP)

として指定していました。

sudo apt-get update
sudo apt-get install wiringpi
gpio readall

でIOポートの状態が読めるはずですので、GPIO端子に信号が来ているか確認してみてください。


mygpio-overlay.dts および sudo nano /boot/config.txt への下記指定はいりません。
device_tree_overlay=overlays/mygpio-overlay.dtb 

たかじんさん
コメント気づかず返信遅れてすみませんでした。

sudo apt-get update後、
GPIOの任意編集で物理キー操作が可能となりました。
ご対応ありがとうございました。

Beagle Bone の Boticへ同様の物理SWを設けたいと妄想しておりますが、
mpd_ctrl_zero.pyのGPIOに関するコマンドの移植にて対応可能と考えて良いでしょうか?
それ以外も必要でしょうか?

宜しくお願いします。


abc さん

SWが読めたようでよかったです。 何が原因だったんですかね。

ラズパイはGPIOを動かすライブラリが充実しているため色んな方法で操作可能です。 その中のPythonという言語で操作しています。PythonでGPIOを操作できライブラリがあるからこそ、簡単にプログラムが組めています。

Beagle Boneの方は情報が少ないのですが、この辺りが参考になるかもしれません。
https://qiita.com/hide_shi/items/f93185316546ed3a22ac


たかじんさん

GPIOの編集が可能となったのは、sudo apt-get updateで何処か修正されたのかと思ってたのですが違うのですね。謎です・・・

ちなみにZMPD内の「mygpio-overlay.dts」が見つけられなかったのですが、どのフォルダに格納されてますでしょうか?

ZMPDxラズパイx物理キーは、とても快適に操作可能で、通勤時間を良い音楽で楽しめ、たかじんさんに感謝です。ありがとうございます。

Beagle Boneも物理キーでコントロールしたいので、トライしてみようと思います。

abc さん

mygpio-overlay.dtsは入れていなかったようです。 でも元ソースはこちらです。
https://github.com/fivdi/onoff/wiki/Enabling-Pullup-and-Pulldown-Resistors-on-The-Raspberry-Pi

Beagle Bone Black/Greenも音はいいですよね。 ラズパイと比べてユーザー数、使い方のweb情報が少ないだけで。

たかじんさん

>mygpio-overlay.dtsは入れていなかったようです。

安心しました。
私の探し方が悪いのか、他に方法があるのかとても悩んでましたので。

ありがとうございました。

abcさん

私も入れてあるものだと思っていたのですが、なぜか入っていませんでした。
web版MPD操作のYMPDは入っているんですけどね。

当時の開発記録ノートには内容がかいてありました。


~$ gpio readall
        +-----+-----+---------+------+---+---Pi 3---+---+------+---------+-----+-----+
        | BCM | wPi | Name | Mode | V | Physical | V | Mode | Name | wPi | BCM |
        +-----+-----+---------+------+---+----++----+---+------+---------+-----+-----+
        | | | 3.3v | | | 1 || 2 | | | 5v | | |
        | 2 | 8 | SDA.1 | ALT0 | 1 | 3 || 4 | | | 5v | | |
        | 3 | 9 | SCL.1 | ALT0 | 1 | 5 || 6 | | | 0v | | |
 Prev     | 4 | 7 | GPIO. 7 | IN | 1 | 7 || 8 | 0 | IN | TxD | 15 | 14 |
        | | | 0v | | | 9 || 10 | 1 | IN | RxD | 16 | 15 |
 Play     | 17 | 0 | GPIO. 0 | IN | 0 | 11 || 12 | 1 | ALT0 | GPIO. 1 | 1 | 18 |
 Next     | 27 | 2 | GPIO. 2 | IN | 0 | 13 || 14 | | | 0v | | |
        | 22 | 3 | GPIO. 3 | IN | 0 | 15 || 16 | 0 | IN | GPIO. 4 | 4 | 23 |
        | | | 3.3v | | | 17 || 18 | 0 | IN | GPIO. 5 | 5 | 24 |
        | 10 | 12 | MOSI | IN | 0 | 19 || 20 | | | 0v | | |
        | 9 | 13 | MISO | IN | 0 | 21 || 22 | 0 | IN | GPIO. 6 | 6 | 25 |
        | 11 | 14 | SCLK | IN | 0 | 23 || 24 | 1 | IN | CE0 | 10 | 8 |
        | | | 0v | | | 25 || 26 | 1 | IN | CE1 | 11 | 7 |
        | 0 | 30 | SDA.0 | IN | 1 | 27 || 28 | 1 | IN | SCL.0 | 31 | 1 |
        | 5 | 21 | GPIO.21 | IN | 1 | 29 || 30 | | | 0v | | |
 Down     | 6 | 22 | GPIO.22 | IN | 1 | 31 || 32 | 0 | IN | GPIO.26 | 26 | 12 |  Stop
 Up      | 13 | 23 | GPIO.23 | IN | 0 | 33 || 34 | | | 0v | | |
        | 19 | 24 | GPIO.24 | ALT0 | 1 | 35 || 36 | 0 | IN | GPIO.27 | 27 | 16 |
        | 26 | 25 | GPIO.25 | IN | 0 | 37 || 38 | 0 | ALT0 | GPIO.28 | 28 | 20 |
        | | | 0v | | | 39 || 40 | 0 | ALT0 | GPIO.29 | 29 | 21 |
        +-----+-----+---------+------+---+----++----+---+------+---------+-----+-----+
        | BCM | wPi | Name | Mode | V | Physical | V | Mode | Name | wPi | BCM |
        +-----+-----+---------+------+---+---Pi 3---+---+------+---------+-----+-----+


nano mygpio-overlay.dts

/dts-v1/;
/plugin/;

/ {
compatible = "brcm,bcm2708";

fragment@0 {
target = <&gpio>;
__overlay__ {
pinctrl-names = "default";
pinctrl-0 = <&my_pins>;

my_pins: my_pins {
brcm,pins = <17 27 12 13>; /* gpio no. */
brcm,function = <0 0 0 0>; /* 0:in, 1:out */
brcm,pull = <2 2 2 2>; /* 2:up 1:down 0:none */
};
};
};
};

~$ dtc -@ -I dts -O dtb -o mygpio-overlay.dtb mygpio-overlay.dts
Warning (unit_address_vs_reg): Node /fragment@0 has a unit name, but no reg property
~$ ls
mygpio-overlay.dts mygpio-overlay.dtb

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

ソース部を貼り付けるとインデントが消えてしまいました。適当に補間してください。

たかじんさん

ここで、たかじんさんの当時の貴重な開発記録ノートを拝見出来るとは・・・

有難く使わせて頂きます。 

abc さん

Linuxがらみは色んな情報がwebに載っているけど、ディストリビューションやバージョンに依存する部分があって機能しないことも多く、色々試しながらやっていたのでノートというかメモが残っていました。

ご活用いただければ幸いです。

コメントを書く

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

トラックバック


この記事へのトラックバック一覧です: 軽量ディストリビューション Z-MPD APモード テスト版:

« プロテクタ基板PRT-01と整流回路を合体したPRT-02リリース | トップページ | ALX-03 MOS-FETバージョンの歪率を計測 »

サイト内検索(new)

2025年1月
      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 31