絨毯スピーカー型DSPラジオ（RDA5807M+Arduino Promini）


<img src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/219051/f9355fdb-7d22-af75-aa3d-a9bd39b0a2ca.jpeg" width=50% border="1">
#内容
 - RDA5807Mラジオモジュールを使用したFMラジオです。
 - 小型スピーカで落ち着いた音にするため、絨毯スピーカー型に仕上げました。
 - 選局は、ハードコーディングした周波数（地表波とCATV）を指定するモードと、100kHzステップの手動選局が可能です（ロータリーエンコーダのつまみを押すと切り替わる）。
 - スピーカーアンプとして利用できるように、前面に外部入力端子を設けました。電源スイッチの上下でラジオとアンプを切り替えます。

#部品
 - [FMラジオモジュール RDA5807M](https://www.amazon.co.jp/KKHMF-FM%E3%83%A9%E3%82%B8%E3%82%AA%E3%83%A2%E3%82%B8%E3%83%A5%E3%83%BC%E3%83%AB-RDA5807M-RRD-102V2-0-2-7-3-6V/dp/B01LZ7RWV3)
 - Arduino ProMini(3.3v)
 - [ＴＡ７３６８使用小型アンプキット](http://akizukidenshi.com/catalog/g/gK-05965/)
 - [OLED 0.91インチディスプレイ IIC I2C](https://www.amazon.co.jp/DSD-TECH-Arduino-ARM%E7%94%A8IIC-OLED%E3%81%AE0-91%E3%82%A4%E3%83%B3%E3%83%81%E3%83%87%E3%82%A3%E3%82%B9%E3%83%97%E3%83%AC%E3%82%A4/dp/B07D9H83R4/ref=sr_1_1?__mk_ja_JP=%E3%82%AB%E3%82%BF%E3%82%AB%E3%83%8A&dchild=1&keywords=OLED&qid=1587220802&s=diy&sr=1-1)
 - 8Ωスピーカー（57mm）
 - 10kΩボリューム（Aタイプ）
 - [ロータリーエンコーダ（スイッチつき）](https://www.amazon.co.jp/HiLetgo%C2%AE-3%E5%80%8B%E3%82%BB%E3%83%83%E3%83%88-%E5%9B%9E%E8%BB%A2%E5%BC%8F%E3%81%AE%E3%82%A8%E3%83%B3%E3%82%B3%E3%83%BC%E3%83%80%E3%83%A2%E3%82%B8%E3%83%A5%E3%83%BC%E3%83%AB-%E3%83%AD%E3%83%BC%E3%82%BF%E3%83%AA%E3%83%BC%E3%82%B3%E3%83%BC%E3%83%89-Arduino%E3%81%AE%E3%81%9F%E3%82%81%E3%81%AB/dp/B014VUOP7S/ref=sr_1_1_sspa?__mk_ja_JP=%E3%82%AB%E3%82%BF%E3%82%AB%E3%83%8A&dchild=1&keywords=%E3%83%AD%E3%83%BC%E3%82%BF%E3%83%AA%E3%83%BC%E3%82%A8%E3%83%B3%E3%82%B3%E3%83%BC%E3%83%80&qid=1588566207&sr=8-1-spons&psc=1&spLa=ZW5jcnlwdGVkUXVhbGlmaWVyPUExS1ozME9YUEY5SzFMJmVuY3J5cHRlZElkPUEwNTIyNjYzMVFXTkJZSktYUjhDVyZlbmNyeXB0ZWRBZElkPUEzODVWN0xPVlY4SlBKJndpZGdldE5hbWU9c3BfYXRmJmFjdGlvbj1jbGlja1JlZGlyZWN0JmRvTm90TG9nQ2xpY2s9dHJ1ZQ==)
 - 2回路2接点トグルスイッチ（ON-OFF-ON）
 - F型コネクタメス→3.5φミニプラグ変換ケーブル 
 - セリア「フタ付きケース」Tall
 - A4書類スタンド
 - ダイソー「ミニカーペット」
 - 3.5φモノラルジャック（アンテナ用）
 - 3.5φステレオジャック（前面入力端子用）

#回路
 <li>~~- 感度を高めるため、アンテナ入力をトランジスタ（2SC3356）で増幅しています。~~　色々実験した結果、アンテナを直結したほうが感度良好でした。高周波回路は難しいようです。。（2020/5/30追記）
<img src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/219051/438aa3fd-2b91-6388-ab44-469ebb077b74.png" width=50% border="1">

#ソースコード
 - [https://github.com/type89/RDA5807_FM_Radio](https://github.com/type89/RDA5807_FM_Radio)

#動作デモ
<a href="https://www.youtube.com/watch?v=RP0-4Xp4FKI"><img src="http://img.youtube.com/vi/RP0-4Xp4FKI/mqdefault.jpg" alt="Arduino Radio with RDA5807M ver.2"></a>

#その他
 - ほぼ同じ構成の小型版も作成しました
 - アンプはPAM8403、スピーカーはダイソー300円スピーカーのユニットですが、結構高音質です。
<br>
<img src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/219051/3b5081cf-42ab-bfd1-8427-b320908b96f8.jpeg" width=50% border="1">

#ラジオとしての性能について
 - 感度は、市販のラジオ（SONY ICF-9）より若干劣る印象です。
 - 千葉市のマンション1F（西側）のベランダに設置した1λループアンテナでの受信で、bayFM、NHK千葉、東京スカイツリーからの放送は良好に受信できますが、Nack5や横浜FMはノイズが多いです。
 - 受信できた局の音質は非常にクリアです。
 <li>~~- データシートを見る限りでは、RDA5807MはSi4370よりも感度の性能が落ちるようでした。~~　数字が小さい方が感度が良いということでした。（2020/5/30追記）
 - 結局、ケーブルテレビのFM再送信との組み合わせで聴いています。

#苦労した部分
 - Arduino Unoでは正常稼働するのに、ProMini3.3vではノイズだらけになる現象に見舞われました。書き込み装置の3.3v設定ができていなかったのが原因だったようです。
 - ロータリーエンコーダを1クリック分動かすと2回処理が流れる？ため、チャンネルの切り替えやOLED表示のロジックで、操作上、1回分になるように調整しています。
 - 部品の固定にネジが何種類か必要になります。M3やM2等の小さいサイズで長いネジはなかなか売っていないので、割高ですが通販で購入しました。
 - ケースに現物合わせで穴あけするのは難しく、とにかく実践あるのみです。
 - 消費電力を抑えるため、前面入力に切り替わった時にArduinoの電源をOFFにする必要がありますが、まだ実現できていません。。。

#参考にしたサイト
 - [FMラジオモジュール RDA5807Mで自作ラジオ](https://qiita.com/Nabeshin/items/c8c826e8751e5405f8a4)
 - [RDA5807MをArduinoで制御　DSP　ラジオモジュール](https://qiita.com/dabodabo/items/f8b52413849291a2d462)
 - [RDA5708 FM Radio With Arduino](https://www.instructables.com/id/RDA5708-FM-Radio-With-Arduino/)
 - [Mini Stereo Radio with RDA5807](https://create.arduino.cc/projecthub/mircemk/mini-stereo-radio-with-rda5807-636be8)
 - [Simple FM Radio](https://www.hackster.io/sfrwmaker/simple-fm-radio-5bb328)
 - [FM/AM DSPラジオの自作！レトロ風ケースがポイント](https://xn--p8jqu4215bemxd.com/archives/14953)