SDR入門①~gnu-radio-companionをMacで動かす~

はじめに

個人的な興味がきっかけでデータ通信を0から調べて、音を使ったデータ通信についての入門的な本を書いて技術書典に参戦してきました

booth.pm

ただ、リードソロモン符号や畳込み符号などより強固な誤り訂正を行ったり、色々なことをロジックを調べることから始めようとするときつくなってきた今日この頃

先日PyConを見てると「Pythonではじめるソフトウェア無線」というタイトルの発表があり、ソフトウェア無線なるものを初めて知りました

www.slideshare.net

ソフトウェア無線とは、今まで基盤などハードウェアで行っていた処理をプログラマティックに処理を行えるものらしい

そこでGNU RadioというOSSを紹介をしていたので、興味をもった

www.gnuradio.org

Linuxで動かすことが容易にできるらしいが、MacOS Xで動かしたかったので、それをやるまでの備忘録としてここに残す。

公式のHPだとMacPortを利用したインストールを推奨しているみたいだが、Homebrewを主に使っているので、brewを使った情報を探す(今どきMacPort使ってる人いるの...?)

wiki.gnuradio.org

あまりWeb上に情報がなくて、依存関係とか大変らしいけど brew install してみたらそのままいけた

# gnuradioのインストール
$ brew install gnuradio

# gnu radio companionの起動
$ gnuradio-companion

python経由でGUIが立ち上がり、かんたんにできるじゃんと思っていたが、アイコンが表示されておらず、エラーを確認すると以下のエラーが...

(gnuradio-companion:39399): Gtk-WARNING **: 20:52:24.387: Could not load a pixbuf from /org/gtk/libgtk/theme/Adwaita/assets/check-symbolic.svg.
This may indicate that pixbuf loaders or the mime database could not be found.

gnuradioをインストールする際に依存関係として gdk-pixbuf がインストールされているはずなのに、上手く動作せず

いろいろ調べていたら、同様の事象で困っている人発見!

github.com

macでhomebrew経由でインストールした場合は、adwaita-icon-theme をインストールする必要があるとのこと。

# adwaita-icon-themeのインストール
$ brew install adwaita-icon-theme

インストールできたら無事アイコンも含めて表示された!

f:id:b0941015:20200911233656p:plain

同じ問題で困っている人がいれば、助けになればと。

よーし!これからたくさん触っていくぞー!

※2020/09/22追記

Homebrewでインストールしたgnuradio-companionでは、ブロック同士を繋ぐ際にドラッグ&ドロップをすると segmentation fault でアプリケーションが落ちてしまうという問題がありました

なので、結局MacPortを利用してgnuradioのインストールを行いました

基本的な手順については、下記とyoutubeを参考にしました

wiki.gnuradio.org

www.youtube.com

ままだと動かずドキュメント通り PYTHONPATH の設定とQTのライブラリのパスを渡す設定をしました

# PYTHONPATHを通す
$ export PYTHONPATH=/usr/local/lib/python3.8/site-packages

# QTにおいてcocoaに対するライブラリの指定
$ export QT_QPA_PLATFORM_PLUGIN_PATH=/opt/local/libexec/qt5/plugins/platforms

gitのsparse-checkoutで大規模リポジトリから特定のリポジトリだけローカルに持ってくる

はじめに

モノレポや巨大なファイルを管理しているgitリポジトリなどをcloneする場合、時間がかかりすぎるだけでなく不必要なファイルもダウンロードしてしまう場合がありますよね

そんな時に便利なのが git sparse-checkout というgitコマンド

対象のディレクトリやファイルのパターンを指定するだけで、対象のファイルだけローカルに持ってくることができます。

それでは具体的な使い方について見ていきましょう

前提条件

今回扱うgitリポジトリがモノレポだとして下記のような構成だったとします

$  tree . -L 2
.
├── README.md
├── backend
│   ├── api
│   └── functions
├── docker-compose.yaml
└── frontend
    ├── serviceA
    └── serviceB
続きを読む

論文の読み方メモ

はじめに

学術領域のキャッチアップをしようと思った際に、今までは自分の興味のある論文をひたすら集めて読むことが多かった

ただ、以前落合陽一先生のおすすめの論文の読み方があるとのことだったので、実践するためにまとめてみたいと思う

lafrenze.hatenablog.com

続きを読む

AMIから起動したredashでメタデータにアクセスする手順の話(2020/04/03現在)

はじめに

redashのユーザー情報やクエリなどredash上で保存したデータはメタデータとしてDBに保存されている

少し苦戦したので、redashのDBにアクセスするまでの手順を備忘録として残す

DB情報の確認

redashはアプリケーションサーバ以外に、キャッシュとしてredisやDBとしてPostgreを利用している

docker-composeで一括起動しているので、再起動時などもdocker-composeを利用する

続きを読む

佰食屋にいってきた話

佰食屋とは

佰食屋というお店をご存知でしょうか??

「売上を、減らそう。」というタイトルの本を読んだのが佰食屋を知ったきっかけ

佰食屋は新しい働き方を提唱するお店で、自分はその考え方に非常に感銘を受けた

その特徴としては、

  • 1日100食限定のごはん屋さんなので、仕事を頑張った見返りとして、早く帰ってプライベートの時間を大事にできる
  • 新しい提案をしたり、売上を伸ばすための意見を述べたりと俗に言われる優秀なスタッフではなく、目の前のことを実直にこなせるスタッフが重宝される

現代社会では、やろうと思えば仕事はいくらでもあり、売上を伸ばすために詰め込めるだけ詰め込んで、疲弊していく働き方が多いように感じる

そして、それが一般的になりつつあり、ブラック企業だの働き改革など叫ばれ始めて久しくない

そんな現代社会で、プライベートの時間を大事にするために、頑張った見返りとしてプライベートな時間を増やそうと始めたのが佰食屋

最低限の暮らしができるだけの稼ぎがあれば、それ以上は求めない新しい価値観の働き方を提唱している会社

自分もそんな考え方に賛同して、今後の働き方として増えていくと良いなと思ったので、実際に佰食屋のお店にいってきた

佰食屋

佰食屋は全部で4店舗あり、どのお店も京都に構えている

続きを読む

SageMakerってどんなサービス?

機械学習をサービスに導入する際に、ローカルで学習をするだけでなく、使える形でデプロイするのも管理するのって大変ですよね

はたまた、モデル更新をするためのスケジューラ管理やどのモデルで予測したかなどちゃんとログを残したり、一から考えると考慮しなきゃいけないことがいっぱい

そんなあなたにおすすめするのがAmazon SageMaker!

aws.amazon.com

SageMakerを用いた開発の流れ

処理の流れは、まずはAWS上に構築したインスタンス上で作業

f:id:b0941015:20200314220931p:plain
開発の流れ①動作確認

続きを読む