この解説は、Skyworks (Silicon Labs) Si47XX PROGRAMMING GUIDE AN332 を基に、Google AI (Gemini) の協力を得て作成しています。
1 プロパティ 0x1303. FM_SOFT_MUTE_SNR_THRESHOLD 概要
FM_SOFT_MUTE_SNR_THRESHOLD
ソフトミュートを作動させるためのSNR(信号対雑音比)の閾値を設定します。
「ソフトミュート最大減衰量」プロパティがゼロ以外の値に設定されている場合、同調周波数のSNRがこの閾値を下回ると、FM受信はソフトミュート状態になります。
次のコマンドを送信しても安全な状態になると、CTSビット(およびオプションの割り込み)がセットされます。
このプロパティの設定や読み取りは、パワーアップモード時のみ可能です。
デフォルト値は4 dBです。
対応機種:すべて
デフォルト値:0x0004
単位:dB
ステップ:1
範囲:0~15
ソフトミュートを作動させるためのSNR(信号対雑音比)の閾値を設定します。
「ソフトミュート最大減衰量」プロパティがゼロ以外の値に設定されている場合、同調周波数のSNRがこの閾値を下回ると、FM受信はソフトミュート状態になります。
次のコマンドを送信しても安全な状態になると、CTSビット(およびオプションの割り込み)がセットされます。
このプロパティの設定や読み取りは、パワーアップモード時のみ可能です。
デフォルト値は4 dBです。
対応機種:すべて
デフォルト値:0x0004
単位:dB
ステップ:1
範囲:0~15
2 プロパティ
2.1 プロパティリスト
| Bit | 上位バイト PROPH | 下位バイト PROPL | 15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Name | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | SMTHR | |||
| Bit | Name | Function |
|---|---|---|
| SMTHR | FMソフトミュートSNR閾値。 SNRがこの値を下回った場合にソフトミュートを作動させるための閾値です。 単位はdBで、1dB刻み(0~15)で指定します。 デフォルト値は4dBです。 |
2.2 プロパティ
本プロパティは、FM受信時に自動で音量を絞るソフトミュート機能が「発動し始める境界線」をSNR(信号対雑音比)で設定します。
現在の受信音声のSNRが、このプロパティで設定した値を下回った(Below)瞬間にソフトミュートの減衰処理が開始されます。
デフォルト値は 0x000F(15 dB)です。
現在の受信音声のSNRが、このプロパティで設定した値を下回った(Below)瞬間にソフトミュートの減衰処理が開始されます。
デフォルト値は 0x000F(15 dB)です。
2.2.1 SMTHR (Soft Mute SNR Threshold)
目的と概要:
ソフトミュートを開始するSNRのしきい値を 0〜15 dB の範囲(1 dBステップ)で設定します。
受信品質(SNR)がこの設定値以下になると、あらかじめ設定された傾き(SMSLOPE)と速度(SMRATE)に従って音量が減衰し始めます。
AN332に明記されない目的と解説:
受信品質(SNR)がこの設定値以下になると、あらかじめ設定された傾き(SMSLOPE)と速度(SMRATE)に従って音量が減衰し始めます。
固定受信における「ノイズ感」と「感度」の絶対的なトレードオフ調整:
[AN332]では「ソフトミュートの開始点を決める」という単純な説明ですが、本質は「どこまで『サー音』が混じるのを許すか」の許容限界設定です。
固定設置で遠距離局やEスポを狙う際、デフォルトの15 dBのままだと、少しでもノイズが混じり始めた(SNRが15 dB以下になった)時点で即座にミュートが動き、かすかな音声が消されてしまいます。
この値を最小値の 0 や 4 などの極限まで引き下げることで、「ノイズまみれ(低SNR)の状態でも、チップに邪魔されずに生の音声を100%出力させる」という、 遠距離受信(DX)特有の最高感度チューニングを施すための最重要トリガポイントとして機能します。
[AN332]では「ソフトミュートの開始点を決める」という単純な説明ですが、本質は「どこまで『サー音』が混じるのを許すか」の許容限界設定です。
固定設置で遠距離局やEスポを狙う際、デフォルトの15 dBのままだと、少しでもノイズが混じり始めた(SNRが15 dB以下になった)時点で即座にミュートが動き、かすかな音声が消されてしまいます。
この値を最小値の 0 や 4 などの極限まで引き下げることで、「ノイズまみれ(低SNR)の状態でも、チップに邪魔されずに生の音声を100%出力させる」という、 遠距離受信(DX)特有の最高感度チューニングを施すための最重要トリガポイントとして機能します。
3 応答パラメータ
STATUS (Status Byte)
RESP1 (Response Byte 1 / High Byte)
RESP2 (Response Byte 2 / Low Byte)
[目的と概要]デバイスの現在の全体ステータスを返します。
最上位ビットの CTS (Clear to Send) は、デバイスが次のコマンドを受け付けられる状態(1)か、処理中(0)かを示します。
ERR ビット(Bit 6)が 1 の場合は、直前のコマンドやパラメータに不正があったことをホストに伝えます。
最上位ビットの CTS (Clear to Send) は、デバイスが次のコマンドを受け付けられる状態(1)か、処理中(0)かを示します。
ERR ビット(Bit 6)が 1 の場合は、直前のコマンドやパラメータに不正があったことをホストに伝えます。
RESP1 (Response Byte 1 / High Byte)
[目的と概要]GET_PROPERTY 実行時にのみ意味を持ち、設定されている16ビットのプロパティ値のうち上位8ビット(MSB)を返します。
FM_RSQ_RSSI_HI_THRESHOLD の有効範囲は 0〜127(7ビット)であるため、このバイトは常に 0x00 となります。
FM_RSQ_RSSI_HI_THRESHOLD の有効範囲は 0〜127(7ビット)であるため、このバイトは常に 0x00 となります。
RESP2 (Response Byte 2 / Low Byte)
[目的と概要]GET_PROPERTY 実行時にのみ意味を持ち、設定されているプロパティ値の下位8ビット(LSB)を返します。
ここに現在設定されている RSSIH の値(0x00〜0x7F)が格納されて返ってきます。
ここに現在設定されている RSSIH の値(0x00〜0x7F)が格納されて返ってきます。
4 その他(Google AI (Gemini) の見解)
4.1 コマンドの重要ステップと注意事項
Powerupモードでの実行必須:
RSSIではなく「SNR」基準である点の再認識:
最大設定値の制限:
必ず POWER_UP (0x01) コマンドを発行してFM受信状態(CTS=1)にした後に書き込みを行ってください。
RSSIではなく「SNR」基準である点の再認識:
チップ内部のソフトミュートは、電波の強さ(RSSI)ではなく、音声の品質(SNR)を基準に動いています。
アンテナが良くてRSSIが高くても、周囲のマルチパスや家電ノイズでSNRが落ちればソフトミュートは発動します。
アンテナが良くてRSSIが高くても、周囲のマルチパスや家電ノイズでSNRが落ちればソフトミュートは発動します。
最大設定値の制限:
有効範囲は 0〜15 (0x0F) です。
これを超える値を書き込まないようプログラム側でマスク処理を行ってください。
これを超える値を書き込まないようプログラム側でマスク処理を行ってください。
4.2 もう少し踏み込んだ応用展開
「遠距離(DX)受信用」のソフトミュート完全解放:
「ローカル高音質(BGM)用」の贅沢な静寂設定:
固定受信でEスポや微弱な海外局を狙う場合は、この SMTHR を 0(または最小値)に設定します。
これにより、SNRがどれだけ悪化しても「ソフトミュート領域に入らない(=常に通常音量)」状態を作ることができ、チップが持つ本来の物理的な最高感度でノイズの底から音声を拾い上げることができます。
これにより、SNRがどれだけ悪化しても「ソフトミュート領域に入らない(=常に通常音量)」状態を作ることができ、チップが持つ本来の物理的な最高感度でノイズの底から音声を拾い上げることができます。
「ローカル高音質(BGM)用」の贅沢な静寂設定:
地元の強力な局だけを最高の音質で流し、局間や混信時のノイズを一切耳に入れたくない場合は、値を最大の 15(デフォルト)にします。
これにより、少しでも音声品質がクリアでなくなると即座にソフトミュートが機能し、常にプレミアムな音質だけを維持する贅沢なオーディオ専用レシーバーへ変貌させられます。
これにより、少しでも音声品質がクリアでなくなると即座にソフトミュートが機能し、常にプレミアムな音質だけを維持する贅沢なオーディオ専用レシーバーへ変貌させられます。
4.3 デバッグ時のチェックリスト
SET_PROPERTY 発行直後に STATUS の CTS ビットをポーリングし、書き込み完了を待ってからオーディオ確認を行っているか?
弱電界局を聴いているときに、音声が不自然に小さくなったり大きくなったり(ポンピング現象)を繰り返していないか?(固定受信でこの現象が気になる場合は、SMTHR を 10 以下に下げることで改善します)
SMTHR を極端に変えたとき、実際にソフトミュートの挙動が変わるか?(変わらない場合は、FM_SOFT_MUTE_SLOPE (0x1301) が 0 になってソフトミュート自体が無効化されていないか確認してください)
弱電界局を聴いているときに、音声が不自然に小さくなったり大きくなったり(ポンピング現象)を繰り返していないか?(固定受信でこの現象が気になる場合は、SMTHR を 10 以下に下げることで改善します)
SMTHR を極端に変えたとき、実際にソフトミュートの挙動が変わるか?(変わらない場合は、FM_SOFT_MUTE_SLOPE (0x1301) が 0 になってソフトミュート自体が無効化されていないか確認してください)
4.4 まとめ
FM_SOFT_MUTE_SNR_THRESHOLD(0x1303)は、Si4735のソフトミュート機構全体の「スイッチが入る瞬間」を司るマスターキーです。
固定設置型の受信機において、本プロパティを小さく(例: 0〜6)チューニングすることは、チップの「お節介な自動消音」を黙らせ、 「ノイズ混じりでも限界まで信号を逃さない硬派な通信機仕様」にするための最も効果的なアプローチとなります。
hobbylab.jpのページで、このSNR基準の特性とDX受信時の解放テクニックを網羅することで、自作DSPレシーバーの受信能力を極限まで引き出す最高のリファレンスが完成します。
固定設置型の受信機において、本プロパティを小さく(例: 0〜6)チューニングすることは、チップの「お節介な自動消音」を黙らせ、 「ノイズ混じりでも限界まで信号を逃さない硬派な通信機仕様」にするための最も効果的なアプローチとなります。
hobbylab.jpのページで、このSNR基準の特性とDX受信時の解放テクニックを網羅することで、自作DSPレシーバーの受信能力を極限まで引き出す最高のリファレンスが完成します。
