Skip to content
longjie edited this page Dec 16, 2014 · 3 revisions

MQTTの通信仕様

接続方法と認証

MQTTサーバの認証機能は使用していません。匿名による接続を用いています。

Androidアプリ側とHangoutアプリ側で同じトピック名を発行・購読するために、両側で共有する8文字以上の合言葉を設定します。

トピック

二つのトピックを使用しています。トピック名の先頭パスは、"/telemba/phrase"となっています。ただし、phraseは合言葉から生成された文字列(SHA1等で生成されるもの)です。

Roombaからのセンサデータトピック(data)

トピック名"/telemba/phrase/data"で発行されます。コマンドは、空白区切りの文字列で与えられ、

<データ文字列> <引数1> <引数2>, ...

battery: バッテリー残量

バッテリーの残量をmAhで発行します。

bump: バンパーの状態

バンパーの状態(ON/OFF)を発行します。状態が変化した場合のみに発行されます。

Roombaへのコマンドトピック(command)

トピック名"/telemba/phrase/command"で発行されます。コマンドは、空白区切りの文字列で与えられ、

<コマンド文字列> <引数1> <引数2>, ...

の形式になっています。

drive: 速度の指令

driveコマンドはRoombaの移動速度を設定します。

drive velocity radius

velocity,radiusの意味はROIのコマンドと同じです。

motors: メインブラシ、サイドブラシ、吸引のON/OFF

servo: RoomboxのRCサーボへのサーボパルス値