Thumbnail

Lewansoul Servo

by LewanSoul

Control LewanSoul digital smart servos from the EZ-B UART or PC COM Serial Port

How to add the Lewansoul Servo 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 Lewansoul Servo 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 Lewansoul Servo robot skill.

How to use the Lewansoul Servo robot skill

Control the LewanSoul Digital smart Servos (i.e., LX-16A) 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. This plugin will only operate on EZB Index #0.

Demonstrated with IoTiny using Software UART

Details

ARC's Virtual Ports (V1..V99) can be assigned to the LewanSoul servos.

  • This plugin requires the RX signal wire of the servo to be connected to the TX of the selected UART or digital port (if Software UART is selected) using a Dynamixel servo Cable provided by one of our hardware partners.

  • Hardware UART is available on the EZ-B v4 only and is recommended if using an EZ-B v4 with a Dynamixel servo Cable. View the EZ-B v4 datasheet to identify the UART ports (0, 1, or 2).

  • Software UART is available on both the EZ-B v4 and IoTiny. We only recommend using software UART on IoTiny and hardware UART on EZ-B v4.

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

  • Default baudrate of LewanSoul servos is 115,200

Specify servo Port By servo ID

The servos are addressable, meaning they each have a unique address ID. The address ID is related to ARC's Vx servo (virtual servo). This means servo ID #1 is V1 in ARC. servo ID #5 is V5 in ARC. Etc. Specify the Vx ports to bind to using the configuration screen of this plugin. ID #1 (V1) is selected in the example image below. Any servo commands sent to V1 will move LewanSoul servo ID #1. You can choose as many Vx ports as necessary to bind in this plugin. User-inserted image

Use USB/TTL Debug Board This option in the configuration is if you are using the optional TTL/USB debug board, which changes the communication to the servo. With this unchecked, the packet length includes the sent packet because the Rx & Tx are crossed. When checked (using the ttl board), the Rx & Tx will only include the return values. Keep this unchecked if you are not using a USB/TTL Debug Board.

Continuous Rotation (Motor) Mode

The servos can be configured for Continuous Rotation (i.e., Motor Mode) using the EZ-Script ControlCommand()...

ControlCommand("LewanSoul Servo", SetToContinuousMode, v1)

You can change the port (v1 in the above example) to whatever port you wish to be in continuous rotation mode. Once you do that, the servos will respond as regular, continuous rotation servos, where position 90 stops, 180 is fast in one direction, and 1 is fast in the other. The values further from 90 in either direction change the speed. This allows these servos to be used with the Continuous Rotation Movement Panel.

Servo Mode

If you switched the servo into Continuous rotation mode, you can use the ControlCommand() to change back to servo mode. This can be done with the following command...

ControlCommand("LewanSoul Servo", SetToServoMode, v1)

Reading servo Positions

If the servo is connected to the RX and TX of the selected hardware UART, the servo position can be read. This feature is available in both EZ-Script and Auto Position control. In EZ-Script, the GetServoRealtime() function will query the specified servo. Otherwise, the servos can be queried in the Auto Position config screen using the Realtime query button in the frame editor.

Servo Speed

The servo speed can be adjusted using any scripting servo Speed command or in any robot skill servo selection Advanced settings option. Check the servo section of your desired ARC scripting language in the support section for the servo Speed syntax. The value of the servo speed is between 0 and 30,000 in milliseconds. Setting the servo speed to 1000 will take 1 second to transition to the new position. Selecting the servo speed to 10,000 will take 10 seconds to transition to the new position.


ARC Pro

Upgrade to ARC Pro

Experience the transformation – subscribe to Synthiam ARC Pro and watch your robot evolve into a marvel of innovation and intelligence.

Canada
#1  

Hello! Here's my problem. I want to run the LewanSoul LX-16A servos in motor mode. Unfortunately I haven't been able to do it yet.

The servos cannot be set explicitly to motor mode in the configuration software of LewanSoul. I integrated the servos in the ARC with the plugin "LewanSoul Servo". They can also be executed with the module "Continuous servo Movement Panel" only in servo mode.

According to the LewanSoul configuration software, the following value ranges apply in motor mode: 0 = Stop -1 to -1000 = counterclockwise rotation with increasing speed 1 to 1000 = clockwise rotation with increasing speed

I cannot set these values in the "Continuous servo Movement Panel".

Where and which settings have to be made in ARC?

Thank you in advance.

PRO
Synthiam
#2  

Get the latest version of this plugin - and read the description above. You can put the servos in Continuous Rotation mode by using the ControlCommand() and the Movement Panel will now work for your needs.

Canada
#3  

It's working. I am enthusiastic about the fast implementation. Thank you.

#4  

@dd_sn, would you mind sharing a screen shot of your panels and scripts that you used to make it a continuous rotation? im trying use the servos to move small wheels, I have been successful at adding a joystick to move them, but once it gets to 180 degrees it automatically kicks the rotation of the gears back in the opposite direction. Thank you in advanced.

PRO
Canada
#5   — Edited

Interesting enough I just received the Lewan saul LDX227 and LDX218 (Chinese Robot), When I ordered them I thought they were serial bus servo's like the LX-16A but sadly they are just normal servo's (No position feedback). Good news is they work just stick them in any port (Connector is exactly same as EZB) and they work fine using default servo driver.

User-inserted image

#6  

I haven't tried those servos yet, were they more expensive that the LX 16A? I was actually able to get them working the way I want them to, it was there all along just had to stop making more complicated that it was, you know when you have something right infront of you and you do see it...well that was me lol, DJ Sures thank you for setting up the codes for LX 16A, this is awesome!

PRO
Canada
#7   — Edited

Came with the robot but you can find them for about $15 US I think I paid  $260 for robot and it has 16 of them. You don't get all sensors and controller but that is what the EZ-B is for.  Little disappointed they don't provide position feedback though - I just assumed since the LX16A's did and the description said "High Precision Potentiometer" but I assumed incorrectly.

I have half a dozen of the LX-16A I purchased but the controller burnt out and one of the servo's fried so I am also very thankful that DJ Sures completed the plugin in the hack show for the EZ-B.  If you have found a 3D printed bracket for them so I can actually mount them to something like a robot arm, I would be grateful.

Here is the video I think I posted a while ago but to be honest I don't think it will be much different then a JD with extra servo's in the legs and a bunch of sensors.

#8  

This is what I am currently working on, it has some brackets for the LX 16A but I don't know if they might be functional for your purposes, check it out in this link for brackets, [color=#111111][size=3][font=Verdana, Arial, Helvetica, sans-serif]who knows and maybe you will also start the project yourself too.[/font][/size][/color]

PRO
Canada
#9  

Project Looks Awesome, Thanks for the Bracket I am sure I will find some mounting use cases for it.

PRO
Synthiam
#10  

Oh boy - that mars rover is really really great. Heattroks, are you making one of those?!

#11   — Edited

Yes I am making one, I actually have 2 of my students helping me to build it, which is great because they are learning 3D printing, solidworks and how to program I'll post oocpictu once it's done, maybe even a video!

PRO
Synthiam
#12  

Oh yes! That'll be great to see. Ive been watching a lot of NASA documentaries on YouTube this past 2 weeks. Curious Droid's channel has been my go-to for space videos lately - he's very informative. Have you seen?

#13  

Not as much as a I used to anymore with work and everything else feels like I almost don't have enough time anymore, but I do try to keep up with what is going on. Yesterday actually, after 15 years the opportunity rover mission is over.. :(

Canada
#14   — Edited

@Heattroks: Hello, I think we're working on the same project. Mechanically and electrically I finished a first testable version today.

User-inserted image

I am still a newcomer on the EZ-Robot platform. That's why my current solution for forward and reverse driving is as follows:

  1. insert the Costum Movement Panel
  2. forward command:
#Set continuous mode
ControlCommand("LewanSoul servo", SetToContinuousMode, v5)
ControlCommand("LewanSoul servo", SetToContinuousMode, v6)
ControlCommand("LewanSoul servo", SetToContinuousMode, v7)
ControlCommand("LewanSoul servo", SetToContinuousMode, v8)
ControlCommand("LewanSoul servo", SetToContinuousMode, v9)
ControlCommand("LewanSoul servo", SetToContinuousMode, v10)

#Read current global speed and save it in two variables 
#for right and left rotation respectively
$vor = (GetSpeed()/255*90)+90
$rueck = 90-(GetSpeed()/255*90)

#Assigning speed to servos
servo(V5, $vor)
servo(V6, $rueck)
servo(V7, $rueck)
servo(V8, $vor)
servo(V9, $vor)
servo(V10, $rueck)

#Aim steering at 0
servo(V1, 90)
servo(V2, 90)
servo(V3, 90)
servo(V4, 90)
  1. reverse command:
#Set continuous mode
ControlCommand("LewanSoul servo", SetToContinuousMode, v5)
ControlCommand("LewanSoul servo", SetToContinuousMode, v6)
ControlCommand("LewanSoul servo", SetToContinuousMode, v7)
ControlCommand("LewanSoul servo", SetToContinuousMode, v8)
ControlCommand("LewanSoul servo", SetToContinuousMode, v9)
ControlCommand("LewanSoul servo", SetToContinuousMode, v10)

#Read current global speed and save it in two variables 
#for right and left rotation respectively
$vor = (GetSpeed()/255*90)+90
$rueck = 90-(GetSpeed()/255*90)

#Assigning speed to servos
servo(V5, $rueck)
servo(V6, $vor)
servo(V7, $vor)
servo(V8, $rueck)
servo(V9, $rueck)
servo(V10, $vor)

#Aim steering at 0
servo(V1, 90)
servo(V2, 90)
servo(V3, 90)
servo(V4, 90)
#15  

This is really good!! thank you for the code, we are using a joystick to control it which makes it a lot easier. I am actually also making a CAD file to the EZB, once i have ill pass it over for your EZB. how did you make your shafts, or did you had someone else do them for you? also, where did you get the jumper cables to connect all of the servos?

Canada
#16   — Edited

The shafts are made of aluminum rods. This was cut to length. Then I drilled most of the holes for the screws (3.2 mm diameter). With some extinguishers I cut M3 threads.

I made the extension cables myself. These extend the original cables. In the next phase they have to be installed cleanly. (example)

Which joystick do you use?

#17   — Edited

ok, I actually bought a 6ft aluminum rod which i would need to cut, there is no way out of that lol. Im using an Xbox one controller which I was surprised that would work, many people were saying that the xbox 360 controller was the only that would work. in your code can you move the front wheels and back wheels independently?

#18  

User-inserted image this is the panel that is been used with the rover

Canada
#19  

If the English sounds a bit unusual, it's because of the translation tool (:-). I'm practically at the beginning of the programming process. At the moment all wheels are steered the same way (driving). When steering, the rear and front axles are integrated. The respective steering angles are mirrored.

The aluminium rods can be sawed quite well by hand. A stationary drilling machine is required for drilling. Otherwise the drill holes will be crooked.

Translated with www.DeepL.com/Translator

PRO
Synthiam
#20  

I see in the joystick control, that the servo positions are specified. I recommend using a Movement Panel and checking that option in the joystick configuration menu as well. The Movement Panel let’s the entire software know how to move the robot.

Click the word Movement Panel link here to read what it is and how it works.

#21  

I see, no worries i can understand you perfectly. For me the way I set them up with the joystick was the easiest way to make them move. Once I get the my battery replacement I will power up the servos and share the way have them set them up. The only problem I have so far is that I can only steer the front wheels left and right but not the back ones. Maybe we can figure out a way to make them move the way they are supposed to.

P.S.

I want to wait until I get my new battery just to make sure I share the correct set up that I have.

Canada
#22  

For the steering I currently used a slider (Min=60, Max=120, Default=90) in the "Mobile Interface". The value is passed to the variable $Steering_angle. If changed, the following code is executed:

servo(V1, $Steering_angle)
servo(V2, $Steering_angle)
servo(V3, 90 - ($Steering_angle-90))
servo(V4, 90 - ($Steering_angle-90))

V1 and V2 steer the front axis and V2 and V3 steer the rear axis.

#23   — Edited

Great rover project and another great plugin!! This is very cool!!! :)

I have been rolling the idea of changing the servo setup in my robot for quiet some time, this seems to be a good option!! Daisychaining will be helping a lot to clean the wiring mess, and positional feedback is a very nice addon!!

I also found this over on GitHub, which is looking good

https://github.com/maximkulkin/lewansoul-lx16a

#24   — Edited

Alright, finally after a busy weekend and a few hiccups along the way I was able to open up my program. Here is what I have, the way I have it set up lets me move it in any direction I want with an xbox one controller.  I still need to work on the steering, if you find a solution let me know.

User-inserted image

This is the code.

User-inserted image Set up for joystick#2

User-inserted image Set up for joystick #1

#25  

@Mickey666Maus it is indeed, it has been a really good learning process for me getting to know how to work with the EZBv4, there is just an endless amount of projects that you can work on.

#26  

Hey guys,  I am feeling really stupid at the moment... I tried to drive my LX-16A with the plugin and they do not move. I can drive them with their Bus servo Terminal software but when I connect the EZ-B they do not move!! I am sure I just missed something very simple here!! Anyone had a similar problem and solved it?

I will double check everything later today... I used the same cable that I used on the Dynamixel, that should be allright? Does it matter if the left or right connection on the servo is plugged in? I set the IDs of my servos to 1 and 2 with the Lewansoul software...

Any pre-setup stuff that I missed out?

Plugin shows the connection as being established...

PRO
USA
#27  

...not sure all what you did prior...but make sure those Ids are all different for each servo and, make sure all the baud rates match, and that they are check marked in the main window to be active. And make sure they are getting enough current.

PRO
Synthiam
#28  

Write every step you took. That’ll help you retrace the steps.

#29  

I am currently driving my servos with the above set up I have without any issues, now I do not know how your set up is for your servos, that might help guides a little better to help you.

#30  

Hey guys sorry for bothering you...I selected the wrong UART, after reading the instructions again and watching the video again I figured it out!!! Sometimes I am such a slow learner...

But reading helps!! :D

And thanks for backing me up with support!!:D :D

#31  

@dd_sn what gauge cable did you use to connect your servos? im using a 22 AWG, I am just not sure if it will be enough or if I should be an 18 AWG. I will be connecting all of the 10 servos.

#33  

thank you! also, I made some adjusments to the clip holders for the nuts, I dont know about you but I found it hard to be puttting in the nuts with the current holders, im planning on putting them on thingiverse and if you want you can download them from there if you want, I am also currently making a holder for the EZ BV4 and Ill post the stl on thingiverse.

User-inserted image User-inserted image User-inserted image

Canada
#34  

In Germany you cannot buy this profile as a private person. Therefore I use the aluminium rod (without profile). I have to drill the holes. I am interested in the holder.

Netherlands
#37  

update is not working ok. System.NullReferenceException: De objectverwijzing is niet op een exemplaar van een object ingesteld. bij LewanSoul_Servos.FormConfig.setConfigurationValuesFromUser() in C:\My Documents\SVN\Developer - Windows\ARC skill plugins\Behavior_Control_LewanSoul_Servos\Kondo KRS Servo\FormConfig.cs:regel 90 bij LewanSoul_Servos.FormConfig.btnSave_Click(Object sender, EventArgs e) in C:\My Documents\SVN\Developer - Windows\ARC skill plugins\Behavior_Control_LewanSoul_Servos\Kondo KRS Servo\FormConfig.cs:regel 95 bij System.Windows.Forms.Control.OnClick(EventArgs e) bij System.Windows.Forms.Button.OnClick(EventArgs e) bij System.Windows.Forms.Button.OnMouseUp(MouseEventArgs mevent) bij System.Windows.Forms.Control.WmMouseUp(Message& m, MouseButtons button, Int32 clicks) bij System.Windows.Forms.Control.WndProc(Message& m) bij System.Windows.Forms.ButtonBase.WndProc(Message& m) bij System.Windows.Forms.Button.WndProc(Message& m) bij System.Windows.Forms.Control.ControlNativeWindow.OnMessage(Message& m) bij System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m) bij System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)

#38  

Can you try to update ARC? It all works fine for me... :)

Netherlands
#39  

i removed ez from the pc and instal a new fress ez. i dit setup the same settings as before and the problem is the same. the lewansoul servo menu is the problem do nothing in it save and i get the same error.

Version: 2019.05.08.00

System.NullReferenceException: De objectverwijzing is niet op een exemplaar van een object ingesteld. bij LewanSoul_Servos.FormConfig.setConfigurationValuesFromUser() in C:\My Documents\SVN\Developer - Windows\ARC skill plugins\Behavior_Control_LewanSoul_Servos\Kondo KRS Servo\FormConfig.cs:regel 90 bij LewanSoul_Servos.FormConfig.btnSave_Click(Object sender, EventArgs e) in C:\My Documents\SVN\Developer - Windows\ARC skill plugins\Behavior_Control_LewanSoul_Servos\Kondo KRS Servo\FormConfig.cs:regel 95 bij System.Windows.Forms.Control.OnClick(EventArgs e) bij System.Windows.Forms.Button.OnClick(EventArgs e) bij System.Windows.Forms.Button.OnMouseUp(MouseEventArgs mevent) bij System.Windows.Forms.Control.WmMouseUp(Message& m, MouseButtons button, Int32 clicks) bij System.Windows.Forms.Control.WndProc(Message& m) bij System.Windows.Forms.ButtonBase.WndProc(Message& m) bij System.Windows.Forms.Button.WndProc(Message& m) bij System.Windows.Forms.Control.ControlNativeWindow.OnMessage(Message& m) bij System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m) bij System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)

#40  

I am using the same plugin, I will do some testing once I am back home...

PRO
Synthiam
#41   — Edited

You must use the beta with the latest plugin update. Also, this update hasn’t been fully tested, as discussed in the other thread. Can you tell me if this is an existing project you’re loading? What causes the error?

User-inserted image

#42  

I just updated to the latest Beta, and can confirm the problem... I cannot safe the LewanSoul servo control, it gives me the same error message!!

I think it has something to do with the new Design GUI? It worked with the Beta Version that did not have the ne GUI... :)

Netherlands
#43  

the normal and the beta software have the same problem the GUI good be the problem .

Netherlands
#44  

DJ  i am working on a LOBOT Alienbot i like to use the ez brain to control this robot and play end test how it works en to day i instal the new lewansol software and nothing works anymore.

User-inserted image

#45  

I think it will be easy to fix for @DJSures you will have your servos up and running very soon!! :)

PRO
Synthiam
#46  

Try the latest version - it was just updated

#47  

Still not working, but the error message changed...

Version: 2019.06.25.00

System.ArgumentException: Der PortName darf nicht leer sein. Parametername: PortName bei System.IO.Ports.SerialPort.set_PortName(String value) bei LewanSoul_Servos.FormMain.initUART() in C:\My Documents\SVN\Developer - Windows\ARC skill plugins\Behavior_Control_LewanSoul_Servos\Kondo KRS Servo\FormMain.cs:Zeile 92. bei LewanSoul_Servos.FormMain.SetConfiguration(PluginV1 cf) in C:\My Documents\SVN\Developer - Windows\ARC skill plugins\Behavior_Control_LewanSoul_Servos\Kondo KRS Servo\FormMain.cs:Zeile 63. bei LewanSoul_Servos.FormMain.ucConfigurationButton1_Click(Object sender, EventArgs e) in C:\My Documents\SVN\Developer - Windows\ARC skill plugins\Behavior_Control_LewanSoul_Servos\Kondo KRS Servo\FormMain.cs:Zeile 207. bei System.Windows.Forms.Control.OnClick(EventArgs e) bei System.Windows.Forms.Button.OnClick(EventArgs e) bei System.Windows.Forms.Button.OnMouseUp(MouseEventArgs mevent) bei System.Windows.Forms.Control.WmMouseUp(Message& m, MouseButtons button, Int32 clicks) bei System.Windows.Forms.Control.WndProc(Message& m) bei System.Windows.Forms.ButtonBase.WndProc(Message& m) bei System.Windows.Forms.Button.WndProc(Message& m) bei System.Windows.Forms.Control.ControlNativeWindow.OnMessage(Message& m) bei System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m) bei System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)

Netherlands
#48  

same error i update all the parts.

Version: 2019.06.25.00

System.NullReferenceException: De objectverwijzing is niet op een exemplaar van een object ingesteld. bij LewanSoul_Servos.FormConfig.setConfigurationValuesFromUser() in C:\My Documents\SVN\Developer - Windows\ARC skill plugins\Behavior_Control_LewanSoul_Servos\Kondo KRS Servo\FormConfig.cs:regel 90 bij LewanSoul_Servos.FormConfig.btnSave_Click(Object sender, EventArgs e) in C:\My Documents\SVN\Developer - Windows\ARC skill plugins\Behavior_Control_LewanSoul_Servos\Kondo KRS Servo\FormConfig.cs:regel 95 bij System.Windows.Forms.Control.OnClick(EventArgs e) bij System.Windows.Forms.Button.OnClick(EventArgs e) bij System.Windows.Forms.Button.OnMouseUp(MouseEventArgs mevent) bij System.Windows.Forms.Control.WmMouseUp(Message& m, MouseButtons button, Int32 clicks) bij System.Windows.Forms.Control.WndProc(Message& m) bij System.Windows.Forms.ButtonBase.WndProc(Message& m) bij System.Windows.Forms.Button.WndProc(Message& m) bij System.Windows.Forms.Control.ControlNativeWindow.OnMessage(Message& m) bij System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m) bij System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)

#49  

Ah this was just a minor bug...I tried to safe without specifying the COM port... The plugin works again!!!

That was super fast, thanks a lot @DJSures to get it back on track!! :)

#50  

Try to put something to the COM port, even if you are not using the port... That should be it?

It is just a minor bug that will not let you safe the control if that field is empty I guess...

#51  

Just for you info... I had one more error message, which did not persist. But might be good to know that there is another thing that might not run smoothly!

Version: 2019.06.25.00

System.InvalidOperationException: Der Anschluss ist geschlossen. bei System.IO.Ports.SerialPort.Write(Byte[] buffer, Int32 offset, Int32 count) bei LewanSoul_Servos.FormMain.sendServoCommand(Byte[] cmdData) in C:\My Documents\SVN\Developer - Windows\ARC skill plugins\Behavior_Control_LewanSoul_Servos\Kondo KRS Servo\FormMain.cs:Zeile 194. bei LewanSoul_Servos.FormMain.Servo_OnServoMove(ServoPositionItem[] servos) in C:\My Documents\SVN\Developer - Windows\ARC skill plugins\Behavior_Control_LewanSoul_Servos\Kondo KRS Servo\FormMain.cs:Zeile 174. bei EZ_B.Servo.SetServoPosition(ServoPositionItem[] servos) bei EZ_Builder.EZBManager.SetServoPosition(ServoDescriptor[] servos, Int32 position) bei EZ_Builder.UCForms.FormServo.tFdM7DjkGEf(Object , EventArgs ) bei System.Windows.Forms.Control.OnClick(EventArgs e) bei System.Windows.Forms.Button.OnClick(EventArgs e) bei System.Windows.Forms.Button.OnMouseUp(MouseEventArgs mevent) bei System.Windows.Forms.Control.WmMouseUp(Message& m, MouseButtons button, Int32 clicks) bei System.Windows.Forms.Control.WndProc(Message& m) bei System.Windows.Forms.ButtonBase.WndProc(Message& m) bei System.Windows.Forms.Button.WndProc(Message& m) bei System.Windows.Forms.Control.ControlNativeWindow.OnMessage(Message& m) bei System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m) bei System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)

Netherlands
#52  

i think the problem is over. btw is it possible to make servo reverse and endpoint settings ???.

#53  

I think the best way to do this is to use a script...  Just have a variable that watches the servo position and reverse the direction once you get to a certain servo angle! :)

Netherlands
#54  

mm somthing is not ok . i use Auto Position to set the servo end save the data end get this error.

error getting servo positions. tekenreeks is niet als een geldige boolean-waarde herkent.

#55  

The error message from #51 also appeared while using the horizontal servo control...

PRO
Synthiam
#56  

Try the latest build

Netherlands
#57  

in the liwansoul  menu you can see the update info when you save data from a move  only one servo is update test it several times servo v7 in mine test setup with 8 servo`s and dit nog move servo 7   ???? with error getting servo positions. tekenreeks is niet als een geldige boolean-waarde herkend.

i hope this info will help the software is too new for me too see what's going on.

PRO
Synthiam
#58   — Edited

Configure the communication settings correct.

User-inserted image

Netherlands
#59  

is it possible to test a beta version and get back to the origin one now we have to handle with de not working model ???

Netherlands
#60  

DJ  it looks like the servo input read is working ok now with the latest update. like to test more but need to sleep too sorry. and thanks.

#61  

Hey there...it seems like the problem still persists...I am trying to connect to the EZBPi server and get the following error message...

2019.06.28 11:21:23 +02:00 - Attempting connection on 192.168.178.73:23 2019.06.28 11:21:24 +02:00 - Connected to 192.168.178.73:23 2019.06.28 11:21:24 +02:00 - Reports CapabilityController 2019.06.28 11:21:24 +02:00 - Firmware 'Raspberry EZBPi v1' on 'Raspberry Pi (A, B, B+, Zero)' supports the following capabilities:

  • Reports CPU temperature
  • Read/Write Digital I/O Ports
  • Hardware UART TX/RX with DMA buffer and adjustable baud rate
  • Can stream video v4 codec
  • Native WiFi Connectivity from ARC

2019.06.28 11:21:24 +02:00 - EZ-B temperature is 53.34149752948088100C 2019.06.28 11:21:24 +02:00 - Connection Failed: System.ArgumentException: Der PortName darf nicht leer sein. Parametername: PortName bei System.IO.Ports.SerialPort.set_PortName(String value) bei LewanSoul_Servos.FormMain.initUART() in C:\My Documents\SVN\Developer - Windows\ARC skill plugins\Behavior_Control_LewanSoul_Servos\Kondo KRS Servo\FormMain.cs:Zeile 92. bei LewanSoul_Servos.FormMain.FormMain_OnConnectionChange(Boolean isConnected) in C:\My Documents\SVN\Developer - Windows\ARC skill plugins\Behavior_Control_LewanSoul_Servos\Kondo KRS Servo\FormMain.cs:Zeile 34. bei EZ_B.EZB.OnConnectionChangeHandler.Invoke(Boolean isConnected) bei EZ_B.EZB.PWBq7NxRL1() bei EZ_B.EZB.Connect(String hostname, Int32 baudRate) 2019.06.28 11:21:24 +02:00 - Disconnected

#64  

It all works now...I guess the problem was that I had an Error Message about the LewanSoul plugin on startup, ARC removed the plugin instance and I added a new one. So whatever this problem was, it will probably not happen ever again to anyone just updating to the new version and running the plugin!

Thank you so much for resolving this!!! This is great!!! :D

PRO
Synthiam
#65  

Right on - that's good to hear

Netherlands
#66  

great work thanks mickey and dj.

Netherlands
#67   — Edited

i found a new problem 2 servos testing divert positions no problem after saving but when i use 3 or more servos the save data will not work anymore. i think we need more time to get all the servo data ??? test this with Auto Position menu.

#68  

Thanks for the compliment but I did not do anything! :)

Thanks for helping to find bugs in this beta build @michelpet

Netherlands
#69  

i disconnect the d6 data from the servo and save the data from the screen this will work ok. data read with d6 connected is not stable. i am too new with this software to under stand how it works.

#70  

I did not try this yet...but maybe you can use a little script and put a timer, so there is a little pause after each servo position has been read? But if you already found a way to save your positional data, you can also stick with your method I guess!

#71  

Trying to get this to work but getting the following. Any ideas?

User-inserted image

PRO
Synthiam
#72  

Try the latest update for this plugin. It seems the issue was with IoTiny. The IoTiny doesn't have hardware uart, but the default setting for the plugin is hardware uart so it gave an error. The plugin won't throw that error now. However, to use this on the IoTiny, you'll have to use one of the Software UART ports and deselect hardware Uart from the settings.

#73  

I'll give it a try DJ, thanks for the help.

#74  

Still having a bit of trouble here. I can not get it to recognize my servo. -Using IOTiny -I have my adapter plugged into port D0. -Selected D0 for the software UART -Assigned it to V1 (my servo identifier is #1)

Am I doing something wrong?

User-inserted image

PRO
Synthiam
#75  

Says not connected to ez-b in your screen shot. Is that just because it’s a screenshot or did you forget to connect to the ezb?

if not, that all should work. I can test tomorrow with an iotiny and see if there’s any trouble.

#76  

Yes, I was connected to the ez-b. All good there.

PRO
Synthiam
#77  

Works great with IoTiny. Check your wiring and power to ensure it meets the minimum requirements. Here's a video..

#78  

Well I have success, thanks for the tip DJ. I made my own cable and had the polarity reversed on the ground and signal traces. Luckily it did not damage anything.  Once the cable was fixed it took a bit of playing to get it to work. I kept waiting for the control to say connected to ezb. On a whim, I added a horizontal servo control and when I moved it everything jumped to life. The Lewansoul control never does say connected to the ezb even though it works.

PRO
Synthiam
#79  

I updated the plugin and removed the "not connected to ezb" message - because it was confusing. That was there for debug when I was making it. So it's not relevant anymore. Thanks!

PRO
Colombia
#80  

Hi, after ARC update this skill stopped to load.. Thanks in advance for any help on this.

PRO
Synthiam
#81  

I’ll look into it right away for you. Stay tuned :)

PRO
Synthiam
#82  

Updated for you - enjoy!

PRO
Colombia
#83  

That’s great. Now is working again. Thanks for the prompt reply!

PRO
Synthiam
#84  

Updated to use servo speed parameter. Read the manual above for information.

PRO
Colombia
#85  

Thanks a lot DJ for the prompt reply.

I already tested the max-min settings and are working well:D.  I made a fast test with the speed setting using the updated skill for the lewansoul but I could not see still the difference changing the speed value, probably I need to make it with more time to test.  I understood that speed setting is for Motor mode only not Servo mode, but let's see.

PRO
Synthiam
#86  

The documentation says the speed is in MS. It's up above if you scroll up in this manual page. The documentation for the servo says it should work - but who knows O_o

PRO
Synthiam
#87  

Oh i see something - it looks like ARC might limit the speed to max 20. It seems we'll have to dive into ARC and make some changes for servos that require such high values. Stay tuned.

PRO
Synthiam
#88  

Okay - there's an update for ARC that i just did. I'm pushing it into QA right now so it'll be updated for early release tomorrow evening or the following day.

PRO
Synthiam
#89  

This update allows larger values for speed for this robot skill: https://synthiam.com/Products/ARC/Releases/ARC-2023-11-24-Pro-Runtime-21901

PRO
Colombia
#90  

Thanks, speed now is working.