Bluetooth Terminal
このアプリは、Android端末とBluetoothデバイスの間で、SPP(RFCOMM)を利用してシリアル通信する為のプログラムです。
データをアスキー形式又はバイナリ(16進数)形式で入力して、Bluetoothデバイスと送受信することが出来ます。
Android+Bluetoorh+Arduinoのような環境で、Bluetoothデバイスを自作する時に動作をテストする為に勉強を兼ねて作成してみました。
Android 端末同士では接続できません。 つまり、このアプリは電子工作等でBluetoothデバイスを作成するような方でなければ、利用価値はありません。
接続するBluetoothデバイスは、SPP(シリアルポートプロファイル)に対応している必要があります。
Ver 1.**はAndroid OS 1.6用、Ver 2.**はAndroid OS 2.1以降用となっています。
動作確認は、HT03AとNexus Oneで確認しています。
サンプル画像
使い方
アプリを起動すると、接続待機状態になります。
デバイス側がマスターで有れば、この状態で接続が可能です。
- 送受信表示
画面は、送受信のログが表示されます。
受信データは赤色●
送信データは青色●
で表示されます。
- データ送信
BTデバイスと接続後、画面下の文字入力欄に文字を入力して送信ボタンを押すと、データが送信されます。
アスキーモード時には入力した内容がそのまま送信されます。
バイナリモード時では入力文字を16進変換して送信します。バイナリモード時に入力出来る文字は0-9A-Fのみです。その他の文字を入力すると送信に失敗します。
- スレーブ機器に接続
menuからconnect a deviceを選択すると、デバイス一覧が表示されます。
この中から接続したいデバイスを選択して接続を行います。

- アスキー/バイナリのモード変更
menuからASCII<>Binaryを選択して切り換えます。
ダウンロード
現在、Android Market からダウンロードが可能です。
以下のQRコード・リンクをご利用下さい。
|
for Android OS 2.1 or later |
|
for Android OS 1.6 |
更新履歴 & APK-FILE
| Version | Memo |
| Ver 2.0.0 (2011/5/8) | Android OS 2.1以降向け |
| Ver 1.01 (2011/5/8) | Android OS 1.6のみに指定 |
| Ver 1.00 | 初公開バージョン |
Android Market を使えない環境の方向けにAPKファイルを公開しています。
問題点
時々、謎の挙動をしますが、それは仕様です。orz
最後に
このアプリでは、HT-03A(Android 1.6)で動作させる為に、esmasuiさんの作成されたbackportライブラリを利用しています。
このアプリは、android.comのサンプルコード BluetoothChatを元に改良しています。



すみません、「Bluetooth Terminal」についてのコメントではないのですが、AndroidのBluetoothについての質問です。
当方、Android端末と他のBluetoothデバイスとの通信を行いたいと思っているのですが、うまく通信が行えません。
どのようにすれば通信できるのでしょうか?
「ソフトウェア技術ドキュメントを勝手に翻訳」というサイトのAndroidのBluetoothに関する記事(http://www.techdoctranslator.com/android/guide/bluetooth)を読んでみたのですが、Bluetoothで接続する場合、サーバーソケットとクライアントソケットを互いに生成して、ソケット通信のようなものを行うと記載されていました。
しかし、Android端末ではないBluetoothデバイスの場合、ソケットを生成する事が出来ないので、そこで行き詰ってしまいました。
この「Bluetooth Terminal」は、Android端末と他のBluetooth機器との通信を行っているようなので、今回質問させていただきました。
もしよろしければ、ご教授頂けると幸いです。
コメント有り難うございます。
内容からしますと、プログラムを組みたいと言うことなのでしょうか?
D.Oさんがどの程度の知識が有るのかが分からないとアドバイスが出来ないのですが・・・
基本的な質問なのですが、D.Oさんはandroidアプリの作り方はご存知ですか?
「勝手に翻訳」のサイトを見られて、実際にプログラムは組まれましたか?
返信が遅くなり、すみません。
説明不足ですみません。
はい、プログラムを組みたいという事です。
Buletoothデバイスをディスカバリするところまでは、実際に組んでみました。
自分は、Javaについて多少勉強し、最近Androidについて勉強し始めたところです。
実際の所、何をやりたいかというと、Android端末とBluetoothデバイスとの通信を行って、RSSI(受信電波強度)を取得したいと思っています。
その為、質問をさせていただきました。
ご回答いただけるなら、コメント欄を使わせていただくのも申し訳ないので、メールで連絡して頂いても結構です。
よろしくお願いします。
Buletoothデバイスをディスカバリするところまで組まれたと言うことは、androidプログラミングの知識は有るようですね。
失礼しました。
しかし、ごめんなさい、僕はRSSIの取得については知識が有りません。
Android端末でRSSIの取得が出来るのかどうかも分かりません。
ちなみに、対象のbluetoothデバイスはシリアルプロファイル対応なのでしょうか?
シリアルプロファイルに対応しているのであれば、公式のサンプルのbluetooth chatに挑戦されては如何でしょうか?
このサンプルを読めば、デバイスとの接続~通信の流れが良く分かると思います。
当然ながらandroid端末間だけでなく、シリアルプロファイルに対応したデバイスであればchat(通信)できます。
当アプリも、bluetooth chatを元に作っています。
>bluetooth chat
http://developer.android.com/intl/ja/resources/samples/BluetoothChat/index.html
>しかし、Android端末ではないBluetoothデバイスの場合、ソケットを生成する事が出来ないので、そこで行き詰ってしまいました。
android端末側でソケットを生成する時に指定するのは、ペアリング済みのbluetoothデバイスのアドレスです。
先のbluetooth chatの例で言うと、DeviceListActivityから返されるアドレスの文字列となります。
>DeviceListActivity
http://developer.android.com/intl/ja/resources/samples/BluetoothChat/src/com/example/android/BluetoothChat/DeviceListActivity.html
説明が下手で申し訳ありません。
あと、他の方の参考になるかもしれませんので、コメント欄を利用して頂ける方が、僕としては有りがたいです。
I am interested in your application “S2 Bluetooth Terminal”. Where can i download the app file ? The adroidpit market is not working with my android.
Many Thanks in advance.
Guenther
Hello,
I am very interested in your application, to learn more about BT Connection via SPP. Can you please send me the completed source Code or simple Text files with the needed names and position, so that I can look what I must make ? I have load your Files here from the page but i can’t open them in eclipse, I think because of the language.
Best Regards and many Thanks in Advance.
Olaf
BluetoothはHIM-C46A(http://www.himico.com/)、PICはPIC18F2550を使い、PIC-パソコン間で無線加速度計測をしています。
パソコンだけでなく、Android端末でも計測できるようにと考え、“S2 Bluetooth Terminal”を使ってみたところ、問題なくデータを送受信できました。“S2 Bluetooth Terminal”に機能を追加して、グラフ表示とデータ保存をしたく、EclipseによるAndroid開発環境を整え、BluetoothChatを参考に開発しようとしてるのですが、JAVAの扱いに慣れていなく、開発に難儀しております・・・。もし可能でしたら、開発の参考として、ソースを公開いただけないでしょうか?よろしくお願いいたしますm(__)m
Hello… Can you give me the source code of this project?
I am developed, a program that comunicate with android and arduino, and android with pc.
Thanks for your Atention
I am very interested to learn from your code. Could you please send me the source for Bluetooth Terminal. Regards, John.
Please share your code. You learnt from the expampe code and we would like to learn from what you added.
Please consider sharing.
Regards,
John.
Hello is it possible to get your terminal bluetooth source code? or at least the part that makes the translation between ascii and binary?
i need to send and recive binary. it would help a lot.
thk
Yaron
I don’t think this guy reads any of our comments?
Regards,
John.
Bluetooth Terminal を使って Arduino とのBluetoothによる接続が確認できました。Java は初心者なので助かりました。
コメントありがとうございます。
だいぶと昔に作ったアプリですが、利用して頂けて嬉しいです。
最近は高性能なbluetoothのターミナルアプリも出てきているようで、そろそろお役御免かもしれないなと思っていたところですが・・・