Basic Usage

The Basic Usage Guide details the basics of using your LoCoBot including how to turn it on, how to charge it, and how to develop remotely.

Charging Your LoCoBot

Your Create® 3-base LoCoBot should come one AC adapter power supply and the Create® 3 charging dock:

  • The iRobot Create® 3 charging dock and its cable
  • A 16.8V 2.5A output for the external battery
  1. Plug both of these into wall power. Plug the external battery's power supply into the external battery.
  2. Place the Create® 3 on its charging dock and wait for a chime to play. The LED status light on the base will indicate the charge level:
Create® 3 Status LED Color Create® 3 Charge Level
Spinning White Robot is booting up
Partial White Robot is charging, the solid arc of the ring indicates the charge level.
Solid White Robot is 100% charged
Pulsing Red Battery < 10%
  1. Check the 4 LEDs next to the external battery's power button. They should light up according to its charge level:
External Battery LED Status Charge Level
Flashing Single LED Low Voltage
Solid Single LED 0%-25% Charge
Solid Two LEDs 25%-50% Charge
Solid Three LEDs 50%-75% Charge
Solid Four LEDs 75%-100% Charge
  1. The Create® 3 should take about 1.5 hours to charge. If on, it will play a sound to indicate that it is fully charged.
  2. The external battery should take about 6-8 hours to charge.

Note

You are able to use the devices on the robot while the external battery is charging. This includes things like developing and running programs on the NUC, using the camera, and using the lidar.

Turning On Your LoCoBot

  1. Press the button on the side of the external battery. The LEDs next to the battery will light up, indicating the external battery's charge level. The battery will stay on while any connected device draws a load. Otherwise, it will automatically turn off after 30 seconds.
  2. Press the power button on the side of the NUC to turn it on. The NUC's power button should light up blue.
  3. Place the Create® 3 base on its charging dock and wait a few seconds for it to boot up. The Status LED will light up and the base will play a sound.
  4. Connect a monitor, mouse, and keyboard to the NUC. It is okay to unplug any peripherals so you have enough ports for the necessary devices.

Network Configuration

Note

Terminology:

  • "Remote" - Your own personal computer (desktop, laptop, etc.)
  • "Robot" or "LoCoBot" - The NUC computer on the LoCoBot

LoCoBot Hostname

Note

This section assumes that you are interacting with your LoCoBot's NUC computer using a monitor, mouse, and keyboard.

  1. Log into the locobot user on the LoCoBot using its default password, locobot.
  2. Open a terminal by pressing Ctrl + Alt + T.
  3. Type the command hostname to retrieve the robot's hostname. This is the domain name of the computer that you will use when you SSH into it. This is typically locobot.

Note

If you are using multiple LoCoBots, you should make each hostname unique, i.e. locobot1, locobot2, etc.

$ hostnamectl set-hostname <unique_hostname>
  1. Connect the robot to the same WiFi that your remote computer is connected to.

  2. Ping the robot from your remote computer using the command below. If the robot's hostname is different than locobot, use that instead. You should see output similar to below.

    $ ping -c 3 locobot.local
    PING locobot.local (192.168.0.171) 56(84) bytes of data.
    64 bytes from locobot (192.168.0.171): icmp_seq=1 ttl=64 time=203 ms
    64 bytes from locobot (192.168.0.171): icmp_seq=2 ttl=64 time=22.5 ms
    64 bytes from locobot (192.168.0.171): icmp_seq=3 ttl=64 time=351 ms
    
    --- locobot.local ping statistics ---
    3 packets transmitted, 3 received, 0% packet loss, time 2003ms
    rtt min/avg/max/mdev = 22.540/192.306/351.244/134.411 ms
    

Remote Development

Note

Terminology:

  • "Remote" - Your own personal computer (desktop, laptop, etc.)
  • "Robot" or "LoCoBot" - The NUC computer on the LoCoBot

General Remote Development

SSH Into the LoCoBot

  1. On your remote computer, install the OpenSSH Client software to allow for a secure shell connection between your remote computer and the LoCoBot computer.

    $ sudo apt install openssh-client
    
  2. SSH into the LoCoBot from your remote computer with the display forwarding flag -X. If the robot's username or hostname are different than locobot, use that instead.

    Note

    The -X flag indicates to OpenSSH that we want to do display forwarding. This means that OpenSSH will forward graphical application to the client from the server.

  3. If prompted, enter the password locobot and accept the SSH key.

  4. Once logged in to the LoCoBot, you can open multiple SSH'ed terminals using the command below.

    $ gnome-terminal &
    
    • Sometimes, this doesn't work. In that case, use the command from this Ask Ubuntu answer.

      $ /usr/bin/dbus-launch /usr/bin/gnome-terminal &
      

VSCode Remote Development

  1. At Trossen Robotics, we use Microsoft's VSCode and its Remote - SSH extension (also developed by Microsoft) for simple remote development on the LoCoBot.
  • Install VSCode for Ubuntu.
  • Open VSCode, Press Ctrl + P to launch the Quick Open Menu, and run the following command.
ext install ms-vscode-remote.remote-ssh
  1. In VSCode, press F1 and run the Remote-SSH: Open SSH Host... command and select the Add New SSH Host option. Enter the same username@hostname.local combination you used when opening the SSH connection between your remote computer and the LoCoBot like ssh locobot@locobot.local. If prompted, enter the password locobot.
  2. Once connected, use File > Open Folder, and select the directory you wish to operate in, i.e. the ~/interbotix_ws directory if using the ROS Interface.
  3. Your instance of VSCode is now attached to the LoCoBot and is open to your development workspace.
  4. You can open terminals in VSCode by pressing Ctrl + Shift + ` or by using Terminal > New Terminal.

Note

It is not simple to configure display forwarding using the Remote-SSH extension at the time of writing this guide. To get around this, you can either follow some of the recommendations in this GitHub Issue, or just ssh into the locobot to launch programs with GUIs.

Turning Off Your LoCoBot

  1. It is a good idea to cleanly turn off the NUC when you are finishing using it. To do this, type sudo poweroff in its terminal and enter your password.

    Note

    This will kill any program currently running on the NUC. Make sure the arm is in its cradle and that ending programs will not harm the robot.

  2. Press and hold the external battery's power button for two (2) seconds until the LEDs power off.

  3. Hold the base's center button (marked with a power symbol) for about seven (7) seconds until it plays a chime and the LEDs behind the button turn off.