忍者ブログ

≪ 前の記事次の記事 ≫

[PR]

×

[PR]上記の広告は3ヶ月以上新規記事投稿のないブログに表示されています。新しい記事を書く事で広告が消えます。

▲TOP

【ルンバ:ROI】Buttonsコマンドの使用

ルンバ770のボタン仕様について。
Buttonsで返ってくる値に癖があったのでメモ。
結果的には、状態によって立つビットが違うってこと。
普通に使う場合の表示に合わせて対応したビットが立つ。

ROIの仕様書にはこうあります。
Bit76543210
ValueClockScheduleDayHourMinuteDockSpotClean
んで、ルンバ上の表記はこう。
①初期状態
DockClockScheduleSpot
この状態でClockボタンを押すと、②の状態へ移行します。

② Clockを押す
DayHourMinuteOK
ここでOKを押すと①の状態に戻ります。
Scheduleを押した時も同様。

で、Buttonsで返ってくる値は、
①の状態では対応したビットのみが立つ。
②の状態では、何も押していない場合はClockのビットがたった状態。
 何かしらボタンを押すと、対応したビットに加えて、Clockのビットも立った値が返ってくる。
 また、OKを押した時はClockのみが立った状態。すなわち、押したことを判別できない。状態は①に戻る。
 そして、Cleanボタンを押すと0が返ってきて、状態は①に戻る。

 ClockとScheduleボタンがこんな挙動。

ルンバ770だとボタンが4つ(Clean除いて)あるのですが、Buttonsで返される値のビットとの対応は状態によって変わるわけですね。
めんどいなぁ。状態によっては読めない一番右のボタンと、Cleanボタンの扱いをどうするか。。。



2016/06/11追記
ROIの資料だと下4bitしか載ってないので調査。
76543210
OKゴミフルサインダスト検知クリーンCheck RobotDockSpotDebris
CleanボタンとバッテリLEDの表示は分かれていて、
LEDs(Opcode 139)のコマンドで送る
1バイト目の4bit目でCleanボタンのon/offを設定。
続く2バイトはクリーンボタンでなく、バッテリ表示の色と明るさの設定となる。
・・・けど、明るさは変えられないっぽい。

Scheduling LED Bitsも補完。
76543210
DAYHOURMINUTEScheduleClockAMPMColon

拍手

PR

Comment (0) | ▲TOP

Comment

  • メールアドレスは入力しても管理画面でしか表示されません。
  • コメント投稿時にパスワードを設定していた場合のみ、名前をクリックすると編集出来ます。

Vodafone絵文字 i-mode絵文字 Ezweb絵文字