<mipdefs>
	<descriptor_set name="RTK" descriptor="0x0F">
		<field descriptor="0x01" name="Get RTK Device Status Flags">
			<response descriptor="0x81">
				<bitfield name="StatusFlags" type="u32">
					<value name="modem_state" firstBit="0" lastBit="3" />
					<value name="connection_type" firstBit="4" lastBit="7" />
					<value name="rssi" firstBit="8" lastBit="15" />
					<value name="signal_quality" firstBit="16" lastBit="19" />
					<value name="tower_change_indicator" firstBit="20" lastBit="23" />
					<value name="nmea_timeout" firstBit="24" />
					<value name="server_timeout" firstBit="25" />
					<value name="corrections_timeout" firstBit="26" />
					<value name="device_out_of_range" firstBit="27" />
					<value name="corrections_unavailable" firstBit="28" />
					<value name="reserved" firstBit="29" />
					<value name="version" firstBit="30" lastBit="31" />
				</bitfield>
				<param name="flags" index="0" type="StatusFlags" />
			</response>
		</field>
		<field descriptor="0x02" name="Get RTK Device IMEI (International Mobile Equipment Identifier)">
			<response descriptor="0x82">
				<param name="IMEI" index="0" type="char" count="32" />
			</response>
		</field>
		<field descriptor="0x03" name="Get RTK Device IMSI (International Mobile Subscriber Identifier)">
			<response descriptor="0x83">
				<param name="IMSI" index="0" type="char" count="32" />
			</response>
		</field>
		<field descriptor="0x04" name="Get RTK Device ICCID (Integrated Circuit Card Identification [SIM Number])">
			<response descriptor="0x84">
				<param name="ICCID" index="0" type="char" count="32" />
			</response>
		</field>
		<field descriptor="0x06" name="Configure or read the type of the connected device" functions="WRSLD">
			<enum name="Type" type="u8">
				<value name="GENERIC" value="0" />
				<value name="GQ7" value="1" />
			</enum>
			<param name="devType" index="0" type="Type" />
			<response descriptor="0x86">
				<param name="devType" index="0" type="Type" />
			</response>
		</field>
		<field descriptor="0x07" name="Get RTK Device Activation Code">
			<response descriptor="0x87">
				<param name="ActivationCode" index="0" type="char" count="32" />
			</response>
		</field>
		<field descriptor="0x08" name="Get RTK Device's Cell Modem Firmware version number">
			<response descriptor="0x88">
				<param name="ModemFirmwareVersion" index="0" type="char" count="32" />
			</response>
		</field>
		<field descriptor="0x05" name="get_rssi">
			Get the RSSI and connected/disconnected status of modem
			<response descriptor="0x85">
				<param name="valid" index="0" type="bool" />
				<param name="rssi" index="1" type="s32" />
				<param name="signalQuality" index="5" type="s32" />
			</response>
		</field>
		<field descriptor="0x0A" name="service_status">
			The 3DMRTK will send this message to the server to indicate that the connection should remain open. The Server will respond with information and status.
			<param name="reserved1" index="0" type="u32" />
			<param name="reserved2" index="4" type="u32" />
			<response descriptor="0x8A">
				<bitfield name="ServiceFlags" type="u8">
					<value name="throttle" firstBit="0" />
					<value name="corrections_unavailable" firstBit="1" />
					<value name="reserved" firstBit="2" lastBit="7" />
				</bitfield>
				<param name="flags" index="0" type="ServiceFlags" />
				<param name="receivedBytes" index="1" type="u32" />
				<param name="lastBytes" index="5" type="u32" />
				<param name="lastBytesTime" index="9" type="u64" />
			</response>
		</field>
		<field descriptor="0x20" name="prod_erase_storage">
			This command will erase the selected media to a raw and uninitialized state. ALL DATA WILL BE LOST.
			<enum name="MediaSelector" type="u8">
				<value name="MEDIA_ExternalFlash" value="0" />
				<value name="MEDIA_SD" value="1" />
			</enum>
			<param name="media" index="0" type="MediaSelector" />
		</field>
		<field descriptor="0x21" name="led_control">
			This command allows direct control of the LED on the 3DM RTK. This command is only available in calibration mode or Production Test Mode.
			<param name="primaryColor" index="0" type="u8" count="3" />
			<param name="altColor" index="1" type="u8" count="3" />
			<enum name="LedAction" type="u8">
				<value name="LED_NONE" value="0" />
				<value name="LED_FLASH" value="1" />
				<value name="LED_PULSATE" value="2" />
			</enum>
			<param name="act" index="2" type="LedAction" />
			<param name="period" index="3" type="u32" />
		</field>
		<field descriptor="0x22" name="modem_hard_reset">
			This command will clear the modem flash.  THIS MUST NOT BE DONE OFTEN AS IT CAN DAMAGE THE FLASH!
		</field>
	</descriptor_set>
</mipdefs>
