ネットをぶらぶらしてて、AR8600 MK2をRaspberry Piから操作できるツールを見つけた。
しかも、AORのサイトで。
http://www.aorja.com/receivers/ar8600mk2.html
仕組みは、Raspberry PiとAR8600 MK2をRS232Cケーブルで接続してRaspberry Piからコマンドを送って制御する。
音声はAR8600 MK2の出力をAudioケーブルでRaspberry Piへ入れる。
これらの処理をサービスとして起動してクライアントソフトからRaspberry PiにアクセスしてAR8600 MK2を操作したり音声を聞いたりする。
クライアントソフトはJAVAで作られてるんで、WindowsやLinuxで使える。
必要なものは全部揃ってるんで、さっそく試してみることに。
必要なもの...
AR8600 MK2
Raspberry Pi・・・今回はPi2を使用。
USB HUB
Serial to USB converter・・・Arvel(Buffalo) SRC06-USB
Jack 3.5mm male-male audio cable
Mono-ST変換アダプタ
USB audio adapter・・・PLANEX PL-US35AP
Serial to USB converterは、これ一つ持っているとメチャメチャ重宝するかな。
十数年前から仕事,プライベートで愛用している。。。
(写真は、ねじ止めの出っ張りが干渉するんで中継を付けてある)
USB audio adapterは、こちら。
こっちも、Raspberry Piで音を扱おうとすると必需品かも。
PLANEX PL-US35APは、Raspberry PiでSpec-Recorderを動かした時に使えることを確認済み。
↓を参照してね。
ラズパイ2で流星の電波観測(HRO)
肝心のRaspberry Piへのインストールは、添付のインストラクションマニュアル(RPI_AR8600MK2_setup_instructions.txt)どおり。
まずは、とりあえず、SRC06-USB(005)とPL-US35AP(006)が認識されていることを確認。
------------------------------------------
pi@raspberrypi2 ~/Tools/aorlan $ lsusb
Bus 001 Device 002: ID 0424:9514 Standard Microsystems Corp.
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 001 Device 003: ID 0424:ec00 Standard Microsystems Corp.
Bus 001 Device 004: ID 0409:005a NEC Corp. HighSpeed Hub
Bus 001 Device 005: ID 0403:6001 Future Technology Devices International, Ltd FT232 USB-Serial (UART) IC
Bus 001 Device 006: ID 0d8c:0008 C-Media Electronics, Inc.
pi@raspberrypi2 ~/Tools/aorlan $
------------------------------------------
ダウンロードしたファイルを解凍した結果
------------------------------------------
pi@raspberrypi2 ~/Tools/aorlan $ ls -l
合計 68
-rwxr-xr-x 1 pi pi 142 3月 3 2014 aorlan
-rwxr-xr-x 1 pi pi 50879 3月 31 2014 arlan
-rwxr-xr-x 1 pi pi 46 3月 11 2014 chk_dev.sh
-rw-r--r-- 1 pi pi 95 3月 31 2014 lanserv.conf
-rwxr-xr-x 1 pi pi 84 3月 11 2014 oss_inst.sh
pi@raspberrypi2 ~/Tools/aorlan $
------------------------------------------
インストール
------------------------------------------
pi@raspberrypi2 ~/Tools/aorlan $ ./oss_inst.sh
パッケージリストを読み込んでいます... 完了
依存関係ツリーを作成しています
状態情報を読み取っています... 完了
以下の特別パッケージがインストールされます:
alsaplayer-common alsaplayer-gtk
以下のパッケージが新たにインストールされます:
alsa-oss alsaplayer-common alsaplayer-gtk alsaplayer-oss oss-compat
oss-preserve
アップグレード: 0 個、新規インストール: 6 個、削除: 0 個、保留: 127 個。
451 kB のアーカイブを取得する必要があります。
この操作後に追加で 1,318 kB のディスク容量が消費されます。
続行しますか [Y/n]? Y
取得:1 http://mirrordirector.raspbian.org/raspbian/ wheezy/main alsa-oss armhf 1.0.25-1 [32.7 kB]
取得:2 http://mirrordirector.raspbian.org/raspbian/ wheezy/main alsaplayer-oss armhf 0.99.80-5.1 [31.4 kB]
取得:3 http://mirrordirector.raspbian.org/raspbian/ wheezy/main alsaplayer-gtk armhf 0.99.80-5.1 [194 kB]
取得:4 http://mirrordirector.raspbian.org/raspbian/ wheezy/main alsaplayer-common armhf 0.99.80-5.1 [179 kB]
取得:5 http://mirrordirector.raspbian.org/raspbian/ wheezy/main oss-preserve armhf 1.1-6 [9,128 B]
取得:6 http://mirrordirector.raspbian.org/raspbian/ wheezy/main oss-compat armhf 2+deb7u2 [5,072 B]
451 kB を 7秒 で取得しました (62.8 kB/s)
以前に未選択のパッケージ alsa-oss を選択しています。
(データベースを読み込んでいます ... 現在 91501 個のファイルとディレクトリがイン ストールされています。)
(.../alsa-oss_1.0.25-1_armhf.deb から) alsa-oss を展開しています...
以前に未選択のパッケージ alsaplayer-oss を選択しています。
(.../alsaplayer-oss_0.99.80-5.1_armhf.deb から) alsaplayer-oss を展開しています...
以前に未選択のパッケージ alsaplayer-gtk を選択しています。
(.../alsaplayer-gtk_0.99.80-5.1_armhf.deb から) alsaplayer-gtk を展開しています...
以前に未選択のパッケージ alsaplayer-common を選択しています。
(.../alsaplayer-common_0.99.80-5.1_armhf.deb から) alsaplayer-common を展開して います...
以前に未選択のパッケージ oss-preserve を選択しています。
(.../oss-preserve_1.1-6_armhf.deb から) oss-preserve を展開しています...
以前に未選択のパッケージ oss-compat を選択しています。
(.../oss-compat_2+deb7u2_armhf.deb から) oss-compat を展開しています...
man-db のトリガを処理しています ...
menu のトリガを処理しています ...
mime-support のトリガを処理しています ...
desktop-file-utils のトリガを処理しています ...
alsa-oss (1.0.25-1) を設定しています ...
alsaplayer-oss (0.99.80-5.1) を設定しています ...
alsaplayer-gtk (0.99.80-5.1) を設定しています ...
alsaplayer-common (0.99.80-5.1) を設定しています ...
oss-preserve (1.1-6) を設定しています ...
oss-compat (2+deb7u2) を設定しています ...
menu のトリガを処理しています ...
pi@raspberrypi2 ~/Tools/aorlan $
------------------------------------------
デバイスファイルができていることを確認。
------------------------------------------
pi@raspberrypi2 ~/Tools/aorlan $ ./chk_dev.sh
crw-rw---T 1 root dialout 188, 0 1月 1 1970 /dev/ttyUSB0
crw-rw---T+ 1 root audio 14, 19 5月 15 10:08 /dev/dsp1
pi@raspberrypi2 ~/Tools/aorlan $
------------------------------------------
ここで、AR8600 MK2にアクセスするシリアル通信の設定(lanserv.conf)を変更。
------------------------------------------
#-*- make-backup-files: nil -*-
tcpport=48752
udpport=48752
timeout=15
bps=19200 <--- これを9600に。
user=a
pass=b
------------------------------------------
------------------------------------------
pi@raspberrypi2 ~/Tools/aorlan $ more lanserv.conf
#-*- make-backup-files: nil -*-
tcpport=48752
udpport=48752
timeout=15
bps=9600
user=a
pass=b
pi@raspberrypi2 ~/Tools/aorlan $
------------------------------------------
ということで準備完了。で、さっそく起動。。
が...そう簡単にはいかへんかぁ。。
エラーでサービスを起動できてへんやん。。
------------------------------------------
pi@raspberrypi2 ~/Tools/aorlan $ ./aorlan
mkfifo(), vfifo: File exists
mkfifo(), sfifo: File exists
audio: Invalid argument
pi@raspberrypi2 ~/Tools/aorlan $
------------------------------------------
Audioのデバイスがマズイみたいやけど、デバイスファイルもあるし。。
どうやって起動してるんか、aorlanの中を見てみると...
------------------------------------------
#!/bin/sh
export TERM=vt102
export SHELL=/bin/ash
export PATH=/bin:/usr/bin:/sbin:/usr/sbin
export HOME=/root
./arlan /dev/ttyUSB0 /dev/dsp1
------------------------------------------
試しにAuidoのデバイスファイルを変えてやってみた。
------------------------------------------
pi@raspberrypi2 ~/Tools/aorlan $ ./arlan /dev/ttyUSB0 /dev/dsp
mkfifo(), vfifo: File exists
mkfifo(), sfifo: File exists
sfd=10, nsFd=13, ncFd=19, audio=11, udp=12
------------------------------------------
無事、起動。。
自分の環境に合わせてカスタムするんは当然やろ?!ってことやね。。
変更したファイルは↓。
lanserv.conf
ボーレート 19200を9600に変更。
aorlan
arlanの引数の/dev/dsp1を/dev/dspに変更。
chk_dev.sh
ついでに/dev/dspのチェックを追加。
サービスも起動できたんで、クライアントのPCから使ってみる。
今回は、Windows10 (64bit)のPCを使用。
「AR8600Edev.jar」をダブルクリック。
------------------------------------------
pi@raspberrypi2 ~/Tools/aorlan $ ./aorlan
mkfifo(), vfifo: File exists
mkfifo(), sfifo: File exists
sfd=10, nsFd=13, ncFd=19, audio=11, udp=12
USER a
PASS b
200 command=e`, command_args=`
250 set escchar `
200 command=g3, command_args=3
100 command ignored, because RPI has no appropriate hardware.
200 command=s8000, command_args=8000
200 command=f3, command_args=3
100 command ignored, because RPI has no appropriate hardware.
200 command=t1, command_args=1
270 timestamp setting, arg=1.
200 command=l1, command_args=1
260 lm_value setting, arg=1.
200 command=s8000, command_args=8000
200 command=f3, command_args=3
100 command ignored, because RPI has no appropriate hardware.
200 command=b1400, command_args=1400
240 set abuf_siz 1400
200 command=p1, command_args=1
UDPrec: remoteAddress = 192.168.0.3
210 start rec audio.
audio:abuf_size = 4096
real:abuf_size = 1400
------------------------------------------
音は結構悪いかも。。
それに、残念やけど、自分の環境やと安定して動作せぇへんかった。
数分使ってたら、Raspberry Piがハングアップ?してPingすら通らへんようになった。
なんか設定マズイんかなぁ。
ということで、使うのを断念して。これまでどおりの使い方で。。
必要なものはほぼ同じ。
AR8600 MK2
USBデバイスサーバー・・・Silex SX-DS-4000U2
USB HUB
Serial to USB converter・・・Arvel(Buffalo) SRC06-USB
Jack 3.5mm male-male audio cable
Mono-ST変換アダプタ
USB audio adapter・・・PLANEX PL-US35AP
ソフトは、WiondowsのAR86ctrlを使用。
http://ar86ctrl.kbox14.de/
単純にシリアル通信と音声をUSBデバイスサーバーにつなげて、LANに流すだけ。
そしたらLAN経由でAR8600 MK2を操作できる。
|