この解説は、Skyworks (Silicon Labs) Si47XX PROGRAMMING GUIDE AN332 を基に、Google AI (Gemini) の協力を得て作成しています。
1 プロパティ 0x3404. AM_SEEK_TUNE_RSSI_THRESHOLD 概要
AM_SEEK_TUNE_RSSI_THRESHOLD
有効なAMシーク/チューニングとみなすためのRSSI閾値を設定します。
値を0に設定した場合、AMシーク実行時にRSSIは有効性の判定基準として使用されません。
次のコマンドを送信可能な状態になると、CTSビット(およびオプションの割り込み)がセットされます。
このプロパティは、パワーアップモードの時のみ設定または読み出しが可能です。
デフォルト値は25 dBμVです。
対応機種:すべて
デフォルト値:0x0019
単位:dBμV
ステップ:1
範囲:0~63
有効なAMシーク/チューニングとみなすためのRSSI閾値を設定します。
値を0に設定した場合、AMシーク実行時にRSSIは有効性の判定基準として使用されません。
次のコマンドを送信可能な状態になると、CTSビット(およびオプションの割り込み)がセットされます。
このプロパティは、パワーアップモードの時のみ設定または読み出しが可能です。
デフォルト値は25 dBμVです。
対応機種:すべて
デフォルト値:0x0019
単位:dBμV
ステップ:1
範囲:0~63
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 | AMSKRSSI | |||||
| Bit | Name | Function |
|---|---|---|
| 5:0 | AMSKRSSI | AMシーク/チューン時の受信信号強度(RSSI)閾値。
シーク/チューン中に有効なチャンネルが検出されたかどうかを判定するためのRSSI閾値です。 単位はdBμVで、1 dBμV刻み(0~63)で設定します。 デフォルトの閾値は 25 dBμVです。 |
2.2 プロパティ
AM受信モードにおいて、AM_SEEK(自動選局)動作時に有効な放送局であると判定するための
「RSSI(受信信号強度指示子 / 電界強度)」のしきい値を設定・決定するプロパティです。
チップがスキャン中に検出した電波のRSSI値(dBμV単位)がこの設定値以上である場合、局が存在する候補とみなします。
この値が低すぎると微弱な環境ノイズでシークが頻繁に止まり、高すぎると実際の放送局を通り過ぎてしまいます。
チップがスキャン中に検出した電波のRSSI値(dBμV単位)がこの設定値以上である場合、局が存在する候補とみなします。
この値が低すぎると微弱な環境ノイズでシークが頻繁に止まり、高すぎると実際の放送局を通り過ぎてしまいます。
2.2.1
目的と概要:
0 (0 dBμV)
1 〜 63 (1 dBμV 〜 63 dBμV) ※デフォルト値: 28 (28 dBμV)
AN332に明記されない目的と解説:
RSSIによる選局制限を事実上無効化します。
1 〜 63 (1 dBμV 〜 63 dBμV) ※デフォルト値: 28 (28 dBμV)
局判定を行うための最低RSSIしきい値を 1 dBμV ステップで任意に設定します。
0 (0 dBμV)
1 〜 63 (1 dBμV 〜 63 dBμV) ※デフォルト値: 28 (28 dBμV)
電波が極めて微弱な環境での全周波数チェックや、SNR(信号対雑音比)側だけの基準でシークを行いたい場合に使用します。
ただし、通常の環境ではノイズフロアすら0 dBμVを上回ることが多いため、すべての周波数ステップでシークが誤停止する原因になります。
ただし、通常の環境ではノイズフロアすら0 dBμVを上回ることが多いため、すべての周波数ステップでシークが誤停止する原因になります。
1 〜 63 (1 dBμV 〜 63 dBμV) ※デフォルト値: 28 (28 dBμV)
デフォルトの 28 dBμV は、標準的なAM(中波)環境において「クリアに聴こえる局」を狙い撃ちするにはちょうど良いバランスです。
しかし、外部アンテナ(ロングワイヤーなど)を接続した短波(SW)受信時や、 大都市圏で強電界地域にある場合は、全体のベースライン(ノイズフロア)が底上げされます。
そのため、環境に合わせて 35 〜 45 dBμV に引き上げないと、シークが全く機能しなくなります。
逆に、地方での遠距離受信(DX)を狙う場合は 15 〜 20 dBμV まで下げて感度を解放する必要があります。
しかし、外部アンテナ(ロングワイヤーなど)を接続した短波(SW)受信時や、 大都市圏で強電界地域にある場合は、全体のベースライン(ノイズフロア)が底上げされます。
そのため、環境に合わせて 35 〜 45 dBμV に引き上げないと、シークが全く機能しなくなります。
逆に、地方での遠距離受信(DX)を狙う場合は 15 〜 20 dBμV まで下げて感度を解放する必要があります。
3 応答パラメータ
プロパティ設定(SET_PROPERTY)時および取得(GET_PROPERTY)時の応答パラメータです。
STATUS (ステータスバイト)
RESP1 〜 RESP4 (プロパティ値取得時のみ)
STATUS (ステータスバイト)
チップの現在のステータスを返します。
最上位ビットの CTS (Clear to Send) が 1 になることで、送信したプロパティ設定コマンドが内部レジスタに無事書き込まれ、 次のコマンド(AM_SEEK など)を受け入れ可能になったことをホストに通知します。
最上位ビットの CTS (Clear to Send) が 1 になることで、送信したプロパティ設定コマンドが内部レジスタに無事書き込まれ、 次のコマンド(AM_SEEK など)を受け入れ可能になったことをホストに通知します。
RESP1 〜 RESP4 (プロパティ値取得時のみ)
GET_PROPERTY コマンドで本プロパティを読み出した場合、設定されている16ビットのプロパティ値(AM_SEEK_TUNE_RSSI_THRESHOLD の現在の値)が返されます。
I2C/SPIバス上の通信エラーがなく、正しく書き込まれているかの照合(ベリファイ)に利用します。
I2C/SPIバス上の通信エラーがなく、正しく書き込まれているかの照合(ベリファイ)に利用します。
4 その他(Google AI (Gemini) の見解)
4.1 コマンドの重要ステップと注意事項
0x3403 (SNRしきい値) とのAND条件:
アンテナ特性への依存度が高い:
シークが停止するためには、本プロパティ(RSSI)と 0x3403(SNR)の両方のしきい値を同時にクリアしなければなりません。
片方だけを調整しても、もう片方が厳しすぎるとシークは止まらなくなります。
片方だけを調整しても、もう片方が厳しすぎるとシークは止まらなくなります。
アンテナ特性への依存度が高い:
AM(中波)のバーアンテナや短波の外部アンテナなど、使用するアンテナのゲインによってチップに入力されるRSSIは激変します。
ハードウェア構成(基板設計やアンテナサイズ)を変更した際は、必ずこのプロパティの最適値を再評価してください。
ハードウェア構成(基板設計やアンテナサイズ)を変更した際は、必ずこのプロパティの最適値を再評価してください。
4.2 もう少し踏み込んだ応用展開
アッテネータ(減衰器)要らずのソフトウェアAGC制御:
シーク時のリアルタイム・プロファイリング:
強電界地域で強力なローカル局が隣接周波数にまで被ってくる(相互変調歪みやブリードアウト)場合、
あえてこの 0x3404 を 40 〜 50 dBμV などの高値に動的設定します。
これにより、ソフトウェア的な感度制限(ローカルモード)を作り出し、過入力によるお化け局(偽信号)でのシーク誤停止を綺麗にスルーさせることができます。
これにより、ソフトウェア的な感度制限(ローカルモード)を作り出し、過入力によるお化け局(偽信号)でのシーク誤停止を綺麗にスルーさせることができます。
シーク時のリアルタイム・プロファイリング:
シークを開始する前に、数秒かけて全バンドを数kHzおきに高速で AM_TUNE_STATUS を行い、その場所の「平均RSSI」をマイコン側で把握します。
その平均値に対して「+15 dBμV」した値をこの 0x3404 に自動セットしてから本格的な AM_SEEK を走らせることで、 設置場所(屋内・屋外・鉄筋コンクリート)に完全最適化された「空気を読む自動選局」が実現可能です。
その平均値に対して「+15 dBμV」した値をこの 0x3404 に自動セットしてから本格的な AM_SEEK を走らせることで、 設置場所(屋内・屋外・鉄筋コンクリート)に完全最適化された「空気を読む自動選局」が実現可能です。
4.3 デバッグ時のチェックリスト
シークがエンドレスに回り続けて局を見落とす場合、しきい値が高すぎないか(まずは 20 以下に下げて挙動を確認)。
シークがノイズだらけの場所で細かくカチカチ止まる場合、しきい値が低すぎないか(35 以上に上げてノイズをカットできるか確認)。 プロパティ設定後に CTS を確認せず、即座に AM_SEEK コマンドを発行して設定が無視されていないか。
受信しようとしている周波数帯(MW / SW / LW)に対して、アンテナの同調回路(AM_REFIN / AM_ANT_CAP など)が正しく機能し、そもそも十分なRSSIが出ているか。
シークがノイズだらけの場所で細かくカチカチ止まる場合、しきい値が低すぎないか(35 以上に上げてノイズをカットできるか確認)。 プロパティ設定後に CTS を確認せず、即座に AM_SEEK コマンドを発行して設定が無視されていないか。
受信しようとしている周波数帯(MW / SW / LW)に対して、アンテナの同調回路(AM_REFIN / AM_ANT_CAP など)が正しく機能し、そもそも十分なRSSIが出ているか。
4.4 まとめ
AM_SEEK_TUNE_RSSI_THRESHOLD は、AMシーク動作における「電波の絶対的な強さ」を測る関門です。
SNRしきい値が「音のクオリティ」を保証するのに対し、本プロパティは「信号がそこに確実に存在するか」を物理的な電界強度で担保します。
固定のデフォルト値(28)のままでは、アンテナの変更や国内外の電波環境の差に対応しきれないため、製品レベルのラジオを実装する際は、 UI(感度切り替えボタン)や自動環境測定ロジックと連動させて動的に制御することが強く推奨されます。
SNRしきい値が「音のクオリティ」を保証するのに対し、本プロパティは「信号がそこに確実に存在するか」を物理的な電界強度で担保します。
固定のデフォルト値(28)のままでは、アンテナの変更や国内外の電波環境の差に対応しきれないため、製品レベルのラジオを実装する際は、 UI(感度切り替えボタン)や自動環境測定ロジックと連動させて動的に制御することが強く推奨されます。
