Asked

Skill For Controlling Waveshare Serial Servos Type ST Series

These servos are high quality and the type ST3215 is also quite inexpensive. The type ST3025 (BL / metal housing) is suitable for semi-professional use. Robots for show cases and longer operating times could be equipped with this. The servos can already be activated with the Feetech RS RS485 skill. The two communication protocols are probably very similar. However, no positions feedback can be read back. I think this can be achieved with an appropriate modification of the exisiting Feetech skill. This makes it a Feetech / Waveshare skill. Certainly very useful with probably little effort


ARC Pro

Upgrade to ARC Pro

Join the ARC Pro community and gain access to a wealth of resources and support, ensuring your robot's success.

PRO
Germany
#9  

Hi DJ Sures,  thank you very much for your support!!

To the questions.

  1. So far I have not used the discrete UART connections TX and RX, but rather connected the servo controller to the PC via USB.

I then tested the connection using the Python and Arduino programs provided by WaveShare. Both work well, even bidirectionally. The servo data such as position, temperature, etc. are sent and received. So far it looked good, even the connection in both dirictions.

  1. I tested the Feetech serial bus skill firsst. I assumed that this was the right skill. It only works with the WS servo series SC15 but I use servos from the ST series. Although these servos move with the Feetech serial bus skill, but the positioning is completely wrong. With the Feetech RS 485 skill, they run as they should. But without position feedback

No data is received from the servos in either skill

PRO
Germany
#10  

Hi Robo developers,

here is a small update on the topic of Control Waveshare Smart - Servos with ARC.

In principle, I can live with the solution that was found. The advantages of the servos with a focus on position feedback for teaching movements and the use of multi-loop mode for gears, unfortunately still don't work. But that would be exactly the sensible application of these servos. I believe that smart servos will play an increasingly important role in the future. The prices for smaller servos of this type, without metal housing and with simple gear, are now in the region of 20.

PRO
Portugal
#11  

Nice servos. Precise and smoth movement.

PRO
Germany
#12  

Hi Dark Harvest,

thank you and yes, that looks pretty good at first glance, but I can't use yet the full potential of the servos under ARC as described.

The second video shows what is possible, when the servos are addressed directly with the right commands from Python or Arduino C. You can also see, how useful the multi-turn mode is, in conjunction with a gear.

With a printed planetary gear, ratio of 10:1, for example, there is plenty of torque and speeds that are suitable for a large robot.

PRO
Germany
#13  

Is it possible to upgrade the Python version provided in ARC to, for example, Python 3.11? My goal is to integrate more complex Python programs and modules into Python scripts, thereby expanding the capabilities and limits of ARC.

PRO
Synthiam
#14  

They look like nice servos - but the issue is there is no real way to program them outside of their libraries. They haven't published any API docs or protocol docs. Several similar-priced servos work with arc, such as fintech. There isn't much Synthiam can do when the company doesn't want anyone to use their products Shrug. You can reach out to them and ask them to create a robot skill. My advice is: bug them - the squeaky wheel gets the cheese.

PRO
Germany
#15  

OK, I understand.:(

I have already tried to access the servos with the correct Python commands and sc_servo_sdk from ARC. But it seems that the Python version in ARC has to be upgraded to e.g. 3.11. I have already asked about this possibility before. The protocol is extremely similar to that of the Feetech servos. My experience with Waveshare support gives me little hope that they will develop a skill. But I am happy to try. My hope is more on a work around;)

PRO
Synthiam
#16  

I moved your Python question here because it concerns this robot skill you want. The Python version in ARC is compatible with any Python you'd want to write. The issue you're facing is that you're misinterpreting a "Python program " as a " Python code within ARC."

ARC is already a framework that the library you're asking about isn't aware of. That library from Waveshare has no idea what ARC is. It can't communicate with ARC because it is made for someone who wants to write a program from scratch.

Since you're their customer, I'd recommend bugging Waveshare and asking them to create a robot skill. You paid money for their product and want to use it, but they're making it impossible. Their competitors, such as robotis, feetech, and others, have robot skills created for arc. They should as well.