Drivers for any device using dynamixel's servomotors communication bus.
More...
Drivers for any device using dynamixel's servomotors communication bus.
The bus is mainly used for servomotors, but a device can be anything : sensors, other actuators.
|
int | dynamixel_ping (uart_half_duplex_t *stream, dynamixel_id_t id) |
| Send a PING message to a device. More...
|
|
void | dynamixel_init (dynamixel_t *device, uart_half_duplex_t *stream, dynamixel_id_t id) |
| Initialize a Dynamixel device. More...
|
|
int | dynamixel_write8 (const dynamixel_t *device, dynamixel_addr_t reg, uint8_t value) |
| Write to a device 8bits register. More...
|
|
int | dynamixel_write16 (const dynamixel_t *device, dynamixel_addr_t reg, uint16_t value) |
| Write to a device 16bits register. More...
|
|
int | dynamixel_write (const dynamixel_t *device, dynamixel_addr_t reg, const uint8_t *data, size_t length) |
| Write to a device address. More...
|
|
int | dynamixel_read8 (const dynamixel_t *device, dynamixel_addr_t reg, uint8_t *value) |
| Read from a device 8bits register. More...
|
|
int | dynamixel_read16 (const dynamixel_t *device, dynamixel_addr_t reg, uint16_t *value) |
| Read from a device 16bits register. More...
|
|
int | dynamixel_read (const dynamixel_t *device, dynamixel_addr_t reg, uint8_t *data, size_t length) |
| Read from a device address. More...
|
|
◆ anonymous enum
Possible dynamixel return values.
Enumerator |
---|
DYNAMIXEL_OK | Success.
|
DYNAMIXEL_TIMEOUT | No response from the device.
|
DYNAMIXEL_BUFFER_TOO_SMALL | Buffer is too small for the message.
|
DYNAMIXEL_INVALID_MESSAGE | Invalid message received.
|
Definition at line 51 of file dynamixel.h.
◆ dynamixel_init()
Initialize a Dynamixel device.
- Parameters
-
[out] | device | the Dynamixel device |
[in] | stream | the stream |
[in] | id | the device address |
◆ dynamixel_ping()
Send a PING message to a device.
- Parameters
-
[in] | stream | the stream |
[in] | id | the device address |
- Returns
- DYNAMIXEL_OK if a device answered
-
DYNAMIXEL_TIMEOUT if the device did not answer
-
DYNAMIXEL_BUFFER_TOO_SMALL if buffer is too small for the message
-
DYNAMIXEL_INVALID_MESSAGE if an invalid message was received
◆ dynamixel_read()
Read from a device address.
- Parameters
-
[in] | device | the Dynamixel device |
[in] | reg | the address to start read |
[out] | data | the data buffer to fill |
[in] | length | the data length |
- Returns
- DYNAMIXEL_OK on success
-
DYNAMIXEL_TIMEOUT if the device did not answer
-
DYNAMIXEL_BUFFER_TOO_SMALL if buffer is too small for the message
-
DYNAMIXEL_INVALID_MESSAGE if an invalid message was received
◆ dynamixel_read16()
Read from a device 16bits register.
- Parameters
-
[in] | device | the Dynamixel device |
[in] | reg | the register to read |
[out] | value | the value to read |
- Returns
- DYNAMIXEL_OK on success
-
DYNAMIXEL_TIMEOUT if the device did not answer
-
DYNAMIXEL_BUFFER_TOO_SMALL if buffer is too small for the message
-
DYNAMIXEL_INVALID_MESSAGE if an invalid message was received
◆ dynamixel_read8()
Read from a device 8bits register.
- Parameters
-
[in] | device | the Dynamixel device |
[in] | reg | the register to read |
[out] | value | the value to read |
- Returns
- DYNAMIXEL_OK on success
-
DYNAMIXEL_TIMEOUT if the device did not answer
-
DYNAMIXEL_BUFFER_TOO_SMALL if buffer is too small for the message
-
DYNAMIXEL_INVALID_MESSAGE if an invalid message was received
◆ dynamixel_write()
Write to a device address.
- Parameters
-
[in] | device | the Dynamixel device |
[in] | reg | the address to start write |
[in] | data | the data to write |
[in] | length | the data length |
- Returns
- DYNAMIXEL_OK on success
-
DYNAMIXEL_TIMEOUT if the device did not answer
-
DYNAMIXEL_BUFFER_TOO_SMALL if buffer is too small for the message
-
DYNAMIXEL_INVALID_MESSAGE if an invalid message was received
◆ dynamixel_write16()
Write to a device 16bits register.
- Parameters
-
[in] | device | the Dynamixel device |
[in] | reg | the register to write |
[in] | value | the value to write |
- Returns
- DYNAMIXEL_OK on success
-
DYNAMIXEL_TIMEOUT if the device did not answer
-
DYNAMIXEL_BUFFER_TOO_SMALL if buffer is too small for the message
-
DYNAMIXEL_INVALID_MESSAGE if an invalid message was received
◆ dynamixel_write8()
Write to a device 8bits register.
- Parameters
-
[in] | device | the Dynamixel device |
[in] | reg | the register to write |
[in] | value | the value to write |
- Returns
- DYNAMIXEL_OK on success
-
DYNAMIXEL_TIMEOUT if the device did not answer
-
DYNAMIXEL_BUFFER_TOO_SMALL if buffer is too small for the message
-
DYNAMIXEL_INVALID_MESSAGE if an invalid message was received