Getting the Tarot T4-3D to work with the PWM servo output of the Pixhawk

Has anybody managed to get the Tarot T4-3D to work on the Pixhawk using PWM output from RC9 (Aux 1) and RC10 (Aux 2)?

It seems like most people have switched to using SBUS, but I’d like to use PWM if possible to control it programatically from the Pixhawk.

here’s the instructions for the Tarot T-2D but it is similar to the T4

1 Like

@Helmet Have you had success controlling the T4-3D with the PWM output of the Pixhawk? I am wondering if it only understands SBUS.

Are you using a pixhawk or the Cube? The only board I am familiar with is the Pixhawk 2.1 and it will do either PWM or SBUS

I have both. I’ve been testing with the Pixhawk. I verified that the average voltage is changing on the servo pins 9 and 10 when I change the PWM from 1100 to 1900 but the gimbal doesn’t respond. Some people have claimed it worked with PWM and many others switched to using SBUS using the RC controller that supports SBUS. I didn’t see a way to programatically specify an SBUS channel and value compared to the PWM values for a given servo channel. I configured the gimbal for “Convention” receiver type right now compared to SBUS.

You have to specify Servo in MP’s camera gimbal setup page to use PWM. I connected my Tarot 5D3 through the pixhawk cube AUX channels using PWM and can verify that it does work.
For T4-3D:
-set gimbal to pwm (not to sbus)
-connect pwm1 from gimbal to rc9(pixhawk) AUX
-connect pwm2 from gimbal to rc10(pixhawk) AUX
-go to mission planner -> intial setup -> optional hardware -> camera gimbal
- set TILT to RC9 and do not check stabilization and then set what channel you want from radio RC6, RC7 …
- set PAN to RC10 and do not check stabilization and then set what channel do you want.
I Got these settings from here.

Thanks for the response. I’m not using the RC to control the gimbal. I’m testing it by using the cmd_do_set_servo command to specify a PWM value for servos 9 and 10. This has worked with another gimbal that accepts PWM input.

I noticed here that the servo messages get broadcast to sbus as well as rcout:

I moved the signal wire to the sbus connector and reconfigured the gimbal to use sbus, but I got no response from the gimbal for that configuration either.

I’m beginning to wonder if there is a hardware problem with this gimbal. I noticed at one point that the cable connector was fairly warm. Its been cool since then so I wonder if something burned out.

Yay, I got it to work with the sbus output. I just needed to enable the SBUS output with BRD_SBUS_OUT=1. I can control the gimbal with cmd_do_set_servo commands now and I imagine the mount commands will work now as well once I get the gimbal settings configured.

Just confirmed that the standard gimbal setup in Mission Planner works as well.

1 Like

Great. Normally if the gimbal is setup within AP as a gimbal it can be controlled using DO_MOUNT_CONTROL commands instead of the DO_SET_SERVO commands…

Yes, but I just wanted to test the servo output individually before I got fancy. I had a simple GUI interface where I could set the PWM value for a given servo ID.

@rmackay9 BTW, I have another gimbal (Ronin-M) that doesn’t seem to have a way to remap the SBUS channels to the Pixhawk range (9-13) for the servos. (i.e. Roll, Tilt and Pan can only be assigned to channels 0, 1 and 3 using the Ronin config app.). How have people dealt with that?

Its kind of hokey, but one thing I’m going to try is to use a SBUS to/from PWM converter device (e.g. so that I can connect the PWM cables to the 9, 10, 11 channels on the Pixhawk from the 0, 1, 3 inputs on the converter.

Anybody have a more elegant solution?

@rrr6399, another alternative is to move the motor outputs to higher channels by using the SERVOx_FUNCTION parameters. One thing to be careful about is the “servo output banks” which means that the output rate (i.e. 400hz for motors, 50hz for servos) can’t be perfectly controlled per channel. So I think on a pixhawk or cube, MAIN OUTPUT 1 ~ 4 are in a single bank. then 5&6, then 7&8. So if for example you put the gimbal outputs on channel 1~3… attach the motor ESCs to 5,6,7,8, etc.

1 Like

Thanks @rmackay9, that approach allowed me to test the gimbal with S-Bus from the Pixhawk. Now I just need to figure out if the Ronin-M can be configured to use angle mode instead of velocity mode at least for Tilt and Pan. (It doesn’t look promising so far.)

If I’m reading this right you had the signal on sbus output changed BRD_SBUS_OUT=1 and you are getting a response from the gimble whey you send a command manually. What are your settings on the gimble set up to. I am trying to setup a Tarot TL3T01 on my pixhawk. I am guessing the firmware is basically the same as your setup on the gimbal currently I can not get any response from the gimble on pwm when the gimble is set up for conventional or on sbus when it is set up for sbus. In the gimble firmware what channels did you set up for tilt and pan? Im ready to pull my hair out lol. Where there any other settings changed to let the pixhawk know what signals to send back out of the sbus out other than the BRD_SBUS_OUT=1

Craig, I started off just sending servo commands to a given channel using Mission Planner or my own GCS. To do experiment with this, I changed SERVO[9-13]_FUNCTION=0 so that I can control them directly using the servo commands. In Mission Planner, I used the Low and High buttons for channels 9-13 to move the gimbal to the min and maximum positions. Once I saw that was working, I switched to using the gimbal interface and made the assignments as shown in the last diagram below.

Make sure you power the gimbal with a separate power source than the Pixhawk. I’m powering the servo rail with a ubec connected to the battery.

I noticed that the gimbal needed to be in the Run state as well as shown here for the controls to work:

Also push the safety switch on the copter to test the sbus connection.

1 Like