記事内に広告が含まれています

M5Stack DinMeterでSi4730をコントロールするデスクトップラジオミニを製作しました

M5STACK

はじめに

当ブログの少し前に2つの記事で紹介した共立エレショップで購入したラジオモジュールとそれを実装するために製作したオーディオアンプ基板をM5Stack社製DinMeterのロータリーエンコーダーを利用すれば簡単に操作できるのでは?と思いクラシカルなラジオを製作してみました。このラジオはインターネットでラジオではなく、ハードウェアとしてのFM/AMチューナーが内蔵されています。つまり、電源を入れさえすれば本当のリアルタイムでラジオ放送を楽しむことができますよ。

この作品は M5Stack Global Innovation Contest 2026 に応募してみましたので、宜しければhackster.ioの記事も見ていただけると嬉しいです。

このプロジェクトで使うパーツ

今回のプロジェクトで使用した主なパーツです。

メーカー部品名機能
M5stackDinMeterコントローラー
不明(共立エレショップ)Si4730搭載ラジオモジュールAM/FM DSP無線モジュール
DiodesPAM8406DRステレオ オーディオアンプIC
Molexpicoblade 53047-02101.25mmピッチ 2pin
(スピーカー接続用)
XKB connectionXKB5858-Z-Cプッシュスイッチ(トグル)
HOOYAPJ-307A-1.3ステレオ オーディオジャック

M5Stack Din Meterの初期バージョンはディスコンになっているので、マイコンモジュールの”M5StampS3″が”M5StampS3A”にアップグレードされているV1.1を使用することになると思います。【当記事では初期バージョンで動作確認をしました】

共立電子産業株式会社 KYOHRITSU ELECTRONIC INDUSTRY CO.,LTD.

アンテナは形状や性能等でお好み次第ですが、今回使用しているラジオモジュールでは以下のようなものが使えると思います。

特徴

ラジオ製作は電子工作の古典的なプロジェクトですが、高周波増幅回路、ミキサー、フィルターといったような、いわゆるアナログ回路の塊では無くて、今どき時代のDSPラジオチップを使いました。

DSPラジオチップは各メーカーから何種類ものチップがリリースされていますが、このプロジェクトでは、ポピュラーなSi473xシリーズの中からSi4730を搭載したラジオモジュールを利用しています。ラジオモジュールはクリスタル発振器のような周辺回路が内蔵されているためIC周辺回路の設計が不要となりラジオ製作のハードルをさらに一段さげてくれています

ラジオチューナーモジュールからの音声出力はイヤホンを駆動するのに十分なレベルですが、オーディオアンプボードを設計して音量を上げることでステレオスピーカーでも楽しめるようにしました。
このプロジェクトで使ったラジオチューナーモジュールは、強力にシールドが施されたモジュールですので、うまく使いこなすことができれば耐ノイズ性能は抜群かもしれませんね。

製作した デスクトップラジオミニ の内部構造

DIN Meterでラジオチューナーモジュールを制御する

ラジオチューナーモジュールに組み込まれたSi4730チップの周波数および音量制御を、M5Stack Din Meter(M5StampS3内蔵)のGroveコネクタ”PortA”と”PortB” に接続されているGPIOを4つ使用してコントロールしています。電源はDC(例えば6V)をDINMeterのVIN2へ入力しDIN Meterの5V出力をラジオチューナーモジュールとオーディオアンプICに入力しています。

回路の詳細な説明

それほど多機能な回路設計ではありませんが、いくつかの特徴的な部分を説明します。

  • オリジナル設計のオーディオアンプ基板は、オーディオステレオアンプICのPAM8406DRを使っています。このICの興味深い点は、電源をOFFすることなくクラスD動作とクラスAB動作をシームレスに切り替えられることです。プッシュボタンを押し込んでいる状態がクラスDモードです。
  • PAM8406DRはミュートコントロール機能も有しているため、上記のアンプ動作切替えと合わせてスイッチを2つ設けることにしました。プッシュボタンを押し込んでいる状態がミュートオフで音が出力されます。
  • 実際に使用してラジオ放送を聴いてみると、確かにクラスABはクラスDよりノイズが少なくやや音質が優れていることがわかりました。バッテリーで動作させる場合のように省電力が必要でなければ、多少なりともクラスABモードの良い音質で利用する方がよさそうです。
  • ヘッドホンジャックが備えている機械的スイッチはPAM8406DRのシャットダウンピンに接続されています。ヘッドホンをジャックに接続すると、シャットダウンピンがLOWレベルになることでアンプはオフし、データシートによると1uA以下の省電力モードになります。この時ラジオチューナーモジュールからの音声信号はアンプ側の回路と切り離されヘッドホンジャックから出力されることになります。
  • DIN Meterからラジオチューナーモジュールを制御するには4本の制御信号が必要となります。3線式シリアル通信用の”/SEN”,”CLOCK”,”SDIO”,”の3本に加えてリセット”/RST”信号用に1本です。DIN Meterの2つのGrove端子を使うことで合計4つのGPIO端子を利用します。

基板パターン図

配線はそれほど複雑ではないので両面基板で設計しました。今回のプロジェクトではDIN Meterの外部電源端子”Vin2″に電源を供給しDInMeterのGroveコネクタから出力される5V電圧をラジオモジュールとオーディオアンプICに供給する設計としたため、DCジャックを基板に実装しジャンパ線で接続しました(上記の内部構造写真をご参照下さい)。
DINMeterを使用しない場合は、Groveコネクタの端子接続用スルーホールがラジオモジュールとオーディオアンプICへ接続接続されていますので、ここに5V電源を供給することができます。

左:表面  右:裏面

今回使用したラジオモジュールを制御するためには3線シリアルのコントロールが必要ですので、例えばArduino Unoなどから制御する場合は、片方がGroveコネクタでもう片方がデュポン(2.54mmピッチピンヘッダ、ピンソケット用)となっているGroveケーブルが使いやすいかもしれません。

Demo動画

おおむねロータリーエンコーダーでの操作方法は想像できると思いますが、簡単な動画を作成しましたので紹介します。

おわりに

Din Meterは液晶画面とロータリーエンコーダーが一体になっていることでロータリーエンコーダーで物理的な入力操作、液晶ディスプレイで視覚的な出力操作ができるので、このようなプロジェクトでは使いやすかったです。欲を言えばもう少し多くのGPIO端子があれば、もっと多くのデバイスが接続できて、もっと面白いものが作れるのかもしれませんね。

このラジオモジュールを実装できる基板とサンプルプログラムを少量ですがBOOTHで頒布開始しましたので宜しければご参照下さい。

コメント

タイトルとURLをコピーしました