pirateaudioのメモ2

pirateaudioにmopidyの組み合わせでLCDに日本語表示させるのは情報が探せなくて断念。

 

raspberrypi zero +Volumioの組み合わせを試す

 

ネットの情報だとVolumioのプラグインにpirateaudioが対応しているそうだが、Volumio3になったせいかプラグインのリストには出てこない。

作者のGithubから直接インストールすることにした。

GitHub - Ax-LED/volumio-pirate-audio: Python code (Plugin) to use pirate audio dac with volumio (including display and the 4 buttons) and a raspberry pi.

 

ここの説明に沿ってインストールするが、これもそのままでは動かず、ST7789を入れ直して動作した。

  • sudo pip uninstall ST7789
  • sudo pip install ‘ST7789==0.0.3’
    こんな感じで古いバージョンを入れるといいらしい。

日本語に関しては、display.pyのフォントをNotoフォントに入れ替えることで表示ができた。

font_s = ImageFont.truetype(script_path + '/fonts/NotoSansCJK-Regular.ttc', 20)
font_m = ImageFont.truetype(script_path + '/fonts/NotoSansCJK-Regular.ttc', 24)
font_l = ImageFont.truetype(script_path + '/fonts/NotoSansCJK-Regular.ttc', 30)
こんな感じ。

フォントファイルのオーナー、グループをvolumioにした。これが影響していたかは検証していない。(フォントインストールしてコピーしてくるとオーナー、グループはrootになっている)

 

忘れないうちに情報として書き残しておく。

 

プラグインの作者  氏に感謝

 

追加

Yボタンが利かなかったのはPirateaudioは新しいものだとYボタンのGPIOが20から24に変わっているとのこと。
/boot/config.txtの中身とdisplay.pyのYボタンに関する部分を20から24に変更して動作した。

PirateAudioのメモ

PirateAudioのメモ

環境 

Raspberry Pi zero w
OS:raspberrypiOS Lite


インストール(Mopidy)
ここを参照

https://raspida.com/setup2pirate-audi

ブラウザでの日本語の文字化け

ファイル名のフォーマットがUFT-8になってない為だと思ったけど、実はそこではなかったようで、mp3ファイルの中身に書かれていたタグの問題だった。

Mp3tagというmp3の中身を編集するソフトを使って元のファイルを書き換えて対応。これでブラウザの表示は日本語で表示された。

https://arakoki70.com/?p=6852

 

ディスプレイの表示が四角になるのはフォントらしいが、調査中

 

ESP-WROOM-02+ST7735

 

ESP-WROOM-02を使って1.8インチの液晶に絵を出すまでにハマりまくったので

忘れないうちにメモを書いておこう。

 

買ったものたち

いつもの如くアマゾンで部品を手配。

 

ESP-WROOM-02 32メガビット 品 4MB 技適取得済み お得な2個セット

Amazon CAPTCHA

 

[スイッチサイエンス] ESP-WROOM-02ピッチ変換用基板《フル版》(基板のみ)

Amazon CAPTCHA

 

Amazon.co.jp: HiLetgo FTDI FT232RL 3.3V 5.5V USB to TTL シリアル コンバーター アダプター モジュール for Arduino [並行輸入品]: おもちゃ

 

Amazon.co.jp: HiLetgo 3.3V 5V MB102 ブレッドボード専用 パワー サプライ モジュール Arduinoと互換 [並行輸入品]: おもちゃ

 

とりあえず絵が出せた。

参考にしたサイトはいろいろあるけどこちら。

170321: ESP-WROOM-02+ST7735s | なんかしてるえかいくん

実にありがたい。



f:id:woosan900rr:20170507123859j:image

ついでに配線図も忘れないようにあげておく

 f:id:woosan900rr:20170521162459p:plain

 

ハマったポイント

・当初 IO0 のHi/Loだけがモード切替に関係していると思い込み、IO2、IO15の

配線をしていなかった為、うまく起動しなかった。

参考にしたサイトのこの図を見て間違いに気付くなど

・AdafruitのST7735ライブラリを最新の1.0.4に上げるが、コンパイルエラーとなる。

このページを参考に修正。

https://github.com/adafruit/Adafruit-ST7735-Library/issues/25

 

不思議なことにライブラリバージョン1.0.1では存在していたESP8266に関する部分が

1.0.4ではすっかり消えていた。

仕方ないので「Adafruit_ST7735.h」を直接編集して以下の部分を追加。

#elif defined(ESP8266)
volatile uint32_t *dataport, *clkport, *csport, *rsport;
uint32_t _cs, _rs, _rst, _sid, _sclk,
datapinmask, clkpinmask, cspinmask, rspinmask,
colstart, rowstart; // some displays need this changed

#endif

厄介だったのはとりあえずespの記述がある1.0.1で固定したいのだが

ArduinoIDEのライブラリマネージャーが、勝手に更新走らせるので

起動時に1.0.4のエラーが出るバージョンに書き換えられてしまうこと。

直接書き換えたのでなんとかなったけど、ちょっと焦った。

それとzipファイルから直接登録したライブラリの場所が当初表示されず

探し回った。

C:Users\[ユーザー名]\Documents\Arduino\libraries

にあるのだが、普段は表示されないっぽい。

 

・ST7735の配線が分からず探し回るなど。

こちらも参考にしたサイトの情報をもとに配線をする。

ST7735 -> ESP-WROOM-02

 (A0 → IO4

 RST → IO5

 CS → IO16

 SDA → IO13

 SCLK → IO14

ST7735のライブラリにある、サンプルスケッチもこの配置に修正した。

#include <Adafruit_GFX.h>    // Core graphics library
#include <Adafruit_ST7735.h> // Hardware-specific library
#include <SPI.h>

// For the breakout, you can use any 2 or 3 pins
// These pins will also work for the 1.8" TFT shield
#define TFT_CS     16
#define TFT_RST    5  // you can also connect this to the Arduino reset
                      // in which case, set this #define pin to 0!
#define TFT_DC     4
 
ESP-WROOM-02は性能も良いのだが、いかんせんピン数が少ない。
いろいろ繋いで遊ぶならESP-WROOM-32の方便利かも。
 
f:id:woosan900rr:20170507133737j:image
やっぱりこの形になってると、いろいろ楽できて助かる。