Wrist servo not working

uArm Serial No.: UARM-D43639D85C8C
Firmware Version: 4.4.0 & 3.2.0
Operation System: Win10
uArm Controlling Method: uArm Studio 1.1.22

I’ve tried the servo on the old and the new firmware, and I can’t get it to work at all, with either of them.
Here is a quick video to explain: Dropbox - VID_20191126_163150.mp4 - Simplify your life

I can’t really see that I’m doing anything wrong. Could there be something wrong with this uArm-batch?

Thanks so much for your help

Hi,
Can you contact me by email, because you need to provide some personal information.

support@ufactory.cc

I’m having this exact same problem. I tried both uArm Studio and the python API. Everything else seems to work fine. Did you guys determine what the problem was? Bad servo? Wiring? Firmware issue?

Thanks,
Jack

Device Information
Device SwiftPro
Port Number COM5
Firmware Version 4.9.0
Serial Number C8FD194052DB

Studio Information
Studio Version 1.1.23
Studio Channel prod
OS win32 x64 10.0.19042
uArmCore Version 1.0.1
Studio Language en

We had to send it back and get new ones. Probably they were faulty from the start.

1 Like

Thanks for the quick reply!

Replace the wrist servo or something wrong with the uArm itself? I have a lot of these little servos around I might be able to just swap out if it’s just the servo.

We sent in the full robot. I think they replaced all of it but I can’t be 100% sure. We paid for shipping, btw, which wasn’t cheap…

1 Like

Hi friend,

Did you ever modify the work mode? You need to control the servo under mode S0.
Please try to send the below code to check your current work mode. If it is V0, please provide the SN showing on the bottom of uArm to minna.zhong@ufactory.cc.
If it is not V0, please modify the mode and try again, thanks.

swift = SwiftAPI(filters={‘hwid’: ‘USB VID:PID=2341:0042’})
swift.waiting_ready(timeout=3)
time.sleep(5)
print(‘mode’, swift.send_cmd_sync(‘P2400’)) //get work mode

swift.send_cmd_sync(‘M2400 S0’) //modify the work mode to S0

Best regards,
Minna

Code I’m testing with:

import os
import sys
import time
sys.path.append(os.path.join(os.path.dirname(__file__), '../..'))
from uarm.wrapper import SwiftAPI

swift = SwiftAPI(filters={'hwid': 'USB VID:PID=2341:0042'}, cmd_pend_size=2, callback_thread_pool_size=1)
swift.waiting_ready(timeout=3)
time.sleep(5)
print('mode', swift.send_cmd_sync('P2400')) #get work mode
swift.send_cmd_sync('M2400 S0') #modify the work mode to S0



device_info = swift.get_device_info()
print(device_info)
firmware_version = device_info['firmware_version']
if firmware_version and not firmware_version.startswith(('0.', '1.', '2.', '3.')):
    swift.set_speed_factor(0.00005)

swift.set_mode(0)

speed = 100000

swift.reset(speed=speed)
while swift.connected:
    swift.set_servo_angle(3, 45)
    swift.set_servo_angle(3, 135)

Output:

C:\Users\webde\Dev\uArm-Python-SDK\examples\test>python move_wrist.py
mode ['OK', 'V0']
{'device_type': 'SwiftPro', 'hardware_version': '3.3.0', 'firmware_version': '4.9.0', 'api_version': '4.0.5', 'device_unique': 'C8FD194052DB'}

Arm goes to reset pos and no servo movement. I’ll email you my serial number.
Thanks,
Jack

Hi Jack,

Thanks. We are not sure what is the main problem. I send you an email, please follow the email to troubleshoot the problem and give me the result. Thanks.

Best regards,
Minna

Hi Minna,

we seem to have a similar problem. Could you please send the troubleshooting instructions to me as well?

Kind regards,
Gergely

Hi Jack,

Do you modify the work mode to S0?
Please follow the above steps to send the command to check the work mode? If it is V0, please provide the SN to minna.zhong@ufactory.cc.

What is the firmware version? Any videos of the problem would be helpful to us.

Best regards,
Minna