Computer & RF Technology

bladeRFが到着したので早速試してみる

2月にkickstarterで申し込んでから半年以上が経過してしまいましたが、ようやくbladeRFが到着しました。7月末から出荷開始されていたようなのですが、海外組は後回しにされたせいか、今回のbladeRFが出荷されたのは8月半ばでした。

  • 2/3 kickstarter
  • 6/16 nuand.comのサイトで本申し込み
  • 8/13 出荷
  • 8/17 羽田着
  • 8/23 到着

価格は$400+送料$15だったのでおよそ4万円強。受領時に内国消費税と通関手数料合わせて1300円を支払いました。

基板は黒レジストにgold platingでとても奇麗に製作されています。シルクでDesigned and Assembled in San Francisco, Californiaと記されているのはAppleっぽい感じです。インターフェースはUSB 3.0でケーブルが同梱されています。

image

さてbladeRFを使用するためにはソースからコンパイルする必要があります。現時点で対応している環境はlinuxのみのようです。USB 3.0に対応するために一部がカーネルモジュールとして実装されています。手順に従い、githubからソースを持ってきて、コンパイルします。Linuxにはubuntu 13.04を使いました。

  • カーネルモジュール bladerf.ko
  • ライブラリ libbladeRF.so
  • コマンドラインツール bladeRF-cli

FPGAの定義バイナリファイルをダウンロードしておきます。この段階でコマンドラインツールで動作を試してみます。

(詳細 to be written)

つづいて、最新版が必要なためソースから、gnuradioとそのモジュールgr-osmosdrをコンパイルします。gr-osmosdrは、これまでrtl-sdrでも使っていたのですが、実はbladeRFやHackRFにも対応していることは知りませんでした。

(詳細to be written)

bladeRFと添付のUSBケーブルで接続して、gnuradio-companionを起動。ブロックを並べます。まずはFFTでスペクトルが見えるようにしてみます。

image

gr-osmocomのsourceを作成して、プロパティを設定します。Device Argumentsにbladerf=0, fpga=‘hostedx40.rbf’のように指定します。中心周波数はとりあえず435MHzにしてみました。

image

SGから435.1MHzを入れてみたところです。信号強度は-80dBmです。ちょっと気になるのは、ノイズフロアが高いこと、そして435MHzを中心として信号が両側に見えることです。本来なら+100kHzだけに見えていて欲しいのですが。あと中心にDCオフセット分が見えているのも気になります。

image

レベルを上げて、-60dBmを入れたところです。ちゃんと追従します。

image

ところが、さらに上げて-50dBmにすると、こんなんになってしまいます。オーバーロードになり歪みでスプリアスが出ています。-50dBmでオーバーロードとはあまりにも繊細すぎる気がします。

image

一方、信号を弱めてみると-110dBmでノイズに埋もれて見えなくなりました。この帯域幅での観察結果ですが-110dBmから-60dBmがとりあえず、信号として見える範囲のようです。ちょっとダイナミックレンジが足りない感じです。

image

gr-osmosdrのIQ balance機能を有効にすると片側の信号だけになるようです。しかし、さくっと消えるわけではなく、じわじわと学習によって消えるようです。しかも消えてほしくない+100kHz側が消えて、反対側の-100kHz側が残ってしまっています。どうも強いほうが残るようです。

image

まだ使い方が十分にわかっていない段階ですが、特定の目的になら使えるのかもしれませんが、受信機としてはこのままではあまり満足な印象ではありません。パラメータの調整や、今後の実装の進展で改善されることを期待しています。

他の周波数、1.5Gや2.7Gの信号を入れてみましたが435MHzと同じように信号は見えていました。同様の傾向を示しているようでした。

image

気になっていた点として、bladeRFはUSB 3.0を採用していますが、手元にはUSB 2.0の機材しかありません。USB2.0でも動作するのか不安がありましたが、試してみたところちゃんと動きました。ただし帯域幅は限られていますので、サンプリングを1MHz前後で試しています。

そしてもう一つ、元々はMacが対応環境として謳われていたのですが、現時点で提供されるコードはLinuxのみでした。手元にMacしかありませんので、Mac OSX上のVMware FusionにLinux(Ubuntu 13.04)をインストールし、USBを仮想環境と接続することで、bladeRFを一応使うことができています。ただ仮想環境はサウンドに難があるので、できればMacネイティブで使いたいと考えています。こちらもちょっとさぐっているところです。引き続きいろいろ試してみたいと思います。

comments powered by Disqus