SSブログ

Volumio3プラグイン(2023/11/11更新) [Volumio]

OPAです。

緊急地震速報のURL変更に伴い緊急地震速報をださないように変更しました

Volumio3へのバージョンアップに伴い、プラグインもVolumio3への対応をしました。実装もPython2.7からPython3.7に変更しました。
注意ですが、Python3での検証時間が少ないため修正箇所の洗い出しがすべてできていません。不具合はVolumio2のプラグインよりあるかもしれません。

本プラグインは私が趣味で作ったものなので、動作保証はしませんし、ハードウェアやvolumioが破損したとかにも責任はとれません。自己責任でお願いします。

■ SPIに接続されたLCDに曲名やアルバムアートを表示

・320x480 SPI Integration Display2 プラグイン(Pi4Bのみ)


songinfo.png


本プラグインは、タッチスクリーン(XPT2046)付き320x480LCDパネル(ST7796S,ILI9486)向けのプラグインです。Raspberry pi 4 Bしか動作確認していません。 こちらで使用したパネルは、以下の互換のパネルらしいです。
http://www.lcdwiki.com/MHS-4.0inch_Display-B
http://www.lcdwiki.com/MHS-3.5inch_RPi_Display

楽曲表示は、横向きのデザイン1種、縦向きのデザイン1種があります。

lcd320x480.PNG

スクリーンセイバーは4つ選択できます。
  • BLANK
  • LINE
  • WATCH(未実装 BLANKと同じ)
  • Simple WATCH
  • LCD Wiper

ss_simplewatch.png

現在は利用できません

緊急地震速報通知がONの場合、音楽の再生状態に関係なく地震速報情報が表示され、表示された日本地図上の震源地に×印が付きます。設置場所の緯度経度を設定することで距離も表示されます(デフォルトは東京駅の緯度経度)。 震源地からの距離が閾値より近い場合で、指定されたマグニチュードの閾値より大きい場合、 音声での通知がされます。ただし、音声の合成の時間がかかるため表示より遅れて通知されます。音声通知される場合、音楽が再生中の場合、一時停止して音声通知されます。
固定再生ファイルを指定することで、指定された音源ファイルを音声通知時に再生します(WAVファイル限定)。音声通知するためには、APLAYデバイスに、ALSAデバイスを設定してください。

alertimg.png

天気予報設定で、機能を有効にすると、スクリーンセイバー動作時に、定期的に天気予報が表示されます。デフォルトでは、毎時0分、15分、30分、45分に表示されます。データの取得間隔は30分固定です。気象庁のページからデータを取得しています。

forecast.png


タッチスクリーンの補正(キャリブレーション)は、プラグインの設定画面で、キャリブレーションを行ってください。 キャリブレーションをしないと、タッチ操作が有効になりません。
キャリブレーションの設定情報は、表示方向と表示反転ごとに設定ができます。
プラグイン設定画面のキャリブレーションボタンを押下するとLCD画面がキャリブレーション設定画面に切り替わります。十字が5回表示されるので、十字の中央をタッチします。5回タッチすると、テストモードに切り替わり、画面上にタッチするとタッチした位置に点が表示されます。10回タッチすると通常画面に戻り、キャリブレーションデータが保存されます。
タッチ操作可能なものは以下の通りです。
  • 楽曲表示:再生・一時停止ボタン
  • 楽曲表示:戻るボタン
  • 楽曲表示:進むボタン
  • 楽曲表示:ランダム切り替え
  • 楽曲表示:リピート切り替え
  • 楽曲表示:シーク(※試験中)
  • 楽曲表示:ボリューム(※試験中)
  • スクリーンセイバー表示:左半分の画面領域をタッチすると楽曲表示に復帰
  • スクリーンセイバー表示:右半分の画面領域をタッチすると天気予報を表示

touch.png

外部からVolumioの操作ができるように、名前付きパイプ(/tmp/commandpipe)を実装しています。
名前付きパイプに、以下のようにコマンドを流します。
    $ echo -n "toggle" > /tmp/commandpipe

赤外線のコントロールであれば、lircrcファイルに以下のように記載します。
begin
prog = irexec
button = KEY_CENTER
config = echo -n "toggle" > /tmp/commandpipe
end

LCDに表示される状況に応じて、以下のような挙動をするようになっています。
  • 楽曲表示時
repeat リピート
random ランダム
toggle 再生・一時停止
seek plus 10秒シーク(前進)
seek minus 10秒シーク(後進)
volume plus 音量上げる
volume minus 音量下げる
volume toggle ミュート/ミュート解除
previous 戻る
next 進む

  • スクリーンセイバー表示時
previous 楽曲表示
next 天気予報表示
toggle 楽曲再生

  • 天気予報表示時
toggle 楽曲再生

参考までに使用したLCDの結線を以下に示します。

Pin NumberIdentificationDescriptionRpi
1, 173.3VPower positive (3.3V power input)3V3
2, 45VPower positive (5V power input)5V
3, 5, 7, 8, 10, 12, 13, 15, 16NCNot connected-
6, 9, 14, 20, 25GNDPower groundGround
11TP_IRQThe touch panel is interrupted, and it is detected that the touch panel is pressed lowGPIO17
18LCD_RSInstruction/data register selection, low level is instruction, high level is dataGPIO24
19LCD_SI / TP_SILCD display / touch panel SPI data inputGPIO10
21TP_SOTouch panel SPI data outputGPIO09
22RSTReset signal, low resetGPIO25
23LCD_SCK / TP_SCKLCD display / touch panel SPI clock signalGPIO11
24LCD_CSLCD chip select signal, low level enableGPIO08
26TP_CSTouch panel chip select signal, low level enableGPIO07


インストールは以下の通りです。(Volumio2対応版とは異なりますので注意してください)
  • Volumio3をインストール
  • http://volumio.local/DEV にアクセスしてSSHのENABLEボタンを押下する
  • WinSCP等を使ってプラグインを転送しておく
  • ターミナルを開き、SSHでvolumio.localにvolumioユーザ(パスワードvolumio)でログインする
  • 以下のコマンドを実行する
    $ sudo apt-get update
    $ sudo apt-get -y install build-essential
    $ miniunzip lcd320x480Spi_Integration_display2_XXX.zip
    $ cd lcd320x480Spi_Integration_display2_XXX
    $ npm install
    $ volumio plugin install
        :
    Finalizing installation
    Progress: 100
    Status :LCD320x480 SPI Integration Display2 Successfully Installed, Do you want to enable the plugin now?
    Finalizing installation
    Done! Plugin Successfully Installed    

  • /boot/userconfig.txtファイルに以下を追加する
    dtparam=spi_dma4
    dtoverlay=spi0-2cs   

  • /etc/modprobe.d/spidev.confファイルを作成し、以下を追加する
    options spidev bufsiz=4194304

  • Volumioを再起動する
  • メニューからプラグインを選択し、「インストール済みのプラグイン」タブを選択する
  • LCD320x480 SPI Integration Display2プラグインを有効にする
  • LCDドライバ種別を選択する(異なるドライバに切り替える場合は、保存した後、Raspberry piの電源を一旦落としてください)
  • 表示内容、表示反転、スクリーンセイバー、その他項目を選択後、保存する


【リリース】

2023/10/04 緊急地震速報のURL変更に伴い機能停止しました

https://www.dropbox.com/scl/fi/d21h1k1jgp5q82vb8zjf1/lcd320x480_Integration_display2_20231004121959981.zip?rlkey=tzh2z1j758ztr4hr7w02ewe7k&dl=0



2023/11/11 スペクトラム表示とレベルメータの左右が反転していたのを修正

https://www.dropbox.com/scl/fi/0vuf6b42lsg1ka84zavpc/lcd320x480_Integration_display2_20231111124115197.zip?rlkey=kxitzi6awh1cfnxaape876nu9&dl=0



■ 実験的

・Argon One Raspberry Pi 4ケース プラグイン(Pi4Bのみ)

本プラグインは、Argon One Raspberry Pi 4ケースのファンとボタンのコントローラツールをVolumio3のプラグインにしたものです。内容はオリジナルのものと変わりありません。
プラグインの設定が画面はありませんので、直接ファイルを更新してください。(/data/plugins/miscellanea/argonone/argononed.conf)


インストールは以下の通りです。
  • Volumio3をインストール
  • http://volumio.local/DEV にアクセスしてSSHのENABLEボタンを押下する
  • WinSCP等を使ってプラグインを転送しておく
  • ターミナルを開き、SSHでvolumio.localにvolumioユーザ(パスワードvolumio)でログインする
  • 以下のコマンドを実行する
    $ sudo apt-get update
    $ sudo apt-get -y install build-essential
    $ miniunzip argonone.zip
    $ cd argonone
    $ npm install
    $ volumio plugin install
    
    Progress: 100
    Status :argonone controller Successfully Installed, Do you want to enable the plugin now?
    Finalizing installation
    Done! Plugin Successfully Installed
  • メニューからプラグインを選択し、「インストール済みのプラグイン」タブを選択する
  • argonone controllerプラグインを有効にする

【リリース】

1/2 初回リリース

https://www.dropbox.com/s/w8tzfsmqif091f5/argonone.zip?dl=0




■ 参考


天気予報の情報は、気象庁のページからデータを取得しています。
nice!(0)  コメント(127) 

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