Technical Article – SIYI A8 Mini – Implementation and Test Results using ArduPilot and CubePilot HereLink V1.1 – Connectivity and Installation

Connectivity and Installation

  • Firmware, Manual and Apps

The SIYI A8 manual provides good information about loading camera and gimbal firmware. Loading the gimbal firmware requires using the SIYI PC Assistant program and a USB connection to the gimbal.

The SIYI A8 camera firmware is loaded by saving the firmware file to the root directory of an SD card and powering up the camera with that SD card installed in the A8’s SD card slot. Note: At the time of this writing, the A8’s firmware only reads SD cards formatted FAT32.

Loading the SIYI apps on the HereLink ground controller is not explained in the SIYI A8 manual. Fortunately, World Drone Market has a YouTube video that demonstrates the process:

All SIYI software for the A8 can be downloaded HERE.

  • Video Streaming

The SIYI A8 has three video outputs, HDMI, ethernet and CBVS. (traditional A/V) I have only tested HDMI and ethernet. The SIYI FPV app allows selecting which video streams are active in a settings menu. Both HDMI and ethernet worked simultaneously when all three were selected. So far I’ve found no other place to set these settings.

SIYI reports that the default video streaming is ethernet. I’ve found that ethernet and HDMI streaming can work simultaneously. Video latency can be set to one of three levels using the settings feature of the SIYI FPV app. The lowest latency setting requires using only CBVS streaming and disabling both HDMI and ethernet streaming.

I couldn’t find specifications on the A8’s latency, but in my experience the latency was low enough for casual FPV. I wouldn’t be surprised if the lowest latency setting using CBVS and a VTX would be good enough for FPV racing.

One advantage of ethernet streaming is the simple wiring required. HDMI connections can be dependent on the quality and integrity of HDMI cabling. Also, since ethernet streaming employs the RTSP protocol, it also includes basic gimbal and camera controls for apps that support RTSP functions.

The SIYI A8 does not include a cable for an ethernet connection to the HereLInk V1.1 and it has to be constructed.

This connection is described in a video produced by World Drone Market on YouTube.

SIYI provides two apps that can be run on the HereLink ground controller with ethernet RTSP camera and gimbal control functions: The SIYI FPV app, and the SIYI customized version of Qgroundcontrol. A video on how to install these apps is noted in the previous section of this page.

  • Camera and Gimbal Control

There are three available methods for control the gimbal and camera:

  1. Sbus – with channels available for each gimbal axis, and camera functions such as shutter and zoom. Channel assignments for each camera and gimbal function are listed in the SIYI A8 manual and are configured using the SIYI PC Assistant program. I have not tested this capability.
  2. Ethernet – The A8 support the RTSP video streaming protocol – similar to internet security cameras. In addition to video streaming, the RTSP protocol has basic camera and gimbal control functions. SIYI provides apps that run on Android based controllers, such as the HereLink ground controller, that use these capabilities.
  3. Serial – SIYI has a proprietary protocol for camera and gimbal controls. The functions of this protocol are listed in the SIYI A8 manual. ArduPilot has a new driver that uses this protocol for autopilot control of the camera and gimbal. MavLink gimbal and camera commands are converted by the driver to the proprietary instructions in the SIYI A8 serial protocol.

The HereLink ground controller has two ways to send commands to the SIYI A8 – MavLink and RC channel PWM.

CubePilot issues strong warnings to only use MavLink for autopilot flight mode changes – and to not use RC channel PWM for this purpose. This a safety measure. If RC channel PWM signals were used for flight mode changes, it is possible for dangerous changes of flight mode be made should the ground controller malfunction and send false PWM signals.

MavLink

To send MavLink commands, an app running on the ground controller must be configured to issue a camera or gimbal instruction. These instructions are transmitted to the flight controller as MavLink commands. Apps running on the HereLink have multiple ways to assign MavLink functions to the autopilot such as button assignments or pull down menu options.

When I tried the SIYI Qgroundcontrol app, I assigned flight modes to the buttons. Unfortunately, this failed to work and the autopilot would not respond with flight mode changes when the buttons were pressed.

On the SIYI Qgroundcontrol app, the tab in the Vehicle Setup screen for button assignment is labeled “Joystick.” On the HereLink Qgroundcontrol, there is a tab simply labeled “Buttons.” The HereLink version of Qgroundcontrol works properly for assigning buttons to flight modes.

When I tested the SIYI Qgroundcontrol app, these button assignments for flight modes did not work.

However the SIYI Qgroundcontrol pull-down menu to make flight mode changes does work.

When I tested the SIYI Qgroundcontrol app, the pull down menu on the FLY screen did work to change flight modes.

In ArduPilot auto missions, the SIYI A8 correctly obeyed mission commands to the camera and gimbal. There are some glitches however which are detailed in the last section of this article.

RC Channel PWM

As an example of using RC channel PWM to control the A8, I’ve setup the HereLink control wheel to adjust the gimbal pitch. And I’ve assigned the HereLink shoulder button to click the camera shutter.

I chose RC channel 6 to control the gimbal pitch. This is accomplished by setting the ArduPilot parameter RC6_OPTION=213

I chose RC channel 9 for the camera trigger by setting RC9_OPTION=9

The values of all the RC “options” is in the ArduPilot Parameter List document.

The next step is to configure the HereLink controller so that the control wheel is assigned to RC channel 6 and the shoulder button is assigned to RC channel 9.

In the HereLink controller setup menu the control wheel can be assigned an RC channel on the Joystick tab. The control wheel is axis “W.”

In addition to setting the control wheel to CH#6, I set the “DZ” (dead zone) and “EXPO” (exponential) parameters to “50” and “-50” respectively so that the gimbal would move smoothly to the control wheel movement. I also set the channel to “REV” (reverse) so that the gimbal pitch would operate in a direction that felt more natural to me.

Under the Buttons tab I created a new button profile called SIYI-A8 to distinguish these button assignments from other vehicle’s settings. The shoulder button is listed as “CAM” and I set it so that a short press would respond to RC channel 9.

This assignment only operates the camera’s photo trigger. If I wanted to configure a button to stop/start video recording, I’d have to use a different RC(n)_OPTION value of “166” for “camera record video.”

Note: The SIYI A8 video stream does not include a “tell-tale” such as a flashing red dot on the video stream to indicate that a video is being captured, or a photo is being taken.


<<< Previous: Overview

Next: Usage Examples >>>

Leave a Reply

Your email address will not be published. Required fields are marked *