SSブログ

ST7789 SPI Integration Display プラグイン Ver2を作りました。(8/8更新) [Volumio]

OPAです。こんばんは。
LCDに曲名等を表示するプラグインのVer2を開発しました。
処理の見直しとモジュール化、共通化を行いました。今後の開発が楽できそうです。
対応するLCDは、ST7789 SPI(CSなし)版です。今後の提供は入手性が高く、解像度が高いLCDに対して開発していきます。次はどのLCDにしようかな。縦横のドットの数が異なるとデザインをそれぞれ用意しないといけないので今後は絞り込むことを検討します
なお、本プラグインは私が趣味で作ったものなので、動作保証はしませんし、ハードウェアやVolumioが破損したとかにも責任はとれません。自己責任でお願いします。
本プラグインは、LCDモジュールの縦横のドットが同じため、縦横の入れ替えができるようになっています。ケースに入れる場合は横に設置するんでしょうかね。
表示モードは6種類あります。

st7789displaymoder.jpg

ピンぼけなところがいまいちですが、雰囲気はわかりますかね?
VUメータとスペクトラム表示はソフトウェアで実現しているためリアルタイムな値は示していないと思われます。
スクリーンセイバーは前作と同じ3つ選択できます。緊急地震速報の表示では日本地図が表示され、震源地に×印をつけるようにしました。設置場所の緯度経度を設定することで距離も表示されます。

st7789screensaver.jpg

緊急地震速報については以下を利用しています。

〇防災科学技術研究所 強震モニター http://www.kyoshin.bosai.go.jp/kyoshin/
※使い方は、https://qiita.com/iedred7584/items/8af67452c65630a74a70 「C#で緊急地震速報を取得する」を参考にさせていただきました。強震モニターほどの機能はありませんが。。。。音声で通知することができます。

〇国土地理院 地理院タイル ベースマップ https://maps.gsi.go.jp/development/ichiran.html
※タイルは https://cyberjapandata.gsi.go.jp/xyz/std/{z}/{x}/{y}.png で取得しています。とても便利です。

スクリーンセイバーの時計の数字のフォントには
https://www.trojanbear.net/s/category/font
を使用しています。ありがとうございます。

インストール方法も若干変更しています。以下の手順で行います。
1. Volumioをインストール
2. http://volumio.local/DEV にアクセスしてSSHのENABLEボタンを押下する
3. WinSCP等を使ってプラグインを転送しておく
4. ターミナルを開き、SSHでvolumio.localにvolumioユーザ(パスワードvolumio)でログインする
5. 以下のコマンドを実行する
$ 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

※Status :ST7789 SPI Integration Display2 Successfully Installed, Do you want to enable the plugin now?
が表示されたらCTRL-Cで止める
6. メニューからプラグインを選択し、「インストール済みのプラグイン」タブを選択する
7. ST7789 SPI Integration Display2プラグインを有効にする

表示している文字の色もカスタマイズできるようにしてみました。以下のファイルを参考に適用したい部分の色を指定してファイルを作成し、プラグインの設定画面で、「設定色の設定ファイル」にそのファイルのフルパスを記述してください。
/data/plugins/miscellanea/st7789spiintegrationdisplay2/style.json

サンプルはデバッグで使ったものなので、常用には、ちょっとな感じです。
Open JTalkの設定で、「固定再生ファイル」の項目にフルパスでwavファイルを指定することで、音声を動的に再生せずに通知時に音を再生します。音声合成には時間がかかるため速報性はありません。
地震速報などはそんなにまだ動かされていないのでまだ問題があるかもしれませんので、おいおい修正していきます。
ダウンロード先のリンクは以下の通りです。

https://www.dropbox.com/s/3vcylgt7mxzvtqq/st7789Spi_Integration_display2_20200614010355591.zip?dl=0

6/16 更新 OSにタイムゾーンの設定がされている場合、時計の時刻がずれる問題に対処

https://www.dropbox.com/s/6wl4cp1thq1wqts/st7789Spi_Integration_display2_20200616115730702.zip?dl=0

6/18 240x320 確認用
https://www.dropbox.com/s/jc6yf245klfej17/st7789Spi_Integration_display2_20200618112702678.zip?dl=0

6/20 旧プラグインにあった時計スクリーンセイバーを移植
https://www.dropbox.com/s/ecyuw9m49d3e5ik/st7789Spi_Integration_display2_20200620065351035.zip?dl=0

6/23 動作確認用
https://www.dropbox.com/s/rfqhveitekh2ga7/st7789Spi_Integration_display2_20200623114614323.zip?dl=0

6/25 plugin設定画面でActiveにならない現象の修正
https://www.dropbox.com/s/mq67psnsgwgxlz1/st7789Spi_Integration_display2_20200625072510613.zip?dl=0

7/5 ボリュームの表示とWeb Radio時のアルバムアートを表示するように修正
https://www.dropbox.com/s/q7hi1uiu6q7hssl/st7789Spi_Integration_display2_20200705075003523.zip?dl=0

7/12 データベース更新中のダイアログを表示するよう修正
https://www.dropbox.com/s/465g221k6fb98s2/st7789Spi_Integration_display2_20200711132704323.zip?dl=0

7/13 再パッケージ化
https://www.dropbox.com/s/iymy4gkogb3ei9i/st7789Spi_Integration_display2_20200713122123918.zip?dl=0

7/15 再々パッケージ化
https://www.dropbox.com/s/96ez925432ax4h3/st7789Spi_Integration_display2_20200715120510364.zip?dl=0

7/24 Pi4Bでのライブラリ違いによる動作不能の回避およびPi4Bでのハイレゾ音源再生時のレベルメータの動作不安定を修正
https://www.dropbox.com/s/4lxnvsgyplp54g6/st7789Spi_Integration_display2_20200724041417484.zip?dl=0

8/8 volumioの設定変更時にVUMeter/Spectrumが表示されなくなる場合に、プラグインのON・OFFで改善するよう変更(Volumioプログラムが再起動します)。またPodcastでアルバムアートが表示できるように変更。
https://www.dropbox.com/s/qzlfjylybxgt4ah/st7789Spi_Integration_display2_20200808021336910.zip?dl=0


nice!(0)  コメント(128) 

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