Header Overview

This is the list of the variables, commands and parameters, which we use in all our systems.  Most of them exist since the AscTec SDK 3.0 or since ACI version 1.0.

IDsVariablesCommandsParameters
0x00xxGeneral system informations (i.e. uptime, cpu-load)System commandsSystem parameters
0x01xxSensor raw valuesSensor configurationsSensor parameters
0x02xxSensor calibrated valuesSensor calibration commandsSensor calibration parameters
0x03xxData-fused valuesData fusion commandsData fusion parameters
0x04xxPose control valuesPose control commandsPose control parameters
0x05xxPosition control valuesPosition control commandsPosition control parameters
0x06xxUser command valuesreservedreserved
0x07xxIntern control valuesreservedreserved
0x08xxOutput valuesreservedreserved
0x09xxDebug valuesreservedreserved
0x0Axxreservedreservedreserved
0x0Bxxreservedreservedreserved
0x0Cxxreservedreservedreserved
0x0Dxxreservedreservedreserved
0x0Exxreservedreservedreserved
0x0FxxreservedreservedMatlab parameters
Important information: Ascending Technologies will still use IDs between 0x0001 and 0x1000, so if new variables, parameters or commands will be defined by us, the ID will be not greater than 0x1000. Please use only IDs greater than 0x1000 for your own defined variables, parameters or commands! 

The following tables display all by AscTec defined variables, commands and parameters with an additional comment. Also, the description and the unit could have more details than the requested list, which has a limited count of characters.

 

Variables     
 IDNameDescriptionTypeUnitComment
0x0001UAV_statusUAV status informationINT160x0001 ATTITUDE CONTROL 
0x0002 HEIGHT CONTROL
0x0004 POSITION CONTROL
0x0010 COMPASS FAILURE
0x0020 SERIAL INTERFACE ENABLED
0x0040 SERIAL INTERFACE ACTIVE - is active when attitude commands are sent to the LL
0x0080 EMERGENCY MODE - when RC link is lost -> serial interface disabled
0x0100 CALIBRATION ERROR
0x0200 GYRO CALIBRATION ERROR
0x0400 ACC CALIBRATION ERROR
0x4000 MAGNETIC FIELD STRENGTH ERROR
0x8000 MAGNETIC INCLINATION ERROR
since V1.0
0x0002flight_timeTotal flight timeINT16ssince V1.0
0x0003battery_voltageBattery voltageINT16mVsince V1.0
0x0004HL_cpu_loadHigh-level CPU loadINT16Hzsince V1.0
0x0005HL_up_timeHigh-level up-timeINT16mssince V1.0
0x0100motor_rpm[1]Quadcopter: front, Hexcopter front-leftUINT8Motor speed (0..200), multiply by 64 to get real RPMsince V1.0
0x0101motor_rpm[2]Quadcopter: rear, Hexcopter leftUINT8Motor speed (0..200), multiply by 64 to get real RPMsince V1.0
0x0102motor_rpm[3]Quadcopter: left, Hexcopter rear-leftUINT8Motor speed (0..200), multiply by 64 to get real RPMsince V1.0
0x0103motor_rpm[4]Quadcopter: right, Hexcopter rear-rightUINT8Motor speed (0..200), multiply by 64 to get real RPMsince V1.0
0x0104motor_rpm[5]Quadcopter: N/A, Hexcopter rightUINT8Motor speed (0..200), multiply by 64 to get real RPMsince V1.0
0x0105motor_rpm[6]Quadcopter: N/A, Hexcopter front-rightUINT8Motor speed (0..200), multiply by 64 to get real RPMsince V1.0
0x0106GPS_latitudeLatitude from the GPS sensorINT32degrees * 10^7since V1.0
0x0107GPS_longitudeLongitude from the GPS sensorINT32degrees * 10^7since V1.0
0x0108GPS_heightHeight from the GPS sensorINT32mmsince V1.0
0x0109GPS_speed_xSpeed in East/West from the GPS sensorINT32mm/ssince V1.0
0x010AGPS_speed_ySpeed in North/South from the GPS sensorINT32mm/ssince V1.0
0x010BGPS_headingHeading from the CompassINT32deg * 1000since V1.0
0x010CGPS_position_accuracyGPS position accuracy estimateUINT32mmsince V1.0
0x010DGPS_height_accuracyGPS height accuracy estimateUINT32mmsince V1.0
0x010EGPS_speed_accuracyGPS speed accuracy estimateUINT32mm/ssince V1.0
0x010FGPS_sat_numNumber of satellites used in NAV solutionUINT32countsince V1.0
0x0110GPS_statusGPS status informationINT32Bit7...Bit3: 0; Bit 2: longitude direction; Bit1: latitude direction; Bit 0: GPS locksince V1.0
0x0111GPS_time_of_weekTime of the week (1 week = 604,800 s)UINT32mssince V1.0
0x0112GPS_weekWeek counter since 1980INT32countsince V1.0
0x0200angvel_pitchPitch angle velocityINT320.0154 degree/s, bias freesince V1.0
0x0201angvel_rollRoll angle velocityINT320.0154 degree/s, bias freesince V1.0
0x0202angvel_yawYaw angle velocityINT320.0154 degree/s, bias freesince V1.0
0x0203acc_xAcc-sensor output in x, body frame coordinate systemINT16calibrated: -10000..+10000 = -1g..+1gsince V1.0
0x0204acc_yAcc-sensor output in y, body frame coordinate systemINT16calibrated: -10000..+10000 = -1g..+1gsince V1.0
0x0205acc_zAcc-sensor output in z, body frame coordinate systemINT16calibrated: -10000..+10000 = -1g..+1gsince V1.0
0x0206HxMagnetic field sensors output in xINT32Offset free and scaled to +-2500 = +- earth field strengthsince V1.0
0x0207HyMagnetic field sensors output in yINT32Offset free and scaled to +-2500 = +- earth field strengthsince V1.0
0x0208HzMagnetic field sensors output in zINT32Offset free and scaled to +-2500 = +- earth field strengthsince V1.0
0x0300angle_pitchPitch angle derived by integration of gyro outputs and drift compensated by data fusionINT32degree*1000, Range: -90000..+90000since V1.0
0x0301angle_rollRoll angle derived by integration of gyro outputs and drift compensated by data fusionINT32degree*1000, Range: -90000..+90000since V1.0
0x0302angle_yawYaw angle derived by integration of gyro outputs and drift compensated by data fusionINT32degree*1000, Range: -90000..+90000since V1.0
0x0303fusion_latitudeFused latitude with all other sensors (best estimations)INT32degrees * 10^7since V1.0
0x0304fusion_longitudeFused longitude with all other sensors (best estimations)INT32degrees * 10^7since V1.0
0x0305fusion_dheightDifferential height after data fusionINT32mm/ssince V1.0
0x0306fusion_heightHeight after data fusionINT32mmsince V1.0
0x0307fusion_speed_xFused speed in East/West with all other sensors (best estimations)INT16mm/ssince V1.0
0x0308fusion_speed_yFused speed in North/South with all other sensors (best estimations)INT16mm/ssince V1.0
0x0600channel[0]Pitch command received from the remote controlUINT160..4095since V1.0
0x0601channel[1]Roll command received from the remote controlUINT160..4095since V1.0
0x0602channel[2]Thrust command received from the remote controlUINT160..4095since V1.0
0x0603channel[3]Yaw command received from the remote controlUINT160..4095since V1.0
0x0604channel[4]Serial interface enable/disableUINT16>2048 enabled, else disabledsince V1.0
0x0605channel[5]Manual / height control / GPS + height controlUINT160 -> manual mode; 2048 -> height mode; 4095 -> GPS modesince V1.0
0x0606channel[6]Custom remote control dataUINT16n/asince V1.0
0x0607channel[7]Custom remote control dataUINT16n/asince V1.0
Commands
 IDNameDescriptionTypeUnitComment
0x0500DIMC motor[0]Direct individual motor control, Quadcopter: front, Hexcopter: front-left (DIMC)UINT8

0..200 = 0..100 %; 0 = motor off!

since V1.0
0x0501DIMC motor[1]Direct individual motor control, Quadcopter: rear, Hexcopter: left (DIMC)UINT80..200 = 0..100 %; 0 = motor off!since V1.0
0x0502DIMC motor[2]Direct individual motor control, Quadcopter: left, Hexcopter: rear-left (DIMC)UINT80..200 = 0..100 %; 0 = motor off!since V1.0
0x0503DIMC motor[3]Direct individual motor control, Quadcopter: right, Hexcopter: rear-right (DIMC)UINT80..200 = 0..100 %; 0 = motor off!since V1.0
0x0504DIMC motor[4]Direct individual motor control, Quadcopter: N/A, Hexcopter: right (DIMC)UINT80..200 = 0..100 %; 0 = motor off!since V1.0, only used by the AscTec Firefly
0x0505DIMC motor[5]Direct individual motor control, Quadcopter: N/A, Hexcopter: front-right (DIMC)UINT80..200 = 0..100 %; 0 = motor off!since V1.0, only used by the AscTec Firefly
0x0506DMC pitchDirect motor control, Pitch rate (DMC)UINT80..200 = - 100..+100%since V1.0
0x0507DMC rollDirect motor control, Roll rate (DMC)UINT80..200 = - 100..+100%since V1.0
0x0508DMC yawDirect motor control, Yaw rate (DMC)UINT80..200 = - 100..+100%since V1.0
0x0509DMC thrustDirect motor control, Thrust (DMC)UINT80..200 = 0..100 %since V1.0
0x050ACTRL pitchAttitude control, Pitch angle (CRTL)INT16-2047..+2047 (0=neutral)since V1.0
0x050BCTRL rollAttitude control, Roll angle (CRTL)INT16-2047..+2047 (0=neutral)since V1.0
0x050CCTRL yawAttitude control, Yaw angle (CRTL)INT16-2047..+2047 (0=neutral)since V1.0
0x050DCTRL thrustAttitude control, Thrust (CRTL)INT160..4095 = 0..100%since V1.0
0x050ECTRL ctrlControl byte for attitude control (CTRL)INT16bit 0: pitch, bit 1: roll, bit 2: yaw, bit 3: thrust, bit 4: height, bit 5: GPS positionsince V1.0
0x0600ctrl_modeParameter to set control modeUINT80x00: direct individual motor control (DIMC), 0x01: direct motor control using standard output mapping (DMC), 0x02: attitude and throttle control (CTRL), 0x03: GPS waypoint controlsince V1.0
0x0601ctrl_enabledControl commands are accepted/ignored by LL processorUINT80x00: ignored, 0x01: acceptedsince V1.0
0x0602disable_motor_onoff_by_stickSetting if motors can be turned on by using the stick inputUINT80x00: disable (motors can not be turned on/off by "minimum thrust + full yaw" command), 0x01 enable (motors can be turned on/off by "minimum thrust + full yaw" command)since V1.0

Direct Individual Motor Control

The conversion from "DIMC motor[n]" to real motor RPM is as follows. Let us denote "DIMC motor[n]" by "m", then:

For the Hummingbird/Pelican:
motorRPM = 1075+m*37.625

For the Firefly:
motorRPM = 1250+m*43.75

Attitude Control

The pitch/roll/yaw command values are converted to real values as follows (depending on flight mode, CTRL ctrl byte):

GPS Mode:
Thrust: -2m/s to +2m/s (climb/sink rate)
Yaw: -200°/s to +200°/s (-300°/s to +300°/s for the Hummingbird)
Pitch/Roll: -3m/s to +3m/s over ground

Height Mode:
Thrust: -2m/s to +2m/s (climb/sink rate)
Yaw: -200°/s to +200°/s (-300°/s to +300°/s for the Hummingbird)
Pitch/Roll: -52° to +52° (approx. 15m/s, depending on environment)

Manual Mode:
Thrust: 0% to 100% thrust
Yaw: -200°/s to +200°/s (-300°/s to +300°/s for the Hummingbird)
Pitch/Roll: -52° to +52° (approx. 15m/s, depending on environment)

Parameters
 IDNameDescriptionTypeUnitComment
0x0001battery_warning_voltage_highUpper battery warning level (battery almost empty)UINT16mVsince V1.0
0x0002battery_warning_voltage_lowLower battery warning level (battery empty)UINT16mVsince V1.0
0x0003buzzer_warningsEnable/Disable acoustic warningsUINT8system init 0x01, GPS quality warning 0x02since V1.0
0x0004PTU_cam_option_4_versionVersion of Pelican/Firefly PanTilt camera mount option 4UINT81 or 2since V1.0
0x0400cam_angle_roll_offsetCamera roll angle offsetINT320.001degsince V1.0
0x0401cam_angle_pitch_offsetCamera pitch angle offsetINT320.001degsince V1.0