<< Hyper Keyboard pi +F | main | Daydream BT >>

2021/05/04 火

Raspi DAP Base Ver2

2.8インチタッチ液晶と、Raspberry pi 3A+、Raspbery pi zero用のDACを組み合わせDAPにしてしまおうというモノ

dapo.jpg
dapu.jpg

dapbase2.pdf組み立てマニュアル

RaspiDAPBase.pdf組み立てマニュアル 初期型

操作方法はマニュアルにもありますが、こちらに最新を書いておきます。
参考にしてください。

・短押し
 真ん中 = 再生/停止/選択
 VOL = 音量可変/ページ送り戻し
 戻り送り = 曲送り戻し/カーソル移動

・長押し
 真ん中 = メニューに入る/メニューから抜ける
 VOL = 音量連続可変
 戻り送り = カーソル連続移動
 ロックボタン3秒以上 = シャットダウン
  #画面点滅中ボタンを押すのをやめると、mpd_guiを強制再起動できる。
  #ボタン操作等が効かなくなったとき試すと良い。

2021/5/4 更新
★MPD_GUI版
・ロータリエンコーダーでのボリューム変更時、mpd_guiがメニュー画面だと、1ステップボリューム可変が、からぶりしていたバグを修正。

2020/11/3更新
★タッチ版
・起動画像を有効に。
・autostartプラグイン有効に。それに伴い、ロックボタン長押しによるシャットダウンを本プラグインに対応


〇ダウンロードはこちら
ファイル名にIPSがつくものは、blue7さんのIPS液晶対応です



設定の変更が必要です
★タッチ版

・NosPiDAC Daydream
Target Bit Depth : 32
Target Sample Rate : Native

・NosPiDAC Crown
Target Bit Depth : 32
Target Sample Rate : 44.1KHz
#DACの個体差により、Target Sample Rate : Nativeでも動作可能。

・NosPiDAC Tubeは、どちらの設定でも動きます。

Target Bit Depthは、右下歯車 - > プレイバックオプション -> 一番下の「Audio Resampling」にあります。




★MPD_GUI版

・NosPiDAC Daydream
NosPiDACメニュー> rate: native

・NosPiDAC Crown
NosPiDACメニュー> rate: 44.1KHz
#DACの個体差により、rate: nativeでも動作可能。

・NosPiDAC Tubeは、どちらの設定でも動きます。





Win32diskimagerで書き込みして。
☆設定済イメージについて
_tkz_さんのプチ音抑止パッチ適用済み(ただし、zeroとpi3のみ。pi4は充ててない。
NosPiDAC以外使う人で、プチ音パッチが邪魔な人は、snd-soc-bcm2835-i2s.koのBackUpが
/lib/modules/4.19.60???/kernel/sound/soc/bcm/snd-soc-bcm2835-i2s.ko.bakとして、オリジナルが避けてあるので、
自分で戻してください。

☆楽曲の入れ方(設定済みイメージを使った場合)
volumioの入っているSDカードをPCにつっこみ、SDの後ろにある未使用領域をFAT32またはexFATでフォーマット。
そこに楽曲を入れていけばOK.
出来ない人はがんばれ。サポートはできない。ぐぐれ
あとは無理やりSDのケツに領域とらんでも、別途USBメモリ刺したっていいんじゃない?


☆基本操作
早送りボタン = 短押しで次の曲、長押しで10秒送り
再生 = 短押しで再生、停止のトグル。長押しで停止
巻き戻し = 短押しで再生中の曲の先頭、連続して押すと、前の楽曲。 長押しで10秒戻り
音量アップ = 短押しで1パーセントアップ、長押しで加速しながら最大10ステップでアップ
音量ダウン = 短押しで1パーセントダウン、長押しで加速しながら最大10ステップでダウン
ロックボタン = 短押しでスクリーンロック(画面消える)、
         長押しでシャットダウン(ラズパイのグリーンLEDが消えたらスイッチオフにする)

設定は、SDカードをPCにマウントして、先頭パーティション(boot)の、init.txtをいじる

ボタンの種類は、以下によって導き出す

Btn1 = 戻るボタン
Btn2 = 再生ボタン
Btn4 = 進むボタン
Btn8 = 音量アップボタン
Btn16 = 音量ダウンボタン
Btn32 = ロックボタン

# ボタン機能一覧
1 前のトラック
2 seek- 10秒
3 WiFi Power Max/Minトグル
4 Stop
5 Play / Pause トグル
6 次のトラック
7 seek+ 10秒
8 shutdown
9 WiFi Power Max
10 WiFi Power Min
11 Play
12 Pause
15 音量+ / 長押し連続可変
16 音量- / 長押し連続可変
17 画面ロック・アンロック

たとえば、Btn32=11とすると、ロックボタンで再生になる。
戻るボタンと、進むボタンと再生ボタンを同時押しの場合は、

1+2+4 = 7
Btn7がそれにあたる。

長押しの場合は、64を足す。
たとえば、戻るボタン長押しは、
1 + 64 = 65
なので、Btn65となる

このことから、同時おししたい場合は、ボタンをすべて足す。さらに長押しとしたい場合は、64を足す。
となる。

ーーーーー


☆volumioの設定を自分でする人用の説明

オフィシャルイメージをダウンロード、SDカードにwin32diskimagerを使って書き込み。

bootパーティションの以下2ファイルを修正。

config.txt
以下を追加
----
dtparam=spi=on
dtparam=i2c1=on
dtparam=i2c_arm=on
dtoverlay=pitft28-resistive,rotate=0,speed=32000000,fps=30
dtoverlay=ads7846,penirq=17,speed=10000,penirq_pull=2,xohms=150
disable_overscan=1

cmdline.txt
以下を、その行の一番後ろに追加
----
fbcon=map:10 fbcon=font:VGA8x8 consoleblank=0

ラズパイに刺して起動して、初期設定をすませておく。
http://volumio.local/DEV/
にアクセスして、ssh を enableにする。

putty等で接続
ホスト名 volumio.local
ユーザ volumio
パスワード volumio

wget http://www.telnet.jp/~mia/volumio/btn_pa.bin
wget http://www.telnet.jp/~mia/volumio/init_pa.bin
wget http://www.telnet.jp/~mia/volumio/re.bin

sudo mv btn_pa.bin btn.pl
sudo mv init_pa.bin /boot/init.txt
sudo mv re.bin re.pl
chmod 755 btn.pl
chmod 755 re.pl
chmod 666 /boot/init.txt

sudo nano /etc/rc.local

一番最後の行に
exit 0

があるので、その上に以下を追加
/home/volumio/btn.pl & > /dev/null 2>&1
/home/volumio/re.pl & > /dev/null 2>&1

保存して閉じる。
CTRL + x を押す
さらに y を押す
そのまま enter を押す

ここでいったん、リブート
スクリプトがきちんと有効なっていれば、液晶が点灯するはず。

http://volumio.local/
にアクセスして、タッチディスプレイプラグインをインストール、有効化する。

putty でつなげて以下を行う。
sudo systemctl stop volumio-kiosk.service
sudo sed -i "s+/dev/fb0+/dev/fb1+" /usr/share/X11/xorg.conf.d/99-fbturbo.conf
sudo systemctl start volumio-kiosk.service

これで、kiosモードが起動するが、タッチパネルがイカれてる状態なはず。
kioskモードの表示が100%だと、UIが崩れるので、67%以下にする。
適当のUSBキーボードをラズパイに突っ込んで、CTRL + -で、画面縮小。CTRL + + で、拡大。

以下、タッチパネルの調整を行う。

sudo apt-get update
sudo apt-get install unzip raspi-config fonts-ipafont xinput
sudo apt-get install git dpkg-dev make g++ gcc binutils libx11-dev libxpm-dev libxft-dev libxext-dev
cd /home/volumio
sudo apt-get install libxaw7-dev libxxf86vm-dev libxaw7-dev libxft-dev
git clone https://github.com/KurtJacobson/xtcal
cd xtcal
make
DISPLAY=:0.0 xinput set-prop "ADS7846 Touchscreen" 'Coordinate Transformation Matrix' 1 0 0 0 1 0 0 0 1
DISPLAY=:0.0 xtcal/xtcal -geometry 240x320

画面にタッチパネルでタッチする印がでるので、それをタッチしていく。

以下のような形でキャリブレーションの値が帰ってくるので、

>>>'Coordinate Transformation Matrix' 1.114796 0.018122 -0.081768 0.003463 -1.135574 1.079316 0 0 1

それをもとに、以下のファイルを作成

/usr/share/X11/xorg.conf.d/99-calibration.conf

Section "InputClass"
Identifier "calibration"
MatchProduct "ADS7846 Touchscreen"
Option "TransformationMatrix" "1.114796 0.018122 -0.081768 0.003463 -1.135574 1.079316 0 0 1"
Option "SwapAxes" "0"
EndSection

再起動して完了。


☆以下NosPiDAC向け設定

/etc/mpd.confに以下の1行を追加。
audio_output_format "*:32:*"

以下の情報を参考に、ポップノイズ抑止パッチをあてる
http://tkz.hateblo.jp/entry/2018/07/30/231145