Thumbnail

Ubtech Alpha 1 Bluetooth

Control UBTech Alpha robot via bluetooth

+ How To Add This Control To Your Project (Click to Expand)
  1. Make sure you have the latest version of ARC installed.
  2. Select the Get button in this page to download the archive file.
  3. Double click the downloaded archive file to execute installer.
  4. The installer will add this control to ARC.
  5. Load ARC and press the Project -> Add Control button from the menu.
  6. Choose the Movement Panels category tab.
  7. Press the Ubtech Alpha 1 Bluetooth icon to add the control to your project.

Manual

Control UBTech Alpha robot via bluetooth and control servos. The Virtual Servos in ARC will control the UBTech Alpha robot servos. Use the configuration button on this skill to configure what servos are to be used. The Vx servos in ARC correspond to the servo IDs of the UBTech Alpha robot.

For example:
- V1 controls servo ID #1
- V2 controls servo ID #2
- V3 controls servo ID #3
- and so on...

Main Window


User-inserted image


1. COM Port Drop-down
Select the Bluetooth COM port that corresponds with the Alpha1 robot connected to your PC.

2. Connect Button
Once the proper COM ports is selected, press the Connect button to connect ARC to the Alpha1

3. Init Button
Initiates communication with the Alpha1 robot.

4. Status Display
Displays text corresponding to what actions are happening with the skill.

Configuration


User-inserted image


1. Virtual servo Checkboxes
Check (enable) each virtual servo that corresponds to the servo ID's you have on your Alpha1. If you would like to control the servo, it will have to be enabled.

How to Use UBtech Alpha1 Bluetooth Skill


1) Connect your PC to the Alpha1 robot via Bluetooth.

2) Add the UBtech Alpha1 Bluetooth skill to your ARC project (Project -> Add Skill -> Movement panels -> UBtech Alpha1 Bluetooth).

3) Select the Bluetooth COM port for the Alpha1 robot and select CONNECT.

4) Use the configuration menu of this skill to select the servos you wish to control. Place a check in the box beside each servo to control.

5) Now that you have the skill configured, you may use any skills in ARC that support servos to move the Alpha1 robot. This includes Auto Position, Camera, Joystick, and more.

*Note: When editing scripts in other skills, use the Cheat Sheet or right-click in the editor to see available ControlCommand of this skill. You may connect, disconnect, and control LEDs.

Synthiam
#26   — Edited
Try this latest plugin (Version #9). Connect to the robot and assign Vx servos. Use servo controls to move them.

Tell me if you get the correct range of servo movement.
#27  
It doesn't connect !...the button at left of "connect"  button is blank , it can't be written , it only turns blue  or white.  What's it for ?
Synthiam
#28  
Oooops - forgot to load the port list in the drop down. Try the latest version #10
#29   — Edited
OK, plug-in works. Servos perform whole range .
-90  :  ezb=1
0      :  ezb= 72  (about)
+90  :  ezb= 147 . Exceeding this value servo stalls and may release (internal protection ?)
Init centers all servos correctly.
#30  
previous test was done moving  servos with"real time update " in  auto movement control (frames programming).
I created 2 frames and an action with them , but execute, jump, transition don't work.
Synthiam
#31  
Try version #11 and let me know about the ranges.
#32  
ezb=90 : center (exact)
ezb=180 : turns CW  :  + 90  (exact)
ezb=0     :  turns CCW : almost -90 ( not exact, maybe  87-88 )

Actions not working, as said in post #30.
Synthiam
#33  
The Auto Position currently requires an ezb connection to operate. Connect to either the ezb emulator or an ezb during operation for the time being. I’ll change that Auto Position the next release of ARC
#34   — Edited
OK, I understand. An update is needed to make ez b  work with bluetooth only.  I tested with an ezb connected , all works.

Can you make a refinement for  ezb=0  to  goto 90 exactly (my post #32 ) ?
May I suggest (posts 15 and 16.1)  , to have a partial  control on alpha's audio,  to provide a command to start / stop specific  mp3 files already stored in the sd card ?
The bluetooth protocol should  have messages for that.
Synthiam
#35   — Edited
Everything that can be done is done with the plugin. The protocol document is incomplete by UBtech. There is no complete information on how to trigger audio files from the sd card. servo positions are done as well. No additional work can be done with the incomplete documentation from ubtech. Contact UBTech to obtain complete command set and perhaps more can be done.
#36   — Edited
Never mind ! This plug-in is a great tool to hack alpha  and its good servos. All other functions can be obtained adding EZB v4 or Iotiny.
Please,  provide  in the plug in  a command  for internal leds on/off  (this function is no more in the latest version of plug-in).
#37  
DJ, I edited my last post , asking for a command for ubtech leds, that  was in previous test version of the plug in but not in the latest..
#39   — Edited
I'm testing this plug-in.  It's necessary to connect an ezb v4, as you said in a previous post, otherwise actions don't work. Is  a new version  of ezb already available to fix this ?
Note 1: init resets all servos. Ezb initial position is 90 for all servos , but servos go to various unpredictable different positions.
Note 2: if robot is switched off, ezb crashes, and PC must be restarted.
#40   — Edited
blue.EZB

This is the program i'm using to test the plug in. There is an action that  should move servo n.1 between  1 and 180 and then repeat for ever.
But it doesn't repeat this exact sequence for ever. After one cycle,  positions aren't  always the same,  for example they are  45 or 135,  sometimes  180, and even pauses seem to be  different in each cycle.
The  message sent  to a  servo for going  to a specific position seems  not to have  always  the same effect.
Remember  also that, if you switch off the robot for some reason,  EZB crashes and the PC must be restarted.
#41  
Hi DJ.
I'm sure  you are busy on many issues, but  I hope , when it'll be  possible for you,  you'll go back  working on this  one .
Synthiam
#42  
I'm not sure what else can be done. It seems the servos only respond when they want to respond. I'll try another update with experimental settings as usual, and see if that helps. But unless they update the documentation for the robot, i'm shooting in the dark.
#43   — Edited
I understand, there's lack of information about  bluetooth protocol. lt's a non  promising work.
#44  
@DJ. A new idea.
We have experimented direct command of servos with  bluetooth plug-ins, but they  don't work correctly. As you said, and i agree, further trials  to drive  servos directly are shots in the dark.
We might try another path, i.e. using ezb software and also  ubtech software, but  only to move the servos. 
The procedure could be:

1) Actions   are programmed using ubtech PC software. This creates a special ubtech file containing action information.
The file is  saved in the PC with its name , and sent to the robot via USB as usual with this robot .
2) The execution of the action is usually started or stopped  by a bluetooth tablet.  EZB could do the same thing , using the bluetooth protocol  command called  "implementing the action list" that sends  to the robot, via bluetooth, a string with the action file name.
3) A iotiny on board might perform, under ez-b control, other functions alpha can't  perform (sound, camera, etc.)

I'd  make such experiments .  Do you agree ?
I need some tool  to send (and receive) bytes via bluetooth (by ezb or PC).  Please  help with this.
#45  
Referring to my previous post, can you help providing or suggesting some tool to send (and receive) bluetooth messages for my experiments ?