Skip to content

C++ library for interfacing with the iRobot Create 1 and 2.

License

Notifications You must be signed in to change notification settings

AutonomyLab/libcreate

Repository files navigation

libcreate

C++ library for interfacing with iRobot's Create 1 and 2 as well as most models of Roomba. create_robot is a ROS wrapper for this library.

Build Status

Build Status

Dependencies

Install

    sudo apt-get install build-essential cmake libboost-system-dev libboost-thread-dev

    # Optionally, install gtest for building unit tests
    sudo apt-get install libgtest-dev
    cd /usr/src/gtest
    sudo cmake CMakeLists.txt
    sudo make
    sudo cp *.a /usr/lib

Serial Permissions

User permission is requried to connect to Create over serial. You can add your user to the dialout group to get permission:

    sudo usermod -a -G dialout $USER

Logout and login again for this to take effect.

Build

Note, the examples found in the "examples" directory are built with the library.

cmake

    git clone https://github.com/AutonomyLab/libcreate.git
    cd libcreate
    mkdir build && cd build
    cmake ..
    make -j

catkin

Requires catkin_tools.

    mkdir -p create_ws/src
    cd create_ws
    catkin init
    cd src
    git clone https://github.com/AutonomyLab/libcreate.git
    catkin build

Running Tests

To run unit tests, execute the following in the build directory:

    make test

Known Issues

  • Clock and Schedule buttons are not functional. This is a known bug related to the firmware.
  • Inaccurate odometry angle for Create 1 (#22)
  • Some 600 series models incorrectly report the OI Mode in their sensor stream (create_robot #64)
    • To enable or disable the OI Mode reporting workaround, pass true or false to setModeReportWorkaround()