# Rovers (experimental)

:::warning Support for rover is [experimental](/px4-user-guide/airframes.md#experimental-vehicles).

* Does not have a maintainer.
* Not regularly tested by the core development team.
* Limited support for different types of vehicles.

Maintainer volunteers, [contribution](/px4-user-guide/contribute.md) of new features, new frame configurations, or other improvements would all be very welcome! :::

PX4 supports rovers (Unmanned Ground Vehicles - UGVs) with [ackermann and differential](#rover-types) steering.

This section contains build logs/instructions for assembling as well as configuring a number of UGV frames.

![Traxxas Rover Picture](/files/sYIAK7l2Kw5KDNPQDsPe)

## Rover Types

PX4 supports rovers with:

* **Differential steering**: direction is controlled by moving the left- and right-side wheels at different speeds. This kind of steering commonly used on bulldozers, tanks, and other tracked vehicles.
* **Ackermann steering**: direction is controlled by pointing wheels in the direction of travel ([ackermann geometry](https://en.wikipedia.org/wiki/Ackermann_steering_geometry) compensates for the fact that wheels on the inside and outside of the turn move at different rates). This kind of steering is used on most commercial vehicles, including cars, trucks etc.

The supported frames can be seen in [Airframes Reference > Rover](/px4-user-guide/airframes/airframe_reference.md#rover).

## How to Configure a Rover

### Ackermann Steering Configuration

Setting up a rover with Ackermann steering is straightforward:

1. In the [Airframe](/px4-user-guide/config/airframe.md) configuration, select the *Generic Ground Vehicle*.

   ![Select Ackermann steered airframe](/files/i2wG53QMzob2NUqY1fyq)

   Select the **Apply and Restart** button.
2. Open the [Actuators Configuration & Testing](/px4-user-guide/config/actuators.md) to map the steering and throttle functions to flight controller outputs.

### Differential Steering Configuration

1. In the [Airframe](/px4-user-guide/config/airframe.md) configuration, select either the *Aion Robotics R1 UGV* or *NXP Cup car: DF Robot GPX*

   ![Select Differential steered airframe](/files/WBxVy6EKEvWXNn17IJNU)

Select the **Apply and Restart** button.

1. Open the [Actuators Configuration & Testing](/px4-user-guide/config/actuators.md) and map the left and right motor functions to flight controller outputs.

## Simulation

[Gazebo Classic](/px4-user-guide/development/simulation/sim_gazebo_classic.md) provides simulations for both types of steering:

* Ackermann: [ackermann rover](/px4-user-guide/development/simulation/sim_gazebo_classic/gazebo_vehicles.md#ackermann-ugv)
* Differential: [r1 rover](/px4-user-guide/development/simulation/sim_gazebo_classic/gazebo_vehicles.md#differential-ugv)

## Videos

This video shows the [Traxxas Stampede Rover](/px4-user-guide/airframes/frames_rover/traxxas_stampede.md) (an Ackermann vehicle).

@[youtube](https://youtu.be/N3HvSKS3nCw)


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://px4.gitbook.io/px4-user-guide/airframes/frames_rover.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
