- This page is draft and needs to be imrpoved.
- Majority of users should not need informations at this page
- This page is aimed to implementators and developers who would like to implement own camera control software for their users
- By default TAG-E uses MAV_COMP_ID_CAMERA6
- For highest geotagging accuracy TAG-E needs:
- Working TIMESYNC protocol
- Receive SYSTEM_TIME packets at 1Hz
- Receive GPS_RAW_INT packets at 1-5Hz
- Receive GLOBAL_POSITION_INT packets at 30-50Hz
- Receive ATTITUDE packets at 10Hz
- Messages are also automatically requested by command long SET_MESSAGE_INTERVAL
- If SET_MESSAGE_INTERVAL protocol is supported by your FC firmware, TAG-E will request all data automatically
MavLink camera control #
TAG-E uses PARAM_EXT protocol to control camera exposure values and configuration. Accurate and most recent description of available PARAM_EXT parameters and optional values is listed in camera description XML file shared by your TAG-E unit. You can find it under QGC files -> \Documents\QGroundControl\Parameters\Tag-E_ILX-LR1_xxx.xml
List of currently supported PARAM_EXT parameters and options:
Camera Mode — TG_CAM_MODE
type → uint32
| Value | param_value |
|---|---|
| Photo | 0 |
| Video | 1 |
| Limited | 88 |
| Offline | 99 |
Exposure Mode — TG_EXPMODE
type → uint32
| Value | param_value |
|---|---|
| iAuto | 294912 |
| P | 65538 |
| A | 131075 |
| S | 196612 |
| M | 1 |
Aperture — TG_APERTURE
type → float
| Value | param_value |
|---|---|
| 2.8 | 2.8 |
| 3.2 | 3.2 |
| 3.5 | 3.5 |
| 4.0 | 4.0 |
| 4.5 | 4.5 |
| 5.0 | 5.0 |
| 5.6 | 5.6 |
| 6.3 | 6.3 |
| 7.1 | 7.1 |
| 8.0 | 8.0 |
| 9.0 | 9.0 |
| 10 | 10 |
| 11 | 11 |
| 13 | 13 |
| 14 | 14 |
| 16 | 16 |
| 18 | 18 |
| 20 | 20 |
| 22 | 22 |
Shutter Speed — TG_SHTTERSPD
type → uint32
| Value | param_value |
|---|---|
| 2 | 1310730 |
| 1.6 | 1048586 |
| 1.3 | 851978 |
| 1 | 655370 |
| 0.8 | 524298 |
| 0.6 | 393226 |
| 0.5 | 327690 |
| 0.4 | 262154 |
| 1/3 | 65539 |
| 1/4 | 65540 |
| 1/5 | 65541 |
| 1/6 | 65542 |
| 1/8 | 65544 |
| 1/10 | 65546 |
| 1/13 | 65549 |
| 1/15 | 65551 |
| 1/20 | 65556 |
| 1/25 | 65561 |
| 1/30 | 65566 |
| 1/40 | 65576 |
| 1/50 | 65586 |
| 1/60 | 65596 |
| 1/80 | 65616 |
| 1/100 | 65636 |
| 1/125 | 65661 |
| 1/160 | 65696 |
| 1/200 | 65736 |
| 1/250 | 65786 |
| 1/320 | 65856 |
| 1/400 | 65936 |
| 1/500 | 66036 |
| 1/640 | 66176 |
| 1/800 | 66336 |
| 1/1000 | 66536 |
| 1/1250 | 66786 |
| 1/1600 | 67136 |
| 1/2000 | 67536 |
| 1/2500 | 68036 |
| 1/3200 | 68736 |
| 1/4000 | 69536 |
Exposure Compensation — TG_EXPC
type → float
| Value | param_value |
|---|---|
| -5.0 | -5.0 |
| -4.7 | -4.7 |
| -4.3 | -4.3 |
| -4.0 | -4.0 |
| -3.7 | -3.7 |
| -3.3 | -3.3 |
| -3.0 | -3.0 |
| -2.7 | -2.7 |
| -2.3 | -2.3 |
| -2.0 | -2.0 |
| -1.7 | -1.7 |
| -1.3 | -1.3 |
| -1.0 | -1.0 |
| -0.7 | -0.7 |
| -0.3 | -0.3 |
| 0.0 | 0.0 |
| +0.3 | +0.3 |
| +0.7 | +0.7 |
| +1.0 | +1.0 |
| +1.3 | +1.3 |
| +1.7 | +1.7 |
| +2.0 | +2.0 |
| +2.3 | +2.3 |
| +2.7 | +2.7 |
| +3.0 | +3.0 |
| +3.3 | +3.3 |
| +3.7 | +3.7 |
| +4.0 | +4.0 |
| +4.3 | +4.3 |
| +4.7 | +4.7 |
| +5.0 | +5.0 |
ISO — TG_ISO
type → uint32
| Value | param_value |
|---|---|
| auto | 16777215 |
| 50* | 50 |
| 64* | 64 |
| 80* | 80 |
| 100 | 100 |
| 125 | 125 |
| 160 | 160 |
| 200 | 200 |
| 250 | 250 |
| 320 | 320 |
| 400 | 400 |
| 500 | 500 |
| 640 | 640 |
| 800 | 800 |
| 1000 | 1000 |
| 1250 | 1250 |
| 1600 | 1600 |
| 2000 | 2000 |
| 2500 | 2500 |
| 3200 | 3200 |
| 4000 | 4000 |
| 5000 | 5000 |
| 6400 | 6400 |
| 8000 | 8000 |
| 10000 | 10000 |
| 12800 | 12800 |
| 16000 | 16000 |
| 20000 | 20000 |
| 25600 | 25600 |
| 32000 | 32000 |
Auto ISO Minimum — TG_AISOMIN
type → uint32
| Value | param_value |
|---|---|
| 50* | 50 |
| 64* | 64 |
| 80* | 80 |
| 100 | 100 |
| 125 | 125 |
| 160 | 160 |
| 200 | 200 |
| 250 | 250 |
| 320 | 320 |
| 400 | 400 |
| 500 | 500 |
| 640 | 640 |
| 800 | 800 |
| 1000 | 1000 |
| 1250 | 1250 |
| 1600 | 1600 |
| 2000 | 2000 |
| 2500 | 2500 |
| 3200 | 3200 |
| 4000 | 4000 |
| 5000 | 5000 |
| 6400 | 6400 |
| 8000 | 8000 |
| 10000 | 10000 |
| 12800 | 12800 |
| 16000 | 16000 |
| 20000 | 20000 |
| 25600 | 25600 |
| 32000 | 32000 |
Auto ISO Maximum — TG_AISOMAX
type → uint32
| Value | param_value |
|---|---|
| 50* | 50 |
| 64* | 64 |
| 80* | 80 |
| 100 | 100 |
| 125 | 125 |
| 160 | 160 |
| 200 | 200 |
| 250 | 250 |
| 320 | 320 |
| 400 | 400 |
| 500 | 500 |
| 640 | 640 |
| 800 | 800 |
| 1000 | 1000 |
| 1250 | 1250 |
| 1600 | 1600 |
| 2000 | 2000 |
| 2500 | 2500 |
| 3200 | 3200 |
| 4000 | 4000 |
| 5000 | 5000 |
| 6400 | 6400 |
| 8000 | 8000 |
| 10000 | 10000 |
| 12800 | 12800 |
| 16000 | 16000 |
| 20000 | 20000 |
| 25600 | 25600 |
| 32000 | 32000 |
Focus Mode — TG_AFMODE
type → uint32
| Value | param_value |
|---|---|
| MF | 1 |
| AF-S | 2 |
| AF-C | 32772 |
| AF-A | 32773 |
Image Resolution — TG_IMGRES
type → uint32
| Value | param_value |
|---|---|
| L | 1 |
| M | 2 |
| S | 3 |
Format SD Card — TG_FORMAT
type → bool
FORMAT SD (3x repeat -> 1,0,1,0,1,0)
EXIF → Custom Label — TG_CINFO
type → custom
EXIF → Custom Label
EXIF → Landing Detection — TG_LAND_DET
type → bool
EXIF → landing detection
EXIF → Write Now — TG_WR_EXIF
type → bool
EXIF → Write now
PPK Mode — TG_PPK_ENABLE
type → uint32
| Value | param_value |
|---|---|
| Disabled | 0 |
| Enabled | 1 |
| Config | 2 |
PPK → Model — TG_PPK_MODEL
type → custom
PPK → Model
PPK → Manufacturer — TG_PPK_MAKE
type → custom
PPK → Manufacturer
PPK → Serial — TG_PPK_SERIAL
type → custom
PPK → Serial
MavLink TAG-E status packets #
TAG-E sends status packets depending on the state of the camera or TAG-E configuration. These packets are generated on predefined interval or as soon as some change happened.
******************************************
TAG-E sends:
- Heart beat
- custom_mode 0x1A6EC654L
- Data32
- Data16
******************************************
—- packet Data32 structure —-
- bit 0 – camera connected status
- bit 1 – IO-A status
- bit 2 – IO-B status
- bit 3 – IO-C status
- bit 4 – timesync status (1-ready)
- bit 5 – Time synced in camera (1-ready)
- bit 6 – Auto take-off detection enabled status
- 0 — Unknown / Camera disconnected
- 1 — OK
- 2 — No Card
- 3 — Card Error
- 4 — Card Recognizing / Card Locked and DB Error
- 5 — DB Error
- 6 — Card Recognizing
- 7 — Card Locked and DB Error
- 8 — DB Error (Cannot Repair and Need Format)
- 9 — Card Error (Read-Only Media)
byte 0 – 0xAC -> sign of Entire generated packet
byte 1 – 0xA9 -> Geotagging status packet
byte 2 – Logging session status
- 0 – IDLE
- 1 – Initialization
- 2 – RUN
- 3 – Saving (Geotagging under progress)
- 100 – Error
byte 3 – Geotagging progress
- 0-100 (% of progress of geotagging)
- 0-100 (% of progress of geotagging)
byte 4 – Detected photos in session Lbyte
byte 5 – Detected photos in session Hbyte
byte 6 – Current LightWare measured distance Lbyte
byte 7 – Current LightWare measured distance Hbyte
byte 8 – Camera ready status
If there is no change in values, Data16 is propagated each 2 seconds.
MavLink camera control - direct commands #
TAG-E can be controlled remotely over MAVLink by sending a COMMAND_LONG message with
command = MAV_CMD_DO_DIGICAM_CONFIGURE.
The specific action to perform is selected using param1 (or other), all params not mentioned in command description are expected to be 0. Some actions require additional parameters, which are listed under each command. Every recognized command is confirmed with a COMMAND_ACK message.
Aperture decrease
MAV_CMD_DO_DIGICAM_CONFIGURE
param2 = 99
Decreases the lens aperture by one step.
Aperture increase
MAV_CMD_DO_DIGICAM_CONFIGURE
param2 = 101
Increases the lens aperture by one step.
ISO increase
MAV_CMD_DO_DIGICAM_CONFIGURE
param3 = 101
Increases ISO sensitivity by one step.
ISO decrease
MAV_CMD_DO_DIGICAM_CONFIGURE
param3 = 99
Decreases ISO sensitivity by one step.
Shutter speed increase
MAV_CMD_DO_DIGICAM_CONFIGURE
param4 = 101
Increases shutter speed by one step.
Shutter speed decrease
MAV_CMD_DO_DIGICAM_CONFIGURE
param4 = 99
Decreases shutter speed by one step.
Button Left
MAV_CMD_DO_DIGICAM_CONFIGURE
param1 = 100
Navigates left in the camera’s on-screen menu.
Button Right
MAV_CMD_DO_DIGICAM_CONFIGURE
param1 = 101
Navigates right in the camera’s on-screen menu.
Button Up
MAV_CMD_DO_DIGICAM_CONFIGURE
param1 = 102
Navigates up in the camera’s on-screen menu.
Button Down
MAV_CMD_DO_DIGICAM_CONFIGURE
param1 = 103
Navigates down in the camera’s on-screen menu.
Button OK
MAV_CMD_DO_DIGICAM_CONFIGURE
param1 = 104
Confirms the current selection in the camera menu.
Button Menu
MAV_CMD_DO_DIGICAM_CONFIGURE
param1 = 105
Opens or closes the camera’s on-screen menu.
Trigger video
MAV_CMD_DO_DIGICAM_CONFIGURE
param1 = 106
Starts or stops video recording.
White balance increase
MAV_CMD_DO_DIGICAM_CONFIGURE
param1 = 109
Increases / cycles forward through white balance presets.
White balance decrease
MAV_CMD_DO_DIGICAM_CONFIGURE
param1 = 110
Decreases / cycles backward through white balance presets.
Manual focus near/far (slow, step +)
MAV_CMD_DO_DIGICAM_CONFIGURE
param1 = 111
Adjusts manual focus by one small step in one direction.
Manual focus near/far (slow, step -)
MAV_CMD_DO_DIGICAM_CONFIGURE
param1 = 112
Adjusts manual focus by one small step in the opposite direction.
Manual focus near/far (fast, step +)
MAV_CMD_DO_DIGICAM_CONFIGURE
param1 = 113
Adjusts manual focus by one large step in one direction.
Manual focus near/far (fast, step -)
MAV_CMD_DO_DIGICAM_CONFIGURE
param1 = 114
Adjusts manual focus by one large step in the opposite direction.
Live-view zoom toggle
MAV_CMD_DO_DIGICAM_CONFIGURE
param1 = 115
Toggles the magnified live-view display used to check focus.
Play
MAV_CMD_DO_DIGICAM_CONFIGURE
param1 = 116
Opens image/video playback mode.
PASM toggle
MAV_CMD_DO_DIGICAM_CONFIGURE
param1 = 117
Cycles the exposure mode
Focus point (area) right
MAV_CMD_DO_DIGICAM_CONFIGURE
param1 = 118
Moves the manual focus plane cursor right.
Focus point (area) left
MAV_CMD_DO_DIGICAM_CONFIGURE
param1 = 119
Moves the manual focus plane cursor left.
Focus plane cursor up
MAV_CMD_DO_DIGICAM_CONFIGURE
param1 = 120
Moves the manual focus plane cursor up.
Focus plane cursor down
MAV_CMD_DO_DIGICAM_CONFIGURE
param1 = 121
Moves the manual focus plane cursor down.
Toggle AF mode
MAV_CMD_DO_DIGICAM_CONFIGURE
param1 = 124
Cycles the AF mode. (Setting of particular AF mode is available via PARAM_EXT protocol)
Geotagging start
MAV_CMD_DO_DIGICAM_CONFIGURE
param1 = 132
Requests the start of a geotagging session.
Geotagging stop
MAV_CMD_DO_DIGICAM_CONFIGURE
param1 = 133
Requests the stop of a geotagging session.
Display
MAV_CMD_DO_DIGICAM_CONFIGURE
param1 = 134
Toggles the camera’s display / screen information mode.
Trigger AF
MAV_CMD_DO_DIGICAM_CONFIGURE
param1 = 135
Triggers autofocus.
Zoom proportional
MAV_CMD_DO_DIGICAM_CONFIGURE
param1 = 136
Drives the camera zoom.
param7 = signed zoom value; a positive value zooms in, a negative value
zooms out.
Focus magnification level
MAV_CMD_DO_DIGICAM_CONFIGURE
param1 = 137
Sets the live-view focus magnification level (used to check focus more
closely).
param7 = magnification level, accepted values 0 to 3:
- 0 = off / no magnification
- 1 = magnification level 1
- 2 = magnification level 2
- 3 = magnification level 3 (highest)
Any value outside 0-3 is ignored and the magnification level is left
unchanged. Note: in the current firmware version, levels 1 and 2 produce
the same amount of magnification; this is expected to be corrected in a
future update.
AF area position
MAV_CMD_DO_DIGICAM_CONFIGURE
param1 = 1101
Sets the autofocus target position within the frame.
param2 = horizontal position, 0-100 (percent of frame width, left to right)
param3 = vertical position, 0-100 (percent of frame height, top to bottom)
Values outside 0-100 are automatically clamped to the nearest valid value.
Focus area
MAV_CMD_DO_DIGICAM_CONFIGURE
param1 = 180
param7 = focus area mode code
Selects the autofocus area mode. This is different from the AF area position command (trigger code 1101),
which only moves the AF target point within whatever mode is currently
selected here.
- Available modes:
- 1 — Wide
- 2 — Zone
- 3 — Center
- 257 — Flexible Spot S
- 258 — Flexible Spot M
- 259 — Flexible Spot L
- 260 — Expand Flexible Spot
- 261 — Flexible Spot
- 262 — Flexible Spot XS
- 263 — Flexible Spot XL
- 4353 — Flexible Spot Free Size 1
- 4354 — Flexible Spot Free Size 2
- 4355 — Flexible Spot Free Size 3
- 513 — Lock on AF Wide
- 514 — Lock on AF Zone
- 515 — Lock on AF Center
- 516 — Lock on AF Flexible Spot S
- 517 — Lock on AF Flexible Spot M
- 518 — Lock on AF Flexible Spot L
- 519 — Lock on Expand Flexible Spot
- 520 — Lock on AF Flexible Spot
- 521 — Lock on AF Flexible Spot XS
- 522 — Lock on AF Flexible Spot XL
- 4609 — Lock on AF Flexible Spot Free Size 1
- 4610 — Lock on AF Flexible Spot Free Size 2
- 4611 — Lock on AF Flexible Spot Free Size 3
Geotagging reset
MAV_CMD_DO_DIGICAM_CONFIGURE
param1 = 260
Resets the geotagging session state – erases all current saved tags and sets new session.
Save processing LOG to SD card
MAV_CMD_DO_DIGICAM_CONFIGURE
param1 = 1100
Saves TAG-E processing LOG to TAG-E’s microSD card if inserted.
Gimbal set tilt
MAV_CMD_DO_DIGICAM_CONFIGURE
param1 = 3001
Sets the gimbal tilt angle.
param6 = tilt angle, in degrees
Gimbal tilt to nadir
MAV_CMD_DO_DIGICAM_CONFIGURE
param1 = 3003
Points the gimbal straight down (-90 degrees tilt).
Gimbal toggle motors
MAV_CMD_DO_DIGICAM_CONFIGURE
param1 = 3004
Turns the gimbal’s stabilization motors on or off.
Gimbal tilt to horizon
MAV_CMD_DO_DIGICAM_CONFIGURE
param1 = 3005
Levels the gimbal to the horizon (0 degrees tilt).
Gimbal set tilt speed
MAV_CMD_DO_DIGICAM_CONFIGURE
param1 = 3006
Sets the gimbal’s tilt movement speed.
param6 = tilt speed
Gimbal set yaw
MAV_CMD_DO_DIGICAM_CONFIGURE
param1 = 3007
Sets the gimbal yaw angle.
param6 = yaw angle, in degrees
Gimbal set yaw speed
MAV_CMD_DO_DIGICAM_CONFIGURE
param1 = 3008
Sets the gimbal’s yaw movement speed.
param6 = yaw speed
Gimbal set yaw and tilt speed
MAV_CMD_DO_DIGICAM_CONFIGURE
param1 = 3009
Sets the gimbal’s yaw and tilt movement speed together.
param5 = yaw speed
param6 = tilt speed
Gimbal set lock/follow ratio
MAV_CMD_DO_DIGICAM_CONFIGURE
param1 = 3030
Sets the gimbal’s lock / follow mode ratio.
param7 = lock-follow value
Set custom tag
MAV_CMD_DO_DIGICAM_CONFIGURE
param1 = 6000 to 6009
Sets one of ten custom text tags that can be embedded alongside captured media.
param2 to param7 = the tag text, up to 24 characters, supplied across
these remaining parameters encoded as floats.
The text is stored exactly as sent and automatically terminated at 24
characters.
Format SD card
MAV_CMD_DO_DIGICAM_CONFIGURE
param1 = 6549
Formats the SD card.
param2 = 666 (required confirmation value)
To prevent an SD card from being formatted by accident, this command is
only carried out when param2 is set exactly to 666; otherwise it is
ignored.