
PRO
afcorson
Australia
Asked

Do you know if EZ Builder is compatible with a RoboClaw 2x30A Motor Controller? - see link: https://www.basicmicro.com/RoboClaw-2x30A-Motor-Controller_p_9.html
Related Hardware EZ-B IoTiny
roboclaw_datasheet_2x30A.pdf
roboclaw_user_manual.pdf
Some points:
1) Did you connect your controller to the PC (usb) and run the vendor software ?
2) Did you read the manual ?
3) Are you trying to use the roboclaw as Sabertooth replacement ?
4) Can you post your setup wiring.
I have the 24v power supply connected to the Roboclaw main +-. The motor's brakes are connected directly to the 24v battery.
The left and right motors are connected to M1A, M1B, M2A and M2B on the Roboclaw.
The EZB has D5 connected to S1 on the Roboclaw. I have also attached an image of the general settings of the vendor's software.
According to the user manual, error light flashing 3 times indicates the logic battery is too high, flashing 4 times and it is too low.
To my mind this is nonsense as I am not using a logic battery and the unit is supposed to automatically set the logic power source.
I have tried connecting 3.3v power from the EZB to the LB-in on the Roboclaw and also 5v power to same. No luck there either.
I may have to contact the vendor unless you have some ideas I can try.
You are lucky RoboClaw is a fine piece of hardware and software and can endure some user damage.
I've damaged a few controllers due to fast browsing the manual, extra confidence or assuming specific behaviors.
you have 2 different power sources:
Main battery Input: 6 to 34 VDC
Logic Battery Input: 6 to 34 VDC
Logic battery is optional it's a nice feature to avoid losing the control when a brownout occurs. Is optional in your wiring i see you don't have one, you don't need to look for a setting to disable.
Your controller does not have the LB-MB switch so the controller switches automatically between Main & Logic.
The next important detail is Controller Logic Level RoboClaw uses a BEC (DC/DC) to convert the power source (Main or Logic Battery) to 5 volts, 5 volts is TTL level used for input or output pins. The manual says the control supports 5v or 3.3v that means roboclaw will accept 3.3v as High value input when transmitting the TTL voltage is still 5V.
If you connect your Roboclaw TX to a 3.3 controller RX (e.g. Raspberry PI, Arduino DUE) you can damage the other controller.
You don't need to worry EZB4 / IotTiny are 3.3v and 5v tolerant, that means they will communicate 3.3v and will tolerate 5V response.
This is your controller:
As documented in the manual those pins (red, black) carry 5v and GND.
Your wiring is short-circuiting two different power sources 5v with 7.2v.
You need to connect only the D5 e GND from the EZB
Let's hope the controller is not damaged...
Next I will play around with a custom Movement Panel and see if I can control the motors. Thanks for identifying the problem.
Quote:
Because the Sabertooth Control (useable for Roboclaw) handles two motors with one 8 byte character, when operating in Simplified Serial mode, each motor has 7 bits of resolution. Sending a character between 1 and 127 will control motor 1. 1 is full reverse, 64 is stop and 127 is full forward. Sending a character between 128 and 255 will control motor 2. 128 is full reverse, 192 is stop and 255 is full forward.
Character 0 (hex 0x00) is a special case. Sending this character will shut down both motors.
Motor 1
Reverse should be set as 1.
Stop should be set as 64.
Forward should be set as 127.
Motor 2
Reverse should be set as 128.
Stop should be set as 192.
Forward should be set as 255.
https://synthiam.com/Community/Questions/Robo-Claw-2x30-8968
@DJ you were correct
both Robotclaw and Sabertooth are rich controllers with a lot of features, I assumed the sabertooth control was specific for Sabertooth.
I just tested the control and checked the output:
basically is the Simplified Serial mode post #14
Simple and plain, no black magic, nothing specific.
I would add more information about Simple Serial Protocol and i would mention RoboClaw controllers
Sorry guys, I assumed something without checking the control.
Can you take look to the outputs:
Based on @Afcorson input:
Sabertooth manual:
At full speed:
Forward should be 0x7F, 0xFF
Right should be 0x7F, 0x80
Backward should be 0x01, 0x80
Left should be 0x01, 0xFF
The control output is slight off in some cases, if the values are not proportional a 2 wheel robot may turn more to one of the sides.
Code:
The mapping is correct
The output is incorrect
you have a bug in your code:
you are using the calculated leftSpeed to calculate the rightSpeed.
I believe this why RoboHappy complained about the Sabertooth erratic behavior and Richard mentioned he used a custom panel:
https://synthiam.com/Community/Questions/Servo-Movement-panel-Unable-to-turn-left-or-right-19185
Somehow I need to enable TTL serial mode as I don't want to be tethered to a laptop to use it.
I seem to be missing something here, as I can't find a setting to get it working without the USB connection.
Keep the usb disconnected.
I presume you have the main power source connected, do you see any lights on ?
Can you measure the voltage between the (+) and (-) ?
The idea is to troubleshoot if the controller DC/DC is still operational, you need to have 5v on those pins.
be careful when using the multi-meter probes to avoid a short circuit while trying to measure.
My guess is:
When you connected the S1 (+) and (-) to the EZB you short-circuit the DC/DC output voltage with EZB Vin, sometimes is enough to damage the 5v regulator.
The reason why it works with an USB cable is because the controller has a switching circuit to switch between the USB power (when you are configuring the controller) and the controller 5v regulator, in absence of DC/DC the switching circuit uses the USB voltage.
Still not working ?
The software also says it is in standard or simple serial mode.
RoboClaw includes 3 LEDs to indicate status. Two green status LEDs labeled STAT1 and STAT2
and one red error LED labeled ERR. When the motor controller is first powered on all 3 LEDs
should blink briefly to indicate all LEDs are functional.
STAT1 lights up when connected to USB. Only STAT2 lights up when not connected to USB.
The LEDs will behave differently depending on the mode. During normal operation the status 1
LED will remain on continuously or blink when data is received in RC Mode or Serial Modes. The
status 2 LED will light when either drive stage is active.
Now I have STAT1 lit when not connected to USB. It's hard to see the problem.
Further testing. Works without vendor software connection but with USB connected. Disconnect USB, then it doesn't work.
So the only thing it gets from the USB connection is more 5v power. Curious!
What would happen if I connected the Roboclaw's USB to its own S5 5v power supply? Risky or not?
Alan