SIYI A8 mini 4K AI Mini Zoom Gimbal Camera - AI Identify & Tracking, 4K 1/1.7-inch 8MP Sony Sensor, 6X Zoom

Yep. Gimbal being connected to FC is bad. Not connected to gimbal it does well just doing basic follow/fpv modes. The SIYI FPV app does well with controlling the gimbal and camera.

Thank you kind sir found it and great help.

1 Like

Hello @SIYI, I follow the SIYI manual to connect the A8 to ArduPilot through MAVLINK, but still it doesn’t work. I set all the parameters as specified in the manual and I’m running the last firmware versions, but there are no way to control the camera. If I change SERIAL1_PROTOCOL from 2 (MAVLINK) to 8 (SToRM32 Gimbal Serial) and MNT1_TYPE from 4 (SToRM32 MAVLink) to 8 (SIYI) everything works great, so it means the serial communication is working. But we want to use MAVLINK because we need the roll drift issue fixed.
Do you have any idea why MAVLINK is not working? Maybe I’m missing something?

Hi beska,

Have you tried the latest beta version for your flight control? Copter 4.4.0 beta5 is just out, and it is working now. Zoom, Record and Picture fuctions work nicely now, connected via RX/TX to my cube oranges.

2 Likes

Thank you for the suggestion @Wolferl,
but how are you communicating to SIYI camera, via MAVLink (MNTx_TYPE = 4) or via SIYI protocol (MNTx_TYPE = 8)?
Because it seems strange to me that I need Copter 4.4 to just using the MAVLink protocol to control a gimbal, but if that’s the case I’ll update and test it. I want to use MAVLink to communicate to SIYI camera because I hope to solve the roll drift issue. I tested the gimbal on 2 different UAVs with low vibration levels, but on both drones the gimbal drifts a lot and it is quite frustrating to use.

Hi @SIYI,

I have an A8 Mini that I’ve been experimenting with the last few days. Here is a summary of my experiences, and a few bug reports.

For reference, I am running:

  • ArduPilot Copter 4.4-Beta5
    • Airframe is well tuned, minimal vibration, and gimbal is isolated.
    • I am not using external RC inputs to drive the gimbal, everything I am attempting is using MAVLink Messages (gimbal manager, mount control, etc)
  • SIYI A8 Mini:
    • Gimbal Firmware: 0.3.0
    • Camera Firmware: 0.2.1

Setup: Control SIYI Gimbal Camera by the Ardupilot Driver through UART:
Configuring the Flight Controller to drive the A8 Mini using the SIYI SDK Protocol seems to work fine for control, however there are a few rather major issues.

  • In this mode, I have been able to use the MAVLink command MAV_CMD_DO_GIMBAL_MANAGER_PITCHYAW to point the gimbal forwards and down.
  • As described above, the gimbal drifts a lot. This is especially true during continuous rotation where we have seen the gimbal take time to recover from this action.
  • When using the SDK Protocol, the flight controller is never sending GPS Position, so images taken with the A8 Mini are not correctly Geotagged.
  • The SDK Protocol has no mechanism similar to the mavlink TIME_SYNC or SYSTEM_TIME messages, and so the timestamps for video recordings and images are missing entirely.

In an attempt to improve gimbal performance during these continuous rotations, I’ve attempted the next section from the manual.

Setup: Control SIYI Gimbal Camera by Mavlink Gimbal Protocol through UART:
Configuring the Flight Controller to use MNT1_TYPE 4 (SToRM32 MAVLink) and SERIAL1_PROTOCOL 2 (MAVLink 2.0) changed behaviours slightly. In this test, I increased the attitude rates as well, to help improve the performance.

  • In this mode, it appears I have lost all ability to control the gimbal through MAVLink messages.
    • Inspection of the code indicates the AP_Mount_STORM32 driver is expecting to see a message from either COMP_ID 154 or COMP_ID 171+instance_id. On inspection of the gimbals UART TX Pin, there is no MAVLink messages being sent to the flight controller. As a result, the gimbal is never “found”, and the drivers’ update function never reaches the send_do_mount_control function at the end.
  • However, in this mode, the flight controller is sending attitude rates and a number of GPS Position MAVLink Messages. Generating a GPS_RAW_INT message from the flight controller to the gimbal, and taking a snapshot has been able to Geotag the image in some way, however the EXIF data doesn’t appear to be correct.
  • It appears there may be some time synchronization going on, however it’s out by ~5.5 years (see File Modification Date Time below).

The following EXIF data is taken from an image taken today, demonstrating Date/Time being incorrect, and the GPS Latitude being completely incorrect.
This is a location of CMAC:

  • -35.3632610, 149.1652300
  • otherwise, 35.3632610 S, 149.1652300 E

In my opinion, this “improved performance” mode is a half-baked implementation of MAVLink, only handling a subset of the messages (eg. Attitude, GPS, Time). It makes no attempt to publish information about itself, which is required for the STORM32 driver to function. Lastly, there is an implicit expectation that the gimbal is being operated with RC Controls, and not MAVLink messages.

@rmackay9 Do you have a configuration you recommend where you’re able to drive the gimbal with mavlink, while maintaining the improvements from attitude information and geotagging, etc?

3 Likes

Hi @joshanne,

Thanks for the feedback.

As you say, the current Siyi MAVLink interface (which is used when AP’s MNT1_TYPE = 4/SToRM32) has limited functionality. It simply allows replacing the regular RC/SBUS input with the equivalent MAVLink messages that contain the same information but doing this removes the ability for AP to control the gimbal so the regular AP gimbal controls and camera controls don’t work.

Siyi is an ArduPilot partner now and we’ve got an active discussion going on re this issue and my understanding is that Siyi will be enhancing the serial interface so that AP can send the vehicle attitude and position to the gimbals and this will help reduce angle drift that has been reported by some users.

4 Likes

Hi beska,

I am using MNTx_TYPE=8, Siyi A8 Gimbal Firmware: 0.3.0 and Camera Firmware: 0.2.1
I think (but don’t know for sure) that MNTx_TYPE=8 enables some kind of translation of Mavlink messages to serial messages the A8 can understand.
But I can control the gimbal nick function via RCx_OPTION=213, and SBus is not connected on my Siyi, that means this is run via Mavlink.
The Siyi serial messages are actually documented in the Siyi manual…good on you, Siyi!

HTH,
Wolferl

Hey @Wolferl,
in your configuration you’re using the SIYI custom driver to control both gimbal and camera, so communication between AP and SIYI gimbal camera is not through MAVLink and you miss this feature:

I’m struggling with the roll tilting issues, so I hoped this could be a solution.

Thanks @rmackay9 for your explanation of the SIYI MAVLink interface.
I was also struggling to achieve gimbal and camera control through MAVLink. After your message I just set the parameter SRx_RC_CHAN to 50 and I finally gained gimbal control. I think this could help @joshanne too. I think the A8 is just consuming the MAVLink RC_CHANNELS message for gimbal control. If that’s the case, the @SIYI manual seems wrong about the MAVLink setup: there is no need to set all the MNTx_ and the RCx_ parameters, and it is not specified to set SRx_RC_CHAN, that seems to be the parameter that matters to achieve gimbal control.

2 Likes

Thanks for the information @rmackay9 , and glad it’s in line with my findings today.

Not quite @beska , I very explicitly do not wish to use solely RC Controls, and would like to use standard MAVLink control interfaces to achieve certain tasks.

Though I do believe you’re correct in saying the need to set the MNT1_TYPE to 4 is unfounded, given it’s just piping MAVLink out the UART. The key for improved performance is SRn_EXTRA1 for ATTITUDE data (needed at a high rate) and SRn_RC_CHAN for passing through RC Channels (or you could use S.BUS to achieve the same thing).

3 Likes

Hi, I’ve followed all the instructions while trying to connect a8 mini to my matek h743 slim running arducopter 4.3.7 via UART (serial5 TX8RX8) but all I get is pitch control, I am not able to control Zoom, yaw, lock modes, nothing but pitch. I’ve set up correct functions to all RC chanels 6-pitch 7-yaw 9-zoom and configured them on my radio. But only pitch works… Help me please)

1 Like

Thanks for doing all this work. I appreciate the helpful information. I am running 4.3.7 and adding the sr2_chan rate 50 Param enabled my gimbal control to work again. Also I guess I’m benefiting from the Mavlink attitude fix because the roll angle seems stable. Now maybe I need retracting landing gear so I stop filming my legs!

Thanks again for your helpful work here.

1 Like

Hello Everyone,

I want to use Conventional Video transmitter with this camera which takes normal PAL input. How can I Interface the Siyi A8 Mini camera with normal CVBS output!
Also I am able to control the pitch and yaw of the gimbal through the uart command of the pixhawk but recording is not able to start just its record the 4-5 second video then the recording stops.

Please Help!
Thanks

1 Like

Hi Shubham,

The CVBS video signal output is shown at the Siyi A8 manual, chapter 1.2.2.
You need pins CVBS and GND to feed to your video transmitter.
Like you, I have also noticed, that quite often the starting a video recording fails. In the current state this product is not really usable, it fails too frequently. It’s a shame actually.

Cheers

1 Like

Hi @Wolferl ,Thanks for your reply!
If possible can you share me the photo of pin or color code of the cable with CVBS output, because I have tried it but not able to get the Analogue output.

Thanks & Best Regards
Shubham

1 Like

Hi Shubham,
It is the 9 pin connector on the back of the gimbal, right besides the HDMI output. It is clearly shown in the manual. The pins shown are in the correct order.
And you need to activate CVBS with the Siyi Assistant.
I did not try it with the current firmware versions (0.3.0 + 0.2.1) but with prior ones it worked nicely. Do not forget to check for a proper termination resistor (75 ohms usually).

Cheers


Is this the Red cable for the CVBS output, also where to add the termination resistor in this system !
Thanks
Shubham

1 Like

I would be grateful to no were to but the resistor,Wolferi please and many thanks

Hi Shubham,

Yes, the red wire is CVBS, the white wire is GND.
As for the termination resistor, you’ll have to look into the documentation of your video transmitter, if it already has the termination resistor built in. Most have, but I have seen transmitters which didn’t.

Cheers

Edit: A termination resistor, if needed, is to be connected between CVBS and GND.

2 Likes

Hello Sir.

Thank you very much for the reply, I’ll check the CVBS output tomorrow with the reciever and update you after that.

Best Regards
Shubham

1 Like