Googlers Give Cellbots a Major Upgrade

The past year has been an exiting time for Cellbots. We’ve seen contributions from all over the globe with code submitted from Europe, Australia, South America, and multiple cities in the US. The community has continued to grow with members ranging from young students making their first robots to seasoned veterans from CMU and NASA. Now it is getting another boost with contributions from some Googlers (including myself), who used their spare 20% time to help connect Android phones with robots.

We now have our first app in the Android Market, which you can download for any Android 2.2 (Froyo) and up phone and connect with your Arduino Cellbot, iRobot Create®, VEX Pro®, or LEGO® MINDSTORMS®. It provides a quick out of the box experience you can have fun with right away just by pairing over Bluetooth. The Java app is also open source so you can hack away at adding new features and support for more platforms.

Or course we also had to focus on the Python libraries since those are what Cellbots started with. The new release significantly increases the flexibility of the stack by turning everything into components that can be extended. This makes it possible to more quickly add support for new robot types, communication methods, and features. Currently supporting the Arduino Cellbots (AVR bots), VEX Pro, and the iRobot Create, we hope to add support for LEGO MINDSTORMS soon.

If a LEGO robot is your thing and you don’t know Java or Python, the new enhancements to Google’s App Inventor for Android will be for you! This web based development environment allows you to create programs that run on your Android phone just by dragging and dropping objects in a web browser. Beyond the tight LEGO MINDSTORMS integration you can also find a generic Bluetooth API where you could write to an Arduino Cellbot, VEX Pro, or iRobot Create.

These apps give the Cellbots community a nice boost and new options to explore. We can’t wait to see what developers do from here with more onboard processing offloaded from robots to an attached phone, and even more functions further offloaded to the cloud. Get hacking and be sure to share what you build!

Posted in Uncategorized | 11 Comments

Water Gun Robot

Michael Winter’s Squirt is an autonomous robot which can communicate with an Android phone. Optionally, the phone can be used as a controller to drive the robot. Squirt’s purpose is to water plants and chase away raccoons. It’s also a technology demonstration to prove the feasibility of using a smart phone to control small irrigation and well systems.

Squirt can either be in guard mode or phone control mode. In guard mode it searches for moving objects and squirts them. In phone control mode it is driven like a RC car. Steering can be by software joystick or by tilting the phone in the direction the robot should go.

The big red dot in the middle is a software joystick for driving. The red lines indicate distance senor values from the robot. If the green circle icon is pushed, the big red dot turns blue and becomes a pan/tilt joystick for the water gun. The orange circle with red dot is the water gun trigger.

Squirt can also be controlled by SMS text message from any cell phone. This is accomplished by using the Android phone to relay the message to the robot. For instance, if you send my Droid phone a message where the first character is a period, it will command the robot to fire the squirt gun.

The robot has a timid personality. It verbally comments on external events and on the human’s driving skills. In general, Squirt is wary of things sneaking up behind it.

The water gun is a slightly modified SIG SAUER STR70 Saturator electric water gun. It shoots 4 “bullets of water” every second; range is 6 meters. The amount of water is small and unlikely to damage even the most fragile of plants. Interestingly it features “realistic sound”. To me it doesn’t sound so much like a machine gun but more much like a powerful electric water gun, which it is. The noise is loud, which hopefully can scare raccoons away from tomato plants. How Squirt Works: Squirt uses 3 onboard processors plus a processor in each servo. The master processor is an Arduino Mega which is used for AI, navigation and as a master controller for the sub systems. The second processor is an ARM 9 board for controlling the high speed communications to the servos, last is a graphic processor for the OLED Display.

The Arduino Mega sends and receives data from the Android phone via blue tooth. The Arduino is constantly sending sensor and AI information to the phone. The robot receives driving, servo controlling and mode setting data from the phone. Personality functions are carried out both on the phone and the robot.

The water gun fires by using a relay to bypass the trigger circuit. A 3 color 1 watt LED has been mounted on the barrel to display status of the mood of the gun. Red, of course, means its upset and likely to fire shortly. Summary: Squirt demonstrates that a smart phone and a robot can work together to accomplish tasks. The next step is to design an simple irrigation system based on the technology, get philanthropic funding and hopefully help grow food.

Check out more on the construction overview and videos page for Squirt.

Fun Video:

Contact info for Michael Winter: robotmike@comcast.net

Posted in Android | 35 Comments

Control + Video From a browser

As previewed, the CellJoust software is now Available for download This software uses a new Architecture that allows control of the bot from any web browser, while getting low lag streaming video.

The software has two parts, the first is the Android APK can run standalone and accept commands from a Wiimote. This is useful if you do not need video as setup is quite Simple.

Standalone/Wiimote Mode Setup:

  1. Install “WiimoteController” fromt the market
  2. Install “CellJoust” from the cellbots google code downloads
  3. Run WiimoteController and get your Wiimote setup, be sure to pick the Wiimote as your default input device.
  4. Now Run CellJoust
  5. The bot should move when you press and hold a direction on the d-pad

Browser Control and Streaming Video Setup

  1. Install “CellJoust” from the cellbots google code downloads
  2. Download and install your favorite servlet container, ie. Tomcat
  3. Download CellServ.war from googlecode and put it in your webapps directory
  4. Start Tomcat
  5. Now start your favorite web browser and go to localhost:8080, you should see a Tomcat welcome page
  6. go to localhost:8080/CellServ you should see some movement buttons and a broken image tag since we are not sending video yet
  7. Make sure your phone is on the same wi-fi as your pc.
  8. Start Celljoust, press the menu key, and go to settings
  9. Set the CellServ to point to your pc
  10. Now restart Celljoust and it should start sending video to the browser window
  11. If the video is not connecting, check your settings and reboot your phone
  12. Once you see video, you should be able to use the buttons in the browser gui to drive the robot

This software was made with contributions from several members of the Cellbots team, and numerous open source projects such as GWT,ProtoBuff, CyanogenMod, AOSP. It is open source under Apache2 and the source code is available in the Cellbots svn repo.

This TRRSTAN only version is only a starting point with the ultimate goal of “A mobile app and a web interface that can drive a Roomba, Cellbot, Vex, LEGO, or similar robot”–Ryan

We are also investigating different network topologies for use across the room, or across the plannet. This nice network diagram is by Chris at CMU:

Posted in Uncategorized | 6 Comments

I think we have found the killer App for TRRSTAN

And I do mean killer

The bots were controlled with Wiimotes. Full instructions for partaking in the noble sport of CellJoust and a new controller App to be released friday. Let the poking commence!

Posted in Uncategorized | Leave a comment

How the TRRSTAN kit works

TRRSTAN kit Contents

TRRSTAN kit Contents

TRRSTAN is now for sale on the inventor’s site: robots.allthingsgeek.com

The TRRSTAN kit is designed to meet three main goals:

  1. Affordability,  currently $48, batteries included,  $40 Educational.  So cheep you can get two and fight em!
  2. Simplicity,  Avoids programing microcontrollers, lets you concentrate on programing the phone instead, audio connector allows control from any device with a headphone jack.
  3. Upgradeablility,  Because makers like making things more then having things,  provide upgrade options for future tinkering

The physical design of TRRSTAN uses the PCB as the chassis,  CDs for drive wheels, and nylon shower door rollers for rear wheels.  This gives it an overall look similar to a roman chariot.  Smartphone jousting anyone?  CDs wheels were chosen so they could be made from CDR coasters or unwanted Hana Montana albums. The large diameter makes it a pretty fast bot.   The phone is held on with rubber coated screws and an optional Velcro strap.

The electrical design of TRRSTAN  has two main circuits. For power their is a TI boost/buck regulator that accepts from .8V to 6.5V and provides a constant 5v at up to 1500mA,  depending on how far it has to boost.   It also provides a low battery led and overheat/short protection.   It is supplemented by a low VF Shockley Diode,  which provides up to 3A  directly from the battery if the 5V line drops due to high start-up loads.  The kit currently ships with two AA batteries and a holder, which keeps cost low.

The second circuit controls the servos via the audio.  The software on the phone generates a pulse width modulated signal that travels to the board via a standard 3.5mm TRRS(tip-ring-ring-sleeve) headphone+mic cord. Then a Toshiba quad opto-coupler to rectifies the +- pulse of the audio signal, boosts it to 5v and squares it off.   With some servos you do not even need the boost from the opto, you can drive them directly from the headphone cord. However, the opto also provides electrical isolation to protect the phone if something bad happens.

TRRSTAN schematic

TRRSTAN Schematic

There is also space on the board for a sensor upgrade kit that allows two 0-5v sensors, two quadrature encoders, two bump switches, and sends data back to the phone via the mic line.   This sensor upgrade kit does use an 8pin AtTiny13. This upgrade kit is still in development.

TRRSTAN is now for sale on the inventor’s site: robots.allthingsgeek.com

TRRSTAN Assembled

Ready To Rock

Posted in Uncategorized | 12 Comments