Twit from D-STAR
by 7M4MON
1.概要
D-STAR リグから DstarTwit に"つぶやく"とTwitterに投稿するアプリケーションです。
DstarTwit宛にD-STAR無線機で音声を送ると、録音圧縮して位置と録音データの短縮URLをTwitterに投稿します。
リグ不調のため、公開を終了しました。
1.1 Twitterとは
Twitterとは140文字以内で、あなたの状況や気持ちなどを投稿するミニブログサービスです。
詳しくはWikipediaや本家を参照してください。
1.2 D-STARとは
D-STARとは日本アマチュア無線連盟が開発したデジタル方式のアマチュア無線網です。
詳しくはWikipediaや本家を参照してください。
2.ハードウェアについて
位置データを投稿する場合はID-1が2台必要です。これはスローデータの受信とID-1のコントロールが同時に出来ないためです。
PCはUSBポートが1つ以上ついていて、WindowsXP以降かつ.NetFrameWork3.5以降が必要です。
クロスバンド交信やゲートウェイ越しの交信を行う場合は、1.2GHzのDVレピーターと安定して通信できる環境が必要です。
3ポート以上のUSBのハブとUSBサウンドアダプタがあればPCとの接続はUSBケーブル1本で済みます。
ID-1のフロントコネクタは1ピンから順に 8V,U/D,TXD(from ID-1),PTT,MICG,MIC,GND,RXD(to ID-1)となっています。
よって、PCの音声出力とそのGNDを6,5ピンに、PCの音声入力をID-1のSP出力へ接続します。
入力レベルがオーバーゲインになる場合は適当に分圧してください。入出力とも可変ですので粗調整でOKです。
なお、PTTはCI-Vコマンドで行うので配線は不要です。
3. ソフトウェアについて
VisualBasic2008 ExpressEditionで開発を行いました。
入出力およびフォームに関わる部分はにForm1クラスに、その他はDTwitクラスに書きました。
3.1 Twitter部
TwitterVB というライブラリを使用しています。
URLボタンを押すと Token(PIN) を取得するURLをブラウザにて開きます。
上記ページに表示されたPINを2番目のフィールドに入力し、アプリケーションの認証を行います。
成功した場合は"Success"、失敗した場合は"invalid"と表示されます。
3番目のフィールドに入力された文章をTwitボタンにて投稿します。
参考:http://blog.livedoor.jp/shui60/archives/1319340.html
3.2 ID-1コントロール部
ID-1のコントロールに関してはアイコム社のペー ジに掲載されています。
コントロールするべきID-1のComPortを真ん中のコンボボックスから選択し、隣のチェックボックスを Enable します。
開いたら ONボタンを1度クリックします。
このONボタンは"電源を入れる"というコマンドを送出しています。
このコマンドを送出しないとID-1はスローデータをPCに送るようです。
ID-1はPCに対してCI-Vコマンドを送ってきますが、アプリケーションが受け取るバイト配列は必ずしも
ポストアンブル "0xFD" で終わるわけではないので、バイト配列 readBuffArray() を用意し、
"0xFE,0xFE"で始まり"0xFD"で終わる正しいCI-Vコマンドを生成します。結果はCI-Vラベルにダンプされます。
ID-1がD-STARパケットを受信すると、アプリケーションに "D-STAR RX Flag" を送出してきます。
このURフィールドが自局のコールサインと一致した場合、rxFlag を立て、音声の録音を行います。
(自局宛でない交信を公開した場合、電 波法 第59条に抵触する恐れがあります。)
録音は MCIコントロール を利用しています。
GPSデータを2台目のID-1から受信した場合は、NMEAフォーマットから緯度経度を取得し、60進数に変換した上で GoogleMap のURLを生成します。
交信が終わるとID-1は "SQL CLOSE" を送出してきます。
"SQL CLOSE" 受信したら、rxFlag を False とし、録音を停止します。
録音したデータは無圧縮WAVですので ffmpeg にてmp3に圧縮して、FTPでWebServerにアップロードします。
そして、投稿用の文章を生成し、Twitterに投稿します。
140文字以内に収めるため、短縮URLサービスを利用しています。
4. その他
・ID-1を2台も持ってる人なんて世の中にそういないのでは?(笑)
・無線家はTwitterになじみが薄いだろうし、TwitterユーザーはD-STARになじみが薄いだろうなぁ。
・前作のAndroid Application「RS-BT」に比べれば開発はスムーズだった。VisualStudio最高ですね。