#rtl_fm
Explore tagged Tumblr posts
gslin · 11 months ago
Text
0 notes
orestz · 5 years ago
Text
PothosSDR - Melhores Ferramentas RTL-SDR Para Windows
PothosSDR – Melhores Ferramentas RTL-SDR Para Windows
O Pothos SDR é um ambiente de desenvolvimento que inclui o conjunto de softwares de fluxo de dados Pothos e ferramentas gráficas, SoapySDR e kit de ferramentas pothos-sdr para hardware que fazem interface com vários drivers de fornecedores de hardware SDR comumente usados e kit de ferramentas GNU Radio para suporte ao processamento de sinais
O instalador do PothosSDR está disponível aqui.
A…
View On WordPress
0 notes
ttrftech · 12 years ago
Text
Webブラウザでエアバンドをリスニングしながらflightradar24を眺める
ブラウザでNBFMのアマチュア無線を受信できたので、ついでにエアバンドも試してみました。モードをAMに変えて、受信周波数を近所の空港の周波数に合わせるだけです。
前回のスクリプトをAM用に変えました。-MというオプションがAMの意味です。
今度はブラウザのアドレス行で直接CGIのURIと周波数を指定しています。
Tumblr media
ブラウザのオーディ���コントロールが表示され、数秒後に受信開始します。
http://youtu.be/ogm6XB7v09A
当然Webブラウザですので、同時に他のページをひらくことができます。せっかくなのでflightradar24を眺めながら管制の交信を聞いてみました。
Tumblr media
今朝の状況ですが、昨夜からの雪で千歳空港の除雪が追いついていないようです。B787 Dream Linerが沼ノ端-厚真付近で八の字を描いて待機している航跡が出ています。実は出張にて昨夜の便で東京から戻ってきたのですが、羽田の駐機場で787を見かけていました。これはその機体でしょうか。交信では珍しく日本語で会話しています。
http://youtu.be/IoLp75EXhsc
受信は例によって、Raspberry PiとR820Tを使用したRTL2832Uドングルです。外部アンテナを接続するため、別の部屋に置いてあります。pythonでCGIサーバを動作させています。このあたりは前回の記事同様です。
Tumblr media
というわけで節電で寒い冬ですが、こたつでFlightradar24を眺めながら、エアバンドをリスニングすることができた、というお話でした。
Tumblr media
flightradar24 http://www.flightradar24.com/
ブラウザで144MHzのアマチュア無線を受信する(前回の記事) http://ttrftech.tumblr.com/post/38016199555/receiving-amature-radio-using-rtl2832u-and-browser
0 notes
ttrftech · 12 years ago
Text
Webブラウザで144MHzのアマチュア無線を受信してみる
RTL2832Uドングルで使うrtl-sdrには、rtl_tcpのほかにもいくつかコマンドが含まれています。そのなかでもrtl_fmというコマンドはその名から予想されるとおり、FMを受信することができます。これはFM放送だけではなく、アマチュア無線のような狭帯域NBFMも復調できます。実はヘルプを見てみるとAMやSSB(LSB/USB)、果てはCWの復調やI/Q信号を取り出すことまで可能なようです。復調周波数や復調モードなどはすべてコマンドライン引数で指定することができます。
別報のとおりrtl_tcpによるリモート受信サーバの実験をしていたのですが、その流れでrtl_fmの仕様を眺めていたところ、これをHTTP CGIにすることを思いつきました。rtl_fmが標準出力に書き出すRAW AUDIOをブラウザがサポートするフォーマットに変換することができたならば、HTTPを経由して受信した音声をブラウザで再生させることができそうです。HTTPによる受信サーバになるわけです。
Tumblr media
Linuxでは音声フォーマットの変換にsoxを使うのが定番です。soxは標準入力からRAW AUDIOを受け取って、WAVに変換することができます。あとはHTTPヘッダを付けることでCGIとして必要最小限の機能を満たすことができます。b-shellだとこんな感じになります。QUERY_STRINGで周波数を渡すようにしてみました。デフォルトでは145MHzになるようにしています。このCGIにアクセスするためにHTMLも用意します。以下を参照してください。
このCGIを使うためには、RTL2832Uドングルを接続したLinuxで、HTTPサーバを動作させる必要があります。一般的なApacheなどのWebサーバを使っても良いのですが、ここでは簡単にpythonに含まれているサーバを使ってみます。debian(raspbian)には最初からインストールされています。
ディレクトリを作成して、その中にHTMLファイルとCGI用のディレクトリcgi-binを作成し、先ほど作成したスクリプトを配置します。最後にpythonを使って、CGIをサポートしたHTTPサーバを起動します。HTTPサーバはフォアグラウンドで動作し、ポート番号はデフォルトで8000となります。
$ mkdir web $ cd web $ mkdir cgi-bin $ cp ~/nbfm2wav.cgi cgi-bin $ chmod +x cgi-bin/nbfm2wav.cgi $ cp ~/nbfm.html . $ python -m CGIHTTPServer
HTTPサーバが動いたら、PCやMacのブラウザからアクセスしてみます。
Tumblr media
Startボタンを押すと、5秒ほど経過した後に音声が再生されるはずです。再生開始が遅れるのはブラウザでバッファリングされるためです。MacのChromeを使った場合で5秒程度でした。
周波数を変更したときも、やはり5秒程度遅延します。バッファリングがある以上これは仕方ありません。
http://youtu.be/3v12uJ7xfnw
最近は、Webアプリのようにユーザインターフェースをブラウザで構成することが標準的な手法となっていますが、ソフトウェア無線でも可能かもしれません。今回は原理の確認ですので、簡単なことしか試していませんが、復調モードやゲイン、スケルチほか、受信機に必要な各種操作ができるようなユーザインターフェースを作ることは難しいことではなさそうです。手元には特別なクライアントを必要とせず、オーディオ(HTML5)に対応したブラウザがあればOKです。また、PCだけではなく、スマートフォンからの利用も可能だと思われます。(残念ながら上記のスクリプトではうまくいきません)
前回と同様Linuxとして、Raspberry Piを利用しています。rtl_fmでFM復調した場合CPUを30%消費していました。
rtl_tcpの受信サーバはサンプリングレート2Mで8bitのI/Q信号を送信しますので、16〜32Mbps程度の帯域幅を消費します。この記事のHTTP受信サーバは音声のみをサンプリングレート16kHz16bitで送信しますので256kbps程度の帯域幅になります。
この方法によるリモートサーバは、同時に一人しか使用することができません。HTTPセッション毎にrtl_fmがデバイスを占有してしまうためです。工夫すれば複数のセッションをサポートするようにはできますが、周波数やモードを個別に設定することはできません。複数のドングルを搭載したとしても、サポートできるユーザ数はドングルの数に限定されます。ブラウザで利用できるとは言っても、不特定多数にサービスすることは難しいです。LAN内で利用することが現実的です。
上で述べたように音声の再生にバッファリングによる遅延が生じます。このため、チューニング操作をしようとした場合は、操作から音声が変化するまで遅延が生ずることとなり、連続的なチューニング操作は容易ではありません。��状ではSSBやCWなどの利用はスムースにはいきません。ラジオのようなチャネル設定による利用が最善かもしれません。
エアバンド(AM)を同様に受信した例。ブラウザのアドレス欄で直接周波数指定しています。http://youtu.be/ogm6XB7v09A
rtl_tcpによるリモートサーバについての前回の実験 http://ttrftech.tumblr.com/post/36742746471/raspberry-pi-remote-rtl2832u-sdr-server
18 notes · View notes