You are here:
(08 Jan 2016,
<noautolink> ---+!! iRobot Create 2 %TOC% This page discusses iRobot's "Create 2" (aka C2; the initial platform for the RX Rover). ---++ Overview The "Create 2" (C2) is a convenient platform for experimentation and development in robotics. As a reworked [[%WP_iRobot%][iRobot]] product (e.g., [[%WP_Roomba%][Roomba]]), it supports the Roomba Open Interface (ROI). This allows it to accept motion-related commands and report its status (e.g., battery charge, distance traveled). Each C2 has been augmented with an interface cable, marks for mounting holes, etc. The ROI supplies power (nominal 16 VDC) as well as signals, so it's already nicely set up for hacking! In addition, iRobot has a [[%WP_STEM%][STEM]] support office and a substantial community of Roomba hackers. On typical indoor flooring, the C2 can move around at a maximum speed of 0.5 m/s (about 1 mph). This is fine for a prototype, but I suspect that I'll want any "production" Rover to be faster and comfortable with outdoor surfaces (e.g., asphalt, concrete). If so, I can swap in a different mobility platform (e.g., based on a model truck). ---++ Beginnings I was delighted to find "Hacking Roomba", an extremely approachable (if dated) guide to the subject. It provides a nice overview of iRobot's motivations and approach, plus a variety of example interfacing projects. If you're just getting started with the Roomba, be _sure_ to get a copy of this book! In order to learn about the C2's capabilities and limitations, I needed to find a place to play with it. This had to be a fairly substantial and largely unoccupied space. Fortunately, my area has a number of public spaces. If I could get permission to use some corridors in a school or mall, I should be able to do some quiet experimentation. ---++ Interfacing The ROI uses byte-oriented serial data communication, based on the [[%WP_RS_232%][RS-232]] standard. Partial or multiple bytes are used as needed to accommodate various data requirements. Because of its [[%WP_Erlang%][Erlang]] heritage, [[%WP_Elixir%][Elixir]] handles this sort of low-level programming with aplomb. [[%RC%][RoombaComm]] is a [[%WP_Java%][Java]]-based library that abstracts this interface nicely, using a [[%WP_LOGO%][LOGO]]-inspired paradigm. I plan to convert at least some of RoombaComm into Elixir, both for convenience and as protection from API lock-in. ---++ Limitations Although there is an [[%C2_OIS% ][Open Interface (OI) Specification]] document, there is no official information on how to open up the C2 (e.g., to drill holes). The C2 has a nice USB adaptor cable, but it doesn't provide access to raw power. So, I'll have to add another socket (or whatever) for this purpose. The C2 can only move at about 1 mph, which is fine for experimentation, but a bit slow for production mapping. So, I expect to get a faster platform at some point. The C2 wasn't designed for outdoor use (e.g., on paved surfaces). I suspect that this would wear out the machinery rather quickly. ---++ Resources * [[%HD%][Hackaday]] * [[%HR% ][Hacking Roomba]], Tod E. Kurt<br> Wiley, 2007, ISBN 0-470-07271-7 * [[%ET% ][ExtremeTech]] * [[%RC% ][RoombaComm]] * [[%RHC% ][RoombaHacking.com]] * [[%IR% ][iRobot]] * [[%WP_iRobot%][iRobot]] (WP) * [[%WP_IC% ][iRobot Create]] (WP) * [[%IC_F% ][iRobot Create Forum]] * [[%C2% ][iRobot Create 2]] * [[%C2_OIS% ][Open Interface (OI) Specification]] (PDF) * [[%IC2PRH% ][The iRobot Create 2 Programmable Robot is Here!]] (video) * [[%JB_VS%][JetsonBot]] (video series) * [[%JB%][JetsonBot Part 1 – A Vision Robot with a Create 2 base]] * [[%LB%][LightBot]] (PDF) * [[%MZ%][Makezine]] * [[%RHW%][Roomba Hacking Wiki]] * [[%RRC%][Roomba Review]] * [[%RRCC%][Forum]] * [[%RRCH%][Hacking Section]] * [[%RC%][RoombaComm]] * [[%RC%][RoombaComm Java Library]] <!-- * Set AMZ = http://www.amazon.com/dp * Set YT = https://www.youtube.com/watch?v * Set C2_1 = http://store.irobot.com/education-research-robots * Set C2 = %C2_1%/irobot-create-programmable-robot/family.jsp?categoryId=2591511 * Set C2_OIS_1 = http://www.irobot.com/~/media/MainSite/PDFs * Set C2_OIS = %C2_OIS_1%/About/STEM/Create/create_2_Open_Interface_Spec.pdf * Set ET = http://www.wiley.com/go/extremetech * Set HD = http://hackaday.com * Set HR = %AMZ%/0470072717 * Set MZ = http://makezine.com * Set IC_F = https://groups.google.com/forum/#!forum/irobot-create-forum * Set IC2PRH = %YT%=NBMiH6AmBaM * Set IR = http://store.irobot.com/home/index.jsp * Set JB = http://jetsonhacks.com/2015/06/15/jetson-tk1-create-2-robot-part-i * Set JB_VS = https://www.youtube.com/playlist?list=PLXYLzZ3XzIbhkbBeEY9ZPmBXe9nQmpJZQ * Set LB = http://www.cognet.pl/iROBOT_ROOMBA/LightBot.pdf * Set RC = http://hackingroomba.com/code/roombacomm * Set RC_JL = http://www.dprg.org/projects/2009-07a * Set RHC = http://roombahacking.com * Set RHW = http://roomba.pbwiki.com * Set RRC = http://www.roombareview.com * Set RRCC = %RRC%/chat * Set RRCH = %RRC%/hack * Set WP_Elixir = %WP%/Elixir_(programming_language) * Set WP_Erlang = %WP%/Erlang_(programming_language) * Set WP_IC = %WP%/IRobot_Create * Set WP_iRobot = %WP%/iRobot * Set WP_Java = %WP%/Java_(programming_language) * Set WP_JPEG = %WP%/JPEG * Set WP_LOGO = %WP%/LOGO_(programming_language) * Set WP_OSM = %WP%/OpenStreetMap * Set WP_RS_232 = %WP%/RS-232 * Set WP_Roomba = %WP%/Roomba * Set WP_SSD = %WP%/SSD * Set WP_STEM = %WP%/STEM * Set WP_Velcro = %WP%/Velcro --> %ZB%
ore topic actions
Topic revision: r4 - 08 Jan 2016,
Copyright © by the contributing authors. All material on this wiki is the property of the contributing authors.
, Plugin API version
Ideas, requests, problems regarding CFCL Wiki?
Send us email