This module implements the rdk:component:base
API in an agilex
model for the AgileX LIMO base to be used with viam-server
. This driver supports differential, ackermann, and omni directional steering modes over the serial port.
Note
Before configuring your base, you must create a machine.
Navigate to the CONFIGURE tab of your machine’s page in the Viam app.
Add base
/ agilex-limo
to your machine.
On the new component panel, copy and paste the following attribute template into your base’s attributes field:
{
"drive_mode": "<ackermann|differential|omni>",
"serial_path": "<your-serial-path>"
}
Note
For more information, see Configure a Machine.
The following attributes are available for viam:base:agilex-limo
bases:
Name | Type | Inclusion | Description |
---|---|---|---|
drive_mode |
string | Required | LIMO steering mode. Options: differential , ackermann , omni (mecanum). |
serial_path |
string | Optional | The full filesystem path to the serial device, starting with /dev/. With your serial device connected, you can run sudo dmesg | grep tty to show relevant device connection log messages, and then match the returned device name, such as ttyTHS1 , to its device file, such as /dev/ttyTHS1. If you omit this attribute, Viam will attempt to automatically detect the path.Default: /dev/ttyTHS1 |
{
"drive_mode": "differential"
}
{
"drive_mode": "omni",
"serial_path": "/dev/ttyTHS1"
}
- To test your base, go to the CONTROL tab.
- To write code against your base, use one of the available SDKs.
- To view examples using a base component, explore these tutorials.
This module is written in Go.
To build: make limobase
To test: make test
Copyright 2021-2023 Viam Inc.
Apache 2.0