Thumbnail

UBTECH Alpha Servos UBT-12HC

by UBTech

Control the UBTECH Alpha Robot Digital smart Servos (UBT-12HC) with ARC

Requires ARC v11 (Updated 2/27/2020)

How to add the UBTECH Alpha Servos UBT-12HC robot skill

  1. Load the most recent release of ARC (Get ARC).
  2. Press the Project tab from the top menu bar in ARC.
  3. Press Add Robot Skill from the button ribbon bar in ARC.
  4. Choose the Servo category tab.
  5. Press the UBTECH Alpha Servos UBT-12HC icon to add the robot skill to your project.

Don't have a robot yet?

Follow the Getting Started Guide to build a robot and use the UBTECH Alpha Servos UBT-12HC robot skill.


How to use the UBTECH Alpha Servos UBT-12HC robot skill

Control the UBTECH Alpha Robot Digital smart Servos (UBT-12HC) with ARC. The servos must be powered appropriately, and connected to the EZ-B v4 or IoTiny with the respective port. Visit the Config menu of this plugin to view the port configuration.

The Virtual Ports (V0..V99) in ARC can be assigned to the UbTech servos.

UART Ports

  • This plugin requires the RX signal wire of the servo be connected to TX of the selected UART or digital port (if Software UART is selected on IoTiny)

  • Hardware UART is for the EZ-B v4 only. Do not use software UART on EZ-B v4. View the EZ-B v4 datasheet to identify the UART ports (0, 1, or 2). EZ-B v4 datasheet can be found here: http://www.ez-robot.com/Tutorials/Lesson/18

  • Software UART should only be used with IoTiny

  • Default baudrate of UBTECH servos is 115,200

Bind To Virtual Servos

  • The configuration menu also provides an option to select the Virtual Ports, which correspond with the ID's of the UBTech servos. If the UBTECH servo ID #0 is connected, select V0. #1 = V1, #2 = V2, etc..

Additional Info

User-inserted image

Custom Bit Settings There are 3 bits that seem to not be understood for the protocol. Since UBTech does not release the protocol for their products, the community is working to better understand what the parameters are. The configuration menu of this plugin allows you to set hardcoded values for those bits. The bits are for 5, 6 & 7.

Custom servo Position Mapping The UB Tech servos have their own position range, and we don't know what it is. So, the configuration menu allows you to specify the min and max positions for the range. This will be mapped to the ARC servo position range. Meaning, if you set the range in this plugin, it will be mapped to the range for all ARC servo controls.

Protocol Packet Code Here's a copy and paste from the plugin code. This is how the packet is being assembled to be sent to each servo. The values specified by you in the configuration menu are b5, b6, b7, mapLow and mapHigh.

User-inserted image


ARC Pro

Upgrade to ARC Pro

Take control of your robot's destiny by subscribing to Synthiam ARC Pro, and watch it evolve into a versatile and responsive machine.

#25  

Thanks DJ. The four servo connectors are to be connected pin-to-pin to make a single serial control line for all servos  (driven by  ezb serial port at 3,3V ) and a 7,4 V line  for the servos and a common ground ?  What's the pinout ? like usual PWM servos ? (positive at center). What about the three black/red wires . One must be the battery itself, and the others ?

PRO
Synthiam
#26  

I have never had a ubtech servo to test or use, so i can't tell you the wiring pinout. You can probably tell by looking at the existing pcb. You're right about these things..

  1. all servos and the ezb require a common ground. This is because gnd is reference for the positive. Without reference, there's no way for each device to know what a voltage is

  2. all signal (Serial) lines of the servos connect to the ez-b serial port

  3. all servos are connected directly to the battery

#27  

Thank you again. Do you know who  tested the the plug in  with the robot ?

PRO
Synthiam
#28   — Edited

Think you'd have to look through this plugin description. I believe there is a link to the discussion on the plugin

#29  

Alpha hardware and its wires problems  now are solved. I  found nobody in the thread and plug-in discussion who has actually tested the plug-in with the real robot. If there is somebody I'd be pleased to hear  from him.

PRO
Synthiam
#30  

What issues do you experience?

is there a benefit if I created a plugin that connects to the alpha one Bluetooth using its original pcb?

#31  

My idea is  to create new functions for the alpha , using ezbv4 .  I was able to understand the robot wiring, pinouts, etc.  and now I'm experimenting the plug-in, that  was written  knowing the servo protocol, but, to my knowledge,  nobody has tested it on the 16  robot servo bus  yet. If somebody  did ,  I'd like to know if his experience was successful.

Could you  create a plug-in to communicate with alpha, using  ezb program and bluetooth (alpha has it) , without any hardware modification ? It would be great !

#32  

I'm experimenting the plug in. I gave power and connected all control pins together  to ezb serial port TX pin. To my surprise the serial port , when connected to the 16 servos , doesn't  output  correct digital levels (high=3,3 V, low =1,5 V (!), seen with oscilloscope).  The load of the 16 servos is excessive. This way it will never work . Some buffer is needed.