Problem controlling linear actuator with actuonix LAC board

Hey all,

Long time user, first time poster.

I am currently doing an internship for a runway cleaning company and I am having a problem with controlling my linear actuator.

My end goal is to have the cleaning head raise and lower automatically by detecting the distance of the surface from the frame (done by an IR sensor), use an Arduino UNO to read the sensor and determine a response and use a motor controller to power and control the linear actuator to move accordingly.

The sensing all works but my problem lies in controlling the linear actuator. This is the kit I am using:

Arduino UNO (powered from my pc)

Industrial devices IDM3 actuator (the option with build in potentiometer) (datasheet IDM3 actuator)

A DC power supply (variable voltage up to 24 V)

Some jumper wire

A actuonix Linear Actuator Controller (LAC datasheet 1)(LAC datasheet 2)

I have tested the linear actuator by just hooking it up to the power supply and it works both ways (it has build in limit switches) if i just reverse the polarity.

I wired the actuator to the X4 large actuator connector, the PSU to the X6 control interface and the arduino to either the voltage input signal or RC servo input signal.

I have tried both the PWM input (it says in the data sheet it should be 5V compliant) and the RC input.
The code i ran is just a sweep of all possible values (0-100% duty cycle for pwm and 500 to 2000 microseconds for RC). The only behaviour I can get out of the actuator is fully extending or fully retracting depending on how i wire the polarity.

I checked the potentiometer and it gives reasonable resistance values. I have also tried checking the output of the arduino (but since i only have the arduino to use as a makeshift oscilloscope this may not be very reliable) and they seem to be what i expect.

I have no idea what i am doing wrong and am starting to run out of ideas on what to try. Any help or sugestions would be greatly appreciated.


Hi there!

Does the actuator work by using the PWM signal as a way to determine distance (0 PWM = fully retracted, 255 PWM = fully extended), or does the PWM determine speed of extending/retracting and another signal determines polarity?

Hi bos,

It should use the PWM as a way to determine distance, so 0% duty cycle (0) should be full retraction and 100%(255) should be full extension.

That PWM does make sense.

One thing that struck me is you mentioned that you are powering your Arduino through your computer, and the actuator receives its power through the supply and the controller board. When multiple supplies are being used, they need to have the same reference point, aka ground. Is the ground from the arduino connected to the ground of your 24V supply?

Yes they are indeed powered from different sources.

I connected a ground pin (via blue jumper cable) on the arduino to the negative cable from the power supply (which is connected to the board). My understanding was that this should connect all the grounds.
I attached a picture of my wiring. (the white wire is what im using to drive the RC at the moment) (i know that it doesnt have a 1khz pwm on pin 10, but i also tried the pwm mode on pin 5 with the same results)

I looked up the datasheets that you posted and I found a configuration that is said to work. I modified it to your uses so try this configuration if you haven’t already. Make sure to keep the arduino ground connected to the power supply ground

LAC Config.PNG

Good morning Bos,

After trying your setup I still had no succes. However after close inspection I found i connected the potentiometer the wrong way around (the colour coding on this actuator is bonkers). After fixing that it worked. I now have it connected to the original port again and it is working like a charm (and is already annoying my colleague).

Many thanks for the help!