お父にゃんの電子工作 -17ページ目

お父にゃんの電子工作

暇なおじさんが、電子工作(主にラジオ製作)をして勝手な感想を書く

前回、Webラジオのベース部分が出来たので、いろいろ未対応な部分を付け足して、とりあえず、なんとなく動くところまで作ってみたい。

 

ちなみに、コードを書くときはRaspberry PiのThonnyで書いても良いのだが、あまり作業性がよろしくない。

なのでWindowsのVisual Studio Codeを使って書いて、Real VNCでRaspberry Piにファイルを転送して動かしている。Visual Studio CodeだとPythonを認識して関数、変数など適度に色分けしてくれるので、見やすくてありがたい。

 

 

回路図はこちら(変更なし)

 

色々あったのだが、何となく動作するものが出来た。

 

標準モード

 

詳細表示モード(センターSW長押しで移行)

見た目、なんとなく、それっぽい感じ。
表示内容はステーションが返すステーション名、サンプルレート、コーデックくらいしか増えていない。

 

文字を小さくすれば他の情報を入れることも可能だが、小さいと読みづらい。

詳細表示モードを無しにして、標準モードにCodecを追加するだけで良いかもしれない。

 

音量調整、設定値の保存・読み込みも出来る。

しかしまだ、細かいところが作りこめていない。

 

今回mpvとffprobeを使ってWebラジオを構成してみたが、IPCソケットで通信できるようになるまで時間がかかる等で、起動が遅いような気がする。

他のやり方もあるようなので、ちょっと調べてソフトを入れ替えるか、このまま使うかを考えてみたい。

あと、液晶が2インチで輝度調整が出来ないタイプなので、2.8インチ版の輝度調整の出来るLCDを発注しておいたので、届き次第動かしてみたい。

 

参考までに、今回のコードを以下に入れておきます。

 

Web_Radio_V0_22

 

 

「にゃかにゃか時間がかかるにゃ~」

へいへい、もうしばらくお待ちを。

それより、足が届きかねてますぜ

 

 

----------- 補足----------

なお、今回のコードを動かす前に以下作業が必要

●液晶を動かすためにLuma.lcdのインストール
sudo apt update

sudo apt install python3-luma.lcd python3-pil

●日本語対応フォントがインストールされていないので、noto-cjkをインストール。
sudo apt install fonts-noto-cjk

● rpi-lgpioにアップデート
sudo apt remove python3-rpi.gpio
sudo apt install python3-rpi-lgpio 

● I2Sドライバを有効化
sudo nano /boot/firmware/config.txt

ファイルを開いたら以下を追加: 
# PCM5102 用 I2S 設定
dtparam=i2s=on
dtoverlay=hifiberry-dac

●pigpioがPCM用タイマを使っているので、PWMタイマーを使う設定にする
sudo mkdir -p /etc/systemd/system/pigpiod.service.d
sudo nano /etc/systemd/system/pigpiod.service.d/override.conf
エディタが開いたら以下を記入
[Service]
ExecStart=
ExecStart=/usr/bin/pigpiod -t 0 -l

保存してリブート 

 

●Webラジオの再生ソフトのmpvをインストール

sudo apt install mpv