Response length of command 90 (Read Status)

General discussion of using Roboclaw motor controllers
Matt
Posts: 2
Joined: Tue Jan 22, 2019 10:05 pm

Response length of command 90 (Read Status)

Postby Matt » Tue Jan 22, 2019 10:21 pm

Hello,

I have a RoboClaw 2x45A with firmware version 4.1.29, and I am trying to use the packet serial command 90 to read the controller's status. The user manual indicates that the status bitmask returned should be 2 bytes, but the RoboClaw appears to be sending back 4 bytes (6 bytes in total, with the last two being the CRC). Was there a change to this command with any of the recent firmware updates?

Thanks

User avatar
Basicmicro Support
Posts: 1130
Joined: Thu Feb 26, 2015 9:45 pm

Re: Response length of command 90 (Read Status)

Postby Basicmicro Support » Thu Jan 24, 2019 10:26 am

Yes. Additional warning/error states were needed for the new error limits for velocity and position modes. Unused btis are reserved for future use so we dont have to change this command again in the future.

The first two bytes are now the warning status bits(16bit word)
#define WARN_NONE 0x00
#define WARN_OVERCURRENTM1 0x01
#define WARN_OVERCURRENTM2 0x02
#define WARN_MBATHIGH 0x04
#define WARN_MBATLOW 0x08
#define WARN_TEMP 0x10
#define WARN_TEMP2 0x20
#define WARN_S4 0x40 //HOME, LIMITF, LIMITR
#define WARN_S5 0x80 //HOME, LIMITF, LIMITR

The second two bytes are now the error status bits(16bit word):
#define ERROR_NONE 0x0000
#define ERROR_ESTOP 0x0001
#define ERROR_TEMP 0x0002
#define ERROR_TEMP2 0x0004
#define ERROR_MBATHIGH 0x0008
#define ERROR_LBATHIGH 0x0010
#define ERROR_LBATLOW 0x0020
#define ERROR_FAULTM1 0x0040
#define ERROR_FAULTM2 0x0080
#define ERROR_SPEED1 0x0100 //M1 speed limit error
#define ERROR_SPEED2 0x0200 //M2 speed limit error
#define ERROR_POS1 0x0400 //M1 position limit error
#define ERROR_POS2 0x0800 //M2 position limit error
#define ERROR_MBATLOW 0x4000 //Flag indicates motors are free wheeling due to under voltage but is not a latching error
#define ERROR_MBATHIGH_HYST 0x8000 //Flag indicates motors are in braking state due to an over voltage, but is not a latching error

The new speed and position limits can be set in the respective screens in Motion Studio.

Unfortunately the manual lags behind these changes by several months usually. If you have any qestions on the changes until then please contact support@basicmicro.com.

Matt
Posts: 2
Joined: Tue Jan 22, 2019 10:05 pm

Re: Response length of command 90 (Read Status)

Postby Matt » Wed Jan 30, 2019 10:49 am

Thank you for the clarification!


Return to “General Discussion”

Who is online

Users browsing this forum: No registered users and 5 guests

cron