[piCorePlayer] Waveshare3.5″TFTとjiveliteを使ったpiCorePlayer-1

こんにちは

久しぶりに「もどきラジオ」のその後を紹介をしたいと思います。とはいっても、これまた新しい記事を見つけて、それを参考に試作をしている段階ですが、記事に書かれていなくて、初期的な間違いをおかしてしまったこともありました。ここでは、これらを含めてに簡単に紹介したいと思います。 でもやっぱり「もどきラジオ」なので音量調整用のボリュームはつけたいものですね。試作と言ったのはそこを含めたものを指します。

LMSは外部のものを使用しています。 内部のLMSを指定したらエラーが出て表示が出来なくなりました。 調べていますが原因がわかりましたらこの記事で

参考にした記事は

PUGHx2

MODX Revolution - home
PUGHx2 Personal Website

です。

必要なもの

Raspberry Pi 2B+

おなじみの物なのでここでは説明はしません。

A TFT screen -Waveshare 3.5″

ここで紹介するTFT screenは、参考にした記事で紹介されていたものを使用しました。 Amazonさんでいろいろ同じような製品が安く出ていますが、やはりオリジナルに沿って間違いないものをということで、直接Waveshareから購入しました。本体+EMSで$35程度です。1週間程度で配達時に印鑑を要求されますが追跡が可能です。

参考までに

480x320, 3.5 inch Touch Screen TFT LCD Designed for Raspberry Pi
480x320, 3.5 inch Touch Screen TFT LCD Designed for Raspberry Pi

3.5inch RPi LCD (A), 320×480

参考にした記事で紹介されていたものとはコントローラの名前?が少し違うようです。

似たような製品で

480x320, 3.5 inch Touch Screen IPS TFT LCD Designed for Raspberry Pi
480x320, 3.5 inch Touch Screen IPS TFT LCD Designed for Raspberry Pi

3.5inch RPi LCD(B),320×480, IPS

というものもあります。こちらは価格が少し高いですがSpotPearになっています。

なぜ2つも持っているのかといいますと、最初に(A)を購入して参考にした記事どおりにソフトを入れて動作確認をしたのですが、3.5″本体に表示が出なかったのです。(コンソール上に表示される一連の文字は表示されるのですが)。この顛末については後で紹介します。

Getting Started

参考にした記事がWindowsを使っていたので、自作のディスクトップPC(Windows7 pro 64bit)を使用してみました。

必要なソフト

参考にした記事で紹介されていたソフトをそのままインストールして使用しました。

WinSCP

Putty

Advance IP Scanner

Win32DiskImager

Notepad++

piCorePlayerのダウロードとセットアップ

piCorePlayerの最新版は

google sitesのpiCorePlayerからダウンロードできます。

Download - piCorePlayer
Raspberry Pi audio player for your Squeezebox system using Squeezelite

それをWin32DiskImagerを使ってSDカードに書き込みます。

なお初期のSDカードはいいのですが、一度piCorePlayerを書き込んだあとに、もう一度使うためにフォーマットする場合には面倒なようです。

LinuxであればGpartedを使えば簡単に全てのデータを消して初期化が可能なのですが。多分Windows用もあるかと思いますが?

で、書き込んだあとに、そのままの状態でライターからSDカードを抜かないで、Windows上でNotepad++を立ち上げて、cmdline.txtとconfig.txtを編集します。ここら辺は参考にした記事に画像入りで詳しく紹介されていますので、そちらをご覧ください。

編集が終わったあとは、SDカードをライターから抜き取り、raspberry Piに挿入して、ネットワークを接続して電源を入れます。

Raspberry PiのIP Addressは、Advanced IP Scannerを使うと便利です。

Google chromeやFireFoxなどを使って

Raspberry PiのIP Address (たとえば192.168.1.15とか)を192.168.1.15と入れてリターンするとRaspberry PiにインストールしたpiCorePlayerのホームページが表示されます。

あとは参考にした記事にしたがって設定をしていきます。

piCorePlayer (192.168.1.15)

この様なページが表示されます。(図は100.10トナッテイマスガ)

ページの上の左端でMain Pageを選択することが出来ます。

Main Pageの最後のほう(下側に)[Basic], [Normal], [Advanced], [Beta]を選択するところがありますので、そこで[Beta]を選択します。

Resize FS (Main Page)

サイズが100MBと書いてありますが、最大の1000MBを選んでも問題ありません。

Extensions(Main page)

Main PageのExtensionsを選んで

Set extension repositoryという項目の

Offical piCore repository –> piCorePlayer sourceforge repository

を選択して「set」ボタンをクリックします。

WARNNIGの赤い枠が表示されますが無視して

Dwonloaded extensionsの項目から

pcp-jivelite_default-waveskin.tczを選択して「load」をクリック

loadが完了するまで、少し時間がかかりますので待ちます。

Installing pcp-jivelite_default-sav35skin.tcz..という項目の下にインストールの様子が表示されます。

終わりましたら赤枠にある「Reset」をクリックしてMain Pageに帰ります。

WinSCP(Software)

これからいよいよpiCorePlayerのソフトそのものに手を加えていくのですが、ここでWinSCPについて一箇所設定を変更する必要があります。といってもいつも使っている方とか知識のある方々には周知のことだと思いますが。

私はここで設定をしていなかったため、2台もの3.5″TFTを購入する羽目になりました。

WinSCPの環境設定を開き「デフォルトの文字コード」の932(ANSI/OEM)を変更します。

932 (ANSI/OEM)  –> UTF-8 に変更します。

これをしておかないと、あとで大変な目にあってしまいます。

/opt/bootlocal.sh (WinSCPを使ってpiCorePlayerにlogin)

参考にした記事で指示されている内容をそのまま「/opt/bootlocal.sh」にコピーします。画像付きなのでわかりやすいと思います。

piCorePlayer(192.168.1.15)-Tweaks

piCorePlayer(192.168.1.15)のホームページでTweaksを選択して

「jivelite Setup」でSet Autostartの項目の中の「Yes」クリックして「Set AutoStart」をクリックします。

その後同じ「jivelite Setup」内にある「Reset」をクリックします。

jivelite.sh(winSCP)

jivelite.shは、/opt/jivelite/bin/の中にあります。

ここからjivelite.shを一度自分のPCの任意の場所にもってきます。私の場合はなぜかDocumentsになっていましたが、どこでもいいです。

画面の右側がpiCorePlayerの/opt/jivelite/bin/

左側が私のPCのDocuments内です。jivelite.shを選んでマウスの左をクリックして、左側のPCへ持ってくればコピーしてくれます。

jivelite.shの中身は参考にした記事に紹介されていますので、そちらをご覧ください。

このjivelite.shを次に/mnt/mmcblk0p2/tce/にコピーします。今度は左のPCから右のpiCorePlayerへのコピーとなります。

ここら辺のことが参考にした記事では良くわかりませんでした。

/home/tc/www/cgi-bin/do_rebootstuff.sh(winSCP)

次にwinSCPの右側のpiCorePlayerの中を移動して/home/tc/www/cgi-bin/のファイルに入ります。

右側の一番上にdo_rebootstuff.shがあります。

このファイルをマウスの左でクリックするとエディタが開きdo_rebootstuff.shを見ることができるようになりますので、この中の一部を参考にした記事の通りに修正します。

修正が終わったらエディターに上の左端に保存用のアイコンの色が青くなっていますので、これをクリックして保存します。 これをしないと修正したものが保存されません。

piCorePlayer (192.168.1.15)でのBackup

piCorePlayer(192.168.1.15)のホームページのMain Page内にあるBackupをクリックしてバックアップを取っておきます。

 

顛末

参考にした記事によれば、これで終わりのようで、同じMain Page内にあるRebootをクリックして再起動するようです。

設定が間違っていなければ3.5″ TFTの画面上に表示が現れます。

UTF-8

なぜ型の違う3.5″ TFT (A)と(B)を持っているかという理由ですが、winSCPでの設定をわざわざここで紹介した理由につながっています。

つまりエディタで入力した文字に不要なコードが含まれていて、jivelite.shが起動できなかったということです。これがわからなかったために、もしかしたら間違った物を購入したのかと思って、もう一台購入するに至った訳です。

でも結論は同じで、両方とも表示が出ませんでした。

その後、2週間ほど悩んだのですが、ふとしたことでエラーの表示をネットで調べて見て原因が判明したということです。

普通はRaspberry Piのソフトを修正したりする場合はMacのTerminalを使っているため、当然UTF-8に設定されています。 普段使ったことのないWindowsを使ったための、さらにインストールしたてのソフトをそのまま使ったということに問題があったわけです。 反省

3.5inch RPi LCD(B),320×480, IPS

写真の写りが悪くて申し訳ないのですが、ちゃんと日本語の表示もするようです。電源投入時にはバックライトは点灯していません。

3.5inch RPi LCD (A), 320×480

これも使用できました。 こちらは電源投入時にバックライトが点灯していて白く光っています。

Calibrate the Touch Screen

ところで大事なことを忘れていました。タッチパネルのキャリブレーションをしなければなりません。参考にした記事を参考にキャリブレーションを行います。

cat /proc/bus/input/devices  (Putty)

Puttyを使ってタッチパネルのイベント番号を調べます。

Touchscreenのeventは1となっています。

/home/tc/www/cgi-bin/do_rebootstuff.shの中の

export TSLIB_TSDEVICE=/dev/input/event1

に修正します。

piCorePlayer(192.168.1.15)-Tweaks

ここでjivelite autostart が Yes になっているのを Noにチェックを入れてrebootします。

rebootの後にautostartNoになっているのを確認します。

ts_calibrate(Putty)

次にPuttyを使ってキャリブレーションを行います。

sudo TSLIB_FBDEVICE=/dev/fb1 TSLIB_TSDEVICE=/dev/input/event1 /usr/local/bin/ts_calibrate

3.5″ TFTの画面にキャリブレーションの画面が現れますので、付属のペンを使って指示された場所を押していきます。5箇所です。

次にtestを行います。

sudo TSLIB_FBDEVICE=/dev/fb1 TSLIB_TSDEVICE=/dev/input/event1 /usr/local/bin/ts_test

ペンで押した場所に表示が現れるか、線を描くことができるかのテストをすることができます。

piCorePlayer(192.168.1.15)-Tweaks

次に autostartYesにします。

sudo filetool.sh -b(Putty)

最後にPuttyを使ってバックアップを取ります。

sudo filetool.sh -b

sudo reboot

 

これで終わりです。

これは参考にした記事のチェックをしたようなものですが、これに以前紹介したロータリーエンコーダを取り付けて音量調整などができるのかに挑戦したいと思っています。 試作が完成したあかつきにはまた紹介したいと思います。

コメント