[clug] Brookstone Rover 2
Stephen Gibson
Stephen.Gibson at anu.edu.au
Thu May 29 18:35:25 MDT 2014
I obtained a Brookstone rover 2 spy tank (*), via flybuys, as I thought
that it might be neat to use it to survey under my house, where there is
insufficient space for a person to crawl/enter.
It arrived, and I played with it using the available Android app. The
interface is crap, with screen slide levers providing all or nothing.
The tilt interface, although novel (IMO), had no easy to find stop
position. I could not even drive the rover inside the house. This could
be the fault of my rooted Aldi Onix phone, or me the user, but appears
to be a common issue for other users.
I sent Brookstone an email about the app, but have not received a reply.
No worries, the rover users wifi to communicate with the android phone,
I figured that I could snoop the wifi to determine the commands sent to
control the rover. However, quick check on the web revealed that someone
had already done this task, which was much more involved than I could
have imagined, and had written an open source python interface for a PS3
game controller!
roverPylot:
http://home.wlu.edu/~levys/software/roverpylot/
The amazing thing, from my perspective, was the clever decoding. I would
have had no hope:
(1) The wifi communication was encrypted.
(2) The Andriod app was decompiled, to reveal the access
username/password AC13/AC13, and control commands.
(3) The camera used the manufacturers interface.
Details, are in the blog posting of the above link.
I don't currently have a PS3 controller to test driving, but the
interface connects and reports the battery level (another issue). I plan
to buy a cheap PS3 controller, and also to hack the python code for a
simple keyboard interface.
I think that this fantastic demonstration of open source development.
I hope that in writing this I have diverted too much from 'offical' CLUG
related topics.
Steve.
(*) Yes, I know, I should build my own raspberry controlled tank, but
there are only 24 hours in each day ...
More information about the linux
mailing list