This site is described in Japanese.

AndroidでSoftModemを試してみた

2010年8月20日 このエントリをはてなブックマークに登録

SoftModem

今回、ここで言うSoftModemとは、携帯電話のオーディオ端子(イヤホン・マイク端子)を利用した通信の事を言います。 (実際にはこう言うことを言うらしいでが・・・)

このSoftModemは通信速度は決して速くは無いのですが(むしろ激遅)、コストが非常に安く済みます。
わずか数百円の部品代で携帯電話と外部機器が通信できてしまうので、これを Android + Arduino で使わない手は無い!

と言うことで、今回 SoftModemインターフェースボードを入手したので、Androidで使えるのか試してみました。

 


SoftModem インターフェースボードについて

Soft Modem Breakout Board

SoftModemボードには、Arduinoに接続する為の5つの端子(FSKOUT・GND・VCC・FSKIN・AIN)と携帯電話に接続する為の4極3.5mmのプラグを差し込めるジャック端子が装備されています。

 

arduino-softmodem

Arduinoとはブレッドボードを利用して接続しました。
・ FSKOUT→D3
・ GND→GND
・ VCC→VCC
・ FSKIN→D6
・ AIN1→D7
この時AIN1の電圧が (VCC / 2) + 300mVになるようにボードに付いているボリュームを調整します。

 

4極 3.5mm プラグ

SoftModemボードと携帯電話を繋ぐケーブルは、金メッキ仕様のシールドされたケーブルが推奨されています。 僕は日本橋の千石電子で300円(1.5m)で購入しました。

 

Softmodem Android

SoftModemボードとNexusOneを繋ぎます。
ちなみに、N1のオーディオ端子はiPhoneのオーディオ端子とピンアサインが同じでそのまま差すだけでOKです。
ですが、Xperiaなんかは同じ3.5mmのジャックでもピンアサインが違うらしいので、そのままでは使えません。

 

このSoftModemボード、基本はArduino+iPhoneでの利用が前提なので、Android用のプログラムは自分で作らなくてはいけませんでした。(専門知識の無い僕には、結構無謀でした・・・><)

Arduino用のプログラムは公開されている物を、ちょっとだけ改造して利用させていただきました。

自分で作ってみた結果なのですが、送信側(Android->Arduino)は比較的簡単に完成したのですが、受信側(Arduino->Android)が想像以上に難しくて、結局のところまともに通信できる状態の物は作れませんでした。

それでも、まぁ、精度は低いながら、なんとかギリギリでデータを受信できるものは出来たので、かなりの妥協ではあるものの自分の好奇心的には満たされたので、ひとまずこれで完成としました。

 


出来上がったもののデモ

一応、動いているよと言う動画を・・・

この動画では、NexusOne ←(softmodem)→ Arduino ←(rs232c)→ PCと言う構成で通信しています。

利用しているAndroidアプリは、以前自作したBluetooth Terminal をSoftModem用に改造して使用。PC側のアプリはAcknowrichと言うターミナルソフトを使っています。

※追記(2010/09/09) このアプリを Softmodem Terminal として公開しました。

AndroidからPCへ hello pc
PCからAndroidへ hello n1
AndroidからPCへ 123
PCからAndroidへ 456

と、データをやりとりしているのが分かるかと思います。

通信の仕様としては、送信速度(Android -> Arduino) 1225BPS、受信速度(Android <- Arduino) 315BPS で、受信時のエラー率が10%~20%(10byteにつき1byteは確実に壊れてるw)と言うものです。
動画では、たまたまエラーの出なかった時の物を(ry

 

さらに、温度計アプリを作ってみました。

サーミスタを利用したなんちゃって温度計アプリです。
温度表示はかなり適当です。

ちなみに、これを撮影するすこし前の部屋の温度は><・・・こちら

参考までに、温度計で使用したもの

品名 価格
Japanino(雑誌付録) 3360円
Softmodem Breakoutボード 995円
オーディオケーブル(3.5mm4極・金メッキ) 300円
サーミスタ 30円
抵抗(10kΩ) 5円

 


最後に

以上、結論として、Androidでも、このSoftModemインターフェースボードを利用して外部機器と通信ができたと言えると思います。
受信精度が低いと言う問題は、いずれどこかのえらい人が解決してくれるだろうと信じていますw
幸いなことに、送信精度は割と良いので、これを使って何か役にたちそうな物を作れれば良いなぁと思っています。

 

参考リンク 

SoftModemインターフェースボード発売! – なんでも作っちゃう、かも。
http://arms22.blog91.fc2.com/blog-entry-366.html

Arduinoで遊ぼう – iPhoneのオーディオ端子を使って通信をする – なんでも作っちゃう、かも。
http://arms22.blog91.fc2.com/blog-entry-350.html

Arduinoで遊ぼう – iPhoneのオーディオ端子を使って通信をする(2) – なんでも作っちゃう、かも。
http://arms22.blog91.fc2.com/blog-entry-359.html

SoftModemインターフェースボード – arms22(google code)
http://code.google.com/p/arms22/wiki/SoftModemBreakoutBoard

iPhone ソフトウェアモデム – Reinforce Lab
http://sites.google.com/a/reinforce-lab.com/www/projects/iphone-software-modem

Perceptive Development Labs
http://www.perceptdev.com/labs/

 

Category: Androidと電子工作

Tags: ,

TrackBack URL :

Similar Posts / 関連する投稿

9 Comments / コメント

  1. [...] Androidに関する、はてなブックマーク新着情報です。 side2 » AndroidでSoftModemを試してみた [...]

  2. I’m sorry for my double comment :(

  3. Alberto Pascual より:

    nice project!!

  4. I would like to comment you that this project is something i would like to try as a part of my final project that I describe in my blog ( just a click on my nick)

    So i would like to know if it is posible to share your code about the app + thermistor ( arduino code, and if it were posible the android app ;) )

    I would like also to keep in touch and listen to all the suggestion you can make in order to improve my project.

    Thank you very much.

  5. thomas より:

    hi very nice work with your project very impressed! is it possible to run a small picmicro project off the audio jack(iphone/android) with no alternate power supply?

    thanks

  6. myworld より:

    How can I take it?
    Help me.

  7. myworld より:

    I want to contact.
    Thanks.

  8. myworld より:

    How can I buy for SoftModemTerm(android) source code?

    Thanks.

  9. Matteo より:

    Hi,
    Great work and thanks for sharing.
    Is the code available for download? How can I get it?
    Thanks
    Matteo

Leave a Reply / コメントをどうぞ

(required)

(required),(Hidden)

Do you want to show your avatar?


Pages / 固定ページ

Category / カテゴリー

Recent Entries / 最近の投稿

Recent Comments / 最近のコメント

Tags / タグクラウド

おすすめのAndroid本