Quick-Start

FlexibleJoints Squats Roll

Quadruped Robotics Europe is a young, but fast growing startup in the field of legged robotics. In this documentation, the software overview of A1 robot is shown. The software is currently under heavy development. At the moment simples ros drivers are available for the robot along with simulation are available in Gazebo.

Quick-Start Teleop

A pre-configured A1 can start its navigation via the following commands:

Attention

Note that the current navigation utilizes unitrees innate controller and it does not currently perform terrain adaptibility. For that low-level-mode is required which is under development.

  1. Launch High-level driver

sudo su
source catkin_ws/devel/setup.bash
roslaunch qre_ros high_level_mode.launch
  1. Launch teleop

rosrun teleop_twist_keyboard teleop_twist_keyboard.py

Quick-Start Autonomous Navigation

A pre-configured A1 can start its navigation via the following commands:

Attention

Note that the current navigation utilizes unitrees innate controller and it does not currently perform terrain adaptibility. For that low-level-mode is required which is under development.

  1. Launch High-level driver

sudo su
source catkin_ws/devel/setup.bash
roslaunch qre_ros high_level_mode.launch
  1. Launch qre driver

roslaunch qre_driver qre_base_driver.launch

This launches the robot state publisher, joint state publisher, IMU publisher, and Odom publisher. Note: The odom requires a visual odometry topic to work which we generally provide with the ZED2 camera. Incase you need to perform odometry calculation with another camera VINS_Fusion is a good software to use.

  1. Launch ouster driver

roslaunch mbs_ouster ouster.launch
  1. Launch navigation driver

roslaunch mbs_navigation odom_navigation.launch

Now it is possible to give the robot navigation goals via movebase.

  1. Launch visualizer

roslaunch qre_viz viz.launch

You can now add point clouds and the raw_rgb_image to view the streamed data.

Robot Setup

To start-up the robot the instructional video in the overview should be used which details the opening and use of the A1 manual as well as operation.

Network- Setup

The A1 has multiple networks and vary slightly, the following table shows the networks

A1 network devices

Device

Network Address

Password

A1-pi

192.168.123.12

123

A1-nvidia

192.168.123.161

123

A1-MCU

192.168.123.10

N/A

Ouster

192.168.123.51

N/A

Hotspot

Note

A1 has its own native hot-spot to which users can connect as well as an Ethernet port to access its on-board computers. Moreover, A1 has the network address range of 192.168.123.*.

The SSID of the Wifi network of A1’s hot-spot begins with UnitreeRoboticsA1-000, where the 000 represent the A1’s model number and the default password is 00000000 or 8 zeros.

Once connected to the WiFi network, one can access A1’s Nvidia ip address 192.168.131.161 as well as the Raspberry Pi’s ip address 192.168.123.12. To achieve this enter the command terminal of the computer that has connected to the WiFi hot-spot of the robot and enter the following:

  • To connect with the Nvidia’s on-board PC:

ssh -X unitree@192.168.123.161
123
  • To connect with the Raspberry Pi’s on-board PC:

ssh -X unitree@192.168.123.12
123

Mobile-App

  • Install the unitree app: A1 Android App, A1 iOS App

  • Connect to the A1’s hotspot and select the vision system to see the A1’s camera stream

Direct Power-Supply

  1. Remove the battery from the A1.

  2. Ensure the A1 is placed on the ground with all four paws as well as knee joints touching the ground.

    • It is advised to place robot on some carpet or similar compressible surface to prevent damage to the joints.

  3. Connect the cable to the connection ports on the A1’s back.

    • The A1 requires 24V with around 3A of current. At startup it may take up to 20A of current.

    • Be vigiliant and make sure the XT30 male pins are in the correct orientation when plugging in.

Warning

The procedure described below is only for development purposes. It turns on the robot without battery inside from external power supply. The power supply should atleast be able to provide 24V/3A.

Calibration

Robot Drift

  1. On the robot and press start

  2. While the robot is trotting press the left or right arrow keys opposite of the A1 drift on the controller keypad

  3. Continue pressing the keys until drift stops and press b to save (this has to be done before the robot trotting stops)

IMU Calibration

IMU can be calibrated by using the following file.

Leg Calibration

Some A1 have different firmware. For most of the A1’s follow until step 2, and then continue from the calibration video.

  1. Turn on the robot dog, L2+B makes the robot dog lie down.

  2. Press L2+B twice to make the robot dog enter the undamped mode

Important

Twisting the leg joints of the robot dog will not feel damping at this time

Follow the video guide for the rest of the video guide, as the procedure is the same.

Remote Calibration

  • Hold the remote control but do not touch the joystick.

  • Press the remote control buttons F1 and F3 and release them at the same time.

At this time, the remote control will emit a continuous drip ~ drip ~ sound (1 time / second) to indicate that it has entered the calibration mode.

  • After entering the calibration mode, move the left and right joysticks to full rudder and rotate it several times until the drip ~ drip ~ sound stops, and the calibration is ready.

  • Press F3 once to make the calibration take effect and complete the calibration.

Note

Please do not touch the joystick before calibrating, only enter the calibration mode to move the joystick. After calibration, you can view the status of the joystick after calibration through APP. (reference Page: 33 of the user manual)

Robot Falling Over

  • Replace the robots foot paws.