Volumio2プラグイン(9/11更新) [Volumio]
Volumioプラグインを更新しました。今後はこのページを更新していきます。(volumio-2.873-2021-02-19-pi.imgより新しいとbuild-essentialのインストールに失敗します)
本プラグインは私が趣味で作ったものなので、動作保証はしませんし、ハードウェアやvolumioが破損したとかにも責任はとれません。自己責任でお願いします。
■ SPIに接続されたLCDに曲名やアルバムアートを表示
・320x480 SPI Integration Display2 プラグイン(実験中)
本プラグインは、タッチスクリーン(XPT2046)付き320x480LCDパネル(ST7796S,ILI9486)向けのプラグインです。こちらで使用したパネルは、以下の互換のパネルらしいです。http://www.lcdwiki.com/MHS-4.0inch_Display-B
http://www.lcdwiki.com/MHS-3.5inch_RPi_Display
※タッチ操作方法についてはまだ検討中であり、デザイン含めて変わる可能性があります。
横向きのデザイン1種、縦向きのデザイン1種があります。
スクリーンセイバーは4つ選択できます。
- BLANK
- LINE
- WATCH(未実装 BLANKと同じ)
- Simple WATCH
- LCD Wiper
固定再生ファイルを指定することで、指定された音源ファイルを音声通知時に再生します(WAVファイル限定)。音声通知するためには、APLAYデバイスに、ALSAデバイスを設定してください。
参考までに使用したLCDの結線を以下に示します。
Pin Number | Identification | Description | Rpi |
1, 17 | 3.3V | Power positive (3.3V power input) | 3V3 |
2, 4 | 5V | Power positive (5V power input) | 5V |
3, 5, 7, 8, 10, 12, 13, 15, 16 | NC | Not connected | - |
6, 9, 14, 20, 25 | GND | Power ground | Ground |
11 | TP_IRQ | The touch panel is interrupted, and it is detected that the touch panel is pressed low | GPIO17 |
18 | LCD_RS | Instruction/data register selection, low level is instruction, high level is data | GPIO24 |
19 | LCD_SI / TP_SI | LCD display / touch panel SPI data input | GPIO10 |
21 | TP_SO | Touch panel SPI data output | GPIO09 |
22 | RST | Reset signal, low reset | GPIO25 |
23 | LCD_SCK / TP_SCK | LCD display / touch panel SPI clock signal | GPIO11 |
24 | LCD_CS | LCD chip select signal, low level enable | GPIO08 |
26 | TP_CS | Touch panel chip select signal, low level enable | GPIO07 |
インストールは以下の通りです。
- Volumioをインストール
- http://volumio.local/DEV にアクセスしてSSHのENABLEボタンを押下する
- WinSCP等を使ってプラグインを転送しておく
- ターミナルを開き、SSHでvolumio.localにvolumioユーザ(パスワードvolumio)でログインする
- 以下のコマンドを実行する
$ miniunzip lcd320x480_Integration_display2_XXX.zip $ cd lcd320x480_Integration_display2_XXX $ sudo apt-get update $ sudo apt-get -y install build-essential $ npm install $ volumio plugin install : Progress: 100 Status :LCD320x480 SPI Integration Display2 Successfully Installed, Do you want to enable the plugin now? CTRL-Cで止める
- メニューからプラグインを選択し、「インストール済みのプラグイン」タブを選択する
- LCD320x480 SPI Integration Display2プラグインを有効にする
- LCDドライバ種別を選択する(異なるドライバに切り替える場合は、保存した後、Raspberry piの電源を一旦落としてください)
- 表示内容、表示反転、スクリーンセイバー、その他項目を選択後、保存する
- 再生・一時停止ボタン
- 戻るボタン
- 進むボタン
- ランダム切り替え
- リピート切り替え
- シーク(※試験中)
- ボリューム(※試験中)
- スクリーンセイバー中に画面をタッチすると通常画面に復帰
【リリース】
9/5 実験的リリース
https://www.dropbox.com/s/uoaj23weo5a75dt/lcd320x480_Integration_display2_20210905054154359.zip?dl=0
9/11 LCDの初期化処理の見直し
https://www.dropbox.com/s/iu4aj4o0mk2o4bo/lcd320x480_Integration_display2_20210910123956206.zip?dl=0
・ST7789 SPI Integration Display2 プラグイン
動作確認したものは、ST7789(CS無し)の240x240のものですので、このサイズでデザインしています。サイズが240x320については、設定画面でサイズを指定することで中央寄せで表示されるようですが、当方では確認できていません。※2021/5/5追記 ILI9341(CSあり)についても対応しました(動作確認は、秋月電子様の、「ILI9341搭載2.8インチSPI制御タッチパネル付TFT液晶 MSP2807」を使用しています)。 デザインは240x240ものしかありません。
表示モードは全部で6種類あります。
スクリーンセイバーは5つ選択できます。(11/29 LCD Wiper追加)
- BLANK
- LINE
- WATCH
- Simple WATCH
- LCD Wiper
固定再生ファイルを指定することで、指定された音源ファイルを音声通知時に再生します(WAVファイル限定)。音声通知するためには、APLAYデバイスに、ALSAデバイスを設定してください。
参考までに使用したLCDの結線を以下に示します。
Symbli | Function | Pin No | GPIO | Name |
---|---|---|---|---|
GND | power supply | 25 | Ground | |
VCC | DC 3.3-5V | 17 | 3.3V | |
SCL | SPI Clock Cable | 23 | GPIO11 | SPI_CLK |
SDA | SPI Data Cable | 19 | GPIO10 | SPI_MOSI |
RES | Reset | 22 | GPIO25 | RES |
DC | SPI Choice/ Command Choice | 18 | GPIO24 | DC |
BLK | Backlight contrli default floating low level off | NC | NC |
※ GPIO12/13/18/19からPWM出力が可能です。(GPIO18/19は動作未確認です)
※チップセレクト(CS)を使うモジュールは、GPIO8(24番ピン)を使用します。
※ 秋月電子様の「ATM0130B3使用フルカラー液晶コントロールキット」で動作確認しました。ただし、バックライト制御は試していません。
インストールは以下の通りです。
- Volumioをインストール
- http://volumio.local/DEV にアクセスしてSSHのENABLEボタンを押下する
- WinSCP等を使ってプラグインを転送しておく
- ターミナルを開き、SSHでvolumio.localにvolumioユーザ(パスワードvolumio)でログインする
- 以下のコマンドを実行する
$ miniunzip st7789Spi_Integration_display2_XXX.zip $ cd st7789Spi_Integration_display2_XXX $ sudo apt-get update $ sudo apt-get -y install build-essential $ npm install $ volumio plugin install : Progress: 100 Status :ST7789 SPI Integration Display2 Successfully Installed, Do you want to enable the plugin now? CTRL-Cで止める
- メニューからプラグインを選択し、「インストール済みのプラグイン」タブを選択する
- ST7789 SPI Integration Display2プラグインを有効にする
- CSの有無でno_csモードを切り替える
プラグインの設定画面で、以下を設定
- LCDタイプ を「ILI9341」
- LCDディスプレイ縦(Dot)を「320」
- SPIモードを「MODE0」
- SPI No_cs設定を「Off」
【リリース】
9/22 処理共通化後の初期リリース
https://www.dropbox.com/s/wuk4jtcf2rzbzw5/st7789Spi_Integration_display2_20200922075859028.zip?dl=0
10/24 表示方向機能の追加
https://www.dropbox.com/s/m37eafmpy15nbzv/st7789Spi_Integration_display2_20201024090914879.zip?dl=0
10/25 SPI CSの処理の見直し
https://www.dropbox.com/s/l8jiubvo4t1pttx/st7789Spi_Integration_display2_20201025021633659.zip?dl=0
11/23 Aplayデバイスの保存の見直し、PWM出力の追加
https://www.dropbox.com/s/yj0zab5nu50segq/st7789Spi_Integration_display2_20201123065738480.zip?dl=0
11/29 フルカラーモードの追加、LCD Wiperスクリーンセイバーの追加
https://www.dropbox.com/s/igsb3nwmibr4dqt/st7789Spi_Integration_display2_20201129045008199.zip?dl=0
2/28 インストールができない対処
https://www.dropbox.com/s/7l7erfec8nycijl/st7789Spi_Integration_display2_20210228035657439.zip?dl=0
3/1 設定画面が開かない対処、no_csモード追加
https://www.dropbox.com/s/oqf456gdi6lwbtf/st7789Spi_Integration_display2_20210301113908496.zip?dl=0
4/11 pipのインストールURL変更に伴う対処
https://www.dropbox.com/s/w24x00hgyu20uxs/st7789Spi_Integration_display2_20210410131132585.zip?dl=0
5/5 インストールパッケージの見直し、曲名表示のデザイン変更、LCDタイプ(ILI9341)の追加、不具合修正
https://www.dropbox.com/s/q7dr0fzvgl6x7lr/st7789v_Integration_display2_20210505115120052.zip?dl=0
※以前のプラグインをアンインストールし、本バージョンからインストールしようとしてもインストールできな場合があるかもしれませんので、再度Volumioのイメージからインストールしたほうが無難です。9/11 最新化
https://www.dropbox.com/s/y9e7i8t8husem3n/st7789v_Integration_display2_20210910120156247.zip?dl=0
■ I2Cに接続された有機ELに曲名を表示
・SSD1306 i2C Integration Display2 プラグイン
秋月電子様の「0.96インチ 128×64ドット有機ELディスプレイ(OLED)」で確認していたと思っていたらいつの間にか基板等が変わって新しいリビジョンになっているようです。ですので確認したのは初期に売っていたものです。この有機ELは、128x64ですのでこれ以外のサイズだと表示されません。また、基板の裏のチップの付け替えで、2つのアドレスを使用することができます。 以下の写真は、付け替えたものです。(新しいリビジョンは未確認です)
1つ目のアドレスの有機ELには、曲情報、スクリーンセイバー、緊急地震速報が表示されます。
スクリーンセイバーは3つ選択できます。
- BLANK
- LINE
- WATCH
固定再生ファイルを指定することで、指定された音源ファイルを音声通知時に再生します(WAVファイル限定)。音声通知するためには、APLAYデバイスに、ALSAデバイスを設定してください。
2つ目の有機ELアドレスには、VUメータもしくはスペクトラムが表示されます(スクリーンセイバー動作時、緊急地震速報時はブランク表示)。
参考までに使用した有機ELの結線を以下に示します。
Symbli | Function | Pin No | GPIO | Name |
---|---|---|---|---|
VCC | 3~5.5V | 1 | 3.3V | |
GND | power supply | 9 | Ground | |
SCL | I2C bus clock signal | 5 | GPIO03 | SCL1,I2C |
SDA | I2C bus data siganl | 3 | GPIO02 | SDA1,I2C |
インストールは以下の通りです。
- Volumioをインストール
- http://volumio.local/DEV にアクセスしてSSHのENABLEボタンを押下する
- WinSCP等を使ってプラグインを転送しておく
- ターミナルを開き、SSHでvolumio.localにvolumioユーザ(パスワードvolumio)でログインする
- 以下のコマンドを実行する
$ miniunzip ssd1306I2c_Integration_display2_XXX.zip $ cd ssd1306I2c_Integration_display2_XXX $ sudo apt-get update $ sudo apt-get -y install build-essential $ npm install $ volumio plugin install : Progress: 100 Status :SSD1306 I2C Integration Display2 Successfully Installed, Do you want to enable the plugin now? CTRL-Cで止める
- I2Cバスの他の機器に影響を与えない値で。/boot/userconfig.txtファイルに以下を追加する(追加したら再起動)
dtparam=i2c_baudrate=400000
- メニューからプラグインを選択し、「インストール済みのプラグイン」タブを選択する
- SSD1306 I2C Integration Display2プラグインを有効にする
【リリース】
9/22 処理共通化後の初期リリース
https://www.dropbox.com/s/yxpdgkyarv7zsds/ssd1306I2c_Integration_display2_20200922075850974.zip?dl=0
11/23 Aplayデバイスノ保存の見直し
https://www.dropbox.com/s/q0nz0yqrc21scyo/ssd1306I2c_Integration_display2_20201123065726413.zip?dl=0
2/28 インストールができない対処
https://www.dropbox.com/s/a4ix0qbzgbweda7/ssd1306I2c_Integration_display2_20210228035651533.zip?dl=0
4/11 pipのインストールURL変更に伴う対処
https://www.dropbox.com/s/bz5awbwo55yqm5x/ssd1306I2c_Integration_display2_20210410131145167.zip?dl=0
5/5 インストールパッケージの見直し
https://www.dropbox.com/s/vv1876zu869o6xz/ssd1306I2c_Integration_display2_20210504122345139.zip?dl=0
※以前のプラグインをアンインストールし、本バージョンからインストールしようとしてもインストールできな場合があるかもしれませんので、再度Volumioのイメージからインストールしたほうが無難です。■ 参考
緊急地震速報の情報は、以下を利用しています。
- 防災科学技術研究所 強震モニター使い方は、「C#で緊急地震速報を取得する」を参考にさせていただきました。
- 国土地理院 地理院タイル ベースマップタイルは https://cyberjapandata.gsi.go.jp/xyz/std/{z}/{x}/{y}.png で取得しています。とても便利です。
作成中(9/5) [Volumio]
http://www.lcdwiki.com/MHS-4.0inch_Display-B
http://www.lcdwiki.com/MHS-3.5inch_RPi_Display
この辺の互換モジュールなので、もしかしたらみなさんが買っても動作しないかもしれませんが。
5/30
デザインはほぼ確定ですかね。あとはタッチパネル押下時の処理を検討。
9/5
本日、暫定的にリリースしましたがまだ使い込んでいないのでまだまだ不具合があるかと思います。