From 8c7c9e13742557ffe6752e964a8b1c43cc17efba Mon Sep 17 00:00:00 2001 From: aler9 <46489434+aler9@users.noreply.github.com> Date: Sun, 30 Jan 2022 15:01:21 +0100 Subject: [PATCH] update dialects --- pkg/dialects/all/dialect.go | 365 +++++++++++++ pkg/dialects/all/enum_accelcal_vehicle_pos.go | 49 ++ .../all/enum_actuator_configuration.go | 54 ++ .../all/enum_actuator_output_function.go | 108 ++++ pkg/dialects/all/enum_adsb_altitude_type.go | 46 ++ pkg/dialects/all/enum_adsb_emitter_type.go | 62 +++ pkg/dialects/all/enum_adsb_flags.go | 52 ++ pkg/dialects/all/enum_airspeed_sensor_type.go | 52 ++ pkg/dialects/all/enum_ais_flags.go | 62 +++ pkg/dialects/all/enum_ais_nav_status.go | 61 +++ pkg/dialects/all/enum_ais_type.go | 150 ++++++ .../all/enum_attitude_target_typemask.go | 54 ++ pkg/dialects/all/enum_autotune_axis.go | 50 ++ pkg/dialects/all/enum_camera_cap_flags.go | 66 +++ .../all/enum_camera_feedback_flags.go | 51 ++ pkg/dialects/all/enum_camera_mode.go | 48 ++ pkg/dialects/all/enum_camera_status_types.go | 55 ++ pkg/dialects/all/enum_camera_tracking_mode.go | 48 ++ .../all/enum_camera_tracking_status_flags.go | 48 ++ .../all/enum_camera_tracking_target_data.go | 50 ++ pkg/dialects/all/enum_camera_zoom_type.go | 50 ++ .../all/enum_cellular_config_response.go | 52 ++ .../enum_cellular_network_failed_reason.go | 50 ++ .../all/enum_cellular_network_radio_type.go | 47 ++ pkg/dialects/all/enum_cellular_status_flag.go | 68 +++ pkg/dialects/all/enum_comp_metadata_type.go | 54 ++ pkg/dialects/all/enum_copter_mode.go | 67 +++ pkg/dialects/all/enum_deepstall_stage.go | 56 ++ pkg/dialects/all/enum_device_op_bustype.go | 46 ++ pkg/dialects/all/enum_ekf_status_flags.go | 64 +++ pkg/dialects/all/enum_esc_connection_type.go | 54 ++ pkg/dialects/all/enum_esc_failure_flags.go | 58 +++ .../all/enum_estimator_status_flags.go | 66 +++ pkg/dialects/all/enum_failure_type.go | 58 +++ pkg/dialects/all/enum_failure_unit.go | 57 +++ pkg/dialects/all/enum_fence_action.go | 58 +++ pkg/dialects/all/enum_fence_breach.go | 49 ++ pkg/dialects/all/enum_fence_mitigate.go | 48 ++ .../all/enum_firmware_version_type.go | 52 ++ pkg/dialects/all/enum_gimbal_axis.go | 47 ++ .../enum_gimbal_axis_calibration_required.go | 47 ++ .../enum_gimbal_axis_calibration_status.go | 47 ++ .../all/enum_gimbal_device_cap_flags.go | 66 +++ .../all/enum_gimbal_device_error_flags.go | 60 +++ pkg/dialects/all/enum_gimbal_device_flags.go | 52 ++ .../all/enum_gimbal_manager_cap_flags.go | 70 +++ pkg/dialects/all/enum_gimbal_manager_flags.go | 52 ++ pkg/dialects/all/enum_gopro_burst_rate.go | 59 +++ pkg/dialects/all/enum_gopro_capture_mode.go | 57 +++ pkg/dialects/all/enum_gopro_charging.go | 45 ++ pkg/dialects/all/enum_gopro_command.go | 75 +++ pkg/dialects/all/enum_gopro_field_of_view.go | 47 ++ pkg/dialects/all/enum_gopro_frame_rate.go | 69 +++ .../all/enum_gopro_heartbeat_flags.go | 43 ++ .../all/enum_gopro_heartbeat_status.go | 49 ++ pkg/dialects/all/enum_gopro_model.go | 51 ++ .../all/enum_gopro_photo_resolution.go | 51 ++ pkg/dialects/all/enum_gopro_protune_colour.go | 45 ++ .../all/enum_gopro_protune_exposure.go | 83 +++ pkg/dialects/all/enum_gopro_protune_gain.go | 51 ++ .../all/enum_gopro_protune_sharpness.go | 47 ++ .../all/enum_gopro_protune_white_balance.go | 51 ++ pkg/dialects/all/enum_gopro_request_status.go | 45 ++ pkg/dialects/all/enum_gopro_resolution.go | 69 +++ .../all/enum_gopro_video_settings_flags.go | 43 ++ pkg/dialects/all/enum_gps_fix_type.go | 60 +++ .../all/enum_gps_input_ignore_flags.go | 57 +++ pkg/dialects/all/enum_gripper_actions.go | 46 ++ pkg/dialects/all/enum_gsm_link_type.go | 51 ++ pkg/dialects/all/enum_gsm_modem_type.go | 45 ++ pkg/dialects/all/enum_heading_type.go | 43 ++ .../all/enum_highres_imu_updated_flags.go | 72 +++ .../all/enum_hil_sensor_updated_flags.go | 72 +++ pkg/dialects/all/enum_hl_failure_flag.go | 70 +++ pkg/dialects/all/enum_icarous_fms_state.go | 47 ++ .../all/enum_icarous_track_band_types.go | 44 ++ pkg/dialects/all/enum_landing_target_type.go | 50 ++ pkg/dialects/all/enum_led_control_pattern.go | 47 ++ pkg/dialects/all/enum_limit_module.go | 47 ++ pkg/dialects/all/enum_limits_state.go | 53 ++ pkg/dialects/all/enum_mag_cal_status.go | 49 ++ .../all/enum_mav_arm_auth_denied_reason.go | 53 ++ pkg/dialects/all/enum_mav_autopilot.go | 84 +++ .../enum_mav_avss_command_failure_reason.go | 47 ++ .../all/enum_mav_battery_charge_state.go | 58 +++ pkg/dialects/all/enum_mav_battery_fault.go | 60 +++ pkg/dialects/all/enum_mav_battery_function.go | 52 ++ pkg/dialects/all/enum_mav_battery_mode.go | 48 ++ pkg/dialects/all/enum_mav_battery_type.go | 52 ++ pkg/dialects/all/enum_mav_cmd.go | 484 ++++++++++++++++++ pkg/dialects/all/enum_mav_cmd_ack.go | 60 +++ ...um_mav_cmd_do_aux_function_switch_level.go | 47 ++ pkg/dialects/all/enum_mav_collision_action.go | 56 ++ pkg/dialects/all/enum_mav_collision_src.go | 46 ++ .../all/enum_mav_collision_threat_level.go | 48 ++ pkg/dialects/all/enum_mav_component.go | 310 +++++++++++ pkg/dialects/all/enum_mav_data_stream.go | 62 +++ pkg/dialects/all/enum_mav_distance_sensor.go | 52 ++ .../all/enum_mav_do_reposition_flags.go | 44 ++ pkg/dialects/all/enum_mav_estimator_type.go | 60 +++ .../enum_mav_event_current_sequence_flags.go | 44 ++ .../all/enum_mav_event_error_reason.go | 44 ++ pkg/dialects/all/enum_mav_frame.go | 100 ++++ .../all/enum_mav_generator_status_flag.go | 88 ++++ pkg/dialects/all/enum_mav_goto.go | 50 ++ pkg/dialects/all/enum_mav_landed_state.go | 52 ++ pkg/dialects/all/enum_mav_mission_result.go | 74 +++ pkg/dialects/all/enum_mav_mission_type.go | 50 ++ pkg/dialects/all/enum_mav_mode.go | 65 +++ pkg/dialects/all/enum_mav_mode_flag.go | 58 +++ .../all/enum_mav_mode_flag_decode_position.go | 58 +++ pkg/dialects/all/enum_mav_mode_gimbal.go | 55 ++ pkg/dialects/all/enum_mav_mount_mode.go | 56 ++ pkg/dialects/all/enum_mav_odid_auth_type.go | 53 ++ pkg/dialects/all/enum_mav_odid_category_eu.go | 49 ++ pkg/dialects/all/enum_mav_odid_class_eu.go | 57 +++ .../all/enum_mav_odid_classification_type.go | 45 ++ pkg/dialects/all/enum_mav_odid_desc_type.go | 43 ++ pkg/dialects/all/enum_mav_odid_height_ref.go | 45 ++ pkg/dialects/all/enum_mav_odid_hor_acc.go | 67 +++ pkg/dialects/all/enum_mav_odid_id_type.go | 51 ++ .../all/enum_mav_odid_operator_id_type.go | 43 ++ .../enum_mav_odid_operator_location_type.go | 47 ++ pkg/dialects/all/enum_mav_odid_speed_acc.go | 51 ++ pkg/dialects/all/enum_mav_odid_status.go | 49 ++ pkg/dialects/all/enum_mav_odid_time_acc.go | 73 +++ pkg/dialects/all/enum_mav_odid_ua_type.go | 73 +++ pkg/dialects/all/enum_mav_odid_ver_acc.go | 55 ++ pkg/dialects/all/enum_mav_param_ext_type.go | 64 +++ pkg/dialects/all/enum_mav_param_type.go | 62 +++ pkg/dialects/all/enum_mav_power_status.go | 54 ++ .../all/enum_mav_protocol_capability.go | 78 +++ pkg/dialects/all/enum_mav_qshot_mode.go | 62 +++ ...enum_mav_remote_log_data_block_commands.go | 46 ++ ...enum_mav_remote_log_data_block_statuses.go | 46 ++ pkg/dialects/all/enum_mav_result.go | 56 ++ pkg/dialects/all/enum_mav_roi.go | 54 ++ .../all/enum_mav_sensor_orientation.go | 126 +++++ pkg/dialects/all/enum_mav_severity.go | 58 +++ pkg/dialects/all/enum_mav_state.go | 59 +++ .../enum_mav_storm32_camera_prearm_flags.go | 44 ++ .../all/enum_mav_storm32_gimbal_action.go | 48 ++ ...num_mav_storm32_gimbal_device_cap_flags.go | 70 +++ ...m_mav_storm32_gimbal_device_error_flags.go | 62 +++ .../enum_mav_storm32_gimbal_device_flags.go | 62 +++ ...um_mav_storm32_gimbal_manager_cap_flags.go | 46 ++ .../enum_mav_storm32_gimbal_manager_client.go | 60 +++ .../enum_mav_storm32_gimbal_manager_flags.go | 66 +++ ...enum_mav_storm32_gimbal_manager_profile.go | 54 ++ ..._mav_storm32_gimbal_manager_setup_flags.go | 46 ++ .../enum_mav_storm32_gimbal_prearm_flags.go | 68 +++ .../enum_mav_storm32_tunnel_payload_type.go | 61 +++ .../all/enum_mav_sys_status_sensor.go | 106 ++++ .../enum_mav_sys_status_sensor_extended.go | 44 ++ .../all/enum_mav_tunnel_payload_type.go | 63 +++ pkg/dialects/all/enum_mav_type.go | 126 +++++ pkg/dialects/all/enum_mav_vtol_state.go | 52 ++ .../all/enum_mav_winch_status_flag.go | 64 +++ .../all/enum_mavlink_data_stream_type.go | 47 ++ pkg/dialects/all/enum_motor_test_order.go | 48 ++ .../all/enum_motor_test_throttle_type.go | 50 ++ .../all/enum_nav_vtol_land_options.go | 48 ++ pkg/dialects/all/enum_orbit_yaw_behaviour.go | 52 ++ .../all/enum_osd_param_config_error.go | 46 ++ .../all/enum_osd_param_config_type.go | 51 ++ pkg/dialects/all/enum_parachute_action.go | 48 ++ pkg/dialects/all/enum_param_ack.go | 50 ++ .../all/enum_param_transaction_action.go | 48 ++ .../all/enum_param_transaction_transport.go | 46 ++ pkg/dialects/all/enum_pid_tuning_axis.go | 47 ++ pkg/dialects/all/enum_plane_mode.go | 66 +++ .../all/enum_position_target_typemask.go | 66 +++ pkg/dialects/all/enum_precision_land_mode.go | 48 ++ pkg/dialects/all/enum_rally_flags.go | 46 ++ pkg/dialects/all/enum_rc_type.go | 46 ++ pkg/dialects/all/enum_rover_mode.go | 54 ++ .../enum_rtk_baseline_coordinate_system.go | 46 ++ pkg/dialects/all/enum_scripting_cmd.go | 49 ++ pkg/dialects/all/enum_serial_control_dev.go | 72 +++ pkg/dialects/all/enum_serial_control_flag.go | 52 ++ pkg/dialects/all/enum_set_focus_type.go | 56 ++ pkg/dialects/all/enum_speed_type.go | 43 ++ pkg/dialects/all/enum_storage_status.go | 50 ++ pkg/dialects/all/enum_storage_type.go | 60 +++ pkg/dialects/all/enum_storage_usage_flag.go | 50 ++ pkg/dialects/all/enum_sub_mode.go | 51 ++ pkg/dialects/all/enum_tracker_mode.go | 48 ++ pkg/dialects/all/enum_tune_format.go | 46 ++ .../all/enum_ualberta_autopilot_mode.go | 52 ++ pkg/dialects/all/enum_ualberta_nav_mode.go | 49 ++ pkg/dialects/all/enum_ualberta_pilot_mode.go | 48 ++ pkg/dialects/all/enum_uavcan_node_health.go | 50 ++ pkg/dialects/all/enum_uavcan_node_mode.go | 52 ++ .../enum_uavionix_adsb_emergency_status.go | 50 ++ ...num_uavionix_adsb_out_cfg_aircraft_size.go | 58 +++ ...um_uavionix_adsb_out_cfg_gps_offset_lat.go | 50 ++ ...um_uavionix_adsb_out_cfg_gps_offset_lon.go | 44 ++ .../enum_uavionix_adsb_out_dynamic_gps_fix.go | 48 ++ .../enum_uavionix_adsb_out_dynamic_state.go | 47 ++ .../all/enum_uavionix_adsb_out_rf_select.go | 45 ++ .../all/enum_uavionix_adsb_rf_health.go | 46 ++ pkg/dialects/all/enum_utm_data_avail_flags.go | 58 +++ pkg/dialects/all/enum_utm_flight_state.go | 52 ++ .../all/enum_video_stream_status_flags.go | 46 ++ pkg/dialects/all/enum_video_stream_type.go | 50 ++ .../all/enum_vtol_transition_heading.go | 52 ++ pkg/dialects/all/enum_wifi_config_ap_mode.go | 50 ++ .../all/enum_wifi_config_ap_response.go | 54 ++ .../all/enum_wifi_network_security.go | 54 ++ pkg/dialects/all/enum_winch_actions.go | 60 +++ .../all/msg_actuator_control_target.go | 18 + .../all/msg_actuator_output_status.go | 18 + pkg/dialects/all/msg_adap_tuning.go | 38 ++ pkg/dialects/all/msg_adsb_vehicle.go | 38 ++ pkg/dialects/all/msg_ahrs.go | 26 + pkg/dialects/all/msg_ahrs2.go | 24 + pkg/dialects/all/msg_ahrs3.go | 32 ++ pkg/dialects/all/msg_airspeed.go | 26 + pkg/dialects/all/msg_airspeed_autocal.go | 36 ++ pkg/dialects/all/msg_ais_vessel.go | 46 ++ pkg/dialects/all/msg_altitude.go | 26 + pkg/dialects/all/msg_aoa_ssa.go | 18 + pkg/dialects/all/msg_ap_adc.go | 24 + pkg/dialects/all/msg_array_test_0.go | 22 + pkg/dialects/all/msg_array_test_1.go | 14 + pkg/dialects/all/msg_array_test_3.go | 16 + pkg/dialects/all/msg_array_test_4.go | 16 + pkg/dialects/all/msg_array_test_5.go | 16 + pkg/dialects/all/msg_array_test_6.go | 36 ++ pkg/dialects/all/msg_array_test_7.go | 30 ++ pkg/dialects/all/msg_array_test_8.go | 18 + pkg/dialects/all/msg_asl_obctrl.go | 28 + pkg/dialects/all/msg_aslctrl_data.go | 47 ++ pkg/dialects/all/msg_aslctrl_debug.go | 34 ++ pkg/dialects/all/msg_asluav_status.go | 20 + pkg/dialects/all/msg_att_pos_mocap.go | 24 + pkg/dialects/all/msg_attitude.go | 26 + pkg/dialects/all/msg_attitude_quaternion.go | 30 ++ .../all/msg_attitude_quaternion_cov.go | 24 + pkg/dialects/all/msg_attitude_target.go | 26 + pkg/dialects/all/msg_auth_key.go | 14 + .../msg_autopilot_state_for_gimbal_device.go | 36 ++ pkg/dialects/all/msg_autopilot_version.go | 36 ++ .../all/msg_autopilot_version_request.go | 16 + pkg/dialects/all/msg_avss_prs_sys_status.go | 22 + pkg/dialects/all/msg_battery2.go | 16 + pkg/dialects/all/msg_battery_status.go | 40 ++ pkg/dialects/all/msg_button_change.go | 18 + pkg/dialects/all/msg_camera_capture_status.go | 26 + pkg/dialects/all/msg_camera_feedback.go | 40 ++ pkg/dialects/all/msg_camera_fov_status.go | 32 ++ pkg/dialects/all/msg_camera_image_captured.go | 40 ++ pkg/dialects/all/msg_camera_information.go | 38 ++ pkg/dialects/all/msg_camera_settings.go | 20 + pkg/dialects/all/msg_camera_status.go | 30 ++ .../all/msg_camera_tracking_geo_status.go | 38 ++ .../all/msg_camera_tracking_image_status.go | 32 ++ pkg/dialects/all/msg_camera_trigger.go | 16 + pkg/dialects/all/msg_cellular_config.go | 30 ++ pkg/dialects/all/msg_cellular_status.go | 26 + .../all/msg_change_operator_control.go | 20 + .../all/msg_change_operator_control_ack.go | 18 + pkg/dialects/all/msg_collision.go | 26 + pkg/dialects/all/msg_command_ack.go | 24 + pkg/dialects/all/msg_command_cancel.go | 18 + pkg/dialects/all/msg_command_int.go | 38 ++ pkg/dialects/all/msg_command_int_stamped.go | 42 ++ pkg/dialects/all/msg_command_long.go | 34 ++ pkg/dialects/all/msg_command_long_stamped.go | 38 ++ pkg/dialects/all/msg_compassmot_status.go | 24 + pkg/dialects/all/msg_component_information.go | 22 + .../all/msg_component_information_basic.go | 24 + .../all/msg_component_prearm_status.go | 20 + pkg/dialects/all/msg_control_system_state.go | 46 ++ .../all/msg_current_event_sequence.go | 16 + pkg/dialects/all/msg_data16.go | 18 + pkg/dialects/all/msg_data32.go | 18 + pkg/dialects/all/msg_data64.go | 18 + pkg/dialects/all/msg_data96.go | 18 + pkg/dialects/all/msg_data_stream.go | 18 + .../all/msg_data_transmission_handshake.go | 26 + pkg/dialects/all/msg_debug.go | 18 + pkg/dialects/all/msg_debug_float_array.go | 20 + pkg/dialects/all/msg_debug_vect.go | 22 + pkg/dialects/all/msg_deepstall.go | 32 ++ pkg/dialects/all/msg_device_op_read.go | 32 ++ pkg/dialects/all/msg_device_op_read_reply.go | 24 + pkg/dialects/all/msg_device_op_write.go | 34 ++ pkg/dialects/all/msg_device_op_write_reply.go | 16 + pkg/dialects/all/msg_digicam_configure.go | 34 ++ pkg/dialects/all/msg_digicam_control.go | 32 ++ pkg/dialects/all/msg_distance_sensor.go | 36 ++ pkg/dialects/all/msg_efi_status.go | 46 ++ pkg/dialects/all/msg_ekf_ext.go | 26 + pkg/dialects/all/msg_ekf_status_report.go | 26 + pkg/dialects/all/msg_encapsulated_data.go | 16 + pkg/dialects/all/msg_esc_info.go | 30 ++ pkg/dialects/all/msg_esc_status.go | 22 + pkg/dialects/all/msg_esc_telemetry_1_to_4.go | 24 + pkg/dialects/all/msg_esc_telemetry_5_to_8.go | 24 + pkg/dialects/all/msg_esc_telemetry_9_to_12.go | 24 + pkg/dialects/all/msg_estimator_status.go | 32 ++ pkg/dialects/all/msg_event.go | 26 + pkg/dialects/all/msg_extended_sys_state.go | 16 + pkg/dialects/all/msg_fence_fetch_point.go | 18 + pkg/dialects/all/msg_fence_point.go | 24 + pkg/dialects/all/msg_fence_status.go | 22 + .../all/msg_file_transfer_protocol.go | 20 + pkg/dialects/all/msg_flight_information.go | 21 + pkg/dialects/all/msg_follow_target.go | 34 ++ pkg/dialects/all/msg_fw_soaring_data.go | 62 +++ pkg/dialects/all/msg_generator_status.go | 34 ++ pkg/dialects/all/msg_gimbal_control.go | 22 + .../all/msg_gimbal_device_attitude_status.go | 30 ++ .../all/msg_gimbal_device_information.go | 42 ++ .../all/msg_gimbal_device_set_attitude.go | 26 + .../all/msg_gimbal_manager_information.go | 30 ++ .../all/msg_gimbal_manager_set_attitude.go | 28 + .../msg_gimbal_manager_set_manual_control.go | 28 + .../all/msg_gimbal_manager_set_pitchyaw.go | 28 + pkg/dialects/all/msg_gimbal_manager_status.go | 26 + pkg/dialects/all/msg_gimbal_report.go | 36 ++ .../all/msg_gimbal_torque_cmd_report.go | 22 + pkg/dialects/all/msg_global_position_int.go | 31 ++ .../all/msg_global_position_int_cov.go | 32 ++ .../msg_global_vision_position_estimate.go | 30 ++ pkg/dialects/all/msg_gopro_get_request.go | 18 + pkg/dialects/all/msg_gopro_get_response.go | 18 + pkg/dialects/all/msg_gopro_heartbeat.go | 18 + pkg/dialects/all/msg_gopro_set_request.go | 20 + pkg/dialects/all/msg_gopro_set_response.go | 16 + pkg/dialects/all/msg_gps2_raw.go | 48 ++ pkg/dialects/all/msg_gps2_rtk.go | 38 ++ pkg/dialects/all/msg_gps_global_origin.go | 20 + pkg/dialects/all/msg_gps_inject_data.go | 20 + pkg/dialects/all/msg_gps_input.go | 50 ++ pkg/dialects/all/msg_gps_raw_int.go | 45 ++ pkg/dialects/all/msg_gps_rtcm_data.go | 18 + pkg/dialects/all/msg_gps_rtk.go | 38 ++ pkg/dialects/all/msg_gps_status.go | 24 + pkg/dialects/all/msg_group_end.go | 19 + pkg/dialects/all/msg_group_start.go | 19 + pkg/dialects/all/msg_gsm_link_status.go | 26 + pkg/dialects/all/msg_heartbeat.go | 24 + pkg/dialects/all/msg_high_latency.go | 60 +++ pkg/dialects/all/msg_high_latency2.go | 66 +++ pkg/dialects/all/msg_highres_imu.go | 44 ++ pkg/dialects/all/msg_hil_actuator_controls.go | 20 + pkg/dialects/all/msg_hil_controls.go | 34 ++ pkg/dialects/all/msg_hil_gps.go | 43 ++ pkg/dialects/all/msg_hil_optical_flow.go | 36 ++ pkg/dialects/all/msg_hil_rc_inputs_raw.go | 40 ++ pkg/dialects/all/msg_hil_sensor.go | 44 ++ pkg/dialects/all/msg_hil_state.go | 44 ++ pkg/dialects/all/msg_hil_state_quaternion.go | 44 ++ pkg/dialects/all/msg_home_position.go | 34 ++ pkg/dialects/all/msg_hwstatus.go | 16 + pkg/dialects/all/msg_hygrometer_sensor.go | 18 + pkg/dialects/all/msg_icarous_heartbeat.go | 14 + .../all/msg_icarous_kinematic_bands.go | 44 ++ pkg/dialects/all/msg_isbd_link_status.go | 28 + pkg/dialects/all/msg_landing_target.go | 40 ++ pkg/dialects/all/msg_led_control.go | 24 + pkg/dialects/all/msg_limits_status.go | 30 ++ pkg/dialects/all/msg_link_node_status.go | 34 ++ pkg/dialects/all/msg_local_position_ned.go | 26 + .../all/msg_local_position_ned_cov.go | 36 ++ ...local_position_ned_system_global_offset.go | 26 + pkg/dialects/all/msg_log_data.go | 20 + pkg/dialects/all/msg_log_entry.go | 22 + pkg/dialects/all/msg_log_erase.go | 16 + pkg/dialects/all/msg_log_request_data.go | 22 + pkg/dialects/all/msg_log_request_end.go | 16 + pkg/dialects/all/msg_log_request_list.go | 20 + pkg/dialects/all/msg_logging_ack.go | 18 + pkg/dialects/all/msg_logging_data.go | 24 + pkg/dialects/all/msg_logging_data_acked.go | 24 + pkg/dialects/all/msg_mag_cal_progress.go | 30 ++ pkg/dialects/all/msg_mag_cal_report.go | 48 ++ pkg/dialects/all/msg_manual_control.go | 32 ++ pkg/dialects/all/msg_manual_setpoint.go | 26 + pkg/dialects/all/msg_mcu_status.go | 22 + pkg/dialects/all/msg_meminfo.go | 18 + pkg/dialects/all/msg_memory_vect.go | 20 + pkg/dialects/all/msg_message_interval.go | 16 + pkg/dialects/all/msg_mission_ack.go | 20 + pkg/dialects/all/msg_mission_changed.go | 22 + pkg/dialects/all/msg_mission_checksum.go | 24 + pkg/dialects/all/msg_mission_clear_all.go | 18 + pkg/dialects/all/msg_mission_count.go | 20 + pkg/dialects/all/msg_mission_current.go | 14 + pkg/dialects/all/msg_mission_item.go | 43 ++ pkg/dialects/all/msg_mission_item_int.go | 43 ++ pkg/dialects/all/msg_mission_item_reached.go | 14 + pkg/dialects/all/msg_mission_request.go | 20 + pkg/dialects/all/msg_mission_request_int.go | 20 + pkg/dialects/all/msg_mission_request_list.go | 18 + .../all/msg_mission_request_partial_list.go | 22 + pkg/dialects/all/msg_mission_set_current.go | 18 + .../all/msg_mission_write_partial_list.go | 22 + pkg/dialects/all/msg_mount_configure.go | 24 + pkg/dialects/all/msg_mount_control.go | 24 + pkg/dialects/all/msg_mount_orientation.go | 22 + pkg/dialects/all/msg_mount_status.go | 24 + pkg/dialects/all/msg_named_value_float.go | 18 + pkg/dialects/all/msg_named_value_int.go | 18 + pkg/dialects/all/msg_nav_controller_output.go | 28 + pkg/dialects/all/msg_nav_filter_bias.go | 26 + pkg/dialects/all/msg_obstacle_distance.go | 30 ++ pkg/dialects/all/msg_obstacle_distance_3d.go | 30 ++ pkg/dialects/all/msg_odometry.go | 46 ++ .../all/msg_onboard_computer_status.go | 52 ++ .../all/msg_open_drone_id_authentication.go | 30 ++ .../all/msg_open_drone_id_basic_id.go | 24 + .../all/msg_open_drone_id_location.go | 50 ++ .../all/msg_open_drone_id_message_pack.go | 24 + .../all/msg_open_drone_id_operator_id.go | 22 + pkg/dialects/all/msg_open_drone_id_self_id.go | 22 + pkg/dialects/all/msg_open_drone_id_system.go | 40 ++ pkg/dialects/all/msg_optical_flow.go | 32 ++ pkg/dialects/all/msg_optical_flow_rad.go | 36 ++ .../all/msg_orbit_execution_status.go | 24 + pkg/dialects/all/msg_osd_param_config.go | 32 ++ .../all/msg_osd_param_config_reply.go | 16 + pkg/dialects/all/msg_osd_param_show_config.go | 22 + .../all/msg_osd_param_show_config_reply.go | 26 + pkg/dialects/all/msg_param_ack_transaction.go | 24 + pkg/dialects/all/msg_param_ext_ack.go | 20 + .../all/msg_param_ext_request_list.go | 16 + .../all/msg_param_ext_request_read.go | 20 + pkg/dialects/all/msg_param_ext_set.go | 22 + pkg/dialects/all/msg_param_ext_value.go | 22 + pkg/dialects/all/msg_param_map_rc.go | 30 ++ pkg/dialects/all/msg_param_request_list.go | 16 + pkg/dialects/all/msg_param_request_read.go | 20 + pkg/dialects/all/msg_param_set.go | 24 + pkg/dialects/all/msg_param_value.go | 22 + pkg/dialects/all/msg_pid_tuning.go | 30 ++ pkg/dialects/all/msg_ping.go | 20 + pkg/dialects/all/msg_play_tune.go | 20 + pkg/dialects/all/msg_play_tune_v2.go | 20 + .../all/msg_position_target_global_int.go | 40 ++ .../all/msg_position_target_local_ned.go | 40 ++ pkg/dialects/all/msg_power_status.go | 18 + pkg/dialects/all/msg_protocol_version.go | 22 + pkg/dialects/all/msg_qshot_status.go | 16 + pkg/dialects/all/msg_radio.go | 26 + pkg/dialects/all/msg_radio_calibration.go | 24 + pkg/dialects/all/msg_radio_status.go | 26 + pkg/dialects/all/msg_rally_fetch_point.go | 18 + pkg/dialects/all/msg_rally_point.go | 32 ++ pkg/dialects/all/msg_rangefinder.go | 16 + pkg/dialects/all/msg_raw_imu.go | 36 ++ pkg/dialects/all/msg_raw_pressure.go | 22 + pkg/dialects/all/msg_raw_rpm.go | 16 + pkg/dialects/all/msg_rc_channels.go | 54 ++ pkg/dialects/all/msg_rc_channels_override.go | 52 ++ pkg/dialects/all/msg_rc_channels_raw.go | 34 ++ pkg/dialects/all/msg_rc_channels_scaled.go | 34 ++ .../all/msg_remote_log_block_status.go | 20 + pkg/dialects/all/msg_remote_log_data_block.go | 20 + pkg/dialects/all/msg_request_data_stream.go | 22 + pkg/dialects/all/msg_request_event.go | 20 + pkg/dialects/all/msg_resource_request.go | 22 + pkg/dialects/all/msg_response_event_error.go | 22 + pkg/dialects/all/msg_rpm.go | 16 + pkg/dialects/all/msg_safety_allowed_area.go | 26 + .../all/msg_safety_set_allowed_area.go | 30 ++ pkg/dialects/all/msg_satcom_link_status.go | 28 + pkg/dialects/all/msg_scaled_imu.go | 34 ++ pkg/dialects/all/msg_scaled_imu2.go | 34 ++ pkg/dialects/all/msg_scaled_imu3.go | 34 ++ pkg/dialects/all/msg_scaled_pressure.go | 22 + pkg/dialects/all/msg_scaled_pressure2.go | 22 + pkg/dialects/all/msg_scaled_pressure3.go | 22 + pkg/dialects/all/msg_sens_atmos.go | 18 + pkg/dialects/all/msg_sens_batmon.go | 42 ++ pkg/dialects/all/msg_sens_mppt.go | 38 ++ pkg/dialects/all/msg_sens_power.go | 20 + pkg/dialects/all/msg_sens_power_board.go | 36 ++ pkg/dialects/all/msg_sensor_airflow_angles.go | 22 + pkg/dialects/all/msg_sensor_offsets.go | 36 ++ pkg/dialects/all/msg_sensorpod_status.go | 28 + pkg/dialects/all/msg_serial_control.go | 28 + pkg/dialects/all/msg_servo_output_raw.go | 48 ++ .../all/msg_set_actuator_control_target.go | 22 + pkg/dialects/all/msg_set_attitude_target.go | 32 ++ pkg/dialects/all/msg_set_gps_global_origin.go | 22 + pkg/dialects/all/msg_set_home_position.go | 36 ++ pkg/dialects/all/msg_set_mag_offsets.go | 22 + pkg/dialects/all/msg_set_mode.go | 18 + .../all/msg_set_position_target_global_int.go | 44 ++ .../all/msg_set_position_target_local_ned.go | 44 ++ pkg/dialects/all/msg_setup_signing.go | 20 + pkg/dialects/all/msg_sim_state.go | 54 ++ pkg/dialects/all/msg_simstate.go | 34 ++ pkg/dialects/all/msg_smart_battery_info.go | 46 ++ pkg/dialects/all/msg_statustext.go | 20 + pkg/dialects/all/msg_storage_information.go | 39 ++ .../all/msg_storm32_gimbal_device_control.go | 26 + .../all/msg_storm32_gimbal_device_status.go | 32 ++ .../all/msg_storm32_gimbal_manager_control.go | 32 ++ ...storm32_gimbal_manager_control_pitchyaw.go | 32 ++ ...msg_storm32_gimbal_manager_correct_roll.go | 22 + .../msg_storm32_gimbal_manager_information.go | 30 ++ .../all/msg_storm32_gimbal_manager_profile.go | 28 + .../all/msg_storm32_gimbal_manager_status.go | 22 + pkg/dialects/all/msg_supported_tunes.go | 18 + pkg/dialects/all/msg_sys_status.go | 44 ++ pkg/dialects/all/msg_system_time.go | 16 + pkg/dialects/all/msg_terrain_check.go | 16 + pkg/dialects/all/msg_terrain_data.go | 22 + pkg/dialects/all/msg_terrain_report.go | 26 + pkg/dialects/all/msg_terrain_request.go | 20 + pkg/dialects/all/msg_test_types.go | 56 ++ .../all/msg_time_estimate_to_target.go | 22 + pkg/dialects/all/msg_timesync.go | 16 + .../msg_trajectory_representation_bezier.go | 26 + ...msg_trajectory_representation_waypoints.go | 40 ++ pkg/dialects/all/msg_tunnel.go | 22 + pkg/dialects/all/msg_ualberta_sys_status.go | 18 + pkg/dialects/all/msg_uavcan_node_info.go | 30 ++ pkg/dialects/all/msg_uavcan_node_status.go | 24 + pkg/dialects/all/msg_uavionix_adsb_out_cfg.go | 28 + .../all/msg_uavionix_adsb_out_dynamic.go | 44 ++ ...uavionix_adsb_transceiver_health_report.go | 14 + pkg/dialects/all/msg_utm_global_position.go | 48 ++ pkg/dialects/all/msg_v2_extension.go | 22 + pkg/dialects/all/msg_vfr_hud.go | 24 + pkg/dialects/all/msg_vibration.go | 26 + .../all/msg_vicon_position_estimate.go | 28 + .../all/msg_video_stream_information.go | 36 ++ pkg/dialects/all/msg_video_stream_status.go | 28 + pkg/dialects/all/msg_vision_position_delta.go | 22 + .../all/msg_vision_position_estimate.go | 30 ++ pkg/dialects/all/msg_vision_speed_estimate.go | 24 + pkg/dialects/all/msg_water_depth.go | 34 ++ pkg/dialects/all/msg_wheel_distance.go | 18 + pkg/dialects/all/msg_wifi_config_ap.go | 20 + pkg/dialects/all/msg_wifi_network_info.go | 22 + pkg/dialects/all/msg_winch_status.go | 28 + pkg/dialects/all/msg_wind.go | 18 + pkg/dialects/all/msg_wind_cov.go | 30 ++ .../enum_mav_protocol_capability.go | 12 +- .../msg_component_information.go | 4 +- .../ardupilotmega/msg_flight_information.go | 1 + .../asluav/enum_mav_protocol_capability.go | 12 +- .../asluav/msg_component_information.go | 4 +- pkg/dialects/asluav/msg_flight_information.go | 1 + pkg/dialects/avssuas/dialect.go | 237 +++++++++ .../avssuas/enum_actuator_configuration.go | 54 ++ .../avssuas/enum_actuator_output_function.go | 108 ++++ .../avssuas/enum_adsb_altitude_type.go | 46 ++ .../avssuas/enum_adsb_emitter_type.go | 62 +++ pkg/dialects/avssuas/enum_adsb_flags.go | 52 ++ pkg/dialects/avssuas/enum_ais_flags.go | 62 +++ pkg/dialects/avssuas/enum_ais_nav_status.go | 61 +++ pkg/dialects/avssuas/enum_ais_type.go | 150 ++++++ .../avssuas/enum_attitude_target_typemask.go | 54 ++ pkg/dialects/avssuas/enum_autotune_axis.go | 50 ++ pkg/dialects/avssuas/enum_camera_cap_flags.go | 66 +++ pkg/dialects/avssuas/enum_camera_mode.go | 48 ++ .../avssuas/enum_camera_tracking_mode.go | 48 ++ .../enum_camera_tracking_status_flags.go | 48 ++ .../enum_camera_tracking_target_data.go | 50 ++ pkg/dialects/avssuas/enum_camera_zoom_type.go | 50 ++ .../avssuas/enum_cellular_config_response.go | 52 ++ .../enum_cellular_network_failed_reason.go | 50 ++ .../enum_cellular_network_radio_type.go | 47 ++ .../avssuas/enum_cellular_status_flag.go | 68 +++ .../avssuas/enum_comp_metadata_type.go | 54 ++ .../avssuas/enum_esc_connection_type.go | 54 ++ .../avssuas/enum_esc_failure_flags.go | 58 +++ .../avssuas/enum_estimator_status_flags.go | 66 +++ pkg/dialects/avssuas/enum_failure_type.go | 58 +++ pkg/dialects/avssuas/enum_failure_unit.go | 57 +++ pkg/dialects/avssuas/enum_fence_action.go | 58 +++ pkg/dialects/avssuas/enum_fence_breach.go | 49 ++ pkg/dialects/avssuas/enum_fence_mitigate.go | 48 ++ .../avssuas/enum_firmware_version_type.go | 52 ++ .../avssuas/enum_gimbal_device_cap_flags.go | 66 +++ .../avssuas/enum_gimbal_device_error_flags.go | 60 +++ .../avssuas/enum_gimbal_device_flags.go | 52 ++ .../avssuas/enum_gimbal_manager_cap_flags.go | 70 +++ .../avssuas/enum_gimbal_manager_flags.go | 52 ++ pkg/dialects/avssuas/enum_gps_fix_type.go | 60 +++ .../avssuas/enum_gps_input_ignore_flags.go | 57 +++ pkg/dialects/avssuas/enum_gripper_actions.go | 46 ++ .../avssuas/enum_highres_imu_updated_flags.go | 72 +++ .../avssuas/enum_hil_sensor_updated_flags.go | 72 +++ pkg/dialects/avssuas/enum_hl_failure_flag.go | 70 +++ .../avssuas/enum_landing_target_type.go | 50 ++ pkg/dialects/avssuas/enum_mag_cal_status.go | 49 ++ .../enum_mav_arm_auth_denied_reason.go | 53 ++ pkg/dialects/avssuas/enum_mav_autopilot.go | 84 +++ .../enum_mav_avss_command_failure_reason.go | 47 ++ .../avssuas/enum_mav_battery_charge_state.go | 58 +++ .../avssuas/enum_mav_battery_fault.go | 60 +++ .../avssuas/enum_mav_battery_function.go | 52 ++ pkg/dialects/avssuas/enum_mav_battery_mode.go | 48 ++ pkg/dialects/avssuas/enum_mav_battery_type.go | 52 ++ pkg/dialects/avssuas/enum_mav_cmd.go | 387 ++++++++++++++ pkg/dialects/avssuas/enum_mav_cmd_ack.go | 60 +++ .../avssuas/enum_mav_collision_action.go | 56 ++ .../avssuas/enum_mav_collision_src.go | 46 ++ .../enum_mav_collision_threat_level.go | 48 ++ pkg/dialects/avssuas/enum_mav_component.go | 310 +++++++++++ pkg/dialects/avssuas/enum_mav_data_stream.go | 62 +++ .../avssuas/enum_mav_distance_sensor.go | 52 ++ .../avssuas/enum_mav_do_reposition_flags.go | 44 ++ .../avssuas/enum_mav_estimator_type.go | 60 +++ .../enum_mav_event_current_sequence_flags.go | 44 ++ .../avssuas/enum_mav_event_error_reason.go | 44 ++ pkg/dialects/avssuas/enum_mav_frame.go | 100 ++++ .../avssuas/enum_mav_generator_status_flag.go | 88 ++++ pkg/dialects/avssuas/enum_mav_goto.go | 50 ++ pkg/dialects/avssuas/enum_mav_landed_state.go | 52 ++ .../avssuas/enum_mav_mission_result.go | 74 +++ pkg/dialects/avssuas/enum_mav_mission_type.go | 50 ++ pkg/dialects/avssuas/enum_mav_mode.go | 65 +++ pkg/dialects/avssuas/enum_mav_mode_flag.go | 58 +++ .../enum_mav_mode_flag_decode_position.go | 58 +++ pkg/dialects/avssuas/enum_mav_mount_mode.go | 56 ++ .../avssuas/enum_mav_odid_auth_type.go | 53 ++ .../avssuas/enum_mav_odid_category_eu.go | 49 ++ .../avssuas/enum_mav_odid_class_eu.go | 57 +++ .../enum_mav_odid_classification_type.go | 45 ++ .../avssuas/enum_mav_odid_desc_type.go | 43 ++ .../avssuas/enum_mav_odid_height_ref.go | 45 ++ pkg/dialects/avssuas/enum_mav_odid_hor_acc.go | 67 +++ pkg/dialects/avssuas/enum_mav_odid_id_type.go | 51 ++ .../avssuas/enum_mav_odid_operator_id_type.go | 43 ++ .../enum_mav_odid_operator_location_type.go | 47 ++ .../avssuas/enum_mav_odid_speed_acc.go | 51 ++ pkg/dialects/avssuas/enum_mav_odid_status.go | 49 ++ .../avssuas/enum_mav_odid_time_acc.go | 73 +++ pkg/dialects/avssuas/enum_mav_odid_ua_type.go | 73 +++ pkg/dialects/avssuas/enum_mav_odid_ver_acc.go | 55 ++ .../avssuas/enum_mav_param_ext_type.go | 64 +++ pkg/dialects/avssuas/enum_mav_param_type.go | 62 +++ pkg/dialects/avssuas/enum_mav_power_status.go | 54 ++ .../avssuas/enum_mav_protocol_capability.go | 78 +++ pkg/dialects/avssuas/enum_mav_result.go | 56 ++ pkg/dialects/avssuas/enum_mav_roi.go | 54 ++ .../avssuas/enum_mav_sensor_orientation.go | 126 +++++ pkg/dialects/avssuas/enum_mav_severity.go | 58 +++ pkg/dialects/avssuas/enum_mav_state.go | 59 +++ .../avssuas/enum_mav_sys_status_sensor.go | 106 ++++ .../enum_mav_sys_status_sensor_extended.go | 44 ++ .../avssuas/enum_mav_tunnel_payload_type.go | 63 +++ pkg/dialects/avssuas/enum_mav_type.go | 126 +++++ pkg/dialects/avssuas/enum_mav_vtol_state.go | 52 ++ .../avssuas/enum_mav_winch_status_flag.go | 64 +++ .../avssuas/enum_mavlink_data_stream_type.go | 47 ++ pkg/dialects/avssuas/enum_motor_test_order.go | 48 ++ .../avssuas/enum_motor_test_throttle_type.go | 50 ++ .../avssuas/enum_nav_vtol_land_options.go | 48 ++ .../avssuas/enum_orbit_yaw_behaviour.go | 52 ++ pkg/dialects/avssuas/enum_parachute_action.go | 48 ++ pkg/dialects/avssuas/enum_param_ack.go | 50 ++ .../avssuas/enum_position_target_typemask.go | 66 +++ .../avssuas/enum_precision_land_mode.go | 48 ++ pkg/dialects/avssuas/enum_rc_type.go | 46 ++ .../enum_rtk_baseline_coordinate_system.go | 46 ++ .../avssuas/enum_serial_control_dev.go | 72 +++ .../avssuas/enum_serial_control_flag.go | 52 ++ pkg/dialects/avssuas/enum_set_focus_type.go | 56 ++ pkg/dialects/avssuas/enum_storage_status.go | 50 ++ pkg/dialects/avssuas/enum_storage_type.go | 60 +++ .../avssuas/enum_storage_usage_flag.go | 50 ++ pkg/dialects/avssuas/enum_tune_format.go | 46 ++ .../avssuas/enum_uavcan_node_health.go | 50 ++ pkg/dialects/avssuas/enum_uavcan_node_mode.go | 52 ++ .../avssuas/enum_utm_data_avail_flags.go | 58 +++ pkg/dialects/avssuas/enum_utm_flight_state.go | 52 ++ .../avssuas/enum_video_stream_status_flags.go | 46 ++ .../avssuas/enum_video_stream_type.go | 50 ++ .../avssuas/enum_vtol_transition_heading.go | 52 ++ .../avssuas/enum_wifi_config_ap_mode.go | 50 ++ .../avssuas/enum_wifi_config_ap_response.go | 54 ++ pkg/dialects/avssuas/enum_winch_actions.go | 60 +++ .../avssuas/msg_actuator_control_target.go | 18 + .../avssuas/msg_actuator_output_status.go | 18 + pkg/dialects/avssuas/msg_adsb_vehicle.go | 38 ++ pkg/dialects/avssuas/msg_ais_vessel.go | 46 ++ pkg/dialects/avssuas/msg_altitude.go | 26 + pkg/dialects/avssuas/msg_att_pos_mocap.go | 24 + pkg/dialects/avssuas/msg_attitude.go | 26 + .../avssuas/msg_attitude_quaternion.go | 30 ++ .../avssuas/msg_attitude_quaternion_cov.go | 24 + pkg/dialects/avssuas/msg_attitude_target.go | 26 + pkg/dialects/avssuas/msg_auth_key.go | 14 + .../msg_autopilot_state_for_gimbal_device.go | 36 ++ pkg/dialects/avssuas/msg_autopilot_version.go | 36 ++ .../avssuas/msg_avss_prs_sys_status.go | 22 + pkg/dialects/avssuas/msg_battery_status.go | 40 ++ pkg/dialects/avssuas/msg_button_change.go | 18 + .../avssuas/msg_camera_capture_status.go | 26 + pkg/dialects/avssuas/msg_camera_fov_status.go | 32 ++ .../avssuas/msg_camera_image_captured.go | 40 ++ .../avssuas/msg_camera_information.go | 38 ++ pkg/dialects/avssuas/msg_camera_settings.go | 20 + .../avssuas/msg_camera_tracking_geo_status.go | 38 ++ .../msg_camera_tracking_image_status.go | 32 ++ pkg/dialects/avssuas/msg_camera_trigger.go | 16 + pkg/dialects/avssuas/msg_cellular_config.go | 30 ++ pkg/dialects/avssuas/msg_cellular_status.go | 26 + .../avssuas/msg_change_operator_control.go | 20 + .../msg_change_operator_control_ack.go | 18 + pkg/dialects/avssuas/msg_collision.go | 26 + pkg/dialects/avssuas/msg_command_ack.go | 24 + pkg/dialects/avssuas/msg_command_cancel.go | 18 + pkg/dialects/avssuas/msg_command_int.go | 38 ++ pkg/dialects/avssuas/msg_command_long.go | 34 ++ .../avssuas/msg_component_information.go | 22 + .../avssuas/msg_control_system_state.go | 46 ++ .../avssuas/msg_current_event_sequence.go | 16 + pkg/dialects/avssuas/msg_data_stream.go | 18 + .../msg_data_transmission_handshake.go | 26 + pkg/dialects/avssuas/msg_debug.go | 18 + pkg/dialects/avssuas/msg_debug_float_array.go | 20 + pkg/dialects/avssuas/msg_debug_vect.go | 22 + pkg/dialects/avssuas/msg_distance_sensor.go | 36 ++ pkg/dialects/avssuas/msg_efi_status.go | 46 ++ pkg/dialects/avssuas/msg_encapsulated_data.go | 16 + pkg/dialects/avssuas/msg_esc_info.go | 30 ++ pkg/dialects/avssuas/msg_esc_status.go | 22 + pkg/dialects/avssuas/msg_estimator_status.go | 32 ++ pkg/dialects/avssuas/msg_event.go | 26 + .../avssuas/msg_extended_sys_state.go | 16 + pkg/dialects/avssuas/msg_fence_status.go | 22 + .../avssuas/msg_file_transfer_protocol.go | 20 + .../avssuas/msg_flight_information.go | 21 + pkg/dialects/avssuas/msg_follow_target.go | 34 ++ pkg/dialects/avssuas/msg_generator_status.go | 34 ++ .../msg_gimbal_device_attitude_status.go | 30 ++ .../avssuas/msg_gimbal_device_information.go | 42 ++ .../avssuas/msg_gimbal_device_set_attitude.go | 26 + .../avssuas/msg_gimbal_manager_information.go | 30 ++ .../msg_gimbal_manager_set_attitude.go | 28 + .../msg_gimbal_manager_set_manual_control.go | 28 + .../msg_gimbal_manager_set_pitchyaw.go | 28 + .../avssuas/msg_gimbal_manager_status.go | 26 + .../avssuas/msg_global_position_int.go | 31 ++ .../avssuas/msg_global_position_int_cov.go | 32 ++ .../msg_global_vision_position_estimate.go | 30 ++ pkg/dialects/avssuas/msg_gps2_raw.go | 48 ++ pkg/dialects/avssuas/msg_gps2_rtk.go | 38 ++ pkg/dialects/avssuas/msg_gps_global_origin.go | 20 + pkg/dialects/avssuas/msg_gps_inject_data.go | 20 + pkg/dialects/avssuas/msg_gps_input.go | 50 ++ pkg/dialects/avssuas/msg_gps_raw_int.go | 45 ++ pkg/dialects/avssuas/msg_gps_rtcm_data.go | 18 + pkg/dialects/avssuas/msg_gps_rtk.go | 38 ++ pkg/dialects/avssuas/msg_gps_status.go | 24 + pkg/dialects/avssuas/msg_heartbeat.go | 24 + pkg/dialects/avssuas/msg_high_latency.go | 60 +++ pkg/dialects/avssuas/msg_high_latency2.go | 66 +++ pkg/dialects/avssuas/msg_highres_imu.go | 44 ++ .../avssuas/msg_hil_actuator_controls.go | 20 + pkg/dialects/avssuas/msg_hil_controls.go | 34 ++ pkg/dialects/avssuas/msg_hil_gps.go | 43 ++ pkg/dialects/avssuas/msg_hil_optical_flow.go | 36 ++ pkg/dialects/avssuas/msg_hil_rc_inputs_raw.go | 40 ++ pkg/dialects/avssuas/msg_hil_sensor.go | 44 ++ pkg/dialects/avssuas/msg_hil_state.go | 44 ++ .../avssuas/msg_hil_state_quaternion.go | 44 ++ pkg/dialects/avssuas/msg_home_position.go | 34 ++ pkg/dialects/avssuas/msg_hygrometer_sensor.go | 18 + pkg/dialects/avssuas/msg_isbd_link_status.go | 28 + pkg/dialects/avssuas/msg_landing_target.go | 40 ++ pkg/dialects/avssuas/msg_link_node_status.go | 34 ++ .../avssuas/msg_local_position_ned.go | 26 + .../avssuas/msg_local_position_ned_cov.go | 36 ++ ...local_position_ned_system_global_offset.go | 26 + pkg/dialects/avssuas/msg_log_data.go | 20 + pkg/dialects/avssuas/msg_log_entry.go | 22 + pkg/dialects/avssuas/msg_log_erase.go | 16 + pkg/dialects/avssuas/msg_log_request_data.go | 22 + pkg/dialects/avssuas/msg_log_request_end.go | 16 + pkg/dialects/avssuas/msg_log_request_list.go | 20 + pkg/dialects/avssuas/msg_logging_ack.go | 18 + pkg/dialects/avssuas/msg_logging_data.go | 24 + .../avssuas/msg_logging_data_acked.go | 24 + pkg/dialects/avssuas/msg_mag_cal_report.go | 48 ++ pkg/dialects/avssuas/msg_manual_control.go | 32 ++ pkg/dialects/avssuas/msg_manual_setpoint.go | 26 + pkg/dialects/avssuas/msg_memory_vect.go | 20 + pkg/dialects/avssuas/msg_message_interval.go | 16 + pkg/dialects/avssuas/msg_mission_ack.go | 20 + pkg/dialects/avssuas/msg_mission_clear_all.go | 18 + pkg/dialects/avssuas/msg_mission_count.go | 20 + pkg/dialects/avssuas/msg_mission_current.go | 14 + pkg/dialects/avssuas/msg_mission_item.go | 43 ++ pkg/dialects/avssuas/msg_mission_item_int.go | 43 ++ .../avssuas/msg_mission_item_reached.go | 14 + pkg/dialects/avssuas/msg_mission_request.go | 20 + .../avssuas/msg_mission_request_int.go | 20 + .../avssuas/msg_mission_request_list.go | 18 + .../msg_mission_request_partial_list.go | 22 + .../avssuas/msg_mission_set_current.go | 18 + .../avssuas/msg_mission_write_partial_list.go | 22 + pkg/dialects/avssuas/msg_mount_orientation.go | 22 + pkg/dialects/avssuas/msg_named_value_float.go | 18 + pkg/dialects/avssuas/msg_named_value_int.go | 18 + .../avssuas/msg_nav_controller_output.go | 28 + pkg/dialects/avssuas/msg_obstacle_distance.go | 30 ++ pkg/dialects/avssuas/msg_odometry.go | 46 ++ .../avssuas/msg_onboard_computer_status.go | 52 ++ .../msg_open_drone_id_authentication.go | 30 ++ .../avssuas/msg_open_drone_id_basic_id.go | 24 + .../avssuas/msg_open_drone_id_location.go | 50 ++ .../avssuas/msg_open_drone_id_message_pack.go | 24 + .../avssuas/msg_open_drone_id_operator_id.go | 22 + .../avssuas/msg_open_drone_id_self_id.go | 22 + .../avssuas/msg_open_drone_id_system.go | 40 ++ pkg/dialects/avssuas/msg_optical_flow.go | 32 ++ pkg/dialects/avssuas/msg_optical_flow_rad.go | 36 ++ .../avssuas/msg_orbit_execution_status.go | 24 + pkg/dialects/avssuas/msg_param_ext_ack.go | 20 + .../avssuas/msg_param_ext_request_list.go | 16 + .../avssuas/msg_param_ext_request_read.go | 20 + pkg/dialects/avssuas/msg_param_ext_set.go | 22 + pkg/dialects/avssuas/msg_param_ext_value.go | 22 + pkg/dialects/avssuas/msg_param_map_rc.go | 30 ++ .../avssuas/msg_param_request_list.go | 16 + .../avssuas/msg_param_request_read.go | 20 + pkg/dialects/avssuas/msg_param_set.go | 24 + pkg/dialects/avssuas/msg_param_value.go | 22 + pkg/dialects/avssuas/msg_ping.go | 20 + pkg/dialects/avssuas/msg_play_tune.go | 20 + pkg/dialects/avssuas/msg_play_tune_v2.go | 20 + .../avssuas/msg_position_target_global_int.go | 40 ++ .../avssuas/msg_position_target_local_ned.go | 40 ++ pkg/dialects/avssuas/msg_power_status.go | 18 + pkg/dialects/avssuas/msg_protocol_version.go | 22 + pkg/dialects/avssuas/msg_radio_status.go | 26 + pkg/dialects/avssuas/msg_raw_imu.go | 36 ++ pkg/dialects/avssuas/msg_raw_pressure.go | 22 + pkg/dialects/avssuas/msg_raw_rpm.go | 16 + pkg/dialects/avssuas/msg_rc_channels.go | 54 ++ .../avssuas/msg_rc_channels_override.go | 52 ++ pkg/dialects/avssuas/msg_rc_channels_raw.go | 34 ++ .../avssuas/msg_rc_channels_scaled.go | 34 ++ .../avssuas/msg_request_data_stream.go | 22 + pkg/dialects/avssuas/msg_request_event.go | 20 + pkg/dialects/avssuas/msg_resource_request.go | 22 + .../avssuas/msg_response_event_error.go | 22 + .../avssuas/msg_safety_allowed_area.go | 26 + .../avssuas/msg_safety_set_allowed_area.go | 30 ++ pkg/dialects/avssuas/msg_scaled_imu.go | 34 ++ pkg/dialects/avssuas/msg_scaled_imu2.go | 34 ++ pkg/dialects/avssuas/msg_scaled_imu3.go | 34 ++ pkg/dialects/avssuas/msg_scaled_pressure.go | 22 + pkg/dialects/avssuas/msg_scaled_pressure2.go | 22 + pkg/dialects/avssuas/msg_scaled_pressure3.go | 22 + pkg/dialects/avssuas/msg_serial_control.go | 28 + pkg/dialects/avssuas/msg_servo_output_raw.go | 48 ++ .../msg_set_actuator_control_target.go | 22 + .../avssuas/msg_set_attitude_target.go | 32 ++ .../avssuas/msg_set_gps_global_origin.go | 22 + pkg/dialects/avssuas/msg_set_home_position.go | 36 ++ pkg/dialects/avssuas/msg_set_mode.go | 18 + .../msg_set_position_target_global_int.go | 44 ++ .../msg_set_position_target_local_ned.go | 44 ++ pkg/dialects/avssuas/msg_setup_signing.go | 20 + pkg/dialects/avssuas/msg_sim_state.go | 54 ++ .../avssuas/msg_smart_battery_info.go | 46 ++ pkg/dialects/avssuas/msg_statustext.go | 20 + .../avssuas/msg_storage_information.go | 39 ++ pkg/dialects/avssuas/msg_supported_tunes.go | 18 + pkg/dialects/avssuas/msg_sys_status.go | 44 ++ pkg/dialects/avssuas/msg_system_time.go | 16 + pkg/dialects/avssuas/msg_terrain_check.go | 16 + pkg/dialects/avssuas/msg_terrain_data.go | 22 + pkg/dialects/avssuas/msg_terrain_report.go | 26 + pkg/dialects/avssuas/msg_terrain_request.go | 20 + .../avssuas/msg_time_estimate_to_target.go | 22 + pkg/dialects/avssuas/msg_timesync.go | 16 + .../msg_trajectory_representation_bezier.go | 26 + ...msg_trajectory_representation_waypoints.go | 40 ++ pkg/dialects/avssuas/msg_tunnel.go | 22 + pkg/dialects/avssuas/msg_uavcan_node_info.go | 30 ++ .../avssuas/msg_uavcan_node_status.go | 24 + .../avssuas/msg_utm_global_position.go | 48 ++ pkg/dialects/avssuas/msg_v2_extension.go | 22 + pkg/dialects/avssuas/msg_vfr_hud.go | 24 + pkg/dialects/avssuas/msg_vibration.go | 26 + .../avssuas/msg_vicon_position_estimate.go | 28 + .../avssuas/msg_video_stream_information.go | 36 ++ .../avssuas/msg_video_stream_status.go | 28 + .../avssuas/msg_vision_position_estimate.go | 30 ++ .../avssuas/msg_vision_speed_estimate.go | 24 + pkg/dialects/avssuas/msg_wheel_distance.go | 18 + pkg/dialects/avssuas/msg_wifi_config_ap.go | 20 + pkg/dialects/avssuas/msg_winch_status.go | 28 + pkg/dialects/avssuas/msg_wind_cov.go | 30 ++ .../common/enum_mav_protocol_capability.go | 12 +- .../common/msg_component_information.go | 4 +- pkg/dialects/common/msg_flight_information.go | 1 + pkg/dialects/development/dialect.go | 245 +++++++++ .../enum_actuator_configuration.go | 54 ++ .../enum_actuator_output_function.go | 108 ++++ .../development/enum_adsb_altitude_type.go | 46 ++ .../development/enum_adsb_emitter_type.go | 62 +++ pkg/dialects/development/enum_adsb_flags.go | 52 ++ .../development/enum_airspeed_sensor_type.go | 52 ++ pkg/dialects/development/enum_ais_flags.go | 62 +++ .../development/enum_ais_nav_status.go | 61 +++ pkg/dialects/development/enum_ais_type.go | 150 ++++++ .../enum_attitude_target_typemask.go | 54 ++ .../development/enum_autotune_axis.go | 50 ++ .../development/enum_camera_cap_flags.go | 66 +++ pkg/dialects/development/enum_camera_mode.go | 48 ++ .../development/enum_camera_tracking_mode.go | 48 ++ .../enum_camera_tracking_status_flags.go | 48 ++ .../enum_camera_tracking_target_data.go | 50 ++ .../development/enum_camera_zoom_type.go | 50 ++ .../enum_cellular_config_response.go | 52 ++ .../enum_cellular_network_failed_reason.go | 50 ++ .../enum_cellular_network_radio_type.go | 47 ++ .../development/enum_cellular_status_flag.go | 68 +++ .../development/enum_comp_metadata_type.go | 54 ++ .../development/enum_esc_connection_type.go | 54 ++ .../development/enum_esc_failure_flags.go | 58 +++ .../enum_estimator_status_flags.go | 66 +++ pkg/dialects/development/enum_failure_type.go | 58 +++ pkg/dialects/development/enum_failure_unit.go | 57 +++ pkg/dialects/development/enum_fence_action.go | 58 +++ pkg/dialects/development/enum_fence_breach.go | 49 ++ .../development/enum_fence_mitigate.go | 48 ++ .../development/enum_firmware_version_type.go | 52 ++ .../enum_gimbal_device_cap_flags.go | 66 +++ .../enum_gimbal_device_error_flags.go | 60 +++ .../development/enum_gimbal_device_flags.go | 52 ++ .../enum_gimbal_manager_cap_flags.go | 70 +++ .../development/enum_gimbal_manager_flags.go | 52 ++ pkg/dialects/development/enum_gps_fix_type.go | 60 +++ .../enum_gps_input_ignore_flags.go | 57 +++ .../development/enum_gripper_actions.go | 46 ++ .../enum_highres_imu_updated_flags.go | 72 +++ .../enum_hil_sensor_updated_flags.go | 72 +++ .../development/enum_hl_failure_flag.go | 70 +++ .../development/enum_landing_target_type.go | 50 ++ .../development/enum_mag_cal_status.go | 49 ++ .../enum_mav_arm_auth_denied_reason.go | 53 ++ .../development/enum_mav_autopilot.go | 84 +++ .../enum_mav_battery_charge_state.go | 58 +++ .../development/enum_mav_battery_fault.go | 60 +++ .../development/enum_mav_battery_function.go | 52 ++ .../development/enum_mav_battery_mode.go | 48 ++ .../development/enum_mav_battery_type.go | 52 ++ pkg/dialects/development/enum_mav_cmd.go | 385 ++++++++++++++ pkg/dialects/development/enum_mav_cmd_ack.go | 60 +++ .../development/enum_mav_collision_action.go | 56 ++ .../development/enum_mav_collision_src.go | 46 ++ .../enum_mav_collision_threat_level.go | 48 ++ .../development/enum_mav_component.go | 310 +++++++++++ .../development/enum_mav_data_stream.go | 62 +++ .../development/enum_mav_distance_sensor.go | 52 ++ .../enum_mav_do_reposition_flags.go | 44 ++ .../development/enum_mav_estimator_type.go | 60 +++ .../enum_mav_event_current_sequence_flags.go | 44 ++ .../enum_mav_event_error_reason.go | 44 ++ pkg/dialects/development/enum_mav_frame.go | 100 ++++ .../enum_mav_generator_status_flag.go | 88 ++++ pkg/dialects/development/enum_mav_goto.go | 50 ++ .../development/enum_mav_landed_state.go | 52 ++ .../development/enum_mav_mission_result.go | 74 +++ .../development/enum_mav_mission_type.go | 50 ++ pkg/dialects/development/enum_mav_mode.go | 65 +++ .../development/enum_mav_mode_flag.go | 58 +++ .../enum_mav_mode_flag_decode_position.go | 58 +++ .../development/enum_mav_mount_mode.go | 56 ++ .../development/enum_mav_odid_auth_type.go | 53 ++ .../development/enum_mav_odid_category_eu.go | 49 ++ .../development/enum_mav_odid_class_eu.go | 57 +++ .../enum_mav_odid_classification_type.go | 45 ++ .../development/enum_mav_odid_desc_type.go | 43 ++ .../development/enum_mav_odid_height_ref.go | 45 ++ .../development/enum_mav_odid_hor_acc.go | 67 +++ .../development/enum_mav_odid_id_type.go | 51 ++ .../enum_mav_odid_operator_id_type.go | 43 ++ .../enum_mav_odid_operator_location_type.go | 47 ++ .../development/enum_mav_odid_speed_acc.go | 51 ++ .../development/enum_mav_odid_status.go | 49 ++ .../development/enum_mav_odid_time_acc.go | 73 +++ .../development/enum_mav_odid_ua_type.go | 73 +++ .../development/enum_mav_odid_ver_acc.go | 55 ++ .../development/enum_mav_param_ext_type.go | 64 +++ .../development/enum_mav_param_type.go | 62 +++ .../development/enum_mav_power_status.go | 54 ++ .../enum_mav_protocol_capability.go | 78 +++ pkg/dialects/development/enum_mav_result.go | 56 ++ pkg/dialects/development/enum_mav_roi.go | 54 ++ .../enum_mav_sensor_orientation.go | 126 +++++ pkg/dialects/development/enum_mav_severity.go | 58 +++ pkg/dialects/development/enum_mav_state.go | 59 +++ .../development/enum_mav_sys_status_sensor.go | 106 ++++ .../enum_mav_sys_status_sensor_extended.go | 44 ++ .../enum_mav_tunnel_payload_type.go | 63 +++ pkg/dialects/development/enum_mav_type.go | 126 +++++ .../development/enum_mav_vtol_state.go | 52 ++ .../development/enum_mav_winch_status_flag.go | 64 +++ .../enum_mavlink_data_stream_type.go | 47 ++ .../development/enum_motor_test_order.go | 48 ++ .../enum_motor_test_throttle_type.go | 50 ++ .../development/enum_nav_vtol_land_options.go | 48 ++ .../development/enum_orbit_yaw_behaviour.go | 52 ++ .../development/enum_parachute_action.go | 48 ++ pkg/dialects/development/enum_param_ack.go | 50 ++ .../enum_param_transaction_action.go | 48 ++ .../enum_param_transaction_transport.go | 46 ++ .../enum_position_target_typemask.go | 66 +++ .../development/enum_precision_land_mode.go | 48 ++ pkg/dialects/development/enum_rc_type.go | 46 ++ .../enum_rtk_baseline_coordinate_system.go | 46 ++ .../development/enum_serial_control_dev.go | 72 +++ .../development/enum_serial_control_flag.go | 52 ++ .../development/enum_set_focus_type.go | 56 ++ .../development/enum_storage_status.go | 50 ++ pkg/dialects/development/enum_storage_type.go | 60 +++ .../development/enum_storage_usage_flag.go | 50 ++ pkg/dialects/development/enum_tune_format.go | 46 ++ .../development/enum_uavcan_node_health.go | 50 ++ .../development/enum_uavcan_node_mode.go | 52 ++ .../development/enum_utm_data_avail_flags.go | 58 +++ .../development/enum_utm_flight_state.go | 52 ++ .../enum_video_stream_status_flags.go | 46 ++ .../development/enum_video_stream_type.go | 50 ++ .../enum_vtol_transition_heading.go | 52 ++ .../development/enum_wifi_config_ap_mode.go | 50 ++ .../enum_wifi_config_ap_response.go | 54 ++ .../development/enum_wifi_network_security.go | 54 ++ .../development/enum_winch_actions.go | 60 +++ .../msg_actuator_control_target.go | 18 + .../development/msg_actuator_output_status.go | 18 + pkg/dialects/development/msg_adsb_vehicle.go | 38 ++ pkg/dialects/development/msg_airspeed.go | 26 + pkg/dialects/development/msg_ais_vessel.go | 46 ++ pkg/dialects/development/msg_altitude.go | 26 + pkg/dialects/development/msg_att_pos_mocap.go | 24 + pkg/dialects/development/msg_attitude.go | 26 + .../development/msg_attitude_quaternion.go | 30 ++ .../msg_attitude_quaternion_cov.go | 24 + .../development/msg_attitude_target.go | 26 + pkg/dialects/development/msg_auth_key.go | 14 + .../msg_autopilot_state_for_gimbal_device.go | 36 ++ .../development/msg_autopilot_version.go | 36 ++ .../development/msg_battery_status.go | 40 ++ pkg/dialects/development/msg_button_change.go | 18 + .../development/msg_camera_capture_status.go | 26 + .../development/msg_camera_fov_status.go | 32 ++ .../development/msg_camera_image_captured.go | 40 ++ .../development/msg_camera_information.go | 38 ++ .../development/msg_camera_settings.go | 20 + .../msg_camera_tracking_geo_status.go | 38 ++ .../msg_camera_tracking_image_status.go | 32 ++ .../development/msg_camera_trigger.go | 16 + .../development/msg_cellular_config.go | 30 ++ .../development/msg_cellular_status.go | 26 + .../msg_change_operator_control.go | 20 + .../msg_change_operator_control_ack.go | 18 + pkg/dialects/development/msg_collision.go | 26 + pkg/dialects/development/msg_command_ack.go | 24 + .../development/msg_command_cancel.go | 18 + pkg/dialects/development/msg_command_int.go | 38 ++ pkg/dialects/development/msg_command_long.go | 34 ++ .../development/msg_component_information.go | 22 + .../msg_component_information_basic.go | 24 + .../development/msg_control_system_state.go | 46 ++ .../development/msg_current_event_sequence.go | 16 + pkg/dialects/development/msg_data_stream.go | 18 + .../msg_data_transmission_handshake.go | 26 + pkg/dialects/development/msg_debug.go | 18 + .../development/msg_debug_float_array.go | 20 + pkg/dialects/development/msg_debug_vect.go | 22 + .../development/msg_distance_sensor.go | 36 ++ pkg/dialects/development/msg_efi_status.go | 46 ++ .../development/msg_encapsulated_data.go | 16 + pkg/dialects/development/msg_esc_info.go | 30 ++ pkg/dialects/development/msg_esc_status.go | 22 + .../development/msg_estimator_status.go | 32 ++ pkg/dialects/development/msg_event.go | 26 + .../development/msg_extended_sys_state.go | 16 + pkg/dialects/development/msg_fence_status.go | 22 + .../development/msg_file_transfer_protocol.go | 20 + .../development/msg_flight_information.go | 21 + pkg/dialects/development/msg_follow_target.go | 34 ++ .../development/msg_generator_status.go | 34 ++ .../msg_gimbal_device_attitude_status.go | 30 ++ .../msg_gimbal_device_information.go | 42 ++ .../msg_gimbal_device_set_attitude.go | 26 + .../msg_gimbal_manager_information.go | 30 ++ .../msg_gimbal_manager_set_attitude.go | 28 + .../msg_gimbal_manager_set_manual_control.go | 28 + .../msg_gimbal_manager_set_pitchyaw.go | 28 + .../development/msg_gimbal_manager_status.go | 26 + .../development/msg_global_position_int.go | 31 ++ .../msg_global_position_int_cov.go | 32 ++ .../msg_global_vision_position_estimate.go | 30 ++ pkg/dialects/development/msg_gps2_raw.go | 48 ++ pkg/dialects/development/msg_gps2_rtk.go | 38 ++ .../development/msg_gps_global_origin.go | 20 + .../development/msg_gps_inject_data.go | 20 + pkg/dialects/development/msg_gps_input.go | 50 ++ pkg/dialects/development/msg_gps_raw_int.go | 45 ++ pkg/dialects/development/msg_gps_rtcm_data.go | 18 + pkg/dialects/development/msg_gps_rtk.go | 38 ++ pkg/dialects/development/msg_gps_status.go | 24 + pkg/dialects/development/msg_group_end.go | 19 + pkg/dialects/development/msg_group_start.go | 19 + pkg/dialects/development/msg_heartbeat.go | 24 + pkg/dialects/development/msg_high_latency.go | 60 +++ pkg/dialects/development/msg_high_latency2.go | 66 +++ pkg/dialects/development/msg_highres_imu.go | 44 ++ .../development/msg_hil_actuator_controls.go | 20 + pkg/dialects/development/msg_hil_controls.go | 34 ++ pkg/dialects/development/msg_hil_gps.go | 43 ++ .../development/msg_hil_optical_flow.go | 36 ++ .../development/msg_hil_rc_inputs_raw.go | 40 ++ pkg/dialects/development/msg_hil_sensor.go | 44 ++ pkg/dialects/development/msg_hil_state.go | 44 ++ .../development/msg_hil_state_quaternion.go | 44 ++ pkg/dialects/development/msg_home_position.go | 34 ++ .../development/msg_hygrometer_sensor.go | 18 + .../development/msg_isbd_link_status.go | 28 + .../development/msg_landing_target.go | 40 ++ .../development/msg_link_node_status.go | 34 ++ .../development/msg_local_position_ned.go | 26 + .../development/msg_local_position_ned_cov.go | 36 ++ ...local_position_ned_system_global_offset.go | 26 + pkg/dialects/development/msg_log_data.go | 20 + pkg/dialects/development/msg_log_entry.go | 22 + pkg/dialects/development/msg_log_erase.go | 16 + .../development/msg_log_request_data.go | 22 + .../development/msg_log_request_end.go | 16 + .../development/msg_log_request_list.go | 20 + pkg/dialects/development/msg_logging_ack.go | 18 + pkg/dialects/development/msg_logging_data.go | 24 + .../development/msg_logging_data_acked.go | 24 + .../development/msg_mag_cal_report.go | 48 ++ .../development/msg_manual_control.go | 32 ++ .../development/msg_manual_setpoint.go | 26 + pkg/dialects/development/msg_memory_vect.go | 20 + .../development/msg_message_interval.go | 16 + pkg/dialects/development/msg_mission_ack.go | 20 + .../development/msg_mission_changed.go | 22 + .../development/msg_mission_checksum.go | 24 + .../development/msg_mission_clear_all.go | 18 + pkg/dialects/development/msg_mission_count.go | 20 + .../development/msg_mission_current.go | 14 + pkg/dialects/development/msg_mission_item.go | 43 ++ .../development/msg_mission_item_int.go | 43 ++ .../development/msg_mission_item_reached.go | 14 + .../development/msg_mission_request.go | 20 + .../development/msg_mission_request_int.go | 20 + .../development/msg_mission_request_list.go | 18 + .../msg_mission_request_partial_list.go | 22 + .../development/msg_mission_set_current.go | 18 + .../msg_mission_write_partial_list.go | 22 + .../development/msg_mount_orientation.go | 22 + .../development/msg_named_value_float.go | 18 + .../development/msg_named_value_int.go | 18 + .../development/msg_nav_controller_output.go | 28 + .../development/msg_obstacle_distance.go | 30 ++ pkg/dialects/development/msg_odometry.go | 46 ++ .../msg_onboard_computer_status.go | 52 ++ .../msg_open_drone_id_authentication.go | 30 ++ .../development/msg_open_drone_id_basic_id.go | 24 + .../development/msg_open_drone_id_location.go | 50 ++ .../msg_open_drone_id_message_pack.go | 24 + .../msg_open_drone_id_operator_id.go | 22 + .../development/msg_open_drone_id_self_id.go | 22 + .../development/msg_open_drone_id_system.go | 40 ++ pkg/dialects/development/msg_optical_flow.go | 32 ++ .../development/msg_optical_flow_rad.go | 36 ++ .../development/msg_orbit_execution_status.go | 24 + .../development/msg_param_ack_transaction.go | 24 + pkg/dialects/development/msg_param_ext_ack.go | 20 + .../development/msg_param_ext_request_list.go | 16 + .../development/msg_param_ext_request_read.go | 20 + pkg/dialects/development/msg_param_ext_set.go | 22 + .../development/msg_param_ext_value.go | 22 + pkg/dialects/development/msg_param_map_rc.go | 30 ++ .../development/msg_param_request_list.go | 16 + .../development/msg_param_request_read.go | 20 + pkg/dialects/development/msg_param_set.go | 24 + pkg/dialects/development/msg_param_value.go | 22 + pkg/dialects/development/msg_ping.go | 20 + pkg/dialects/development/msg_play_tune.go | 20 + pkg/dialects/development/msg_play_tune_v2.go | 20 + .../msg_position_target_global_int.go | 40 ++ .../msg_position_target_local_ned.go | 40 ++ pkg/dialects/development/msg_power_status.go | 18 + .../development/msg_protocol_version.go | 22 + pkg/dialects/development/msg_radio_status.go | 26 + pkg/dialects/development/msg_raw_imu.go | 36 ++ pkg/dialects/development/msg_raw_pressure.go | 22 + pkg/dialects/development/msg_raw_rpm.go | 16 + pkg/dialects/development/msg_rc_channels.go | 54 ++ .../development/msg_rc_channels_override.go | 52 ++ .../development/msg_rc_channels_raw.go | 34 ++ .../development/msg_rc_channels_scaled.go | 34 ++ .../development/msg_request_data_stream.go | 22 + pkg/dialects/development/msg_request_event.go | 20 + .../development/msg_resource_request.go | 22 + .../development/msg_response_event_error.go | 22 + .../development/msg_safety_allowed_area.go | 26 + .../msg_safety_set_allowed_area.go | 30 ++ pkg/dialects/development/msg_scaled_imu.go | 34 ++ pkg/dialects/development/msg_scaled_imu2.go | 34 ++ pkg/dialects/development/msg_scaled_imu3.go | 34 ++ .../development/msg_scaled_pressure.go | 22 + .../development/msg_scaled_pressure2.go | 22 + .../development/msg_scaled_pressure3.go | 22 + .../development/msg_serial_control.go | 28 + .../development/msg_servo_output_raw.go | 48 ++ .../msg_set_actuator_control_target.go | 22 + .../development/msg_set_attitude_target.go | 32 ++ .../development/msg_set_gps_global_origin.go | 22 + .../development/msg_set_home_position.go | 36 ++ pkg/dialects/development/msg_set_mode.go | 18 + .../msg_set_position_target_global_int.go | 44 ++ .../msg_set_position_target_local_ned.go | 44 ++ pkg/dialects/development/msg_setup_signing.go | 20 + pkg/dialects/development/msg_sim_state.go | 54 ++ .../development/msg_smart_battery_info.go | 46 ++ pkg/dialects/development/msg_statustext.go | 20 + .../development/msg_storage_information.go | 39 ++ .../development/msg_supported_tunes.go | 18 + pkg/dialects/development/msg_sys_status.go | 44 ++ pkg/dialects/development/msg_system_time.go | 16 + pkg/dialects/development/msg_terrain_check.go | 16 + pkg/dialects/development/msg_terrain_data.go | 22 + .../development/msg_terrain_report.go | 26 + .../development/msg_terrain_request.go | 20 + .../msg_time_estimate_to_target.go | 22 + pkg/dialects/development/msg_timesync.go | 16 + .../msg_trajectory_representation_bezier.go | 26 + ...msg_trajectory_representation_waypoints.go | 40 ++ pkg/dialects/development/msg_tunnel.go | 22 + .../development/msg_uavcan_node_info.go | 30 ++ .../development/msg_uavcan_node_status.go | 24 + .../development/msg_utm_global_position.go | 48 ++ pkg/dialects/development/msg_v2_extension.go | 22 + pkg/dialects/development/msg_vfr_hud.go | 24 + pkg/dialects/development/msg_vibration.go | 26 + .../msg_vicon_position_estimate.go | 28 + .../msg_video_stream_information.go | 36 ++ .../development/msg_video_stream_status.go | 28 + .../msg_vision_position_estimate.go | 30 ++ .../development/msg_vision_speed_estimate.go | 24 + .../development/msg_wheel_distance.go | 18 + .../development/msg_wifi_config_ap.go | 20 + .../development/msg_wifi_network_info.go | 22 + pkg/dialects/development/msg_winch_status.go | 28 + pkg/dialects/development/msg_wind_cov.go | 30 ++ .../enum_mav_protocol_capability.go | 12 +- .../matrixpilot/msg_component_information.go | 4 +- .../matrixpilot/msg_flight_information.go | 1 + pkg/dialects/package_test.go | 20 + .../paparazzi/enum_mav_protocol_capability.go | 12 +- .../paparazzi/msg_component_information.go | 4 +- .../paparazzi/msg_flight_information.go | 1 + .../enum_mav_protocol_capability.go | 12 +- .../msg_component_information.go | 4 +- .../pythonarraytest/msg_flight_information.go | 1 + .../standard/enum_mav_protocol_capability.go | 12 +- .../standard/msg_component_information.go | 4 +- .../standard/msg_flight_information.go | 1 + pkg/dialects/storm32/dialect.go | 319 ++++++++++++ .../storm32/enum_accelcal_vehicle_pos.go | 49 ++ .../storm32/enum_actuator_configuration.go | 54 ++ .../storm32/enum_actuator_output_function.go | 108 ++++ .../storm32/enum_adsb_altitude_type.go | 46 ++ .../storm32/enum_adsb_emitter_type.go | 62 +++ pkg/dialects/storm32/enum_adsb_flags.go | 52 ++ pkg/dialects/storm32/enum_ais_flags.go | 62 +++ pkg/dialects/storm32/enum_ais_nav_status.go | 61 +++ pkg/dialects/storm32/enum_ais_type.go | 150 ++++++ .../storm32/enum_attitude_target_typemask.go | 54 ++ pkg/dialects/storm32/enum_autotune_axis.go | 50 ++ pkg/dialects/storm32/enum_camera_cap_flags.go | 66 +++ .../storm32/enum_camera_feedback_flags.go | 51 ++ pkg/dialects/storm32/enum_camera_mode.go | 48 ++ .../storm32/enum_camera_status_types.go | 55 ++ .../storm32/enum_camera_tracking_mode.go | 48 ++ .../enum_camera_tracking_status_flags.go | 48 ++ .../enum_camera_tracking_target_data.go | 50 ++ pkg/dialects/storm32/enum_camera_zoom_type.go | 50 ++ .../storm32/enum_cellular_config_response.go | 52 ++ .../enum_cellular_network_failed_reason.go | 50 ++ .../enum_cellular_network_radio_type.go | 47 ++ .../storm32/enum_cellular_status_flag.go | 68 +++ .../storm32/enum_comp_metadata_type.go | 54 ++ pkg/dialects/storm32/enum_copter_mode.go | 67 +++ pkg/dialects/storm32/enum_deepstall_stage.go | 56 ++ .../storm32/enum_device_op_bustype.go | 46 ++ pkg/dialects/storm32/enum_ekf_status_flags.go | 64 +++ .../storm32/enum_esc_connection_type.go | 54 ++ .../storm32/enum_esc_failure_flags.go | 58 +++ .../storm32/enum_estimator_status_flags.go | 66 +++ pkg/dialects/storm32/enum_failure_type.go | 58 +++ pkg/dialects/storm32/enum_failure_unit.go | 57 +++ pkg/dialects/storm32/enum_fence_action.go | 58 +++ pkg/dialects/storm32/enum_fence_breach.go | 49 ++ pkg/dialects/storm32/enum_fence_mitigate.go | 48 ++ .../storm32/enum_firmware_version_type.go | 52 ++ pkg/dialects/storm32/enum_gimbal_axis.go | 47 ++ .../enum_gimbal_axis_calibration_required.go | 47 ++ .../enum_gimbal_axis_calibration_status.go | 47 ++ .../storm32/enum_gimbal_device_cap_flags.go | 66 +++ .../storm32/enum_gimbal_device_error_flags.go | 60 +++ .../storm32/enum_gimbal_device_flags.go | 52 ++ .../storm32/enum_gimbal_manager_cap_flags.go | 70 +++ .../storm32/enum_gimbal_manager_flags.go | 52 ++ pkg/dialects/storm32/enum_gopro_burst_rate.go | 59 +++ .../storm32/enum_gopro_capture_mode.go | 57 +++ pkg/dialects/storm32/enum_gopro_charging.go | 45 ++ pkg/dialects/storm32/enum_gopro_command.go | 75 +++ .../storm32/enum_gopro_field_of_view.go | 47 ++ pkg/dialects/storm32/enum_gopro_frame_rate.go | 69 +++ .../storm32/enum_gopro_heartbeat_flags.go | 43 ++ .../storm32/enum_gopro_heartbeat_status.go | 49 ++ pkg/dialects/storm32/enum_gopro_model.go | 51 ++ .../storm32/enum_gopro_photo_resolution.go | 51 ++ .../storm32/enum_gopro_protune_colour.go | 45 ++ .../storm32/enum_gopro_protune_exposure.go | 83 +++ .../storm32/enum_gopro_protune_gain.go | 51 ++ .../storm32/enum_gopro_protune_sharpness.go | 47 ++ .../enum_gopro_protune_white_balance.go | 51 ++ .../storm32/enum_gopro_request_status.go | 45 ++ pkg/dialects/storm32/enum_gopro_resolution.go | 69 +++ .../enum_gopro_video_settings_flags.go | 43 ++ pkg/dialects/storm32/enum_gps_fix_type.go | 60 +++ .../storm32/enum_gps_input_ignore_flags.go | 57 +++ pkg/dialects/storm32/enum_gripper_actions.go | 46 ++ pkg/dialects/storm32/enum_heading_type.go | 43 ++ .../storm32/enum_highres_imu_updated_flags.go | 72 +++ .../storm32/enum_hil_sensor_updated_flags.go | 72 +++ pkg/dialects/storm32/enum_hl_failure_flag.go | 70 +++ .../storm32/enum_icarous_fms_state.go | 47 ++ .../storm32/enum_icarous_track_band_types.go | 44 ++ .../storm32/enum_landing_target_type.go | 50 ++ .../storm32/enum_led_control_pattern.go | 47 ++ pkg/dialects/storm32/enum_limit_module.go | 47 ++ pkg/dialects/storm32/enum_limits_state.go | 53 ++ pkg/dialects/storm32/enum_mag_cal_status.go | 49 ++ .../enum_mav_arm_auth_denied_reason.go | 53 ++ pkg/dialects/storm32/enum_mav_autopilot.go | 84 +++ .../storm32/enum_mav_battery_charge_state.go | 58 +++ .../storm32/enum_mav_battery_fault.go | 60 +++ .../storm32/enum_mav_battery_function.go | 52 ++ pkg/dialects/storm32/enum_mav_battery_mode.go | 48 ++ pkg/dialects/storm32/enum_mav_battery_type.go | 52 ++ pkg/dialects/storm32/enum_mav_cmd.go | 430 ++++++++++++++++ pkg/dialects/storm32/enum_mav_cmd_ack.go | 60 +++ ...um_mav_cmd_do_aux_function_switch_level.go | 47 ++ .../storm32/enum_mav_collision_action.go | 56 ++ .../storm32/enum_mav_collision_src.go | 46 ++ .../enum_mav_collision_threat_level.go | 48 ++ pkg/dialects/storm32/enum_mav_component.go | 310 +++++++++++ pkg/dialects/storm32/enum_mav_data_stream.go | 62 +++ .../storm32/enum_mav_distance_sensor.go | 52 ++ .../storm32/enum_mav_do_reposition_flags.go | 44 ++ .../storm32/enum_mav_estimator_type.go | 60 +++ .../enum_mav_event_current_sequence_flags.go | 44 ++ .../storm32/enum_mav_event_error_reason.go | 44 ++ pkg/dialects/storm32/enum_mav_frame.go | 100 ++++ .../storm32/enum_mav_generator_status_flag.go | 88 ++++ pkg/dialects/storm32/enum_mav_goto.go | 50 ++ pkg/dialects/storm32/enum_mav_landed_state.go | 52 ++ .../storm32/enum_mav_mission_result.go | 74 +++ pkg/dialects/storm32/enum_mav_mission_type.go | 50 ++ pkg/dialects/storm32/enum_mav_mode.go | 65 +++ pkg/dialects/storm32/enum_mav_mode_flag.go | 58 +++ .../enum_mav_mode_flag_decode_position.go | 58 +++ pkg/dialects/storm32/enum_mav_mode_gimbal.go | 55 ++ pkg/dialects/storm32/enum_mav_mount_mode.go | 56 ++ .../storm32/enum_mav_odid_auth_type.go | 53 ++ .../storm32/enum_mav_odid_category_eu.go | 49 ++ .../storm32/enum_mav_odid_class_eu.go | 57 +++ .../enum_mav_odid_classification_type.go | 45 ++ .../storm32/enum_mav_odid_desc_type.go | 43 ++ .../storm32/enum_mav_odid_height_ref.go | 45 ++ pkg/dialects/storm32/enum_mav_odid_hor_acc.go | 67 +++ pkg/dialects/storm32/enum_mav_odid_id_type.go | 51 ++ .../storm32/enum_mav_odid_operator_id_type.go | 43 ++ .../enum_mav_odid_operator_location_type.go | 47 ++ .../storm32/enum_mav_odid_speed_acc.go | 51 ++ pkg/dialects/storm32/enum_mav_odid_status.go | 49 ++ .../storm32/enum_mav_odid_time_acc.go | 73 +++ pkg/dialects/storm32/enum_mav_odid_ua_type.go | 73 +++ pkg/dialects/storm32/enum_mav_odid_ver_acc.go | 55 ++ .../storm32/enum_mav_param_ext_type.go | 64 +++ pkg/dialects/storm32/enum_mav_param_type.go | 62 +++ pkg/dialects/storm32/enum_mav_power_status.go | 54 ++ .../storm32/enum_mav_protocol_capability.go | 78 +++ pkg/dialects/storm32/enum_mav_qshot_mode.go | 62 +++ ...enum_mav_remote_log_data_block_commands.go | 46 ++ ...enum_mav_remote_log_data_block_statuses.go | 46 ++ pkg/dialects/storm32/enum_mav_result.go | 56 ++ pkg/dialects/storm32/enum_mav_roi.go | 54 ++ .../storm32/enum_mav_sensor_orientation.go | 126 +++++ pkg/dialects/storm32/enum_mav_severity.go | 58 +++ pkg/dialects/storm32/enum_mav_state.go | 59 +++ .../enum_mav_storm32_camera_prearm_flags.go | 44 ++ .../storm32/enum_mav_storm32_gimbal_action.go | 48 ++ ...num_mav_storm32_gimbal_device_cap_flags.go | 70 +++ ...m_mav_storm32_gimbal_device_error_flags.go | 62 +++ .../enum_mav_storm32_gimbal_device_flags.go | 62 +++ ...um_mav_storm32_gimbal_manager_cap_flags.go | 46 ++ .../enum_mav_storm32_gimbal_manager_client.go | 60 +++ .../enum_mav_storm32_gimbal_manager_flags.go | 66 +++ ...enum_mav_storm32_gimbal_manager_profile.go | 54 ++ ..._mav_storm32_gimbal_manager_setup_flags.go | 46 ++ .../enum_mav_storm32_gimbal_prearm_flags.go | 68 +++ .../enum_mav_storm32_tunnel_payload_type.go | 61 +++ .../storm32/enum_mav_sys_status_sensor.go | 106 ++++ .../enum_mav_sys_status_sensor_extended.go | 44 ++ .../storm32/enum_mav_tunnel_payload_type.go | 63 +++ pkg/dialects/storm32/enum_mav_type.go | 126 +++++ pkg/dialects/storm32/enum_mav_vtol_state.go | 52 ++ .../storm32/enum_mav_winch_status_flag.go | 64 +++ .../storm32/enum_mavlink_data_stream_type.go | 47 ++ pkg/dialects/storm32/enum_motor_test_order.go | 48 ++ .../storm32/enum_motor_test_throttle_type.go | 50 ++ .../storm32/enum_nav_vtol_land_options.go | 48 ++ .../storm32/enum_orbit_yaw_behaviour.go | 52 ++ .../storm32/enum_osd_param_config_error.go | 46 ++ .../storm32/enum_osd_param_config_type.go | 51 ++ pkg/dialects/storm32/enum_parachute_action.go | 48 ++ pkg/dialects/storm32/enum_param_ack.go | 50 ++ pkg/dialects/storm32/enum_pid_tuning_axis.go | 47 ++ pkg/dialects/storm32/enum_plane_mode.go | 66 +++ .../storm32/enum_position_target_typemask.go | 66 +++ .../storm32/enum_precision_land_mode.go | 48 ++ pkg/dialects/storm32/enum_rally_flags.go | 46 ++ pkg/dialects/storm32/enum_rc_type.go | 46 ++ pkg/dialects/storm32/enum_rover_mode.go | 54 ++ .../enum_rtk_baseline_coordinate_system.go | 46 ++ pkg/dialects/storm32/enum_scripting_cmd.go | 49 ++ .../storm32/enum_serial_control_dev.go | 72 +++ .../storm32/enum_serial_control_flag.go | 52 ++ pkg/dialects/storm32/enum_set_focus_type.go | 56 ++ pkg/dialects/storm32/enum_speed_type.go | 43 ++ pkg/dialects/storm32/enum_storage_status.go | 50 ++ pkg/dialects/storm32/enum_storage_type.go | 60 +++ .../storm32/enum_storage_usage_flag.go | 50 ++ pkg/dialects/storm32/enum_sub_mode.go | 51 ++ pkg/dialects/storm32/enum_tracker_mode.go | 48 ++ pkg/dialects/storm32/enum_tune_format.go | 46 ++ .../storm32/enum_uavcan_node_health.go | 50 ++ pkg/dialects/storm32/enum_uavcan_node_mode.go | 52 ++ .../enum_uavionix_adsb_emergency_status.go | 50 ++ ...num_uavionix_adsb_out_cfg_aircraft_size.go | 58 +++ ...um_uavionix_adsb_out_cfg_gps_offset_lat.go | 50 ++ ...um_uavionix_adsb_out_cfg_gps_offset_lon.go | 44 ++ .../enum_uavionix_adsb_out_dynamic_gps_fix.go | 48 ++ .../enum_uavionix_adsb_out_dynamic_state.go | 47 ++ .../enum_uavionix_adsb_out_rf_select.go | 45 ++ .../storm32/enum_uavionix_adsb_rf_health.go | 46 ++ .../storm32/enum_utm_data_avail_flags.go | 58 +++ pkg/dialects/storm32/enum_utm_flight_state.go | 52 ++ .../storm32/enum_video_stream_status_flags.go | 46 ++ .../storm32/enum_video_stream_type.go | 50 ++ .../storm32/enum_vtol_transition_heading.go | 52 ++ .../storm32/enum_wifi_config_ap_mode.go | 50 ++ .../storm32/enum_wifi_config_ap_response.go | 54 ++ pkg/dialects/storm32/enum_winch_actions.go | 60 +++ .../storm32/msg_actuator_control_target.go | 18 + .../storm32/msg_actuator_output_status.go | 18 + pkg/dialects/storm32/msg_adap_tuning.go | 38 ++ pkg/dialects/storm32/msg_adsb_vehicle.go | 38 ++ pkg/dialects/storm32/msg_ahrs.go | 26 + pkg/dialects/storm32/msg_ahrs2.go | 24 + pkg/dialects/storm32/msg_ahrs3.go | 32 ++ pkg/dialects/storm32/msg_airspeed_autocal.go | 36 ++ pkg/dialects/storm32/msg_ais_vessel.go | 46 ++ pkg/dialects/storm32/msg_altitude.go | 26 + pkg/dialects/storm32/msg_aoa_ssa.go | 18 + pkg/dialects/storm32/msg_ap_adc.go | 24 + pkg/dialects/storm32/msg_att_pos_mocap.go | 24 + pkg/dialects/storm32/msg_attitude.go | 26 + .../storm32/msg_attitude_quaternion.go | 30 ++ .../storm32/msg_attitude_quaternion_cov.go | 24 + pkg/dialects/storm32/msg_attitude_target.go | 26 + pkg/dialects/storm32/msg_auth_key.go | 14 + .../msg_autopilot_state_for_gimbal_device.go | 36 ++ pkg/dialects/storm32/msg_autopilot_version.go | 36 ++ .../storm32/msg_autopilot_version_request.go | 16 + pkg/dialects/storm32/msg_battery2.go | 16 + pkg/dialects/storm32/msg_battery_status.go | 40 ++ pkg/dialects/storm32/msg_button_change.go | 18 + .../storm32/msg_camera_capture_status.go | 26 + pkg/dialects/storm32/msg_camera_feedback.go | 40 ++ pkg/dialects/storm32/msg_camera_fov_status.go | 32 ++ .../storm32/msg_camera_image_captured.go | 40 ++ .../storm32/msg_camera_information.go | 38 ++ pkg/dialects/storm32/msg_camera_settings.go | 20 + pkg/dialects/storm32/msg_camera_status.go | 30 ++ .../storm32/msg_camera_tracking_geo_status.go | 38 ++ .../msg_camera_tracking_image_status.go | 32 ++ pkg/dialects/storm32/msg_camera_trigger.go | 16 + pkg/dialects/storm32/msg_cellular_config.go | 30 ++ pkg/dialects/storm32/msg_cellular_status.go | 26 + .../storm32/msg_change_operator_control.go | 20 + .../msg_change_operator_control_ack.go | 18 + pkg/dialects/storm32/msg_collision.go | 26 + pkg/dialects/storm32/msg_command_ack.go | 24 + pkg/dialects/storm32/msg_command_cancel.go | 18 + pkg/dialects/storm32/msg_command_int.go | 38 ++ pkg/dialects/storm32/msg_command_long.go | 34 ++ pkg/dialects/storm32/msg_compassmot_status.go | 24 + .../storm32/msg_component_information.go | 22 + .../storm32/msg_component_prearm_status.go | 20 + .../storm32/msg_control_system_state.go | 46 ++ .../storm32/msg_current_event_sequence.go | 16 + pkg/dialects/storm32/msg_data16.go | 18 + pkg/dialects/storm32/msg_data32.go | 18 + pkg/dialects/storm32/msg_data64.go | 18 + pkg/dialects/storm32/msg_data96.go | 18 + pkg/dialects/storm32/msg_data_stream.go | 18 + .../msg_data_transmission_handshake.go | 26 + pkg/dialects/storm32/msg_debug.go | 18 + pkg/dialects/storm32/msg_debug_float_array.go | 20 + pkg/dialects/storm32/msg_debug_vect.go | 22 + pkg/dialects/storm32/msg_deepstall.go | 32 ++ pkg/dialects/storm32/msg_device_op_read.go | 32 ++ .../storm32/msg_device_op_read_reply.go | 24 + pkg/dialects/storm32/msg_device_op_write.go | 34 ++ .../storm32/msg_device_op_write_reply.go | 16 + pkg/dialects/storm32/msg_digicam_configure.go | 34 ++ pkg/dialects/storm32/msg_digicam_control.go | 32 ++ pkg/dialects/storm32/msg_distance_sensor.go | 36 ++ pkg/dialects/storm32/msg_efi_status.go | 46 ++ pkg/dialects/storm32/msg_ekf_status_report.go | 26 + pkg/dialects/storm32/msg_encapsulated_data.go | 16 + pkg/dialects/storm32/msg_esc_info.go | 30 ++ pkg/dialects/storm32/msg_esc_status.go | 22 + .../storm32/msg_esc_telemetry_1_to_4.go | 24 + .../storm32/msg_esc_telemetry_5_to_8.go | 24 + .../storm32/msg_esc_telemetry_9_to_12.go | 24 + pkg/dialects/storm32/msg_estimator_status.go | 32 ++ pkg/dialects/storm32/msg_event.go | 26 + .../storm32/msg_extended_sys_state.go | 16 + pkg/dialects/storm32/msg_fence_fetch_point.go | 18 + pkg/dialects/storm32/msg_fence_point.go | 24 + pkg/dialects/storm32/msg_fence_status.go | 22 + .../storm32/msg_file_transfer_protocol.go | 20 + .../storm32/msg_flight_information.go | 21 + pkg/dialects/storm32/msg_follow_target.go | 34 ++ pkg/dialects/storm32/msg_generator_status.go | 34 ++ pkg/dialects/storm32/msg_gimbal_control.go | 22 + .../msg_gimbal_device_attitude_status.go | 30 ++ .../storm32/msg_gimbal_device_information.go | 42 ++ .../storm32/msg_gimbal_device_set_attitude.go | 26 + .../storm32/msg_gimbal_manager_information.go | 30 ++ .../msg_gimbal_manager_set_attitude.go | 28 + .../msg_gimbal_manager_set_manual_control.go | 28 + .../msg_gimbal_manager_set_pitchyaw.go | 28 + .../storm32/msg_gimbal_manager_status.go | 26 + pkg/dialects/storm32/msg_gimbal_report.go | 36 ++ .../storm32/msg_gimbal_torque_cmd_report.go | 22 + .../storm32/msg_global_position_int.go | 31 ++ .../storm32/msg_global_position_int_cov.go | 32 ++ .../msg_global_vision_position_estimate.go | 30 ++ pkg/dialects/storm32/msg_gopro_get_request.go | 18 + .../storm32/msg_gopro_get_response.go | 18 + pkg/dialects/storm32/msg_gopro_heartbeat.go | 18 + pkg/dialects/storm32/msg_gopro_set_request.go | 20 + .../storm32/msg_gopro_set_response.go | 16 + pkg/dialects/storm32/msg_gps2_raw.go | 48 ++ pkg/dialects/storm32/msg_gps2_rtk.go | 38 ++ pkg/dialects/storm32/msg_gps_global_origin.go | 20 + pkg/dialects/storm32/msg_gps_inject_data.go | 20 + pkg/dialects/storm32/msg_gps_input.go | 50 ++ pkg/dialects/storm32/msg_gps_raw_int.go | 45 ++ pkg/dialects/storm32/msg_gps_rtcm_data.go | 18 + pkg/dialects/storm32/msg_gps_rtk.go | 38 ++ pkg/dialects/storm32/msg_gps_status.go | 24 + pkg/dialects/storm32/msg_heartbeat.go | 24 + pkg/dialects/storm32/msg_high_latency.go | 60 +++ pkg/dialects/storm32/msg_high_latency2.go | 66 +++ pkg/dialects/storm32/msg_highres_imu.go | 44 ++ .../storm32/msg_hil_actuator_controls.go | 20 + pkg/dialects/storm32/msg_hil_controls.go | 34 ++ pkg/dialects/storm32/msg_hil_gps.go | 43 ++ pkg/dialects/storm32/msg_hil_optical_flow.go | 36 ++ pkg/dialects/storm32/msg_hil_rc_inputs_raw.go | 40 ++ pkg/dialects/storm32/msg_hil_sensor.go | 44 ++ pkg/dialects/storm32/msg_hil_state.go | 44 ++ .../storm32/msg_hil_state_quaternion.go | 44 ++ pkg/dialects/storm32/msg_home_position.go | 34 ++ pkg/dialects/storm32/msg_hwstatus.go | 16 + pkg/dialects/storm32/msg_hygrometer_sensor.go | 18 + pkg/dialects/storm32/msg_icarous_heartbeat.go | 14 + .../storm32/msg_icarous_kinematic_bands.go | 44 ++ pkg/dialects/storm32/msg_isbd_link_status.go | 28 + pkg/dialects/storm32/msg_landing_target.go | 40 ++ pkg/dialects/storm32/msg_led_control.go | 24 + pkg/dialects/storm32/msg_limits_status.go | 30 ++ pkg/dialects/storm32/msg_link_node_status.go | 34 ++ .../storm32/msg_local_position_ned.go | 26 + .../storm32/msg_local_position_ned_cov.go | 36 ++ ...local_position_ned_system_global_offset.go | 26 + pkg/dialects/storm32/msg_log_data.go | 20 + pkg/dialects/storm32/msg_log_entry.go | 22 + pkg/dialects/storm32/msg_log_erase.go | 16 + pkg/dialects/storm32/msg_log_request_data.go | 22 + pkg/dialects/storm32/msg_log_request_end.go | 16 + pkg/dialects/storm32/msg_log_request_list.go | 20 + pkg/dialects/storm32/msg_logging_ack.go | 18 + pkg/dialects/storm32/msg_logging_data.go | 24 + .../storm32/msg_logging_data_acked.go | 24 + pkg/dialects/storm32/msg_mag_cal_progress.go | 30 ++ pkg/dialects/storm32/msg_mag_cal_report.go | 48 ++ pkg/dialects/storm32/msg_manual_control.go | 32 ++ pkg/dialects/storm32/msg_manual_setpoint.go | 26 + pkg/dialects/storm32/msg_mcu_status.go | 22 + pkg/dialects/storm32/msg_meminfo.go | 18 + pkg/dialects/storm32/msg_memory_vect.go | 20 + pkg/dialects/storm32/msg_message_interval.go | 16 + pkg/dialects/storm32/msg_mission_ack.go | 20 + pkg/dialects/storm32/msg_mission_clear_all.go | 18 + pkg/dialects/storm32/msg_mission_count.go | 20 + pkg/dialects/storm32/msg_mission_current.go | 14 + pkg/dialects/storm32/msg_mission_item.go | 43 ++ pkg/dialects/storm32/msg_mission_item_int.go | 43 ++ .../storm32/msg_mission_item_reached.go | 14 + pkg/dialects/storm32/msg_mission_request.go | 20 + .../storm32/msg_mission_request_int.go | 20 + .../storm32/msg_mission_request_list.go | 18 + .../msg_mission_request_partial_list.go | 22 + .../storm32/msg_mission_set_current.go | 18 + .../storm32/msg_mission_write_partial_list.go | 22 + pkg/dialects/storm32/msg_mount_configure.go | 24 + pkg/dialects/storm32/msg_mount_control.go | 24 + pkg/dialects/storm32/msg_mount_orientation.go | 22 + pkg/dialects/storm32/msg_mount_status.go | 24 + pkg/dialects/storm32/msg_named_value_float.go | 18 + pkg/dialects/storm32/msg_named_value_int.go | 18 + .../storm32/msg_nav_controller_output.go | 28 + pkg/dialects/storm32/msg_obstacle_distance.go | 30 ++ .../storm32/msg_obstacle_distance_3d.go | 30 ++ pkg/dialects/storm32/msg_odometry.go | 46 ++ .../storm32/msg_onboard_computer_status.go | 52 ++ .../msg_open_drone_id_authentication.go | 30 ++ .../storm32/msg_open_drone_id_basic_id.go | 24 + .../storm32/msg_open_drone_id_location.go | 50 ++ .../storm32/msg_open_drone_id_message_pack.go | 24 + .../storm32/msg_open_drone_id_operator_id.go | 22 + .../storm32/msg_open_drone_id_self_id.go | 22 + .../storm32/msg_open_drone_id_system.go | 40 ++ pkg/dialects/storm32/msg_optical_flow.go | 32 ++ pkg/dialects/storm32/msg_optical_flow_rad.go | 36 ++ .../storm32/msg_orbit_execution_status.go | 24 + pkg/dialects/storm32/msg_osd_param_config.go | 32 ++ .../storm32/msg_osd_param_config_reply.go | 16 + .../storm32/msg_osd_param_show_config.go | 22 + .../msg_osd_param_show_config_reply.go | 26 + pkg/dialects/storm32/msg_param_ext_ack.go | 20 + .../storm32/msg_param_ext_request_list.go | 16 + .../storm32/msg_param_ext_request_read.go | 20 + pkg/dialects/storm32/msg_param_ext_set.go | 22 + pkg/dialects/storm32/msg_param_ext_value.go | 22 + pkg/dialects/storm32/msg_param_map_rc.go | 30 ++ .../storm32/msg_param_request_list.go | 16 + .../storm32/msg_param_request_read.go | 20 + pkg/dialects/storm32/msg_param_set.go | 24 + pkg/dialects/storm32/msg_param_value.go | 22 + pkg/dialects/storm32/msg_pid_tuning.go | 30 ++ pkg/dialects/storm32/msg_ping.go | 20 + pkg/dialects/storm32/msg_play_tune.go | 20 + pkg/dialects/storm32/msg_play_tune_v2.go | 20 + .../storm32/msg_position_target_global_int.go | 40 ++ .../storm32/msg_position_target_local_ned.go | 40 ++ pkg/dialects/storm32/msg_power_status.go | 18 + pkg/dialects/storm32/msg_protocol_version.go | 22 + pkg/dialects/storm32/msg_qshot_status.go | 16 + pkg/dialects/storm32/msg_radio.go | 26 + pkg/dialects/storm32/msg_radio_status.go | 26 + pkg/dialects/storm32/msg_rally_fetch_point.go | 18 + pkg/dialects/storm32/msg_rally_point.go | 32 ++ pkg/dialects/storm32/msg_rangefinder.go | 16 + pkg/dialects/storm32/msg_raw_imu.go | 36 ++ pkg/dialects/storm32/msg_raw_pressure.go | 22 + pkg/dialects/storm32/msg_raw_rpm.go | 16 + pkg/dialects/storm32/msg_rc_channels.go | 54 ++ .../storm32/msg_rc_channels_override.go | 52 ++ pkg/dialects/storm32/msg_rc_channels_raw.go | 34 ++ .../storm32/msg_rc_channels_scaled.go | 34 ++ .../storm32/msg_remote_log_block_status.go | 20 + .../storm32/msg_remote_log_data_block.go | 20 + .../storm32/msg_request_data_stream.go | 22 + pkg/dialects/storm32/msg_request_event.go | 20 + pkg/dialects/storm32/msg_resource_request.go | 22 + .../storm32/msg_response_event_error.go | 22 + pkg/dialects/storm32/msg_rpm.go | 16 + .../storm32/msg_safety_allowed_area.go | 26 + .../storm32/msg_safety_set_allowed_area.go | 30 ++ pkg/dialects/storm32/msg_scaled_imu.go | 34 ++ pkg/dialects/storm32/msg_scaled_imu2.go | 34 ++ pkg/dialects/storm32/msg_scaled_imu3.go | 34 ++ pkg/dialects/storm32/msg_scaled_pressure.go | 22 + pkg/dialects/storm32/msg_scaled_pressure2.go | 22 + pkg/dialects/storm32/msg_scaled_pressure3.go | 22 + pkg/dialects/storm32/msg_sensor_offsets.go | 36 ++ pkg/dialects/storm32/msg_serial_control.go | 28 + pkg/dialects/storm32/msg_servo_output_raw.go | 48 ++ .../msg_set_actuator_control_target.go | 22 + .../storm32/msg_set_attitude_target.go | 32 ++ .../storm32/msg_set_gps_global_origin.go | 22 + pkg/dialects/storm32/msg_set_home_position.go | 36 ++ pkg/dialects/storm32/msg_set_mag_offsets.go | 22 + pkg/dialects/storm32/msg_set_mode.go | 18 + .../msg_set_position_target_global_int.go | 44 ++ .../msg_set_position_target_local_ned.go | 44 ++ pkg/dialects/storm32/msg_setup_signing.go | 20 + pkg/dialects/storm32/msg_sim_state.go | 54 ++ pkg/dialects/storm32/msg_simstate.go | 34 ++ .../storm32/msg_smart_battery_info.go | 46 ++ pkg/dialects/storm32/msg_statustext.go | 20 + .../storm32/msg_storage_information.go | 39 ++ .../msg_storm32_gimbal_device_control.go | 26 + .../msg_storm32_gimbal_device_status.go | 32 ++ .../msg_storm32_gimbal_manager_control.go | 32 ++ ...storm32_gimbal_manager_control_pitchyaw.go | 32 ++ ...msg_storm32_gimbal_manager_correct_roll.go | 22 + .../msg_storm32_gimbal_manager_information.go | 30 ++ .../msg_storm32_gimbal_manager_profile.go | 28 + .../msg_storm32_gimbal_manager_status.go | 22 + pkg/dialects/storm32/msg_supported_tunes.go | 18 + pkg/dialects/storm32/msg_sys_status.go | 44 ++ pkg/dialects/storm32/msg_system_time.go | 16 + pkg/dialects/storm32/msg_terrain_check.go | 16 + pkg/dialects/storm32/msg_terrain_data.go | 22 + pkg/dialects/storm32/msg_terrain_report.go | 26 + pkg/dialects/storm32/msg_terrain_request.go | 20 + .../storm32/msg_time_estimate_to_target.go | 22 + pkg/dialects/storm32/msg_timesync.go | 16 + .../msg_trajectory_representation_bezier.go | 26 + ...msg_trajectory_representation_waypoints.go | 40 ++ pkg/dialects/storm32/msg_tunnel.go | 22 + pkg/dialects/storm32/msg_uavcan_node_info.go | 30 ++ .../storm32/msg_uavcan_node_status.go | 24 + .../storm32/msg_uavionix_adsb_out_cfg.go | 28 + .../storm32/msg_uavionix_adsb_out_dynamic.go | 44 ++ ...uavionix_adsb_transceiver_health_report.go | 14 + .../storm32/msg_utm_global_position.go | 48 ++ pkg/dialects/storm32/msg_v2_extension.go | 22 + pkg/dialects/storm32/msg_vfr_hud.go | 24 + pkg/dialects/storm32/msg_vibration.go | 26 + .../storm32/msg_vicon_position_estimate.go | 28 + .../storm32/msg_video_stream_information.go | 36 ++ .../storm32/msg_video_stream_status.go | 28 + .../storm32/msg_vision_position_delta.go | 22 + .../storm32/msg_vision_position_estimate.go | 30 ++ .../storm32/msg_vision_speed_estimate.go | 24 + pkg/dialects/storm32/msg_water_depth.go | 34 ++ pkg/dialects/storm32/msg_wheel_distance.go | 18 + pkg/dialects/storm32/msg_wifi_config_ap.go | 20 + pkg/dialects/storm32/msg_winch_status.go | 28 + pkg/dialects/storm32/msg_wind.go | 18 + pkg/dialects/storm32/msg_wind_cov.go | 30 ++ .../ualberta/enum_mav_protocol_capability.go | 12 +- .../ualberta/msg_component_information.go | 4 +- .../ualberta/msg_flight_information.go | 1 + .../uavionix/enum_mav_protocol_capability.go | 12 +- .../uavionix/msg_component_information.go | 4 +- .../uavionix/msg_flight_information.go | 1 + 1772 files changed, 71648 insertions(+), 63 deletions(-) create mode 100644 pkg/dialects/all/dialect.go create mode 100644 pkg/dialects/all/enum_accelcal_vehicle_pos.go create mode 100644 pkg/dialects/all/enum_actuator_configuration.go create mode 100644 pkg/dialects/all/enum_actuator_output_function.go create mode 100644 pkg/dialects/all/enum_adsb_altitude_type.go create mode 100644 pkg/dialects/all/enum_adsb_emitter_type.go create mode 100644 pkg/dialects/all/enum_adsb_flags.go create mode 100644 pkg/dialects/all/enum_airspeed_sensor_type.go create mode 100644 pkg/dialects/all/enum_ais_flags.go create mode 100644 pkg/dialects/all/enum_ais_nav_status.go create mode 100644 pkg/dialects/all/enum_ais_type.go create mode 100644 pkg/dialects/all/enum_attitude_target_typemask.go create mode 100644 pkg/dialects/all/enum_autotune_axis.go create mode 100644 pkg/dialects/all/enum_camera_cap_flags.go create mode 100644 pkg/dialects/all/enum_camera_feedback_flags.go create mode 100644 pkg/dialects/all/enum_camera_mode.go create mode 100644 pkg/dialects/all/enum_camera_status_types.go create mode 100644 pkg/dialects/all/enum_camera_tracking_mode.go create mode 100644 pkg/dialects/all/enum_camera_tracking_status_flags.go create mode 100644 pkg/dialects/all/enum_camera_tracking_target_data.go create mode 100644 pkg/dialects/all/enum_camera_zoom_type.go create mode 100644 pkg/dialects/all/enum_cellular_config_response.go create mode 100644 pkg/dialects/all/enum_cellular_network_failed_reason.go create mode 100644 pkg/dialects/all/enum_cellular_network_radio_type.go create mode 100644 pkg/dialects/all/enum_cellular_status_flag.go create mode 100644 pkg/dialects/all/enum_comp_metadata_type.go create mode 100644 pkg/dialects/all/enum_copter_mode.go create mode 100644 pkg/dialects/all/enum_deepstall_stage.go create mode 100644 pkg/dialects/all/enum_device_op_bustype.go create mode 100644 pkg/dialects/all/enum_ekf_status_flags.go create mode 100644 pkg/dialects/all/enum_esc_connection_type.go create mode 100644 pkg/dialects/all/enum_esc_failure_flags.go create mode 100644 pkg/dialects/all/enum_estimator_status_flags.go create mode 100644 pkg/dialects/all/enum_failure_type.go create mode 100644 pkg/dialects/all/enum_failure_unit.go create mode 100644 pkg/dialects/all/enum_fence_action.go create mode 100644 pkg/dialects/all/enum_fence_breach.go create mode 100644 pkg/dialects/all/enum_fence_mitigate.go create mode 100644 pkg/dialects/all/enum_firmware_version_type.go create mode 100644 pkg/dialects/all/enum_gimbal_axis.go create mode 100644 pkg/dialects/all/enum_gimbal_axis_calibration_required.go create mode 100644 pkg/dialects/all/enum_gimbal_axis_calibration_status.go create mode 100644 pkg/dialects/all/enum_gimbal_device_cap_flags.go create mode 100644 pkg/dialects/all/enum_gimbal_device_error_flags.go create mode 100644 pkg/dialects/all/enum_gimbal_device_flags.go create mode 100644 pkg/dialects/all/enum_gimbal_manager_cap_flags.go create mode 100644 pkg/dialects/all/enum_gimbal_manager_flags.go create mode 100644 pkg/dialects/all/enum_gopro_burst_rate.go create mode 100644 pkg/dialects/all/enum_gopro_capture_mode.go create mode 100644 pkg/dialects/all/enum_gopro_charging.go create mode 100644 pkg/dialects/all/enum_gopro_command.go create mode 100644 pkg/dialects/all/enum_gopro_field_of_view.go create mode 100644 pkg/dialects/all/enum_gopro_frame_rate.go create mode 100644 pkg/dialects/all/enum_gopro_heartbeat_flags.go create mode 100644 pkg/dialects/all/enum_gopro_heartbeat_status.go create mode 100644 pkg/dialects/all/enum_gopro_model.go create mode 100644 pkg/dialects/all/enum_gopro_photo_resolution.go create mode 100644 pkg/dialects/all/enum_gopro_protune_colour.go create mode 100644 pkg/dialects/all/enum_gopro_protune_exposure.go create mode 100644 pkg/dialects/all/enum_gopro_protune_gain.go create mode 100644 pkg/dialects/all/enum_gopro_protune_sharpness.go create mode 100644 pkg/dialects/all/enum_gopro_protune_white_balance.go create mode 100644 pkg/dialects/all/enum_gopro_request_status.go create mode 100644 pkg/dialects/all/enum_gopro_resolution.go create mode 100644 pkg/dialects/all/enum_gopro_video_settings_flags.go create mode 100644 pkg/dialects/all/enum_gps_fix_type.go create mode 100644 pkg/dialects/all/enum_gps_input_ignore_flags.go create mode 100644 pkg/dialects/all/enum_gripper_actions.go create mode 100644 pkg/dialects/all/enum_gsm_link_type.go create mode 100644 pkg/dialects/all/enum_gsm_modem_type.go create mode 100644 pkg/dialects/all/enum_heading_type.go create mode 100644 pkg/dialects/all/enum_highres_imu_updated_flags.go create mode 100644 pkg/dialects/all/enum_hil_sensor_updated_flags.go create mode 100644 pkg/dialects/all/enum_hl_failure_flag.go create mode 100644 pkg/dialects/all/enum_icarous_fms_state.go create mode 100644 pkg/dialects/all/enum_icarous_track_band_types.go create mode 100644 pkg/dialects/all/enum_landing_target_type.go create mode 100644 pkg/dialects/all/enum_led_control_pattern.go create mode 100644 pkg/dialects/all/enum_limit_module.go create mode 100644 pkg/dialects/all/enum_limits_state.go create mode 100644 pkg/dialects/all/enum_mag_cal_status.go create mode 100644 pkg/dialects/all/enum_mav_arm_auth_denied_reason.go create mode 100644 pkg/dialects/all/enum_mav_autopilot.go create mode 100644 pkg/dialects/all/enum_mav_avss_command_failure_reason.go create mode 100644 pkg/dialects/all/enum_mav_battery_charge_state.go create mode 100644 pkg/dialects/all/enum_mav_battery_fault.go create mode 100644 pkg/dialects/all/enum_mav_battery_function.go create mode 100644 pkg/dialects/all/enum_mav_battery_mode.go create mode 100644 pkg/dialects/all/enum_mav_battery_type.go create mode 100644 pkg/dialects/all/enum_mav_cmd.go create mode 100644 pkg/dialects/all/enum_mav_cmd_ack.go create mode 100644 pkg/dialects/all/enum_mav_cmd_do_aux_function_switch_level.go create mode 100644 pkg/dialects/all/enum_mav_collision_action.go create mode 100644 pkg/dialects/all/enum_mav_collision_src.go create mode 100644 pkg/dialects/all/enum_mav_collision_threat_level.go create mode 100644 pkg/dialects/all/enum_mav_component.go create mode 100644 pkg/dialects/all/enum_mav_data_stream.go create mode 100644 pkg/dialects/all/enum_mav_distance_sensor.go create mode 100644 pkg/dialects/all/enum_mav_do_reposition_flags.go create mode 100644 pkg/dialects/all/enum_mav_estimator_type.go create mode 100644 pkg/dialects/all/enum_mav_event_current_sequence_flags.go create mode 100644 pkg/dialects/all/enum_mav_event_error_reason.go create mode 100644 pkg/dialects/all/enum_mav_frame.go create mode 100644 pkg/dialects/all/enum_mav_generator_status_flag.go create mode 100644 pkg/dialects/all/enum_mav_goto.go create mode 100644 pkg/dialects/all/enum_mav_landed_state.go create mode 100644 pkg/dialects/all/enum_mav_mission_result.go create mode 100644 pkg/dialects/all/enum_mav_mission_type.go create mode 100644 pkg/dialects/all/enum_mav_mode.go create mode 100644 pkg/dialects/all/enum_mav_mode_flag.go create mode 100644 pkg/dialects/all/enum_mav_mode_flag_decode_position.go create mode 100644 pkg/dialects/all/enum_mav_mode_gimbal.go create mode 100644 pkg/dialects/all/enum_mav_mount_mode.go create mode 100644 pkg/dialects/all/enum_mav_odid_auth_type.go create mode 100644 pkg/dialects/all/enum_mav_odid_category_eu.go create mode 100644 pkg/dialects/all/enum_mav_odid_class_eu.go create mode 100644 pkg/dialects/all/enum_mav_odid_classification_type.go create mode 100644 pkg/dialects/all/enum_mav_odid_desc_type.go create mode 100644 pkg/dialects/all/enum_mav_odid_height_ref.go create mode 100644 pkg/dialects/all/enum_mav_odid_hor_acc.go create mode 100644 pkg/dialects/all/enum_mav_odid_id_type.go create mode 100644 pkg/dialects/all/enum_mav_odid_operator_id_type.go create mode 100644 pkg/dialects/all/enum_mav_odid_operator_location_type.go create mode 100644 pkg/dialects/all/enum_mav_odid_speed_acc.go create mode 100644 pkg/dialects/all/enum_mav_odid_status.go create mode 100644 pkg/dialects/all/enum_mav_odid_time_acc.go create mode 100644 pkg/dialects/all/enum_mav_odid_ua_type.go create mode 100644 pkg/dialects/all/enum_mav_odid_ver_acc.go create mode 100644 pkg/dialects/all/enum_mav_param_ext_type.go create mode 100644 pkg/dialects/all/enum_mav_param_type.go create mode 100644 pkg/dialects/all/enum_mav_power_status.go create mode 100644 pkg/dialects/all/enum_mav_protocol_capability.go create mode 100644 pkg/dialects/all/enum_mav_qshot_mode.go create mode 100644 pkg/dialects/all/enum_mav_remote_log_data_block_commands.go create mode 100644 pkg/dialects/all/enum_mav_remote_log_data_block_statuses.go create mode 100644 pkg/dialects/all/enum_mav_result.go create mode 100644 pkg/dialects/all/enum_mav_roi.go create mode 100644 pkg/dialects/all/enum_mav_sensor_orientation.go create mode 100644 pkg/dialects/all/enum_mav_severity.go create mode 100644 pkg/dialects/all/enum_mav_state.go create mode 100644 pkg/dialects/all/enum_mav_storm32_camera_prearm_flags.go create mode 100644 pkg/dialects/all/enum_mav_storm32_gimbal_action.go create mode 100644 pkg/dialects/all/enum_mav_storm32_gimbal_device_cap_flags.go create mode 100644 pkg/dialects/all/enum_mav_storm32_gimbal_device_error_flags.go create mode 100644 pkg/dialects/all/enum_mav_storm32_gimbal_device_flags.go create mode 100644 pkg/dialects/all/enum_mav_storm32_gimbal_manager_cap_flags.go create mode 100644 pkg/dialects/all/enum_mav_storm32_gimbal_manager_client.go create mode 100644 pkg/dialects/all/enum_mav_storm32_gimbal_manager_flags.go create mode 100644 pkg/dialects/all/enum_mav_storm32_gimbal_manager_profile.go create mode 100644 pkg/dialects/all/enum_mav_storm32_gimbal_manager_setup_flags.go create mode 100644 pkg/dialects/all/enum_mav_storm32_gimbal_prearm_flags.go create mode 100644 pkg/dialects/all/enum_mav_storm32_tunnel_payload_type.go create mode 100644 pkg/dialects/all/enum_mav_sys_status_sensor.go create mode 100644 pkg/dialects/all/enum_mav_sys_status_sensor_extended.go create mode 100644 pkg/dialects/all/enum_mav_tunnel_payload_type.go create mode 100644 pkg/dialects/all/enum_mav_type.go create mode 100644 pkg/dialects/all/enum_mav_vtol_state.go create mode 100644 pkg/dialects/all/enum_mav_winch_status_flag.go create mode 100644 pkg/dialects/all/enum_mavlink_data_stream_type.go create mode 100644 pkg/dialects/all/enum_motor_test_order.go create mode 100644 pkg/dialects/all/enum_motor_test_throttle_type.go create mode 100644 pkg/dialects/all/enum_nav_vtol_land_options.go create mode 100644 pkg/dialects/all/enum_orbit_yaw_behaviour.go create mode 100644 pkg/dialects/all/enum_osd_param_config_error.go create mode 100644 pkg/dialects/all/enum_osd_param_config_type.go create mode 100644 pkg/dialects/all/enum_parachute_action.go create mode 100644 pkg/dialects/all/enum_param_ack.go create mode 100644 pkg/dialects/all/enum_param_transaction_action.go create mode 100644 pkg/dialects/all/enum_param_transaction_transport.go create mode 100644 pkg/dialects/all/enum_pid_tuning_axis.go create mode 100644 pkg/dialects/all/enum_plane_mode.go create mode 100644 pkg/dialects/all/enum_position_target_typemask.go create mode 100644 pkg/dialects/all/enum_precision_land_mode.go create mode 100644 pkg/dialects/all/enum_rally_flags.go create mode 100644 pkg/dialects/all/enum_rc_type.go create mode 100644 pkg/dialects/all/enum_rover_mode.go create mode 100644 pkg/dialects/all/enum_rtk_baseline_coordinate_system.go create mode 100644 pkg/dialects/all/enum_scripting_cmd.go create mode 100644 pkg/dialects/all/enum_serial_control_dev.go create mode 100644 pkg/dialects/all/enum_serial_control_flag.go create mode 100644 pkg/dialects/all/enum_set_focus_type.go create mode 100644 pkg/dialects/all/enum_speed_type.go create mode 100644 pkg/dialects/all/enum_storage_status.go create mode 100644 pkg/dialects/all/enum_storage_type.go create mode 100644 pkg/dialects/all/enum_storage_usage_flag.go create mode 100644 pkg/dialects/all/enum_sub_mode.go create mode 100644 pkg/dialects/all/enum_tracker_mode.go create mode 100644 pkg/dialects/all/enum_tune_format.go create mode 100644 pkg/dialects/all/enum_ualberta_autopilot_mode.go create mode 100644 pkg/dialects/all/enum_ualberta_nav_mode.go create mode 100644 pkg/dialects/all/enum_ualberta_pilot_mode.go create mode 100644 pkg/dialects/all/enum_uavcan_node_health.go create mode 100644 pkg/dialects/all/enum_uavcan_node_mode.go create mode 100644 pkg/dialects/all/enum_uavionix_adsb_emergency_status.go create mode 100644 pkg/dialects/all/enum_uavionix_adsb_out_cfg_aircraft_size.go create mode 100644 pkg/dialects/all/enum_uavionix_adsb_out_cfg_gps_offset_lat.go create mode 100644 pkg/dialects/all/enum_uavionix_adsb_out_cfg_gps_offset_lon.go create mode 100644 pkg/dialects/all/enum_uavionix_adsb_out_dynamic_gps_fix.go create mode 100644 pkg/dialects/all/enum_uavionix_adsb_out_dynamic_state.go create mode 100644 pkg/dialects/all/enum_uavionix_adsb_out_rf_select.go create mode 100644 pkg/dialects/all/enum_uavionix_adsb_rf_health.go create mode 100644 pkg/dialects/all/enum_utm_data_avail_flags.go create mode 100644 pkg/dialects/all/enum_utm_flight_state.go create mode 100644 pkg/dialects/all/enum_video_stream_status_flags.go create mode 100644 pkg/dialects/all/enum_video_stream_type.go create mode 100644 pkg/dialects/all/enum_vtol_transition_heading.go create mode 100644 pkg/dialects/all/enum_wifi_config_ap_mode.go create mode 100644 pkg/dialects/all/enum_wifi_config_ap_response.go create mode 100644 pkg/dialects/all/enum_wifi_network_security.go create mode 100644 pkg/dialects/all/enum_winch_actions.go create mode 100644 pkg/dialects/all/msg_actuator_control_target.go create mode 100644 pkg/dialects/all/msg_actuator_output_status.go create mode 100644 pkg/dialects/all/msg_adap_tuning.go create mode 100644 pkg/dialects/all/msg_adsb_vehicle.go create mode 100644 pkg/dialects/all/msg_ahrs.go create mode 100644 pkg/dialects/all/msg_ahrs2.go create mode 100644 pkg/dialects/all/msg_ahrs3.go create mode 100644 pkg/dialects/all/msg_airspeed.go create mode 100644 pkg/dialects/all/msg_airspeed_autocal.go create mode 100644 pkg/dialects/all/msg_ais_vessel.go create mode 100644 pkg/dialects/all/msg_altitude.go create mode 100644 pkg/dialects/all/msg_aoa_ssa.go create mode 100644 pkg/dialects/all/msg_ap_adc.go create mode 100644 pkg/dialects/all/msg_array_test_0.go create mode 100644 pkg/dialects/all/msg_array_test_1.go create mode 100644 pkg/dialects/all/msg_array_test_3.go create mode 100644 pkg/dialects/all/msg_array_test_4.go create mode 100644 pkg/dialects/all/msg_array_test_5.go create mode 100644 pkg/dialects/all/msg_array_test_6.go create mode 100644 pkg/dialects/all/msg_array_test_7.go create mode 100644 pkg/dialects/all/msg_array_test_8.go create mode 100644 pkg/dialects/all/msg_asl_obctrl.go create mode 100644 pkg/dialects/all/msg_aslctrl_data.go create mode 100644 pkg/dialects/all/msg_aslctrl_debug.go create mode 100644 pkg/dialects/all/msg_asluav_status.go create mode 100644 pkg/dialects/all/msg_att_pos_mocap.go create mode 100644 pkg/dialects/all/msg_attitude.go create mode 100644 pkg/dialects/all/msg_attitude_quaternion.go create mode 100644 pkg/dialects/all/msg_attitude_quaternion_cov.go create mode 100644 pkg/dialects/all/msg_attitude_target.go create mode 100644 pkg/dialects/all/msg_auth_key.go create mode 100644 pkg/dialects/all/msg_autopilot_state_for_gimbal_device.go create mode 100644 pkg/dialects/all/msg_autopilot_version.go create mode 100644 pkg/dialects/all/msg_autopilot_version_request.go create mode 100644 pkg/dialects/all/msg_avss_prs_sys_status.go create mode 100644 pkg/dialects/all/msg_battery2.go create mode 100644 pkg/dialects/all/msg_battery_status.go create mode 100644 pkg/dialects/all/msg_button_change.go create mode 100644 pkg/dialects/all/msg_camera_capture_status.go create mode 100644 pkg/dialects/all/msg_camera_feedback.go create mode 100644 pkg/dialects/all/msg_camera_fov_status.go create mode 100644 pkg/dialects/all/msg_camera_image_captured.go create mode 100644 pkg/dialects/all/msg_camera_information.go create mode 100644 pkg/dialects/all/msg_camera_settings.go create mode 100644 pkg/dialects/all/msg_camera_status.go create mode 100644 pkg/dialects/all/msg_camera_tracking_geo_status.go create mode 100644 pkg/dialects/all/msg_camera_tracking_image_status.go create mode 100644 pkg/dialects/all/msg_camera_trigger.go create mode 100644 pkg/dialects/all/msg_cellular_config.go create mode 100644 pkg/dialects/all/msg_cellular_status.go create mode 100644 pkg/dialects/all/msg_change_operator_control.go create mode 100644 pkg/dialects/all/msg_change_operator_control_ack.go create mode 100644 pkg/dialects/all/msg_collision.go create mode 100644 pkg/dialects/all/msg_command_ack.go create mode 100644 pkg/dialects/all/msg_command_cancel.go create mode 100644 pkg/dialects/all/msg_command_int.go create mode 100644 pkg/dialects/all/msg_command_int_stamped.go create mode 100644 pkg/dialects/all/msg_command_long.go create mode 100644 pkg/dialects/all/msg_command_long_stamped.go create mode 100644 pkg/dialects/all/msg_compassmot_status.go create mode 100644 pkg/dialects/all/msg_component_information.go create mode 100644 pkg/dialects/all/msg_component_information_basic.go create mode 100644 pkg/dialects/all/msg_component_prearm_status.go create mode 100644 pkg/dialects/all/msg_control_system_state.go create mode 100644 pkg/dialects/all/msg_current_event_sequence.go create mode 100644 pkg/dialects/all/msg_data16.go create mode 100644 pkg/dialects/all/msg_data32.go create mode 100644 pkg/dialects/all/msg_data64.go create mode 100644 pkg/dialects/all/msg_data96.go create mode 100644 pkg/dialects/all/msg_data_stream.go create mode 100644 pkg/dialects/all/msg_data_transmission_handshake.go create mode 100644 pkg/dialects/all/msg_debug.go create mode 100644 pkg/dialects/all/msg_debug_float_array.go create mode 100644 pkg/dialects/all/msg_debug_vect.go create mode 100644 pkg/dialects/all/msg_deepstall.go create mode 100644 pkg/dialects/all/msg_device_op_read.go create mode 100644 pkg/dialects/all/msg_device_op_read_reply.go create mode 100644 pkg/dialects/all/msg_device_op_write.go create mode 100644 pkg/dialects/all/msg_device_op_write_reply.go create mode 100644 pkg/dialects/all/msg_digicam_configure.go create mode 100644 pkg/dialects/all/msg_digicam_control.go create mode 100644 pkg/dialects/all/msg_distance_sensor.go create mode 100644 pkg/dialects/all/msg_efi_status.go create mode 100644 pkg/dialects/all/msg_ekf_ext.go create mode 100644 pkg/dialects/all/msg_ekf_status_report.go create mode 100644 pkg/dialects/all/msg_encapsulated_data.go create mode 100644 pkg/dialects/all/msg_esc_info.go create mode 100644 pkg/dialects/all/msg_esc_status.go create mode 100644 pkg/dialects/all/msg_esc_telemetry_1_to_4.go create mode 100644 pkg/dialects/all/msg_esc_telemetry_5_to_8.go create mode 100644 pkg/dialects/all/msg_esc_telemetry_9_to_12.go create mode 100644 pkg/dialects/all/msg_estimator_status.go create mode 100644 pkg/dialects/all/msg_event.go create mode 100644 pkg/dialects/all/msg_extended_sys_state.go create mode 100644 pkg/dialects/all/msg_fence_fetch_point.go create mode 100644 pkg/dialects/all/msg_fence_point.go create mode 100644 pkg/dialects/all/msg_fence_status.go create mode 100644 pkg/dialects/all/msg_file_transfer_protocol.go create mode 100644 pkg/dialects/all/msg_flight_information.go create mode 100644 pkg/dialects/all/msg_follow_target.go create mode 100644 pkg/dialects/all/msg_fw_soaring_data.go create mode 100644 pkg/dialects/all/msg_generator_status.go create mode 100644 pkg/dialects/all/msg_gimbal_control.go create mode 100644 pkg/dialects/all/msg_gimbal_device_attitude_status.go create mode 100644 pkg/dialects/all/msg_gimbal_device_information.go create mode 100644 pkg/dialects/all/msg_gimbal_device_set_attitude.go create mode 100644 pkg/dialects/all/msg_gimbal_manager_information.go create mode 100644 pkg/dialects/all/msg_gimbal_manager_set_attitude.go create mode 100644 pkg/dialects/all/msg_gimbal_manager_set_manual_control.go create mode 100644 pkg/dialects/all/msg_gimbal_manager_set_pitchyaw.go create mode 100644 pkg/dialects/all/msg_gimbal_manager_status.go create mode 100644 pkg/dialects/all/msg_gimbal_report.go create mode 100644 pkg/dialects/all/msg_gimbal_torque_cmd_report.go create mode 100644 pkg/dialects/all/msg_global_position_int.go create mode 100644 pkg/dialects/all/msg_global_position_int_cov.go create mode 100644 pkg/dialects/all/msg_global_vision_position_estimate.go create mode 100644 pkg/dialects/all/msg_gopro_get_request.go create mode 100644 pkg/dialects/all/msg_gopro_get_response.go create mode 100644 pkg/dialects/all/msg_gopro_heartbeat.go create mode 100644 pkg/dialects/all/msg_gopro_set_request.go create mode 100644 pkg/dialects/all/msg_gopro_set_response.go create mode 100644 pkg/dialects/all/msg_gps2_raw.go create mode 100644 pkg/dialects/all/msg_gps2_rtk.go create mode 100644 pkg/dialects/all/msg_gps_global_origin.go create mode 100644 pkg/dialects/all/msg_gps_inject_data.go create mode 100644 pkg/dialects/all/msg_gps_input.go create mode 100644 pkg/dialects/all/msg_gps_raw_int.go create mode 100644 pkg/dialects/all/msg_gps_rtcm_data.go create mode 100644 pkg/dialects/all/msg_gps_rtk.go create mode 100644 pkg/dialects/all/msg_gps_status.go create mode 100644 pkg/dialects/all/msg_group_end.go create mode 100644 pkg/dialects/all/msg_group_start.go create mode 100644 pkg/dialects/all/msg_gsm_link_status.go create mode 100644 pkg/dialects/all/msg_heartbeat.go create mode 100644 pkg/dialects/all/msg_high_latency.go create mode 100644 pkg/dialects/all/msg_high_latency2.go create mode 100644 pkg/dialects/all/msg_highres_imu.go create mode 100644 pkg/dialects/all/msg_hil_actuator_controls.go create mode 100644 pkg/dialects/all/msg_hil_controls.go create mode 100644 pkg/dialects/all/msg_hil_gps.go create mode 100644 pkg/dialects/all/msg_hil_optical_flow.go create mode 100644 pkg/dialects/all/msg_hil_rc_inputs_raw.go create mode 100644 pkg/dialects/all/msg_hil_sensor.go create mode 100644 pkg/dialects/all/msg_hil_state.go create mode 100644 pkg/dialects/all/msg_hil_state_quaternion.go create mode 100644 pkg/dialects/all/msg_home_position.go create mode 100644 pkg/dialects/all/msg_hwstatus.go create mode 100644 pkg/dialects/all/msg_hygrometer_sensor.go create mode 100644 pkg/dialects/all/msg_icarous_heartbeat.go create mode 100644 pkg/dialects/all/msg_icarous_kinematic_bands.go create mode 100644 pkg/dialects/all/msg_isbd_link_status.go create mode 100644 pkg/dialects/all/msg_landing_target.go create mode 100644 pkg/dialects/all/msg_led_control.go create mode 100644 pkg/dialects/all/msg_limits_status.go create mode 100644 pkg/dialects/all/msg_link_node_status.go create mode 100644 pkg/dialects/all/msg_local_position_ned.go create mode 100644 pkg/dialects/all/msg_local_position_ned_cov.go create mode 100644 pkg/dialects/all/msg_local_position_ned_system_global_offset.go create mode 100644 pkg/dialects/all/msg_log_data.go create mode 100644 pkg/dialects/all/msg_log_entry.go create mode 100644 pkg/dialects/all/msg_log_erase.go create mode 100644 pkg/dialects/all/msg_log_request_data.go create mode 100644 pkg/dialects/all/msg_log_request_end.go create mode 100644 pkg/dialects/all/msg_log_request_list.go create mode 100644 pkg/dialects/all/msg_logging_ack.go create mode 100644 pkg/dialects/all/msg_logging_data.go create mode 100644 pkg/dialects/all/msg_logging_data_acked.go create mode 100644 pkg/dialects/all/msg_mag_cal_progress.go create mode 100644 pkg/dialects/all/msg_mag_cal_report.go create mode 100644 pkg/dialects/all/msg_manual_control.go create mode 100644 pkg/dialects/all/msg_manual_setpoint.go create mode 100644 pkg/dialects/all/msg_mcu_status.go create mode 100644 pkg/dialects/all/msg_meminfo.go create mode 100644 pkg/dialects/all/msg_memory_vect.go create mode 100644 pkg/dialects/all/msg_message_interval.go create mode 100644 pkg/dialects/all/msg_mission_ack.go create mode 100644 pkg/dialects/all/msg_mission_changed.go create mode 100644 pkg/dialects/all/msg_mission_checksum.go create mode 100644 pkg/dialects/all/msg_mission_clear_all.go create mode 100644 pkg/dialects/all/msg_mission_count.go create mode 100644 pkg/dialects/all/msg_mission_current.go create mode 100644 pkg/dialects/all/msg_mission_item.go create mode 100644 pkg/dialects/all/msg_mission_item_int.go create mode 100644 pkg/dialects/all/msg_mission_item_reached.go create mode 100644 pkg/dialects/all/msg_mission_request.go create mode 100644 pkg/dialects/all/msg_mission_request_int.go create mode 100644 pkg/dialects/all/msg_mission_request_list.go create mode 100644 pkg/dialects/all/msg_mission_request_partial_list.go create mode 100644 pkg/dialects/all/msg_mission_set_current.go create mode 100644 pkg/dialects/all/msg_mission_write_partial_list.go create mode 100644 pkg/dialects/all/msg_mount_configure.go create mode 100644 pkg/dialects/all/msg_mount_control.go create mode 100644 pkg/dialects/all/msg_mount_orientation.go create mode 100644 pkg/dialects/all/msg_mount_status.go create mode 100644 pkg/dialects/all/msg_named_value_float.go create mode 100644 pkg/dialects/all/msg_named_value_int.go create mode 100644 pkg/dialects/all/msg_nav_controller_output.go create mode 100644 pkg/dialects/all/msg_nav_filter_bias.go create mode 100644 pkg/dialects/all/msg_obstacle_distance.go create mode 100644 pkg/dialects/all/msg_obstacle_distance_3d.go create mode 100644 pkg/dialects/all/msg_odometry.go create mode 100644 pkg/dialects/all/msg_onboard_computer_status.go create mode 100644 pkg/dialects/all/msg_open_drone_id_authentication.go create mode 100644 pkg/dialects/all/msg_open_drone_id_basic_id.go create mode 100644 pkg/dialects/all/msg_open_drone_id_location.go create mode 100644 pkg/dialects/all/msg_open_drone_id_message_pack.go create mode 100644 pkg/dialects/all/msg_open_drone_id_operator_id.go create mode 100644 pkg/dialects/all/msg_open_drone_id_self_id.go create mode 100644 pkg/dialects/all/msg_open_drone_id_system.go create mode 100644 pkg/dialects/all/msg_optical_flow.go create mode 100644 pkg/dialects/all/msg_optical_flow_rad.go create mode 100644 pkg/dialects/all/msg_orbit_execution_status.go create mode 100644 pkg/dialects/all/msg_osd_param_config.go create mode 100644 pkg/dialects/all/msg_osd_param_config_reply.go create mode 100644 pkg/dialects/all/msg_osd_param_show_config.go create mode 100644 pkg/dialects/all/msg_osd_param_show_config_reply.go create mode 100644 pkg/dialects/all/msg_param_ack_transaction.go create mode 100644 pkg/dialects/all/msg_param_ext_ack.go create mode 100644 pkg/dialects/all/msg_param_ext_request_list.go create mode 100644 pkg/dialects/all/msg_param_ext_request_read.go create mode 100644 pkg/dialects/all/msg_param_ext_set.go create mode 100644 pkg/dialects/all/msg_param_ext_value.go create mode 100644 pkg/dialects/all/msg_param_map_rc.go create mode 100644 pkg/dialects/all/msg_param_request_list.go create mode 100644 pkg/dialects/all/msg_param_request_read.go create mode 100644 pkg/dialects/all/msg_param_set.go create mode 100644 pkg/dialects/all/msg_param_value.go create mode 100644 pkg/dialects/all/msg_pid_tuning.go create mode 100644 pkg/dialects/all/msg_ping.go create mode 100644 pkg/dialects/all/msg_play_tune.go create mode 100644 pkg/dialects/all/msg_play_tune_v2.go create mode 100644 pkg/dialects/all/msg_position_target_global_int.go create mode 100644 pkg/dialects/all/msg_position_target_local_ned.go create mode 100644 pkg/dialects/all/msg_power_status.go create mode 100644 pkg/dialects/all/msg_protocol_version.go create mode 100644 pkg/dialects/all/msg_qshot_status.go create mode 100644 pkg/dialects/all/msg_radio.go create mode 100644 pkg/dialects/all/msg_radio_calibration.go create mode 100644 pkg/dialects/all/msg_radio_status.go create mode 100644 pkg/dialects/all/msg_rally_fetch_point.go create mode 100644 pkg/dialects/all/msg_rally_point.go create mode 100644 pkg/dialects/all/msg_rangefinder.go create mode 100644 pkg/dialects/all/msg_raw_imu.go create mode 100644 pkg/dialects/all/msg_raw_pressure.go create mode 100644 pkg/dialects/all/msg_raw_rpm.go create mode 100644 pkg/dialects/all/msg_rc_channels.go create mode 100644 pkg/dialects/all/msg_rc_channels_override.go create mode 100644 pkg/dialects/all/msg_rc_channels_raw.go create mode 100644 pkg/dialects/all/msg_rc_channels_scaled.go create mode 100644 pkg/dialects/all/msg_remote_log_block_status.go create mode 100644 pkg/dialects/all/msg_remote_log_data_block.go create mode 100644 pkg/dialects/all/msg_request_data_stream.go create mode 100644 pkg/dialects/all/msg_request_event.go create mode 100644 pkg/dialects/all/msg_resource_request.go create mode 100644 pkg/dialects/all/msg_response_event_error.go create mode 100644 pkg/dialects/all/msg_rpm.go create mode 100644 pkg/dialects/all/msg_safety_allowed_area.go create mode 100644 pkg/dialects/all/msg_safety_set_allowed_area.go create mode 100644 pkg/dialects/all/msg_satcom_link_status.go create mode 100644 pkg/dialects/all/msg_scaled_imu.go create mode 100644 pkg/dialects/all/msg_scaled_imu2.go create mode 100644 pkg/dialects/all/msg_scaled_imu3.go create mode 100644 pkg/dialects/all/msg_scaled_pressure.go create mode 100644 pkg/dialects/all/msg_scaled_pressure2.go create mode 100644 pkg/dialects/all/msg_scaled_pressure3.go create mode 100644 pkg/dialects/all/msg_sens_atmos.go create mode 100644 pkg/dialects/all/msg_sens_batmon.go create mode 100644 pkg/dialects/all/msg_sens_mppt.go create mode 100644 pkg/dialects/all/msg_sens_power.go create mode 100644 pkg/dialects/all/msg_sens_power_board.go create mode 100644 pkg/dialects/all/msg_sensor_airflow_angles.go create mode 100644 pkg/dialects/all/msg_sensor_offsets.go create mode 100644 pkg/dialects/all/msg_sensorpod_status.go create mode 100644 pkg/dialects/all/msg_serial_control.go create mode 100644 pkg/dialects/all/msg_servo_output_raw.go create mode 100644 pkg/dialects/all/msg_set_actuator_control_target.go create mode 100644 pkg/dialects/all/msg_set_attitude_target.go create mode 100644 pkg/dialects/all/msg_set_gps_global_origin.go create mode 100644 pkg/dialects/all/msg_set_home_position.go create mode 100644 pkg/dialects/all/msg_set_mag_offsets.go create mode 100644 pkg/dialects/all/msg_set_mode.go create mode 100644 pkg/dialects/all/msg_set_position_target_global_int.go create mode 100644 pkg/dialects/all/msg_set_position_target_local_ned.go create mode 100644 pkg/dialects/all/msg_setup_signing.go create mode 100644 pkg/dialects/all/msg_sim_state.go create mode 100644 pkg/dialects/all/msg_simstate.go create mode 100644 pkg/dialects/all/msg_smart_battery_info.go create mode 100644 pkg/dialects/all/msg_statustext.go create mode 100644 pkg/dialects/all/msg_storage_information.go create mode 100644 pkg/dialects/all/msg_storm32_gimbal_device_control.go create mode 100644 pkg/dialects/all/msg_storm32_gimbal_device_status.go create mode 100644 pkg/dialects/all/msg_storm32_gimbal_manager_control.go create mode 100644 pkg/dialects/all/msg_storm32_gimbal_manager_control_pitchyaw.go create mode 100644 pkg/dialects/all/msg_storm32_gimbal_manager_correct_roll.go create mode 100644 pkg/dialects/all/msg_storm32_gimbal_manager_information.go create mode 100644 pkg/dialects/all/msg_storm32_gimbal_manager_profile.go create mode 100644 pkg/dialects/all/msg_storm32_gimbal_manager_status.go create mode 100644 pkg/dialects/all/msg_supported_tunes.go create mode 100644 pkg/dialects/all/msg_sys_status.go create mode 100644 pkg/dialects/all/msg_system_time.go create mode 100644 pkg/dialects/all/msg_terrain_check.go create mode 100644 pkg/dialects/all/msg_terrain_data.go create mode 100644 pkg/dialects/all/msg_terrain_report.go create mode 100644 pkg/dialects/all/msg_terrain_request.go create mode 100644 pkg/dialects/all/msg_test_types.go create mode 100644 pkg/dialects/all/msg_time_estimate_to_target.go create mode 100644 pkg/dialects/all/msg_timesync.go create mode 100644 pkg/dialects/all/msg_trajectory_representation_bezier.go create mode 100644 pkg/dialects/all/msg_trajectory_representation_waypoints.go create mode 100644 pkg/dialects/all/msg_tunnel.go create mode 100644 pkg/dialects/all/msg_ualberta_sys_status.go create mode 100644 pkg/dialects/all/msg_uavcan_node_info.go create mode 100644 pkg/dialects/all/msg_uavcan_node_status.go create mode 100644 pkg/dialects/all/msg_uavionix_adsb_out_cfg.go create mode 100644 pkg/dialects/all/msg_uavionix_adsb_out_dynamic.go create mode 100644 pkg/dialects/all/msg_uavionix_adsb_transceiver_health_report.go create mode 100644 pkg/dialects/all/msg_utm_global_position.go create mode 100644 pkg/dialects/all/msg_v2_extension.go create mode 100644 pkg/dialects/all/msg_vfr_hud.go create mode 100644 pkg/dialects/all/msg_vibration.go create mode 100644 pkg/dialects/all/msg_vicon_position_estimate.go create mode 100644 pkg/dialects/all/msg_video_stream_information.go create mode 100644 pkg/dialects/all/msg_video_stream_status.go create mode 100644 pkg/dialects/all/msg_vision_position_delta.go create mode 100644 pkg/dialects/all/msg_vision_position_estimate.go create mode 100644 pkg/dialects/all/msg_vision_speed_estimate.go create mode 100644 pkg/dialects/all/msg_water_depth.go create mode 100644 pkg/dialects/all/msg_wheel_distance.go create mode 100644 pkg/dialects/all/msg_wifi_config_ap.go create mode 100644 pkg/dialects/all/msg_wifi_network_info.go create mode 100644 pkg/dialects/all/msg_winch_status.go create mode 100644 pkg/dialects/all/msg_wind.go create mode 100644 pkg/dialects/all/msg_wind_cov.go create mode 100644 pkg/dialects/avssuas/dialect.go create mode 100644 pkg/dialects/avssuas/enum_actuator_configuration.go create mode 100644 pkg/dialects/avssuas/enum_actuator_output_function.go create mode 100644 pkg/dialects/avssuas/enum_adsb_altitude_type.go create mode 100644 pkg/dialects/avssuas/enum_adsb_emitter_type.go create mode 100644 pkg/dialects/avssuas/enum_adsb_flags.go create mode 100644 pkg/dialects/avssuas/enum_ais_flags.go create mode 100644 pkg/dialects/avssuas/enum_ais_nav_status.go create mode 100644 pkg/dialects/avssuas/enum_ais_type.go create mode 100644 pkg/dialects/avssuas/enum_attitude_target_typemask.go create mode 100644 pkg/dialects/avssuas/enum_autotune_axis.go create mode 100644 pkg/dialects/avssuas/enum_camera_cap_flags.go create mode 100644 pkg/dialects/avssuas/enum_camera_mode.go create mode 100644 pkg/dialects/avssuas/enum_camera_tracking_mode.go create mode 100644 pkg/dialects/avssuas/enum_camera_tracking_status_flags.go create mode 100644 pkg/dialects/avssuas/enum_camera_tracking_target_data.go create mode 100644 pkg/dialects/avssuas/enum_camera_zoom_type.go create mode 100644 pkg/dialects/avssuas/enum_cellular_config_response.go create mode 100644 pkg/dialects/avssuas/enum_cellular_network_failed_reason.go create mode 100644 pkg/dialects/avssuas/enum_cellular_network_radio_type.go create mode 100644 pkg/dialects/avssuas/enum_cellular_status_flag.go create mode 100644 pkg/dialects/avssuas/enum_comp_metadata_type.go create mode 100644 pkg/dialects/avssuas/enum_esc_connection_type.go create mode 100644 pkg/dialects/avssuas/enum_esc_failure_flags.go create mode 100644 pkg/dialects/avssuas/enum_estimator_status_flags.go create mode 100644 pkg/dialects/avssuas/enum_failure_type.go create mode 100644 pkg/dialects/avssuas/enum_failure_unit.go create mode 100644 pkg/dialects/avssuas/enum_fence_action.go create mode 100644 pkg/dialects/avssuas/enum_fence_breach.go create mode 100644 pkg/dialects/avssuas/enum_fence_mitigate.go create mode 100644 pkg/dialects/avssuas/enum_firmware_version_type.go create mode 100644 pkg/dialects/avssuas/enum_gimbal_device_cap_flags.go create mode 100644 pkg/dialects/avssuas/enum_gimbal_device_error_flags.go create mode 100644 pkg/dialects/avssuas/enum_gimbal_device_flags.go create mode 100644 pkg/dialects/avssuas/enum_gimbal_manager_cap_flags.go create mode 100644 pkg/dialects/avssuas/enum_gimbal_manager_flags.go create mode 100644 pkg/dialects/avssuas/enum_gps_fix_type.go create mode 100644 pkg/dialects/avssuas/enum_gps_input_ignore_flags.go create mode 100644 pkg/dialects/avssuas/enum_gripper_actions.go create mode 100644 pkg/dialects/avssuas/enum_highres_imu_updated_flags.go create mode 100644 pkg/dialects/avssuas/enum_hil_sensor_updated_flags.go create mode 100644 pkg/dialects/avssuas/enum_hl_failure_flag.go create mode 100644 pkg/dialects/avssuas/enum_landing_target_type.go create mode 100644 pkg/dialects/avssuas/enum_mag_cal_status.go create mode 100644 pkg/dialects/avssuas/enum_mav_arm_auth_denied_reason.go create mode 100644 pkg/dialects/avssuas/enum_mav_autopilot.go create mode 100644 pkg/dialects/avssuas/enum_mav_avss_command_failure_reason.go create mode 100644 pkg/dialects/avssuas/enum_mav_battery_charge_state.go create mode 100644 pkg/dialects/avssuas/enum_mav_battery_fault.go create mode 100644 pkg/dialects/avssuas/enum_mav_battery_function.go create mode 100644 pkg/dialects/avssuas/enum_mav_battery_mode.go create mode 100644 pkg/dialects/avssuas/enum_mav_battery_type.go create mode 100644 pkg/dialects/avssuas/enum_mav_cmd.go create mode 100644 pkg/dialects/avssuas/enum_mav_cmd_ack.go create mode 100644 pkg/dialects/avssuas/enum_mav_collision_action.go create mode 100644 pkg/dialects/avssuas/enum_mav_collision_src.go create mode 100644 pkg/dialects/avssuas/enum_mav_collision_threat_level.go create mode 100644 pkg/dialects/avssuas/enum_mav_component.go create mode 100644 pkg/dialects/avssuas/enum_mav_data_stream.go create mode 100644 pkg/dialects/avssuas/enum_mav_distance_sensor.go create mode 100644 pkg/dialects/avssuas/enum_mav_do_reposition_flags.go create mode 100644 pkg/dialects/avssuas/enum_mav_estimator_type.go create mode 100644 pkg/dialects/avssuas/enum_mav_event_current_sequence_flags.go create mode 100644 pkg/dialects/avssuas/enum_mav_event_error_reason.go create mode 100644 pkg/dialects/avssuas/enum_mav_frame.go create mode 100644 pkg/dialects/avssuas/enum_mav_generator_status_flag.go create mode 100644 pkg/dialects/avssuas/enum_mav_goto.go create mode 100644 pkg/dialects/avssuas/enum_mav_landed_state.go create mode 100644 pkg/dialects/avssuas/enum_mav_mission_result.go create mode 100644 pkg/dialects/avssuas/enum_mav_mission_type.go create mode 100644 pkg/dialects/avssuas/enum_mav_mode.go create mode 100644 pkg/dialects/avssuas/enum_mav_mode_flag.go create mode 100644 pkg/dialects/avssuas/enum_mav_mode_flag_decode_position.go create mode 100644 pkg/dialects/avssuas/enum_mav_mount_mode.go create mode 100644 pkg/dialects/avssuas/enum_mav_odid_auth_type.go create mode 100644 pkg/dialects/avssuas/enum_mav_odid_category_eu.go create mode 100644 pkg/dialects/avssuas/enum_mav_odid_class_eu.go create mode 100644 pkg/dialects/avssuas/enum_mav_odid_classification_type.go create mode 100644 pkg/dialects/avssuas/enum_mav_odid_desc_type.go create mode 100644 pkg/dialects/avssuas/enum_mav_odid_height_ref.go create mode 100644 pkg/dialects/avssuas/enum_mav_odid_hor_acc.go create mode 100644 pkg/dialects/avssuas/enum_mav_odid_id_type.go create mode 100644 pkg/dialects/avssuas/enum_mav_odid_operator_id_type.go create mode 100644 pkg/dialects/avssuas/enum_mav_odid_operator_location_type.go create mode 100644 pkg/dialects/avssuas/enum_mav_odid_speed_acc.go create mode 100644 pkg/dialects/avssuas/enum_mav_odid_status.go create mode 100644 pkg/dialects/avssuas/enum_mav_odid_time_acc.go create mode 100644 pkg/dialects/avssuas/enum_mav_odid_ua_type.go create mode 100644 pkg/dialects/avssuas/enum_mav_odid_ver_acc.go create mode 100644 pkg/dialects/avssuas/enum_mav_param_ext_type.go create mode 100644 pkg/dialects/avssuas/enum_mav_param_type.go create mode 100644 pkg/dialects/avssuas/enum_mav_power_status.go create mode 100644 pkg/dialects/avssuas/enum_mav_protocol_capability.go create mode 100644 pkg/dialects/avssuas/enum_mav_result.go create mode 100644 pkg/dialects/avssuas/enum_mav_roi.go create mode 100644 pkg/dialects/avssuas/enum_mav_sensor_orientation.go create mode 100644 pkg/dialects/avssuas/enum_mav_severity.go create mode 100644 pkg/dialects/avssuas/enum_mav_state.go create mode 100644 pkg/dialects/avssuas/enum_mav_sys_status_sensor.go create mode 100644 pkg/dialects/avssuas/enum_mav_sys_status_sensor_extended.go create mode 100644 pkg/dialects/avssuas/enum_mav_tunnel_payload_type.go create mode 100644 pkg/dialects/avssuas/enum_mav_type.go create mode 100644 pkg/dialects/avssuas/enum_mav_vtol_state.go create mode 100644 pkg/dialects/avssuas/enum_mav_winch_status_flag.go create mode 100644 pkg/dialects/avssuas/enum_mavlink_data_stream_type.go create mode 100644 pkg/dialects/avssuas/enum_motor_test_order.go create mode 100644 pkg/dialects/avssuas/enum_motor_test_throttle_type.go create mode 100644 pkg/dialects/avssuas/enum_nav_vtol_land_options.go create mode 100644 pkg/dialects/avssuas/enum_orbit_yaw_behaviour.go create mode 100644 pkg/dialects/avssuas/enum_parachute_action.go create mode 100644 pkg/dialects/avssuas/enum_param_ack.go create mode 100644 pkg/dialects/avssuas/enum_position_target_typemask.go create mode 100644 pkg/dialects/avssuas/enum_precision_land_mode.go create mode 100644 pkg/dialects/avssuas/enum_rc_type.go create mode 100644 pkg/dialects/avssuas/enum_rtk_baseline_coordinate_system.go create mode 100644 pkg/dialects/avssuas/enum_serial_control_dev.go create mode 100644 pkg/dialects/avssuas/enum_serial_control_flag.go create mode 100644 pkg/dialects/avssuas/enum_set_focus_type.go create mode 100644 pkg/dialects/avssuas/enum_storage_status.go create mode 100644 pkg/dialects/avssuas/enum_storage_type.go create mode 100644 pkg/dialects/avssuas/enum_storage_usage_flag.go create mode 100644 pkg/dialects/avssuas/enum_tune_format.go create mode 100644 pkg/dialects/avssuas/enum_uavcan_node_health.go create mode 100644 pkg/dialects/avssuas/enum_uavcan_node_mode.go create mode 100644 pkg/dialects/avssuas/enum_utm_data_avail_flags.go create mode 100644 pkg/dialects/avssuas/enum_utm_flight_state.go create mode 100644 pkg/dialects/avssuas/enum_video_stream_status_flags.go create mode 100644 pkg/dialects/avssuas/enum_video_stream_type.go create mode 100644 pkg/dialects/avssuas/enum_vtol_transition_heading.go create mode 100644 pkg/dialects/avssuas/enum_wifi_config_ap_mode.go create mode 100644 pkg/dialects/avssuas/enum_wifi_config_ap_response.go create mode 100644 pkg/dialects/avssuas/enum_winch_actions.go create mode 100644 pkg/dialects/avssuas/msg_actuator_control_target.go create mode 100644 pkg/dialects/avssuas/msg_actuator_output_status.go create mode 100644 pkg/dialects/avssuas/msg_adsb_vehicle.go create mode 100644 pkg/dialects/avssuas/msg_ais_vessel.go create mode 100644 pkg/dialects/avssuas/msg_altitude.go create mode 100644 pkg/dialects/avssuas/msg_att_pos_mocap.go create mode 100644 pkg/dialects/avssuas/msg_attitude.go create mode 100644 pkg/dialects/avssuas/msg_attitude_quaternion.go create mode 100644 pkg/dialects/avssuas/msg_attitude_quaternion_cov.go create mode 100644 pkg/dialects/avssuas/msg_attitude_target.go create mode 100644 pkg/dialects/avssuas/msg_auth_key.go create mode 100644 pkg/dialects/avssuas/msg_autopilot_state_for_gimbal_device.go create mode 100644 pkg/dialects/avssuas/msg_autopilot_version.go create mode 100644 pkg/dialects/avssuas/msg_avss_prs_sys_status.go create mode 100644 pkg/dialects/avssuas/msg_battery_status.go create mode 100644 pkg/dialects/avssuas/msg_button_change.go create mode 100644 pkg/dialects/avssuas/msg_camera_capture_status.go create mode 100644 pkg/dialects/avssuas/msg_camera_fov_status.go create mode 100644 pkg/dialects/avssuas/msg_camera_image_captured.go create mode 100644 pkg/dialects/avssuas/msg_camera_information.go create mode 100644 pkg/dialects/avssuas/msg_camera_settings.go create mode 100644 pkg/dialects/avssuas/msg_camera_tracking_geo_status.go create mode 100644 pkg/dialects/avssuas/msg_camera_tracking_image_status.go create mode 100644 pkg/dialects/avssuas/msg_camera_trigger.go create mode 100644 pkg/dialects/avssuas/msg_cellular_config.go create mode 100644 pkg/dialects/avssuas/msg_cellular_status.go create mode 100644 pkg/dialects/avssuas/msg_change_operator_control.go create mode 100644 pkg/dialects/avssuas/msg_change_operator_control_ack.go create mode 100644 pkg/dialects/avssuas/msg_collision.go create mode 100644 pkg/dialects/avssuas/msg_command_ack.go create mode 100644 pkg/dialects/avssuas/msg_command_cancel.go create mode 100644 pkg/dialects/avssuas/msg_command_int.go create mode 100644 pkg/dialects/avssuas/msg_command_long.go create mode 100644 pkg/dialects/avssuas/msg_component_information.go create mode 100644 pkg/dialects/avssuas/msg_control_system_state.go create mode 100644 pkg/dialects/avssuas/msg_current_event_sequence.go create mode 100644 pkg/dialects/avssuas/msg_data_stream.go create mode 100644 pkg/dialects/avssuas/msg_data_transmission_handshake.go create mode 100644 pkg/dialects/avssuas/msg_debug.go create mode 100644 pkg/dialects/avssuas/msg_debug_float_array.go create mode 100644 pkg/dialects/avssuas/msg_debug_vect.go create mode 100644 pkg/dialects/avssuas/msg_distance_sensor.go create mode 100644 pkg/dialects/avssuas/msg_efi_status.go create mode 100644 pkg/dialects/avssuas/msg_encapsulated_data.go create mode 100644 pkg/dialects/avssuas/msg_esc_info.go create mode 100644 pkg/dialects/avssuas/msg_esc_status.go create mode 100644 pkg/dialects/avssuas/msg_estimator_status.go create mode 100644 pkg/dialects/avssuas/msg_event.go create mode 100644 pkg/dialects/avssuas/msg_extended_sys_state.go create mode 100644 pkg/dialects/avssuas/msg_fence_status.go create mode 100644 pkg/dialects/avssuas/msg_file_transfer_protocol.go create mode 100644 pkg/dialects/avssuas/msg_flight_information.go create mode 100644 pkg/dialects/avssuas/msg_follow_target.go create mode 100644 pkg/dialects/avssuas/msg_generator_status.go create mode 100644 pkg/dialects/avssuas/msg_gimbal_device_attitude_status.go create mode 100644 pkg/dialects/avssuas/msg_gimbal_device_information.go create mode 100644 pkg/dialects/avssuas/msg_gimbal_device_set_attitude.go create mode 100644 pkg/dialects/avssuas/msg_gimbal_manager_information.go create mode 100644 pkg/dialects/avssuas/msg_gimbal_manager_set_attitude.go create mode 100644 pkg/dialects/avssuas/msg_gimbal_manager_set_manual_control.go create mode 100644 pkg/dialects/avssuas/msg_gimbal_manager_set_pitchyaw.go create mode 100644 pkg/dialects/avssuas/msg_gimbal_manager_status.go create mode 100644 pkg/dialects/avssuas/msg_global_position_int.go create mode 100644 pkg/dialects/avssuas/msg_global_position_int_cov.go create mode 100644 pkg/dialects/avssuas/msg_global_vision_position_estimate.go create mode 100644 pkg/dialects/avssuas/msg_gps2_raw.go create mode 100644 pkg/dialects/avssuas/msg_gps2_rtk.go create mode 100644 pkg/dialects/avssuas/msg_gps_global_origin.go create mode 100644 pkg/dialects/avssuas/msg_gps_inject_data.go create mode 100644 pkg/dialects/avssuas/msg_gps_input.go create mode 100644 pkg/dialects/avssuas/msg_gps_raw_int.go create mode 100644 pkg/dialects/avssuas/msg_gps_rtcm_data.go create mode 100644 pkg/dialects/avssuas/msg_gps_rtk.go create mode 100644 pkg/dialects/avssuas/msg_gps_status.go create mode 100644 pkg/dialects/avssuas/msg_heartbeat.go create mode 100644 pkg/dialects/avssuas/msg_high_latency.go create mode 100644 pkg/dialects/avssuas/msg_high_latency2.go create mode 100644 pkg/dialects/avssuas/msg_highres_imu.go create mode 100644 pkg/dialects/avssuas/msg_hil_actuator_controls.go create mode 100644 pkg/dialects/avssuas/msg_hil_controls.go create mode 100644 pkg/dialects/avssuas/msg_hil_gps.go create mode 100644 pkg/dialects/avssuas/msg_hil_optical_flow.go create mode 100644 pkg/dialects/avssuas/msg_hil_rc_inputs_raw.go create mode 100644 pkg/dialects/avssuas/msg_hil_sensor.go create mode 100644 pkg/dialects/avssuas/msg_hil_state.go create mode 100644 pkg/dialects/avssuas/msg_hil_state_quaternion.go create mode 100644 pkg/dialects/avssuas/msg_home_position.go create mode 100644 pkg/dialects/avssuas/msg_hygrometer_sensor.go create mode 100644 pkg/dialects/avssuas/msg_isbd_link_status.go create mode 100644 pkg/dialects/avssuas/msg_landing_target.go create mode 100644 pkg/dialects/avssuas/msg_link_node_status.go create mode 100644 pkg/dialects/avssuas/msg_local_position_ned.go create mode 100644 pkg/dialects/avssuas/msg_local_position_ned_cov.go create mode 100644 pkg/dialects/avssuas/msg_local_position_ned_system_global_offset.go create mode 100644 pkg/dialects/avssuas/msg_log_data.go create mode 100644 pkg/dialects/avssuas/msg_log_entry.go create mode 100644 pkg/dialects/avssuas/msg_log_erase.go create mode 100644 pkg/dialects/avssuas/msg_log_request_data.go create mode 100644 pkg/dialects/avssuas/msg_log_request_end.go create mode 100644 pkg/dialects/avssuas/msg_log_request_list.go create mode 100644 pkg/dialects/avssuas/msg_logging_ack.go create mode 100644 pkg/dialects/avssuas/msg_logging_data.go create mode 100644 pkg/dialects/avssuas/msg_logging_data_acked.go create mode 100644 pkg/dialects/avssuas/msg_mag_cal_report.go create mode 100644 pkg/dialects/avssuas/msg_manual_control.go create mode 100644 pkg/dialects/avssuas/msg_manual_setpoint.go create mode 100644 pkg/dialects/avssuas/msg_memory_vect.go create mode 100644 pkg/dialects/avssuas/msg_message_interval.go create mode 100644 pkg/dialects/avssuas/msg_mission_ack.go create mode 100644 pkg/dialects/avssuas/msg_mission_clear_all.go create mode 100644 pkg/dialects/avssuas/msg_mission_count.go create mode 100644 pkg/dialects/avssuas/msg_mission_current.go create mode 100644 pkg/dialects/avssuas/msg_mission_item.go create mode 100644 pkg/dialects/avssuas/msg_mission_item_int.go create mode 100644 pkg/dialects/avssuas/msg_mission_item_reached.go create mode 100644 pkg/dialects/avssuas/msg_mission_request.go create mode 100644 pkg/dialects/avssuas/msg_mission_request_int.go create mode 100644 pkg/dialects/avssuas/msg_mission_request_list.go create mode 100644 pkg/dialects/avssuas/msg_mission_request_partial_list.go create mode 100644 pkg/dialects/avssuas/msg_mission_set_current.go create mode 100644 pkg/dialects/avssuas/msg_mission_write_partial_list.go create mode 100644 pkg/dialects/avssuas/msg_mount_orientation.go create mode 100644 pkg/dialects/avssuas/msg_named_value_float.go create mode 100644 pkg/dialects/avssuas/msg_named_value_int.go create mode 100644 pkg/dialects/avssuas/msg_nav_controller_output.go create mode 100644 pkg/dialects/avssuas/msg_obstacle_distance.go create mode 100644 pkg/dialects/avssuas/msg_odometry.go create mode 100644 pkg/dialects/avssuas/msg_onboard_computer_status.go create mode 100644 pkg/dialects/avssuas/msg_open_drone_id_authentication.go create mode 100644 pkg/dialects/avssuas/msg_open_drone_id_basic_id.go create mode 100644 pkg/dialects/avssuas/msg_open_drone_id_location.go create mode 100644 pkg/dialects/avssuas/msg_open_drone_id_message_pack.go create mode 100644 pkg/dialects/avssuas/msg_open_drone_id_operator_id.go create mode 100644 pkg/dialects/avssuas/msg_open_drone_id_self_id.go create mode 100644 pkg/dialects/avssuas/msg_open_drone_id_system.go create mode 100644 pkg/dialects/avssuas/msg_optical_flow.go create mode 100644 pkg/dialects/avssuas/msg_optical_flow_rad.go create mode 100644 pkg/dialects/avssuas/msg_orbit_execution_status.go create mode 100644 pkg/dialects/avssuas/msg_param_ext_ack.go create mode 100644 pkg/dialects/avssuas/msg_param_ext_request_list.go create mode 100644 pkg/dialects/avssuas/msg_param_ext_request_read.go create mode 100644 pkg/dialects/avssuas/msg_param_ext_set.go create mode 100644 pkg/dialects/avssuas/msg_param_ext_value.go create mode 100644 pkg/dialects/avssuas/msg_param_map_rc.go create mode 100644 pkg/dialects/avssuas/msg_param_request_list.go create mode 100644 pkg/dialects/avssuas/msg_param_request_read.go create mode 100644 pkg/dialects/avssuas/msg_param_set.go create mode 100644 pkg/dialects/avssuas/msg_param_value.go create mode 100644 pkg/dialects/avssuas/msg_ping.go create mode 100644 pkg/dialects/avssuas/msg_play_tune.go create mode 100644 pkg/dialects/avssuas/msg_play_tune_v2.go create mode 100644 pkg/dialects/avssuas/msg_position_target_global_int.go create mode 100644 pkg/dialects/avssuas/msg_position_target_local_ned.go create mode 100644 pkg/dialects/avssuas/msg_power_status.go create mode 100644 pkg/dialects/avssuas/msg_protocol_version.go create mode 100644 pkg/dialects/avssuas/msg_radio_status.go create mode 100644 pkg/dialects/avssuas/msg_raw_imu.go create mode 100644 pkg/dialects/avssuas/msg_raw_pressure.go create mode 100644 pkg/dialects/avssuas/msg_raw_rpm.go create mode 100644 pkg/dialects/avssuas/msg_rc_channels.go create mode 100644 pkg/dialects/avssuas/msg_rc_channels_override.go create mode 100644 pkg/dialects/avssuas/msg_rc_channels_raw.go create mode 100644 pkg/dialects/avssuas/msg_rc_channels_scaled.go create mode 100644 pkg/dialects/avssuas/msg_request_data_stream.go create mode 100644 pkg/dialects/avssuas/msg_request_event.go create mode 100644 pkg/dialects/avssuas/msg_resource_request.go create mode 100644 pkg/dialects/avssuas/msg_response_event_error.go create mode 100644 pkg/dialects/avssuas/msg_safety_allowed_area.go create mode 100644 pkg/dialects/avssuas/msg_safety_set_allowed_area.go create mode 100644 pkg/dialects/avssuas/msg_scaled_imu.go create mode 100644 pkg/dialects/avssuas/msg_scaled_imu2.go create mode 100644 pkg/dialects/avssuas/msg_scaled_imu3.go create mode 100644 pkg/dialects/avssuas/msg_scaled_pressure.go create mode 100644 pkg/dialects/avssuas/msg_scaled_pressure2.go create mode 100644 pkg/dialects/avssuas/msg_scaled_pressure3.go create mode 100644 pkg/dialects/avssuas/msg_serial_control.go create mode 100644 pkg/dialects/avssuas/msg_servo_output_raw.go create mode 100644 pkg/dialects/avssuas/msg_set_actuator_control_target.go create mode 100644 pkg/dialects/avssuas/msg_set_attitude_target.go create mode 100644 pkg/dialects/avssuas/msg_set_gps_global_origin.go create mode 100644 pkg/dialects/avssuas/msg_set_home_position.go create mode 100644 pkg/dialects/avssuas/msg_set_mode.go create mode 100644 pkg/dialects/avssuas/msg_set_position_target_global_int.go create mode 100644 pkg/dialects/avssuas/msg_set_position_target_local_ned.go create mode 100644 pkg/dialects/avssuas/msg_setup_signing.go create mode 100644 pkg/dialects/avssuas/msg_sim_state.go create mode 100644 pkg/dialects/avssuas/msg_smart_battery_info.go create mode 100644 pkg/dialects/avssuas/msg_statustext.go create mode 100644 pkg/dialects/avssuas/msg_storage_information.go create mode 100644 pkg/dialects/avssuas/msg_supported_tunes.go create mode 100644 pkg/dialects/avssuas/msg_sys_status.go create mode 100644 pkg/dialects/avssuas/msg_system_time.go create mode 100644 pkg/dialects/avssuas/msg_terrain_check.go create mode 100644 pkg/dialects/avssuas/msg_terrain_data.go create mode 100644 pkg/dialects/avssuas/msg_terrain_report.go create mode 100644 pkg/dialects/avssuas/msg_terrain_request.go create mode 100644 pkg/dialects/avssuas/msg_time_estimate_to_target.go create mode 100644 pkg/dialects/avssuas/msg_timesync.go create mode 100644 pkg/dialects/avssuas/msg_trajectory_representation_bezier.go create mode 100644 pkg/dialects/avssuas/msg_trajectory_representation_waypoints.go create mode 100644 pkg/dialects/avssuas/msg_tunnel.go create mode 100644 pkg/dialects/avssuas/msg_uavcan_node_info.go create mode 100644 pkg/dialects/avssuas/msg_uavcan_node_status.go create mode 100644 pkg/dialects/avssuas/msg_utm_global_position.go create mode 100644 pkg/dialects/avssuas/msg_v2_extension.go create mode 100644 pkg/dialects/avssuas/msg_vfr_hud.go create mode 100644 pkg/dialects/avssuas/msg_vibration.go create mode 100644 pkg/dialects/avssuas/msg_vicon_position_estimate.go create mode 100644 pkg/dialects/avssuas/msg_video_stream_information.go create mode 100644 pkg/dialects/avssuas/msg_video_stream_status.go create mode 100644 pkg/dialects/avssuas/msg_vision_position_estimate.go create mode 100644 pkg/dialects/avssuas/msg_vision_speed_estimate.go create mode 100644 pkg/dialects/avssuas/msg_wheel_distance.go create mode 100644 pkg/dialects/avssuas/msg_wifi_config_ap.go create mode 100644 pkg/dialects/avssuas/msg_winch_status.go create mode 100644 pkg/dialects/avssuas/msg_wind_cov.go create mode 100644 pkg/dialects/development/dialect.go create mode 100644 pkg/dialects/development/enum_actuator_configuration.go create mode 100644 pkg/dialects/development/enum_actuator_output_function.go create mode 100644 pkg/dialects/development/enum_adsb_altitude_type.go create mode 100644 pkg/dialects/development/enum_adsb_emitter_type.go create mode 100644 pkg/dialects/development/enum_adsb_flags.go create mode 100644 pkg/dialects/development/enum_airspeed_sensor_type.go create mode 100644 pkg/dialects/development/enum_ais_flags.go create mode 100644 pkg/dialects/development/enum_ais_nav_status.go create mode 100644 pkg/dialects/development/enum_ais_type.go create mode 100644 pkg/dialects/development/enum_attitude_target_typemask.go create mode 100644 pkg/dialects/development/enum_autotune_axis.go create mode 100644 pkg/dialects/development/enum_camera_cap_flags.go create mode 100644 pkg/dialects/development/enum_camera_mode.go create mode 100644 pkg/dialects/development/enum_camera_tracking_mode.go create mode 100644 pkg/dialects/development/enum_camera_tracking_status_flags.go create mode 100644 pkg/dialects/development/enum_camera_tracking_target_data.go create mode 100644 pkg/dialects/development/enum_camera_zoom_type.go create mode 100644 pkg/dialects/development/enum_cellular_config_response.go create mode 100644 pkg/dialects/development/enum_cellular_network_failed_reason.go create mode 100644 pkg/dialects/development/enum_cellular_network_radio_type.go create mode 100644 pkg/dialects/development/enum_cellular_status_flag.go create mode 100644 pkg/dialects/development/enum_comp_metadata_type.go create mode 100644 pkg/dialects/development/enum_esc_connection_type.go create mode 100644 pkg/dialects/development/enum_esc_failure_flags.go create mode 100644 pkg/dialects/development/enum_estimator_status_flags.go create mode 100644 pkg/dialects/development/enum_failure_type.go create mode 100644 pkg/dialects/development/enum_failure_unit.go create mode 100644 pkg/dialects/development/enum_fence_action.go create mode 100644 pkg/dialects/development/enum_fence_breach.go create mode 100644 pkg/dialects/development/enum_fence_mitigate.go create mode 100644 pkg/dialects/development/enum_firmware_version_type.go create mode 100644 pkg/dialects/development/enum_gimbal_device_cap_flags.go create mode 100644 pkg/dialects/development/enum_gimbal_device_error_flags.go create mode 100644 pkg/dialects/development/enum_gimbal_device_flags.go create mode 100644 pkg/dialects/development/enum_gimbal_manager_cap_flags.go create mode 100644 pkg/dialects/development/enum_gimbal_manager_flags.go create mode 100644 pkg/dialects/development/enum_gps_fix_type.go create mode 100644 pkg/dialects/development/enum_gps_input_ignore_flags.go create mode 100644 pkg/dialects/development/enum_gripper_actions.go create mode 100644 pkg/dialects/development/enum_highres_imu_updated_flags.go create mode 100644 pkg/dialects/development/enum_hil_sensor_updated_flags.go create mode 100644 pkg/dialects/development/enum_hl_failure_flag.go create mode 100644 pkg/dialects/development/enum_landing_target_type.go create mode 100644 pkg/dialects/development/enum_mag_cal_status.go create mode 100644 pkg/dialects/development/enum_mav_arm_auth_denied_reason.go create mode 100644 pkg/dialects/development/enum_mav_autopilot.go create mode 100644 pkg/dialects/development/enum_mav_battery_charge_state.go create mode 100644 pkg/dialects/development/enum_mav_battery_fault.go create mode 100644 pkg/dialects/development/enum_mav_battery_function.go create mode 100644 pkg/dialects/development/enum_mav_battery_mode.go create mode 100644 pkg/dialects/development/enum_mav_battery_type.go create mode 100644 pkg/dialects/development/enum_mav_cmd.go create mode 100644 pkg/dialects/development/enum_mav_cmd_ack.go create mode 100644 pkg/dialects/development/enum_mav_collision_action.go create mode 100644 pkg/dialects/development/enum_mav_collision_src.go create mode 100644 pkg/dialects/development/enum_mav_collision_threat_level.go create mode 100644 pkg/dialects/development/enum_mav_component.go create mode 100644 pkg/dialects/development/enum_mav_data_stream.go create mode 100644 pkg/dialects/development/enum_mav_distance_sensor.go create mode 100644 pkg/dialects/development/enum_mav_do_reposition_flags.go create mode 100644 pkg/dialects/development/enum_mav_estimator_type.go create mode 100644 pkg/dialects/development/enum_mav_event_current_sequence_flags.go create mode 100644 pkg/dialects/development/enum_mav_event_error_reason.go create mode 100644 pkg/dialects/development/enum_mav_frame.go create mode 100644 pkg/dialects/development/enum_mav_generator_status_flag.go create mode 100644 pkg/dialects/development/enum_mav_goto.go create mode 100644 pkg/dialects/development/enum_mav_landed_state.go create mode 100644 pkg/dialects/development/enum_mav_mission_result.go create mode 100644 pkg/dialects/development/enum_mav_mission_type.go create mode 100644 pkg/dialects/development/enum_mav_mode.go create mode 100644 pkg/dialects/development/enum_mav_mode_flag.go create mode 100644 pkg/dialects/development/enum_mav_mode_flag_decode_position.go create mode 100644 pkg/dialects/development/enum_mav_mount_mode.go create mode 100644 pkg/dialects/development/enum_mav_odid_auth_type.go create mode 100644 pkg/dialects/development/enum_mav_odid_category_eu.go create mode 100644 pkg/dialects/development/enum_mav_odid_class_eu.go create mode 100644 pkg/dialects/development/enum_mav_odid_classification_type.go create mode 100644 pkg/dialects/development/enum_mav_odid_desc_type.go create mode 100644 pkg/dialects/development/enum_mav_odid_height_ref.go create mode 100644 pkg/dialects/development/enum_mav_odid_hor_acc.go create mode 100644 pkg/dialects/development/enum_mav_odid_id_type.go create mode 100644 pkg/dialects/development/enum_mav_odid_operator_id_type.go create mode 100644 pkg/dialects/development/enum_mav_odid_operator_location_type.go create mode 100644 pkg/dialects/development/enum_mav_odid_speed_acc.go create mode 100644 pkg/dialects/development/enum_mav_odid_status.go create mode 100644 pkg/dialects/development/enum_mav_odid_time_acc.go create mode 100644 pkg/dialects/development/enum_mav_odid_ua_type.go create mode 100644 pkg/dialects/development/enum_mav_odid_ver_acc.go create mode 100644 pkg/dialects/development/enum_mav_param_ext_type.go create mode 100644 pkg/dialects/development/enum_mav_param_type.go create mode 100644 pkg/dialects/development/enum_mav_power_status.go create mode 100644 pkg/dialects/development/enum_mav_protocol_capability.go create mode 100644 pkg/dialects/development/enum_mav_result.go create mode 100644 pkg/dialects/development/enum_mav_roi.go create mode 100644 pkg/dialects/development/enum_mav_sensor_orientation.go create mode 100644 pkg/dialects/development/enum_mav_severity.go create mode 100644 pkg/dialects/development/enum_mav_state.go create mode 100644 pkg/dialects/development/enum_mav_sys_status_sensor.go create mode 100644 pkg/dialects/development/enum_mav_sys_status_sensor_extended.go create mode 100644 pkg/dialects/development/enum_mav_tunnel_payload_type.go create mode 100644 pkg/dialects/development/enum_mav_type.go create mode 100644 pkg/dialects/development/enum_mav_vtol_state.go create mode 100644 pkg/dialects/development/enum_mav_winch_status_flag.go create mode 100644 pkg/dialects/development/enum_mavlink_data_stream_type.go create mode 100644 pkg/dialects/development/enum_motor_test_order.go create mode 100644 pkg/dialects/development/enum_motor_test_throttle_type.go create mode 100644 pkg/dialects/development/enum_nav_vtol_land_options.go create mode 100644 pkg/dialects/development/enum_orbit_yaw_behaviour.go create mode 100644 pkg/dialects/development/enum_parachute_action.go create mode 100644 pkg/dialects/development/enum_param_ack.go create mode 100644 pkg/dialects/development/enum_param_transaction_action.go create mode 100644 pkg/dialects/development/enum_param_transaction_transport.go create mode 100644 pkg/dialects/development/enum_position_target_typemask.go create mode 100644 pkg/dialects/development/enum_precision_land_mode.go create mode 100644 pkg/dialects/development/enum_rc_type.go create mode 100644 pkg/dialects/development/enum_rtk_baseline_coordinate_system.go create mode 100644 pkg/dialects/development/enum_serial_control_dev.go create mode 100644 pkg/dialects/development/enum_serial_control_flag.go create mode 100644 pkg/dialects/development/enum_set_focus_type.go create mode 100644 pkg/dialects/development/enum_storage_status.go create mode 100644 pkg/dialects/development/enum_storage_type.go create mode 100644 pkg/dialects/development/enum_storage_usage_flag.go create mode 100644 pkg/dialects/development/enum_tune_format.go create mode 100644 pkg/dialects/development/enum_uavcan_node_health.go create mode 100644 pkg/dialects/development/enum_uavcan_node_mode.go create mode 100644 pkg/dialects/development/enum_utm_data_avail_flags.go create mode 100644 pkg/dialects/development/enum_utm_flight_state.go create mode 100644 pkg/dialects/development/enum_video_stream_status_flags.go create mode 100644 pkg/dialects/development/enum_video_stream_type.go create mode 100644 pkg/dialects/development/enum_vtol_transition_heading.go create mode 100644 pkg/dialects/development/enum_wifi_config_ap_mode.go create mode 100644 pkg/dialects/development/enum_wifi_config_ap_response.go create mode 100644 pkg/dialects/development/enum_wifi_network_security.go create mode 100644 pkg/dialects/development/enum_winch_actions.go create mode 100644 pkg/dialects/development/msg_actuator_control_target.go create mode 100644 pkg/dialects/development/msg_actuator_output_status.go create mode 100644 pkg/dialects/development/msg_adsb_vehicle.go create mode 100644 pkg/dialects/development/msg_airspeed.go create mode 100644 pkg/dialects/development/msg_ais_vessel.go create mode 100644 pkg/dialects/development/msg_altitude.go create mode 100644 pkg/dialects/development/msg_att_pos_mocap.go create mode 100644 pkg/dialects/development/msg_attitude.go create mode 100644 pkg/dialects/development/msg_attitude_quaternion.go create mode 100644 pkg/dialects/development/msg_attitude_quaternion_cov.go create mode 100644 pkg/dialects/development/msg_attitude_target.go create mode 100644 pkg/dialects/development/msg_auth_key.go create mode 100644 pkg/dialects/development/msg_autopilot_state_for_gimbal_device.go create mode 100644 pkg/dialects/development/msg_autopilot_version.go create mode 100644 pkg/dialects/development/msg_battery_status.go create mode 100644 pkg/dialects/development/msg_button_change.go create mode 100644 pkg/dialects/development/msg_camera_capture_status.go create mode 100644 pkg/dialects/development/msg_camera_fov_status.go create mode 100644 pkg/dialects/development/msg_camera_image_captured.go create mode 100644 pkg/dialects/development/msg_camera_information.go create mode 100644 pkg/dialects/development/msg_camera_settings.go create mode 100644 pkg/dialects/development/msg_camera_tracking_geo_status.go create mode 100644 pkg/dialects/development/msg_camera_tracking_image_status.go create mode 100644 pkg/dialects/development/msg_camera_trigger.go create mode 100644 pkg/dialects/development/msg_cellular_config.go create mode 100644 pkg/dialects/development/msg_cellular_status.go create mode 100644 pkg/dialects/development/msg_change_operator_control.go create mode 100644 pkg/dialects/development/msg_change_operator_control_ack.go create mode 100644 pkg/dialects/development/msg_collision.go create mode 100644 pkg/dialects/development/msg_command_ack.go create mode 100644 pkg/dialects/development/msg_command_cancel.go create mode 100644 pkg/dialects/development/msg_command_int.go create mode 100644 pkg/dialects/development/msg_command_long.go create mode 100644 pkg/dialects/development/msg_component_information.go create mode 100644 pkg/dialects/development/msg_component_information_basic.go create mode 100644 pkg/dialects/development/msg_control_system_state.go create mode 100644 pkg/dialects/development/msg_current_event_sequence.go create mode 100644 pkg/dialects/development/msg_data_stream.go create mode 100644 pkg/dialects/development/msg_data_transmission_handshake.go create mode 100644 pkg/dialects/development/msg_debug.go create mode 100644 pkg/dialects/development/msg_debug_float_array.go create mode 100644 pkg/dialects/development/msg_debug_vect.go create mode 100644 pkg/dialects/development/msg_distance_sensor.go create mode 100644 pkg/dialects/development/msg_efi_status.go create mode 100644 pkg/dialects/development/msg_encapsulated_data.go create mode 100644 pkg/dialects/development/msg_esc_info.go create mode 100644 pkg/dialects/development/msg_esc_status.go create mode 100644 pkg/dialects/development/msg_estimator_status.go create mode 100644 pkg/dialects/development/msg_event.go create mode 100644 pkg/dialects/development/msg_extended_sys_state.go create mode 100644 pkg/dialects/development/msg_fence_status.go create mode 100644 pkg/dialects/development/msg_file_transfer_protocol.go create mode 100644 pkg/dialects/development/msg_flight_information.go create mode 100644 pkg/dialects/development/msg_follow_target.go create mode 100644 pkg/dialects/development/msg_generator_status.go create mode 100644 pkg/dialects/development/msg_gimbal_device_attitude_status.go create mode 100644 pkg/dialects/development/msg_gimbal_device_information.go create mode 100644 pkg/dialects/development/msg_gimbal_device_set_attitude.go create mode 100644 pkg/dialects/development/msg_gimbal_manager_information.go create mode 100644 pkg/dialects/development/msg_gimbal_manager_set_attitude.go create mode 100644 pkg/dialects/development/msg_gimbal_manager_set_manual_control.go create mode 100644 pkg/dialects/development/msg_gimbal_manager_set_pitchyaw.go create mode 100644 pkg/dialects/development/msg_gimbal_manager_status.go create mode 100644 pkg/dialects/development/msg_global_position_int.go create mode 100644 pkg/dialects/development/msg_global_position_int_cov.go create mode 100644 pkg/dialects/development/msg_global_vision_position_estimate.go create mode 100644 pkg/dialects/development/msg_gps2_raw.go create mode 100644 pkg/dialects/development/msg_gps2_rtk.go create mode 100644 pkg/dialects/development/msg_gps_global_origin.go create mode 100644 pkg/dialects/development/msg_gps_inject_data.go create mode 100644 pkg/dialects/development/msg_gps_input.go create mode 100644 pkg/dialects/development/msg_gps_raw_int.go create mode 100644 pkg/dialects/development/msg_gps_rtcm_data.go create mode 100644 pkg/dialects/development/msg_gps_rtk.go create mode 100644 pkg/dialects/development/msg_gps_status.go create mode 100644 pkg/dialects/development/msg_group_end.go create mode 100644 pkg/dialects/development/msg_group_start.go create mode 100644 pkg/dialects/development/msg_heartbeat.go create mode 100644 pkg/dialects/development/msg_high_latency.go create mode 100644 pkg/dialects/development/msg_high_latency2.go create mode 100644 pkg/dialects/development/msg_highres_imu.go create mode 100644 pkg/dialects/development/msg_hil_actuator_controls.go create mode 100644 pkg/dialects/development/msg_hil_controls.go create mode 100644 pkg/dialects/development/msg_hil_gps.go create mode 100644 pkg/dialects/development/msg_hil_optical_flow.go create mode 100644 pkg/dialects/development/msg_hil_rc_inputs_raw.go create mode 100644 pkg/dialects/development/msg_hil_sensor.go create mode 100644 pkg/dialects/development/msg_hil_state.go create mode 100644 pkg/dialects/development/msg_hil_state_quaternion.go create mode 100644 pkg/dialects/development/msg_home_position.go create mode 100644 pkg/dialects/development/msg_hygrometer_sensor.go create mode 100644 pkg/dialects/development/msg_isbd_link_status.go create mode 100644 pkg/dialects/development/msg_landing_target.go create mode 100644 pkg/dialects/development/msg_link_node_status.go create mode 100644 pkg/dialects/development/msg_local_position_ned.go create mode 100644 pkg/dialects/development/msg_local_position_ned_cov.go create mode 100644 pkg/dialects/development/msg_local_position_ned_system_global_offset.go create mode 100644 pkg/dialects/development/msg_log_data.go create mode 100644 pkg/dialects/development/msg_log_entry.go create mode 100644 pkg/dialects/development/msg_log_erase.go create mode 100644 pkg/dialects/development/msg_log_request_data.go create mode 100644 pkg/dialects/development/msg_log_request_end.go create mode 100644 pkg/dialects/development/msg_log_request_list.go create mode 100644 pkg/dialects/development/msg_logging_ack.go create mode 100644 pkg/dialects/development/msg_logging_data.go create mode 100644 pkg/dialects/development/msg_logging_data_acked.go create mode 100644 pkg/dialects/development/msg_mag_cal_report.go create mode 100644 pkg/dialects/development/msg_manual_control.go create mode 100644 pkg/dialects/development/msg_manual_setpoint.go create mode 100644 pkg/dialects/development/msg_memory_vect.go create mode 100644 pkg/dialects/development/msg_message_interval.go create mode 100644 pkg/dialects/development/msg_mission_ack.go create mode 100644 pkg/dialects/development/msg_mission_changed.go create mode 100644 pkg/dialects/development/msg_mission_checksum.go create mode 100644 pkg/dialects/development/msg_mission_clear_all.go create mode 100644 pkg/dialects/development/msg_mission_count.go create mode 100644 pkg/dialects/development/msg_mission_current.go create mode 100644 pkg/dialects/development/msg_mission_item.go create mode 100644 pkg/dialects/development/msg_mission_item_int.go create mode 100644 pkg/dialects/development/msg_mission_item_reached.go create mode 100644 pkg/dialects/development/msg_mission_request.go create mode 100644 pkg/dialects/development/msg_mission_request_int.go create mode 100644 pkg/dialects/development/msg_mission_request_list.go create mode 100644 pkg/dialects/development/msg_mission_request_partial_list.go create mode 100644 pkg/dialects/development/msg_mission_set_current.go create mode 100644 pkg/dialects/development/msg_mission_write_partial_list.go create mode 100644 pkg/dialects/development/msg_mount_orientation.go create mode 100644 pkg/dialects/development/msg_named_value_float.go create mode 100644 pkg/dialects/development/msg_named_value_int.go create mode 100644 pkg/dialects/development/msg_nav_controller_output.go create mode 100644 pkg/dialects/development/msg_obstacle_distance.go create mode 100644 pkg/dialects/development/msg_odometry.go create mode 100644 pkg/dialects/development/msg_onboard_computer_status.go create mode 100644 pkg/dialects/development/msg_open_drone_id_authentication.go create mode 100644 pkg/dialects/development/msg_open_drone_id_basic_id.go create mode 100644 pkg/dialects/development/msg_open_drone_id_location.go create mode 100644 pkg/dialects/development/msg_open_drone_id_message_pack.go create mode 100644 pkg/dialects/development/msg_open_drone_id_operator_id.go create mode 100644 pkg/dialects/development/msg_open_drone_id_self_id.go create mode 100644 pkg/dialects/development/msg_open_drone_id_system.go create mode 100644 pkg/dialects/development/msg_optical_flow.go create mode 100644 pkg/dialects/development/msg_optical_flow_rad.go create mode 100644 pkg/dialects/development/msg_orbit_execution_status.go create mode 100644 pkg/dialects/development/msg_param_ack_transaction.go create mode 100644 pkg/dialects/development/msg_param_ext_ack.go create mode 100644 pkg/dialects/development/msg_param_ext_request_list.go create mode 100644 pkg/dialects/development/msg_param_ext_request_read.go create mode 100644 pkg/dialects/development/msg_param_ext_set.go create mode 100644 pkg/dialects/development/msg_param_ext_value.go create mode 100644 pkg/dialects/development/msg_param_map_rc.go create mode 100644 pkg/dialects/development/msg_param_request_list.go create mode 100644 pkg/dialects/development/msg_param_request_read.go create mode 100644 pkg/dialects/development/msg_param_set.go create mode 100644 pkg/dialects/development/msg_param_value.go create mode 100644 pkg/dialects/development/msg_ping.go create mode 100644 pkg/dialects/development/msg_play_tune.go create mode 100644 pkg/dialects/development/msg_play_tune_v2.go create mode 100644 pkg/dialects/development/msg_position_target_global_int.go create mode 100644 pkg/dialects/development/msg_position_target_local_ned.go create mode 100644 pkg/dialects/development/msg_power_status.go create mode 100644 pkg/dialects/development/msg_protocol_version.go create mode 100644 pkg/dialects/development/msg_radio_status.go create mode 100644 pkg/dialects/development/msg_raw_imu.go create mode 100644 pkg/dialects/development/msg_raw_pressure.go create mode 100644 pkg/dialects/development/msg_raw_rpm.go create mode 100644 pkg/dialects/development/msg_rc_channels.go create mode 100644 pkg/dialects/development/msg_rc_channels_override.go create mode 100644 pkg/dialects/development/msg_rc_channels_raw.go create mode 100644 pkg/dialects/development/msg_rc_channels_scaled.go create mode 100644 pkg/dialects/development/msg_request_data_stream.go create mode 100644 pkg/dialects/development/msg_request_event.go create mode 100644 pkg/dialects/development/msg_resource_request.go create mode 100644 pkg/dialects/development/msg_response_event_error.go create mode 100644 pkg/dialects/development/msg_safety_allowed_area.go create mode 100644 pkg/dialects/development/msg_safety_set_allowed_area.go create mode 100644 pkg/dialects/development/msg_scaled_imu.go create mode 100644 pkg/dialects/development/msg_scaled_imu2.go create mode 100644 pkg/dialects/development/msg_scaled_imu3.go create mode 100644 pkg/dialects/development/msg_scaled_pressure.go create mode 100644 pkg/dialects/development/msg_scaled_pressure2.go create mode 100644 pkg/dialects/development/msg_scaled_pressure3.go create mode 100644 pkg/dialects/development/msg_serial_control.go create mode 100644 pkg/dialects/development/msg_servo_output_raw.go create mode 100644 pkg/dialects/development/msg_set_actuator_control_target.go create mode 100644 pkg/dialects/development/msg_set_attitude_target.go create mode 100644 pkg/dialects/development/msg_set_gps_global_origin.go create mode 100644 pkg/dialects/development/msg_set_home_position.go create mode 100644 pkg/dialects/development/msg_set_mode.go create mode 100644 pkg/dialects/development/msg_set_position_target_global_int.go create mode 100644 pkg/dialects/development/msg_set_position_target_local_ned.go create mode 100644 pkg/dialects/development/msg_setup_signing.go create mode 100644 pkg/dialects/development/msg_sim_state.go create mode 100644 pkg/dialects/development/msg_smart_battery_info.go create mode 100644 pkg/dialects/development/msg_statustext.go create mode 100644 pkg/dialects/development/msg_storage_information.go create mode 100644 pkg/dialects/development/msg_supported_tunes.go create mode 100644 pkg/dialects/development/msg_sys_status.go create mode 100644 pkg/dialects/development/msg_system_time.go create mode 100644 pkg/dialects/development/msg_terrain_check.go create mode 100644 pkg/dialects/development/msg_terrain_data.go create mode 100644 pkg/dialects/development/msg_terrain_report.go create mode 100644 pkg/dialects/development/msg_terrain_request.go create mode 100644 pkg/dialects/development/msg_time_estimate_to_target.go create mode 100644 pkg/dialects/development/msg_timesync.go create mode 100644 pkg/dialects/development/msg_trajectory_representation_bezier.go create mode 100644 pkg/dialects/development/msg_trajectory_representation_waypoints.go create mode 100644 pkg/dialects/development/msg_tunnel.go create mode 100644 pkg/dialects/development/msg_uavcan_node_info.go create mode 100644 pkg/dialects/development/msg_uavcan_node_status.go create mode 100644 pkg/dialects/development/msg_utm_global_position.go create mode 100644 pkg/dialects/development/msg_v2_extension.go create mode 100644 pkg/dialects/development/msg_vfr_hud.go create mode 100644 pkg/dialects/development/msg_vibration.go create mode 100644 pkg/dialects/development/msg_vicon_position_estimate.go create mode 100644 pkg/dialects/development/msg_video_stream_information.go create mode 100644 pkg/dialects/development/msg_video_stream_status.go create mode 100644 pkg/dialects/development/msg_vision_position_estimate.go create mode 100644 pkg/dialects/development/msg_vision_speed_estimate.go create mode 100644 pkg/dialects/development/msg_wheel_distance.go create mode 100644 pkg/dialects/development/msg_wifi_config_ap.go create mode 100644 pkg/dialects/development/msg_wifi_network_info.go create mode 100644 pkg/dialects/development/msg_winch_status.go create mode 100644 pkg/dialects/development/msg_wind_cov.go create mode 100644 pkg/dialects/storm32/dialect.go create mode 100644 pkg/dialects/storm32/enum_accelcal_vehicle_pos.go create mode 100644 pkg/dialects/storm32/enum_actuator_configuration.go create mode 100644 pkg/dialects/storm32/enum_actuator_output_function.go create mode 100644 pkg/dialects/storm32/enum_adsb_altitude_type.go create mode 100644 pkg/dialects/storm32/enum_adsb_emitter_type.go create mode 100644 pkg/dialects/storm32/enum_adsb_flags.go create mode 100644 pkg/dialects/storm32/enum_ais_flags.go create mode 100644 pkg/dialects/storm32/enum_ais_nav_status.go create mode 100644 pkg/dialects/storm32/enum_ais_type.go create mode 100644 pkg/dialects/storm32/enum_attitude_target_typemask.go create mode 100644 pkg/dialects/storm32/enum_autotune_axis.go create mode 100644 pkg/dialects/storm32/enum_camera_cap_flags.go create mode 100644 pkg/dialects/storm32/enum_camera_feedback_flags.go create mode 100644 pkg/dialects/storm32/enum_camera_mode.go create mode 100644 pkg/dialects/storm32/enum_camera_status_types.go create mode 100644 pkg/dialects/storm32/enum_camera_tracking_mode.go create mode 100644 pkg/dialects/storm32/enum_camera_tracking_status_flags.go create mode 100644 pkg/dialects/storm32/enum_camera_tracking_target_data.go create mode 100644 pkg/dialects/storm32/enum_camera_zoom_type.go create mode 100644 pkg/dialects/storm32/enum_cellular_config_response.go create mode 100644 pkg/dialects/storm32/enum_cellular_network_failed_reason.go create mode 100644 pkg/dialects/storm32/enum_cellular_network_radio_type.go create mode 100644 pkg/dialects/storm32/enum_cellular_status_flag.go create mode 100644 pkg/dialects/storm32/enum_comp_metadata_type.go create mode 100644 pkg/dialects/storm32/enum_copter_mode.go create mode 100644 pkg/dialects/storm32/enum_deepstall_stage.go create mode 100644 pkg/dialects/storm32/enum_device_op_bustype.go create mode 100644 pkg/dialects/storm32/enum_ekf_status_flags.go create mode 100644 pkg/dialects/storm32/enum_esc_connection_type.go create mode 100644 pkg/dialects/storm32/enum_esc_failure_flags.go create mode 100644 pkg/dialects/storm32/enum_estimator_status_flags.go create mode 100644 pkg/dialects/storm32/enum_failure_type.go create mode 100644 pkg/dialects/storm32/enum_failure_unit.go create mode 100644 pkg/dialects/storm32/enum_fence_action.go create mode 100644 pkg/dialects/storm32/enum_fence_breach.go create mode 100644 pkg/dialects/storm32/enum_fence_mitigate.go create mode 100644 pkg/dialects/storm32/enum_firmware_version_type.go create mode 100644 pkg/dialects/storm32/enum_gimbal_axis.go create mode 100644 pkg/dialects/storm32/enum_gimbal_axis_calibration_required.go create mode 100644 pkg/dialects/storm32/enum_gimbal_axis_calibration_status.go create mode 100644 pkg/dialects/storm32/enum_gimbal_device_cap_flags.go create mode 100644 pkg/dialects/storm32/enum_gimbal_device_error_flags.go create mode 100644 pkg/dialects/storm32/enum_gimbal_device_flags.go create mode 100644 pkg/dialects/storm32/enum_gimbal_manager_cap_flags.go create mode 100644 pkg/dialects/storm32/enum_gimbal_manager_flags.go create mode 100644 pkg/dialects/storm32/enum_gopro_burst_rate.go create mode 100644 pkg/dialects/storm32/enum_gopro_capture_mode.go create mode 100644 pkg/dialects/storm32/enum_gopro_charging.go create mode 100644 pkg/dialects/storm32/enum_gopro_command.go create mode 100644 pkg/dialects/storm32/enum_gopro_field_of_view.go create mode 100644 pkg/dialects/storm32/enum_gopro_frame_rate.go create mode 100644 pkg/dialects/storm32/enum_gopro_heartbeat_flags.go create mode 100644 pkg/dialects/storm32/enum_gopro_heartbeat_status.go create mode 100644 pkg/dialects/storm32/enum_gopro_model.go create mode 100644 pkg/dialects/storm32/enum_gopro_photo_resolution.go create mode 100644 pkg/dialects/storm32/enum_gopro_protune_colour.go create mode 100644 pkg/dialects/storm32/enum_gopro_protune_exposure.go create mode 100644 pkg/dialects/storm32/enum_gopro_protune_gain.go create mode 100644 pkg/dialects/storm32/enum_gopro_protune_sharpness.go create mode 100644 pkg/dialects/storm32/enum_gopro_protune_white_balance.go create mode 100644 pkg/dialects/storm32/enum_gopro_request_status.go create mode 100644 pkg/dialects/storm32/enum_gopro_resolution.go create mode 100644 pkg/dialects/storm32/enum_gopro_video_settings_flags.go create mode 100644 pkg/dialects/storm32/enum_gps_fix_type.go create mode 100644 pkg/dialects/storm32/enum_gps_input_ignore_flags.go create mode 100644 pkg/dialects/storm32/enum_gripper_actions.go create mode 100644 pkg/dialects/storm32/enum_heading_type.go create mode 100644 pkg/dialects/storm32/enum_highres_imu_updated_flags.go create mode 100644 pkg/dialects/storm32/enum_hil_sensor_updated_flags.go create mode 100644 pkg/dialects/storm32/enum_hl_failure_flag.go create mode 100644 pkg/dialects/storm32/enum_icarous_fms_state.go create mode 100644 pkg/dialects/storm32/enum_icarous_track_band_types.go create mode 100644 pkg/dialects/storm32/enum_landing_target_type.go create mode 100644 pkg/dialects/storm32/enum_led_control_pattern.go create mode 100644 pkg/dialects/storm32/enum_limit_module.go create mode 100644 pkg/dialects/storm32/enum_limits_state.go create mode 100644 pkg/dialects/storm32/enum_mag_cal_status.go create mode 100644 pkg/dialects/storm32/enum_mav_arm_auth_denied_reason.go create mode 100644 pkg/dialects/storm32/enum_mav_autopilot.go create mode 100644 pkg/dialects/storm32/enum_mav_battery_charge_state.go create mode 100644 pkg/dialects/storm32/enum_mav_battery_fault.go create mode 100644 pkg/dialects/storm32/enum_mav_battery_function.go create mode 100644 pkg/dialects/storm32/enum_mav_battery_mode.go create mode 100644 pkg/dialects/storm32/enum_mav_battery_type.go create mode 100644 pkg/dialects/storm32/enum_mav_cmd.go create mode 100644 pkg/dialects/storm32/enum_mav_cmd_ack.go create mode 100644 pkg/dialects/storm32/enum_mav_cmd_do_aux_function_switch_level.go create mode 100644 pkg/dialects/storm32/enum_mav_collision_action.go create mode 100644 pkg/dialects/storm32/enum_mav_collision_src.go create mode 100644 pkg/dialects/storm32/enum_mav_collision_threat_level.go create mode 100644 pkg/dialects/storm32/enum_mav_component.go create mode 100644 pkg/dialects/storm32/enum_mav_data_stream.go create mode 100644 pkg/dialects/storm32/enum_mav_distance_sensor.go create mode 100644 pkg/dialects/storm32/enum_mav_do_reposition_flags.go create mode 100644 pkg/dialects/storm32/enum_mav_estimator_type.go create mode 100644 pkg/dialects/storm32/enum_mav_event_current_sequence_flags.go create mode 100644 pkg/dialects/storm32/enum_mav_event_error_reason.go create mode 100644 pkg/dialects/storm32/enum_mav_frame.go create mode 100644 pkg/dialects/storm32/enum_mav_generator_status_flag.go create mode 100644 pkg/dialects/storm32/enum_mav_goto.go create mode 100644 pkg/dialects/storm32/enum_mav_landed_state.go create mode 100644 pkg/dialects/storm32/enum_mav_mission_result.go create mode 100644 pkg/dialects/storm32/enum_mav_mission_type.go create mode 100644 pkg/dialects/storm32/enum_mav_mode.go create mode 100644 pkg/dialects/storm32/enum_mav_mode_flag.go create mode 100644 pkg/dialects/storm32/enum_mav_mode_flag_decode_position.go create mode 100644 pkg/dialects/storm32/enum_mav_mode_gimbal.go create mode 100644 pkg/dialects/storm32/enum_mav_mount_mode.go create mode 100644 pkg/dialects/storm32/enum_mav_odid_auth_type.go create mode 100644 pkg/dialects/storm32/enum_mav_odid_category_eu.go create mode 100644 pkg/dialects/storm32/enum_mav_odid_class_eu.go create mode 100644 pkg/dialects/storm32/enum_mav_odid_classification_type.go create mode 100644 pkg/dialects/storm32/enum_mav_odid_desc_type.go create mode 100644 pkg/dialects/storm32/enum_mav_odid_height_ref.go create mode 100644 pkg/dialects/storm32/enum_mav_odid_hor_acc.go create mode 100644 pkg/dialects/storm32/enum_mav_odid_id_type.go create mode 100644 pkg/dialects/storm32/enum_mav_odid_operator_id_type.go create mode 100644 pkg/dialects/storm32/enum_mav_odid_operator_location_type.go create mode 100644 pkg/dialects/storm32/enum_mav_odid_speed_acc.go create mode 100644 pkg/dialects/storm32/enum_mav_odid_status.go create mode 100644 pkg/dialects/storm32/enum_mav_odid_time_acc.go create mode 100644 pkg/dialects/storm32/enum_mav_odid_ua_type.go create mode 100644 pkg/dialects/storm32/enum_mav_odid_ver_acc.go create mode 100644 pkg/dialects/storm32/enum_mav_param_ext_type.go create mode 100644 pkg/dialects/storm32/enum_mav_param_type.go create mode 100644 pkg/dialects/storm32/enum_mav_power_status.go create mode 100644 pkg/dialects/storm32/enum_mav_protocol_capability.go create mode 100644 pkg/dialects/storm32/enum_mav_qshot_mode.go create mode 100644 pkg/dialects/storm32/enum_mav_remote_log_data_block_commands.go create mode 100644 pkg/dialects/storm32/enum_mav_remote_log_data_block_statuses.go create mode 100644 pkg/dialects/storm32/enum_mav_result.go create mode 100644 pkg/dialects/storm32/enum_mav_roi.go create mode 100644 pkg/dialects/storm32/enum_mav_sensor_orientation.go create mode 100644 pkg/dialects/storm32/enum_mav_severity.go create mode 100644 pkg/dialects/storm32/enum_mav_state.go create mode 100644 pkg/dialects/storm32/enum_mav_storm32_camera_prearm_flags.go create mode 100644 pkg/dialects/storm32/enum_mav_storm32_gimbal_action.go create mode 100644 pkg/dialects/storm32/enum_mav_storm32_gimbal_device_cap_flags.go create mode 100644 pkg/dialects/storm32/enum_mav_storm32_gimbal_device_error_flags.go create mode 100644 pkg/dialects/storm32/enum_mav_storm32_gimbal_device_flags.go create mode 100644 pkg/dialects/storm32/enum_mav_storm32_gimbal_manager_cap_flags.go create mode 100644 pkg/dialects/storm32/enum_mav_storm32_gimbal_manager_client.go create mode 100644 pkg/dialects/storm32/enum_mav_storm32_gimbal_manager_flags.go create mode 100644 pkg/dialects/storm32/enum_mav_storm32_gimbal_manager_profile.go create mode 100644 pkg/dialects/storm32/enum_mav_storm32_gimbal_manager_setup_flags.go create mode 100644 pkg/dialects/storm32/enum_mav_storm32_gimbal_prearm_flags.go create mode 100644 pkg/dialects/storm32/enum_mav_storm32_tunnel_payload_type.go create mode 100644 pkg/dialects/storm32/enum_mav_sys_status_sensor.go create mode 100644 pkg/dialects/storm32/enum_mav_sys_status_sensor_extended.go create mode 100644 pkg/dialects/storm32/enum_mav_tunnel_payload_type.go create mode 100644 pkg/dialects/storm32/enum_mav_type.go create mode 100644 pkg/dialects/storm32/enum_mav_vtol_state.go create mode 100644 pkg/dialects/storm32/enum_mav_winch_status_flag.go create mode 100644 pkg/dialects/storm32/enum_mavlink_data_stream_type.go create mode 100644 pkg/dialects/storm32/enum_motor_test_order.go create mode 100644 pkg/dialects/storm32/enum_motor_test_throttle_type.go create mode 100644 pkg/dialects/storm32/enum_nav_vtol_land_options.go create mode 100644 pkg/dialects/storm32/enum_orbit_yaw_behaviour.go create mode 100644 pkg/dialects/storm32/enum_osd_param_config_error.go create mode 100644 pkg/dialects/storm32/enum_osd_param_config_type.go create mode 100644 pkg/dialects/storm32/enum_parachute_action.go create mode 100644 pkg/dialects/storm32/enum_param_ack.go create mode 100644 pkg/dialects/storm32/enum_pid_tuning_axis.go create mode 100644 pkg/dialects/storm32/enum_plane_mode.go create mode 100644 pkg/dialects/storm32/enum_position_target_typemask.go create mode 100644 pkg/dialects/storm32/enum_precision_land_mode.go create mode 100644 pkg/dialects/storm32/enum_rally_flags.go create mode 100644 pkg/dialects/storm32/enum_rc_type.go create mode 100644 pkg/dialects/storm32/enum_rover_mode.go create mode 100644 pkg/dialects/storm32/enum_rtk_baseline_coordinate_system.go create mode 100644 pkg/dialects/storm32/enum_scripting_cmd.go create mode 100644 pkg/dialects/storm32/enum_serial_control_dev.go create mode 100644 pkg/dialects/storm32/enum_serial_control_flag.go create mode 100644 pkg/dialects/storm32/enum_set_focus_type.go create mode 100644 pkg/dialects/storm32/enum_speed_type.go create mode 100644 pkg/dialects/storm32/enum_storage_status.go create mode 100644 pkg/dialects/storm32/enum_storage_type.go create mode 100644 pkg/dialects/storm32/enum_storage_usage_flag.go create mode 100644 pkg/dialects/storm32/enum_sub_mode.go create mode 100644 pkg/dialects/storm32/enum_tracker_mode.go create mode 100644 pkg/dialects/storm32/enum_tune_format.go create mode 100644 pkg/dialects/storm32/enum_uavcan_node_health.go create mode 100644 pkg/dialects/storm32/enum_uavcan_node_mode.go create mode 100644 pkg/dialects/storm32/enum_uavionix_adsb_emergency_status.go create mode 100644 pkg/dialects/storm32/enum_uavionix_adsb_out_cfg_aircraft_size.go create mode 100644 pkg/dialects/storm32/enum_uavionix_adsb_out_cfg_gps_offset_lat.go create mode 100644 pkg/dialects/storm32/enum_uavionix_adsb_out_cfg_gps_offset_lon.go create mode 100644 pkg/dialects/storm32/enum_uavionix_adsb_out_dynamic_gps_fix.go create mode 100644 pkg/dialects/storm32/enum_uavionix_adsb_out_dynamic_state.go create mode 100644 pkg/dialects/storm32/enum_uavionix_adsb_out_rf_select.go create mode 100644 pkg/dialects/storm32/enum_uavionix_adsb_rf_health.go create mode 100644 pkg/dialects/storm32/enum_utm_data_avail_flags.go create mode 100644 pkg/dialects/storm32/enum_utm_flight_state.go create mode 100644 pkg/dialects/storm32/enum_video_stream_status_flags.go create mode 100644 pkg/dialects/storm32/enum_video_stream_type.go create mode 100644 pkg/dialects/storm32/enum_vtol_transition_heading.go create mode 100644 pkg/dialects/storm32/enum_wifi_config_ap_mode.go create mode 100644 pkg/dialects/storm32/enum_wifi_config_ap_response.go create mode 100644 pkg/dialects/storm32/enum_winch_actions.go create mode 100644 pkg/dialects/storm32/msg_actuator_control_target.go create mode 100644 pkg/dialects/storm32/msg_actuator_output_status.go create mode 100644 pkg/dialects/storm32/msg_adap_tuning.go create mode 100644 pkg/dialects/storm32/msg_adsb_vehicle.go create mode 100644 pkg/dialects/storm32/msg_ahrs.go create mode 100644 pkg/dialects/storm32/msg_ahrs2.go create mode 100644 pkg/dialects/storm32/msg_ahrs3.go create mode 100644 pkg/dialects/storm32/msg_airspeed_autocal.go create mode 100644 pkg/dialects/storm32/msg_ais_vessel.go create mode 100644 pkg/dialects/storm32/msg_altitude.go create mode 100644 pkg/dialects/storm32/msg_aoa_ssa.go create mode 100644 pkg/dialects/storm32/msg_ap_adc.go create mode 100644 pkg/dialects/storm32/msg_att_pos_mocap.go create mode 100644 pkg/dialects/storm32/msg_attitude.go create mode 100644 pkg/dialects/storm32/msg_attitude_quaternion.go create mode 100644 pkg/dialects/storm32/msg_attitude_quaternion_cov.go create mode 100644 pkg/dialects/storm32/msg_attitude_target.go create mode 100644 pkg/dialects/storm32/msg_auth_key.go create mode 100644 pkg/dialects/storm32/msg_autopilot_state_for_gimbal_device.go create mode 100644 pkg/dialects/storm32/msg_autopilot_version.go create mode 100644 pkg/dialects/storm32/msg_autopilot_version_request.go create mode 100644 pkg/dialects/storm32/msg_battery2.go create mode 100644 pkg/dialects/storm32/msg_battery_status.go create mode 100644 pkg/dialects/storm32/msg_button_change.go create mode 100644 pkg/dialects/storm32/msg_camera_capture_status.go create mode 100644 pkg/dialects/storm32/msg_camera_feedback.go create mode 100644 pkg/dialects/storm32/msg_camera_fov_status.go create mode 100644 pkg/dialects/storm32/msg_camera_image_captured.go create mode 100644 pkg/dialects/storm32/msg_camera_information.go create mode 100644 pkg/dialects/storm32/msg_camera_settings.go create mode 100644 pkg/dialects/storm32/msg_camera_status.go create mode 100644 pkg/dialects/storm32/msg_camera_tracking_geo_status.go create mode 100644 pkg/dialects/storm32/msg_camera_tracking_image_status.go create mode 100644 pkg/dialects/storm32/msg_camera_trigger.go create mode 100644 pkg/dialects/storm32/msg_cellular_config.go create mode 100644 pkg/dialects/storm32/msg_cellular_status.go create mode 100644 pkg/dialects/storm32/msg_change_operator_control.go create mode 100644 pkg/dialects/storm32/msg_change_operator_control_ack.go create mode 100644 pkg/dialects/storm32/msg_collision.go create mode 100644 pkg/dialects/storm32/msg_command_ack.go create mode 100644 pkg/dialects/storm32/msg_command_cancel.go create mode 100644 pkg/dialects/storm32/msg_command_int.go create mode 100644 pkg/dialects/storm32/msg_command_long.go create mode 100644 pkg/dialects/storm32/msg_compassmot_status.go create mode 100644 pkg/dialects/storm32/msg_component_information.go create mode 100644 pkg/dialects/storm32/msg_component_prearm_status.go create mode 100644 pkg/dialects/storm32/msg_control_system_state.go create mode 100644 pkg/dialects/storm32/msg_current_event_sequence.go create mode 100644 pkg/dialects/storm32/msg_data16.go create mode 100644 pkg/dialects/storm32/msg_data32.go create mode 100644 pkg/dialects/storm32/msg_data64.go create mode 100644 pkg/dialects/storm32/msg_data96.go create mode 100644 pkg/dialects/storm32/msg_data_stream.go create mode 100644 pkg/dialects/storm32/msg_data_transmission_handshake.go create mode 100644 pkg/dialects/storm32/msg_debug.go create mode 100644 pkg/dialects/storm32/msg_debug_float_array.go create mode 100644 pkg/dialects/storm32/msg_debug_vect.go create mode 100644 pkg/dialects/storm32/msg_deepstall.go create mode 100644 pkg/dialects/storm32/msg_device_op_read.go create mode 100644 pkg/dialects/storm32/msg_device_op_read_reply.go create mode 100644 pkg/dialects/storm32/msg_device_op_write.go create mode 100644 pkg/dialects/storm32/msg_device_op_write_reply.go create mode 100644 pkg/dialects/storm32/msg_digicam_configure.go create mode 100644 pkg/dialects/storm32/msg_digicam_control.go create mode 100644 pkg/dialects/storm32/msg_distance_sensor.go create mode 100644 pkg/dialects/storm32/msg_efi_status.go create mode 100644 pkg/dialects/storm32/msg_ekf_status_report.go create mode 100644 pkg/dialects/storm32/msg_encapsulated_data.go create mode 100644 pkg/dialects/storm32/msg_esc_info.go create mode 100644 pkg/dialects/storm32/msg_esc_status.go create mode 100644 pkg/dialects/storm32/msg_esc_telemetry_1_to_4.go create mode 100644 pkg/dialects/storm32/msg_esc_telemetry_5_to_8.go create mode 100644 pkg/dialects/storm32/msg_esc_telemetry_9_to_12.go create mode 100644 pkg/dialects/storm32/msg_estimator_status.go create mode 100644 pkg/dialects/storm32/msg_event.go create mode 100644 pkg/dialects/storm32/msg_extended_sys_state.go create mode 100644 pkg/dialects/storm32/msg_fence_fetch_point.go create mode 100644 pkg/dialects/storm32/msg_fence_point.go create mode 100644 pkg/dialects/storm32/msg_fence_status.go create mode 100644 pkg/dialects/storm32/msg_file_transfer_protocol.go create mode 100644 pkg/dialects/storm32/msg_flight_information.go create mode 100644 pkg/dialects/storm32/msg_follow_target.go create mode 100644 pkg/dialects/storm32/msg_generator_status.go create mode 100644 pkg/dialects/storm32/msg_gimbal_control.go create mode 100644 pkg/dialects/storm32/msg_gimbal_device_attitude_status.go create mode 100644 pkg/dialects/storm32/msg_gimbal_device_information.go create mode 100644 pkg/dialects/storm32/msg_gimbal_device_set_attitude.go create mode 100644 pkg/dialects/storm32/msg_gimbal_manager_information.go create mode 100644 pkg/dialects/storm32/msg_gimbal_manager_set_attitude.go create mode 100644 pkg/dialects/storm32/msg_gimbal_manager_set_manual_control.go create mode 100644 pkg/dialects/storm32/msg_gimbal_manager_set_pitchyaw.go create mode 100644 pkg/dialects/storm32/msg_gimbal_manager_status.go create mode 100644 pkg/dialects/storm32/msg_gimbal_report.go create mode 100644 pkg/dialects/storm32/msg_gimbal_torque_cmd_report.go create mode 100644 pkg/dialects/storm32/msg_global_position_int.go create mode 100644 pkg/dialects/storm32/msg_global_position_int_cov.go create mode 100644 pkg/dialects/storm32/msg_global_vision_position_estimate.go create mode 100644 pkg/dialects/storm32/msg_gopro_get_request.go create mode 100644 pkg/dialects/storm32/msg_gopro_get_response.go create mode 100644 pkg/dialects/storm32/msg_gopro_heartbeat.go create mode 100644 pkg/dialects/storm32/msg_gopro_set_request.go create mode 100644 pkg/dialects/storm32/msg_gopro_set_response.go create mode 100644 pkg/dialects/storm32/msg_gps2_raw.go create mode 100644 pkg/dialects/storm32/msg_gps2_rtk.go create mode 100644 pkg/dialects/storm32/msg_gps_global_origin.go create mode 100644 pkg/dialects/storm32/msg_gps_inject_data.go create mode 100644 pkg/dialects/storm32/msg_gps_input.go create mode 100644 pkg/dialects/storm32/msg_gps_raw_int.go create mode 100644 pkg/dialects/storm32/msg_gps_rtcm_data.go create mode 100644 pkg/dialects/storm32/msg_gps_rtk.go create mode 100644 pkg/dialects/storm32/msg_gps_status.go create mode 100644 pkg/dialects/storm32/msg_heartbeat.go create mode 100644 pkg/dialects/storm32/msg_high_latency.go create mode 100644 pkg/dialects/storm32/msg_high_latency2.go create mode 100644 pkg/dialects/storm32/msg_highres_imu.go create mode 100644 pkg/dialects/storm32/msg_hil_actuator_controls.go create mode 100644 pkg/dialects/storm32/msg_hil_controls.go create mode 100644 pkg/dialects/storm32/msg_hil_gps.go create mode 100644 pkg/dialects/storm32/msg_hil_optical_flow.go create mode 100644 pkg/dialects/storm32/msg_hil_rc_inputs_raw.go create mode 100644 pkg/dialects/storm32/msg_hil_sensor.go create mode 100644 pkg/dialects/storm32/msg_hil_state.go create mode 100644 pkg/dialects/storm32/msg_hil_state_quaternion.go create mode 100644 pkg/dialects/storm32/msg_home_position.go create mode 100644 pkg/dialects/storm32/msg_hwstatus.go create mode 100644 pkg/dialects/storm32/msg_hygrometer_sensor.go create mode 100644 pkg/dialects/storm32/msg_icarous_heartbeat.go create mode 100644 pkg/dialects/storm32/msg_icarous_kinematic_bands.go create mode 100644 pkg/dialects/storm32/msg_isbd_link_status.go create mode 100644 pkg/dialects/storm32/msg_landing_target.go create mode 100644 pkg/dialects/storm32/msg_led_control.go create mode 100644 pkg/dialects/storm32/msg_limits_status.go create mode 100644 pkg/dialects/storm32/msg_link_node_status.go create mode 100644 pkg/dialects/storm32/msg_local_position_ned.go create mode 100644 pkg/dialects/storm32/msg_local_position_ned_cov.go create mode 100644 pkg/dialects/storm32/msg_local_position_ned_system_global_offset.go create mode 100644 pkg/dialects/storm32/msg_log_data.go create mode 100644 pkg/dialects/storm32/msg_log_entry.go create mode 100644 pkg/dialects/storm32/msg_log_erase.go create mode 100644 pkg/dialects/storm32/msg_log_request_data.go create mode 100644 pkg/dialects/storm32/msg_log_request_end.go create mode 100644 pkg/dialects/storm32/msg_log_request_list.go create mode 100644 pkg/dialects/storm32/msg_logging_ack.go create mode 100644 pkg/dialects/storm32/msg_logging_data.go create mode 100644 pkg/dialects/storm32/msg_logging_data_acked.go create mode 100644 pkg/dialects/storm32/msg_mag_cal_progress.go create mode 100644 pkg/dialects/storm32/msg_mag_cal_report.go create mode 100644 pkg/dialects/storm32/msg_manual_control.go create mode 100644 pkg/dialects/storm32/msg_manual_setpoint.go create mode 100644 pkg/dialects/storm32/msg_mcu_status.go create mode 100644 pkg/dialects/storm32/msg_meminfo.go create mode 100644 pkg/dialects/storm32/msg_memory_vect.go create mode 100644 pkg/dialects/storm32/msg_message_interval.go create mode 100644 pkg/dialects/storm32/msg_mission_ack.go create mode 100644 pkg/dialects/storm32/msg_mission_clear_all.go create mode 100644 pkg/dialects/storm32/msg_mission_count.go create mode 100644 pkg/dialects/storm32/msg_mission_current.go create mode 100644 pkg/dialects/storm32/msg_mission_item.go create mode 100644 pkg/dialects/storm32/msg_mission_item_int.go create mode 100644 pkg/dialects/storm32/msg_mission_item_reached.go create mode 100644 pkg/dialects/storm32/msg_mission_request.go create mode 100644 pkg/dialects/storm32/msg_mission_request_int.go create mode 100644 pkg/dialects/storm32/msg_mission_request_list.go create mode 100644 pkg/dialects/storm32/msg_mission_request_partial_list.go create mode 100644 pkg/dialects/storm32/msg_mission_set_current.go create mode 100644 pkg/dialects/storm32/msg_mission_write_partial_list.go create mode 100644 pkg/dialects/storm32/msg_mount_configure.go create mode 100644 pkg/dialects/storm32/msg_mount_control.go create mode 100644 pkg/dialects/storm32/msg_mount_orientation.go create mode 100644 pkg/dialects/storm32/msg_mount_status.go create mode 100644 pkg/dialects/storm32/msg_named_value_float.go create mode 100644 pkg/dialects/storm32/msg_named_value_int.go create mode 100644 pkg/dialects/storm32/msg_nav_controller_output.go create mode 100644 pkg/dialects/storm32/msg_obstacle_distance.go create mode 100644 pkg/dialects/storm32/msg_obstacle_distance_3d.go create mode 100644 pkg/dialects/storm32/msg_odometry.go create mode 100644 pkg/dialects/storm32/msg_onboard_computer_status.go create mode 100644 pkg/dialects/storm32/msg_open_drone_id_authentication.go create mode 100644 pkg/dialects/storm32/msg_open_drone_id_basic_id.go create mode 100644 pkg/dialects/storm32/msg_open_drone_id_location.go create mode 100644 pkg/dialects/storm32/msg_open_drone_id_message_pack.go create mode 100644 pkg/dialects/storm32/msg_open_drone_id_operator_id.go create mode 100644 pkg/dialects/storm32/msg_open_drone_id_self_id.go create mode 100644 pkg/dialects/storm32/msg_open_drone_id_system.go create mode 100644 pkg/dialects/storm32/msg_optical_flow.go create mode 100644 pkg/dialects/storm32/msg_optical_flow_rad.go create mode 100644 pkg/dialects/storm32/msg_orbit_execution_status.go create mode 100644 pkg/dialects/storm32/msg_osd_param_config.go create mode 100644 pkg/dialects/storm32/msg_osd_param_config_reply.go create mode 100644 pkg/dialects/storm32/msg_osd_param_show_config.go create mode 100644 pkg/dialects/storm32/msg_osd_param_show_config_reply.go create mode 100644 pkg/dialects/storm32/msg_param_ext_ack.go create mode 100644 pkg/dialects/storm32/msg_param_ext_request_list.go create mode 100644 pkg/dialects/storm32/msg_param_ext_request_read.go create mode 100644 pkg/dialects/storm32/msg_param_ext_set.go create mode 100644 pkg/dialects/storm32/msg_param_ext_value.go create mode 100644 pkg/dialects/storm32/msg_param_map_rc.go create mode 100644 pkg/dialects/storm32/msg_param_request_list.go create mode 100644 pkg/dialects/storm32/msg_param_request_read.go create mode 100644 pkg/dialects/storm32/msg_param_set.go create mode 100644 pkg/dialects/storm32/msg_param_value.go create mode 100644 pkg/dialects/storm32/msg_pid_tuning.go create mode 100644 pkg/dialects/storm32/msg_ping.go create mode 100644 pkg/dialects/storm32/msg_play_tune.go create mode 100644 pkg/dialects/storm32/msg_play_tune_v2.go create mode 100644 pkg/dialects/storm32/msg_position_target_global_int.go create mode 100644 pkg/dialects/storm32/msg_position_target_local_ned.go create mode 100644 pkg/dialects/storm32/msg_power_status.go create mode 100644 pkg/dialects/storm32/msg_protocol_version.go create mode 100644 pkg/dialects/storm32/msg_qshot_status.go create mode 100644 pkg/dialects/storm32/msg_radio.go create mode 100644 pkg/dialects/storm32/msg_radio_status.go create mode 100644 pkg/dialects/storm32/msg_rally_fetch_point.go create mode 100644 pkg/dialects/storm32/msg_rally_point.go create mode 100644 pkg/dialects/storm32/msg_rangefinder.go create mode 100644 pkg/dialects/storm32/msg_raw_imu.go create mode 100644 pkg/dialects/storm32/msg_raw_pressure.go create mode 100644 pkg/dialects/storm32/msg_raw_rpm.go create mode 100644 pkg/dialects/storm32/msg_rc_channels.go create mode 100644 pkg/dialects/storm32/msg_rc_channels_override.go create mode 100644 pkg/dialects/storm32/msg_rc_channels_raw.go create mode 100644 pkg/dialects/storm32/msg_rc_channels_scaled.go create mode 100644 pkg/dialects/storm32/msg_remote_log_block_status.go create mode 100644 pkg/dialects/storm32/msg_remote_log_data_block.go create mode 100644 pkg/dialects/storm32/msg_request_data_stream.go create mode 100644 pkg/dialects/storm32/msg_request_event.go create mode 100644 pkg/dialects/storm32/msg_resource_request.go create mode 100644 pkg/dialects/storm32/msg_response_event_error.go create mode 100644 pkg/dialects/storm32/msg_rpm.go create mode 100644 pkg/dialects/storm32/msg_safety_allowed_area.go create mode 100644 pkg/dialects/storm32/msg_safety_set_allowed_area.go create mode 100644 pkg/dialects/storm32/msg_scaled_imu.go create mode 100644 pkg/dialects/storm32/msg_scaled_imu2.go create mode 100644 pkg/dialects/storm32/msg_scaled_imu3.go create mode 100644 pkg/dialects/storm32/msg_scaled_pressure.go create mode 100644 pkg/dialects/storm32/msg_scaled_pressure2.go create mode 100644 pkg/dialects/storm32/msg_scaled_pressure3.go create mode 100644 pkg/dialects/storm32/msg_sensor_offsets.go create mode 100644 pkg/dialects/storm32/msg_serial_control.go create mode 100644 pkg/dialects/storm32/msg_servo_output_raw.go create mode 100644 pkg/dialects/storm32/msg_set_actuator_control_target.go create mode 100644 pkg/dialects/storm32/msg_set_attitude_target.go create mode 100644 pkg/dialects/storm32/msg_set_gps_global_origin.go create mode 100644 pkg/dialects/storm32/msg_set_home_position.go create mode 100644 pkg/dialects/storm32/msg_set_mag_offsets.go create mode 100644 pkg/dialects/storm32/msg_set_mode.go create mode 100644 pkg/dialects/storm32/msg_set_position_target_global_int.go create mode 100644 pkg/dialects/storm32/msg_set_position_target_local_ned.go create mode 100644 pkg/dialects/storm32/msg_setup_signing.go create mode 100644 pkg/dialects/storm32/msg_sim_state.go create mode 100644 pkg/dialects/storm32/msg_simstate.go create mode 100644 pkg/dialects/storm32/msg_smart_battery_info.go create mode 100644 pkg/dialects/storm32/msg_statustext.go create mode 100644 pkg/dialects/storm32/msg_storage_information.go create mode 100644 pkg/dialects/storm32/msg_storm32_gimbal_device_control.go create mode 100644 pkg/dialects/storm32/msg_storm32_gimbal_device_status.go create mode 100644 pkg/dialects/storm32/msg_storm32_gimbal_manager_control.go create mode 100644 pkg/dialects/storm32/msg_storm32_gimbal_manager_control_pitchyaw.go create mode 100644 pkg/dialects/storm32/msg_storm32_gimbal_manager_correct_roll.go create mode 100644 pkg/dialects/storm32/msg_storm32_gimbal_manager_information.go create mode 100644 pkg/dialects/storm32/msg_storm32_gimbal_manager_profile.go create mode 100644 pkg/dialects/storm32/msg_storm32_gimbal_manager_status.go create mode 100644 pkg/dialects/storm32/msg_supported_tunes.go create mode 100644 pkg/dialects/storm32/msg_sys_status.go create mode 100644 pkg/dialects/storm32/msg_system_time.go create mode 100644 pkg/dialects/storm32/msg_terrain_check.go create mode 100644 pkg/dialects/storm32/msg_terrain_data.go create mode 100644 pkg/dialects/storm32/msg_terrain_report.go create mode 100644 pkg/dialects/storm32/msg_terrain_request.go create mode 100644 pkg/dialects/storm32/msg_time_estimate_to_target.go create mode 100644 pkg/dialects/storm32/msg_timesync.go create mode 100644 pkg/dialects/storm32/msg_trajectory_representation_bezier.go create mode 100644 pkg/dialects/storm32/msg_trajectory_representation_waypoints.go create mode 100644 pkg/dialects/storm32/msg_tunnel.go create mode 100644 pkg/dialects/storm32/msg_uavcan_node_info.go create mode 100644 pkg/dialects/storm32/msg_uavcan_node_status.go create mode 100644 pkg/dialects/storm32/msg_uavionix_adsb_out_cfg.go create mode 100644 pkg/dialects/storm32/msg_uavionix_adsb_out_dynamic.go create mode 100644 pkg/dialects/storm32/msg_uavionix_adsb_transceiver_health_report.go create mode 100644 pkg/dialects/storm32/msg_utm_global_position.go create mode 100644 pkg/dialects/storm32/msg_v2_extension.go create mode 100644 pkg/dialects/storm32/msg_vfr_hud.go create mode 100644 pkg/dialects/storm32/msg_vibration.go create mode 100644 pkg/dialects/storm32/msg_vicon_position_estimate.go create mode 100644 pkg/dialects/storm32/msg_video_stream_information.go create mode 100644 pkg/dialects/storm32/msg_video_stream_status.go create mode 100644 pkg/dialects/storm32/msg_vision_position_delta.go create mode 100644 pkg/dialects/storm32/msg_vision_position_estimate.go create mode 100644 pkg/dialects/storm32/msg_vision_speed_estimate.go create mode 100644 pkg/dialects/storm32/msg_water_depth.go create mode 100644 pkg/dialects/storm32/msg_wheel_distance.go create mode 100644 pkg/dialects/storm32/msg_wifi_config_ap.go create mode 100644 pkg/dialects/storm32/msg_winch_status.go create mode 100644 pkg/dialects/storm32/msg_wind.go create mode 100644 pkg/dialects/storm32/msg_wind_cov.go diff --git a/pkg/dialects/all/dialect.go b/pkg/dialects/all/dialect.go new file mode 100644 index 000000000..275572c6b --- /dev/null +++ b/pkg/dialects/all/dialect.go @@ -0,0 +1,365 @@ +//autogenerated:yes +// Package all contains the all dialect. +package all + +import ( + "github.com/aler9/gomavlib/pkg/dialect" + "github.com/aler9/gomavlib/pkg/msg" +) + +// Dialect contains the dialect definition. +var Dialect = dial + +// dial is not exposed directly in order not to display it in godoc. +var dial = &dialect.Dialect{ + Version: 1, + Messages: []msg.Message{ + // minimal.xml + &MessageHeartbeat{}, + &MessageProtocolVersion{}, + // common.xml + &MessageSysStatus{}, + &MessageSystemTime{}, + &MessagePing{}, + &MessageChangeOperatorControl{}, + &MessageChangeOperatorControlAck{}, + &MessageAuthKey{}, + &MessageLinkNodeStatus{}, + &MessageSetMode{}, + &MessageParamRequestRead{}, + &MessageParamRequestList{}, + &MessageParamValue{}, + &MessageParamSet{}, + &MessageGpsRawInt{}, + &MessageGpsStatus{}, + &MessageScaledImu{}, + &MessageRawImu{}, + &MessageRawPressure{}, + &MessageScaledPressure{}, + &MessageAttitude{}, + &MessageAttitudeQuaternion{}, + &MessageLocalPositionNed{}, + &MessageGlobalPositionInt{}, + &MessageRcChannelsScaled{}, + &MessageRcChannelsRaw{}, + &MessageServoOutputRaw{}, + &MessageMissionRequestPartialList{}, + &MessageMissionWritePartialList{}, + &MessageMissionItem{}, + &MessageMissionRequest{}, + &MessageMissionSetCurrent{}, + &MessageMissionCurrent{}, + &MessageMissionRequestList{}, + &MessageMissionCount{}, + &MessageMissionClearAll{}, + &MessageMissionItemReached{}, + &MessageMissionAck{}, + &MessageSetGpsGlobalOrigin{}, + &MessageGpsGlobalOrigin{}, + &MessageParamMapRc{}, + &MessageMissionRequestInt{}, + &MessageSafetySetAllowedArea{}, + &MessageSafetyAllowedArea{}, + &MessageAttitudeQuaternionCov{}, + &MessageNavControllerOutput{}, + &MessageGlobalPositionIntCov{}, + &MessageLocalPositionNedCov{}, + &MessageRcChannels{}, + &MessageRequestDataStream{}, + &MessageDataStream{}, + &MessageManualControl{}, + &MessageRcChannelsOverride{}, + &MessageMissionItemInt{}, + &MessageVfrHud{}, + &MessageCommandInt{}, + &MessageCommandLong{}, + &MessageCommandAck{}, + &MessageCommandCancel{}, + &MessageManualSetpoint{}, + &MessageSetAttitudeTarget{}, + &MessageAttitudeTarget{}, + &MessageSetPositionTargetLocalNed{}, + &MessagePositionTargetLocalNed{}, + &MessageSetPositionTargetGlobalInt{}, + &MessagePositionTargetGlobalInt{}, + &MessageLocalPositionNedSystemGlobalOffset{}, + &MessageHilState{}, + &MessageHilControls{}, + &MessageHilRcInputsRaw{}, + &MessageHilActuatorControls{}, + &MessageOpticalFlow{}, + &MessageGlobalVisionPositionEstimate{}, + &MessageVisionPositionEstimate{}, + &MessageVisionSpeedEstimate{}, + &MessageViconPositionEstimate{}, + &MessageHighresImu{}, + &MessageOpticalFlowRad{}, + &MessageHilSensor{}, + &MessageSimState{}, + &MessageRadioStatus{}, + &MessageFileTransferProtocol{}, + &MessageTimesync{}, + &MessageCameraTrigger{}, + &MessageHilGps{}, + &MessageHilOpticalFlow{}, + &MessageHilStateQuaternion{}, + &MessageScaledImu2{}, + &MessageLogRequestList{}, + &MessageLogEntry{}, + &MessageLogRequestData{}, + &MessageLogData{}, + &MessageLogErase{}, + &MessageLogRequestEnd{}, + &MessageGpsInjectData{}, + &MessageGps2Raw{}, + &MessagePowerStatus{}, + &MessageSerialControl{}, + &MessageGpsRtk{}, + &MessageGps2Rtk{}, + &MessageScaledImu3{}, + &MessageDataTransmissionHandshake{}, + &MessageEncapsulatedData{}, + &MessageDistanceSensor{}, + &MessageTerrainRequest{}, + &MessageTerrainData{}, + &MessageTerrainCheck{}, + &MessageTerrainReport{}, + &MessageScaledPressure2{}, + &MessageAttPosMocap{}, + &MessageSetActuatorControlTarget{}, + &MessageActuatorControlTarget{}, + &MessageAltitude{}, + &MessageResourceRequest{}, + &MessageScaledPressure3{}, + &MessageFollowTarget{}, + &MessageControlSystemState{}, + &MessageBatteryStatus{}, + &MessageAutopilotVersion{}, + &MessageLandingTarget{}, + &MessageFenceStatus{}, + &MessageMagCalReport{}, + &MessageEfiStatus{}, + &MessageEstimatorStatus{}, + &MessageWindCov{}, + &MessageGpsInput{}, + &MessageGpsRtcmData{}, + &MessageHighLatency{}, + &MessageHighLatency2{}, + &MessageVibration{}, + &MessageHomePosition{}, + &MessageSetHomePosition{}, + &MessageMessageInterval{}, + &MessageExtendedSysState{}, + &MessageAdsbVehicle{}, + &MessageCollision{}, + &MessageV2Extension{}, + &MessageMemoryVect{}, + &MessageDebugVect{}, + &MessageNamedValueFloat{}, + &MessageNamedValueInt{}, + &MessageStatustext{}, + &MessageDebug{}, + &MessageSetupSigning{}, + &MessageButtonChange{}, + &MessagePlayTune{}, + &MessageCameraInformation{}, + &MessageCameraSettings{}, + &MessageStorageInformation{}, + &MessageCameraCaptureStatus{}, + &MessageCameraImageCaptured{}, + &MessageFlightInformation{}, + &MessageMountOrientation{}, + &MessageLoggingData{}, + &MessageLoggingDataAcked{}, + &MessageLoggingAck{}, + &MessageVideoStreamInformation{}, + &MessageVideoStreamStatus{}, + &MessageCameraFovStatus{}, + &MessageCameraTrackingImageStatus{}, + &MessageCameraTrackingGeoStatus{}, + &MessageGimbalManagerInformation{}, + &MessageGimbalManagerStatus{}, + &MessageGimbalManagerSetAttitude{}, + &MessageGimbalDeviceInformation{}, + &MessageGimbalDeviceSetAttitude{}, + &MessageGimbalDeviceAttitudeStatus{}, + &MessageAutopilotStateForGimbalDevice{}, + &MessageGimbalManagerSetPitchyaw{}, + &MessageGimbalManagerSetManualControl{}, + &MessageEscInfo{}, + &MessageEscStatus{}, + &MessageWifiConfigAp{}, + &MessageAisVessel{}, + &MessageUavcanNodeStatus{}, + &MessageUavcanNodeInfo{}, + &MessageParamExtRequestRead{}, + &MessageParamExtRequestList{}, + &MessageParamExtValue{}, + &MessageParamExtSet{}, + &MessageParamExtAck{}, + &MessageObstacleDistance{}, + &MessageOdometry{}, + &MessageTrajectoryRepresentationWaypoints{}, + &MessageTrajectoryRepresentationBezier{}, + &MessageCellularStatus{}, + &MessageIsbdLinkStatus{}, + &MessageCellularConfig{}, + &MessageRawRpm{}, + &MessageUtmGlobalPosition{}, + &MessageDebugFloatArray{}, + &MessageOrbitExecutionStatus{}, + &MessageSmartBatteryInfo{}, + &MessageGeneratorStatus{}, + &MessageActuatorOutputStatus{}, + &MessageTimeEstimateToTarget{}, + &MessageTunnel{}, + &MessageOnboardComputerStatus{}, + &MessageComponentInformation{}, + &MessagePlayTuneV2{}, + &MessageSupportedTunes{}, + &MessageEvent{}, + &MessageCurrentEventSequence{}, + &MessageRequestEvent{}, + &MessageResponseEventError{}, + &MessageWheelDistance{}, + &MessageWinchStatus{}, + &MessageOpenDroneIdBasicId{}, + &MessageOpenDroneIdLocation{}, + &MessageOpenDroneIdAuthentication{}, + &MessageOpenDroneIdSelfId{}, + &MessageOpenDroneIdSystem{}, + &MessageOpenDroneIdOperatorId{}, + &MessageOpenDroneIdMessagePack{}, + &MessageHygrometerSensor{}, + // uAvionix.xml + &MessageUavionixAdsbOutCfg{}, + &MessageUavionixAdsbOutDynamic{}, + &MessageUavionixAdsbTransceiverHealthReport{}, + // icarous.xml + &MessageIcarousHeartbeat{}, + &MessageIcarousKinematicBands{}, + // ardupilotmega.xml + &MessageSensorOffsets{}, + &MessageSetMagOffsets{}, + &MessageMeminfo{}, + &MessageApAdc{}, + &MessageDigicamConfigure{}, + &MessageDigicamControl{}, + &MessageMountConfigure{}, + &MessageMountControl{}, + &MessageMountStatus{}, + &MessageFencePoint{}, + &MessageFenceFetchPoint{}, + &MessageAhrs{}, + &MessageSimstate{}, + &MessageHwstatus{}, + &MessageRadio{}, + &MessageLimitsStatus{}, + &MessageWind{}, + &MessageData16{}, + &MessageData32{}, + &MessageData64{}, + &MessageData96{}, + &MessageRangefinder{}, + &MessageAirspeedAutocal{}, + &MessageRallyPoint{}, + &MessageRallyFetchPoint{}, + &MessageCompassmotStatus{}, + &MessageAhrs2{}, + &MessageCameraStatus{}, + &MessageCameraFeedback{}, + &MessageBattery2{}, + &MessageAhrs3{}, + &MessageAutopilotVersionRequest{}, + &MessageRemoteLogDataBlock{}, + &MessageRemoteLogBlockStatus{}, + &MessageLedControl{}, + &MessageMagCalProgress{}, + &MessageEkfStatusReport{}, + &MessagePidTuning{}, + &MessageDeepstall{}, + &MessageGimbalReport{}, + &MessageGimbalControl{}, + &MessageGimbalTorqueCmdReport{}, + &MessageGoproHeartbeat{}, + &MessageGoproGetRequest{}, + &MessageGoproGetResponse{}, + &MessageGoproSetRequest{}, + &MessageGoproSetResponse{}, + &MessageRpm{}, + &MessageDeviceOpRead{}, + &MessageDeviceOpReadReply{}, + &MessageDeviceOpWrite{}, + &MessageDeviceOpWriteReply{}, + &MessageAdapTuning{}, + &MessageVisionPositionDelta{}, + &MessageAoaSsa{}, + &MessageEscTelemetry_1To_4{}, + &MessageEscTelemetry_5To_8{}, + &MessageEscTelemetry_9To_12{}, + &MessageOsdParamConfig{}, + &MessageOsdParamConfigReply{}, + &MessageOsdParamShowConfig{}, + &MessageOsdParamShowConfigReply{}, + &MessageObstacleDistance_3d{}, + &MessageWaterDepth{}, + &MessageMcuStatus{}, + // ASLUAV.xml + &MessageCommandIntStamped{}, + &MessageCommandLongStamped{}, + &MessageSensPower{}, + &MessageSensMppt{}, + &MessageAslctrlData{}, + &MessageAslctrlDebug{}, + &MessageAsluavStatus{}, + &MessageEkfExt{}, + &MessageAslObctrl{}, + &MessageSensAtmos{}, + &MessageSensBatmon{}, + &MessageFwSoaringData{}, + &MessageSensorpodStatus{}, + &MessageSensPowerBoard{}, + &MessageGsmLinkStatus{}, + &MessageSatcomLinkStatus{}, + &MessageSensorAirflowAngles{}, + // standard.xml + // development.xml + &MessageParamAckTransaction{}, + &MessageMissionChanged{}, + &MessageMissionChecksum{}, + &MessageAirspeed{}, + &MessageWifiNetworkInfo{}, + &MessageComponentInformationBasic{}, + &MessageGroupStart{}, + &MessageGroupEnd{}, + // python_array_test.xml + &MessageArrayTest_0{}, + &MessageArrayTest_1{}, + &MessageArrayTest_3{}, + &MessageArrayTest_4{}, + &MessageArrayTest_5{}, + &MessageArrayTest_6{}, + &MessageArrayTest_7{}, + &MessageArrayTest_8{}, + // test.xml + &MessageTestTypes{}, + // ualberta.xml + &MessageNavFilterBias{}, + &MessageRadioCalibration{}, + &MessageUalbertaSysStatus{}, + // storm32.xml + &MessageStorm32GimbalDeviceStatus{}, + &MessageStorm32GimbalDeviceControl{}, + &MessageStorm32GimbalManagerInformation{}, + &MessageStorm32GimbalManagerStatus{}, + &MessageStorm32GimbalManagerControl{}, + &MessageStorm32GimbalManagerControlPitchyaw{}, + &MessageStorm32GimbalManagerCorrectRoll{}, + &MessageStorm32GimbalManagerProfile{}, + &MessageQshotStatus{}, + &MessageComponentPrearmStatus{}, + // AVSSUAS.xml + &MessageAvssPrsSysStatus{}, + // all.xml + }, +} diff --git a/pkg/dialects/all/enum_accelcal_vehicle_pos.go b/pkg/dialects/all/enum_accelcal_vehicle_pos.go new file mode 100644 index 000000000..951319b26 --- /dev/null +++ b/pkg/dialects/all/enum_accelcal_vehicle_pos.go @@ -0,0 +1,49 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package all + +import ( + "errors" +) + +type ACCELCAL_VEHICLE_POS int + +const ( + ACCELCAL_VEHICLE_POS_LEVEL ACCELCAL_VEHICLE_POS = 1 + ACCELCAL_VEHICLE_POS_LEFT ACCELCAL_VEHICLE_POS = 2 + ACCELCAL_VEHICLE_POS_RIGHT ACCELCAL_VEHICLE_POS = 3 + ACCELCAL_VEHICLE_POS_NOSEDOWN ACCELCAL_VEHICLE_POS = 4 + ACCELCAL_VEHICLE_POS_NOSEUP ACCELCAL_VEHICLE_POS = 5 + ACCELCAL_VEHICLE_POS_BACK ACCELCAL_VEHICLE_POS = 6 + ACCELCAL_VEHICLE_POS_SUCCESS ACCELCAL_VEHICLE_POS = 16777215 + ACCELCAL_VEHICLE_POS_FAILED ACCELCAL_VEHICLE_POS = 16777216 +) + +var labels_ACCELCAL_VEHICLE_POS = map[ACCELCAL_VEHICLE_POS]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e ACCELCAL_VEHICLE_POS) MarshalText() ([]byte, error) { + if l, ok := labels_ACCELCAL_VEHICLE_POS[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_ACCELCAL_VEHICLE_POS = map[string]ACCELCAL_VEHICLE_POS{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *ACCELCAL_VEHICLE_POS) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_ACCELCAL_VEHICLE_POS[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e ACCELCAL_VEHICLE_POS) String() string { + if l, ok := labels_ACCELCAL_VEHICLE_POS[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/all/enum_actuator_configuration.go b/pkg/dialects/all/enum_actuator_configuration.go new file mode 100644 index 000000000..da269a1f9 --- /dev/null +++ b/pkg/dialects/all/enum_actuator_configuration.go @@ -0,0 +1,54 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package all + +import ( + "errors" +) + +// Actuator configuration, used to change a setting on an actuator. Component information metadata can be used to know which outputs support which commands. +type ACTUATOR_CONFIGURATION int + +const ( + // Do nothing. + ACTUATOR_CONFIGURATION_NONE ACTUATOR_CONFIGURATION = 0 + // Command the actuator to beep now. + ACTUATOR_CONFIGURATION_BEEP ACTUATOR_CONFIGURATION = 1 + // Permanently set the actuator (ESC) to 3D mode (reversible thrust). + ACTUATOR_CONFIGURATION_3D_MODE_ON ACTUATOR_CONFIGURATION = 2 + // Permanently set the actuator (ESC) to non 3D mode (non-reversible thrust). + ACTUATOR_CONFIGURATION_3D_MODE_OFF ACTUATOR_CONFIGURATION = 3 + // Permanently set the actuator (ESC) to spin direction 1 (which can be clockwise or counter-clockwise). + ACTUATOR_CONFIGURATION_SPIN_DIRECTION1 ACTUATOR_CONFIGURATION = 4 + // Permanently set the actuator (ESC) to spin direction 2 (opposite of direction 1). + ACTUATOR_CONFIGURATION_SPIN_DIRECTION2 ACTUATOR_CONFIGURATION = 5 +) + +var labels_ACTUATOR_CONFIGURATION = map[ACTUATOR_CONFIGURATION]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e ACTUATOR_CONFIGURATION) MarshalText() ([]byte, error) { + if l, ok := labels_ACTUATOR_CONFIGURATION[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_ACTUATOR_CONFIGURATION = map[string]ACTUATOR_CONFIGURATION{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *ACTUATOR_CONFIGURATION) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_ACTUATOR_CONFIGURATION[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e ACTUATOR_CONFIGURATION) String() string { + if l, ok := labels_ACTUATOR_CONFIGURATION[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/all/enum_actuator_output_function.go b/pkg/dialects/all/enum_actuator_output_function.go new file mode 100644 index 000000000..5705d682a --- /dev/null +++ b/pkg/dialects/all/enum_actuator_output_function.go @@ -0,0 +1,108 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package all + +import ( + "errors" +) + +// Actuator output function. Values greater or equal to 1000 are autopilot-specific. +type ACTUATOR_OUTPUT_FUNCTION int + +const ( + // No function (disabled). + ACTUATOR_OUTPUT_FUNCTION_NONE ACTUATOR_OUTPUT_FUNCTION = 0 + // Motor 1 + ACTUATOR_OUTPUT_FUNCTION_MOTOR1 ACTUATOR_OUTPUT_FUNCTION = 1 + // Motor 2 + ACTUATOR_OUTPUT_FUNCTION_MOTOR2 ACTUATOR_OUTPUT_FUNCTION = 2 + // Motor 3 + ACTUATOR_OUTPUT_FUNCTION_MOTOR3 ACTUATOR_OUTPUT_FUNCTION = 3 + // Motor 4 + ACTUATOR_OUTPUT_FUNCTION_MOTOR4 ACTUATOR_OUTPUT_FUNCTION = 4 + // Motor 5 + ACTUATOR_OUTPUT_FUNCTION_MOTOR5 ACTUATOR_OUTPUT_FUNCTION = 5 + // Motor 6 + ACTUATOR_OUTPUT_FUNCTION_MOTOR6 ACTUATOR_OUTPUT_FUNCTION = 6 + // Motor 7 + ACTUATOR_OUTPUT_FUNCTION_MOTOR7 ACTUATOR_OUTPUT_FUNCTION = 7 + // Motor 8 + ACTUATOR_OUTPUT_FUNCTION_MOTOR8 ACTUATOR_OUTPUT_FUNCTION = 8 + // Motor 9 + ACTUATOR_OUTPUT_FUNCTION_MOTOR9 ACTUATOR_OUTPUT_FUNCTION = 9 + // Motor 10 + ACTUATOR_OUTPUT_FUNCTION_MOTOR10 ACTUATOR_OUTPUT_FUNCTION = 10 + // Motor 11 + ACTUATOR_OUTPUT_FUNCTION_MOTOR11 ACTUATOR_OUTPUT_FUNCTION = 11 + // Motor 12 + ACTUATOR_OUTPUT_FUNCTION_MOTOR12 ACTUATOR_OUTPUT_FUNCTION = 12 + // Motor 13 + ACTUATOR_OUTPUT_FUNCTION_MOTOR13 ACTUATOR_OUTPUT_FUNCTION = 13 + // Motor 14 + ACTUATOR_OUTPUT_FUNCTION_MOTOR14 ACTUATOR_OUTPUT_FUNCTION = 14 + // Motor 15 + ACTUATOR_OUTPUT_FUNCTION_MOTOR15 ACTUATOR_OUTPUT_FUNCTION = 15 + // Motor 16 + ACTUATOR_OUTPUT_FUNCTION_MOTOR16 ACTUATOR_OUTPUT_FUNCTION = 16 + // Servo 1 + ACTUATOR_OUTPUT_FUNCTION_SERVO1 ACTUATOR_OUTPUT_FUNCTION = 33 + // Servo 2 + ACTUATOR_OUTPUT_FUNCTION_SERVO2 ACTUATOR_OUTPUT_FUNCTION = 34 + // Servo 3 + ACTUATOR_OUTPUT_FUNCTION_SERVO3 ACTUATOR_OUTPUT_FUNCTION = 35 + // Servo 4 + ACTUATOR_OUTPUT_FUNCTION_SERVO4 ACTUATOR_OUTPUT_FUNCTION = 36 + // Servo 5 + ACTUATOR_OUTPUT_FUNCTION_SERVO5 ACTUATOR_OUTPUT_FUNCTION = 37 + // Servo 6 + ACTUATOR_OUTPUT_FUNCTION_SERVO6 ACTUATOR_OUTPUT_FUNCTION = 38 + // Servo 7 + ACTUATOR_OUTPUT_FUNCTION_SERVO7 ACTUATOR_OUTPUT_FUNCTION = 39 + // Servo 8 + ACTUATOR_OUTPUT_FUNCTION_SERVO8 ACTUATOR_OUTPUT_FUNCTION = 40 + // Servo 9 + ACTUATOR_OUTPUT_FUNCTION_SERVO9 ACTUATOR_OUTPUT_FUNCTION = 41 + // Servo 10 + ACTUATOR_OUTPUT_FUNCTION_SERVO10 ACTUATOR_OUTPUT_FUNCTION = 42 + // Servo 11 + ACTUATOR_OUTPUT_FUNCTION_SERVO11 ACTUATOR_OUTPUT_FUNCTION = 43 + // Servo 12 + ACTUATOR_OUTPUT_FUNCTION_SERVO12 ACTUATOR_OUTPUT_FUNCTION = 44 + // Servo 13 + ACTUATOR_OUTPUT_FUNCTION_SERVO13 ACTUATOR_OUTPUT_FUNCTION = 45 + // Servo 14 + ACTUATOR_OUTPUT_FUNCTION_SERVO14 ACTUATOR_OUTPUT_FUNCTION = 46 + // Servo 15 + ACTUATOR_OUTPUT_FUNCTION_SERVO15 ACTUATOR_OUTPUT_FUNCTION = 47 + // Servo 16 + ACTUATOR_OUTPUT_FUNCTION_SERVO16 ACTUATOR_OUTPUT_FUNCTION = 48 +) + +var labels_ACTUATOR_OUTPUT_FUNCTION = map[ACTUATOR_OUTPUT_FUNCTION]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e ACTUATOR_OUTPUT_FUNCTION) MarshalText() ([]byte, error) { + if l, ok := labels_ACTUATOR_OUTPUT_FUNCTION[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_ACTUATOR_OUTPUT_FUNCTION = map[string]ACTUATOR_OUTPUT_FUNCTION{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *ACTUATOR_OUTPUT_FUNCTION) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_ACTUATOR_OUTPUT_FUNCTION[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e ACTUATOR_OUTPUT_FUNCTION) String() string { + if l, ok := labels_ACTUATOR_OUTPUT_FUNCTION[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/all/enum_adsb_altitude_type.go b/pkg/dialects/all/enum_adsb_altitude_type.go new file mode 100644 index 000000000..9798048b6 --- /dev/null +++ b/pkg/dialects/all/enum_adsb_altitude_type.go @@ -0,0 +1,46 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package all + +import ( + "errors" +) + +// Enumeration of the ADSB altimeter types +type ADSB_ALTITUDE_TYPE int + +const ( + // Altitude reported from a Baro source using QNH reference + ADSB_ALTITUDE_TYPE_PRESSURE_QNH ADSB_ALTITUDE_TYPE = 0 + // Altitude reported from a GNSS source + ADSB_ALTITUDE_TYPE_GEOMETRIC ADSB_ALTITUDE_TYPE = 1 +) + +var labels_ADSB_ALTITUDE_TYPE = map[ADSB_ALTITUDE_TYPE]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e ADSB_ALTITUDE_TYPE) MarshalText() ([]byte, error) { + if l, ok := labels_ADSB_ALTITUDE_TYPE[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_ADSB_ALTITUDE_TYPE = map[string]ADSB_ALTITUDE_TYPE{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *ADSB_ALTITUDE_TYPE) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_ADSB_ALTITUDE_TYPE[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e ADSB_ALTITUDE_TYPE) String() string { + if l, ok := labels_ADSB_ALTITUDE_TYPE[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/all/enum_adsb_emitter_type.go b/pkg/dialects/all/enum_adsb_emitter_type.go new file mode 100644 index 000000000..5e4fb650e --- /dev/null +++ b/pkg/dialects/all/enum_adsb_emitter_type.go @@ -0,0 +1,62 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package all + +import ( + "errors" +) + +// ADSB classification for the type of vehicle emitting the transponder signal +type ADSB_EMITTER_TYPE int + +const ( + ADSB_EMITTER_TYPE_NO_INFO ADSB_EMITTER_TYPE = 0 + ADSB_EMITTER_TYPE_LIGHT ADSB_EMITTER_TYPE = 1 + ADSB_EMITTER_TYPE_SMALL ADSB_EMITTER_TYPE = 2 + ADSB_EMITTER_TYPE_LARGE ADSB_EMITTER_TYPE = 3 + ADSB_EMITTER_TYPE_HIGH_VORTEX_LARGE ADSB_EMITTER_TYPE = 4 + ADSB_EMITTER_TYPE_HEAVY ADSB_EMITTER_TYPE = 5 + ADSB_EMITTER_TYPE_HIGHLY_MANUV ADSB_EMITTER_TYPE = 6 + ADSB_EMITTER_TYPE_ROTOCRAFT ADSB_EMITTER_TYPE = 7 + ADSB_EMITTER_TYPE_UNASSIGNED ADSB_EMITTER_TYPE = 8 + ADSB_EMITTER_TYPE_GLIDER ADSB_EMITTER_TYPE = 9 + ADSB_EMITTER_TYPE_LIGHTER_AIR ADSB_EMITTER_TYPE = 10 + ADSB_EMITTER_TYPE_PARACHUTE ADSB_EMITTER_TYPE = 11 + ADSB_EMITTER_TYPE_ULTRA_LIGHT ADSB_EMITTER_TYPE = 12 + ADSB_EMITTER_TYPE_UNASSIGNED2 ADSB_EMITTER_TYPE = 13 + ADSB_EMITTER_TYPE_UAV ADSB_EMITTER_TYPE = 14 + ADSB_EMITTER_TYPE_SPACE ADSB_EMITTER_TYPE = 15 + ADSB_EMITTER_TYPE_UNASSGINED3 ADSB_EMITTER_TYPE = 16 + ADSB_EMITTER_TYPE_EMERGENCY_SURFACE ADSB_EMITTER_TYPE = 17 + ADSB_EMITTER_TYPE_SERVICE_SURFACE ADSB_EMITTER_TYPE = 18 + ADSB_EMITTER_TYPE_POINT_OBSTACLE ADSB_EMITTER_TYPE = 19 +) + +var labels_ADSB_EMITTER_TYPE = map[ADSB_EMITTER_TYPE]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e ADSB_EMITTER_TYPE) MarshalText() ([]byte, error) { + if l, ok := labels_ADSB_EMITTER_TYPE[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_ADSB_EMITTER_TYPE = map[string]ADSB_EMITTER_TYPE{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *ADSB_EMITTER_TYPE) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_ADSB_EMITTER_TYPE[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e ADSB_EMITTER_TYPE) String() string { + if l, ok := labels_ADSB_EMITTER_TYPE[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/all/enum_adsb_flags.go b/pkg/dialects/all/enum_adsb_flags.go new file mode 100644 index 000000000..d8ac11bdb --- /dev/null +++ b/pkg/dialects/all/enum_adsb_flags.go @@ -0,0 +1,52 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package all + +import ( + "errors" +) + +// These flags indicate status such as data validity of each data source. Set = data valid +type ADSB_FLAGS int + +const ( + ADSB_FLAGS_VALID_COORDS ADSB_FLAGS = 1 + ADSB_FLAGS_VALID_ALTITUDE ADSB_FLAGS = 2 + ADSB_FLAGS_VALID_HEADING ADSB_FLAGS = 4 + ADSB_FLAGS_VALID_VELOCITY ADSB_FLAGS = 8 + ADSB_FLAGS_VALID_CALLSIGN ADSB_FLAGS = 16 + ADSB_FLAGS_VALID_SQUAWK ADSB_FLAGS = 32 + ADSB_FLAGS_SIMULATED ADSB_FLAGS = 64 + ADSB_FLAGS_VERTICAL_VELOCITY_VALID ADSB_FLAGS = 128 + ADSB_FLAGS_BARO_VALID ADSB_FLAGS = 256 + ADSB_FLAGS_SOURCE_UAT ADSB_FLAGS = 32768 +) + +var labels_ADSB_FLAGS = map[ADSB_FLAGS]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e ADSB_FLAGS) MarshalText() ([]byte, error) { + if l, ok := labels_ADSB_FLAGS[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_ADSB_FLAGS = map[string]ADSB_FLAGS{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *ADSB_FLAGS) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_ADSB_FLAGS[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e ADSB_FLAGS) String() string { + if l, ok := labels_ADSB_FLAGS[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/all/enum_airspeed_sensor_type.go b/pkg/dialects/all/enum_airspeed_sensor_type.go new file mode 100644 index 000000000..8b507382a --- /dev/null +++ b/pkg/dialects/all/enum_airspeed_sensor_type.go @@ -0,0 +1,52 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package all + +import ( + "errors" +) + +// Types of airspeed sensor/data. May be be used in AIRSPEED message to estimate accuracy of indicated speed. +type AIRSPEED_SENSOR_TYPE int + +const ( + // Airspeed sensor type unknown/not supplied. + AIRSPEED_SENSOR_TYPE_UNKNOWN AIRSPEED_SENSOR_TYPE = 0 + // Differential airspeed sensor + AIRSPEED_SENSOR_TYPE_DIFFERENTIAL AIRSPEED_SENSOR_TYPE = 1 + // Mass-flow airspeed sensor. + AIRSPEED_SENSOR_TYPE_MASS_FLOW AIRSPEED_SENSOR_TYPE = 2 + // Windvane airspeed sensor. + AIRSPEED_SENSOR_TYPE_WINDVANE AIRSPEED_SENSOR_TYPE = 3 + // Synthetic/calculated airspeed. + AIRSPEED_SENSOR_TYPE_SYNTHETIC AIRSPEED_SENSOR_TYPE = 4 +) + +var labels_AIRSPEED_SENSOR_TYPE = map[AIRSPEED_SENSOR_TYPE]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e AIRSPEED_SENSOR_TYPE) MarshalText() ([]byte, error) { + if l, ok := labels_AIRSPEED_SENSOR_TYPE[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_AIRSPEED_SENSOR_TYPE = map[string]AIRSPEED_SENSOR_TYPE{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *AIRSPEED_SENSOR_TYPE) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_AIRSPEED_SENSOR_TYPE[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e AIRSPEED_SENSOR_TYPE) String() string { + if l, ok := labels_AIRSPEED_SENSOR_TYPE[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/all/enum_ais_flags.go b/pkg/dialects/all/enum_ais_flags.go new file mode 100644 index 000000000..294dcf1d1 --- /dev/null +++ b/pkg/dialects/all/enum_ais_flags.go @@ -0,0 +1,62 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package all + +import ( + "errors" +) + +// These flags are used in the AIS_VESSEL.fields bitmask to indicate validity of data in the other message fields. When set, the data is valid. +type AIS_FLAGS int + +const ( + // 1 = Position accuracy less than 10m, 0 = position accuracy greater than 10m. + AIS_FLAGS_POSITION_ACCURACY AIS_FLAGS = 1 + AIS_FLAGS_VALID_COG AIS_FLAGS = 2 + AIS_FLAGS_VALID_VELOCITY AIS_FLAGS = 4 + // 1 = Velocity over 52.5765m/s (102.2 knots) + AIS_FLAGS_HIGH_VELOCITY AIS_FLAGS = 8 + AIS_FLAGS_VALID_TURN_RATE AIS_FLAGS = 16 + // Only the sign of the returned turn rate value is valid, either greater than 5deg/30s or less than -5deg/30s + AIS_FLAGS_TURN_RATE_SIGN_ONLY AIS_FLAGS = 32 + AIS_FLAGS_VALID_DIMENSIONS AIS_FLAGS = 64 + // Distance to bow is larger than 511m + AIS_FLAGS_LARGE_BOW_DIMENSION AIS_FLAGS = 128 + // Distance to stern is larger than 511m + AIS_FLAGS_LARGE_STERN_DIMENSION AIS_FLAGS = 256 + // Distance to port side is larger than 63m + AIS_FLAGS_LARGE_PORT_DIMENSION AIS_FLAGS = 512 + // Distance to starboard side is larger than 63m + AIS_FLAGS_LARGE_STARBOARD_DIMENSION AIS_FLAGS = 1024 + AIS_FLAGS_VALID_CALLSIGN AIS_FLAGS = 2048 + AIS_FLAGS_VALID_NAME AIS_FLAGS = 4096 +) + +var labels_AIS_FLAGS = map[AIS_FLAGS]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e AIS_FLAGS) MarshalText() ([]byte, error) { + if l, ok := labels_AIS_FLAGS[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_AIS_FLAGS = map[string]AIS_FLAGS{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *AIS_FLAGS) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_AIS_FLAGS[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e AIS_FLAGS) String() string { + if l, ok := labels_AIS_FLAGS[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/all/enum_ais_nav_status.go b/pkg/dialects/all/enum_ais_nav_status.go new file mode 100644 index 000000000..027751291 --- /dev/null +++ b/pkg/dialects/all/enum_ais_nav_status.go @@ -0,0 +1,61 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package all + +import ( + "errors" +) + +// Navigational status of AIS vessel, enum duplicated from AIS standard, https://gpsd.gitlab.io/gpsd/AIVDM.html +type AIS_NAV_STATUS int + +const ( + // Under way using engine. + UNDER_WAY AIS_NAV_STATUS = 0 + AIS_NAV_ANCHORED AIS_NAV_STATUS = 1 + AIS_NAV_UN_COMMANDED AIS_NAV_STATUS = 2 + AIS_NAV_RESTRICTED_MANOEUVERABILITY AIS_NAV_STATUS = 3 + AIS_NAV_DRAUGHT_CONSTRAINED AIS_NAV_STATUS = 4 + AIS_NAV_MOORED AIS_NAV_STATUS = 5 + AIS_NAV_AGROUND AIS_NAV_STATUS = 6 + AIS_NAV_FISHING AIS_NAV_STATUS = 7 + AIS_NAV_SAILING AIS_NAV_STATUS = 8 + AIS_NAV_RESERVED_HSC AIS_NAV_STATUS = 9 + AIS_NAV_RESERVED_WIG AIS_NAV_STATUS = 10 + AIS_NAV_RESERVED_1 AIS_NAV_STATUS = 11 + AIS_NAV_RESERVED_2 AIS_NAV_STATUS = 12 + AIS_NAV_RESERVED_3 AIS_NAV_STATUS = 13 + // Search And Rescue Transponder. + AIS_NAV_AIS_SART AIS_NAV_STATUS = 14 + // Not available (default). + AIS_NAV_UNKNOWN AIS_NAV_STATUS = 15 +) + +var labels_AIS_NAV_STATUS = map[AIS_NAV_STATUS]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e AIS_NAV_STATUS) MarshalText() ([]byte, error) { + if l, ok := labels_AIS_NAV_STATUS[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_AIS_NAV_STATUS = map[string]AIS_NAV_STATUS{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *AIS_NAV_STATUS) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_AIS_NAV_STATUS[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e AIS_NAV_STATUS) String() string { + if l, ok := labels_AIS_NAV_STATUS[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/all/enum_ais_type.go b/pkg/dialects/all/enum_ais_type.go new file mode 100644 index 000000000..d5e2c206a --- /dev/null +++ b/pkg/dialects/all/enum_ais_type.go @@ -0,0 +1,150 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package all + +import ( + "errors" +) + +// Type of AIS vessel, enum duplicated from AIS standard, https://gpsd.gitlab.io/gpsd/AIVDM.html +type AIS_TYPE int + +const ( + // Not available (default). + AIS_TYPE_UNKNOWN AIS_TYPE = 0 + AIS_TYPE_RESERVED_1 AIS_TYPE = 1 + AIS_TYPE_RESERVED_2 AIS_TYPE = 2 + AIS_TYPE_RESERVED_3 AIS_TYPE = 3 + AIS_TYPE_RESERVED_4 AIS_TYPE = 4 + AIS_TYPE_RESERVED_5 AIS_TYPE = 5 + AIS_TYPE_RESERVED_6 AIS_TYPE = 6 + AIS_TYPE_RESERVED_7 AIS_TYPE = 7 + AIS_TYPE_RESERVED_8 AIS_TYPE = 8 + AIS_TYPE_RESERVED_9 AIS_TYPE = 9 + AIS_TYPE_RESERVED_10 AIS_TYPE = 10 + AIS_TYPE_RESERVED_11 AIS_TYPE = 11 + AIS_TYPE_RESERVED_12 AIS_TYPE = 12 + AIS_TYPE_RESERVED_13 AIS_TYPE = 13 + AIS_TYPE_RESERVED_14 AIS_TYPE = 14 + AIS_TYPE_RESERVED_15 AIS_TYPE = 15 + AIS_TYPE_RESERVED_16 AIS_TYPE = 16 + AIS_TYPE_RESERVED_17 AIS_TYPE = 17 + AIS_TYPE_RESERVED_18 AIS_TYPE = 18 + AIS_TYPE_RESERVED_19 AIS_TYPE = 19 + // Wing In Ground effect. + AIS_TYPE_WIG AIS_TYPE = 20 + AIS_TYPE_WIG_HAZARDOUS_A AIS_TYPE = 21 + AIS_TYPE_WIG_HAZARDOUS_B AIS_TYPE = 22 + AIS_TYPE_WIG_HAZARDOUS_C AIS_TYPE = 23 + AIS_TYPE_WIG_HAZARDOUS_D AIS_TYPE = 24 + AIS_TYPE_WIG_RESERVED_1 AIS_TYPE = 25 + AIS_TYPE_WIG_RESERVED_2 AIS_TYPE = 26 + AIS_TYPE_WIG_RESERVED_3 AIS_TYPE = 27 + AIS_TYPE_WIG_RESERVED_4 AIS_TYPE = 28 + AIS_TYPE_WIG_RESERVED_5 AIS_TYPE = 29 + AIS_TYPE_FISHING AIS_TYPE = 30 + AIS_TYPE_TOWING AIS_TYPE = 31 + // Towing: length exceeds 200m or breadth exceeds 25m. + AIS_TYPE_TOWING_LARGE AIS_TYPE = 32 + // Dredging or other underwater ops. + AIS_TYPE_DREDGING AIS_TYPE = 33 + AIS_TYPE_DIVING AIS_TYPE = 34 + AIS_TYPE_MILITARY AIS_TYPE = 35 + AIS_TYPE_SAILING AIS_TYPE = 36 + AIS_TYPE_PLEASURE AIS_TYPE = 37 + AIS_TYPE_RESERVED_20 AIS_TYPE = 38 + AIS_TYPE_RESERVED_21 AIS_TYPE = 39 + // High Speed Craft. + AIS_TYPE_HSC AIS_TYPE = 40 + AIS_TYPE_HSC_HAZARDOUS_A AIS_TYPE = 41 + AIS_TYPE_HSC_HAZARDOUS_B AIS_TYPE = 42 + AIS_TYPE_HSC_HAZARDOUS_C AIS_TYPE = 43 + AIS_TYPE_HSC_HAZARDOUS_D AIS_TYPE = 44 + AIS_TYPE_HSC_RESERVED_1 AIS_TYPE = 45 + AIS_TYPE_HSC_RESERVED_2 AIS_TYPE = 46 + AIS_TYPE_HSC_RESERVED_3 AIS_TYPE = 47 + AIS_TYPE_HSC_RESERVED_4 AIS_TYPE = 48 + AIS_TYPE_HSC_UNKNOWN AIS_TYPE = 49 + AIS_TYPE_PILOT AIS_TYPE = 50 + // Search And Rescue vessel. + AIS_TYPE_SAR AIS_TYPE = 51 + AIS_TYPE_TUG AIS_TYPE = 52 + AIS_TYPE_PORT_TENDER AIS_TYPE = 53 + // Anti-pollution equipment. + AIS_TYPE_ANTI_POLLUTION AIS_TYPE = 54 + AIS_TYPE_LAW_ENFORCEMENT AIS_TYPE = 55 + AIS_TYPE_SPARE_LOCAL_1 AIS_TYPE = 56 + AIS_TYPE_SPARE_LOCAL_2 AIS_TYPE = 57 + AIS_TYPE_MEDICAL_TRANSPORT AIS_TYPE = 58 + // Noncombatant ship according to RR Resolution No. 18. + AIS_TYPE_NONECOMBATANT AIS_TYPE = 59 + AIS_TYPE_PASSENGER AIS_TYPE = 60 + AIS_TYPE_PASSENGER_HAZARDOUS_A AIS_TYPE = 61 + AIS_TYPE_PASSENGER_HAZARDOUS_B AIS_TYPE = 62 + AIS_TYPE_AIS_TYPE_PASSENGER_HAZARDOUS_C AIS_TYPE = 63 + AIS_TYPE_PASSENGER_HAZARDOUS_D AIS_TYPE = 64 + AIS_TYPE_PASSENGER_RESERVED_1 AIS_TYPE = 65 + AIS_TYPE_PASSENGER_RESERVED_2 AIS_TYPE = 66 + AIS_TYPE_PASSENGER_RESERVED_3 AIS_TYPE = 67 + AIS_TYPE_AIS_TYPE_PASSENGER_RESERVED_4 AIS_TYPE = 68 + AIS_TYPE_PASSENGER_UNKNOWN AIS_TYPE = 69 + AIS_TYPE_CARGO AIS_TYPE = 70 + AIS_TYPE_CARGO_HAZARDOUS_A AIS_TYPE = 71 + AIS_TYPE_CARGO_HAZARDOUS_B AIS_TYPE = 72 + AIS_TYPE_CARGO_HAZARDOUS_C AIS_TYPE = 73 + AIS_TYPE_CARGO_HAZARDOUS_D AIS_TYPE = 74 + AIS_TYPE_CARGO_RESERVED_1 AIS_TYPE = 75 + AIS_TYPE_CARGO_RESERVED_2 AIS_TYPE = 76 + AIS_TYPE_CARGO_RESERVED_3 AIS_TYPE = 77 + AIS_TYPE_CARGO_RESERVED_4 AIS_TYPE = 78 + AIS_TYPE_CARGO_UNKNOWN AIS_TYPE = 79 + AIS_TYPE_TANKER AIS_TYPE = 80 + AIS_TYPE_TANKER_HAZARDOUS_A AIS_TYPE = 81 + AIS_TYPE_TANKER_HAZARDOUS_B AIS_TYPE = 82 + AIS_TYPE_TANKER_HAZARDOUS_C AIS_TYPE = 83 + AIS_TYPE_TANKER_HAZARDOUS_D AIS_TYPE = 84 + AIS_TYPE_TANKER_RESERVED_1 AIS_TYPE = 85 + AIS_TYPE_TANKER_RESERVED_2 AIS_TYPE = 86 + AIS_TYPE_TANKER_RESERVED_3 AIS_TYPE = 87 + AIS_TYPE_TANKER_RESERVED_4 AIS_TYPE = 88 + AIS_TYPE_TANKER_UNKNOWN AIS_TYPE = 89 + AIS_TYPE_OTHER AIS_TYPE = 90 + AIS_TYPE_OTHER_HAZARDOUS_A AIS_TYPE = 91 + AIS_TYPE_OTHER_HAZARDOUS_B AIS_TYPE = 92 + AIS_TYPE_OTHER_HAZARDOUS_C AIS_TYPE = 93 + AIS_TYPE_OTHER_HAZARDOUS_D AIS_TYPE = 94 + AIS_TYPE_OTHER_RESERVED_1 AIS_TYPE = 95 + AIS_TYPE_OTHER_RESERVED_2 AIS_TYPE = 96 + AIS_TYPE_OTHER_RESERVED_3 AIS_TYPE = 97 + AIS_TYPE_OTHER_RESERVED_4 AIS_TYPE = 98 + AIS_TYPE_OTHER_UNKNOWN AIS_TYPE = 99 +) + +var labels_AIS_TYPE = map[AIS_TYPE]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e AIS_TYPE) MarshalText() ([]byte, error) { + if l, ok := labels_AIS_TYPE[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_AIS_TYPE = map[string]AIS_TYPE{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *AIS_TYPE) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_AIS_TYPE[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e AIS_TYPE) String() string { + if l, ok := labels_AIS_TYPE[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/all/enum_attitude_target_typemask.go b/pkg/dialects/all/enum_attitude_target_typemask.go new file mode 100644 index 000000000..bd956f5f4 --- /dev/null +++ b/pkg/dialects/all/enum_attitude_target_typemask.go @@ -0,0 +1,54 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package all + +import ( + "errors" +) + +// Bitmap to indicate which dimensions should be ignored by the vehicle: a value of 0b00000000 indicates that none of the setpoint dimensions should be ignored. +type ATTITUDE_TARGET_TYPEMASK int + +const ( + // Ignore body roll rate + ATTITUDE_TARGET_TYPEMASK_BODY_ROLL_RATE_IGNORE ATTITUDE_TARGET_TYPEMASK = 1 + // Ignore body pitch rate + ATTITUDE_TARGET_TYPEMASK_BODY_PITCH_RATE_IGNORE ATTITUDE_TARGET_TYPEMASK = 2 + // Ignore body yaw rate + ATTITUDE_TARGET_TYPEMASK_BODY_YAW_RATE_IGNORE ATTITUDE_TARGET_TYPEMASK = 4 + // Use 3D body thrust setpoint instead of throttle + ATTITUDE_TARGET_TYPEMASK_THRUST_BODY_SET ATTITUDE_TARGET_TYPEMASK = 32 + // Ignore throttle + ATTITUDE_TARGET_TYPEMASK_THROTTLE_IGNORE ATTITUDE_TARGET_TYPEMASK = 64 + // Ignore attitude + ATTITUDE_TARGET_TYPEMASK_ATTITUDE_IGNORE ATTITUDE_TARGET_TYPEMASK = 128 +) + +var labels_ATTITUDE_TARGET_TYPEMASK = map[ATTITUDE_TARGET_TYPEMASK]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e ATTITUDE_TARGET_TYPEMASK) MarshalText() ([]byte, error) { + if l, ok := labels_ATTITUDE_TARGET_TYPEMASK[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_ATTITUDE_TARGET_TYPEMASK = map[string]ATTITUDE_TARGET_TYPEMASK{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *ATTITUDE_TARGET_TYPEMASK) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_ATTITUDE_TARGET_TYPEMASK[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e ATTITUDE_TARGET_TYPEMASK) String() string { + if l, ok := labels_ATTITUDE_TARGET_TYPEMASK[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/all/enum_autotune_axis.go b/pkg/dialects/all/enum_autotune_axis.go new file mode 100644 index 000000000..4fac04c4c --- /dev/null +++ b/pkg/dialects/all/enum_autotune_axis.go @@ -0,0 +1,50 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package all + +import ( + "errors" +) + +// Enable axes that will be tuned via autotuning. Used in MAV_CMD_DO_AUTOTUNE_ENABLE. +type AUTOTUNE_AXIS int + +const ( + // Flight stack tunes axis according to its default settings. + AUTOTUNE_AXIS_DEFAULT AUTOTUNE_AXIS = 0 + // Autotune roll axis. + AUTOTUNE_AXIS_ROLL AUTOTUNE_AXIS = 1 + // Autotune pitch axis. + AUTOTUNE_AXIS_PITCH AUTOTUNE_AXIS = 2 + // Autotune yaw axis. + AUTOTUNE_AXIS_YAW AUTOTUNE_AXIS = 4 +) + +var labels_AUTOTUNE_AXIS = map[AUTOTUNE_AXIS]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e AUTOTUNE_AXIS) MarshalText() ([]byte, error) { + if l, ok := labels_AUTOTUNE_AXIS[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_AUTOTUNE_AXIS = map[string]AUTOTUNE_AXIS{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *AUTOTUNE_AXIS) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_AUTOTUNE_AXIS[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e AUTOTUNE_AXIS) String() string { + if l, ok := labels_AUTOTUNE_AXIS[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/all/enum_camera_cap_flags.go b/pkg/dialects/all/enum_camera_cap_flags.go new file mode 100644 index 000000000..cb623e421 --- /dev/null +++ b/pkg/dialects/all/enum_camera_cap_flags.go @@ -0,0 +1,66 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package all + +import ( + "errors" +) + +// Camera capability flags (Bitmap) +type CAMERA_CAP_FLAGS int + +const ( + // Camera is able to record video + CAMERA_CAP_FLAGS_CAPTURE_VIDEO CAMERA_CAP_FLAGS = 1 + // Camera is able to capture images + CAMERA_CAP_FLAGS_CAPTURE_IMAGE CAMERA_CAP_FLAGS = 2 + // Camera has separate Video and Image/Photo modes (MAV_CMD_SET_CAMERA_MODE) + CAMERA_CAP_FLAGS_HAS_MODES CAMERA_CAP_FLAGS = 4 + // Camera can capture images while in video mode + CAMERA_CAP_FLAGS_CAN_CAPTURE_IMAGE_IN_VIDEO_MODE CAMERA_CAP_FLAGS = 8 + // Camera can capture videos while in Photo/Image mode + CAMERA_CAP_FLAGS_CAN_CAPTURE_VIDEO_IN_IMAGE_MODE CAMERA_CAP_FLAGS = 16 + // Camera has image survey mode (MAV_CMD_SET_CAMERA_MODE) + CAMERA_CAP_FLAGS_HAS_IMAGE_SURVEY_MODE CAMERA_CAP_FLAGS = 32 + // Camera has basic zoom control (MAV_CMD_SET_CAMERA_ZOOM) + CAMERA_CAP_FLAGS_HAS_BASIC_ZOOM CAMERA_CAP_FLAGS = 64 + // Camera has basic focus control (MAV_CMD_SET_CAMERA_FOCUS) + CAMERA_CAP_FLAGS_HAS_BASIC_FOCUS CAMERA_CAP_FLAGS = 128 + // Camera has video streaming capabilities (request VIDEO_STREAM_INFORMATION with MAV_CMD_REQUEST_MESSAGE for video streaming info) + CAMERA_CAP_FLAGS_HAS_VIDEO_STREAM CAMERA_CAP_FLAGS = 256 + // Camera supports tracking of a point on the camera view. + CAMERA_CAP_FLAGS_HAS_TRACKING_POINT CAMERA_CAP_FLAGS = 512 + // Camera supports tracking of a selection rectangle on the camera view. + CAMERA_CAP_FLAGS_HAS_TRACKING_RECTANGLE CAMERA_CAP_FLAGS = 1024 + // Camera supports tracking geo status (CAMERA_TRACKING_GEO_STATUS). + CAMERA_CAP_FLAGS_HAS_TRACKING_GEO_STATUS CAMERA_CAP_FLAGS = 2048 +) + +var labels_CAMERA_CAP_FLAGS = map[CAMERA_CAP_FLAGS]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e CAMERA_CAP_FLAGS) MarshalText() ([]byte, error) { + if l, ok := labels_CAMERA_CAP_FLAGS[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_CAMERA_CAP_FLAGS = map[string]CAMERA_CAP_FLAGS{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *CAMERA_CAP_FLAGS) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_CAMERA_CAP_FLAGS[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e CAMERA_CAP_FLAGS) String() string { + if l, ok := labels_CAMERA_CAP_FLAGS[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/all/enum_camera_feedback_flags.go b/pkg/dialects/all/enum_camera_feedback_flags.go new file mode 100644 index 000000000..e6ad21b6c --- /dev/null +++ b/pkg/dialects/all/enum_camera_feedback_flags.go @@ -0,0 +1,51 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package all + +import ( + "errors" +) + +type CAMERA_FEEDBACK_FLAGS int + +const ( + // Shooting photos, not video. + CAMERA_FEEDBACK_PHOTO CAMERA_FEEDBACK_FLAGS = 0 + // Shooting video, not stills. + CAMERA_FEEDBACK_VIDEO CAMERA_FEEDBACK_FLAGS = 1 + // Unable to achieve requested exposure (e.g. shutter speed too low). + CAMERA_FEEDBACK_BADEXPOSURE CAMERA_FEEDBACK_FLAGS = 2 + // Closed loop feedback from camera, we know for sure it has successfully taken a picture. + CAMERA_FEEDBACK_CLOSEDLOOP CAMERA_FEEDBACK_FLAGS = 3 + // Open loop camera, an image trigger has been requested but we can't know for sure it has successfully taken a picture. + CAMERA_FEEDBACK_OPENLOOP CAMERA_FEEDBACK_FLAGS = 4 +) + +var labels_CAMERA_FEEDBACK_FLAGS = map[CAMERA_FEEDBACK_FLAGS]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e CAMERA_FEEDBACK_FLAGS) MarshalText() ([]byte, error) { + if l, ok := labels_CAMERA_FEEDBACK_FLAGS[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_CAMERA_FEEDBACK_FLAGS = map[string]CAMERA_FEEDBACK_FLAGS{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *CAMERA_FEEDBACK_FLAGS) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_CAMERA_FEEDBACK_FLAGS[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e CAMERA_FEEDBACK_FLAGS) String() string { + if l, ok := labels_CAMERA_FEEDBACK_FLAGS[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/all/enum_camera_mode.go b/pkg/dialects/all/enum_camera_mode.go new file mode 100644 index 000000000..b5092269b --- /dev/null +++ b/pkg/dialects/all/enum_camera_mode.go @@ -0,0 +1,48 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package all + +import ( + "errors" +) + +// Camera Modes. +type CAMERA_MODE int + +const ( + // Camera is in image/photo capture mode. + CAMERA_MODE_IMAGE CAMERA_MODE = 0 + // Camera is in video capture mode. + CAMERA_MODE_VIDEO CAMERA_MODE = 1 + // Camera is in image survey capture mode. It allows for camera controller to do specific settings for surveys. + CAMERA_MODE_IMAGE_SURVEY CAMERA_MODE = 2 +) + +var labels_CAMERA_MODE = map[CAMERA_MODE]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e CAMERA_MODE) MarshalText() ([]byte, error) { + if l, ok := labels_CAMERA_MODE[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_CAMERA_MODE = map[string]CAMERA_MODE{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *CAMERA_MODE) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_CAMERA_MODE[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e CAMERA_MODE) String() string { + if l, ok := labels_CAMERA_MODE[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/all/enum_camera_status_types.go b/pkg/dialects/all/enum_camera_status_types.go new file mode 100644 index 000000000..43781a734 --- /dev/null +++ b/pkg/dialects/all/enum_camera_status_types.go @@ -0,0 +1,55 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package all + +import ( + "errors" +) + +type CAMERA_STATUS_TYPES int + +const ( + // Camera heartbeat, announce camera component ID at 1Hz. + CAMERA_STATUS_TYPE_HEARTBEAT CAMERA_STATUS_TYPES = 0 + // Camera image triggered. + CAMERA_STATUS_TYPE_TRIGGER CAMERA_STATUS_TYPES = 1 + // Camera connection lost. + CAMERA_STATUS_TYPE_DISCONNECT CAMERA_STATUS_TYPES = 2 + // Camera unknown error. + CAMERA_STATUS_TYPE_ERROR CAMERA_STATUS_TYPES = 3 + // Camera battery low. Parameter p1 shows reported voltage. + CAMERA_STATUS_TYPE_LOWBATT CAMERA_STATUS_TYPES = 4 + // Camera storage low. Parameter p1 shows reported shots remaining. + CAMERA_STATUS_TYPE_LOWSTORE CAMERA_STATUS_TYPES = 5 + // Camera storage low. Parameter p1 shows reported video minutes remaining. + CAMERA_STATUS_TYPE_LOWSTOREV CAMERA_STATUS_TYPES = 6 +) + +var labels_CAMERA_STATUS_TYPES = map[CAMERA_STATUS_TYPES]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e CAMERA_STATUS_TYPES) MarshalText() ([]byte, error) { + if l, ok := labels_CAMERA_STATUS_TYPES[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_CAMERA_STATUS_TYPES = map[string]CAMERA_STATUS_TYPES{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *CAMERA_STATUS_TYPES) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_CAMERA_STATUS_TYPES[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e CAMERA_STATUS_TYPES) String() string { + if l, ok := labels_CAMERA_STATUS_TYPES[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/all/enum_camera_tracking_mode.go b/pkg/dialects/all/enum_camera_tracking_mode.go new file mode 100644 index 000000000..1bcd8d633 --- /dev/null +++ b/pkg/dialects/all/enum_camera_tracking_mode.go @@ -0,0 +1,48 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package all + +import ( + "errors" +) + +// Camera tracking modes +type CAMERA_TRACKING_MODE int + +const ( + // Not tracking + CAMERA_TRACKING_MODE_NONE CAMERA_TRACKING_MODE = 0 + // Target is a point + CAMERA_TRACKING_MODE_POINT CAMERA_TRACKING_MODE = 1 + // Target is a rectangle + CAMERA_TRACKING_MODE_RECTANGLE CAMERA_TRACKING_MODE = 2 +) + +var labels_CAMERA_TRACKING_MODE = map[CAMERA_TRACKING_MODE]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e CAMERA_TRACKING_MODE) MarshalText() ([]byte, error) { + if l, ok := labels_CAMERA_TRACKING_MODE[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_CAMERA_TRACKING_MODE = map[string]CAMERA_TRACKING_MODE{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *CAMERA_TRACKING_MODE) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_CAMERA_TRACKING_MODE[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e CAMERA_TRACKING_MODE) String() string { + if l, ok := labels_CAMERA_TRACKING_MODE[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/all/enum_camera_tracking_status_flags.go b/pkg/dialects/all/enum_camera_tracking_status_flags.go new file mode 100644 index 000000000..14ee3ed73 --- /dev/null +++ b/pkg/dialects/all/enum_camera_tracking_status_flags.go @@ -0,0 +1,48 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package all + +import ( + "errors" +) + +// Camera tracking status flags +type CAMERA_TRACKING_STATUS_FLAGS int + +const ( + // Camera is not tracking + CAMERA_TRACKING_STATUS_FLAGS_IDLE CAMERA_TRACKING_STATUS_FLAGS = 0 + // Camera is tracking + CAMERA_TRACKING_STATUS_FLAGS_ACTIVE CAMERA_TRACKING_STATUS_FLAGS = 1 + // Camera tracking in error state + CAMERA_TRACKING_STATUS_FLAGS_ERROR CAMERA_TRACKING_STATUS_FLAGS = 2 +) + +var labels_CAMERA_TRACKING_STATUS_FLAGS = map[CAMERA_TRACKING_STATUS_FLAGS]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e CAMERA_TRACKING_STATUS_FLAGS) MarshalText() ([]byte, error) { + if l, ok := labels_CAMERA_TRACKING_STATUS_FLAGS[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_CAMERA_TRACKING_STATUS_FLAGS = map[string]CAMERA_TRACKING_STATUS_FLAGS{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *CAMERA_TRACKING_STATUS_FLAGS) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_CAMERA_TRACKING_STATUS_FLAGS[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e CAMERA_TRACKING_STATUS_FLAGS) String() string { + if l, ok := labels_CAMERA_TRACKING_STATUS_FLAGS[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/all/enum_camera_tracking_target_data.go b/pkg/dialects/all/enum_camera_tracking_target_data.go new file mode 100644 index 000000000..0444f228c --- /dev/null +++ b/pkg/dialects/all/enum_camera_tracking_target_data.go @@ -0,0 +1,50 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package all + +import ( + "errors" +) + +// Camera tracking target data (shows where tracked target is within image) +type CAMERA_TRACKING_TARGET_DATA int + +const ( + // No target data + CAMERA_TRACKING_TARGET_DATA_NONE CAMERA_TRACKING_TARGET_DATA = 0 + // Target data embedded in image data (proprietary) + CAMERA_TRACKING_TARGET_DATA_EMBEDDED CAMERA_TRACKING_TARGET_DATA = 1 + // Target data rendered in image + CAMERA_TRACKING_TARGET_DATA_RENDERED CAMERA_TRACKING_TARGET_DATA = 2 + // Target data within status message (Point or Rectangle) + CAMERA_TRACKING_TARGET_DATA_IN_STATUS CAMERA_TRACKING_TARGET_DATA = 4 +) + +var labels_CAMERA_TRACKING_TARGET_DATA = map[CAMERA_TRACKING_TARGET_DATA]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e CAMERA_TRACKING_TARGET_DATA) MarshalText() ([]byte, error) { + if l, ok := labels_CAMERA_TRACKING_TARGET_DATA[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_CAMERA_TRACKING_TARGET_DATA = map[string]CAMERA_TRACKING_TARGET_DATA{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *CAMERA_TRACKING_TARGET_DATA) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_CAMERA_TRACKING_TARGET_DATA[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e CAMERA_TRACKING_TARGET_DATA) String() string { + if l, ok := labels_CAMERA_TRACKING_TARGET_DATA[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/all/enum_camera_zoom_type.go b/pkg/dialects/all/enum_camera_zoom_type.go new file mode 100644 index 000000000..88bce4a14 --- /dev/null +++ b/pkg/dialects/all/enum_camera_zoom_type.go @@ -0,0 +1,50 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package all + +import ( + "errors" +) + +// Zoom types for MAV_CMD_SET_CAMERA_ZOOM +type CAMERA_ZOOM_TYPE int + +const ( + // Zoom one step increment (-1 for wide, 1 for tele) + ZOOM_TYPE_STEP CAMERA_ZOOM_TYPE = 0 + // Continuous zoom up/down until stopped (-1 for wide, 1 for tele, 0 to stop zooming) + ZOOM_TYPE_CONTINUOUS CAMERA_ZOOM_TYPE = 1 + // Zoom value as proportion of full camera range (a value between 0.0 and 100.0) + ZOOM_TYPE_RANGE CAMERA_ZOOM_TYPE = 2 + // Zoom value/variable focal length in milimetres. Note that there is no message to get the valid zoom range of the camera, so this can type can only be used for cameras where the zoom range is known (implying that this cannot reliably be used in a GCS for an arbitrary camera) + ZOOM_TYPE_FOCAL_LENGTH CAMERA_ZOOM_TYPE = 3 +) + +var labels_CAMERA_ZOOM_TYPE = map[CAMERA_ZOOM_TYPE]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e CAMERA_ZOOM_TYPE) MarshalText() ([]byte, error) { + if l, ok := labels_CAMERA_ZOOM_TYPE[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_CAMERA_ZOOM_TYPE = map[string]CAMERA_ZOOM_TYPE{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *CAMERA_ZOOM_TYPE) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_CAMERA_ZOOM_TYPE[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e CAMERA_ZOOM_TYPE) String() string { + if l, ok := labels_CAMERA_ZOOM_TYPE[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/all/enum_cellular_config_response.go b/pkg/dialects/all/enum_cellular_config_response.go new file mode 100644 index 000000000..e8e4d0d07 --- /dev/null +++ b/pkg/dialects/all/enum_cellular_config_response.go @@ -0,0 +1,52 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package all + +import ( + "errors" +) + +// Possible responses from a CELLULAR_CONFIG message. +type CELLULAR_CONFIG_RESPONSE int + +const ( + // Changes accepted. + CELLULAR_CONFIG_RESPONSE_ACCEPTED CELLULAR_CONFIG_RESPONSE = 0 + // Invalid APN. + CELLULAR_CONFIG_RESPONSE_APN_ERROR CELLULAR_CONFIG_RESPONSE = 1 + // Invalid PIN. + CELLULAR_CONFIG_RESPONSE_PIN_ERROR CELLULAR_CONFIG_RESPONSE = 2 + // Changes rejected. + CELLULAR_CONFIG_RESPONSE_REJECTED CELLULAR_CONFIG_RESPONSE = 3 + // PUK is required to unblock SIM card. + CELLULAR_CONFIG_BLOCKED_PUK_REQUIRED CELLULAR_CONFIG_RESPONSE = 4 +) + +var labels_CELLULAR_CONFIG_RESPONSE = map[CELLULAR_CONFIG_RESPONSE]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e CELLULAR_CONFIG_RESPONSE) MarshalText() ([]byte, error) { + if l, ok := labels_CELLULAR_CONFIG_RESPONSE[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_CELLULAR_CONFIG_RESPONSE = map[string]CELLULAR_CONFIG_RESPONSE{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *CELLULAR_CONFIG_RESPONSE) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_CELLULAR_CONFIG_RESPONSE[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e CELLULAR_CONFIG_RESPONSE) String() string { + if l, ok := labels_CELLULAR_CONFIG_RESPONSE[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/all/enum_cellular_network_failed_reason.go b/pkg/dialects/all/enum_cellular_network_failed_reason.go new file mode 100644 index 000000000..999b0d74f --- /dev/null +++ b/pkg/dialects/all/enum_cellular_network_failed_reason.go @@ -0,0 +1,50 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package all + +import ( + "errors" +) + +// These flags are used to diagnose the failure state of CELLULAR_STATUS +type CELLULAR_NETWORK_FAILED_REASON int + +const ( + // No error + CELLULAR_NETWORK_FAILED_REASON_NONE CELLULAR_NETWORK_FAILED_REASON = 0 + // Error state is unknown + CELLULAR_NETWORK_FAILED_REASON_UNKNOWN CELLULAR_NETWORK_FAILED_REASON = 1 + // SIM is required for the modem but missing + CELLULAR_NETWORK_FAILED_REASON_SIM_MISSING CELLULAR_NETWORK_FAILED_REASON = 2 + // SIM is available, but not usuable for connection + CELLULAR_NETWORK_FAILED_REASON_SIM_ERROR CELLULAR_NETWORK_FAILED_REASON = 3 +) + +var labels_CELLULAR_NETWORK_FAILED_REASON = map[CELLULAR_NETWORK_FAILED_REASON]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e CELLULAR_NETWORK_FAILED_REASON) MarshalText() ([]byte, error) { + if l, ok := labels_CELLULAR_NETWORK_FAILED_REASON[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_CELLULAR_NETWORK_FAILED_REASON = map[string]CELLULAR_NETWORK_FAILED_REASON{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *CELLULAR_NETWORK_FAILED_REASON) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_CELLULAR_NETWORK_FAILED_REASON[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e CELLULAR_NETWORK_FAILED_REASON) String() string { + if l, ok := labels_CELLULAR_NETWORK_FAILED_REASON[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/all/enum_cellular_network_radio_type.go b/pkg/dialects/all/enum_cellular_network_radio_type.go new file mode 100644 index 000000000..c905fdf3d --- /dev/null +++ b/pkg/dialects/all/enum_cellular_network_radio_type.go @@ -0,0 +1,47 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package all + +import ( + "errors" +) + +// Cellular network radio type +type CELLULAR_NETWORK_RADIO_TYPE int + +const ( + CELLULAR_NETWORK_RADIO_TYPE_NONE CELLULAR_NETWORK_RADIO_TYPE = 0 + CELLULAR_NETWORK_RADIO_TYPE_GSM CELLULAR_NETWORK_RADIO_TYPE = 1 + CELLULAR_NETWORK_RADIO_TYPE_CDMA CELLULAR_NETWORK_RADIO_TYPE = 2 + CELLULAR_NETWORK_RADIO_TYPE_WCDMA CELLULAR_NETWORK_RADIO_TYPE = 3 + CELLULAR_NETWORK_RADIO_TYPE_LTE CELLULAR_NETWORK_RADIO_TYPE = 4 +) + +var labels_CELLULAR_NETWORK_RADIO_TYPE = map[CELLULAR_NETWORK_RADIO_TYPE]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e CELLULAR_NETWORK_RADIO_TYPE) MarshalText() ([]byte, error) { + if l, ok := labels_CELLULAR_NETWORK_RADIO_TYPE[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_CELLULAR_NETWORK_RADIO_TYPE = map[string]CELLULAR_NETWORK_RADIO_TYPE{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *CELLULAR_NETWORK_RADIO_TYPE) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_CELLULAR_NETWORK_RADIO_TYPE[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e CELLULAR_NETWORK_RADIO_TYPE) String() string { + if l, ok := labels_CELLULAR_NETWORK_RADIO_TYPE[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/all/enum_cellular_status_flag.go b/pkg/dialects/all/enum_cellular_status_flag.go new file mode 100644 index 000000000..6925ef31f --- /dev/null +++ b/pkg/dialects/all/enum_cellular_status_flag.go @@ -0,0 +1,68 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package all + +import ( + "errors" +) + +// These flags encode the cellular network status +type CELLULAR_STATUS_FLAG int + +const ( + // State unknown or not reportable. + CELLULAR_STATUS_FLAG_UNKNOWN CELLULAR_STATUS_FLAG = 0 + // Modem is unusable + CELLULAR_STATUS_FLAG_FAILED CELLULAR_STATUS_FLAG = 1 + // Modem is being initialized + CELLULAR_STATUS_FLAG_INITIALIZING CELLULAR_STATUS_FLAG = 2 + // Modem is locked + CELLULAR_STATUS_FLAG_LOCKED CELLULAR_STATUS_FLAG = 3 + // Modem is not enabled and is powered down + CELLULAR_STATUS_FLAG_DISABLED CELLULAR_STATUS_FLAG = 4 + // Modem is currently transitioning to the CELLULAR_STATUS_FLAG_DISABLED state + CELLULAR_STATUS_FLAG_DISABLING CELLULAR_STATUS_FLAG = 5 + // Modem is currently transitioning to the CELLULAR_STATUS_FLAG_ENABLED state + CELLULAR_STATUS_FLAG_ENABLING CELLULAR_STATUS_FLAG = 6 + // Modem is enabled and powered on but not registered with a network provider and not available for data connections + CELLULAR_STATUS_FLAG_ENABLED CELLULAR_STATUS_FLAG = 7 + // Modem is searching for a network provider to register + CELLULAR_STATUS_FLAG_SEARCHING CELLULAR_STATUS_FLAG = 8 + // Modem is registered with a network provider, and data connections and messaging may be available for use + CELLULAR_STATUS_FLAG_REGISTERED CELLULAR_STATUS_FLAG = 9 + // Modem is disconnecting and deactivating the last active packet data bearer. This state will not be entered if more than one packet data bearer is active and one of the active bearers is deactivated + CELLULAR_STATUS_FLAG_DISCONNECTING CELLULAR_STATUS_FLAG = 10 + // Modem is activating and connecting the first packet data bearer. Subsequent bearer activations when another bearer is already active do not cause this state to be entered + CELLULAR_STATUS_FLAG_CONNECTING CELLULAR_STATUS_FLAG = 11 + // One or more packet data bearers is active and connected + CELLULAR_STATUS_FLAG_CONNECTED CELLULAR_STATUS_FLAG = 12 +) + +var labels_CELLULAR_STATUS_FLAG = map[CELLULAR_STATUS_FLAG]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e CELLULAR_STATUS_FLAG) MarshalText() ([]byte, error) { + if l, ok := labels_CELLULAR_STATUS_FLAG[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_CELLULAR_STATUS_FLAG = map[string]CELLULAR_STATUS_FLAG{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *CELLULAR_STATUS_FLAG) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_CELLULAR_STATUS_FLAG[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e CELLULAR_STATUS_FLAG) String() string { + if l, ok := labels_CELLULAR_STATUS_FLAG[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/all/enum_comp_metadata_type.go b/pkg/dialects/all/enum_comp_metadata_type.go new file mode 100644 index 000000000..cbe3a1c44 --- /dev/null +++ b/pkg/dialects/all/enum_comp_metadata_type.go @@ -0,0 +1,54 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package all + +import ( + "errors" +) + +// Supported component metadata types. These are used in the "general" metadata file returned by COMPONENT_INFORMATION to provide information about supported metadata types. The types are not used directly in MAVLink messages. +type COMP_METADATA_TYPE int + +const ( + // General information about the component. General metadata includes information about other COMP_METADATA_TYPEs supported by the component. This type must be supported and must be downloadable from vehicle. + COMP_METADATA_TYPE_GENERAL COMP_METADATA_TYPE = 0 + // Parameter meta data. + COMP_METADATA_TYPE_PARAMETER COMP_METADATA_TYPE = 1 + // Meta data that specifies which commands and command parameters the vehicle supports. (WIP) + COMP_METADATA_TYPE_COMMANDS COMP_METADATA_TYPE = 2 + // Meta data that specifies external non-MAVLink peripherals. + COMP_METADATA_TYPE_PERIPHERALS COMP_METADATA_TYPE = 3 + // Meta data for the events interface. + COMP_METADATA_TYPE_EVENTS COMP_METADATA_TYPE = 4 + // Meta data for actuator configuration (motors, servos and vehicle geometry) and testing. + COMP_METADATA_TYPE_ACTUATORS COMP_METADATA_TYPE = 5 +) + +var labels_COMP_METADATA_TYPE = map[COMP_METADATA_TYPE]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e COMP_METADATA_TYPE) MarshalText() ([]byte, error) { + if l, ok := labels_COMP_METADATA_TYPE[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_COMP_METADATA_TYPE = map[string]COMP_METADATA_TYPE{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *COMP_METADATA_TYPE) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_COMP_METADATA_TYPE[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e COMP_METADATA_TYPE) String() string { + if l, ok := labels_COMP_METADATA_TYPE[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/all/enum_copter_mode.go b/pkg/dialects/all/enum_copter_mode.go new file mode 100644 index 000000000..17692badf --- /dev/null +++ b/pkg/dialects/all/enum_copter_mode.go @@ -0,0 +1,67 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package all + +import ( + "errors" +) + +// A mapping of copter flight modes for custom_mode field of heartbeat. +type COPTER_MODE int + +const ( + COPTER_MODE_STABILIZE COPTER_MODE = 0 + COPTER_MODE_ACRO COPTER_MODE = 1 + COPTER_MODE_ALT_HOLD COPTER_MODE = 2 + COPTER_MODE_AUTO COPTER_MODE = 3 + COPTER_MODE_GUIDED COPTER_MODE = 4 + COPTER_MODE_LOITER COPTER_MODE = 5 + COPTER_MODE_RTL COPTER_MODE = 6 + COPTER_MODE_CIRCLE COPTER_MODE = 7 + COPTER_MODE_LAND COPTER_MODE = 9 + COPTER_MODE_DRIFT COPTER_MODE = 11 + COPTER_MODE_SPORT COPTER_MODE = 13 + COPTER_MODE_FLIP COPTER_MODE = 14 + COPTER_MODE_AUTOTUNE COPTER_MODE = 15 + COPTER_MODE_POSHOLD COPTER_MODE = 16 + COPTER_MODE_BRAKE COPTER_MODE = 17 + COPTER_MODE_THROW COPTER_MODE = 18 + COPTER_MODE_AVOID_ADSB COPTER_MODE = 19 + COPTER_MODE_GUIDED_NOGPS COPTER_MODE = 20 + COPTER_MODE_SMART_RTL COPTER_MODE = 21 + COPTER_MODE_FLOWHOLD COPTER_MODE = 22 + COPTER_MODE_FOLLOW COPTER_MODE = 23 + COPTER_MODE_ZIGZAG COPTER_MODE = 24 + COPTER_MODE_SYSTEMID COPTER_MODE = 25 + COPTER_MODE_AUTOROTATE COPTER_MODE = 26 + COPTER_MODE_AUTO_RTL COPTER_MODE = 27 +) + +var labels_COPTER_MODE = map[COPTER_MODE]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e COPTER_MODE) MarshalText() ([]byte, error) { + if l, ok := labels_COPTER_MODE[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_COPTER_MODE = map[string]COPTER_MODE{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *COPTER_MODE) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_COPTER_MODE[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e COPTER_MODE) String() string { + if l, ok := labels_COPTER_MODE[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/all/enum_deepstall_stage.go b/pkg/dialects/all/enum_deepstall_stage.go new file mode 100644 index 000000000..3d10eb957 --- /dev/null +++ b/pkg/dialects/all/enum_deepstall_stage.go @@ -0,0 +1,56 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package all + +import ( + "errors" +) + +// Deepstall flight stage. +type DEEPSTALL_STAGE int + +const ( + // Flying to the landing point. + DEEPSTALL_STAGE_FLY_TO_LANDING DEEPSTALL_STAGE = 0 + // Building an estimate of the wind. + DEEPSTALL_STAGE_ESTIMATE_WIND DEEPSTALL_STAGE = 1 + // Waiting to breakout of the loiter to fly the approach. + DEEPSTALL_STAGE_WAIT_FOR_BREAKOUT DEEPSTALL_STAGE = 2 + // Flying to the first arc point to turn around to the landing point. + DEEPSTALL_STAGE_FLY_TO_ARC DEEPSTALL_STAGE = 3 + // Turning around back to the deepstall landing point. + DEEPSTALL_STAGE_ARC DEEPSTALL_STAGE = 4 + // Approaching the landing point. + DEEPSTALL_STAGE_APPROACH DEEPSTALL_STAGE = 5 + // Stalling and steering towards the land point. + DEEPSTALL_STAGE_LAND DEEPSTALL_STAGE = 6 +) + +var labels_DEEPSTALL_STAGE = map[DEEPSTALL_STAGE]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e DEEPSTALL_STAGE) MarshalText() ([]byte, error) { + if l, ok := labels_DEEPSTALL_STAGE[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_DEEPSTALL_STAGE = map[string]DEEPSTALL_STAGE{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *DEEPSTALL_STAGE) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_DEEPSTALL_STAGE[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e DEEPSTALL_STAGE) String() string { + if l, ok := labels_DEEPSTALL_STAGE[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/all/enum_device_op_bustype.go b/pkg/dialects/all/enum_device_op_bustype.go new file mode 100644 index 000000000..5f521349b --- /dev/null +++ b/pkg/dialects/all/enum_device_op_bustype.go @@ -0,0 +1,46 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package all + +import ( + "errors" +) + +// Bus types for device operations. +type DEVICE_OP_BUSTYPE int + +const ( + // I2C Device operation. + DEVICE_OP_BUSTYPE_I2C DEVICE_OP_BUSTYPE = 0 + // SPI Device operation. + DEVICE_OP_BUSTYPE_SPI DEVICE_OP_BUSTYPE = 1 +) + +var labels_DEVICE_OP_BUSTYPE = map[DEVICE_OP_BUSTYPE]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e DEVICE_OP_BUSTYPE) MarshalText() ([]byte, error) { + if l, ok := labels_DEVICE_OP_BUSTYPE[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_DEVICE_OP_BUSTYPE = map[string]DEVICE_OP_BUSTYPE{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *DEVICE_OP_BUSTYPE) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_DEVICE_OP_BUSTYPE[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e DEVICE_OP_BUSTYPE) String() string { + if l, ok := labels_DEVICE_OP_BUSTYPE[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/all/enum_ekf_status_flags.go b/pkg/dialects/all/enum_ekf_status_flags.go new file mode 100644 index 000000000..8e42b5690 --- /dev/null +++ b/pkg/dialects/all/enum_ekf_status_flags.go @@ -0,0 +1,64 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package all + +import ( + "errors" +) + +// Flags in EKF_STATUS message. +type EKF_STATUS_FLAGS int + +const ( + // Set if EKF's attitude estimate is good. + EKF_ATTITUDE EKF_STATUS_FLAGS = 1 + // Set if EKF's horizontal velocity estimate is good. + EKF_VELOCITY_HORIZ EKF_STATUS_FLAGS = 2 + // Set if EKF's vertical velocity estimate is good. + EKF_VELOCITY_VERT EKF_STATUS_FLAGS = 4 + // Set if EKF's horizontal position (relative) estimate is good. + EKF_POS_HORIZ_REL EKF_STATUS_FLAGS = 8 + // Set if EKF's horizontal position (absolute) estimate is good. + EKF_POS_HORIZ_ABS EKF_STATUS_FLAGS = 16 + // Set if EKF's vertical position (absolute) estimate is good. + EKF_POS_VERT_ABS EKF_STATUS_FLAGS = 32 + // Set if EKF's vertical position (above ground) estimate is good. + EKF_POS_VERT_AGL EKF_STATUS_FLAGS = 64 + // EKF is in constant position mode and does not know it's absolute or relative position. + EKF_CONST_POS_MODE EKF_STATUS_FLAGS = 128 + // Set if EKF's predicted horizontal position (relative) estimate is good. + EKF_PRED_POS_HORIZ_REL EKF_STATUS_FLAGS = 256 + // Set if EKF's predicted horizontal position (absolute) estimate is good. + EKF_PRED_POS_HORIZ_ABS EKF_STATUS_FLAGS = 512 + // Set if EKF has never been healthy. + EKF_UNINITIALIZED EKF_STATUS_FLAGS = 1024 +) + +var labels_EKF_STATUS_FLAGS = map[EKF_STATUS_FLAGS]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e EKF_STATUS_FLAGS) MarshalText() ([]byte, error) { + if l, ok := labels_EKF_STATUS_FLAGS[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_EKF_STATUS_FLAGS = map[string]EKF_STATUS_FLAGS{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *EKF_STATUS_FLAGS) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_EKF_STATUS_FLAGS[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e EKF_STATUS_FLAGS) String() string { + if l, ok := labels_EKF_STATUS_FLAGS[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/all/enum_esc_connection_type.go b/pkg/dialects/all/enum_esc_connection_type.go new file mode 100644 index 000000000..eb97273a7 --- /dev/null +++ b/pkg/dialects/all/enum_esc_connection_type.go @@ -0,0 +1,54 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package all + +import ( + "errors" +) + +// Indicates the ESC connection type. +type ESC_CONNECTION_TYPE int + +const ( + // Traditional PPM ESC. + ESC_CONNECTION_TYPE_PPM ESC_CONNECTION_TYPE = 0 + // Serial Bus connected ESC. + ESC_CONNECTION_TYPE_SERIAL ESC_CONNECTION_TYPE = 1 + // One Shot PPM ESC. + ESC_CONNECTION_TYPE_ONESHOT ESC_CONNECTION_TYPE = 2 + // I2C ESC. + ESC_CONNECTION_TYPE_I2C ESC_CONNECTION_TYPE = 3 + // CAN-Bus ESC. + ESC_CONNECTION_TYPE_CAN ESC_CONNECTION_TYPE = 4 + // DShot ESC. + ESC_CONNECTION_TYPE_DSHOT ESC_CONNECTION_TYPE = 5 +) + +var labels_ESC_CONNECTION_TYPE = map[ESC_CONNECTION_TYPE]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e ESC_CONNECTION_TYPE) MarshalText() ([]byte, error) { + if l, ok := labels_ESC_CONNECTION_TYPE[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_ESC_CONNECTION_TYPE = map[string]ESC_CONNECTION_TYPE{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *ESC_CONNECTION_TYPE) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_ESC_CONNECTION_TYPE[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e ESC_CONNECTION_TYPE) String() string { + if l, ok := labels_ESC_CONNECTION_TYPE[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/all/enum_esc_failure_flags.go b/pkg/dialects/all/enum_esc_failure_flags.go new file mode 100644 index 000000000..a33e09d5e --- /dev/null +++ b/pkg/dialects/all/enum_esc_failure_flags.go @@ -0,0 +1,58 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package all + +import ( + "errors" +) + +// Flags to report ESC failures. +type ESC_FAILURE_FLAGS int + +const ( + // No ESC failure. + ESC_FAILURE_NONE ESC_FAILURE_FLAGS = 0 + // Over current failure. + ESC_FAILURE_OVER_CURRENT ESC_FAILURE_FLAGS = 1 + // Over voltage failure. + ESC_FAILURE_OVER_VOLTAGE ESC_FAILURE_FLAGS = 2 + // Over temperature failure. + ESC_FAILURE_OVER_TEMPERATURE ESC_FAILURE_FLAGS = 4 + // Over RPM failure. + ESC_FAILURE_OVER_RPM ESC_FAILURE_FLAGS = 8 + // Inconsistent command failure i.e. out of bounds. + ESC_FAILURE_INCONSISTENT_CMD ESC_FAILURE_FLAGS = 16 + // Motor stuck failure. + ESC_FAILURE_MOTOR_STUCK ESC_FAILURE_FLAGS = 32 + // Generic ESC failure. + ESC_FAILURE_GENERIC ESC_FAILURE_FLAGS = 64 +) + +var labels_ESC_FAILURE_FLAGS = map[ESC_FAILURE_FLAGS]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e ESC_FAILURE_FLAGS) MarshalText() ([]byte, error) { + if l, ok := labels_ESC_FAILURE_FLAGS[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_ESC_FAILURE_FLAGS = map[string]ESC_FAILURE_FLAGS{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *ESC_FAILURE_FLAGS) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_ESC_FAILURE_FLAGS[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e ESC_FAILURE_FLAGS) String() string { + if l, ok := labels_ESC_FAILURE_FLAGS[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/all/enum_estimator_status_flags.go b/pkg/dialects/all/enum_estimator_status_flags.go new file mode 100644 index 000000000..f48aa7d15 --- /dev/null +++ b/pkg/dialects/all/enum_estimator_status_flags.go @@ -0,0 +1,66 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package all + +import ( + "errors" +) + +// Flags in ESTIMATOR_STATUS message +type ESTIMATOR_STATUS_FLAGS int + +const ( + // True if the attitude estimate is good + ESTIMATOR_ATTITUDE ESTIMATOR_STATUS_FLAGS = 1 + // True if the horizontal velocity estimate is good + ESTIMATOR_VELOCITY_HORIZ ESTIMATOR_STATUS_FLAGS = 2 + // True if the vertical velocity estimate is good + ESTIMATOR_VELOCITY_VERT ESTIMATOR_STATUS_FLAGS = 4 + // True if the horizontal position (relative) estimate is good + ESTIMATOR_POS_HORIZ_REL ESTIMATOR_STATUS_FLAGS = 8 + // True if the horizontal position (absolute) estimate is good + ESTIMATOR_POS_HORIZ_ABS ESTIMATOR_STATUS_FLAGS = 16 + // True if the vertical position (absolute) estimate is good + ESTIMATOR_POS_VERT_ABS ESTIMATOR_STATUS_FLAGS = 32 + // True if the vertical position (above ground) estimate is good + ESTIMATOR_POS_VERT_AGL ESTIMATOR_STATUS_FLAGS = 64 + // True if the EKF is in a constant position mode and is not using external measurements (eg GPS or optical flow) + ESTIMATOR_CONST_POS_MODE ESTIMATOR_STATUS_FLAGS = 128 + // True if the EKF has sufficient data to enter a mode that will provide a (relative) position estimate + ESTIMATOR_PRED_POS_HORIZ_REL ESTIMATOR_STATUS_FLAGS = 256 + // True if the EKF has sufficient data to enter a mode that will provide a (absolute) position estimate + ESTIMATOR_PRED_POS_HORIZ_ABS ESTIMATOR_STATUS_FLAGS = 512 + // True if the EKF has detected a GPS glitch + ESTIMATOR_GPS_GLITCH ESTIMATOR_STATUS_FLAGS = 1024 + // True if the EKF has detected bad accelerometer data + ESTIMATOR_ACCEL_ERROR ESTIMATOR_STATUS_FLAGS = 2048 +) + +var labels_ESTIMATOR_STATUS_FLAGS = map[ESTIMATOR_STATUS_FLAGS]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e ESTIMATOR_STATUS_FLAGS) MarshalText() ([]byte, error) { + if l, ok := labels_ESTIMATOR_STATUS_FLAGS[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_ESTIMATOR_STATUS_FLAGS = map[string]ESTIMATOR_STATUS_FLAGS{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *ESTIMATOR_STATUS_FLAGS) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_ESTIMATOR_STATUS_FLAGS[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e ESTIMATOR_STATUS_FLAGS) String() string { + if l, ok := labels_ESTIMATOR_STATUS_FLAGS[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/all/enum_failure_type.go b/pkg/dialects/all/enum_failure_type.go new file mode 100644 index 000000000..90c50348a --- /dev/null +++ b/pkg/dialects/all/enum_failure_type.go @@ -0,0 +1,58 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package all + +import ( + "errors" +) + +// List of possible failure type to inject. +type FAILURE_TYPE int + +const ( + // No failure injected, used to reset a previous failure. + FAILURE_TYPE_OK FAILURE_TYPE = 0 + // Sets unit off, so completely non-responsive. + FAILURE_TYPE_OFF FAILURE_TYPE = 1 + // Unit is stuck e.g. keeps reporting the same value. + FAILURE_TYPE_STUCK FAILURE_TYPE = 2 + // Unit is reporting complete garbage. + FAILURE_TYPE_GARBAGE FAILURE_TYPE = 3 + // Unit is consistently wrong. + FAILURE_TYPE_WRONG FAILURE_TYPE = 4 + // Unit is slow, so e.g. reporting at slower than expected rate. + FAILURE_TYPE_SLOW FAILURE_TYPE = 5 + // Data of unit is delayed in time. + FAILURE_TYPE_DELAYED FAILURE_TYPE = 6 + // Unit is sometimes working, sometimes not. + FAILURE_TYPE_INTERMITTENT FAILURE_TYPE = 7 +) + +var labels_FAILURE_TYPE = map[FAILURE_TYPE]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e FAILURE_TYPE) MarshalText() ([]byte, error) { + if l, ok := labels_FAILURE_TYPE[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_FAILURE_TYPE = map[string]FAILURE_TYPE{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *FAILURE_TYPE) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_FAILURE_TYPE[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e FAILURE_TYPE) String() string { + if l, ok := labels_FAILURE_TYPE[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/all/enum_failure_unit.go b/pkg/dialects/all/enum_failure_unit.go new file mode 100644 index 000000000..9ef08c2a0 --- /dev/null +++ b/pkg/dialects/all/enum_failure_unit.go @@ -0,0 +1,57 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package all + +import ( + "errors" +) + +// List of possible units where failures can be injected. +type FAILURE_UNIT int + +const ( + FAILURE_UNIT_SENSOR_GYRO FAILURE_UNIT = 0 + FAILURE_UNIT_SENSOR_ACCEL FAILURE_UNIT = 1 + FAILURE_UNIT_SENSOR_MAG FAILURE_UNIT = 2 + FAILURE_UNIT_SENSOR_BARO FAILURE_UNIT = 3 + FAILURE_UNIT_SENSOR_GPS FAILURE_UNIT = 4 + FAILURE_UNIT_SENSOR_OPTICAL_FLOW FAILURE_UNIT = 5 + FAILURE_UNIT_SENSOR_VIO FAILURE_UNIT = 6 + FAILURE_UNIT_SENSOR_DISTANCE_SENSOR FAILURE_UNIT = 7 + FAILURE_UNIT_SENSOR_AIRSPEED FAILURE_UNIT = 8 + FAILURE_UNIT_SYSTEM_BATTERY FAILURE_UNIT = 100 + FAILURE_UNIT_SYSTEM_MOTOR FAILURE_UNIT = 101 + FAILURE_UNIT_SYSTEM_SERVO FAILURE_UNIT = 102 + FAILURE_UNIT_SYSTEM_AVOIDANCE FAILURE_UNIT = 103 + FAILURE_UNIT_SYSTEM_RC_SIGNAL FAILURE_UNIT = 104 + FAILURE_UNIT_SYSTEM_MAVLINK_SIGNAL FAILURE_UNIT = 105 +) + +var labels_FAILURE_UNIT = map[FAILURE_UNIT]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e FAILURE_UNIT) MarshalText() ([]byte, error) { + if l, ok := labels_FAILURE_UNIT[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_FAILURE_UNIT = map[string]FAILURE_UNIT{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *FAILURE_UNIT) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_FAILURE_UNIT[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e FAILURE_UNIT) String() string { + if l, ok := labels_FAILURE_UNIT[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/all/enum_fence_action.go b/pkg/dialects/all/enum_fence_action.go new file mode 100644 index 000000000..dbbec9bab --- /dev/null +++ b/pkg/dialects/all/enum_fence_action.go @@ -0,0 +1,58 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package all + +import ( + "errors" +) + +// Actions following geofence breach. +type FENCE_ACTION int + +const ( + // Disable fenced mode. If used in a plan this would mean the next fence is disabled. + FENCE_ACTION_NONE FENCE_ACTION = 0 + // Fly to geofence MAV_CMD_NAV_FENCE_RETURN_POINT in GUIDED mode. Note: This action is only supported by ArduPlane, and may not be supported in all versions. + FENCE_ACTION_GUIDED FENCE_ACTION = 1 + // Report fence breach, but don't take action + FENCE_ACTION_REPORT FENCE_ACTION = 2 + // Fly to geofence MAV_CMD_NAV_FENCE_RETURN_POINT with manual throttle control in GUIDED mode. Note: This action is only supported by ArduPlane, and may not be supported in all versions. + FENCE_ACTION_GUIDED_THR_PASS FENCE_ACTION = 3 + // Return/RTL mode. + FENCE_ACTION_RTL FENCE_ACTION = 4 + // Hold at current location. + FENCE_ACTION_HOLD FENCE_ACTION = 5 + // Termination failsafe. Motors are shut down (some flight stacks may trigger other failsafe actions). + FENCE_ACTION_TERMINATE FENCE_ACTION = 6 + // Land at current location. + FENCE_ACTION_LAND FENCE_ACTION = 7 +) + +var labels_FENCE_ACTION = map[FENCE_ACTION]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e FENCE_ACTION) MarshalText() ([]byte, error) { + if l, ok := labels_FENCE_ACTION[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_FENCE_ACTION = map[string]FENCE_ACTION{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *FENCE_ACTION) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_FENCE_ACTION[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e FENCE_ACTION) String() string { + if l, ok := labels_FENCE_ACTION[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/all/enum_fence_breach.go b/pkg/dialects/all/enum_fence_breach.go new file mode 100644 index 000000000..1148785e3 --- /dev/null +++ b/pkg/dialects/all/enum_fence_breach.go @@ -0,0 +1,49 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package all + +import ( + "errors" +) + +type FENCE_BREACH int + +const ( + // No last fence breach + FENCE_BREACH_NONE FENCE_BREACH = 0 + // Breached minimum altitude + FENCE_BREACH_MINALT FENCE_BREACH = 1 + // Breached maximum altitude + FENCE_BREACH_MAXALT FENCE_BREACH = 2 + // Breached fence boundary + FENCE_BREACH_BOUNDARY FENCE_BREACH = 3 +) + +var labels_FENCE_BREACH = map[FENCE_BREACH]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e FENCE_BREACH) MarshalText() ([]byte, error) { + if l, ok := labels_FENCE_BREACH[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_FENCE_BREACH = map[string]FENCE_BREACH{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *FENCE_BREACH) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_FENCE_BREACH[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e FENCE_BREACH) String() string { + if l, ok := labels_FENCE_BREACH[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/all/enum_fence_mitigate.go b/pkg/dialects/all/enum_fence_mitigate.go new file mode 100644 index 000000000..4a4c07680 --- /dev/null +++ b/pkg/dialects/all/enum_fence_mitigate.go @@ -0,0 +1,48 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package all + +import ( + "errors" +) + +// Actions being taken to mitigate/prevent fence breach +type FENCE_MITIGATE int + +const ( + // Unknown + FENCE_MITIGATE_UNKNOWN FENCE_MITIGATE = 0 + // No actions being taken + FENCE_MITIGATE_NONE FENCE_MITIGATE = 1 + // Velocity limiting active to prevent breach + FENCE_MITIGATE_VEL_LIMIT FENCE_MITIGATE = 2 +) + +var labels_FENCE_MITIGATE = map[FENCE_MITIGATE]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e FENCE_MITIGATE) MarshalText() ([]byte, error) { + if l, ok := labels_FENCE_MITIGATE[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_FENCE_MITIGATE = map[string]FENCE_MITIGATE{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *FENCE_MITIGATE) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_FENCE_MITIGATE[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e FENCE_MITIGATE) String() string { + if l, ok := labels_FENCE_MITIGATE[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/all/enum_firmware_version_type.go b/pkg/dialects/all/enum_firmware_version_type.go new file mode 100644 index 000000000..dc6a654ff --- /dev/null +++ b/pkg/dialects/all/enum_firmware_version_type.go @@ -0,0 +1,52 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package all + +import ( + "errors" +) + +// These values define the type of firmware release. These values indicate the first version or release of this type. For example the first alpha release would be 64, the second would be 65. +type FIRMWARE_VERSION_TYPE int + +const ( + // development release + FIRMWARE_VERSION_TYPE_DEV FIRMWARE_VERSION_TYPE = 0 + // alpha release + FIRMWARE_VERSION_TYPE_ALPHA FIRMWARE_VERSION_TYPE = 64 + // beta release + FIRMWARE_VERSION_TYPE_BETA FIRMWARE_VERSION_TYPE = 128 + // release candidate + FIRMWARE_VERSION_TYPE_RC FIRMWARE_VERSION_TYPE = 192 + // official stable release + FIRMWARE_VERSION_TYPE_OFFICIAL FIRMWARE_VERSION_TYPE = 255 +) + +var labels_FIRMWARE_VERSION_TYPE = map[FIRMWARE_VERSION_TYPE]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e FIRMWARE_VERSION_TYPE) MarshalText() ([]byte, error) { + if l, ok := labels_FIRMWARE_VERSION_TYPE[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_FIRMWARE_VERSION_TYPE = map[string]FIRMWARE_VERSION_TYPE{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *FIRMWARE_VERSION_TYPE) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_FIRMWARE_VERSION_TYPE[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e FIRMWARE_VERSION_TYPE) String() string { + if l, ok := labels_FIRMWARE_VERSION_TYPE[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/all/enum_gimbal_axis.go b/pkg/dialects/all/enum_gimbal_axis.go new file mode 100644 index 000000000..39f53ef88 --- /dev/null +++ b/pkg/dialects/all/enum_gimbal_axis.go @@ -0,0 +1,47 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package all + +import ( + "errors" +) + +type GIMBAL_AXIS int + +const ( + // Gimbal yaw axis. + GIMBAL_AXIS_YAW GIMBAL_AXIS = 0 + // Gimbal pitch axis. + GIMBAL_AXIS_PITCH GIMBAL_AXIS = 1 + // Gimbal roll axis. + GIMBAL_AXIS_ROLL GIMBAL_AXIS = 2 +) + +var labels_GIMBAL_AXIS = map[GIMBAL_AXIS]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e GIMBAL_AXIS) MarshalText() ([]byte, error) { + if l, ok := labels_GIMBAL_AXIS[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_GIMBAL_AXIS = map[string]GIMBAL_AXIS{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *GIMBAL_AXIS) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_GIMBAL_AXIS[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e GIMBAL_AXIS) String() string { + if l, ok := labels_GIMBAL_AXIS[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/all/enum_gimbal_axis_calibration_required.go b/pkg/dialects/all/enum_gimbal_axis_calibration_required.go new file mode 100644 index 000000000..0a70447b0 --- /dev/null +++ b/pkg/dialects/all/enum_gimbal_axis_calibration_required.go @@ -0,0 +1,47 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package all + +import ( + "errors" +) + +type GIMBAL_AXIS_CALIBRATION_REQUIRED int + +const ( + // Whether or not this axis requires calibration is unknown at this time. + GIMBAL_AXIS_CALIBRATION_REQUIRED_UNKNOWN GIMBAL_AXIS_CALIBRATION_REQUIRED = 0 + // This axis requires calibration. + GIMBAL_AXIS_CALIBRATION_REQUIRED_TRUE GIMBAL_AXIS_CALIBRATION_REQUIRED = 1 + // This axis does not require calibration. + GIMBAL_AXIS_CALIBRATION_REQUIRED_FALSE GIMBAL_AXIS_CALIBRATION_REQUIRED = 2 +) + +var labels_GIMBAL_AXIS_CALIBRATION_REQUIRED = map[GIMBAL_AXIS_CALIBRATION_REQUIRED]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e GIMBAL_AXIS_CALIBRATION_REQUIRED) MarshalText() ([]byte, error) { + if l, ok := labels_GIMBAL_AXIS_CALIBRATION_REQUIRED[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_GIMBAL_AXIS_CALIBRATION_REQUIRED = map[string]GIMBAL_AXIS_CALIBRATION_REQUIRED{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *GIMBAL_AXIS_CALIBRATION_REQUIRED) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_GIMBAL_AXIS_CALIBRATION_REQUIRED[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e GIMBAL_AXIS_CALIBRATION_REQUIRED) String() string { + if l, ok := labels_GIMBAL_AXIS_CALIBRATION_REQUIRED[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/all/enum_gimbal_axis_calibration_status.go b/pkg/dialects/all/enum_gimbal_axis_calibration_status.go new file mode 100644 index 000000000..86d43bfe3 --- /dev/null +++ b/pkg/dialects/all/enum_gimbal_axis_calibration_status.go @@ -0,0 +1,47 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package all + +import ( + "errors" +) + +type GIMBAL_AXIS_CALIBRATION_STATUS int + +const ( + // Axis calibration is in progress. + GIMBAL_AXIS_CALIBRATION_STATUS_IN_PROGRESS GIMBAL_AXIS_CALIBRATION_STATUS = 0 + // Axis calibration succeeded. + GIMBAL_AXIS_CALIBRATION_STATUS_SUCCEEDED GIMBAL_AXIS_CALIBRATION_STATUS = 1 + // Axis calibration failed. + GIMBAL_AXIS_CALIBRATION_STATUS_FAILED GIMBAL_AXIS_CALIBRATION_STATUS = 2 +) + +var labels_GIMBAL_AXIS_CALIBRATION_STATUS = map[GIMBAL_AXIS_CALIBRATION_STATUS]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e GIMBAL_AXIS_CALIBRATION_STATUS) MarshalText() ([]byte, error) { + if l, ok := labels_GIMBAL_AXIS_CALIBRATION_STATUS[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_GIMBAL_AXIS_CALIBRATION_STATUS = map[string]GIMBAL_AXIS_CALIBRATION_STATUS{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *GIMBAL_AXIS_CALIBRATION_STATUS) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_GIMBAL_AXIS_CALIBRATION_STATUS[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e GIMBAL_AXIS_CALIBRATION_STATUS) String() string { + if l, ok := labels_GIMBAL_AXIS_CALIBRATION_STATUS[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/all/enum_gimbal_device_cap_flags.go b/pkg/dialects/all/enum_gimbal_device_cap_flags.go new file mode 100644 index 000000000..43b060934 --- /dev/null +++ b/pkg/dialects/all/enum_gimbal_device_cap_flags.go @@ -0,0 +1,66 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package all + +import ( + "errors" +) + +// Gimbal device (low level) capability flags (bitmap) +type GIMBAL_DEVICE_CAP_FLAGS int + +const ( + // Gimbal device supports a retracted position + GIMBAL_DEVICE_CAP_FLAGS_HAS_RETRACT GIMBAL_DEVICE_CAP_FLAGS = 1 + // Gimbal device supports a horizontal, forward looking position, stabilized + GIMBAL_DEVICE_CAP_FLAGS_HAS_NEUTRAL GIMBAL_DEVICE_CAP_FLAGS = 2 + // Gimbal device supports rotating around roll axis. + GIMBAL_DEVICE_CAP_FLAGS_HAS_ROLL_AXIS GIMBAL_DEVICE_CAP_FLAGS = 4 + // Gimbal device supports to follow a roll angle relative to the vehicle + GIMBAL_DEVICE_CAP_FLAGS_HAS_ROLL_FOLLOW GIMBAL_DEVICE_CAP_FLAGS = 8 + // Gimbal device supports locking to an roll angle (generally that's the default with roll stabilized) + GIMBAL_DEVICE_CAP_FLAGS_HAS_ROLL_LOCK GIMBAL_DEVICE_CAP_FLAGS = 16 + // Gimbal device supports rotating around pitch axis. + GIMBAL_DEVICE_CAP_FLAGS_HAS_PITCH_AXIS GIMBAL_DEVICE_CAP_FLAGS = 32 + // Gimbal device supports to follow a pitch angle relative to the vehicle + GIMBAL_DEVICE_CAP_FLAGS_HAS_PITCH_FOLLOW GIMBAL_DEVICE_CAP_FLAGS = 64 + // Gimbal device supports locking to an pitch angle (generally that's the default with pitch stabilized) + GIMBAL_DEVICE_CAP_FLAGS_HAS_PITCH_LOCK GIMBAL_DEVICE_CAP_FLAGS = 128 + // Gimbal device supports rotating around yaw axis. + GIMBAL_DEVICE_CAP_FLAGS_HAS_YAW_AXIS GIMBAL_DEVICE_CAP_FLAGS = 256 + // Gimbal device supports to follow a yaw angle relative to the vehicle (generally that's the default) + GIMBAL_DEVICE_CAP_FLAGS_HAS_YAW_FOLLOW GIMBAL_DEVICE_CAP_FLAGS = 512 + // Gimbal device supports locking to an absolute heading (often this is an option available) + GIMBAL_DEVICE_CAP_FLAGS_HAS_YAW_LOCK GIMBAL_DEVICE_CAP_FLAGS = 1024 + // Gimbal device supports yawing/panning infinetely (e.g. using slip disk). + GIMBAL_DEVICE_CAP_FLAGS_SUPPORTS_INFINITE_YAW GIMBAL_DEVICE_CAP_FLAGS = 2048 +) + +var labels_GIMBAL_DEVICE_CAP_FLAGS = map[GIMBAL_DEVICE_CAP_FLAGS]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e GIMBAL_DEVICE_CAP_FLAGS) MarshalText() ([]byte, error) { + if l, ok := labels_GIMBAL_DEVICE_CAP_FLAGS[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_GIMBAL_DEVICE_CAP_FLAGS = map[string]GIMBAL_DEVICE_CAP_FLAGS{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *GIMBAL_DEVICE_CAP_FLAGS) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_GIMBAL_DEVICE_CAP_FLAGS[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e GIMBAL_DEVICE_CAP_FLAGS) String() string { + if l, ok := labels_GIMBAL_DEVICE_CAP_FLAGS[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/all/enum_gimbal_device_error_flags.go b/pkg/dialects/all/enum_gimbal_device_error_flags.go new file mode 100644 index 000000000..0f803a173 --- /dev/null +++ b/pkg/dialects/all/enum_gimbal_device_error_flags.go @@ -0,0 +1,60 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package all + +import ( + "errors" +) + +// Gimbal device (low level) error flags (bitmap, 0 means no error) +type GIMBAL_DEVICE_ERROR_FLAGS int + +const ( + // Gimbal device is limited by hardware roll limit. + GIMBAL_DEVICE_ERROR_FLAGS_AT_ROLL_LIMIT GIMBAL_DEVICE_ERROR_FLAGS = 1 + // Gimbal device is limited by hardware pitch limit. + GIMBAL_DEVICE_ERROR_FLAGS_AT_PITCH_LIMIT GIMBAL_DEVICE_ERROR_FLAGS = 2 + // Gimbal device is limited by hardware yaw limit. + GIMBAL_DEVICE_ERROR_FLAGS_AT_YAW_LIMIT GIMBAL_DEVICE_ERROR_FLAGS = 4 + // There is an error with the gimbal encoders. + GIMBAL_DEVICE_ERROR_FLAGS_ENCODER_ERROR GIMBAL_DEVICE_ERROR_FLAGS = 8 + // There is an error with the gimbal power source. + GIMBAL_DEVICE_ERROR_FLAGS_POWER_ERROR GIMBAL_DEVICE_ERROR_FLAGS = 16 + // There is an error with the gimbal motor's. + GIMBAL_DEVICE_ERROR_FLAGS_MOTOR_ERROR GIMBAL_DEVICE_ERROR_FLAGS = 32 + // There is an error with the gimbal's software. + GIMBAL_DEVICE_ERROR_FLAGS_SOFTWARE_ERROR GIMBAL_DEVICE_ERROR_FLAGS = 64 + // There is an error with the gimbal's communication. + GIMBAL_DEVICE_ERROR_FLAGS_COMMS_ERROR GIMBAL_DEVICE_ERROR_FLAGS = 128 + // Gimbal is currently calibrating. + GIMBAL_DEVICE_ERROR_FLAGS_CALIBRATION_RUNNING GIMBAL_DEVICE_ERROR_FLAGS = 256 +) + +var labels_GIMBAL_DEVICE_ERROR_FLAGS = map[GIMBAL_DEVICE_ERROR_FLAGS]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e GIMBAL_DEVICE_ERROR_FLAGS) MarshalText() ([]byte, error) { + if l, ok := labels_GIMBAL_DEVICE_ERROR_FLAGS[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_GIMBAL_DEVICE_ERROR_FLAGS = map[string]GIMBAL_DEVICE_ERROR_FLAGS{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *GIMBAL_DEVICE_ERROR_FLAGS) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_GIMBAL_DEVICE_ERROR_FLAGS[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e GIMBAL_DEVICE_ERROR_FLAGS) String() string { + if l, ok := labels_GIMBAL_DEVICE_ERROR_FLAGS[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/all/enum_gimbal_device_flags.go b/pkg/dialects/all/enum_gimbal_device_flags.go new file mode 100644 index 000000000..57f3a0e62 --- /dev/null +++ b/pkg/dialects/all/enum_gimbal_device_flags.go @@ -0,0 +1,52 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package all + +import ( + "errors" +) + +// Flags for gimbal device (lower level) operation. +type GIMBAL_DEVICE_FLAGS int + +const ( + // Set to retracted safe position (no stabilization), takes presedence over all other flags. + GIMBAL_DEVICE_FLAGS_RETRACT GIMBAL_DEVICE_FLAGS = 1 + // Set to neutral/default position, taking precedence over all other flags except RETRACT. Neutral is commonly forward-facing and horizontal (pitch=yaw=0) but may be any orientation. + GIMBAL_DEVICE_FLAGS_NEUTRAL GIMBAL_DEVICE_FLAGS = 2 + // Lock roll angle to absolute angle relative to horizon (not relative to drone). This is generally the default with a stabilizing gimbal. + GIMBAL_DEVICE_FLAGS_ROLL_LOCK GIMBAL_DEVICE_FLAGS = 4 + // Lock pitch angle to absolute angle relative to horizon (not relative to drone). This is generally the default. + GIMBAL_DEVICE_FLAGS_PITCH_LOCK GIMBAL_DEVICE_FLAGS = 8 + // Lock yaw angle to absolute angle relative to North (not relative to drone). If this flag is set, the quaternion is in the Earth frame with the x-axis pointing North (yaw absolute). If this flag is not set, the quaternion frame is in the Earth frame rotated so that the x-axis is pointing forward (yaw relative to vehicle). + GIMBAL_DEVICE_FLAGS_YAW_LOCK GIMBAL_DEVICE_FLAGS = 16 +) + +var labels_GIMBAL_DEVICE_FLAGS = map[GIMBAL_DEVICE_FLAGS]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e GIMBAL_DEVICE_FLAGS) MarshalText() ([]byte, error) { + if l, ok := labels_GIMBAL_DEVICE_FLAGS[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_GIMBAL_DEVICE_FLAGS = map[string]GIMBAL_DEVICE_FLAGS{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *GIMBAL_DEVICE_FLAGS) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_GIMBAL_DEVICE_FLAGS[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e GIMBAL_DEVICE_FLAGS) String() string { + if l, ok := labels_GIMBAL_DEVICE_FLAGS[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/all/enum_gimbal_manager_cap_flags.go b/pkg/dialects/all/enum_gimbal_manager_cap_flags.go new file mode 100644 index 000000000..2c5bd44cf --- /dev/null +++ b/pkg/dialects/all/enum_gimbal_manager_cap_flags.go @@ -0,0 +1,70 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package all + +import ( + "errors" +) + +// Gimbal manager high level capability flags (bitmap). The first 16 bits are identical to the GIMBAL_DEVICE_CAP_FLAGS. However, the gimbal manager does not need to copy the flags from the gimbal but can also enhance the capabilities and thus add flags. +type GIMBAL_MANAGER_CAP_FLAGS int + +const ( + // Based on GIMBAL_DEVICE_CAP_FLAGS_HAS_RETRACT. + GIMBAL_MANAGER_CAP_FLAGS_HAS_RETRACT GIMBAL_MANAGER_CAP_FLAGS = 1 + // Based on GIMBAL_DEVICE_CAP_FLAGS_HAS_NEUTRAL. + GIMBAL_MANAGER_CAP_FLAGS_HAS_NEUTRAL GIMBAL_MANAGER_CAP_FLAGS = 2 + // Based on GIMBAL_DEVICE_CAP_FLAGS_HAS_ROLL_AXIS. + GIMBAL_MANAGER_CAP_FLAGS_HAS_ROLL_AXIS GIMBAL_MANAGER_CAP_FLAGS = 4 + // Based on GIMBAL_DEVICE_CAP_FLAGS_HAS_ROLL_FOLLOW. + GIMBAL_MANAGER_CAP_FLAGS_HAS_ROLL_FOLLOW GIMBAL_MANAGER_CAP_FLAGS = 8 + // Based on GIMBAL_DEVICE_CAP_FLAGS_HAS_ROLL_LOCK. + GIMBAL_MANAGER_CAP_FLAGS_HAS_ROLL_LOCK GIMBAL_MANAGER_CAP_FLAGS = 16 + // Based on GIMBAL_DEVICE_CAP_FLAGS_HAS_PITCH_AXIS. + GIMBAL_MANAGER_CAP_FLAGS_HAS_PITCH_AXIS GIMBAL_MANAGER_CAP_FLAGS = 32 + // Based on GIMBAL_DEVICE_CAP_FLAGS_HAS_PITCH_FOLLOW. + GIMBAL_MANAGER_CAP_FLAGS_HAS_PITCH_FOLLOW GIMBAL_MANAGER_CAP_FLAGS = 64 + // Based on GIMBAL_DEVICE_CAP_FLAGS_HAS_PITCH_LOCK. + GIMBAL_MANAGER_CAP_FLAGS_HAS_PITCH_LOCK GIMBAL_MANAGER_CAP_FLAGS = 128 + // Based on GIMBAL_DEVICE_CAP_FLAGS_HAS_YAW_AXIS. + GIMBAL_MANAGER_CAP_FLAGS_HAS_YAW_AXIS GIMBAL_MANAGER_CAP_FLAGS = 256 + // Based on GIMBAL_DEVICE_CAP_FLAGS_HAS_YAW_FOLLOW. + GIMBAL_MANAGER_CAP_FLAGS_HAS_YAW_FOLLOW GIMBAL_MANAGER_CAP_FLAGS = 512 + // Based on GIMBAL_DEVICE_CAP_FLAGS_HAS_YAW_LOCK. + GIMBAL_MANAGER_CAP_FLAGS_HAS_YAW_LOCK GIMBAL_MANAGER_CAP_FLAGS = 1024 + // Based on GIMBAL_DEVICE_CAP_FLAGS_SUPPORTS_INFINITE_YAW. + GIMBAL_MANAGER_CAP_FLAGS_SUPPORTS_INFINITE_YAW GIMBAL_MANAGER_CAP_FLAGS = 2048 + // Gimbal manager supports to point to a local position. + GIMBAL_MANAGER_CAP_FLAGS_CAN_POINT_LOCATION_LOCAL GIMBAL_MANAGER_CAP_FLAGS = 65536 + // Gimbal manager supports to point to a global latitude, longitude, altitude position. + GIMBAL_MANAGER_CAP_FLAGS_CAN_POINT_LOCATION_GLOBAL GIMBAL_MANAGER_CAP_FLAGS = 131072 +) + +var labels_GIMBAL_MANAGER_CAP_FLAGS = map[GIMBAL_MANAGER_CAP_FLAGS]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e GIMBAL_MANAGER_CAP_FLAGS) MarshalText() ([]byte, error) { + if l, ok := labels_GIMBAL_MANAGER_CAP_FLAGS[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_GIMBAL_MANAGER_CAP_FLAGS = map[string]GIMBAL_MANAGER_CAP_FLAGS{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *GIMBAL_MANAGER_CAP_FLAGS) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_GIMBAL_MANAGER_CAP_FLAGS[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e GIMBAL_MANAGER_CAP_FLAGS) String() string { + if l, ok := labels_GIMBAL_MANAGER_CAP_FLAGS[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/all/enum_gimbal_manager_flags.go b/pkg/dialects/all/enum_gimbal_manager_flags.go new file mode 100644 index 000000000..8944ffe4b --- /dev/null +++ b/pkg/dialects/all/enum_gimbal_manager_flags.go @@ -0,0 +1,52 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package all + +import ( + "errors" +) + +// Flags for high level gimbal manager operation The first 16 bits are identical to the GIMBAL_DEVICE_FLAGS. +type GIMBAL_MANAGER_FLAGS int + +const ( + // Based on GIMBAL_DEVICE_FLAGS_RETRACT + GIMBAL_MANAGER_FLAGS_RETRACT GIMBAL_MANAGER_FLAGS = 1 + // Based on GIMBAL_DEVICE_FLAGS_NEUTRAL + GIMBAL_MANAGER_FLAGS_NEUTRAL GIMBAL_MANAGER_FLAGS = 2 + // Based on GIMBAL_DEVICE_FLAGS_ROLL_LOCK + GIMBAL_MANAGER_FLAGS_ROLL_LOCK GIMBAL_MANAGER_FLAGS = 4 + // Based on GIMBAL_DEVICE_FLAGS_PITCH_LOCK + GIMBAL_MANAGER_FLAGS_PITCH_LOCK GIMBAL_MANAGER_FLAGS = 8 + // Based on GIMBAL_DEVICE_FLAGS_YAW_LOCK + GIMBAL_MANAGER_FLAGS_YAW_LOCK GIMBAL_MANAGER_FLAGS = 16 +) + +var labels_GIMBAL_MANAGER_FLAGS = map[GIMBAL_MANAGER_FLAGS]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e GIMBAL_MANAGER_FLAGS) MarshalText() ([]byte, error) { + if l, ok := labels_GIMBAL_MANAGER_FLAGS[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_GIMBAL_MANAGER_FLAGS = map[string]GIMBAL_MANAGER_FLAGS{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *GIMBAL_MANAGER_FLAGS) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_GIMBAL_MANAGER_FLAGS[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e GIMBAL_MANAGER_FLAGS) String() string { + if l, ok := labels_GIMBAL_MANAGER_FLAGS[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/all/enum_gopro_burst_rate.go b/pkg/dialects/all/enum_gopro_burst_rate.go new file mode 100644 index 000000000..d66e3b1f0 --- /dev/null +++ b/pkg/dialects/all/enum_gopro_burst_rate.go @@ -0,0 +1,59 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package all + +import ( + "errors" +) + +type GOPRO_BURST_RATE int + +const ( + // 3 Shots / 1 Second. + GOPRO_BURST_RATE_3_IN_1_SECOND GOPRO_BURST_RATE = 0 + // 5 Shots / 1 Second. + GOPRO_BURST_RATE_5_IN_1_SECOND GOPRO_BURST_RATE = 1 + // 10 Shots / 1 Second. + GOPRO_BURST_RATE_10_IN_1_SECOND GOPRO_BURST_RATE = 2 + // 10 Shots / 2 Second. + GOPRO_BURST_RATE_10_IN_2_SECOND GOPRO_BURST_RATE = 3 + // 10 Shots / 3 Second (Hero 4 Only). + GOPRO_BURST_RATE_10_IN_3_SECOND GOPRO_BURST_RATE = 4 + // 30 Shots / 1 Second. + GOPRO_BURST_RATE_30_IN_1_SECOND GOPRO_BURST_RATE = 5 + // 30 Shots / 2 Second. + GOPRO_BURST_RATE_30_IN_2_SECOND GOPRO_BURST_RATE = 6 + // 30 Shots / 3 Second. + GOPRO_BURST_RATE_30_IN_3_SECOND GOPRO_BURST_RATE = 7 + // 30 Shots / 6 Second. + GOPRO_BURST_RATE_30_IN_6_SECOND GOPRO_BURST_RATE = 8 +) + +var labels_GOPRO_BURST_RATE = map[GOPRO_BURST_RATE]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e GOPRO_BURST_RATE) MarshalText() ([]byte, error) { + if l, ok := labels_GOPRO_BURST_RATE[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_GOPRO_BURST_RATE = map[string]GOPRO_BURST_RATE{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *GOPRO_BURST_RATE) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_GOPRO_BURST_RATE[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e GOPRO_BURST_RATE) String() string { + if l, ok := labels_GOPRO_BURST_RATE[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/all/enum_gopro_capture_mode.go b/pkg/dialects/all/enum_gopro_capture_mode.go new file mode 100644 index 000000000..045aabacb --- /dev/null +++ b/pkg/dialects/all/enum_gopro_capture_mode.go @@ -0,0 +1,57 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package all + +import ( + "errors" +) + +type GOPRO_CAPTURE_MODE int + +const ( + // Video mode. + GOPRO_CAPTURE_MODE_VIDEO GOPRO_CAPTURE_MODE = 0 + // Photo mode. + GOPRO_CAPTURE_MODE_PHOTO GOPRO_CAPTURE_MODE = 1 + // Burst mode, Hero 3+ only. + GOPRO_CAPTURE_MODE_BURST GOPRO_CAPTURE_MODE = 2 + // Time lapse mode, Hero 3+ only. + GOPRO_CAPTURE_MODE_TIME_LAPSE GOPRO_CAPTURE_MODE = 3 + // Multi shot mode, Hero 4 only. + GOPRO_CAPTURE_MODE_MULTI_SHOT GOPRO_CAPTURE_MODE = 4 + // Playback mode, Hero 4 only, silver only except when LCD or HDMI is connected to black. + GOPRO_CAPTURE_MODE_PLAYBACK GOPRO_CAPTURE_MODE = 5 + // Playback mode, Hero 4 only. + GOPRO_CAPTURE_MODE_SETUP GOPRO_CAPTURE_MODE = 6 + // Mode not yet known. + GOPRO_CAPTURE_MODE_UNKNOWN GOPRO_CAPTURE_MODE = 255 +) + +var labels_GOPRO_CAPTURE_MODE = map[GOPRO_CAPTURE_MODE]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e GOPRO_CAPTURE_MODE) MarshalText() ([]byte, error) { + if l, ok := labels_GOPRO_CAPTURE_MODE[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_GOPRO_CAPTURE_MODE = map[string]GOPRO_CAPTURE_MODE{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *GOPRO_CAPTURE_MODE) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_GOPRO_CAPTURE_MODE[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e GOPRO_CAPTURE_MODE) String() string { + if l, ok := labels_GOPRO_CAPTURE_MODE[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/all/enum_gopro_charging.go b/pkg/dialects/all/enum_gopro_charging.go new file mode 100644 index 000000000..78a949400 --- /dev/null +++ b/pkg/dialects/all/enum_gopro_charging.go @@ -0,0 +1,45 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package all + +import ( + "errors" +) + +type GOPRO_CHARGING int + +const ( + // Charging disabled. + GOPRO_CHARGING_DISABLED GOPRO_CHARGING = 0 + // Charging enabled. + GOPRO_CHARGING_ENABLED GOPRO_CHARGING = 1 +) + +var labels_GOPRO_CHARGING = map[GOPRO_CHARGING]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e GOPRO_CHARGING) MarshalText() ([]byte, error) { + if l, ok := labels_GOPRO_CHARGING[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_GOPRO_CHARGING = map[string]GOPRO_CHARGING{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *GOPRO_CHARGING) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_GOPRO_CHARGING[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e GOPRO_CHARGING) String() string { + if l, ok := labels_GOPRO_CHARGING[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/all/enum_gopro_command.go b/pkg/dialects/all/enum_gopro_command.go new file mode 100644 index 000000000..5a7e6c09c --- /dev/null +++ b/pkg/dialects/all/enum_gopro_command.go @@ -0,0 +1,75 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package all + +import ( + "errors" +) + +type GOPRO_COMMAND int + +const ( + // (Get/Set). + GOPRO_COMMAND_POWER GOPRO_COMMAND = 0 + // (Get/Set). + GOPRO_COMMAND_CAPTURE_MODE GOPRO_COMMAND = 1 + // (___/Set). + GOPRO_COMMAND_SHUTTER GOPRO_COMMAND = 2 + // (Get/___). + GOPRO_COMMAND_BATTERY GOPRO_COMMAND = 3 + // (Get/___). + GOPRO_COMMAND_MODEL GOPRO_COMMAND = 4 + // (Get/Set). + GOPRO_COMMAND_VIDEO_SETTINGS GOPRO_COMMAND = 5 + // (Get/Set). + GOPRO_COMMAND_LOW_LIGHT GOPRO_COMMAND = 6 + // (Get/Set). + GOPRO_COMMAND_PHOTO_RESOLUTION GOPRO_COMMAND = 7 + // (Get/Set). + GOPRO_COMMAND_PHOTO_BURST_RATE GOPRO_COMMAND = 8 + // (Get/Set). + GOPRO_COMMAND_PROTUNE GOPRO_COMMAND = 9 + // (Get/Set) Hero 3+ Only. + GOPRO_COMMAND_PROTUNE_WHITE_BALANCE GOPRO_COMMAND = 10 + // (Get/Set) Hero 3+ Only. + GOPRO_COMMAND_PROTUNE_COLOUR GOPRO_COMMAND = 11 + // (Get/Set) Hero 3+ Only. + GOPRO_COMMAND_PROTUNE_GAIN GOPRO_COMMAND = 12 + // (Get/Set) Hero 3+ Only. + GOPRO_COMMAND_PROTUNE_SHARPNESS GOPRO_COMMAND = 13 + // (Get/Set) Hero 3+ Only. + GOPRO_COMMAND_PROTUNE_EXPOSURE GOPRO_COMMAND = 14 + // (Get/Set). + GOPRO_COMMAND_TIME GOPRO_COMMAND = 15 + // (Get/Set). + GOPRO_COMMAND_CHARGING GOPRO_COMMAND = 16 +) + +var labels_GOPRO_COMMAND = map[GOPRO_COMMAND]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e GOPRO_COMMAND) MarshalText() ([]byte, error) { + if l, ok := labels_GOPRO_COMMAND[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_GOPRO_COMMAND = map[string]GOPRO_COMMAND{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *GOPRO_COMMAND) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_GOPRO_COMMAND[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e GOPRO_COMMAND) String() string { + if l, ok := labels_GOPRO_COMMAND[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/all/enum_gopro_field_of_view.go b/pkg/dialects/all/enum_gopro_field_of_view.go new file mode 100644 index 000000000..6b80697e3 --- /dev/null +++ b/pkg/dialects/all/enum_gopro_field_of_view.go @@ -0,0 +1,47 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package all + +import ( + "errors" +) + +type GOPRO_FIELD_OF_VIEW int + +const ( + // 0x00: Wide. + GOPRO_FIELD_OF_VIEW_WIDE GOPRO_FIELD_OF_VIEW = 0 + // 0x01: Medium. + GOPRO_FIELD_OF_VIEW_MEDIUM GOPRO_FIELD_OF_VIEW = 1 + // 0x02: Narrow. + GOPRO_FIELD_OF_VIEW_NARROW GOPRO_FIELD_OF_VIEW = 2 +) + +var labels_GOPRO_FIELD_OF_VIEW = map[GOPRO_FIELD_OF_VIEW]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e GOPRO_FIELD_OF_VIEW) MarshalText() ([]byte, error) { + if l, ok := labels_GOPRO_FIELD_OF_VIEW[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_GOPRO_FIELD_OF_VIEW = map[string]GOPRO_FIELD_OF_VIEW{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *GOPRO_FIELD_OF_VIEW) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_GOPRO_FIELD_OF_VIEW[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e GOPRO_FIELD_OF_VIEW) String() string { + if l, ok := labels_GOPRO_FIELD_OF_VIEW[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/all/enum_gopro_frame_rate.go b/pkg/dialects/all/enum_gopro_frame_rate.go new file mode 100644 index 000000000..ca47e65c4 --- /dev/null +++ b/pkg/dialects/all/enum_gopro_frame_rate.go @@ -0,0 +1,69 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package all + +import ( + "errors" +) + +type GOPRO_FRAME_RATE int + +const ( + // 12 FPS. + GOPRO_FRAME_RATE_12 GOPRO_FRAME_RATE = 0 + // 15 FPS. + GOPRO_FRAME_RATE_15 GOPRO_FRAME_RATE = 1 + // 24 FPS. + GOPRO_FRAME_RATE_24 GOPRO_FRAME_RATE = 2 + // 25 FPS. + GOPRO_FRAME_RATE_25 GOPRO_FRAME_RATE = 3 + // 30 FPS. + GOPRO_FRAME_RATE_30 GOPRO_FRAME_RATE = 4 + // 48 FPS. + GOPRO_FRAME_RATE_48 GOPRO_FRAME_RATE = 5 + // 50 FPS. + GOPRO_FRAME_RATE_50 GOPRO_FRAME_RATE = 6 + // 60 FPS. + GOPRO_FRAME_RATE_60 GOPRO_FRAME_RATE = 7 + // 80 FPS. + GOPRO_FRAME_RATE_80 GOPRO_FRAME_RATE = 8 + // 90 FPS. + GOPRO_FRAME_RATE_90 GOPRO_FRAME_RATE = 9 + // 100 FPS. + GOPRO_FRAME_RATE_100 GOPRO_FRAME_RATE = 10 + // 120 FPS. + GOPRO_FRAME_RATE_120 GOPRO_FRAME_RATE = 11 + // 240 FPS. + GOPRO_FRAME_RATE_240 GOPRO_FRAME_RATE = 12 + // 12.5 FPS. + GOPRO_FRAME_RATE_12_5 GOPRO_FRAME_RATE = 13 +) + +var labels_GOPRO_FRAME_RATE = map[GOPRO_FRAME_RATE]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e GOPRO_FRAME_RATE) MarshalText() ([]byte, error) { + if l, ok := labels_GOPRO_FRAME_RATE[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_GOPRO_FRAME_RATE = map[string]GOPRO_FRAME_RATE{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *GOPRO_FRAME_RATE) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_GOPRO_FRAME_RATE[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e GOPRO_FRAME_RATE) String() string { + if l, ok := labels_GOPRO_FRAME_RATE[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/all/enum_gopro_heartbeat_flags.go b/pkg/dialects/all/enum_gopro_heartbeat_flags.go new file mode 100644 index 000000000..61c679c34 --- /dev/null +++ b/pkg/dialects/all/enum_gopro_heartbeat_flags.go @@ -0,0 +1,43 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package all + +import ( + "errors" +) + +type GOPRO_HEARTBEAT_FLAGS int + +const ( + // GoPro is currently recording. + GOPRO_FLAG_RECORDING GOPRO_HEARTBEAT_FLAGS = 1 +) + +var labels_GOPRO_HEARTBEAT_FLAGS = map[GOPRO_HEARTBEAT_FLAGS]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e GOPRO_HEARTBEAT_FLAGS) MarshalText() ([]byte, error) { + if l, ok := labels_GOPRO_HEARTBEAT_FLAGS[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_GOPRO_HEARTBEAT_FLAGS = map[string]GOPRO_HEARTBEAT_FLAGS{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *GOPRO_HEARTBEAT_FLAGS) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_GOPRO_HEARTBEAT_FLAGS[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e GOPRO_HEARTBEAT_FLAGS) String() string { + if l, ok := labels_GOPRO_HEARTBEAT_FLAGS[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/all/enum_gopro_heartbeat_status.go b/pkg/dialects/all/enum_gopro_heartbeat_status.go new file mode 100644 index 000000000..e858a9dea --- /dev/null +++ b/pkg/dialects/all/enum_gopro_heartbeat_status.go @@ -0,0 +1,49 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package all + +import ( + "errors" +) + +type GOPRO_HEARTBEAT_STATUS int + +const ( + // No GoPro connected. + GOPRO_HEARTBEAT_STATUS_DISCONNECTED GOPRO_HEARTBEAT_STATUS = 0 + // The detected GoPro is not HeroBus compatible. + GOPRO_HEARTBEAT_STATUS_INCOMPATIBLE GOPRO_HEARTBEAT_STATUS = 1 + // A HeroBus compatible GoPro is connected. + GOPRO_HEARTBEAT_STATUS_CONNECTED GOPRO_HEARTBEAT_STATUS = 2 + // An unrecoverable error was encountered with the connected GoPro, it may require a power cycle. + GOPRO_HEARTBEAT_STATUS_ERROR GOPRO_HEARTBEAT_STATUS = 3 +) + +var labels_GOPRO_HEARTBEAT_STATUS = map[GOPRO_HEARTBEAT_STATUS]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e GOPRO_HEARTBEAT_STATUS) MarshalText() ([]byte, error) { + if l, ok := labels_GOPRO_HEARTBEAT_STATUS[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_GOPRO_HEARTBEAT_STATUS = map[string]GOPRO_HEARTBEAT_STATUS{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *GOPRO_HEARTBEAT_STATUS) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_GOPRO_HEARTBEAT_STATUS[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e GOPRO_HEARTBEAT_STATUS) String() string { + if l, ok := labels_GOPRO_HEARTBEAT_STATUS[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/all/enum_gopro_model.go b/pkg/dialects/all/enum_gopro_model.go new file mode 100644 index 000000000..01e2a3832 --- /dev/null +++ b/pkg/dialects/all/enum_gopro_model.go @@ -0,0 +1,51 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package all + +import ( + "errors" +) + +type GOPRO_MODEL int + +const ( + // Unknown gopro model. + GOPRO_MODEL_UNKNOWN GOPRO_MODEL = 0 + // Hero 3+ Silver (HeroBus not supported by GoPro). + GOPRO_MODEL_HERO_3_PLUS_SILVER GOPRO_MODEL = 1 + // Hero 3+ Black. + GOPRO_MODEL_HERO_3_PLUS_BLACK GOPRO_MODEL = 2 + // Hero 4 Silver. + GOPRO_MODEL_HERO_4_SILVER GOPRO_MODEL = 3 + // Hero 4 Black. + GOPRO_MODEL_HERO_4_BLACK GOPRO_MODEL = 4 +) + +var labels_GOPRO_MODEL = map[GOPRO_MODEL]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e GOPRO_MODEL) MarshalText() ([]byte, error) { + if l, ok := labels_GOPRO_MODEL[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_GOPRO_MODEL = map[string]GOPRO_MODEL{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *GOPRO_MODEL) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_GOPRO_MODEL[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e GOPRO_MODEL) String() string { + if l, ok := labels_GOPRO_MODEL[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/all/enum_gopro_photo_resolution.go b/pkg/dialects/all/enum_gopro_photo_resolution.go new file mode 100644 index 000000000..1a7c604f1 --- /dev/null +++ b/pkg/dialects/all/enum_gopro_photo_resolution.go @@ -0,0 +1,51 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package all + +import ( + "errors" +) + +type GOPRO_PHOTO_RESOLUTION int + +const ( + // 5MP Medium. + GOPRO_PHOTO_RESOLUTION_5MP_MEDIUM GOPRO_PHOTO_RESOLUTION = 0 + // 7MP Medium. + GOPRO_PHOTO_RESOLUTION_7MP_MEDIUM GOPRO_PHOTO_RESOLUTION = 1 + // 7MP Wide. + GOPRO_PHOTO_RESOLUTION_7MP_WIDE GOPRO_PHOTO_RESOLUTION = 2 + // 10MP Wide. + GOPRO_PHOTO_RESOLUTION_10MP_WIDE GOPRO_PHOTO_RESOLUTION = 3 + // 12MP Wide. + GOPRO_PHOTO_RESOLUTION_12MP_WIDE GOPRO_PHOTO_RESOLUTION = 4 +) + +var labels_GOPRO_PHOTO_RESOLUTION = map[GOPRO_PHOTO_RESOLUTION]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e GOPRO_PHOTO_RESOLUTION) MarshalText() ([]byte, error) { + if l, ok := labels_GOPRO_PHOTO_RESOLUTION[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_GOPRO_PHOTO_RESOLUTION = map[string]GOPRO_PHOTO_RESOLUTION{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *GOPRO_PHOTO_RESOLUTION) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_GOPRO_PHOTO_RESOLUTION[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e GOPRO_PHOTO_RESOLUTION) String() string { + if l, ok := labels_GOPRO_PHOTO_RESOLUTION[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/all/enum_gopro_protune_colour.go b/pkg/dialects/all/enum_gopro_protune_colour.go new file mode 100644 index 000000000..2e1c60fe6 --- /dev/null +++ b/pkg/dialects/all/enum_gopro_protune_colour.go @@ -0,0 +1,45 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package all + +import ( + "errors" +) + +type GOPRO_PROTUNE_COLOUR int + +const ( + // Auto. + GOPRO_PROTUNE_COLOUR_STANDARD GOPRO_PROTUNE_COLOUR = 0 + // Neutral. + GOPRO_PROTUNE_COLOUR_NEUTRAL GOPRO_PROTUNE_COLOUR = 1 +) + +var labels_GOPRO_PROTUNE_COLOUR = map[GOPRO_PROTUNE_COLOUR]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e GOPRO_PROTUNE_COLOUR) MarshalText() ([]byte, error) { + if l, ok := labels_GOPRO_PROTUNE_COLOUR[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_GOPRO_PROTUNE_COLOUR = map[string]GOPRO_PROTUNE_COLOUR{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *GOPRO_PROTUNE_COLOUR) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_GOPRO_PROTUNE_COLOUR[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e GOPRO_PROTUNE_COLOUR) String() string { + if l, ok := labels_GOPRO_PROTUNE_COLOUR[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/all/enum_gopro_protune_exposure.go b/pkg/dialects/all/enum_gopro_protune_exposure.go new file mode 100644 index 000000000..feb344d93 --- /dev/null +++ b/pkg/dialects/all/enum_gopro_protune_exposure.go @@ -0,0 +1,83 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package all + +import ( + "errors" +) + +type GOPRO_PROTUNE_EXPOSURE int + +const ( + // -5.0 EV (Hero 3+ Only). + GOPRO_PROTUNE_EXPOSURE_NEG_5_0 GOPRO_PROTUNE_EXPOSURE = 0 + // -4.5 EV (Hero 3+ Only). + GOPRO_PROTUNE_EXPOSURE_NEG_4_5 GOPRO_PROTUNE_EXPOSURE = 1 + // -4.0 EV (Hero 3+ Only). + GOPRO_PROTUNE_EXPOSURE_NEG_4_0 GOPRO_PROTUNE_EXPOSURE = 2 + // -3.5 EV (Hero 3+ Only). + GOPRO_PROTUNE_EXPOSURE_NEG_3_5 GOPRO_PROTUNE_EXPOSURE = 3 + // -3.0 EV (Hero 3+ Only). + GOPRO_PROTUNE_EXPOSURE_NEG_3_0 GOPRO_PROTUNE_EXPOSURE = 4 + // -2.5 EV (Hero 3+ Only). + GOPRO_PROTUNE_EXPOSURE_NEG_2_5 GOPRO_PROTUNE_EXPOSURE = 5 + // -2.0 EV. + GOPRO_PROTUNE_EXPOSURE_NEG_2_0 GOPRO_PROTUNE_EXPOSURE = 6 + // -1.5 EV. + GOPRO_PROTUNE_EXPOSURE_NEG_1_5 GOPRO_PROTUNE_EXPOSURE = 7 + // -1.0 EV. + GOPRO_PROTUNE_EXPOSURE_NEG_1_0 GOPRO_PROTUNE_EXPOSURE = 8 + // -0.5 EV. + GOPRO_PROTUNE_EXPOSURE_NEG_0_5 GOPRO_PROTUNE_EXPOSURE = 9 + // 0.0 EV. + GOPRO_PROTUNE_EXPOSURE_ZERO GOPRO_PROTUNE_EXPOSURE = 10 + // +0.5 EV. + GOPRO_PROTUNE_EXPOSURE_POS_0_5 GOPRO_PROTUNE_EXPOSURE = 11 + // +1.0 EV. + GOPRO_PROTUNE_EXPOSURE_POS_1_0 GOPRO_PROTUNE_EXPOSURE = 12 + // +1.5 EV. + GOPRO_PROTUNE_EXPOSURE_POS_1_5 GOPRO_PROTUNE_EXPOSURE = 13 + // +2.0 EV. + GOPRO_PROTUNE_EXPOSURE_POS_2_0 GOPRO_PROTUNE_EXPOSURE = 14 + // +2.5 EV (Hero 3+ Only). + GOPRO_PROTUNE_EXPOSURE_POS_2_5 GOPRO_PROTUNE_EXPOSURE = 15 + // +3.0 EV (Hero 3+ Only). + GOPRO_PROTUNE_EXPOSURE_POS_3_0 GOPRO_PROTUNE_EXPOSURE = 16 + // +3.5 EV (Hero 3+ Only). + GOPRO_PROTUNE_EXPOSURE_POS_3_5 GOPRO_PROTUNE_EXPOSURE = 17 + // +4.0 EV (Hero 3+ Only). + GOPRO_PROTUNE_EXPOSURE_POS_4_0 GOPRO_PROTUNE_EXPOSURE = 18 + // +4.5 EV (Hero 3+ Only). + GOPRO_PROTUNE_EXPOSURE_POS_4_5 GOPRO_PROTUNE_EXPOSURE = 19 + // +5.0 EV (Hero 3+ Only). + GOPRO_PROTUNE_EXPOSURE_POS_5_0 GOPRO_PROTUNE_EXPOSURE = 20 +) + +var labels_GOPRO_PROTUNE_EXPOSURE = map[GOPRO_PROTUNE_EXPOSURE]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e GOPRO_PROTUNE_EXPOSURE) MarshalText() ([]byte, error) { + if l, ok := labels_GOPRO_PROTUNE_EXPOSURE[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_GOPRO_PROTUNE_EXPOSURE = map[string]GOPRO_PROTUNE_EXPOSURE{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *GOPRO_PROTUNE_EXPOSURE) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_GOPRO_PROTUNE_EXPOSURE[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e GOPRO_PROTUNE_EXPOSURE) String() string { + if l, ok := labels_GOPRO_PROTUNE_EXPOSURE[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/all/enum_gopro_protune_gain.go b/pkg/dialects/all/enum_gopro_protune_gain.go new file mode 100644 index 000000000..3e477a970 --- /dev/null +++ b/pkg/dialects/all/enum_gopro_protune_gain.go @@ -0,0 +1,51 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package all + +import ( + "errors" +) + +type GOPRO_PROTUNE_GAIN int + +const ( + // ISO 400. + GOPRO_PROTUNE_GAIN_400 GOPRO_PROTUNE_GAIN = 0 + // ISO 800 (Only Hero 4). + GOPRO_PROTUNE_GAIN_800 GOPRO_PROTUNE_GAIN = 1 + // ISO 1600. + GOPRO_PROTUNE_GAIN_1600 GOPRO_PROTUNE_GAIN = 2 + // ISO 3200 (Only Hero 4). + GOPRO_PROTUNE_GAIN_3200 GOPRO_PROTUNE_GAIN = 3 + // ISO 6400. + GOPRO_PROTUNE_GAIN_6400 GOPRO_PROTUNE_GAIN = 4 +) + +var labels_GOPRO_PROTUNE_GAIN = map[GOPRO_PROTUNE_GAIN]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e GOPRO_PROTUNE_GAIN) MarshalText() ([]byte, error) { + if l, ok := labels_GOPRO_PROTUNE_GAIN[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_GOPRO_PROTUNE_GAIN = map[string]GOPRO_PROTUNE_GAIN{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *GOPRO_PROTUNE_GAIN) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_GOPRO_PROTUNE_GAIN[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e GOPRO_PROTUNE_GAIN) String() string { + if l, ok := labels_GOPRO_PROTUNE_GAIN[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/all/enum_gopro_protune_sharpness.go b/pkg/dialects/all/enum_gopro_protune_sharpness.go new file mode 100644 index 000000000..ff4686e56 --- /dev/null +++ b/pkg/dialects/all/enum_gopro_protune_sharpness.go @@ -0,0 +1,47 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package all + +import ( + "errors" +) + +type GOPRO_PROTUNE_SHARPNESS int + +const ( + // Low Sharpness. + GOPRO_PROTUNE_SHARPNESS_LOW GOPRO_PROTUNE_SHARPNESS = 0 + // Medium Sharpness. + GOPRO_PROTUNE_SHARPNESS_MEDIUM GOPRO_PROTUNE_SHARPNESS = 1 + // High Sharpness. + GOPRO_PROTUNE_SHARPNESS_HIGH GOPRO_PROTUNE_SHARPNESS = 2 +) + +var labels_GOPRO_PROTUNE_SHARPNESS = map[GOPRO_PROTUNE_SHARPNESS]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e GOPRO_PROTUNE_SHARPNESS) MarshalText() ([]byte, error) { + if l, ok := labels_GOPRO_PROTUNE_SHARPNESS[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_GOPRO_PROTUNE_SHARPNESS = map[string]GOPRO_PROTUNE_SHARPNESS{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *GOPRO_PROTUNE_SHARPNESS) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_GOPRO_PROTUNE_SHARPNESS[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e GOPRO_PROTUNE_SHARPNESS) String() string { + if l, ok := labels_GOPRO_PROTUNE_SHARPNESS[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/all/enum_gopro_protune_white_balance.go b/pkg/dialects/all/enum_gopro_protune_white_balance.go new file mode 100644 index 000000000..58d6629f8 --- /dev/null +++ b/pkg/dialects/all/enum_gopro_protune_white_balance.go @@ -0,0 +1,51 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package all + +import ( + "errors" +) + +type GOPRO_PROTUNE_WHITE_BALANCE int + +const ( + // Auto. + GOPRO_PROTUNE_WHITE_BALANCE_AUTO GOPRO_PROTUNE_WHITE_BALANCE = 0 + // 3000K. + GOPRO_PROTUNE_WHITE_BALANCE_3000K GOPRO_PROTUNE_WHITE_BALANCE = 1 + // 5500K. + GOPRO_PROTUNE_WHITE_BALANCE_5500K GOPRO_PROTUNE_WHITE_BALANCE = 2 + // 6500K. + GOPRO_PROTUNE_WHITE_BALANCE_6500K GOPRO_PROTUNE_WHITE_BALANCE = 3 + // Camera Raw. + GOPRO_PROTUNE_WHITE_BALANCE_RAW GOPRO_PROTUNE_WHITE_BALANCE = 4 +) + +var labels_GOPRO_PROTUNE_WHITE_BALANCE = map[GOPRO_PROTUNE_WHITE_BALANCE]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e GOPRO_PROTUNE_WHITE_BALANCE) MarshalText() ([]byte, error) { + if l, ok := labels_GOPRO_PROTUNE_WHITE_BALANCE[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_GOPRO_PROTUNE_WHITE_BALANCE = map[string]GOPRO_PROTUNE_WHITE_BALANCE{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *GOPRO_PROTUNE_WHITE_BALANCE) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_GOPRO_PROTUNE_WHITE_BALANCE[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e GOPRO_PROTUNE_WHITE_BALANCE) String() string { + if l, ok := labels_GOPRO_PROTUNE_WHITE_BALANCE[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/all/enum_gopro_request_status.go b/pkg/dialects/all/enum_gopro_request_status.go new file mode 100644 index 000000000..9a06e122a --- /dev/null +++ b/pkg/dialects/all/enum_gopro_request_status.go @@ -0,0 +1,45 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package all + +import ( + "errors" +) + +type GOPRO_REQUEST_STATUS int + +const ( + // The write message with ID indicated succeeded. + GOPRO_REQUEST_SUCCESS GOPRO_REQUEST_STATUS = 0 + // The write message with ID indicated failed. + GOPRO_REQUEST_FAILED GOPRO_REQUEST_STATUS = 1 +) + +var labels_GOPRO_REQUEST_STATUS = map[GOPRO_REQUEST_STATUS]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e GOPRO_REQUEST_STATUS) MarshalText() ([]byte, error) { + if l, ok := labels_GOPRO_REQUEST_STATUS[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_GOPRO_REQUEST_STATUS = map[string]GOPRO_REQUEST_STATUS{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *GOPRO_REQUEST_STATUS) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_GOPRO_REQUEST_STATUS[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e GOPRO_REQUEST_STATUS) String() string { + if l, ok := labels_GOPRO_REQUEST_STATUS[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/all/enum_gopro_resolution.go b/pkg/dialects/all/enum_gopro_resolution.go new file mode 100644 index 000000000..bff8f3b1a --- /dev/null +++ b/pkg/dialects/all/enum_gopro_resolution.go @@ -0,0 +1,69 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package all + +import ( + "errors" +) + +type GOPRO_RESOLUTION int + +const ( + // 848 x 480 (480p). + GOPRO_RESOLUTION_480p GOPRO_RESOLUTION = 0 + // 1280 x 720 (720p). + GOPRO_RESOLUTION_720p GOPRO_RESOLUTION = 1 + // 1280 x 960 (960p). + GOPRO_RESOLUTION_960p GOPRO_RESOLUTION = 2 + // 1920 x 1080 (1080p). + GOPRO_RESOLUTION_1080p GOPRO_RESOLUTION = 3 + // 1920 x 1440 (1440p). + GOPRO_RESOLUTION_1440p GOPRO_RESOLUTION = 4 + // 2704 x 1440 (2.7k-17:9). + GOPRO_RESOLUTION_2_7k_17_9 GOPRO_RESOLUTION = 5 + // 2704 x 1524 (2.7k-16:9). + GOPRO_RESOLUTION_2_7k_16_9 GOPRO_RESOLUTION = 6 + // 2704 x 2028 (2.7k-4:3). + GOPRO_RESOLUTION_2_7k_4_3 GOPRO_RESOLUTION = 7 + // 3840 x 2160 (4k-16:9). + GOPRO_RESOLUTION_4k_16_9 GOPRO_RESOLUTION = 8 + // 4096 x 2160 (4k-17:9). + GOPRO_RESOLUTION_4k_17_9 GOPRO_RESOLUTION = 9 + // 1280 x 720 (720p-SuperView). + GOPRO_RESOLUTION_720p_SUPERVIEW GOPRO_RESOLUTION = 10 + // 1920 x 1080 (1080p-SuperView). + GOPRO_RESOLUTION_1080p_SUPERVIEW GOPRO_RESOLUTION = 11 + // 2704 x 1520 (2.7k-SuperView). + GOPRO_RESOLUTION_2_7k_SUPERVIEW GOPRO_RESOLUTION = 12 + // 3840 x 2160 (4k-SuperView). + GOPRO_RESOLUTION_4k_SUPERVIEW GOPRO_RESOLUTION = 13 +) + +var labels_GOPRO_RESOLUTION = map[GOPRO_RESOLUTION]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e GOPRO_RESOLUTION) MarshalText() ([]byte, error) { + if l, ok := labels_GOPRO_RESOLUTION[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_GOPRO_RESOLUTION = map[string]GOPRO_RESOLUTION{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *GOPRO_RESOLUTION) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_GOPRO_RESOLUTION[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e GOPRO_RESOLUTION) String() string { + if l, ok := labels_GOPRO_RESOLUTION[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/all/enum_gopro_video_settings_flags.go b/pkg/dialects/all/enum_gopro_video_settings_flags.go new file mode 100644 index 000000000..91b65a4a7 --- /dev/null +++ b/pkg/dialects/all/enum_gopro_video_settings_flags.go @@ -0,0 +1,43 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package all + +import ( + "errors" +) + +type GOPRO_VIDEO_SETTINGS_FLAGS int + +const ( + // 0=NTSC, 1=PAL. + GOPRO_VIDEO_SETTINGS_TV_MODE GOPRO_VIDEO_SETTINGS_FLAGS = 1 +) + +var labels_GOPRO_VIDEO_SETTINGS_FLAGS = map[GOPRO_VIDEO_SETTINGS_FLAGS]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e GOPRO_VIDEO_SETTINGS_FLAGS) MarshalText() ([]byte, error) { + if l, ok := labels_GOPRO_VIDEO_SETTINGS_FLAGS[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_GOPRO_VIDEO_SETTINGS_FLAGS = map[string]GOPRO_VIDEO_SETTINGS_FLAGS{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *GOPRO_VIDEO_SETTINGS_FLAGS) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_GOPRO_VIDEO_SETTINGS_FLAGS[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e GOPRO_VIDEO_SETTINGS_FLAGS) String() string { + if l, ok := labels_GOPRO_VIDEO_SETTINGS_FLAGS[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/all/enum_gps_fix_type.go b/pkg/dialects/all/enum_gps_fix_type.go new file mode 100644 index 000000000..8c9920c72 --- /dev/null +++ b/pkg/dialects/all/enum_gps_fix_type.go @@ -0,0 +1,60 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package all + +import ( + "errors" +) + +// Type of GPS fix +type GPS_FIX_TYPE int + +const ( + // No GPS connected + GPS_FIX_TYPE_NO_GPS GPS_FIX_TYPE = 0 + // No position information, GPS is connected + GPS_FIX_TYPE_NO_FIX GPS_FIX_TYPE = 1 + // 2D position + GPS_FIX_TYPE_2D_FIX GPS_FIX_TYPE = 2 + // 3D position + GPS_FIX_TYPE_3D_FIX GPS_FIX_TYPE = 3 + // DGPS/SBAS aided 3D position + GPS_FIX_TYPE_DGPS GPS_FIX_TYPE = 4 + // RTK float, 3D position + GPS_FIX_TYPE_RTK_FLOAT GPS_FIX_TYPE = 5 + // RTK Fixed, 3D position + GPS_FIX_TYPE_RTK_FIXED GPS_FIX_TYPE = 6 + // Static fixed, typically used for base stations + GPS_FIX_TYPE_STATIC GPS_FIX_TYPE = 7 + // PPP, 3D position. + GPS_FIX_TYPE_PPP GPS_FIX_TYPE = 8 +) + +var labels_GPS_FIX_TYPE = map[GPS_FIX_TYPE]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e GPS_FIX_TYPE) MarshalText() ([]byte, error) { + if l, ok := labels_GPS_FIX_TYPE[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_GPS_FIX_TYPE = map[string]GPS_FIX_TYPE{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *GPS_FIX_TYPE) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_GPS_FIX_TYPE[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e GPS_FIX_TYPE) String() string { + if l, ok := labels_GPS_FIX_TYPE[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/all/enum_gps_input_ignore_flags.go b/pkg/dialects/all/enum_gps_input_ignore_flags.go new file mode 100644 index 000000000..9e50dfb39 --- /dev/null +++ b/pkg/dialects/all/enum_gps_input_ignore_flags.go @@ -0,0 +1,57 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package all + +import ( + "errors" +) + +type GPS_INPUT_IGNORE_FLAGS int + +const ( + // ignore altitude field + GPS_INPUT_IGNORE_FLAG_ALT GPS_INPUT_IGNORE_FLAGS = 1 + // ignore hdop field + GPS_INPUT_IGNORE_FLAG_HDOP GPS_INPUT_IGNORE_FLAGS = 2 + // ignore vdop field + GPS_INPUT_IGNORE_FLAG_VDOP GPS_INPUT_IGNORE_FLAGS = 4 + // ignore horizontal velocity field (vn and ve) + GPS_INPUT_IGNORE_FLAG_VEL_HORIZ GPS_INPUT_IGNORE_FLAGS = 8 + // ignore vertical velocity field (vd) + GPS_INPUT_IGNORE_FLAG_VEL_VERT GPS_INPUT_IGNORE_FLAGS = 16 + // ignore speed accuracy field + GPS_INPUT_IGNORE_FLAG_SPEED_ACCURACY GPS_INPUT_IGNORE_FLAGS = 32 + // ignore horizontal accuracy field + GPS_INPUT_IGNORE_FLAG_HORIZONTAL_ACCURACY GPS_INPUT_IGNORE_FLAGS = 64 + // ignore vertical accuracy field + GPS_INPUT_IGNORE_FLAG_VERTICAL_ACCURACY GPS_INPUT_IGNORE_FLAGS = 128 +) + +var labels_GPS_INPUT_IGNORE_FLAGS = map[GPS_INPUT_IGNORE_FLAGS]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e GPS_INPUT_IGNORE_FLAGS) MarshalText() ([]byte, error) { + if l, ok := labels_GPS_INPUT_IGNORE_FLAGS[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_GPS_INPUT_IGNORE_FLAGS = map[string]GPS_INPUT_IGNORE_FLAGS{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *GPS_INPUT_IGNORE_FLAGS) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_GPS_INPUT_IGNORE_FLAGS[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e GPS_INPUT_IGNORE_FLAGS) String() string { + if l, ok := labels_GPS_INPUT_IGNORE_FLAGS[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/all/enum_gripper_actions.go b/pkg/dialects/all/enum_gripper_actions.go new file mode 100644 index 000000000..4551ea0e4 --- /dev/null +++ b/pkg/dialects/all/enum_gripper_actions.go @@ -0,0 +1,46 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package all + +import ( + "errors" +) + +// Gripper actions. +type GRIPPER_ACTIONS int + +const ( + // Gripper release cargo. + GRIPPER_ACTION_RELEASE GRIPPER_ACTIONS = 0 + // Gripper grab onto cargo. + GRIPPER_ACTION_GRAB GRIPPER_ACTIONS = 1 +) + +var labels_GRIPPER_ACTIONS = map[GRIPPER_ACTIONS]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e GRIPPER_ACTIONS) MarshalText() ([]byte, error) { + if l, ok := labels_GRIPPER_ACTIONS[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_GRIPPER_ACTIONS = map[string]GRIPPER_ACTIONS{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *GRIPPER_ACTIONS) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_GRIPPER_ACTIONS[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e GRIPPER_ACTIONS) String() string { + if l, ok := labels_GRIPPER_ACTIONS[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/all/enum_gsm_link_type.go b/pkg/dialects/all/enum_gsm_link_type.go new file mode 100644 index 000000000..a5a59eba9 --- /dev/null +++ b/pkg/dialects/all/enum_gsm_link_type.go @@ -0,0 +1,51 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package all + +import ( + "errors" +) + +type GSM_LINK_TYPE int + +const ( + // no service + GSM_LINK_TYPE_NONE GSM_LINK_TYPE = 0 + // link type unknown + GSM_LINK_TYPE_UNKNOWN GSM_LINK_TYPE = 1 + // 2G (GSM/GRPS/EDGE) link + GSM_LINK_TYPE_2G GSM_LINK_TYPE = 2 + // 3G link (WCDMA/HSDPA/HSPA) + GSM_LINK_TYPE_3G GSM_LINK_TYPE = 3 + // 4G link (LTE) + GSM_LINK_TYPE_4G GSM_LINK_TYPE = 4 +) + +var labels_GSM_LINK_TYPE = map[GSM_LINK_TYPE]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e GSM_LINK_TYPE) MarshalText() ([]byte, error) { + if l, ok := labels_GSM_LINK_TYPE[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_GSM_LINK_TYPE = map[string]GSM_LINK_TYPE{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *GSM_LINK_TYPE) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_GSM_LINK_TYPE[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e GSM_LINK_TYPE) String() string { + if l, ok := labels_GSM_LINK_TYPE[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/all/enum_gsm_modem_type.go b/pkg/dialects/all/enum_gsm_modem_type.go new file mode 100644 index 000000000..29990eabf --- /dev/null +++ b/pkg/dialects/all/enum_gsm_modem_type.go @@ -0,0 +1,45 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package all + +import ( + "errors" +) + +type GSM_MODEM_TYPE int + +const ( + // not specified + GSM_MODEM_TYPE_UNKNOWN GSM_MODEM_TYPE = 0 + // HUAWEI LTE USB Stick E3372 + GSM_MODEM_TYPE_HUAWEI_E3372 GSM_MODEM_TYPE = 1 +) + +var labels_GSM_MODEM_TYPE = map[GSM_MODEM_TYPE]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e GSM_MODEM_TYPE) MarshalText() ([]byte, error) { + if l, ok := labels_GSM_MODEM_TYPE[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_GSM_MODEM_TYPE = map[string]GSM_MODEM_TYPE{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *GSM_MODEM_TYPE) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_GSM_MODEM_TYPE[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e GSM_MODEM_TYPE) String() string { + if l, ok := labels_GSM_MODEM_TYPE[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/all/enum_heading_type.go b/pkg/dialects/all/enum_heading_type.go new file mode 100644 index 000000000..6ffff7227 --- /dev/null +++ b/pkg/dialects/all/enum_heading_type.go @@ -0,0 +1,43 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package all + +import ( + "errors" +) + +type HEADING_TYPE int + +const ( + HEADING_TYPE_COURSE_OVER_GROUND HEADING_TYPE = 0 + HEADING_TYPE_HEADING HEADING_TYPE = 1 +) + +var labels_HEADING_TYPE = map[HEADING_TYPE]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e HEADING_TYPE) MarshalText() ([]byte, error) { + if l, ok := labels_HEADING_TYPE[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_HEADING_TYPE = map[string]HEADING_TYPE{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *HEADING_TYPE) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_HEADING_TYPE[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e HEADING_TYPE) String() string { + if l, ok := labels_HEADING_TYPE[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/all/enum_highres_imu_updated_flags.go b/pkg/dialects/all/enum_highres_imu_updated_flags.go new file mode 100644 index 000000000..a11f0044a --- /dev/null +++ b/pkg/dialects/all/enum_highres_imu_updated_flags.go @@ -0,0 +1,72 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package all + +import ( + "errors" +) + +// Flags in the HIGHRES_IMU message indicate which fields have updated since the last message +type HIGHRES_IMU_UPDATED_FLAGS int + +const ( + // None of the fields in HIGHRES_IMU have been updated + HIGHRES_IMU_UPDATED_NONE HIGHRES_IMU_UPDATED_FLAGS = 0 + // The value in the xacc field has been updated + HIGHRES_IMU_UPDATED_XACC HIGHRES_IMU_UPDATED_FLAGS = 1 + // The value in the yacc field has been updated + HIGHRES_IMU_UPDATED_YACC HIGHRES_IMU_UPDATED_FLAGS = 2 + // The value in the zacc field has been updated since + HIGHRES_IMU_UPDATED_ZACC HIGHRES_IMU_UPDATED_FLAGS = 4 + // The value in the xgyro field has been updated + HIGHRES_IMU_UPDATED_XGYRO HIGHRES_IMU_UPDATED_FLAGS = 8 + // The value in the ygyro field has been updated + HIGHRES_IMU_UPDATED_YGYRO HIGHRES_IMU_UPDATED_FLAGS = 16 + // The value in the zgyro field has been updated + HIGHRES_IMU_UPDATED_ZGYRO HIGHRES_IMU_UPDATED_FLAGS = 32 + // The value in the xmag field has been updated + HIGHRES_IMU_UPDATED_XMAG HIGHRES_IMU_UPDATED_FLAGS = 64 + // The value in the ymag field has been updated + HIGHRES_IMU_UPDATED_YMAG HIGHRES_IMU_UPDATED_FLAGS = 128 + // The value in the zmag field has been updated + HIGHRES_IMU_UPDATED_ZMAG HIGHRES_IMU_UPDATED_FLAGS = 256 + // The value in the abs_pressure field has been updated + HIGHRES_IMU_UPDATED_ABS_PRESSURE HIGHRES_IMU_UPDATED_FLAGS = 512 + // The value in the diff_pressure field has been updated + HIGHRES_IMU_UPDATED_DIFF_PRESSURE HIGHRES_IMU_UPDATED_FLAGS = 1024 + // The value in the pressure_alt field has been updated + HIGHRES_IMU_UPDATED_PRESSURE_ALT HIGHRES_IMU_UPDATED_FLAGS = 2048 + // The value in the temperature field has been updated + HIGHRES_IMU_UPDATED_TEMPERATURE HIGHRES_IMU_UPDATED_FLAGS = 4096 + // All fields in HIGHRES_IMU have been updated. + HIGHRES_IMU_UPDATED_ALL HIGHRES_IMU_UPDATED_FLAGS = 65535 +) + +var labels_HIGHRES_IMU_UPDATED_FLAGS = map[HIGHRES_IMU_UPDATED_FLAGS]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e HIGHRES_IMU_UPDATED_FLAGS) MarshalText() ([]byte, error) { + if l, ok := labels_HIGHRES_IMU_UPDATED_FLAGS[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_HIGHRES_IMU_UPDATED_FLAGS = map[string]HIGHRES_IMU_UPDATED_FLAGS{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *HIGHRES_IMU_UPDATED_FLAGS) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_HIGHRES_IMU_UPDATED_FLAGS[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e HIGHRES_IMU_UPDATED_FLAGS) String() string { + if l, ok := labels_HIGHRES_IMU_UPDATED_FLAGS[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/all/enum_hil_sensor_updated_flags.go b/pkg/dialects/all/enum_hil_sensor_updated_flags.go new file mode 100644 index 000000000..c9e19677c --- /dev/null +++ b/pkg/dialects/all/enum_hil_sensor_updated_flags.go @@ -0,0 +1,72 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package all + +import ( + "errors" +) + +// Flags in the HIL_SENSOR message indicate which fields have updated since the last message +type HIL_SENSOR_UPDATED_FLAGS int + +const ( + // None of the fields in HIL_SENSOR have been updated + HIL_SENSOR_UPDATED_NONE HIL_SENSOR_UPDATED_FLAGS = 0 + // The value in the xacc field has been updated + HIL_SENSOR_UPDATED_XACC HIL_SENSOR_UPDATED_FLAGS = 1 + // The value in the yacc field has been updated + HIL_SENSOR_UPDATED_YACC HIL_SENSOR_UPDATED_FLAGS = 2 + // The value in the zacc field has been updated + HIL_SENSOR_UPDATED_ZACC HIL_SENSOR_UPDATED_FLAGS = 4 + // The value in the xgyro field has been updated + HIL_SENSOR_UPDATED_XGYRO HIL_SENSOR_UPDATED_FLAGS = 8 + // The value in the ygyro field has been updated + HIL_SENSOR_UPDATED_YGYRO HIL_SENSOR_UPDATED_FLAGS = 16 + // The value in the zgyro field has been updated + HIL_SENSOR_UPDATED_ZGYRO HIL_SENSOR_UPDATED_FLAGS = 32 + // The value in the xmag field has been updated + HIL_SENSOR_UPDATED_XMAG HIL_SENSOR_UPDATED_FLAGS = 64 + // The value in the ymag field has been updated + HIL_SENSOR_UPDATED_YMAG HIL_SENSOR_UPDATED_FLAGS = 128 + // The value in the zmag field has been updated + HIL_SENSOR_UPDATED_ZMAG HIL_SENSOR_UPDATED_FLAGS = 256 + // The value in the abs_pressure field has been updated + HIL_SENSOR_UPDATED_ABS_PRESSURE HIL_SENSOR_UPDATED_FLAGS = 512 + // The value in the diff_pressure field has been updated + HIL_SENSOR_UPDATED_DIFF_PRESSURE HIL_SENSOR_UPDATED_FLAGS = 1024 + // The value in the pressure_alt field has been updated + HIL_SENSOR_UPDATED_PRESSURE_ALT HIL_SENSOR_UPDATED_FLAGS = 2048 + // The value in the temperature field has been updated + HIL_SENSOR_UPDATED_TEMPERATURE HIL_SENSOR_UPDATED_FLAGS = 4096 + // Full reset of attitude/position/velocities/etc was performed in sim (Bit 31). + HIL_SENSOR_UPDATED_RESET HIL_SENSOR_UPDATED_FLAGS = 2147483648 +) + +var labels_HIL_SENSOR_UPDATED_FLAGS = map[HIL_SENSOR_UPDATED_FLAGS]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e HIL_SENSOR_UPDATED_FLAGS) MarshalText() ([]byte, error) { + if l, ok := labels_HIL_SENSOR_UPDATED_FLAGS[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_HIL_SENSOR_UPDATED_FLAGS = map[string]HIL_SENSOR_UPDATED_FLAGS{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *HIL_SENSOR_UPDATED_FLAGS) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_HIL_SENSOR_UPDATED_FLAGS[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e HIL_SENSOR_UPDATED_FLAGS) String() string { + if l, ok := labels_HIL_SENSOR_UPDATED_FLAGS[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/all/enum_hl_failure_flag.go b/pkg/dialects/all/enum_hl_failure_flag.go new file mode 100644 index 000000000..09c98007e --- /dev/null +++ b/pkg/dialects/all/enum_hl_failure_flag.go @@ -0,0 +1,70 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package all + +import ( + "errors" +) + +// Flags to report failure cases over the high latency telemtry. +type HL_FAILURE_FLAG int + +const ( + // GPS failure. + HL_FAILURE_FLAG_GPS HL_FAILURE_FLAG = 1 + // Differential pressure sensor failure. + HL_FAILURE_FLAG_DIFFERENTIAL_PRESSURE HL_FAILURE_FLAG = 2 + // Absolute pressure sensor failure. + HL_FAILURE_FLAG_ABSOLUTE_PRESSURE HL_FAILURE_FLAG = 4 + // Accelerometer sensor failure. + HL_FAILURE_FLAG_3D_ACCEL HL_FAILURE_FLAG = 8 + // Gyroscope sensor failure. + HL_FAILURE_FLAG_3D_GYRO HL_FAILURE_FLAG = 16 + // Magnetometer sensor failure. + HL_FAILURE_FLAG_3D_MAG HL_FAILURE_FLAG = 32 + // Terrain subsystem failure. + HL_FAILURE_FLAG_TERRAIN HL_FAILURE_FLAG = 64 + // Battery failure/critical low battery. + HL_FAILURE_FLAG_BATTERY HL_FAILURE_FLAG = 128 + // RC receiver failure/no rc connection. + HL_FAILURE_FLAG_RC_RECEIVER HL_FAILURE_FLAG = 256 + // Offboard link failure. + HL_FAILURE_FLAG_OFFBOARD_LINK HL_FAILURE_FLAG = 512 + // Engine failure. + HL_FAILURE_FLAG_ENGINE HL_FAILURE_FLAG = 1024 + // Geofence violation. + HL_FAILURE_FLAG_GEOFENCE HL_FAILURE_FLAG = 2048 + // Estimator failure, for example measurement rejection or large variances. + HL_FAILURE_FLAG_ESTIMATOR HL_FAILURE_FLAG = 4096 + // Mission failure. + HL_FAILURE_FLAG_MISSION HL_FAILURE_FLAG = 8192 +) + +var labels_HL_FAILURE_FLAG = map[HL_FAILURE_FLAG]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e HL_FAILURE_FLAG) MarshalText() ([]byte, error) { + if l, ok := labels_HL_FAILURE_FLAG[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_HL_FAILURE_FLAG = map[string]HL_FAILURE_FLAG{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *HL_FAILURE_FLAG) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_HL_FAILURE_FLAG[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e HL_FAILURE_FLAG) String() string { + if l, ok := labels_HL_FAILURE_FLAG[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/all/enum_icarous_fms_state.go b/pkg/dialects/all/enum_icarous_fms_state.go new file mode 100644 index 000000000..46fdd3601 --- /dev/null +++ b/pkg/dialects/all/enum_icarous_fms_state.go @@ -0,0 +1,47 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package all + +import ( + "errors" +) + +type ICAROUS_FMS_STATE int + +const ( + ICAROUS_FMS_STATE_IDLE ICAROUS_FMS_STATE = 0 + ICAROUS_FMS_STATE_TAKEOFF ICAROUS_FMS_STATE = 1 + ICAROUS_FMS_STATE_CLIMB ICAROUS_FMS_STATE = 2 + ICAROUS_FMS_STATE_CRUISE ICAROUS_FMS_STATE = 3 + ICAROUS_FMS_STATE_APPROACH ICAROUS_FMS_STATE = 4 + ICAROUS_FMS_STATE_LAND ICAROUS_FMS_STATE = 5 +) + +var labels_ICAROUS_FMS_STATE = map[ICAROUS_FMS_STATE]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e ICAROUS_FMS_STATE) MarshalText() ([]byte, error) { + if l, ok := labels_ICAROUS_FMS_STATE[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_ICAROUS_FMS_STATE = map[string]ICAROUS_FMS_STATE{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *ICAROUS_FMS_STATE) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_ICAROUS_FMS_STATE[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e ICAROUS_FMS_STATE) String() string { + if l, ok := labels_ICAROUS_FMS_STATE[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/all/enum_icarous_track_band_types.go b/pkg/dialects/all/enum_icarous_track_band_types.go new file mode 100644 index 000000000..acbb1ec5a --- /dev/null +++ b/pkg/dialects/all/enum_icarous_track_band_types.go @@ -0,0 +1,44 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package all + +import ( + "errors" +) + +type ICAROUS_TRACK_BAND_TYPES int + +const ( + ICAROUS_TRACK_BAND_TYPE_NONE ICAROUS_TRACK_BAND_TYPES = 0 + ICAROUS_TRACK_BAND_TYPE_NEAR ICAROUS_TRACK_BAND_TYPES = 1 + ICAROUS_TRACK_BAND_TYPE_RECOVERY ICAROUS_TRACK_BAND_TYPES = 2 +) + +var labels_ICAROUS_TRACK_BAND_TYPES = map[ICAROUS_TRACK_BAND_TYPES]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e ICAROUS_TRACK_BAND_TYPES) MarshalText() ([]byte, error) { + if l, ok := labels_ICAROUS_TRACK_BAND_TYPES[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_ICAROUS_TRACK_BAND_TYPES = map[string]ICAROUS_TRACK_BAND_TYPES{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *ICAROUS_TRACK_BAND_TYPES) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_ICAROUS_TRACK_BAND_TYPES[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e ICAROUS_TRACK_BAND_TYPES) String() string { + if l, ok := labels_ICAROUS_TRACK_BAND_TYPES[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/all/enum_landing_target_type.go b/pkg/dialects/all/enum_landing_target_type.go new file mode 100644 index 000000000..479a01de7 --- /dev/null +++ b/pkg/dialects/all/enum_landing_target_type.go @@ -0,0 +1,50 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package all + +import ( + "errors" +) + +// Type of landing target +type LANDING_TARGET_TYPE int + +const ( + // Landing target signaled by light beacon (ex: IR-LOCK) + LANDING_TARGET_TYPE_LIGHT_BEACON LANDING_TARGET_TYPE = 0 + // Landing target signaled by radio beacon (ex: ILS, NDB) + LANDING_TARGET_TYPE_RADIO_BEACON LANDING_TARGET_TYPE = 1 + // Landing target represented by a fiducial marker (ex: ARTag) + LANDING_TARGET_TYPE_VISION_FIDUCIAL LANDING_TARGET_TYPE = 2 + // Landing target represented by a pre-defined visual shape/feature (ex: X-marker, H-marker, square) + LANDING_TARGET_TYPE_VISION_OTHER LANDING_TARGET_TYPE = 3 +) + +var labels_LANDING_TARGET_TYPE = map[LANDING_TARGET_TYPE]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e LANDING_TARGET_TYPE) MarshalText() ([]byte, error) { + if l, ok := labels_LANDING_TARGET_TYPE[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_LANDING_TARGET_TYPE = map[string]LANDING_TARGET_TYPE{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *LANDING_TARGET_TYPE) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_LANDING_TARGET_TYPE[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e LANDING_TARGET_TYPE) String() string { + if l, ok := labels_LANDING_TARGET_TYPE[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/all/enum_led_control_pattern.go b/pkg/dialects/all/enum_led_control_pattern.go new file mode 100644 index 000000000..3a71183d0 --- /dev/null +++ b/pkg/dialects/all/enum_led_control_pattern.go @@ -0,0 +1,47 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package all + +import ( + "errors" +) + +type LED_CONTROL_PATTERN int + +const ( + // LED patterns off (return control to regular vehicle control). + LED_CONTROL_PATTERN_OFF LED_CONTROL_PATTERN = 0 + // LEDs show pattern during firmware update. + LED_CONTROL_PATTERN_FIRMWAREUPDATE LED_CONTROL_PATTERN = 1 + // Custom Pattern using custom bytes fields. + LED_CONTROL_PATTERN_CUSTOM LED_CONTROL_PATTERN = 255 +) + +var labels_LED_CONTROL_PATTERN = map[LED_CONTROL_PATTERN]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e LED_CONTROL_PATTERN) MarshalText() ([]byte, error) { + if l, ok := labels_LED_CONTROL_PATTERN[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_LED_CONTROL_PATTERN = map[string]LED_CONTROL_PATTERN{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *LED_CONTROL_PATTERN) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_LED_CONTROL_PATTERN[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e LED_CONTROL_PATTERN) String() string { + if l, ok := labels_LED_CONTROL_PATTERN[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/all/enum_limit_module.go b/pkg/dialects/all/enum_limit_module.go new file mode 100644 index 000000000..ada60eba1 --- /dev/null +++ b/pkg/dialects/all/enum_limit_module.go @@ -0,0 +1,47 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package all + +import ( + "errors" +) + +type LIMIT_MODULE int + +const ( + // Pre-initialization. + LIMIT_GPSLOCK LIMIT_MODULE = 1 + // Disabled. + LIMIT_GEOFENCE LIMIT_MODULE = 2 + // Checking limits. + LIMIT_ALTITUDE LIMIT_MODULE = 4 +) + +var labels_LIMIT_MODULE = map[LIMIT_MODULE]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e LIMIT_MODULE) MarshalText() ([]byte, error) { + if l, ok := labels_LIMIT_MODULE[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_LIMIT_MODULE = map[string]LIMIT_MODULE{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *LIMIT_MODULE) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_LIMIT_MODULE[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e LIMIT_MODULE) String() string { + if l, ok := labels_LIMIT_MODULE[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/all/enum_limits_state.go b/pkg/dialects/all/enum_limits_state.go new file mode 100644 index 000000000..ef14bcdc8 --- /dev/null +++ b/pkg/dialects/all/enum_limits_state.go @@ -0,0 +1,53 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package all + +import ( + "errors" +) + +type LIMITS_STATE int + +const ( + // Pre-initialization. + LIMITS_INIT LIMITS_STATE = 0 + // Disabled. + LIMITS_DISABLED LIMITS_STATE = 1 + // Checking limits. + LIMITS_ENABLED LIMITS_STATE = 2 + // A limit has been breached. + LIMITS_TRIGGERED LIMITS_STATE = 3 + // Taking action e.g. Return/RTL. + LIMITS_RECOVERING LIMITS_STATE = 4 + // We're no longer in breach of a limit. + LIMITS_RECOVERED LIMITS_STATE = 5 +) + +var labels_LIMITS_STATE = map[LIMITS_STATE]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e LIMITS_STATE) MarshalText() ([]byte, error) { + if l, ok := labels_LIMITS_STATE[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_LIMITS_STATE = map[string]LIMITS_STATE{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *LIMITS_STATE) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_LIMITS_STATE[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e LIMITS_STATE) String() string { + if l, ok := labels_LIMITS_STATE[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/all/enum_mag_cal_status.go b/pkg/dialects/all/enum_mag_cal_status.go new file mode 100644 index 000000000..f8a377318 --- /dev/null +++ b/pkg/dialects/all/enum_mag_cal_status.go @@ -0,0 +1,49 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package all + +import ( + "errors" +) + +type MAG_CAL_STATUS int + +const ( + MAG_CAL_NOT_STARTED MAG_CAL_STATUS = 0 + MAG_CAL_WAITING_TO_START MAG_CAL_STATUS = 1 + MAG_CAL_RUNNING_STEP_ONE MAG_CAL_STATUS = 2 + MAG_CAL_RUNNING_STEP_TWO MAG_CAL_STATUS = 3 + MAG_CAL_SUCCESS MAG_CAL_STATUS = 4 + MAG_CAL_FAILED MAG_CAL_STATUS = 5 + MAG_CAL_BAD_ORIENTATION MAG_CAL_STATUS = 6 + MAG_CAL_BAD_RADIUS MAG_CAL_STATUS = 7 +) + +var labels_MAG_CAL_STATUS = map[MAG_CAL_STATUS]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAG_CAL_STATUS) MarshalText() ([]byte, error) { + if l, ok := labels_MAG_CAL_STATUS[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAG_CAL_STATUS = map[string]MAG_CAL_STATUS{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAG_CAL_STATUS) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAG_CAL_STATUS[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAG_CAL_STATUS) String() string { + if l, ok := labels_MAG_CAL_STATUS[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/all/enum_mav_arm_auth_denied_reason.go b/pkg/dialects/all/enum_mav_arm_auth_denied_reason.go new file mode 100644 index 000000000..9d2c8ed66 --- /dev/null +++ b/pkg/dialects/all/enum_mav_arm_auth_denied_reason.go @@ -0,0 +1,53 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package all + +import ( + "errors" +) + +type MAV_ARM_AUTH_DENIED_REASON int + +const ( + // Not a specific reason + MAV_ARM_AUTH_DENIED_REASON_GENERIC MAV_ARM_AUTH_DENIED_REASON = 0 + // Authorizer will send the error as string to GCS + MAV_ARM_AUTH_DENIED_REASON_NONE MAV_ARM_AUTH_DENIED_REASON = 1 + // At least one waypoint have a invalid value + MAV_ARM_AUTH_DENIED_REASON_INVALID_WAYPOINT MAV_ARM_AUTH_DENIED_REASON = 2 + // Timeout in the authorizer process(in case it depends on network) + MAV_ARM_AUTH_DENIED_REASON_TIMEOUT MAV_ARM_AUTH_DENIED_REASON = 3 + // Airspace of the mission in use by another vehicle, second result parameter can have the waypoint id that caused it to be denied. + MAV_ARM_AUTH_DENIED_REASON_AIRSPACE_IN_USE MAV_ARM_AUTH_DENIED_REASON = 4 + // Weather is not good to fly + MAV_ARM_AUTH_DENIED_REASON_BAD_WEATHER MAV_ARM_AUTH_DENIED_REASON = 5 +) + +var labels_MAV_ARM_AUTH_DENIED_REASON = map[MAV_ARM_AUTH_DENIED_REASON]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAV_ARM_AUTH_DENIED_REASON) MarshalText() ([]byte, error) { + if l, ok := labels_MAV_ARM_AUTH_DENIED_REASON[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAV_ARM_AUTH_DENIED_REASON = map[string]MAV_ARM_AUTH_DENIED_REASON{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAV_ARM_AUTH_DENIED_REASON) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAV_ARM_AUTH_DENIED_REASON[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAV_ARM_AUTH_DENIED_REASON) String() string { + if l, ok := labels_MAV_ARM_AUTH_DENIED_REASON[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/all/enum_mav_autopilot.go b/pkg/dialects/all/enum_mav_autopilot.go new file mode 100644 index 000000000..3cbc49844 --- /dev/null +++ b/pkg/dialects/all/enum_mav_autopilot.go @@ -0,0 +1,84 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package all + +import ( + "errors" +) + +// Micro air vehicle / autopilot classes. This identifies the individual model. +type MAV_AUTOPILOT int + +const ( + // Generic autopilot, full support for everything + MAV_AUTOPILOT_GENERIC MAV_AUTOPILOT = 0 + // Reserved for future use. + MAV_AUTOPILOT_RESERVED MAV_AUTOPILOT = 1 + // SLUGS autopilot, http://slugsuav.soe.ucsc.edu + MAV_AUTOPILOT_SLUGS MAV_AUTOPILOT = 2 + // ArduPilot - Plane/Copter/Rover/Sub/Tracker, https://ardupilot.org + MAV_AUTOPILOT_ARDUPILOTMEGA MAV_AUTOPILOT = 3 + // OpenPilot, http://openpilot.org + MAV_AUTOPILOT_OPENPILOT MAV_AUTOPILOT = 4 + // Generic autopilot only supporting simple waypoints + MAV_AUTOPILOT_GENERIC_WAYPOINTS_ONLY MAV_AUTOPILOT = 5 + // Generic autopilot supporting waypoints and other simple navigation commands + MAV_AUTOPILOT_GENERIC_WAYPOINTS_AND_SIMPLE_NAVIGATION_ONLY MAV_AUTOPILOT = 6 + // Generic autopilot supporting the full mission command set + MAV_AUTOPILOT_GENERIC_MISSION_FULL MAV_AUTOPILOT = 7 + // No valid autopilot, e.g. a GCS or other MAVLink component + MAV_AUTOPILOT_INVALID MAV_AUTOPILOT = 8 + // PPZ UAV - http://nongnu.org/paparazzi + MAV_AUTOPILOT_PPZ MAV_AUTOPILOT = 9 + // UAV Dev Board + MAV_AUTOPILOT_UDB MAV_AUTOPILOT = 10 + // FlexiPilot + MAV_AUTOPILOT_FP MAV_AUTOPILOT = 11 + // PX4 Autopilot - http://px4.io/ + MAV_AUTOPILOT_PX4 MAV_AUTOPILOT = 12 + // SMACCMPilot - http://smaccmpilot.org + MAV_AUTOPILOT_SMACCMPILOT MAV_AUTOPILOT = 13 + // AutoQuad -- http://autoquad.org + MAV_AUTOPILOT_AUTOQUAD MAV_AUTOPILOT = 14 + // Armazila -- http://armazila.com + MAV_AUTOPILOT_ARMAZILA MAV_AUTOPILOT = 15 + // Aerob -- http://aerob.ru + MAV_AUTOPILOT_AEROB MAV_AUTOPILOT = 16 + // ASLUAV autopilot -- http://www.asl.ethz.ch + MAV_AUTOPILOT_ASLUAV MAV_AUTOPILOT = 17 + // SmartAP Autopilot - http://sky-drones.com + MAV_AUTOPILOT_SMARTAP MAV_AUTOPILOT = 18 + // AirRails - http://uaventure.com + MAV_AUTOPILOT_AIRRAILS MAV_AUTOPILOT = 19 + // Fusion Reflex - https://fusion.engineering + MAV_AUTOPILOT_REFLEX MAV_AUTOPILOT = 20 +) + +var labels_MAV_AUTOPILOT = map[MAV_AUTOPILOT]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAV_AUTOPILOT) MarshalText() ([]byte, error) { + if l, ok := labels_MAV_AUTOPILOT[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAV_AUTOPILOT = map[string]MAV_AUTOPILOT{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAV_AUTOPILOT) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAV_AUTOPILOT[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAV_AUTOPILOT) String() string { + if l, ok := labels_MAV_AUTOPILOT[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/all/enum_mav_avss_command_failure_reason.go b/pkg/dialects/all/enum_mav_avss_command_failure_reason.go new file mode 100644 index 000000000..565d87c31 --- /dev/null +++ b/pkg/dialects/all/enum_mav_avss_command_failure_reason.go @@ -0,0 +1,47 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package all + +import ( + "errors" +) + +type MAV_AVSS_COMMAND_FAILURE_REASON int + +const ( + // AVSS defined command failure reason. PRS not steady. + PRS_NOT_STEADY MAV_AVSS_COMMAND_FAILURE_REASON = 1 + // AVSS defined command failure reason. PRS DTM not armed. + PRS_DTM_NOT_ARMED MAV_AVSS_COMMAND_FAILURE_REASON = 2 + // AVSS defined command failure reason. PRS OTM not armed. + PRS_OTM_NOT_ARMED MAV_AVSS_COMMAND_FAILURE_REASON = 3 +) + +var labels_MAV_AVSS_COMMAND_FAILURE_REASON = map[MAV_AVSS_COMMAND_FAILURE_REASON]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAV_AVSS_COMMAND_FAILURE_REASON) MarshalText() ([]byte, error) { + if l, ok := labels_MAV_AVSS_COMMAND_FAILURE_REASON[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAV_AVSS_COMMAND_FAILURE_REASON = map[string]MAV_AVSS_COMMAND_FAILURE_REASON{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAV_AVSS_COMMAND_FAILURE_REASON) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAV_AVSS_COMMAND_FAILURE_REASON[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAV_AVSS_COMMAND_FAILURE_REASON) String() string { + if l, ok := labels_MAV_AVSS_COMMAND_FAILURE_REASON[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/all/enum_mav_battery_charge_state.go b/pkg/dialects/all/enum_mav_battery_charge_state.go new file mode 100644 index 000000000..74326e09a --- /dev/null +++ b/pkg/dialects/all/enum_mav_battery_charge_state.go @@ -0,0 +1,58 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package all + +import ( + "errors" +) + +// Enumeration for battery charge states. +type MAV_BATTERY_CHARGE_STATE int + +const ( + // Low battery state is not provided + MAV_BATTERY_CHARGE_STATE_UNDEFINED MAV_BATTERY_CHARGE_STATE = 0 + // Battery is not in low state. Normal operation. + MAV_BATTERY_CHARGE_STATE_OK MAV_BATTERY_CHARGE_STATE = 1 + // Battery state is low, warn and monitor close. + MAV_BATTERY_CHARGE_STATE_LOW MAV_BATTERY_CHARGE_STATE = 2 + // Battery state is critical, return or abort immediately. + MAV_BATTERY_CHARGE_STATE_CRITICAL MAV_BATTERY_CHARGE_STATE = 3 + // Battery state is too low for ordinary abort sequence. Perform fastest possible emergency stop to prevent damage. + MAV_BATTERY_CHARGE_STATE_EMERGENCY MAV_BATTERY_CHARGE_STATE = 4 + // Battery failed, damage unavoidable. Possible causes (faults) are listed in MAV_BATTERY_FAULT. + MAV_BATTERY_CHARGE_STATE_FAILED MAV_BATTERY_CHARGE_STATE = 5 + // Battery is diagnosed to be defective or an error occurred, usage is discouraged / prohibited. Possible causes (faults) are listed in MAV_BATTERY_FAULT. + MAV_BATTERY_CHARGE_STATE_UNHEALTHY MAV_BATTERY_CHARGE_STATE = 6 + // Battery is charging. + MAV_BATTERY_CHARGE_STATE_CHARGING MAV_BATTERY_CHARGE_STATE = 7 +) + +var labels_MAV_BATTERY_CHARGE_STATE = map[MAV_BATTERY_CHARGE_STATE]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAV_BATTERY_CHARGE_STATE) MarshalText() ([]byte, error) { + if l, ok := labels_MAV_BATTERY_CHARGE_STATE[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAV_BATTERY_CHARGE_STATE = map[string]MAV_BATTERY_CHARGE_STATE{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAV_BATTERY_CHARGE_STATE) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAV_BATTERY_CHARGE_STATE[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAV_BATTERY_CHARGE_STATE) String() string { + if l, ok := labels_MAV_BATTERY_CHARGE_STATE[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/all/enum_mav_battery_fault.go b/pkg/dialects/all/enum_mav_battery_fault.go new file mode 100644 index 000000000..a93882b86 --- /dev/null +++ b/pkg/dialects/all/enum_mav_battery_fault.go @@ -0,0 +1,60 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package all + +import ( + "errors" +) + +// Smart battery supply status/fault flags (bitmask) for health indication. The battery must also report either MAV_BATTERY_CHARGE_STATE_FAILED or MAV_BATTERY_CHARGE_STATE_UNHEALTHY if any of these are set. +type MAV_BATTERY_FAULT int + +const ( + // Battery has deep discharged. + MAV_BATTERY_FAULT_DEEP_DISCHARGE MAV_BATTERY_FAULT = 1 + // Voltage spikes. + MAV_BATTERY_FAULT_SPIKES MAV_BATTERY_FAULT = 2 + // One or more cells have failed. Battery should also report MAV_BATTERY_CHARGE_STATE_FAILE (and should not be used). + MAV_BATTERY_FAULT_CELL_FAIL MAV_BATTERY_FAULT = 4 + // Over-current fault. + MAV_BATTERY_FAULT_OVER_CURRENT MAV_BATTERY_FAULT = 8 + // Over-temperature fault. + MAV_BATTERY_FAULT_OVER_TEMPERATURE MAV_BATTERY_FAULT = 16 + // Under-temperature fault. + MAV_BATTERY_FAULT_UNDER_TEMPERATURE MAV_BATTERY_FAULT = 32 + // Vehicle voltage is not compatible with this battery (batteries on same power rail should have similar voltage). + MAV_BATTERY_FAULT_INCOMPATIBLE_VOLTAGE MAV_BATTERY_FAULT = 64 + // Battery firmware is not compatible with current autopilot firmware. + MAV_BATTERY_FAULT_INCOMPATIBLE_FIRMWARE MAV_BATTERY_FAULT = 128 + // Battery is not compatible due to cell configuration (e.g. 5s1p when vehicle requires 6s). + BATTERY_FAULT_INCOMPATIBLE_CELLS_CONFIGURATION MAV_BATTERY_FAULT = 256 +) + +var labels_MAV_BATTERY_FAULT = map[MAV_BATTERY_FAULT]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAV_BATTERY_FAULT) MarshalText() ([]byte, error) { + if l, ok := labels_MAV_BATTERY_FAULT[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAV_BATTERY_FAULT = map[string]MAV_BATTERY_FAULT{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAV_BATTERY_FAULT) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAV_BATTERY_FAULT[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAV_BATTERY_FAULT) String() string { + if l, ok := labels_MAV_BATTERY_FAULT[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/all/enum_mav_battery_function.go b/pkg/dialects/all/enum_mav_battery_function.go new file mode 100644 index 000000000..ac4b63c69 --- /dev/null +++ b/pkg/dialects/all/enum_mav_battery_function.go @@ -0,0 +1,52 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package all + +import ( + "errors" +) + +// Enumeration of battery functions +type MAV_BATTERY_FUNCTION int + +const ( + // Battery function is unknown + MAV_BATTERY_FUNCTION_UNKNOWN MAV_BATTERY_FUNCTION = 0 + // Battery supports all flight systems + MAV_BATTERY_FUNCTION_ALL MAV_BATTERY_FUNCTION = 1 + // Battery for the propulsion system + MAV_BATTERY_FUNCTION_PROPULSION MAV_BATTERY_FUNCTION = 2 + // Avionics battery + MAV_BATTERY_FUNCTION_AVIONICS MAV_BATTERY_FUNCTION = 3 + // Payload battery + MAV_BATTERY_TYPE_PAYLOAD MAV_BATTERY_FUNCTION = 4 +) + +var labels_MAV_BATTERY_FUNCTION = map[MAV_BATTERY_FUNCTION]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAV_BATTERY_FUNCTION) MarshalText() ([]byte, error) { + if l, ok := labels_MAV_BATTERY_FUNCTION[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAV_BATTERY_FUNCTION = map[string]MAV_BATTERY_FUNCTION{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAV_BATTERY_FUNCTION) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAV_BATTERY_FUNCTION[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAV_BATTERY_FUNCTION) String() string { + if l, ok := labels_MAV_BATTERY_FUNCTION[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/all/enum_mav_battery_mode.go b/pkg/dialects/all/enum_mav_battery_mode.go new file mode 100644 index 000000000..57b538f0f --- /dev/null +++ b/pkg/dialects/all/enum_mav_battery_mode.go @@ -0,0 +1,48 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package all + +import ( + "errors" +) + +// Battery mode. Note, the normal operation mode (i.e. when flying) should be reported as MAV_BATTERY_MODE_UNKNOWN to allow message trimming in normal flight. +type MAV_BATTERY_MODE int + +const ( + // Battery mode not supported/unknown battery mode/normal operation. + MAV_BATTERY_MODE_UNKNOWN MAV_BATTERY_MODE = 0 + // Battery is auto discharging (towards storage level). + MAV_BATTERY_MODE_AUTO_DISCHARGING MAV_BATTERY_MODE = 1 + // Battery in hot-swap mode (current limited to prevent spikes that might damage sensitive electrical circuits). + MAV_BATTERY_MODE_HOT_SWAP MAV_BATTERY_MODE = 2 +) + +var labels_MAV_BATTERY_MODE = map[MAV_BATTERY_MODE]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAV_BATTERY_MODE) MarshalText() ([]byte, error) { + if l, ok := labels_MAV_BATTERY_MODE[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAV_BATTERY_MODE = map[string]MAV_BATTERY_MODE{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAV_BATTERY_MODE) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAV_BATTERY_MODE[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAV_BATTERY_MODE) String() string { + if l, ok := labels_MAV_BATTERY_MODE[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/all/enum_mav_battery_type.go b/pkg/dialects/all/enum_mav_battery_type.go new file mode 100644 index 000000000..63f8baada --- /dev/null +++ b/pkg/dialects/all/enum_mav_battery_type.go @@ -0,0 +1,52 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package all + +import ( + "errors" +) + +// Enumeration of battery types +type MAV_BATTERY_TYPE int + +const ( + // Not specified. + MAV_BATTERY_TYPE_UNKNOWN MAV_BATTERY_TYPE = 0 + // Lithium polymer battery + MAV_BATTERY_TYPE_LIPO MAV_BATTERY_TYPE = 1 + // Lithium-iron-phosphate battery + MAV_BATTERY_TYPE_LIFE MAV_BATTERY_TYPE = 2 + // Lithium-ION battery + MAV_BATTERY_TYPE_LION MAV_BATTERY_TYPE = 3 + // Nickel metal hydride battery + MAV_BATTERY_TYPE_NIMH MAV_BATTERY_TYPE = 4 +) + +var labels_MAV_BATTERY_TYPE = map[MAV_BATTERY_TYPE]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAV_BATTERY_TYPE) MarshalText() ([]byte, error) { + if l, ok := labels_MAV_BATTERY_TYPE[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAV_BATTERY_TYPE = map[string]MAV_BATTERY_TYPE{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAV_BATTERY_TYPE) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAV_BATTERY_TYPE[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAV_BATTERY_TYPE) String() string { + if l, ok := labels_MAV_BATTERY_TYPE[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/all/enum_mav_cmd.go b/pkg/dialects/all/enum_mav_cmd.go new file mode 100644 index 000000000..41d83cfa5 --- /dev/null +++ b/pkg/dialects/all/enum_mav_cmd.go @@ -0,0 +1,484 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package all + +import ( + "errors" +) + +// Commands to be executed by the MAV. They can be executed on user request, or as part of a mission script. If the action is used in a mission, the parameter mapping to the waypoint/mission message is as follows: Param 1, Param 2, Param 3, Param 4, X: Param 5, Y:Param 6, Z:Param 7. This command list is similar what ARINC 424 is for commercial aircraft: A data format how to interpret waypoint/mission data. NaN and INT32_MAX may be used in float/integer params (respectively) to indicate optional/default values (e.g. to use the component's current yaw or latitude rather than a specific value). See https://mavlink.io/en/guide/xml_schema.html#MAV_CMD for information about the structure of the MAV_CMD entries +type MAV_CMD int + +const ( + // Navigate to waypoint. + MAV_CMD_NAV_WAYPOINT MAV_CMD = 16 + // Loiter around this waypoint an unlimited amount of time + MAV_CMD_NAV_LOITER_UNLIM MAV_CMD = 17 + // Loiter around this waypoint for X turns + MAV_CMD_NAV_LOITER_TURNS MAV_CMD = 18 + // Loiter at the specified latitude, longitude and altitude for a certain amount of time. Multicopter vehicles stop at the point (within a vehicle-specific acceptance radius). Forward-only moving vehicles (e.g. fixed-wing) circle the point with the specified radius/direction. If the Heading Required parameter (2) is non-zero forward moving aircraft will only leave the loiter circle once heading towards the next waypoint. + MAV_CMD_NAV_LOITER_TIME MAV_CMD = 19 + // Return to launch location + MAV_CMD_NAV_RETURN_TO_LAUNCH MAV_CMD = 20 + // Land at location. + MAV_CMD_NAV_LAND MAV_CMD = 21 + // Takeoff from ground / hand. Vehicles that support multiple takeoff modes (e.g. VTOL quadplane) should take off using the currently configured mode. + MAV_CMD_NAV_TAKEOFF MAV_CMD = 22 + // Land at local position (local frame only) + MAV_CMD_NAV_LAND_LOCAL MAV_CMD = 23 + // Takeoff from local position (local frame only) + MAV_CMD_NAV_TAKEOFF_LOCAL MAV_CMD = 24 + // Vehicle following, i.e. this waypoint represents the position of a moving vehicle + MAV_CMD_NAV_FOLLOW MAV_CMD = 25 + // Continue on the current course and climb/descend to specified altitude. When the altitude is reached continue to the next command (i.e., don't proceed to the next command until the desired altitude is reached. + MAV_CMD_NAV_CONTINUE_AND_CHANGE_ALT MAV_CMD = 30 + // Begin loiter at the specified Latitude and Longitude. If Lat=Lon=0, then loiter at the current position. Don't consider the navigation command complete (don't leave loiter) until the altitude has been reached. Additionally, if the Heading Required parameter is non-zero the aircraft will not leave the loiter until heading toward the next waypoint. + MAV_CMD_NAV_LOITER_TO_ALT MAV_CMD = 31 + // Begin following a target + MAV_CMD_DO_FOLLOW MAV_CMD = 32 + // Reposition the MAV after a follow target command has been sent + MAV_CMD_DO_FOLLOW_REPOSITION MAV_CMD = 33 + // Start orbiting on the circumference of a circle defined by the parameters. Setting values to NaN/INT32_MAX (as appropriate) results in using defaults. + MAV_CMD_DO_ORBIT MAV_CMD = 34 + // Sets the region of interest (ROI) for a sensor set or the vehicle itself. This can then be used by the vehicle's control system to control the vehicle attitude and the attitude of various sensors such as cameras. + MAV_CMD_NAV_ROI MAV_CMD = 80 + // Control autonomous path planning on the MAV. + MAV_CMD_NAV_PATHPLANNING MAV_CMD = 81 + // Navigate to waypoint using a spline path. + MAV_CMD_NAV_SPLINE_WAYPOINT MAV_CMD = 82 + // Takeoff from ground using VTOL mode, and transition to forward flight with specified heading. The command should be ignored by vehicles that dont support both VTOL and fixed-wing flight (multicopters, boats,etc.). + MAV_CMD_NAV_VTOL_TAKEOFF MAV_CMD = 84 + // Land using VTOL mode + MAV_CMD_NAV_VTOL_LAND MAV_CMD = 85 + // hand control over to an external controller + MAV_CMD_NAV_GUIDED_ENABLE MAV_CMD = 92 + // Delay the next navigation command a number of seconds or until a specified time + MAV_CMD_NAV_DELAY MAV_CMD = 93 + // Descend and place payload. Vehicle moves to specified location, descends until it detects a hanging payload has reached the ground, and then releases the payload. If ground is not detected before the reaching the maximum descent value (param1), the command will complete without releasing the payload. + MAV_CMD_NAV_PAYLOAD_PLACE MAV_CMD = 94 + // NOP - This command is only used to mark the upper limit of the NAV/ACTION commands in the enumeration + MAV_CMD_NAV_LAST MAV_CMD = 95 + // Delay mission state machine. + MAV_CMD_CONDITION_DELAY MAV_CMD = 112 + // Ascend/descend to target altitude at specified rate. Delay mission state machine until desired altitude reached. + MAV_CMD_CONDITION_CHANGE_ALT MAV_CMD = 113 + // Delay mission state machine until within desired distance of next NAV point. + MAV_CMD_CONDITION_DISTANCE MAV_CMD = 114 + // Reach a certain target angle. + MAV_CMD_CONDITION_YAW MAV_CMD = 115 + // NOP - This command is only used to mark the upper limit of the CONDITION commands in the enumeration + MAV_CMD_CONDITION_LAST MAV_CMD = 159 + // Set system mode. + MAV_CMD_DO_SET_MODE MAV_CMD = 176 + // Jump to the desired command in the mission list. Repeat this action only the specified number of times + MAV_CMD_DO_JUMP MAV_CMD = 177 + // Change speed and/or throttle set points. + MAV_CMD_DO_CHANGE_SPEED MAV_CMD = 178 + // Changes the home location either to the current location or a specified location. + MAV_CMD_DO_SET_HOME MAV_CMD = 179 + // Set a system parameter. Caution! Use of this command requires knowledge of the numeric enumeration value of the parameter. + MAV_CMD_DO_SET_PARAMETER MAV_CMD = 180 + // Set a relay to a condition. + MAV_CMD_DO_SET_RELAY MAV_CMD = 181 + // Cycle a relay on and off for a desired number of cycles with a desired period. + MAV_CMD_DO_REPEAT_RELAY MAV_CMD = 182 + // Set a servo to a desired PWM value. + MAV_CMD_DO_SET_SERVO MAV_CMD = 183 + // Cycle a between its nominal setting and a desired PWM for a desired number of cycles with a desired period. + MAV_CMD_DO_REPEAT_SERVO MAV_CMD = 184 + // Terminate flight immediately + MAV_CMD_DO_FLIGHTTERMINATION MAV_CMD = 185 + // Change altitude set point. + MAV_CMD_DO_CHANGE_ALTITUDE MAV_CMD = 186 + // Sets actuators (e.g. servos) to a desired value. The actuator numbers are mapped to specific outputs (e.g. on any MAIN or AUX PWM or UAVCAN) using a flight-stack specific mechanism (i.e. a parameter). + MAV_CMD_DO_SET_ACTUATOR MAV_CMD = 187 + // Mission command to perform a landing. This is used as a marker in a mission to tell the autopilot where a sequence of mission items that represents a landing starts. It may also be sent via a COMMAND_LONG to trigger a landing, in which case the nearest (geographically) landing sequence in the mission will be used. The Latitude/Longitude is optional, and may be set to 0 if not needed. If specified then it will be used to help find the closest landing sequence. + MAV_CMD_DO_LAND_START MAV_CMD = 189 + // Mission command to perform a landing from a rally point. + MAV_CMD_DO_RALLY_LAND MAV_CMD = 190 + // Mission command to safely abort an autonomous landing. + MAV_CMD_DO_GO_AROUND MAV_CMD = 191 + // Reposition the vehicle to a specific WGS84 global position. + MAV_CMD_DO_REPOSITION MAV_CMD = 192 + // If in a GPS controlled position mode, hold the current position or continue. + MAV_CMD_DO_PAUSE_CONTINUE MAV_CMD = 193 + // Set moving direction to forward or reverse. + MAV_CMD_DO_SET_REVERSE MAV_CMD = 194 + // Sets the region of interest (ROI) to a location. This can then be used by the vehicle's control system to control the vehicle attitude and the attitude of various sensors such as cameras. This command can be sent to a gimbal manager but not to a gimbal device. A gimbal is not to react to this message. + MAV_CMD_DO_SET_ROI_LOCATION MAV_CMD = 195 + // Sets the region of interest (ROI) to be toward next waypoint, with optional pitch/roll/yaw offset. This can then be used by the vehicle's control system to control the vehicle attitude and the attitude of various sensors such as cameras. This command can be sent to a gimbal manager but not to a gimbal device. A gimbal device is not to react to this message. + MAV_CMD_DO_SET_ROI_WPNEXT_OFFSET MAV_CMD = 196 + // Cancels any previous ROI command returning the vehicle/sensors to default flight characteristics. This can then be used by the vehicle's control system to control the vehicle attitude and the attitude of various sensors such as cameras. This command can be sent to a gimbal manager but not to a gimbal device. A gimbal device is not to react to this message. After this command the gimbal manager should go back to manual input if available, and otherwise assume a neutral position. + MAV_CMD_DO_SET_ROI_NONE MAV_CMD = 197 + // Mount tracks system with specified system ID. Determination of target vehicle position may be done with GLOBAL_POSITION_INT or any other means. This command can be sent to a gimbal manager but not to a gimbal device. A gimbal device is not to react to this message. + MAV_CMD_DO_SET_ROI_SYSID MAV_CMD = 198 + // Control onboard camera system. + MAV_CMD_DO_CONTROL_VIDEO MAV_CMD = 200 + // Sets the region of interest (ROI) for a sensor set or the vehicle itself. This can then be used by the vehicle's control system to control the vehicle attitude and the attitude of various sensors such as cameras. + MAV_CMD_DO_SET_ROI MAV_CMD = 201 + // Configure digital camera. This is a fallback message for systems that have not yet implemented PARAM_EXT_XXX messages and camera definition files (see https://mavlink.io/en/services/camera_def.html ). + MAV_CMD_DO_DIGICAM_CONFIGURE MAV_CMD = 202 + // Control digital camera. This is a fallback message for systems that have not yet implemented PARAM_EXT_XXX messages and camera definition files (see https://mavlink.io/en/services/camera_def.html ). + MAV_CMD_DO_DIGICAM_CONTROL MAV_CMD = 203 + // Mission command to configure a camera or antenna mount + MAV_CMD_DO_MOUNT_CONFIGURE MAV_CMD = 204 + // Mission command to control a camera or antenna mount + MAV_CMD_DO_MOUNT_CONTROL MAV_CMD = 205 + // Mission command to set camera trigger distance for this flight. The camera is triggered each time this distance is exceeded. This command can also be used to set the shutter integration time for the camera. + MAV_CMD_DO_SET_CAM_TRIGG_DIST MAV_CMD = 206 + // Mission command to enable the geofence + MAV_CMD_DO_FENCE_ENABLE MAV_CMD = 207 + // Mission item/command to release a parachute or enable/disable auto release. + MAV_CMD_DO_PARACHUTE MAV_CMD = 208 + // Command to perform motor test. + MAV_CMD_DO_MOTOR_TEST MAV_CMD = 209 + // Change to/from inverted flight. + MAV_CMD_DO_INVERTED_FLIGHT MAV_CMD = 210 + // Mission command to operate a gripper. + MAV_CMD_DO_GRIPPER MAV_CMD = 211 + // Enable/disable autotune. + MAV_CMD_DO_AUTOTUNE_ENABLE MAV_CMD = 212 + // Sets a desired vehicle turn angle and speed change. + MAV_CMD_NAV_SET_YAW_SPEED MAV_CMD = 213 + // Mission command to set camera trigger interval for this flight. If triggering is enabled, the camera is triggered each time this interval expires. This command can also be used to set the shutter integration time for the camera. + MAV_CMD_DO_SET_CAM_TRIGG_INTERVAL MAV_CMD = 214 + // Mission command to control a camera or antenna mount, using a quaternion as reference. + MAV_CMD_DO_MOUNT_CONTROL_QUAT MAV_CMD = 220 + // set id of master controller + MAV_CMD_DO_GUIDED_MASTER MAV_CMD = 221 + // Set limits for external control + MAV_CMD_DO_GUIDED_LIMITS MAV_CMD = 222 + // Control vehicle engine. This is interpreted by the vehicles engine controller to change the target engine state. It is intended for vehicles with internal combustion engines + MAV_CMD_DO_ENGINE_CONTROL MAV_CMD = 223 + // Set the mission item with sequence number seq as current item. This means that the MAV will continue to this mission item on the shortest path (not following the mission items in-between). + MAV_CMD_DO_SET_MISSION_CURRENT MAV_CMD = 224 + // NOP - This command is only used to mark the upper limit of the DO commands in the enumeration + MAV_CMD_DO_LAST MAV_CMD = 240 + // Trigger calibration. This command will be only accepted if in pre-flight mode. Except for Temperature Calibration, only one sensor should be set in a single message and all others should be zero. + MAV_CMD_PREFLIGHT_CALIBRATION MAV_CMD = 241 + // Set sensor offsets. This command will be only accepted if in pre-flight mode. + MAV_CMD_PREFLIGHT_SET_SENSOR_OFFSETS MAV_CMD = 242 + // Trigger UAVCAN configuration (actuator ID assignment and direction mapping). Note that this maps to the legacy UAVCAN v0 function UAVCAN_ENUMERATE, which is intended to be executed just once during initial vehicle configuration (it is not a normal pre-flight command and has been poorly named). + MAV_CMD_PREFLIGHT_UAVCAN MAV_CMD = 243 + // Request storage of different parameter values and logs. This command will be only accepted if in pre-flight mode. + MAV_CMD_PREFLIGHT_STORAGE MAV_CMD = 245 + // Request the reboot or shutdown of system components. + MAV_CMD_PREFLIGHT_REBOOT_SHUTDOWN MAV_CMD = 246 + // Override current mission with command to pause mission, pause mission and move to position, continue/resume mission. When param 1 indicates that the mission is paused (MAV_GOTO_DO_HOLD), param 2 defines whether it holds in place or moves to another position. + MAV_CMD_OVERRIDE_GOTO MAV_CMD = 252 + // Mission command to set a Camera Auto Mount Pivoting Oblique Survey (Replaces CAM_TRIGG_DIST for this purpose). The camera is triggered each time this distance is exceeded, then the mount moves to the next position. Params 4~6 set-up the angle limits and number of positions for oblique survey, where mount-enabled vehicles automatically roll the camera between shots to emulate an oblique camera setup (providing an increased HFOV). This command can also be used to set the shutter integration time for the camera. + MAV_CMD_OBLIQUE_SURVEY MAV_CMD = 260 + // start running a mission + MAV_CMD_MISSION_START MAV_CMD = 300 + // Actuator testing command. This is similar to MAV_CMD_DO_MOTOR_TEST but operates on the level of output functions, i.e. it is possible to test Motor1 independent from which output it is configured on. Autopilots typically refuse this command while armed. + MAV_CMD_ACTUATOR_TEST MAV_CMD = 310 + // Actuator configuration command. + MAV_CMD_CONFIGURE_ACTUATOR MAV_CMD = 311 + // Arms / Disarms a component + MAV_CMD_COMPONENT_ARM_DISARM MAV_CMD = 400 + // Instructs system to run pre-arm checks. This command should return MAV_RESULT_TEMPORARILY_REJECTED in the case the system is armed, otherwise MAV_RESULT_ACCEPTED. Note that the return value from executing this command does not indicate whether the vehicle is armable or not, just whether the system has successfully run/is currently running the checks. The result of the checks is reflected in the SYS_STATUS message. + MAV_CMD_RUN_PREARM_CHECKS MAV_CMD = 401 + // Turns illuminators ON/OFF. An illuminator is a light source that is used for lighting up dark areas external to the sytstem: e.g. a torch or searchlight (as opposed to a light source for illuminating the system itself, e.g. an indicator light). + MAV_CMD_ILLUMINATOR_ON_OFF MAV_CMD = 405 + // Request the home position from the vehicle. + MAV_CMD_GET_HOME_POSITION MAV_CMD = 410 + // Inject artificial failure for testing purposes. Note that autopilots should implement an additional protection before accepting this command such as a specific param setting. + MAV_CMD_INJECT_FAILURE MAV_CMD = 420 + // Starts receiver pairing. + MAV_CMD_START_RX_PAIR MAV_CMD = 500 + // Request the interval between messages for a particular MAVLink message ID. The receiver should ACK the command and then emit its response in a MESSAGE_INTERVAL message. + MAV_CMD_GET_MESSAGE_INTERVAL MAV_CMD = 510 + // Set the interval between messages for a particular MAVLink message ID. This interface replaces REQUEST_DATA_STREAM. + MAV_CMD_SET_MESSAGE_INTERVAL MAV_CMD = 511 + // Request the target system(s) emit a single instance of a specified message (i.e. a "one-shot" version of MAV_CMD_SET_MESSAGE_INTERVAL). + MAV_CMD_REQUEST_MESSAGE MAV_CMD = 512 + // Request MAVLink protocol version compatibility. All receivers should ACK the command and then emit their capabilities in an PROTOCOL_VERSION message + MAV_CMD_REQUEST_PROTOCOL_VERSION MAV_CMD = 519 + // Request autopilot capabilities. The receiver should ACK the command and then emit its capabilities in an AUTOPILOT_VERSION message + MAV_CMD_REQUEST_AUTOPILOT_CAPABILITIES MAV_CMD = 520 + // Request camera information (CAMERA_INFORMATION). + MAV_CMD_REQUEST_CAMERA_INFORMATION MAV_CMD = 521 + // Request camera settings (CAMERA_SETTINGS). + MAV_CMD_REQUEST_CAMERA_SETTINGS MAV_CMD = 522 + // Request storage information (STORAGE_INFORMATION). Use the command's target_component to target a specific component's storage. + MAV_CMD_REQUEST_STORAGE_INFORMATION MAV_CMD = 525 + // Format a storage medium. Once format is complete, a STORAGE_INFORMATION message is sent. Use the command's target_component to target a specific component's storage. + MAV_CMD_STORAGE_FORMAT MAV_CMD = 526 + // Request camera capture status (CAMERA_CAPTURE_STATUS) + MAV_CMD_REQUEST_CAMERA_CAPTURE_STATUS MAV_CMD = 527 + // Request flight information (FLIGHT_INFORMATION) + MAV_CMD_REQUEST_FLIGHT_INFORMATION MAV_CMD = 528 + // Reset all camera settings to Factory Default + MAV_CMD_RESET_CAMERA_SETTINGS MAV_CMD = 529 + // Set camera running mode. Use NaN for reserved values. GCS will send a MAV_CMD_REQUEST_VIDEO_STREAM_STATUS command after a mode change if the camera supports video streaming. + MAV_CMD_SET_CAMERA_MODE MAV_CMD = 530 + // Set camera zoom. Camera must respond with a CAMERA_SETTINGS message (on success). + MAV_CMD_SET_CAMERA_ZOOM MAV_CMD = 531 + // Set camera focus. Camera must respond with a CAMERA_SETTINGS message (on success). + MAV_CMD_SET_CAMERA_FOCUS MAV_CMD = 532 + // Set that a particular storage is the preferred location for saving photos, videos, and/or other media (e.g. to set that an SD card is used for storing videos). + // There can only be one preferred save location for each particular media type: setting a media usage flag will clear/reset that same flag if set on any other storage. + // If no flag is set the system should use its default storage. + // A target system can choose to always use default storage, in which case it should ACK the command with MAV_RESULT_UNSUPPORTED. + // A target system can choose to not allow a particular storage to be set as preferred storage, in which case it should ACK the command with MAV_RESULT_DENIED. + MAV_CMD_SET_STORAGE_USAGE MAV_CMD = 533 + // Tagged jump target. Can be jumped to with MAV_CMD_DO_JUMP_TAG. + MAV_CMD_JUMP_TAG MAV_CMD = 600 + // Jump to the matching tag in the mission list. Repeat this action for the specified number of times. A mission should contain a single matching tag for each jump. If this is not the case then a jump to a missing tag should complete the mission, and a jump where there are multiple matching tags should always select the one with the lowest mission sequence number. + MAV_CMD_DO_JUMP_TAG MAV_CMD = 601 + // High level setpoint to be sent to a gimbal manager to set a gimbal attitude. It is possible to set combinations of the values below. E.g. an angle as well as a desired angular rate can be used to get to this angle at a certain angular rate, or an angular rate only will result in continuous turning. NaN is to be used to signal unset. Note: a gimbal is never to react to this command but only the gimbal manager. + MAV_CMD_DO_GIMBAL_MANAGER_PITCHYAW MAV_CMD = 1000 + // Gimbal configuration to set which sysid/compid is in primary and secondary control. + MAV_CMD_DO_GIMBAL_MANAGER_CONFIGURE MAV_CMD = 1001 + // Start image capture sequence. Sends CAMERA_IMAGE_CAPTURED after each capture. Use NaN for reserved values. + MAV_CMD_IMAGE_START_CAPTURE MAV_CMD = 2000 + // Stop image capture sequence Use NaN for reserved values. + MAV_CMD_IMAGE_STOP_CAPTURE MAV_CMD = 2001 + // Re-request a CAMERA_IMAGE_CAPTURED message. + MAV_CMD_REQUEST_CAMERA_IMAGE_CAPTURE MAV_CMD = 2002 + // Enable or disable on-board camera triggering system. + MAV_CMD_DO_TRIGGER_CONTROL MAV_CMD = 2003 + // If the camera supports point visual tracking (CAMERA_CAP_FLAGS_HAS_TRACKING_POINT is set), this command allows to initiate the tracking. + MAV_CMD_CAMERA_TRACK_POINT MAV_CMD = 2004 + // If the camera supports rectangle visual tracking (CAMERA_CAP_FLAGS_HAS_TRACKING_RECTANGLE is set), this command allows to initiate the tracking. + MAV_CMD_CAMERA_TRACK_RECTANGLE MAV_CMD = 2005 + // Stops ongoing tracking. + MAV_CMD_CAMERA_STOP_TRACKING MAV_CMD = 2010 + // Starts video capture (recording). + MAV_CMD_VIDEO_START_CAPTURE MAV_CMD = 2500 + // Stop the current video capture (recording). + MAV_CMD_VIDEO_STOP_CAPTURE MAV_CMD = 2501 + // Start video streaming + MAV_CMD_VIDEO_START_STREAMING MAV_CMD = 2502 + // Stop the given video stream + MAV_CMD_VIDEO_STOP_STREAMING MAV_CMD = 2503 + // Request video stream information (VIDEO_STREAM_INFORMATION) + MAV_CMD_REQUEST_VIDEO_STREAM_INFORMATION MAV_CMD = 2504 + // Request video stream status (VIDEO_STREAM_STATUS) + MAV_CMD_REQUEST_VIDEO_STREAM_STATUS MAV_CMD = 2505 + // Request to start streaming logging data over MAVLink (see also LOGGING_DATA message) + MAV_CMD_LOGGING_START MAV_CMD = 2510 + // Request to stop streaming log data over MAVLink + MAV_CMD_LOGGING_STOP MAV_CMD = 2511 + MAV_CMD_AIRFRAME_CONFIGURATION MAV_CMD = 2520 + // Request to start/stop transmitting over the high latency telemetry + MAV_CMD_CONTROL_HIGH_LATENCY MAV_CMD = 2600 + // Create a panorama at the current position + MAV_CMD_PANORAMA_CREATE MAV_CMD = 2800 + // Request VTOL transition + MAV_CMD_DO_VTOL_TRANSITION MAV_CMD = 3000 + // Request authorization to arm the vehicle to a external entity, the arm authorizer is responsible to request all data that is needs from the vehicle before authorize or deny the request. If approved the progress of command_ack message should be set with period of time that this authorization is valid in seconds or in case it was denied it should be set with one of the reasons in ARM_AUTH_DENIED_REASON. + MAV_CMD_ARM_AUTHORIZATION_REQUEST MAV_CMD = 3001 + // This command sets the submode to standard guided when vehicle is in guided mode. The vehicle holds position and altitude and the user can input the desired velocities along all three axes. + MAV_CMD_SET_GUIDED_SUBMODE_STANDARD MAV_CMD = 4000 + // This command sets submode circle when vehicle is in guided mode. Vehicle flies along a circle facing the center of the circle. The user can input the velocity along the circle and change the radius. If no input is given the vehicle will hold position. + MAV_CMD_SET_GUIDED_SUBMODE_CIRCLE MAV_CMD = 4001 + // Delay mission state machine until gate has been reached. + MAV_CMD_CONDITION_GATE MAV_CMD = 4501 + // Fence return point (there can only be one such point in a geofence definition). If rally points are supported they should be used instead. + MAV_CMD_NAV_FENCE_RETURN_POINT MAV_CMD = 5000 + // Fence vertex for an inclusion polygon (the polygon must not be self-intersecting). The vehicle must stay within this area. Minimum of 3 vertices required. + MAV_CMD_NAV_FENCE_POLYGON_VERTEX_INCLUSION MAV_CMD = 5001 + // Fence vertex for an exclusion polygon (the polygon must not be self-intersecting). The vehicle must stay outside this area. Minimum of 3 vertices required. + MAV_CMD_NAV_FENCE_POLYGON_VERTEX_EXCLUSION MAV_CMD = 5002 + // Circular fence area. The vehicle must stay inside this area. + MAV_CMD_NAV_FENCE_CIRCLE_INCLUSION MAV_CMD = 5003 + // Circular fence area. The vehicle must stay outside this area. + MAV_CMD_NAV_FENCE_CIRCLE_EXCLUSION MAV_CMD = 5004 + // Rally point. You can have multiple rally points defined. + MAV_CMD_NAV_RALLY_POINT MAV_CMD = 5100 + // Commands the vehicle to respond with a sequence of messages UAVCAN_NODE_INFO, one message per every UAVCAN node that is online. Note that some of the response messages can be lost, which the receiver can detect easily by checking whether every received UAVCAN_NODE_STATUS has a matching message UAVCAN_NODE_INFO received earlier; if not, this command should be sent again in order to request re-transmission of the node information messages. + MAV_CMD_UAVCAN_GET_NODE_INFO MAV_CMD = 5200 + // Trigger the start of an ADSB-out IDENT. This should only be used when requested to do so by an Air Traffic Controller in controlled airspace. This starts the IDENT which is then typically held for 18 seconds by the hardware per the Mode A, C, and S transponder spec. + MAV_CMD_DO_ADSB_OUT_IDENT MAV_CMD = 10001 + // Deploy payload on a Lat / Lon / Alt position. This includes the navigation to reach the required release position and velocity. + MAV_CMD_PAYLOAD_PREPARE_DEPLOY MAV_CMD = 30001 + // Control the payload deployment. + MAV_CMD_PAYLOAD_CONTROL_DEPLOY MAV_CMD = 30002 + // Magnetometer calibration based on provided known yaw. This allows for fast calibration using WMM field tables in the vehicle, given only the known yaw of the vehicle. If Latitude and longitude are both zero then use the current vehicle location. + MAV_CMD_FIXED_MAG_CAL_YAW MAV_CMD = 42006 + // Command to operate winch. + MAV_CMD_DO_WINCH MAV_CMD = 42600 + // User defined waypoint item. Ground Station will show the Vehicle as flying through this item. + MAV_CMD_WAYPOINT_USER_1 MAV_CMD = 31000 + // User defined waypoint item. Ground Station will show the Vehicle as flying through this item. + MAV_CMD_WAYPOINT_USER_2 MAV_CMD = 31001 + // User defined waypoint item. Ground Station will show the Vehicle as flying through this item. + MAV_CMD_WAYPOINT_USER_3 MAV_CMD = 31002 + // User defined waypoint item. Ground Station will show the Vehicle as flying through this item. + MAV_CMD_WAYPOINT_USER_4 MAV_CMD = 31003 + // User defined waypoint item. Ground Station will show the Vehicle as flying through this item. + MAV_CMD_WAYPOINT_USER_5 MAV_CMD = 31004 + // User defined spatial item. Ground Station will not show the Vehicle as flying through this item. Example: ROI item. + MAV_CMD_SPATIAL_USER_1 MAV_CMD = 31005 + // User defined spatial item. Ground Station will not show the Vehicle as flying through this item. Example: ROI item. + MAV_CMD_SPATIAL_USER_2 MAV_CMD = 31006 + // User defined spatial item. Ground Station will not show the Vehicle as flying through this item. Example: ROI item. + MAV_CMD_SPATIAL_USER_3 MAV_CMD = 31007 + // User defined spatial item. Ground Station will not show the Vehicle as flying through this item. Example: ROI item. + MAV_CMD_SPATIAL_USER_4 MAV_CMD = 31008 + // User defined spatial item. Ground Station will not show the Vehicle as flying through this item. Example: ROI item. + MAV_CMD_SPATIAL_USER_5 MAV_CMD = 31009 + // User defined command. Ground Station will not show the Vehicle as flying through this item. Example: MAV_CMD_DO_SET_PARAMETER item. + MAV_CMD_USER_1 MAV_CMD = 31010 + // User defined command. Ground Station will not show the Vehicle as flying through this item. Example: MAV_CMD_DO_SET_PARAMETER item. + MAV_CMD_USER_2 MAV_CMD = 31011 + // User defined command. Ground Station will not show the Vehicle as flying through this item. Example: MAV_CMD_DO_SET_PARAMETER item. + MAV_CMD_USER_3 MAV_CMD = 31012 + // User defined command. Ground Station will not show the Vehicle as flying through this item. Example: MAV_CMD_DO_SET_PARAMETER item. + MAV_CMD_USER_4 MAV_CMD = 31013 + // User defined command. Ground Station will not show the Vehicle as flying through this item. Example: MAV_CMD_DO_SET_PARAMETER item. + MAV_CMD_USER_5 MAV_CMD = 31014 + // Set the distance to be repeated on mission resume + MAV_CMD_DO_SET_RESUME_REPEAT_DIST MAV_CMD = 215 + // Control attached liquid sprayer + MAV_CMD_DO_SPRAYER MAV_CMD = 216 + // Pass instructions onto scripting, a script should be checking for a new command + MAV_CMD_DO_SEND_SCRIPT_MESSAGE MAV_CMD = 217 + // Execute auxiliary function + MAV_CMD_DO_AUX_FUNCTION MAV_CMD = 218 + // Mission command to wait for an altitude or downwards vertical speed. This is meant for high altitude balloon launches, allowing the aircraft to be idle until either an altitude is reached or a negative vertical speed is reached (indicating early balloon burst). The wiggle time is how often to wiggle the control surfaces to prevent them seizing up. + MAV_CMD_NAV_ALTITUDE_WAIT MAV_CMD = 83 + // A system wide power-off event has been initiated. + MAV_CMD_POWER_OFF_INITIATED MAV_CMD = 42000 + // FLY button has been clicked. + MAV_CMD_SOLO_BTN_FLY_CLICK MAV_CMD = 42001 + // FLY button has been held for 1.5 seconds. + MAV_CMD_SOLO_BTN_FLY_HOLD MAV_CMD = 42002 + // PAUSE button has been clicked. + MAV_CMD_SOLO_BTN_PAUSE_CLICK MAV_CMD = 42003 + // Magnetometer calibration based on fixed position + // in earth field given by inclination, declination and intensity. + MAV_CMD_FIXED_MAG_CAL MAV_CMD = 42004 + // Magnetometer calibration based on fixed expected field values. + MAV_CMD_FIXED_MAG_CAL_FIELD MAV_CMD = 42005 + // Set EKF sensor source set. + MAV_CMD_SET_EKF_SOURCE_SET MAV_CMD = 42007 + // Initiate a magnetometer calibration. + MAV_CMD_DO_START_MAG_CAL MAV_CMD = 42424 + // Accept a magnetometer calibration. + MAV_CMD_DO_ACCEPT_MAG_CAL MAV_CMD = 42425 + // Cancel a running magnetometer calibration. + MAV_CMD_DO_CANCEL_MAG_CAL MAV_CMD = 42426 + // Used when doing accelerometer calibration. When sent to the GCS tells it what position to put the vehicle in. When sent to the vehicle says what position the vehicle is in. + MAV_CMD_ACCELCAL_VEHICLE_POS MAV_CMD = 42429 + // Reply with the version banner. + MAV_CMD_DO_SEND_BANNER MAV_CMD = 42428 + // Command autopilot to get into factory test/diagnostic mode. + MAV_CMD_SET_FACTORY_TEST_MODE MAV_CMD = 42427 + // Causes the gimbal to reset and boot as if it was just powered on. + MAV_CMD_GIMBAL_RESET MAV_CMD = 42501 + // Reports progress and success or failure of gimbal axis calibration procedure. + MAV_CMD_GIMBAL_AXIS_CALIBRATION_STATUS MAV_CMD = 42502 + // Starts commutation calibration on the gimbal. + MAV_CMD_GIMBAL_REQUEST_AXIS_CALIBRATION MAV_CMD = 42503 + // Erases gimbal application and parameters. + MAV_CMD_GIMBAL_FULL_RESET MAV_CMD = 42505 + // Update the bootloader + MAV_CMD_FLASH_BOOTLOADER MAV_CMD = 42650 + // Reset battery capacity for batteries that accumulate consumed battery via integration. + MAV_CMD_BATTERY_RESET MAV_CMD = 42651 + // Issue a trap signal to the autopilot process, presumably to enter the debugger. + MAV_CMD_DEBUG_TRAP MAV_CMD = 42700 + // Control onboard scripting. + MAV_CMD_SCRIPTING MAV_CMD = 42701 + // Scripting command as NAV command with wait for completion. + MAV_CMD_NAV_SCRIPT_TIME MAV_CMD = 42702 + // Change flight speed at a given rate. This slews the vehicle at a controllable rate between it's previous speed and the new one. (affects GUIDED only. Outside GUIDED, aircraft ignores these commands. Designed for onboard companion-computer command-and-control, not normally operator/GCS control.) + MAV_CMD_GUIDED_CHANGE_SPEED MAV_CMD = 43000 + // Change target altitude at a given rate. This slews the vehicle at a controllable rate between it's previous altitude and the new one. (affects GUIDED only. Outside GUIDED, aircraft ignores these commands. Designed for onboard companion-computer command-and-control, not normally operator/GCS control.) + MAV_CMD_GUIDED_CHANGE_ALTITUDE MAV_CMD = 43001 + // Change to target heading at a given rate, overriding previous heading/s. This slews the vehicle at a controllable rate between it's previous heading and the new one. (affects GUIDED only. Exiting GUIDED returns aircraft to normal behaviour defined elsewhere. Designed for onboard companion-computer command-and-control, not normally operator/GCS control.) + MAV_CMD_GUIDED_CHANGE_HEADING MAV_CMD = 43002 + // Mission command to reset Maximum Power Point Tracker (MPPT) + MAV_CMD_RESET_MPPT MAV_CMD = 40001 + // Mission command to perform a power cycle on payload + MAV_CMD_PAYLOAD_CONTROL MAV_CMD = 40002 + // Request to start or end a parameter transaction. Multiple kinds of transport layers can be used to exchange parameters in the transaction (param, param_ext and mavftp). The command response can either be a success/failure or an in progress in case the receiving side takes some time to apply the parameters. + MAV_CMD_PARAM_TRANSACTION MAV_CMD = 900 + // Sets the action on geofence breach. + // If sent using the command protocol this sets the system-default geofence action. + // As part of a mission protocol plan it sets the fence action for the next complete geofence definition *after* the command. + // Note: A fence action defined in a plan will override the default system setting (even if the system-default is `FENCE_ACTION_NONE`). + // Note: Every geofence in a plan can have its own action; if no fence action is defined for a particular fence the system-default will be used. + // Note: The flight stack should reject a plan or command that uses a geofence action that it does not support and send a STATUSTEXT with the reason. + MAV_CMD_SET_FENCE_BREACH_ACTION MAV_CMD = 5010 + // Request a target system to start an upgrade of one (or all) of its components. + // For example, the command might be sent to a companion computer to cause it to upgrade a connected flight controller. + // The system doing the upgrade will report progress using the normal command protocol sequence for a long running operation. + // Command protocol information: https://mavlink.io/en/services/command.html. + MAV_CMD_DO_UPGRADE MAV_CMD = 247 + // Define start of a group of mission items. When control reaches this command a GROUP_START message is emitted. + // The end of a group is marked using MAV_CMD_GROUP_END with the same group id. + // Group ids are expected, but not required, to iterate sequentially. + // Groups can be nested. + MAV_CMD_GROUP_START MAV_CMD = 301 + // Define end of a group of mission items. When control reaches this command a GROUP_END message is emitted. + // The start of the group is marked is marked using MAV_CMD_GROUP_START with the same group id. + // Group ids are expected, but not required, to iterate sequentially. + // Groups can be nested. + MAV_CMD_GROUP_END MAV_CMD = 302 + // Command to a gimbal manager to control the gimbal tilt and pan angles. It is possible to set combinations of the values below. E.g. an angle as well as a desired angular rate can be used to get to this angle at a certain angular rate, or an angular rate only will result in continuous turning. NaN is to be used to signal unset. A gimbal device is never to react to this command. + MAV_CMD_STORM32_DO_GIMBAL_MANAGER_CONTROL_PITCHYAW MAV_CMD = 60002 + // Command to configure a gimbal manager. A gimbal device is never to react to this command. The selected profile is reported in the STORM32_GIMBAL_MANAGER_STATUS message. + MAV_CMD_STORM32_DO_GIMBAL_MANAGER_SETUP MAV_CMD = 60010 + // Command to initiate gimbal actions. Usually performed by the gimbal device, but some can also be done by the gimbal manager. It is hence best to broadcast this command. + MAV_CMD_STORM32_DO_GIMBAL_ACTION MAV_CMD = 60011 + // Command to set the shot manager mode. + MAV_CMD_QSHOT_DO_CONFIGURE MAV_CMD = 60020 + // AVSS defined command. Set PRS arm statuses. + MAV_CMD_PRS_SET_ARM MAV_CMD = 60050 + // AVSS defined command. Gets PRS arm statuses + MAV_CMD_PRS_GET_ARM MAV_CMD = 60051 + // AVSS defined command. Get the PRS battery voltage in millivolts + MAV_CMD_PRS_GET_BATTERY MAV_CMD = 60052 + // AVSS defined command. Get the PRS error statuses. + MAV_CMD_PRS_GET_ERR MAV_CMD = 60053 + // AVSS defined command. Set the ATS arming altitude in meters. + MAV_CMD_PRS_SET_ARM_ALTI MAV_CMD = 60070 + // AVSS defined command. Get the ATS arming altitude in meters. + MAV_CMD_PRS_GET_ARM_ALTI MAV_CMD = 60071 + // AVSS defined command. Shuts down the PRS system. + MAV_CMD_PRS_SHUTDOWN MAV_CMD = 60072 + // AVSS defined command. Set the threshold to charge from outside in millivolts + MAV_CMD_PRS_SET_CHARGE_MV MAV_CMD = 60073 + // AVSS defined command. Get the threshold to charge from outside in millivolts. + MAV_CMD_PRS_GET_CHARGE_MV MAV_CMD = 60074 + // AVSS defined command. Set the timeout between FTS request and deploying the chute. + MAV_CMD_PRS_SET_TIMEOUT MAV_CMD = 60075 + // AVSS defined command. Get the timeout between FTS request and deploying the chute. + MAV_CMD_PRS_GET_TIMEOUT MAV_CMD = 60076 + // AVSS defined command. Set up the PRS to connect to the drone.. + MAV_CMD_PRS_SET_FTS_CONNECT MAV_CMD = 60077 + // AVSS defined command. Get the connection status of PRS and drone. + MAV_CMD_PRS_GET_FTS_CONNECT MAV_CMD = 60078 +) + +var labels_MAV_CMD = map[MAV_CMD]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAV_CMD) MarshalText() ([]byte, error) { + if l, ok := labels_MAV_CMD[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAV_CMD = map[string]MAV_CMD{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAV_CMD) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAV_CMD[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAV_CMD) String() string { + if l, ok := labels_MAV_CMD[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/all/enum_mav_cmd_ack.go b/pkg/dialects/all/enum_mav_cmd_ack.go new file mode 100644 index 000000000..f19007657 --- /dev/null +++ b/pkg/dialects/all/enum_mav_cmd_ack.go @@ -0,0 +1,60 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package all + +import ( + "errors" +) + +// ACK / NACK / ERROR values as a result of MAV_CMDs and for mission item transmission. +type MAV_CMD_ACK int + +const ( + // Command / mission item is ok. + MAV_CMD_ACK_OK MAV_CMD_ACK = 0 + // Generic error message if none of the other reasons fails or if no detailed error reporting is implemented. + MAV_CMD_ACK_ERR_FAIL MAV_CMD_ACK = 1 + // The system is refusing to accept this command from this source / communication partner. + MAV_CMD_ACK_ERR_ACCESS_DENIED MAV_CMD_ACK = 2 + // Command or mission item is not supported, other commands would be accepted. + MAV_CMD_ACK_ERR_NOT_SUPPORTED MAV_CMD_ACK = 3 + // The coordinate frame of this command / mission item is not supported. + MAV_CMD_ACK_ERR_COORDINATE_FRAME_NOT_SUPPORTED MAV_CMD_ACK = 4 + // The coordinate frame of this command is ok, but he coordinate values exceed the safety limits of this system. This is a generic error, please use the more specific error messages below if possible. + MAV_CMD_ACK_ERR_COORDINATES_OUT_OF_RANGE MAV_CMD_ACK = 5 + // The X or latitude value is out of range. + MAV_CMD_ACK_ERR_X_LAT_OUT_OF_RANGE MAV_CMD_ACK = 6 + // The Y or longitude value is out of range. + MAV_CMD_ACK_ERR_Y_LON_OUT_OF_RANGE MAV_CMD_ACK = 7 + // The Z or altitude value is out of range. + MAV_CMD_ACK_ERR_Z_ALT_OUT_OF_RANGE MAV_CMD_ACK = 8 +) + +var labels_MAV_CMD_ACK = map[MAV_CMD_ACK]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAV_CMD_ACK) MarshalText() ([]byte, error) { + if l, ok := labels_MAV_CMD_ACK[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAV_CMD_ACK = map[string]MAV_CMD_ACK{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAV_CMD_ACK) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAV_CMD_ACK[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAV_CMD_ACK) String() string { + if l, ok := labels_MAV_CMD_ACK[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/all/enum_mav_cmd_do_aux_function_switch_level.go b/pkg/dialects/all/enum_mav_cmd_do_aux_function_switch_level.go new file mode 100644 index 000000000..c7b83ea55 --- /dev/null +++ b/pkg/dialects/all/enum_mav_cmd_do_aux_function_switch_level.go @@ -0,0 +1,47 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package all + +import ( + "errors" +) + +type MAV_CMD_DO_AUX_FUNCTION_SWITCH_LEVEL int + +const ( + // Switch Low. + MAV_CMD_DO_AUX_FUNCTION_SWITCH_LEVEL_LOW MAV_CMD_DO_AUX_FUNCTION_SWITCH_LEVEL = 0 + // Switch Middle. + MAV_CMD_DO_AUX_FUNCTION_SWITCH_LEVEL_MIDDLE MAV_CMD_DO_AUX_FUNCTION_SWITCH_LEVEL = 1 + // Switch High. + MAV_CMD_DO_AUX_FUNCTION_SWITCH_LEVEL_HIGH MAV_CMD_DO_AUX_FUNCTION_SWITCH_LEVEL = 2 +) + +var labels_MAV_CMD_DO_AUX_FUNCTION_SWITCH_LEVEL = map[MAV_CMD_DO_AUX_FUNCTION_SWITCH_LEVEL]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAV_CMD_DO_AUX_FUNCTION_SWITCH_LEVEL) MarshalText() ([]byte, error) { + if l, ok := labels_MAV_CMD_DO_AUX_FUNCTION_SWITCH_LEVEL[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAV_CMD_DO_AUX_FUNCTION_SWITCH_LEVEL = map[string]MAV_CMD_DO_AUX_FUNCTION_SWITCH_LEVEL{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAV_CMD_DO_AUX_FUNCTION_SWITCH_LEVEL) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAV_CMD_DO_AUX_FUNCTION_SWITCH_LEVEL[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAV_CMD_DO_AUX_FUNCTION_SWITCH_LEVEL) String() string { + if l, ok := labels_MAV_CMD_DO_AUX_FUNCTION_SWITCH_LEVEL[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/all/enum_mav_collision_action.go b/pkg/dialects/all/enum_mav_collision_action.go new file mode 100644 index 000000000..3e84e4d8f --- /dev/null +++ b/pkg/dialects/all/enum_mav_collision_action.go @@ -0,0 +1,56 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package all + +import ( + "errors" +) + +// Possible actions an aircraft can take to avoid a collision. +type MAV_COLLISION_ACTION int + +const ( + // Ignore any potential collisions + MAV_COLLISION_ACTION_NONE MAV_COLLISION_ACTION = 0 + // Report potential collision + MAV_COLLISION_ACTION_REPORT MAV_COLLISION_ACTION = 1 + // Ascend or Descend to avoid threat + MAV_COLLISION_ACTION_ASCEND_OR_DESCEND MAV_COLLISION_ACTION = 2 + // Move horizontally to avoid threat + MAV_COLLISION_ACTION_MOVE_HORIZONTALLY MAV_COLLISION_ACTION = 3 + // Aircraft to move perpendicular to the collision's velocity vector + MAV_COLLISION_ACTION_MOVE_PERPENDICULAR MAV_COLLISION_ACTION = 4 + // Aircraft to fly directly back to its launch point + MAV_COLLISION_ACTION_RTL MAV_COLLISION_ACTION = 5 + // Aircraft to stop in place + MAV_COLLISION_ACTION_HOVER MAV_COLLISION_ACTION = 6 +) + +var labels_MAV_COLLISION_ACTION = map[MAV_COLLISION_ACTION]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAV_COLLISION_ACTION) MarshalText() ([]byte, error) { + if l, ok := labels_MAV_COLLISION_ACTION[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAV_COLLISION_ACTION = map[string]MAV_COLLISION_ACTION{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAV_COLLISION_ACTION) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAV_COLLISION_ACTION[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAV_COLLISION_ACTION) String() string { + if l, ok := labels_MAV_COLLISION_ACTION[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/all/enum_mav_collision_src.go b/pkg/dialects/all/enum_mav_collision_src.go new file mode 100644 index 000000000..f56df295b --- /dev/null +++ b/pkg/dialects/all/enum_mav_collision_src.go @@ -0,0 +1,46 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package all + +import ( + "errors" +) + +// Source of information about this collision. +type MAV_COLLISION_SRC int + +const ( + // ID field references ADSB_VEHICLE packets + MAV_COLLISION_SRC_ADSB MAV_COLLISION_SRC = 0 + // ID field references MAVLink SRC ID + MAV_COLLISION_SRC_MAVLINK_GPS_GLOBAL_INT MAV_COLLISION_SRC = 1 +) + +var labels_MAV_COLLISION_SRC = map[MAV_COLLISION_SRC]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAV_COLLISION_SRC) MarshalText() ([]byte, error) { + if l, ok := labels_MAV_COLLISION_SRC[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAV_COLLISION_SRC = map[string]MAV_COLLISION_SRC{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAV_COLLISION_SRC) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAV_COLLISION_SRC[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAV_COLLISION_SRC) String() string { + if l, ok := labels_MAV_COLLISION_SRC[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/all/enum_mav_collision_threat_level.go b/pkg/dialects/all/enum_mav_collision_threat_level.go new file mode 100644 index 000000000..8d15a283a --- /dev/null +++ b/pkg/dialects/all/enum_mav_collision_threat_level.go @@ -0,0 +1,48 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package all + +import ( + "errors" +) + +// Aircraft-rated danger from this threat. +type MAV_COLLISION_THREAT_LEVEL int + +const ( + // Not a threat + MAV_COLLISION_THREAT_LEVEL_NONE MAV_COLLISION_THREAT_LEVEL = 0 + // Craft is mildly concerned about this threat + MAV_COLLISION_THREAT_LEVEL_LOW MAV_COLLISION_THREAT_LEVEL = 1 + // Craft is panicking, and may take actions to avoid threat + MAV_COLLISION_THREAT_LEVEL_HIGH MAV_COLLISION_THREAT_LEVEL = 2 +) + +var labels_MAV_COLLISION_THREAT_LEVEL = map[MAV_COLLISION_THREAT_LEVEL]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAV_COLLISION_THREAT_LEVEL) MarshalText() ([]byte, error) { + if l, ok := labels_MAV_COLLISION_THREAT_LEVEL[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAV_COLLISION_THREAT_LEVEL = map[string]MAV_COLLISION_THREAT_LEVEL{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAV_COLLISION_THREAT_LEVEL) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAV_COLLISION_THREAT_LEVEL[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAV_COLLISION_THREAT_LEVEL) String() string { + if l, ok := labels_MAV_COLLISION_THREAT_LEVEL[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/all/enum_mav_component.go b/pkg/dialects/all/enum_mav_component.go new file mode 100644 index 000000000..65885a277 --- /dev/null +++ b/pkg/dialects/all/enum_mav_component.go @@ -0,0 +1,310 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package all + +import ( + "errors" +) + +// Component ids (values) for the different types and instances of onboard hardware/software that might make up a MAVLink system (autopilot, cameras, servos, GPS systems, avoidance systems etc.). +// Components must use the appropriate ID in their source address when sending messages. Components can also use IDs to determine if they are the intended recipient of an incoming message. The MAV_COMP_ID_ALL value is used to indicate messages that must be processed by all components. +// When creating new entries, components that can have multiple instances (e.g. cameras, servos etc.) should be allocated sequential values. An appropriate number of values should be left free after these components to allow the number of instances to be expanded. +type MAV_COMPONENT int + +const ( + // Target id (target_component) used to broadcast messages to all components of the receiving system. Components should attempt to process messages with this component ID and forward to components on any other interfaces. Note: This is not a valid *source* component id for a message. + MAV_COMP_ID_ALL MAV_COMPONENT = 0 + // System flight controller component ("autopilot"). Only one autopilot is expected in a particular system. + MAV_COMP_ID_AUTOPILOT1 MAV_COMPONENT = 1 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER1 MAV_COMPONENT = 25 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER2 MAV_COMPONENT = 26 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER3 MAV_COMPONENT = 27 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER4 MAV_COMPONENT = 28 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER5 MAV_COMPONENT = 29 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER6 MAV_COMPONENT = 30 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER7 MAV_COMPONENT = 31 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER8 MAV_COMPONENT = 32 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER9 MAV_COMPONENT = 33 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER10 MAV_COMPONENT = 34 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER11 MAV_COMPONENT = 35 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER12 MAV_COMPONENT = 36 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER13 MAV_COMPONENT = 37 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER14 MAV_COMPONENT = 38 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER15 MAV_COMPONENT = 39 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER16 MAV_COMPONENT = 40 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER17 MAV_COMPONENT = 41 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER18 MAV_COMPONENT = 42 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER19 MAV_COMPONENT = 43 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER20 MAV_COMPONENT = 44 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER21 MAV_COMPONENT = 45 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER22 MAV_COMPONENT = 46 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER23 MAV_COMPONENT = 47 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER24 MAV_COMPONENT = 48 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER25 MAV_COMPONENT = 49 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER26 MAV_COMPONENT = 50 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER27 MAV_COMPONENT = 51 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER28 MAV_COMPONENT = 52 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER29 MAV_COMPONENT = 53 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER30 MAV_COMPONENT = 54 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER31 MAV_COMPONENT = 55 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER32 MAV_COMPONENT = 56 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER33 MAV_COMPONENT = 57 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER34 MAV_COMPONENT = 58 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER35 MAV_COMPONENT = 59 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER36 MAV_COMPONENT = 60 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER37 MAV_COMPONENT = 61 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER38 MAV_COMPONENT = 62 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER39 MAV_COMPONENT = 63 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER40 MAV_COMPONENT = 64 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER41 MAV_COMPONENT = 65 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER42 MAV_COMPONENT = 66 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER43 MAV_COMPONENT = 67 + // Telemetry radio (e.g. SiK radio, or other component that emits RADIO_STATUS messages). + MAV_COMP_ID_TELEMETRY_RADIO MAV_COMPONENT = 68 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER45 MAV_COMPONENT = 69 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER46 MAV_COMPONENT = 70 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER47 MAV_COMPONENT = 71 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER48 MAV_COMPONENT = 72 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER49 MAV_COMPONENT = 73 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER50 MAV_COMPONENT = 74 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER51 MAV_COMPONENT = 75 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER52 MAV_COMPONENT = 76 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER53 MAV_COMPONENT = 77 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER54 MAV_COMPONENT = 78 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER55 MAV_COMPONENT = 79 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER56 MAV_COMPONENT = 80 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER57 MAV_COMPONENT = 81 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER58 MAV_COMPONENT = 82 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER59 MAV_COMPONENT = 83 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER60 MAV_COMPONENT = 84 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER61 MAV_COMPONENT = 85 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER62 MAV_COMPONENT = 86 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER63 MAV_COMPONENT = 87 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER64 MAV_COMPONENT = 88 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER65 MAV_COMPONENT = 89 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER66 MAV_COMPONENT = 90 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER67 MAV_COMPONENT = 91 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER68 MAV_COMPONENT = 92 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER69 MAV_COMPONENT = 93 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER70 MAV_COMPONENT = 94 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER71 MAV_COMPONENT = 95 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER72 MAV_COMPONENT = 96 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER73 MAV_COMPONENT = 97 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER74 MAV_COMPONENT = 98 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER75 MAV_COMPONENT = 99 + // Camera #1. + MAV_COMP_ID_CAMERA MAV_COMPONENT = 100 + // Camera #2. + MAV_COMP_ID_CAMERA2 MAV_COMPONENT = 101 + // Camera #3. + MAV_COMP_ID_CAMERA3 MAV_COMPONENT = 102 + // Camera #4. + MAV_COMP_ID_CAMERA4 MAV_COMPONENT = 103 + // Camera #5. + MAV_COMP_ID_CAMERA5 MAV_COMPONENT = 104 + // Camera #6. + MAV_COMP_ID_CAMERA6 MAV_COMPONENT = 105 + // Servo #1. + MAV_COMP_ID_SERVO1 MAV_COMPONENT = 140 + // Servo #2. + MAV_COMP_ID_SERVO2 MAV_COMPONENT = 141 + // Servo #3. + MAV_COMP_ID_SERVO3 MAV_COMPONENT = 142 + // Servo #4. + MAV_COMP_ID_SERVO4 MAV_COMPONENT = 143 + // Servo #5. + MAV_COMP_ID_SERVO5 MAV_COMPONENT = 144 + // Servo #6. + MAV_COMP_ID_SERVO6 MAV_COMPONENT = 145 + // Servo #7. + MAV_COMP_ID_SERVO7 MAV_COMPONENT = 146 + // Servo #8. + MAV_COMP_ID_SERVO8 MAV_COMPONENT = 147 + // Servo #9. + MAV_COMP_ID_SERVO9 MAV_COMPONENT = 148 + // Servo #10. + MAV_COMP_ID_SERVO10 MAV_COMPONENT = 149 + // Servo #11. + MAV_COMP_ID_SERVO11 MAV_COMPONENT = 150 + // Servo #12. + MAV_COMP_ID_SERVO12 MAV_COMPONENT = 151 + // Servo #13. + MAV_COMP_ID_SERVO13 MAV_COMPONENT = 152 + // Servo #14. + MAV_COMP_ID_SERVO14 MAV_COMPONENT = 153 + // Gimbal #1. + MAV_COMP_ID_GIMBAL MAV_COMPONENT = 154 + // Logging component. + MAV_COMP_ID_LOG MAV_COMPONENT = 155 + // Automatic Dependent Surveillance-Broadcast (ADS-B) component. + MAV_COMP_ID_ADSB MAV_COMPONENT = 156 + // On Screen Display (OSD) devices for video links. + MAV_COMP_ID_OSD MAV_COMPONENT = 157 + // Generic autopilot peripheral component ID. Meant for devices that do not implement the parameter microservice. + MAV_COMP_ID_PERIPHERAL MAV_COMPONENT = 158 + // Gimbal ID for QX1. + MAV_COMP_ID_QX1_GIMBAL MAV_COMPONENT = 159 + // FLARM collision alert component. + MAV_COMP_ID_FLARM MAV_COMPONENT = 160 + // Parachute component. + MAV_COMP_ID_PARACHUTE MAV_COMPONENT = 161 + // Gimbal #2. + MAV_COMP_ID_GIMBAL2 MAV_COMPONENT = 171 + // Gimbal #3. + MAV_COMP_ID_GIMBAL3 MAV_COMPONENT = 172 + // Gimbal #4 + MAV_COMP_ID_GIMBAL4 MAV_COMPONENT = 173 + // Gimbal #5. + MAV_COMP_ID_GIMBAL5 MAV_COMPONENT = 174 + // Gimbal #6. + MAV_COMP_ID_GIMBAL6 MAV_COMPONENT = 175 + // Battery #1. + MAV_COMP_ID_BATTERY MAV_COMPONENT = 180 + // Battery #2. + MAV_COMP_ID_BATTERY2 MAV_COMPONENT = 181 + // Component that can generate/supply a mission flight plan (e.g. GCS or developer API). + MAV_COMP_ID_MISSIONPLANNER MAV_COMPONENT = 190 + // Component that lives on the onboard computer (companion computer) and has some generic functionalities, such as settings system parameters and monitoring the status of some processes that don't directly speak mavlink and so on. + MAV_COMP_ID_ONBOARD_COMPUTER MAV_COMPONENT = 191 + // Component that lives on the onboard computer (companion computer) and has some generic functionalities, such as settings system parameters and monitoring the status of some processes that don't directly speak mavlink and so on. + MAV_COMP_ID_ONBOARD_COMPUTER2 MAV_COMPONENT = 192 + // Component that lives on the onboard computer (companion computer) and has some generic functionalities, such as settings system parameters and monitoring the status of some processes that don't directly speak mavlink and so on. + MAV_COMP_ID_ONBOARD_COMPUTER3 MAV_COMPONENT = 193 + // Component that lives on the onboard computer (companion computer) and has some generic functionalities, such as settings system parameters and monitoring the status of some processes that don't directly speak mavlink and so on. + MAV_COMP_ID_ONBOARD_COMPUTER4 MAV_COMPONENT = 194 + // Component that finds an optimal path between points based on a certain constraint (e.g. minimum snap, shortest path, cost, etc.). + MAV_COMP_ID_PATHPLANNER MAV_COMPONENT = 195 + // Component that plans a collision free path between two points. + MAV_COMP_ID_OBSTACLE_AVOIDANCE MAV_COMPONENT = 196 + // Component that provides position estimates using VIO techniques. + MAV_COMP_ID_VISUAL_INERTIAL_ODOMETRY MAV_COMPONENT = 197 + // Component that manages pairing of vehicle and GCS. + MAV_COMP_ID_PAIRING_MANAGER MAV_COMPONENT = 198 + // Inertial Measurement Unit (IMU) #1. + MAV_COMP_ID_IMU MAV_COMPONENT = 200 + // Inertial Measurement Unit (IMU) #2. + MAV_COMP_ID_IMU_2 MAV_COMPONENT = 201 + // Inertial Measurement Unit (IMU) #3. + MAV_COMP_ID_IMU_3 MAV_COMPONENT = 202 + // GPS #1. + MAV_COMP_ID_GPS MAV_COMPONENT = 220 + // GPS #2. + MAV_COMP_ID_GPS2 MAV_COMPONENT = 221 + // Open Drone ID transmitter/receiver (Bluetooth/WiFi/Internet). + MAV_COMP_ID_ODID_TXRX_1 MAV_COMPONENT = 236 + // Open Drone ID transmitter/receiver (Bluetooth/WiFi/Internet). + MAV_COMP_ID_ODID_TXRX_2 MAV_COMPONENT = 237 + // Open Drone ID transmitter/receiver (Bluetooth/WiFi/Internet). + MAV_COMP_ID_ODID_TXRX_3 MAV_COMPONENT = 238 + // Component to bridge MAVLink to UDP (i.e. from a UART). + MAV_COMP_ID_UDP_BRIDGE MAV_COMPONENT = 240 + // Component to bridge to UART (i.e. from UDP). + MAV_COMP_ID_UART_BRIDGE MAV_COMPONENT = 241 + // Component handling TUNNEL messages (e.g. vendor specific GUI of a component). + MAV_COMP_ID_TUNNEL_NODE MAV_COMPONENT = 242 + // Component for handling system messages (e.g. to ARM, takeoff, etc.). + MAV_COMP_ID_SYSTEM_CONTROL MAV_COMPONENT = 250 +) + +var labels_MAV_COMPONENT = map[MAV_COMPONENT]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAV_COMPONENT) MarshalText() ([]byte, error) { + if l, ok := labels_MAV_COMPONENT[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAV_COMPONENT = map[string]MAV_COMPONENT{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAV_COMPONENT) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAV_COMPONENT[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAV_COMPONENT) String() string { + if l, ok := labels_MAV_COMPONENT[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/all/enum_mav_data_stream.go b/pkg/dialects/all/enum_mav_data_stream.go new file mode 100644 index 000000000..9f9c736e2 --- /dev/null +++ b/pkg/dialects/all/enum_mav_data_stream.go @@ -0,0 +1,62 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package all + +import ( + "errors" +) + +// A data stream is not a fixed set of messages, but rather a +// recommendation to the autopilot software. Individual autopilots may or may not obey +// the recommended messages. +type MAV_DATA_STREAM int + +const ( + // Enable all data streams + MAV_DATA_STREAM_ALL MAV_DATA_STREAM = 0 + // Enable IMU_RAW, GPS_RAW, GPS_STATUS packets. + MAV_DATA_STREAM_RAW_SENSORS MAV_DATA_STREAM = 1 + // Enable GPS_STATUS, CONTROL_STATUS, AUX_STATUS + MAV_DATA_STREAM_EXTENDED_STATUS MAV_DATA_STREAM = 2 + // Enable RC_CHANNELS_SCALED, RC_CHANNELS_RAW, SERVO_OUTPUT_RAW + MAV_DATA_STREAM_RC_CHANNELS MAV_DATA_STREAM = 3 + // Enable ATTITUDE_CONTROLLER_OUTPUT, POSITION_CONTROLLER_OUTPUT, NAV_CONTROLLER_OUTPUT. + MAV_DATA_STREAM_RAW_CONTROLLER MAV_DATA_STREAM = 4 + // Enable LOCAL_POSITION, GLOBAL_POSITION_INT messages. + MAV_DATA_STREAM_POSITION MAV_DATA_STREAM = 6 + // Dependent on the autopilot + MAV_DATA_STREAM_EXTRA1 MAV_DATA_STREAM = 10 + // Dependent on the autopilot + MAV_DATA_STREAM_EXTRA2 MAV_DATA_STREAM = 11 + // Dependent on the autopilot + MAV_DATA_STREAM_EXTRA3 MAV_DATA_STREAM = 12 +) + +var labels_MAV_DATA_STREAM = map[MAV_DATA_STREAM]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAV_DATA_STREAM) MarshalText() ([]byte, error) { + if l, ok := labels_MAV_DATA_STREAM[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAV_DATA_STREAM = map[string]MAV_DATA_STREAM{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAV_DATA_STREAM) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAV_DATA_STREAM[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAV_DATA_STREAM) String() string { + if l, ok := labels_MAV_DATA_STREAM[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/all/enum_mav_distance_sensor.go b/pkg/dialects/all/enum_mav_distance_sensor.go new file mode 100644 index 000000000..6f9e68393 --- /dev/null +++ b/pkg/dialects/all/enum_mav_distance_sensor.go @@ -0,0 +1,52 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package all + +import ( + "errors" +) + +// Enumeration of distance sensor types +type MAV_DISTANCE_SENSOR int + +const ( + // Laser rangefinder, e.g. LightWare SF02/F or PulsedLight units + MAV_DISTANCE_SENSOR_LASER MAV_DISTANCE_SENSOR = 0 + // Ultrasound rangefinder, e.g. MaxBotix units + MAV_DISTANCE_SENSOR_ULTRASOUND MAV_DISTANCE_SENSOR = 1 + // Infrared rangefinder, e.g. Sharp units + MAV_DISTANCE_SENSOR_INFRARED MAV_DISTANCE_SENSOR = 2 + // Radar type, e.g. uLanding units + MAV_DISTANCE_SENSOR_RADAR MAV_DISTANCE_SENSOR = 3 + // Broken or unknown type, e.g. analog units + MAV_DISTANCE_SENSOR_UNKNOWN MAV_DISTANCE_SENSOR = 4 +) + +var labels_MAV_DISTANCE_SENSOR = map[MAV_DISTANCE_SENSOR]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAV_DISTANCE_SENSOR) MarshalText() ([]byte, error) { + if l, ok := labels_MAV_DISTANCE_SENSOR[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAV_DISTANCE_SENSOR = map[string]MAV_DISTANCE_SENSOR{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAV_DISTANCE_SENSOR) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAV_DISTANCE_SENSOR[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAV_DISTANCE_SENSOR) String() string { + if l, ok := labels_MAV_DISTANCE_SENSOR[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/all/enum_mav_do_reposition_flags.go b/pkg/dialects/all/enum_mav_do_reposition_flags.go new file mode 100644 index 000000000..b4cee87bf --- /dev/null +++ b/pkg/dialects/all/enum_mav_do_reposition_flags.go @@ -0,0 +1,44 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package all + +import ( + "errors" +) + +// Bitmap of options for the MAV_CMD_DO_REPOSITION +type MAV_DO_REPOSITION_FLAGS int + +const ( + // The aircraft should immediately transition into guided. This should not be set for follow me applications + MAV_DO_REPOSITION_FLAGS_CHANGE_MODE MAV_DO_REPOSITION_FLAGS = 1 +) + +var labels_MAV_DO_REPOSITION_FLAGS = map[MAV_DO_REPOSITION_FLAGS]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAV_DO_REPOSITION_FLAGS) MarshalText() ([]byte, error) { + if l, ok := labels_MAV_DO_REPOSITION_FLAGS[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAV_DO_REPOSITION_FLAGS = map[string]MAV_DO_REPOSITION_FLAGS{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAV_DO_REPOSITION_FLAGS) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAV_DO_REPOSITION_FLAGS[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAV_DO_REPOSITION_FLAGS) String() string { + if l, ok := labels_MAV_DO_REPOSITION_FLAGS[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/all/enum_mav_estimator_type.go b/pkg/dialects/all/enum_mav_estimator_type.go new file mode 100644 index 000000000..f9ddb5d8f --- /dev/null +++ b/pkg/dialects/all/enum_mav_estimator_type.go @@ -0,0 +1,60 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package all + +import ( + "errors" +) + +// Enumeration of estimator types +type MAV_ESTIMATOR_TYPE int + +const ( + // Unknown type of the estimator. + MAV_ESTIMATOR_TYPE_UNKNOWN MAV_ESTIMATOR_TYPE = 0 + // This is a naive estimator without any real covariance feedback. + MAV_ESTIMATOR_TYPE_NAIVE MAV_ESTIMATOR_TYPE = 1 + // Computer vision based estimate. Might be up to scale. + MAV_ESTIMATOR_TYPE_VISION MAV_ESTIMATOR_TYPE = 2 + // Visual-inertial estimate. + MAV_ESTIMATOR_TYPE_VIO MAV_ESTIMATOR_TYPE = 3 + // Plain GPS estimate. + MAV_ESTIMATOR_TYPE_GPS MAV_ESTIMATOR_TYPE = 4 + // Estimator integrating GPS and inertial sensing. + MAV_ESTIMATOR_TYPE_GPS_INS MAV_ESTIMATOR_TYPE = 5 + // Estimate from external motion capturing system. + MAV_ESTIMATOR_TYPE_MOCAP MAV_ESTIMATOR_TYPE = 6 + // Estimator based on lidar sensor input. + MAV_ESTIMATOR_TYPE_LIDAR MAV_ESTIMATOR_TYPE = 7 + // Estimator on autopilot. + MAV_ESTIMATOR_TYPE_AUTOPILOT MAV_ESTIMATOR_TYPE = 8 +) + +var labels_MAV_ESTIMATOR_TYPE = map[MAV_ESTIMATOR_TYPE]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAV_ESTIMATOR_TYPE) MarshalText() ([]byte, error) { + if l, ok := labels_MAV_ESTIMATOR_TYPE[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAV_ESTIMATOR_TYPE = map[string]MAV_ESTIMATOR_TYPE{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAV_ESTIMATOR_TYPE) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAV_ESTIMATOR_TYPE[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAV_ESTIMATOR_TYPE) String() string { + if l, ok := labels_MAV_ESTIMATOR_TYPE[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/all/enum_mav_event_current_sequence_flags.go b/pkg/dialects/all/enum_mav_event_current_sequence_flags.go new file mode 100644 index 000000000..6105234a2 --- /dev/null +++ b/pkg/dialects/all/enum_mav_event_current_sequence_flags.go @@ -0,0 +1,44 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package all + +import ( + "errors" +) + +// Flags for CURRENT_EVENT_SEQUENCE. +type MAV_EVENT_CURRENT_SEQUENCE_FLAGS int + +const ( + // A sequence reset has happened (e.g. vehicle reboot). + MAV_EVENT_CURRENT_SEQUENCE_FLAGS_RESET MAV_EVENT_CURRENT_SEQUENCE_FLAGS = 1 +) + +var labels_MAV_EVENT_CURRENT_SEQUENCE_FLAGS = map[MAV_EVENT_CURRENT_SEQUENCE_FLAGS]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAV_EVENT_CURRENT_SEQUENCE_FLAGS) MarshalText() ([]byte, error) { + if l, ok := labels_MAV_EVENT_CURRENT_SEQUENCE_FLAGS[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAV_EVENT_CURRENT_SEQUENCE_FLAGS = map[string]MAV_EVENT_CURRENT_SEQUENCE_FLAGS{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAV_EVENT_CURRENT_SEQUENCE_FLAGS) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAV_EVENT_CURRENT_SEQUENCE_FLAGS[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAV_EVENT_CURRENT_SEQUENCE_FLAGS) String() string { + if l, ok := labels_MAV_EVENT_CURRENT_SEQUENCE_FLAGS[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/all/enum_mav_event_error_reason.go b/pkg/dialects/all/enum_mav_event_error_reason.go new file mode 100644 index 000000000..c3c911ac7 --- /dev/null +++ b/pkg/dialects/all/enum_mav_event_error_reason.go @@ -0,0 +1,44 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package all + +import ( + "errors" +) + +// Reason for an event error response. +type MAV_EVENT_ERROR_REASON int + +const ( + // The requested event is not available (anymore). + MAV_EVENT_ERROR_REASON_UNAVAILABLE MAV_EVENT_ERROR_REASON = 0 +) + +var labels_MAV_EVENT_ERROR_REASON = map[MAV_EVENT_ERROR_REASON]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAV_EVENT_ERROR_REASON) MarshalText() ([]byte, error) { + if l, ok := labels_MAV_EVENT_ERROR_REASON[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAV_EVENT_ERROR_REASON = map[string]MAV_EVENT_ERROR_REASON{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAV_EVENT_ERROR_REASON) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAV_EVENT_ERROR_REASON[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAV_EVENT_ERROR_REASON) String() string { + if l, ok := labels_MAV_EVENT_ERROR_REASON[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/all/enum_mav_frame.go b/pkg/dialects/all/enum_mav_frame.go new file mode 100644 index 000000000..c81c32a6e --- /dev/null +++ b/pkg/dialects/all/enum_mav_frame.go @@ -0,0 +1,100 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package all + +import ( + "errors" +) + +// Co-ordinate frames used by MAVLink. Not all frames are supported by all commands, messages, or vehicles. +// +// Global frames use the following naming conventions: +// - "GLOBAL": Global co-ordinate frame with WGS84 latitude/longitude and altitude positive over mean sea level (MSL) by default. +// The following modifiers may be used with "GLOBAL": +// - "RELATIVE_ALT": Altitude is relative to the vehicle home position rather than MSL. +// - "TERRAIN_ALT": Altitude is relative to ground level rather than MSL. +// - "INT": Latitude/longitude (in degrees) are scaled by multiplying by 1E7. +// +// Local frames use the following naming conventions: +// - "LOCAL": Origin of local frame is fixed relative to earth. Unless otherwise specified this origin is the origin of the vehicle position-estimator ("EKF"). +// - "BODY": Origin of local frame travels with the vehicle. NOTE, "BODY" does NOT indicate alignment of frame axis with vehicle attitude. +// - "OFFSET": Deprecated synonym for "BODY" (origin travels with the vehicle). Not to be used for new frames. +// +// Some deprecated frames do not follow these conventions (e.g. MAV_FRAME_BODY_NED and MAV_FRAME_BODY_OFFSET_NED). +type MAV_FRAME int + +const ( + // Global (WGS84) coordinate frame + MSL altitude. First value / x: latitude, second value / y: longitude, third value / z: positive altitude over mean sea level (MSL). + MAV_FRAME_GLOBAL MAV_FRAME = 0 + // NED local tangent frame (x: North, y: East, z: Down) with origin fixed relative to earth. + MAV_FRAME_LOCAL_NED MAV_FRAME = 1 + // NOT a coordinate frame, indicates a mission command. + MAV_FRAME_MISSION MAV_FRAME = 2 + // Global (WGS84) coordinate frame + altitude relative to the home position. First value / x: latitude, second value / y: longitude, third value / z: positive altitude with 0 being at the altitude of the home location. + MAV_FRAME_GLOBAL_RELATIVE_ALT MAV_FRAME = 3 + // ENU local tangent frame (x: East, y: North, z: Up) with origin fixed relative to earth. + MAV_FRAME_LOCAL_ENU MAV_FRAME = 4 + // Global (WGS84) coordinate frame (scaled) + MSL altitude. First value / x: latitude in degrees*1E7, second value / y: longitude in degrees*1E7, third value / z: positive altitude over mean sea level (MSL). + MAV_FRAME_GLOBAL_INT MAV_FRAME = 5 + // Global (WGS84) coordinate frame (scaled) + altitude relative to the home position. First value / x: latitude in degrees*1E7, second value / y: longitude in degrees*1E7, third value / z: positive altitude with 0 being at the altitude of the home location. + MAV_FRAME_GLOBAL_RELATIVE_ALT_INT MAV_FRAME = 6 + // NED local tangent frame (x: North, y: East, z: Down) with origin that travels with the vehicle. + MAV_FRAME_LOCAL_OFFSET_NED MAV_FRAME = 7 + // Same as MAV_FRAME_LOCAL_NED when used to represent position values. Same as MAV_FRAME_BODY_FRD when used with velocity/accelaration values. + MAV_FRAME_BODY_NED MAV_FRAME = 8 + // This is the same as MAV_FRAME_BODY_FRD. + MAV_FRAME_BODY_OFFSET_NED MAV_FRAME = 9 + // Global (WGS84) coordinate frame with AGL altitude (at the waypoint coordinate). First value / x: latitude in degrees, second value / y: longitude in degrees, third value / z: positive altitude in meters with 0 being at ground level in terrain model. + MAV_FRAME_GLOBAL_TERRAIN_ALT MAV_FRAME = 10 + // Global (WGS84) coordinate frame (scaled) with AGL altitude (at the waypoint coordinate). First value / x: latitude in degrees*1E7, second value / y: longitude in degrees*1E7, third value / z: positive altitude in meters with 0 being at ground level in terrain model. + MAV_FRAME_GLOBAL_TERRAIN_ALT_INT MAV_FRAME = 11 + // FRD local tangent frame (x: Forward, y: Right, z: Down) with origin that travels with vehicle. The forward axis is aligned to the front of the vehicle in the horizontal plane. + MAV_FRAME_BODY_FRD MAV_FRAME = 12 + // MAV_FRAME_BODY_FLU - Body fixed frame of reference, Z-up (x: Forward, y: Left, z: Up). + MAV_FRAME_RESERVED_13 MAV_FRAME = 13 + // MAV_FRAME_MOCAP_NED - Odometry local coordinate frame of data given by a motion capture system, Z-down (x: North, y: East, z: Down). + MAV_FRAME_RESERVED_14 MAV_FRAME = 14 + // MAV_FRAME_MOCAP_ENU - Odometry local coordinate frame of data given by a motion capture system, Z-up (x: East, y: North, z: Up). + MAV_FRAME_RESERVED_15 MAV_FRAME = 15 + // MAV_FRAME_VISION_NED - Odometry local coordinate frame of data given by a vision estimation system, Z-down (x: North, y: East, z: Down). + MAV_FRAME_RESERVED_16 MAV_FRAME = 16 + // MAV_FRAME_VISION_ENU - Odometry local coordinate frame of data given by a vision estimation system, Z-up (x: East, y: North, z: Up). + MAV_FRAME_RESERVED_17 MAV_FRAME = 17 + // MAV_FRAME_ESTIM_NED - Odometry local coordinate frame of data given by an estimator running onboard the vehicle, Z-down (x: North, y: East, z: Down). + MAV_FRAME_RESERVED_18 MAV_FRAME = 18 + // MAV_FRAME_ESTIM_ENU - Odometry local coordinate frame of data given by an estimator running onboard the vehicle, Z-up (x: East, y: North, z: Up). + MAV_FRAME_RESERVED_19 MAV_FRAME = 19 + // FRD local tangent frame (x: Forward, y: Right, z: Down) with origin fixed relative to earth. The forward axis is aligned to the front of the vehicle in the horizontal plane. + MAV_FRAME_LOCAL_FRD MAV_FRAME = 20 + // FLU local tangent frame (x: Forward, y: Left, z: Up) with origin fixed relative to earth. The forward axis is aligned to the front of the vehicle in the horizontal plane. + MAV_FRAME_LOCAL_FLU MAV_FRAME = 21 +) + +var labels_MAV_FRAME = map[MAV_FRAME]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAV_FRAME) MarshalText() ([]byte, error) { + if l, ok := labels_MAV_FRAME[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAV_FRAME = map[string]MAV_FRAME{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAV_FRAME) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAV_FRAME[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAV_FRAME) String() string { + if l, ok := labels_MAV_FRAME[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/all/enum_mav_generator_status_flag.go b/pkg/dialects/all/enum_mav_generator_status_flag.go new file mode 100644 index 000000000..41566d338 --- /dev/null +++ b/pkg/dialects/all/enum_mav_generator_status_flag.go @@ -0,0 +1,88 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package all + +import ( + "errors" +) + +// Flags to report status/failure cases for a power generator (used in GENERATOR_STATUS). Note that FAULTS are conditions that cause the generator to fail. Warnings are conditions that require attention before the next use (they indicate the system is not operating properly). +type MAV_GENERATOR_STATUS_FLAG int + +const ( + // Generator is off. + MAV_GENERATOR_STATUS_FLAG_OFF MAV_GENERATOR_STATUS_FLAG = 1 + // Generator is ready to start generating power. + MAV_GENERATOR_STATUS_FLAG_READY MAV_GENERATOR_STATUS_FLAG = 2 + // Generator is generating power. + MAV_GENERATOR_STATUS_FLAG_GENERATING MAV_GENERATOR_STATUS_FLAG = 4 + // Generator is charging the batteries (generating enough power to charge and provide the load). + MAV_GENERATOR_STATUS_FLAG_CHARGING MAV_GENERATOR_STATUS_FLAG = 8 + // Generator is operating at a reduced maximum power. + MAV_GENERATOR_STATUS_FLAG_REDUCED_POWER MAV_GENERATOR_STATUS_FLAG = 16 + // Generator is providing the maximum output. + MAV_GENERATOR_STATUS_FLAG_MAXPOWER MAV_GENERATOR_STATUS_FLAG = 32 + // Generator is near the maximum operating temperature, cooling is insufficient. + MAV_GENERATOR_STATUS_FLAG_OVERTEMP_WARNING MAV_GENERATOR_STATUS_FLAG = 64 + // Generator hit the maximum operating temperature and shutdown. + MAV_GENERATOR_STATUS_FLAG_OVERTEMP_FAULT MAV_GENERATOR_STATUS_FLAG = 128 + // Power electronics are near the maximum operating temperature, cooling is insufficient. + MAV_GENERATOR_STATUS_FLAG_ELECTRONICS_OVERTEMP_WARNING MAV_GENERATOR_STATUS_FLAG = 256 + // Power electronics hit the maximum operating temperature and shutdown. + MAV_GENERATOR_STATUS_FLAG_ELECTRONICS_OVERTEMP_FAULT MAV_GENERATOR_STATUS_FLAG = 512 + // Power electronics experienced a fault and shutdown. + MAV_GENERATOR_STATUS_FLAG_ELECTRONICS_FAULT MAV_GENERATOR_STATUS_FLAG = 1024 + // The power source supplying the generator failed e.g. mechanical generator stopped, tether is no longer providing power, solar cell is in shade, hydrogen reaction no longer happening. + MAV_GENERATOR_STATUS_FLAG_POWERSOURCE_FAULT MAV_GENERATOR_STATUS_FLAG = 2048 + // Generator controller having communication problems. + MAV_GENERATOR_STATUS_FLAG_COMMUNICATION_WARNING MAV_GENERATOR_STATUS_FLAG = 4096 + // Power electronic or generator cooling system error. + MAV_GENERATOR_STATUS_FLAG_COOLING_WARNING MAV_GENERATOR_STATUS_FLAG = 8192 + // Generator controller power rail experienced a fault. + MAV_GENERATOR_STATUS_FLAG_POWER_RAIL_FAULT MAV_GENERATOR_STATUS_FLAG = 16384 + // Generator controller exceeded the overcurrent threshold and shutdown to prevent damage. + MAV_GENERATOR_STATUS_FLAG_OVERCURRENT_FAULT MAV_GENERATOR_STATUS_FLAG = 32768 + // Generator controller detected a high current going into the batteries and shutdown to prevent battery damage. + MAV_GENERATOR_STATUS_FLAG_BATTERY_OVERCHARGE_CURRENT_FAULT MAV_GENERATOR_STATUS_FLAG = 65536 + // Generator controller exceeded it's overvoltage threshold and shutdown to prevent it exceeding the voltage rating. + MAV_GENERATOR_STATUS_FLAG_OVERVOLTAGE_FAULT MAV_GENERATOR_STATUS_FLAG = 131072 + // Batteries are under voltage (generator will not start). + MAV_GENERATOR_STATUS_FLAG_BATTERY_UNDERVOLT_FAULT MAV_GENERATOR_STATUS_FLAG = 262144 + // Generator start is inhibited by e.g. a safety switch. + MAV_GENERATOR_STATUS_FLAG_START_INHIBITED MAV_GENERATOR_STATUS_FLAG = 524288 + // Generator requires maintenance. + MAV_GENERATOR_STATUS_FLAG_MAINTENANCE_REQUIRED MAV_GENERATOR_STATUS_FLAG = 1048576 + // Generator is not ready to generate yet. + MAV_GENERATOR_STATUS_FLAG_WARMING_UP MAV_GENERATOR_STATUS_FLAG = 2097152 + // Generator is idle. + MAV_GENERATOR_STATUS_FLAG_IDLE MAV_GENERATOR_STATUS_FLAG = 4194304 +) + +var labels_MAV_GENERATOR_STATUS_FLAG = map[MAV_GENERATOR_STATUS_FLAG]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAV_GENERATOR_STATUS_FLAG) MarshalText() ([]byte, error) { + if l, ok := labels_MAV_GENERATOR_STATUS_FLAG[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAV_GENERATOR_STATUS_FLAG = map[string]MAV_GENERATOR_STATUS_FLAG{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAV_GENERATOR_STATUS_FLAG) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAV_GENERATOR_STATUS_FLAG[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAV_GENERATOR_STATUS_FLAG) String() string { + if l, ok := labels_MAV_GENERATOR_STATUS_FLAG[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/all/enum_mav_goto.go b/pkg/dialects/all/enum_mav_goto.go new file mode 100644 index 000000000..e88926608 --- /dev/null +++ b/pkg/dialects/all/enum_mav_goto.go @@ -0,0 +1,50 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package all + +import ( + "errors" +) + +// Actions that may be specified in MAV_CMD_OVERRIDE_GOTO to override mission execution. +type MAV_GOTO int + +const ( + // Hold at the current position. + MAV_GOTO_DO_HOLD MAV_GOTO = 0 + // Continue with the next item in mission execution. + MAV_GOTO_DO_CONTINUE MAV_GOTO = 1 + // Hold at the current position of the system + MAV_GOTO_HOLD_AT_CURRENT_POSITION MAV_GOTO = 2 + // Hold at the position specified in the parameters of the DO_HOLD action + MAV_GOTO_HOLD_AT_SPECIFIED_POSITION MAV_GOTO = 3 +) + +var labels_MAV_GOTO = map[MAV_GOTO]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAV_GOTO) MarshalText() ([]byte, error) { + if l, ok := labels_MAV_GOTO[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAV_GOTO = map[string]MAV_GOTO{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAV_GOTO) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAV_GOTO[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAV_GOTO) String() string { + if l, ok := labels_MAV_GOTO[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/all/enum_mav_landed_state.go b/pkg/dialects/all/enum_mav_landed_state.go new file mode 100644 index 000000000..fbe645939 --- /dev/null +++ b/pkg/dialects/all/enum_mav_landed_state.go @@ -0,0 +1,52 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package all + +import ( + "errors" +) + +// Enumeration of landed detector states +type MAV_LANDED_STATE int + +const ( + // MAV landed state is unknown + MAV_LANDED_STATE_UNDEFINED MAV_LANDED_STATE = 0 + // MAV is landed (on ground) + MAV_LANDED_STATE_ON_GROUND MAV_LANDED_STATE = 1 + // MAV is in air + MAV_LANDED_STATE_IN_AIR MAV_LANDED_STATE = 2 + // MAV currently taking off + MAV_LANDED_STATE_TAKEOFF MAV_LANDED_STATE = 3 + // MAV currently landing + MAV_LANDED_STATE_LANDING MAV_LANDED_STATE = 4 +) + +var labels_MAV_LANDED_STATE = map[MAV_LANDED_STATE]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAV_LANDED_STATE) MarshalText() ([]byte, error) { + if l, ok := labels_MAV_LANDED_STATE[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAV_LANDED_STATE = map[string]MAV_LANDED_STATE{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAV_LANDED_STATE) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAV_LANDED_STATE[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAV_LANDED_STATE) String() string { + if l, ok := labels_MAV_LANDED_STATE[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/all/enum_mav_mission_result.go b/pkg/dialects/all/enum_mav_mission_result.go new file mode 100644 index 000000000..4774bf9ea --- /dev/null +++ b/pkg/dialects/all/enum_mav_mission_result.go @@ -0,0 +1,74 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package all + +import ( + "errors" +) + +// Result of mission operation (in a MISSION_ACK message). +type MAV_MISSION_RESULT int + +const ( + // mission accepted OK + MAV_MISSION_ACCEPTED MAV_MISSION_RESULT = 0 + // Generic error / not accepting mission commands at all right now. + MAV_MISSION_ERROR MAV_MISSION_RESULT = 1 + // Coordinate frame is not supported. + MAV_MISSION_UNSUPPORTED_FRAME MAV_MISSION_RESULT = 2 + // Command is not supported. + MAV_MISSION_UNSUPPORTED MAV_MISSION_RESULT = 3 + // Mission items exceed storage space. + MAV_MISSION_NO_SPACE MAV_MISSION_RESULT = 4 + // One of the parameters has an invalid value. + MAV_MISSION_INVALID MAV_MISSION_RESULT = 5 + // param1 has an invalid value. + MAV_MISSION_INVALID_PARAM1 MAV_MISSION_RESULT = 6 + // param2 has an invalid value. + MAV_MISSION_INVALID_PARAM2 MAV_MISSION_RESULT = 7 + // param3 has an invalid value. + MAV_MISSION_INVALID_PARAM3 MAV_MISSION_RESULT = 8 + // param4 has an invalid value. + MAV_MISSION_INVALID_PARAM4 MAV_MISSION_RESULT = 9 + // x / param5 has an invalid value. + MAV_MISSION_INVALID_PARAM5_X MAV_MISSION_RESULT = 10 + // y / param6 has an invalid value. + MAV_MISSION_INVALID_PARAM6_Y MAV_MISSION_RESULT = 11 + // z / param7 has an invalid value. + MAV_MISSION_INVALID_PARAM7 MAV_MISSION_RESULT = 12 + // Mission item received out of sequence + MAV_MISSION_INVALID_SEQUENCE MAV_MISSION_RESULT = 13 + // Not accepting any mission commands from this communication partner. + MAV_MISSION_DENIED MAV_MISSION_RESULT = 14 + // Current mission operation cancelled (e.g. mission upload, mission download). + MAV_MISSION_OPERATION_CANCELLED MAV_MISSION_RESULT = 15 +) + +var labels_MAV_MISSION_RESULT = map[MAV_MISSION_RESULT]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAV_MISSION_RESULT) MarshalText() ([]byte, error) { + if l, ok := labels_MAV_MISSION_RESULT[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAV_MISSION_RESULT = map[string]MAV_MISSION_RESULT{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAV_MISSION_RESULT) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAV_MISSION_RESULT[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAV_MISSION_RESULT) String() string { + if l, ok := labels_MAV_MISSION_RESULT[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/all/enum_mav_mission_type.go b/pkg/dialects/all/enum_mav_mission_type.go new file mode 100644 index 000000000..b13c27b4f --- /dev/null +++ b/pkg/dialects/all/enum_mav_mission_type.go @@ -0,0 +1,50 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package all + +import ( + "errors" +) + +// Type of mission items being requested/sent in mission protocol. +type MAV_MISSION_TYPE int + +const ( + // Items are mission commands for main mission. + MAV_MISSION_TYPE_MISSION MAV_MISSION_TYPE = 0 + // Specifies GeoFence area(s). Items are MAV_CMD_NAV_FENCE_ GeoFence items. + MAV_MISSION_TYPE_FENCE MAV_MISSION_TYPE = 1 + // Specifies the rally points for the vehicle. Rally points are alternative RTL points. Items are MAV_CMD_NAV_RALLY_POINT rally point items. + MAV_MISSION_TYPE_RALLY MAV_MISSION_TYPE = 2 + // Only used in MISSION_CLEAR_ALL to clear all mission types. + MAV_MISSION_TYPE_ALL MAV_MISSION_TYPE = 255 +) + +var labels_MAV_MISSION_TYPE = map[MAV_MISSION_TYPE]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAV_MISSION_TYPE) MarshalText() ([]byte, error) { + if l, ok := labels_MAV_MISSION_TYPE[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAV_MISSION_TYPE = map[string]MAV_MISSION_TYPE{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAV_MISSION_TYPE) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAV_MISSION_TYPE[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAV_MISSION_TYPE) String() string { + if l, ok := labels_MAV_MISSION_TYPE[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/all/enum_mav_mode.go b/pkg/dialects/all/enum_mav_mode.go new file mode 100644 index 000000000..62b15d91c --- /dev/null +++ b/pkg/dialects/all/enum_mav_mode.go @@ -0,0 +1,65 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package all + +import ( + "errors" +) + +// These defines are predefined OR-combined mode flags. There is no need to use values from this enum, but it +// simplifies the use of the mode flags. Note that manual input is enabled in all modes as a safety override. +type MAV_MODE int + +const ( + // System is not ready to fly, booting, calibrating, etc. No flag is set. + MAV_MODE_PREFLIGHT MAV_MODE = 0 + // System is allowed to be active, under assisted RC control. + MAV_MODE_STABILIZE_DISARMED MAV_MODE = 80 + // System is allowed to be active, under assisted RC control. + MAV_MODE_STABILIZE_ARMED MAV_MODE = 208 + // System is allowed to be active, under manual (RC) control, no stabilization + MAV_MODE_MANUAL_DISARMED MAV_MODE = 64 + // System is allowed to be active, under manual (RC) control, no stabilization + MAV_MODE_MANUAL_ARMED MAV_MODE = 192 + // System is allowed to be active, under autonomous control, manual setpoint + MAV_MODE_GUIDED_DISARMED MAV_MODE = 88 + // System is allowed to be active, under autonomous control, manual setpoint + MAV_MODE_GUIDED_ARMED MAV_MODE = 216 + // System is allowed to be active, under autonomous control and navigation (the trajectory is decided onboard and not pre-programmed by waypoints) + MAV_MODE_AUTO_DISARMED MAV_MODE = 92 + // System is allowed to be active, under autonomous control and navigation (the trajectory is decided onboard and not pre-programmed by waypoints) + MAV_MODE_AUTO_ARMED MAV_MODE = 220 + // UNDEFINED mode. This solely depends on the autopilot - use with caution, intended for developers only. + MAV_MODE_TEST_DISARMED MAV_MODE = 66 + // UNDEFINED mode. This solely depends on the autopilot - use with caution, intended for developers only. + MAV_MODE_TEST_ARMED MAV_MODE = 194 +) + +var labels_MAV_MODE = map[MAV_MODE]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAV_MODE) MarshalText() ([]byte, error) { + if l, ok := labels_MAV_MODE[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAV_MODE = map[string]MAV_MODE{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAV_MODE) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAV_MODE[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAV_MODE) String() string { + if l, ok := labels_MAV_MODE[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/all/enum_mav_mode_flag.go b/pkg/dialects/all/enum_mav_mode_flag.go new file mode 100644 index 000000000..4278f6205 --- /dev/null +++ b/pkg/dialects/all/enum_mav_mode_flag.go @@ -0,0 +1,58 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package all + +import ( + "errors" +) + +// These flags encode the MAV mode. +type MAV_MODE_FLAG int + +const ( + // 0b10000000 MAV safety set to armed. Motors are enabled / running / can start. Ready to fly. Additional note: this flag is to be ignore when sent in the command MAV_CMD_DO_SET_MODE and MAV_CMD_COMPONENT_ARM_DISARM shall be used instead. The flag can still be used to report the armed state. + MAV_MODE_FLAG_SAFETY_ARMED MAV_MODE_FLAG = 128 + // 0b01000000 remote control input is enabled. + MAV_MODE_FLAG_MANUAL_INPUT_ENABLED MAV_MODE_FLAG = 64 + // 0b00100000 hardware in the loop simulation. All motors / actuators are blocked, but internal software is full operational. + MAV_MODE_FLAG_HIL_ENABLED MAV_MODE_FLAG = 32 + // 0b00010000 system stabilizes electronically its attitude (and optionally position). It needs however further control inputs to move around. + MAV_MODE_FLAG_STABILIZE_ENABLED MAV_MODE_FLAG = 16 + // 0b00001000 guided mode enabled, system flies waypoints / mission items. + MAV_MODE_FLAG_GUIDED_ENABLED MAV_MODE_FLAG = 8 + // 0b00000100 autonomous mode enabled, system finds its own goal positions. Guided flag can be set or not, depends on the actual implementation. + MAV_MODE_FLAG_AUTO_ENABLED MAV_MODE_FLAG = 4 + // 0b00000010 system has a test mode enabled. This flag is intended for temporary system tests and should not be used for stable implementations. + MAV_MODE_FLAG_TEST_ENABLED MAV_MODE_FLAG = 2 + // 0b00000001 Reserved for future use. + MAV_MODE_FLAG_CUSTOM_MODE_ENABLED MAV_MODE_FLAG = 1 +) + +var labels_MAV_MODE_FLAG = map[MAV_MODE_FLAG]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAV_MODE_FLAG) MarshalText() ([]byte, error) { + if l, ok := labels_MAV_MODE_FLAG[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAV_MODE_FLAG = map[string]MAV_MODE_FLAG{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAV_MODE_FLAG) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAV_MODE_FLAG[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAV_MODE_FLAG) String() string { + if l, ok := labels_MAV_MODE_FLAG[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/all/enum_mav_mode_flag_decode_position.go b/pkg/dialects/all/enum_mav_mode_flag_decode_position.go new file mode 100644 index 000000000..45cea8ab9 --- /dev/null +++ b/pkg/dialects/all/enum_mav_mode_flag_decode_position.go @@ -0,0 +1,58 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package all + +import ( + "errors" +) + +// These values encode the bit positions of the decode position. These values can be used to read the value of a flag bit by combining the base_mode variable with AND with the flag position value. The result will be either 0 or 1, depending on if the flag is set or not. +type MAV_MODE_FLAG_DECODE_POSITION int + +const ( + // First bit: 10000000 + MAV_MODE_FLAG_DECODE_POSITION_SAFETY MAV_MODE_FLAG_DECODE_POSITION = 128 + // Second bit: 01000000 + MAV_MODE_FLAG_DECODE_POSITION_MANUAL MAV_MODE_FLAG_DECODE_POSITION = 64 + // Third bit: 00100000 + MAV_MODE_FLAG_DECODE_POSITION_HIL MAV_MODE_FLAG_DECODE_POSITION = 32 + // Fourth bit: 00010000 + MAV_MODE_FLAG_DECODE_POSITION_STABILIZE MAV_MODE_FLAG_DECODE_POSITION = 16 + // Fifth bit: 00001000 + MAV_MODE_FLAG_DECODE_POSITION_GUIDED MAV_MODE_FLAG_DECODE_POSITION = 8 + // Sixth bit: 00000100 + MAV_MODE_FLAG_DECODE_POSITION_AUTO MAV_MODE_FLAG_DECODE_POSITION = 4 + // Seventh bit: 00000010 + MAV_MODE_FLAG_DECODE_POSITION_TEST MAV_MODE_FLAG_DECODE_POSITION = 2 + // Eighth bit: 00000001 + MAV_MODE_FLAG_DECODE_POSITION_CUSTOM_MODE MAV_MODE_FLAG_DECODE_POSITION = 1 +) + +var labels_MAV_MODE_FLAG_DECODE_POSITION = map[MAV_MODE_FLAG_DECODE_POSITION]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAV_MODE_FLAG_DECODE_POSITION) MarshalText() ([]byte, error) { + if l, ok := labels_MAV_MODE_FLAG_DECODE_POSITION[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAV_MODE_FLAG_DECODE_POSITION = map[string]MAV_MODE_FLAG_DECODE_POSITION{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAV_MODE_FLAG_DECODE_POSITION) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAV_MODE_FLAG_DECODE_POSITION[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAV_MODE_FLAG_DECODE_POSITION) String() string { + if l, ok := labels_MAV_MODE_FLAG_DECODE_POSITION[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/all/enum_mav_mode_gimbal.go b/pkg/dialects/all/enum_mav_mode_gimbal.go new file mode 100644 index 000000000..3715ca62d --- /dev/null +++ b/pkg/dialects/all/enum_mav_mode_gimbal.go @@ -0,0 +1,55 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package all + +import ( + "errors" +) + +type MAV_MODE_GIMBAL int + +const ( + // Gimbal is powered on but has not started initializing yet. + MAV_MODE_GIMBAL_UNINITIALIZED MAV_MODE_GIMBAL = 0 + // Gimbal is currently running calibration on the pitch axis. + MAV_MODE_GIMBAL_CALIBRATING_PITCH MAV_MODE_GIMBAL = 1 + // Gimbal is currently running calibration on the roll axis. + MAV_MODE_GIMBAL_CALIBRATING_ROLL MAV_MODE_GIMBAL = 2 + // Gimbal is currently running calibration on the yaw axis. + MAV_MODE_GIMBAL_CALIBRATING_YAW MAV_MODE_GIMBAL = 3 + // Gimbal has finished calibrating and initializing, but is relaxed pending reception of first rate command from copter. + MAV_MODE_GIMBAL_INITIALIZED MAV_MODE_GIMBAL = 4 + // Gimbal is actively stabilizing. + MAV_MODE_GIMBAL_ACTIVE MAV_MODE_GIMBAL = 5 + // Gimbal is relaxed because it missed more than 10 expected rate command messages in a row. Gimbal will move back to active mode when it receives a new rate command. + MAV_MODE_GIMBAL_RATE_CMD_TIMEOUT MAV_MODE_GIMBAL = 6 +) + +var labels_MAV_MODE_GIMBAL = map[MAV_MODE_GIMBAL]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAV_MODE_GIMBAL) MarshalText() ([]byte, error) { + if l, ok := labels_MAV_MODE_GIMBAL[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAV_MODE_GIMBAL = map[string]MAV_MODE_GIMBAL{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAV_MODE_GIMBAL) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAV_MODE_GIMBAL[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAV_MODE_GIMBAL) String() string { + if l, ok := labels_MAV_MODE_GIMBAL[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/all/enum_mav_mount_mode.go b/pkg/dialects/all/enum_mav_mount_mode.go new file mode 100644 index 000000000..86995bb83 --- /dev/null +++ b/pkg/dialects/all/enum_mav_mount_mode.go @@ -0,0 +1,56 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package all + +import ( + "errors" +) + +// Enumeration of possible mount operation modes. This message is used by obsolete/deprecated gimbal messages. +type MAV_MOUNT_MODE int + +const ( + // Load and keep safe position (Roll,Pitch,Yaw) from permant memory and stop stabilization + MAV_MOUNT_MODE_RETRACT MAV_MOUNT_MODE = 0 + // Load and keep neutral position (Roll,Pitch,Yaw) from permanent memory. + MAV_MOUNT_MODE_NEUTRAL MAV_MOUNT_MODE = 1 + // Load neutral position and start MAVLink Roll,Pitch,Yaw control with stabilization + MAV_MOUNT_MODE_MAVLINK_TARGETING MAV_MOUNT_MODE = 2 + // Load neutral position and start RC Roll,Pitch,Yaw control with stabilization + MAV_MOUNT_MODE_RC_TARGETING MAV_MOUNT_MODE = 3 + // Load neutral position and start to point to Lat,Lon,Alt + MAV_MOUNT_MODE_GPS_POINT MAV_MOUNT_MODE = 4 + // Gimbal tracks system with specified system ID + MAV_MOUNT_MODE_SYSID_TARGET MAV_MOUNT_MODE = 5 + // Gimbal tracks home location + MAV_MOUNT_MODE_HOME_LOCATION MAV_MOUNT_MODE = 6 +) + +var labels_MAV_MOUNT_MODE = map[MAV_MOUNT_MODE]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAV_MOUNT_MODE) MarshalText() ([]byte, error) { + if l, ok := labels_MAV_MOUNT_MODE[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAV_MOUNT_MODE = map[string]MAV_MOUNT_MODE{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAV_MOUNT_MODE) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAV_MOUNT_MODE[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAV_MOUNT_MODE) String() string { + if l, ok := labels_MAV_MOUNT_MODE[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/all/enum_mav_odid_auth_type.go b/pkg/dialects/all/enum_mav_odid_auth_type.go new file mode 100644 index 000000000..578dc6c5a --- /dev/null +++ b/pkg/dialects/all/enum_mav_odid_auth_type.go @@ -0,0 +1,53 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package all + +import ( + "errors" +) + +type MAV_ODID_AUTH_TYPE int + +const ( + // No authentication type is specified. + MAV_ODID_AUTH_TYPE_NONE MAV_ODID_AUTH_TYPE = 0 + // Signature for the UAS (Unmanned Aircraft System) ID. + MAV_ODID_AUTH_TYPE_UAS_ID_SIGNATURE MAV_ODID_AUTH_TYPE = 1 + // Signature for the Operator ID. + MAV_ODID_AUTH_TYPE_OPERATOR_ID_SIGNATURE MAV_ODID_AUTH_TYPE = 2 + // Signature for the entire message set. + MAV_ODID_AUTH_TYPE_MESSAGE_SET_SIGNATURE MAV_ODID_AUTH_TYPE = 3 + // Authentication is provided by Network Remote ID. + MAV_ODID_AUTH_TYPE_NETWORK_REMOTE_ID MAV_ODID_AUTH_TYPE = 4 + // The exact authentication type is indicated by the first byte of authentication_data and these type values are managed by ICAO. + MAV_ODID_AUTH_TYPE_SPECIFIC_AUTHENTICATION MAV_ODID_AUTH_TYPE = 5 +) + +var labels_MAV_ODID_AUTH_TYPE = map[MAV_ODID_AUTH_TYPE]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAV_ODID_AUTH_TYPE) MarshalText() ([]byte, error) { + if l, ok := labels_MAV_ODID_AUTH_TYPE[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAV_ODID_AUTH_TYPE = map[string]MAV_ODID_AUTH_TYPE{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAV_ODID_AUTH_TYPE) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAV_ODID_AUTH_TYPE[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAV_ODID_AUTH_TYPE) String() string { + if l, ok := labels_MAV_ODID_AUTH_TYPE[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/all/enum_mav_odid_category_eu.go b/pkg/dialects/all/enum_mav_odid_category_eu.go new file mode 100644 index 000000000..ae456f7f1 --- /dev/null +++ b/pkg/dialects/all/enum_mav_odid_category_eu.go @@ -0,0 +1,49 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package all + +import ( + "errors" +) + +type MAV_ODID_CATEGORY_EU int + +const ( + // The category for the UA, according to the EU specification, is undeclared. + MAV_ODID_CATEGORY_EU_UNDECLARED MAV_ODID_CATEGORY_EU = 0 + // The category for the UA, according to the EU specification, is the Open category. + MAV_ODID_CATEGORY_EU_OPEN MAV_ODID_CATEGORY_EU = 1 + // The category for the UA, according to the EU specification, is the Specific category. + MAV_ODID_CATEGORY_EU_SPECIFIC MAV_ODID_CATEGORY_EU = 2 + // The category for the UA, according to the EU specification, is the Certified category. + MAV_ODID_CATEGORY_EU_CERTIFIED MAV_ODID_CATEGORY_EU = 3 +) + +var labels_MAV_ODID_CATEGORY_EU = map[MAV_ODID_CATEGORY_EU]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAV_ODID_CATEGORY_EU) MarshalText() ([]byte, error) { + if l, ok := labels_MAV_ODID_CATEGORY_EU[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAV_ODID_CATEGORY_EU = map[string]MAV_ODID_CATEGORY_EU{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAV_ODID_CATEGORY_EU) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAV_ODID_CATEGORY_EU[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAV_ODID_CATEGORY_EU) String() string { + if l, ok := labels_MAV_ODID_CATEGORY_EU[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/all/enum_mav_odid_class_eu.go b/pkg/dialects/all/enum_mav_odid_class_eu.go new file mode 100644 index 000000000..ab1ac0ba3 --- /dev/null +++ b/pkg/dialects/all/enum_mav_odid_class_eu.go @@ -0,0 +1,57 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package all + +import ( + "errors" +) + +type MAV_ODID_CLASS_EU int + +const ( + // The class for the UA, according to the EU specification, is undeclared. + MAV_ODID_CLASS_EU_UNDECLARED MAV_ODID_CLASS_EU = 0 + // The class for the UA, according to the EU specification, is Class 0. + MAV_ODID_CLASS_EU_CLASS_0 MAV_ODID_CLASS_EU = 1 + // The class for the UA, according to the EU specification, is Class 1. + MAV_ODID_CLASS_EU_CLASS_1 MAV_ODID_CLASS_EU = 2 + // The class for the UA, according to the EU specification, is Class 2. + MAV_ODID_CLASS_EU_CLASS_2 MAV_ODID_CLASS_EU = 3 + // The class for the UA, according to the EU specification, is Class 3. + MAV_ODID_CLASS_EU_CLASS_3 MAV_ODID_CLASS_EU = 4 + // The class for the UA, according to the EU specification, is Class 4. + MAV_ODID_CLASS_EU_CLASS_4 MAV_ODID_CLASS_EU = 5 + // The class for the UA, according to the EU specification, is Class 5. + MAV_ODID_CLASS_EU_CLASS_5 MAV_ODID_CLASS_EU = 6 + // The class for the UA, according to the EU specification, is Class 6. + MAV_ODID_CLASS_EU_CLASS_6 MAV_ODID_CLASS_EU = 7 +) + +var labels_MAV_ODID_CLASS_EU = map[MAV_ODID_CLASS_EU]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAV_ODID_CLASS_EU) MarshalText() ([]byte, error) { + if l, ok := labels_MAV_ODID_CLASS_EU[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAV_ODID_CLASS_EU = map[string]MAV_ODID_CLASS_EU{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAV_ODID_CLASS_EU) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAV_ODID_CLASS_EU[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAV_ODID_CLASS_EU) String() string { + if l, ok := labels_MAV_ODID_CLASS_EU[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/all/enum_mav_odid_classification_type.go b/pkg/dialects/all/enum_mav_odid_classification_type.go new file mode 100644 index 000000000..656b4d656 --- /dev/null +++ b/pkg/dialects/all/enum_mav_odid_classification_type.go @@ -0,0 +1,45 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package all + +import ( + "errors" +) + +type MAV_ODID_CLASSIFICATION_TYPE int + +const ( + // The classification type for the UA is undeclared. + MAV_ODID_CLASSIFICATION_TYPE_UNDECLARED MAV_ODID_CLASSIFICATION_TYPE = 0 + // The classification type for the UA follows EU (European Union) specifications. + MAV_ODID_CLASSIFICATION_TYPE_EU MAV_ODID_CLASSIFICATION_TYPE = 1 +) + +var labels_MAV_ODID_CLASSIFICATION_TYPE = map[MAV_ODID_CLASSIFICATION_TYPE]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAV_ODID_CLASSIFICATION_TYPE) MarshalText() ([]byte, error) { + if l, ok := labels_MAV_ODID_CLASSIFICATION_TYPE[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAV_ODID_CLASSIFICATION_TYPE = map[string]MAV_ODID_CLASSIFICATION_TYPE{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAV_ODID_CLASSIFICATION_TYPE) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAV_ODID_CLASSIFICATION_TYPE[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAV_ODID_CLASSIFICATION_TYPE) String() string { + if l, ok := labels_MAV_ODID_CLASSIFICATION_TYPE[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/all/enum_mav_odid_desc_type.go b/pkg/dialects/all/enum_mav_odid_desc_type.go new file mode 100644 index 000000000..e9afbe54b --- /dev/null +++ b/pkg/dialects/all/enum_mav_odid_desc_type.go @@ -0,0 +1,43 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package all + +import ( + "errors" +) + +type MAV_ODID_DESC_TYPE int + +const ( + // Free-form text description of the purpose of the flight. + MAV_ODID_DESC_TYPE_TEXT MAV_ODID_DESC_TYPE = 0 +) + +var labels_MAV_ODID_DESC_TYPE = map[MAV_ODID_DESC_TYPE]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAV_ODID_DESC_TYPE) MarshalText() ([]byte, error) { + if l, ok := labels_MAV_ODID_DESC_TYPE[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAV_ODID_DESC_TYPE = map[string]MAV_ODID_DESC_TYPE{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAV_ODID_DESC_TYPE) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAV_ODID_DESC_TYPE[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAV_ODID_DESC_TYPE) String() string { + if l, ok := labels_MAV_ODID_DESC_TYPE[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/all/enum_mav_odid_height_ref.go b/pkg/dialects/all/enum_mav_odid_height_ref.go new file mode 100644 index 000000000..486095faa --- /dev/null +++ b/pkg/dialects/all/enum_mav_odid_height_ref.go @@ -0,0 +1,45 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package all + +import ( + "errors" +) + +type MAV_ODID_HEIGHT_REF int + +const ( + // The height field is relative to the take-off location. + MAV_ODID_HEIGHT_REF_OVER_TAKEOFF MAV_ODID_HEIGHT_REF = 0 + // The height field is relative to ground. + MAV_ODID_HEIGHT_REF_OVER_GROUND MAV_ODID_HEIGHT_REF = 1 +) + +var labels_MAV_ODID_HEIGHT_REF = map[MAV_ODID_HEIGHT_REF]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAV_ODID_HEIGHT_REF) MarshalText() ([]byte, error) { + if l, ok := labels_MAV_ODID_HEIGHT_REF[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAV_ODID_HEIGHT_REF = map[string]MAV_ODID_HEIGHT_REF{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAV_ODID_HEIGHT_REF) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAV_ODID_HEIGHT_REF[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAV_ODID_HEIGHT_REF) String() string { + if l, ok := labels_MAV_ODID_HEIGHT_REF[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/all/enum_mav_odid_hor_acc.go b/pkg/dialects/all/enum_mav_odid_hor_acc.go new file mode 100644 index 000000000..542941c6f --- /dev/null +++ b/pkg/dialects/all/enum_mav_odid_hor_acc.go @@ -0,0 +1,67 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package all + +import ( + "errors" +) + +type MAV_ODID_HOR_ACC int + +const ( + // The horizontal accuracy is unknown. + MAV_ODID_HOR_ACC_UNKNOWN MAV_ODID_HOR_ACC = 0 + // The horizontal accuracy is smaller than 10 Nautical Miles. 18.52 km. + MAV_ODID_HOR_ACC_10NM MAV_ODID_HOR_ACC = 1 + // The horizontal accuracy is smaller than 4 Nautical Miles. 7.408 km. + MAV_ODID_HOR_ACC_4NM MAV_ODID_HOR_ACC = 2 + // The horizontal accuracy is smaller than 2 Nautical Miles. 3.704 km. + MAV_ODID_HOR_ACC_2NM MAV_ODID_HOR_ACC = 3 + // The horizontal accuracy is smaller than 1 Nautical Miles. 1.852 km. + MAV_ODID_HOR_ACC_1NM MAV_ODID_HOR_ACC = 4 + // The horizontal accuracy is smaller than 0.5 Nautical Miles. 926 m. + MAV_ODID_HOR_ACC_0_5NM MAV_ODID_HOR_ACC = 5 + // The horizontal accuracy is smaller than 0.3 Nautical Miles. 555.6 m. + MAV_ODID_HOR_ACC_0_3NM MAV_ODID_HOR_ACC = 6 + // The horizontal accuracy is smaller than 0.1 Nautical Miles. 185.2 m. + MAV_ODID_HOR_ACC_0_1NM MAV_ODID_HOR_ACC = 7 + // The horizontal accuracy is smaller than 0.05 Nautical Miles. 92.6 m. + MAV_ODID_HOR_ACC_0_05NM MAV_ODID_HOR_ACC = 8 + // The horizontal accuracy is smaller than 30 meter. + MAV_ODID_HOR_ACC_30_METER MAV_ODID_HOR_ACC = 9 + // The horizontal accuracy is smaller than 10 meter. + MAV_ODID_HOR_ACC_10_METER MAV_ODID_HOR_ACC = 10 + // The horizontal accuracy is smaller than 3 meter. + MAV_ODID_HOR_ACC_3_METER MAV_ODID_HOR_ACC = 11 + // The horizontal accuracy is smaller than 1 meter. + MAV_ODID_HOR_ACC_1_METER MAV_ODID_HOR_ACC = 12 +) + +var labels_MAV_ODID_HOR_ACC = map[MAV_ODID_HOR_ACC]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAV_ODID_HOR_ACC) MarshalText() ([]byte, error) { + if l, ok := labels_MAV_ODID_HOR_ACC[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAV_ODID_HOR_ACC = map[string]MAV_ODID_HOR_ACC{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAV_ODID_HOR_ACC) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAV_ODID_HOR_ACC[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAV_ODID_HOR_ACC) String() string { + if l, ok := labels_MAV_ODID_HOR_ACC[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/all/enum_mav_odid_id_type.go b/pkg/dialects/all/enum_mav_odid_id_type.go new file mode 100644 index 000000000..456333dc4 --- /dev/null +++ b/pkg/dialects/all/enum_mav_odid_id_type.go @@ -0,0 +1,51 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package all + +import ( + "errors" +) + +type MAV_ODID_ID_TYPE int + +const ( + // No type defined. + MAV_ODID_ID_TYPE_NONE MAV_ODID_ID_TYPE = 0 + // Manufacturer Serial Number (ANSI/CTA-2063 format). + MAV_ODID_ID_TYPE_SERIAL_NUMBER MAV_ODID_ID_TYPE = 1 + // CAA (Civil Aviation Authority) registered ID. Format: [ICAO Country Code].[CAA Assigned ID]. + MAV_ODID_ID_TYPE_CAA_REGISTRATION_ID MAV_ODID_ID_TYPE = 2 + // UTM (Unmanned Traffic Management) assigned UUID (RFC4122). + MAV_ODID_ID_TYPE_UTM_ASSIGNED_UUID MAV_ODID_ID_TYPE = 3 + // A 20 byte ID for a specific flight/session. The exact ID type is indicated by the first byte of uas_id and these type values are managed by ICAO. + MAV_ODID_ID_TYPE_SPECIFIC_SESSION_ID MAV_ODID_ID_TYPE = 4 +) + +var labels_MAV_ODID_ID_TYPE = map[MAV_ODID_ID_TYPE]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAV_ODID_ID_TYPE) MarshalText() ([]byte, error) { + if l, ok := labels_MAV_ODID_ID_TYPE[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAV_ODID_ID_TYPE = map[string]MAV_ODID_ID_TYPE{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAV_ODID_ID_TYPE) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAV_ODID_ID_TYPE[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAV_ODID_ID_TYPE) String() string { + if l, ok := labels_MAV_ODID_ID_TYPE[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/all/enum_mav_odid_operator_id_type.go b/pkg/dialects/all/enum_mav_odid_operator_id_type.go new file mode 100644 index 000000000..b81fb790d --- /dev/null +++ b/pkg/dialects/all/enum_mav_odid_operator_id_type.go @@ -0,0 +1,43 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package all + +import ( + "errors" +) + +type MAV_ODID_OPERATOR_ID_TYPE int + +const ( + // CAA (Civil Aviation Authority) registered operator ID. + MAV_ODID_OPERATOR_ID_TYPE_CAA MAV_ODID_OPERATOR_ID_TYPE = 0 +) + +var labels_MAV_ODID_OPERATOR_ID_TYPE = map[MAV_ODID_OPERATOR_ID_TYPE]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAV_ODID_OPERATOR_ID_TYPE) MarshalText() ([]byte, error) { + if l, ok := labels_MAV_ODID_OPERATOR_ID_TYPE[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAV_ODID_OPERATOR_ID_TYPE = map[string]MAV_ODID_OPERATOR_ID_TYPE{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAV_ODID_OPERATOR_ID_TYPE) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAV_ODID_OPERATOR_ID_TYPE[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAV_ODID_OPERATOR_ID_TYPE) String() string { + if l, ok := labels_MAV_ODID_OPERATOR_ID_TYPE[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/all/enum_mav_odid_operator_location_type.go b/pkg/dialects/all/enum_mav_odid_operator_location_type.go new file mode 100644 index 000000000..f5e51e236 --- /dev/null +++ b/pkg/dialects/all/enum_mav_odid_operator_location_type.go @@ -0,0 +1,47 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package all + +import ( + "errors" +) + +type MAV_ODID_OPERATOR_LOCATION_TYPE int + +const ( + // The location of the operator is the same as the take-off location. + MAV_ODID_OPERATOR_LOCATION_TYPE_TAKEOFF MAV_ODID_OPERATOR_LOCATION_TYPE = 0 + // The location of the operator is based on live GNSS data. + MAV_ODID_OPERATOR_LOCATION_TYPE_LIVE_GNSS MAV_ODID_OPERATOR_LOCATION_TYPE = 1 + // The location of the operator is a fixed location. + MAV_ODID_OPERATOR_LOCATION_TYPE_FIXED MAV_ODID_OPERATOR_LOCATION_TYPE = 2 +) + +var labels_MAV_ODID_OPERATOR_LOCATION_TYPE = map[MAV_ODID_OPERATOR_LOCATION_TYPE]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAV_ODID_OPERATOR_LOCATION_TYPE) MarshalText() ([]byte, error) { + if l, ok := labels_MAV_ODID_OPERATOR_LOCATION_TYPE[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAV_ODID_OPERATOR_LOCATION_TYPE = map[string]MAV_ODID_OPERATOR_LOCATION_TYPE{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAV_ODID_OPERATOR_LOCATION_TYPE) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAV_ODID_OPERATOR_LOCATION_TYPE[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAV_ODID_OPERATOR_LOCATION_TYPE) String() string { + if l, ok := labels_MAV_ODID_OPERATOR_LOCATION_TYPE[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/all/enum_mav_odid_speed_acc.go b/pkg/dialects/all/enum_mav_odid_speed_acc.go new file mode 100644 index 000000000..aec75a083 --- /dev/null +++ b/pkg/dialects/all/enum_mav_odid_speed_acc.go @@ -0,0 +1,51 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package all + +import ( + "errors" +) + +type MAV_ODID_SPEED_ACC int + +const ( + // The speed accuracy is unknown. + MAV_ODID_SPEED_ACC_UNKNOWN MAV_ODID_SPEED_ACC = 0 + // The speed accuracy is smaller than 10 meters per second. + MAV_ODID_SPEED_ACC_10_METERS_PER_SECOND MAV_ODID_SPEED_ACC = 1 + // The speed accuracy is smaller than 3 meters per second. + MAV_ODID_SPEED_ACC_3_METERS_PER_SECOND MAV_ODID_SPEED_ACC = 2 + // The speed accuracy is smaller than 1 meters per second. + MAV_ODID_SPEED_ACC_1_METERS_PER_SECOND MAV_ODID_SPEED_ACC = 3 + // The speed accuracy is smaller than 0.3 meters per second. + MAV_ODID_SPEED_ACC_0_3_METERS_PER_SECOND MAV_ODID_SPEED_ACC = 4 +) + +var labels_MAV_ODID_SPEED_ACC = map[MAV_ODID_SPEED_ACC]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAV_ODID_SPEED_ACC) MarshalText() ([]byte, error) { + if l, ok := labels_MAV_ODID_SPEED_ACC[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAV_ODID_SPEED_ACC = map[string]MAV_ODID_SPEED_ACC{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAV_ODID_SPEED_ACC) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAV_ODID_SPEED_ACC[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAV_ODID_SPEED_ACC) String() string { + if l, ok := labels_MAV_ODID_SPEED_ACC[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/all/enum_mav_odid_status.go b/pkg/dialects/all/enum_mav_odid_status.go new file mode 100644 index 000000000..eaadfc169 --- /dev/null +++ b/pkg/dialects/all/enum_mav_odid_status.go @@ -0,0 +1,49 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package all + +import ( + "errors" +) + +type MAV_ODID_STATUS int + +const ( + // The status of the (UA) Unmanned Aircraft is undefined. + MAV_ODID_STATUS_UNDECLARED MAV_ODID_STATUS = 0 + // The UA is on the ground. + MAV_ODID_STATUS_GROUND MAV_ODID_STATUS = 1 + // The UA is in the air. + MAV_ODID_STATUS_AIRBORNE MAV_ODID_STATUS = 2 + // The UA is having an emergency. + MAV_ODID_STATUS_EMERGENCY MAV_ODID_STATUS = 3 +) + +var labels_MAV_ODID_STATUS = map[MAV_ODID_STATUS]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAV_ODID_STATUS) MarshalText() ([]byte, error) { + if l, ok := labels_MAV_ODID_STATUS[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAV_ODID_STATUS = map[string]MAV_ODID_STATUS{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAV_ODID_STATUS) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAV_ODID_STATUS[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAV_ODID_STATUS) String() string { + if l, ok := labels_MAV_ODID_STATUS[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/all/enum_mav_odid_time_acc.go b/pkg/dialects/all/enum_mav_odid_time_acc.go new file mode 100644 index 000000000..7c7b36202 --- /dev/null +++ b/pkg/dialects/all/enum_mav_odid_time_acc.go @@ -0,0 +1,73 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package all + +import ( + "errors" +) + +type MAV_ODID_TIME_ACC int + +const ( + // The timestamp accuracy is unknown. + MAV_ODID_TIME_ACC_UNKNOWN MAV_ODID_TIME_ACC = 0 + // The timestamp accuracy is smaller than or equal to 0.1 second. + MAV_ODID_TIME_ACC_0_1_SECOND MAV_ODID_TIME_ACC = 1 + // The timestamp accuracy is smaller than or equal to 0.2 second. + MAV_ODID_TIME_ACC_0_2_SECOND MAV_ODID_TIME_ACC = 2 + // The timestamp accuracy is smaller than or equal to 0.3 second. + MAV_ODID_TIME_ACC_0_3_SECOND MAV_ODID_TIME_ACC = 3 + // The timestamp accuracy is smaller than or equal to 0.4 second. + MAV_ODID_TIME_ACC_0_4_SECOND MAV_ODID_TIME_ACC = 4 + // The timestamp accuracy is smaller than or equal to 0.5 second. + MAV_ODID_TIME_ACC_0_5_SECOND MAV_ODID_TIME_ACC = 5 + // The timestamp accuracy is smaller than or equal to 0.6 second. + MAV_ODID_TIME_ACC_0_6_SECOND MAV_ODID_TIME_ACC = 6 + // The timestamp accuracy is smaller than or equal to 0.7 second. + MAV_ODID_TIME_ACC_0_7_SECOND MAV_ODID_TIME_ACC = 7 + // The timestamp accuracy is smaller than or equal to 0.8 second. + MAV_ODID_TIME_ACC_0_8_SECOND MAV_ODID_TIME_ACC = 8 + // The timestamp accuracy is smaller than or equal to 0.9 second. + MAV_ODID_TIME_ACC_0_9_SECOND MAV_ODID_TIME_ACC = 9 + // The timestamp accuracy is smaller than or equal to 1.0 second. + MAV_ODID_TIME_ACC_1_0_SECOND MAV_ODID_TIME_ACC = 10 + // The timestamp accuracy is smaller than or equal to 1.1 second. + MAV_ODID_TIME_ACC_1_1_SECOND MAV_ODID_TIME_ACC = 11 + // The timestamp accuracy is smaller than or equal to 1.2 second. + MAV_ODID_TIME_ACC_1_2_SECOND MAV_ODID_TIME_ACC = 12 + // The timestamp accuracy is smaller than or equal to 1.3 second. + MAV_ODID_TIME_ACC_1_3_SECOND MAV_ODID_TIME_ACC = 13 + // The timestamp accuracy is smaller than or equal to 1.4 second. + MAV_ODID_TIME_ACC_1_4_SECOND MAV_ODID_TIME_ACC = 14 + // The timestamp accuracy is smaller than or equal to 1.5 second. + MAV_ODID_TIME_ACC_1_5_SECOND MAV_ODID_TIME_ACC = 15 +) + +var labels_MAV_ODID_TIME_ACC = map[MAV_ODID_TIME_ACC]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAV_ODID_TIME_ACC) MarshalText() ([]byte, error) { + if l, ok := labels_MAV_ODID_TIME_ACC[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAV_ODID_TIME_ACC = map[string]MAV_ODID_TIME_ACC{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAV_ODID_TIME_ACC) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAV_ODID_TIME_ACC[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAV_ODID_TIME_ACC) String() string { + if l, ok := labels_MAV_ODID_TIME_ACC[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/all/enum_mav_odid_ua_type.go b/pkg/dialects/all/enum_mav_odid_ua_type.go new file mode 100644 index 000000000..288a1d6eb --- /dev/null +++ b/pkg/dialects/all/enum_mav_odid_ua_type.go @@ -0,0 +1,73 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package all + +import ( + "errors" +) + +type MAV_ODID_UA_TYPE int + +const ( + // No UA (Unmanned Aircraft) type defined. + MAV_ODID_UA_TYPE_NONE MAV_ODID_UA_TYPE = 0 + // Aeroplane/Airplane. Fixed wing. + MAV_ODID_UA_TYPE_AEROPLANE MAV_ODID_UA_TYPE = 1 + // Helicopter or multirotor. + MAV_ODID_UA_TYPE_HELICOPTER_OR_MULTIROTOR MAV_ODID_UA_TYPE = 2 + // Gyroplane. + MAV_ODID_UA_TYPE_GYROPLANE MAV_ODID_UA_TYPE = 3 + // VTOL (Vertical Take-Off and Landing). Fixed wing aircraft that can take off vertically. + MAV_ODID_UA_TYPE_HYBRID_LIFT MAV_ODID_UA_TYPE = 4 + // Ornithopter. + MAV_ODID_UA_TYPE_ORNITHOPTER MAV_ODID_UA_TYPE = 5 + // Glider. + MAV_ODID_UA_TYPE_GLIDER MAV_ODID_UA_TYPE = 6 + // Kite. + MAV_ODID_UA_TYPE_KITE MAV_ODID_UA_TYPE = 7 + // Free Balloon. + MAV_ODID_UA_TYPE_FREE_BALLOON MAV_ODID_UA_TYPE = 8 + // Captive Balloon. + MAV_ODID_UA_TYPE_CAPTIVE_BALLOON MAV_ODID_UA_TYPE = 9 + // Airship. E.g. a blimp. + MAV_ODID_UA_TYPE_AIRSHIP MAV_ODID_UA_TYPE = 10 + // Free Fall/Parachute (unpowered). + MAV_ODID_UA_TYPE_FREE_FALL_PARACHUTE MAV_ODID_UA_TYPE = 11 + // Rocket. + MAV_ODID_UA_TYPE_ROCKET MAV_ODID_UA_TYPE = 12 + // Tethered powered aircraft. + MAV_ODID_UA_TYPE_TETHERED_POWERED_AIRCRAFT MAV_ODID_UA_TYPE = 13 + // Ground Obstacle. + MAV_ODID_UA_TYPE_GROUND_OBSTACLE MAV_ODID_UA_TYPE = 14 + // Other type of aircraft not listed earlier. + MAV_ODID_UA_TYPE_OTHER MAV_ODID_UA_TYPE = 15 +) + +var labels_MAV_ODID_UA_TYPE = map[MAV_ODID_UA_TYPE]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAV_ODID_UA_TYPE) MarshalText() ([]byte, error) { + if l, ok := labels_MAV_ODID_UA_TYPE[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAV_ODID_UA_TYPE = map[string]MAV_ODID_UA_TYPE{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAV_ODID_UA_TYPE) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAV_ODID_UA_TYPE[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAV_ODID_UA_TYPE) String() string { + if l, ok := labels_MAV_ODID_UA_TYPE[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/all/enum_mav_odid_ver_acc.go b/pkg/dialects/all/enum_mav_odid_ver_acc.go new file mode 100644 index 000000000..235d74a36 --- /dev/null +++ b/pkg/dialects/all/enum_mav_odid_ver_acc.go @@ -0,0 +1,55 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package all + +import ( + "errors" +) + +type MAV_ODID_VER_ACC int + +const ( + // The vertical accuracy is unknown. + MAV_ODID_VER_ACC_UNKNOWN MAV_ODID_VER_ACC = 0 + // The vertical accuracy is smaller than 150 meter. + MAV_ODID_VER_ACC_150_METER MAV_ODID_VER_ACC = 1 + // The vertical accuracy is smaller than 45 meter. + MAV_ODID_VER_ACC_45_METER MAV_ODID_VER_ACC = 2 + // The vertical accuracy is smaller than 25 meter. + MAV_ODID_VER_ACC_25_METER MAV_ODID_VER_ACC = 3 + // The vertical accuracy is smaller than 10 meter. + MAV_ODID_VER_ACC_10_METER MAV_ODID_VER_ACC = 4 + // The vertical accuracy is smaller than 3 meter. + MAV_ODID_VER_ACC_3_METER MAV_ODID_VER_ACC = 5 + // The vertical accuracy is smaller than 1 meter. + MAV_ODID_VER_ACC_1_METER MAV_ODID_VER_ACC = 6 +) + +var labels_MAV_ODID_VER_ACC = map[MAV_ODID_VER_ACC]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAV_ODID_VER_ACC) MarshalText() ([]byte, error) { + if l, ok := labels_MAV_ODID_VER_ACC[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAV_ODID_VER_ACC = map[string]MAV_ODID_VER_ACC{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAV_ODID_VER_ACC) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAV_ODID_VER_ACC[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAV_ODID_VER_ACC) String() string { + if l, ok := labels_MAV_ODID_VER_ACC[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/all/enum_mav_param_ext_type.go b/pkg/dialects/all/enum_mav_param_ext_type.go new file mode 100644 index 000000000..e26cff9cf --- /dev/null +++ b/pkg/dialects/all/enum_mav_param_ext_type.go @@ -0,0 +1,64 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package all + +import ( + "errors" +) + +// Specifies the datatype of a MAVLink extended parameter. +type MAV_PARAM_EXT_TYPE int + +const ( + // 8-bit unsigned integer + MAV_PARAM_EXT_TYPE_UINT8 MAV_PARAM_EXT_TYPE = 1 + // 8-bit signed integer + MAV_PARAM_EXT_TYPE_INT8 MAV_PARAM_EXT_TYPE = 2 + // 16-bit unsigned integer + MAV_PARAM_EXT_TYPE_UINT16 MAV_PARAM_EXT_TYPE = 3 + // 16-bit signed integer + MAV_PARAM_EXT_TYPE_INT16 MAV_PARAM_EXT_TYPE = 4 + // 32-bit unsigned integer + MAV_PARAM_EXT_TYPE_UINT32 MAV_PARAM_EXT_TYPE = 5 + // 32-bit signed integer + MAV_PARAM_EXT_TYPE_INT32 MAV_PARAM_EXT_TYPE = 6 + // 64-bit unsigned integer + MAV_PARAM_EXT_TYPE_UINT64 MAV_PARAM_EXT_TYPE = 7 + // 64-bit signed integer + MAV_PARAM_EXT_TYPE_INT64 MAV_PARAM_EXT_TYPE = 8 + // 32-bit floating-point + MAV_PARAM_EXT_TYPE_REAL32 MAV_PARAM_EXT_TYPE = 9 + // 64-bit floating-point + MAV_PARAM_EXT_TYPE_REAL64 MAV_PARAM_EXT_TYPE = 10 + // Custom Type + MAV_PARAM_EXT_TYPE_CUSTOM MAV_PARAM_EXT_TYPE = 11 +) + +var labels_MAV_PARAM_EXT_TYPE = map[MAV_PARAM_EXT_TYPE]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAV_PARAM_EXT_TYPE) MarshalText() ([]byte, error) { + if l, ok := labels_MAV_PARAM_EXT_TYPE[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAV_PARAM_EXT_TYPE = map[string]MAV_PARAM_EXT_TYPE{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAV_PARAM_EXT_TYPE) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAV_PARAM_EXT_TYPE[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAV_PARAM_EXT_TYPE) String() string { + if l, ok := labels_MAV_PARAM_EXT_TYPE[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/all/enum_mav_param_type.go b/pkg/dialects/all/enum_mav_param_type.go new file mode 100644 index 000000000..b3060e6fd --- /dev/null +++ b/pkg/dialects/all/enum_mav_param_type.go @@ -0,0 +1,62 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package all + +import ( + "errors" +) + +// Specifies the datatype of a MAVLink parameter. +type MAV_PARAM_TYPE int + +const ( + // 8-bit unsigned integer + MAV_PARAM_TYPE_UINT8 MAV_PARAM_TYPE = 1 + // 8-bit signed integer + MAV_PARAM_TYPE_INT8 MAV_PARAM_TYPE = 2 + // 16-bit unsigned integer + MAV_PARAM_TYPE_UINT16 MAV_PARAM_TYPE = 3 + // 16-bit signed integer + MAV_PARAM_TYPE_INT16 MAV_PARAM_TYPE = 4 + // 32-bit unsigned integer + MAV_PARAM_TYPE_UINT32 MAV_PARAM_TYPE = 5 + // 32-bit signed integer + MAV_PARAM_TYPE_INT32 MAV_PARAM_TYPE = 6 + // 64-bit unsigned integer + MAV_PARAM_TYPE_UINT64 MAV_PARAM_TYPE = 7 + // 64-bit signed integer + MAV_PARAM_TYPE_INT64 MAV_PARAM_TYPE = 8 + // 32-bit floating-point + MAV_PARAM_TYPE_REAL32 MAV_PARAM_TYPE = 9 + // 64-bit floating-point + MAV_PARAM_TYPE_REAL64 MAV_PARAM_TYPE = 10 +) + +var labels_MAV_PARAM_TYPE = map[MAV_PARAM_TYPE]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAV_PARAM_TYPE) MarshalText() ([]byte, error) { + if l, ok := labels_MAV_PARAM_TYPE[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAV_PARAM_TYPE = map[string]MAV_PARAM_TYPE{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAV_PARAM_TYPE) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAV_PARAM_TYPE[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAV_PARAM_TYPE) String() string { + if l, ok := labels_MAV_PARAM_TYPE[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/all/enum_mav_power_status.go b/pkg/dialects/all/enum_mav_power_status.go new file mode 100644 index 000000000..5f696b349 --- /dev/null +++ b/pkg/dialects/all/enum_mav_power_status.go @@ -0,0 +1,54 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package all + +import ( + "errors" +) + +// Power supply status flags (bitmask) +type MAV_POWER_STATUS int + +const ( + // main brick power supply valid + MAV_POWER_STATUS_BRICK_VALID MAV_POWER_STATUS = 1 + // main servo power supply valid for FMU + MAV_POWER_STATUS_SERVO_VALID MAV_POWER_STATUS = 2 + // USB power is connected + MAV_POWER_STATUS_USB_CONNECTED MAV_POWER_STATUS = 4 + // peripheral supply is in over-current state + MAV_POWER_STATUS_PERIPH_OVERCURRENT MAV_POWER_STATUS = 8 + // hi-power peripheral supply is in over-current state + MAV_POWER_STATUS_PERIPH_HIPOWER_OVERCURRENT MAV_POWER_STATUS = 16 + // Power status has changed since boot + MAV_POWER_STATUS_CHANGED MAV_POWER_STATUS = 32 +) + +var labels_MAV_POWER_STATUS = map[MAV_POWER_STATUS]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAV_POWER_STATUS) MarshalText() ([]byte, error) { + if l, ok := labels_MAV_POWER_STATUS[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAV_POWER_STATUS = map[string]MAV_POWER_STATUS{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAV_POWER_STATUS) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAV_POWER_STATUS[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAV_POWER_STATUS) String() string { + if l, ok := labels_MAV_POWER_STATUS[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/all/enum_mav_protocol_capability.go b/pkg/dialects/all/enum_mav_protocol_capability.go new file mode 100644 index 000000000..540f53210 --- /dev/null +++ b/pkg/dialects/all/enum_mav_protocol_capability.go @@ -0,0 +1,78 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package all + +import ( + "errors" +) + +// Bitmask of (optional) autopilot capabilities (64 bit). If a bit is set, the autopilot supports this capability. +type MAV_PROTOCOL_CAPABILITY int + +const ( + // Autopilot supports the MISSION_ITEM float message type. + // Note that MISSION_ITEM is deprecated, and autopilots should use MISSION_INT instead. + MAV_PROTOCOL_CAPABILITY_MISSION_FLOAT MAV_PROTOCOL_CAPABILITY = 1 + // Autopilot supports the new param float message type. + MAV_PROTOCOL_CAPABILITY_PARAM_FLOAT MAV_PROTOCOL_CAPABILITY = 2 + // Autopilot supports MISSION_ITEM_INT scaled integer message type. + // Note that this flag must always be set if missions are supported, because missions must always use MISSION_ITEM_INT (rather than MISSION_ITEM, which is deprecated). + MAV_PROTOCOL_CAPABILITY_MISSION_INT MAV_PROTOCOL_CAPABILITY = 4 + // Autopilot supports COMMAND_INT scaled integer message type. + MAV_PROTOCOL_CAPABILITY_COMMAND_INT MAV_PROTOCOL_CAPABILITY = 8 + // Reserved for future use. + MAV_PROTOCOL_CAPABILITY_RESERVED1 MAV_PROTOCOL_CAPABILITY = 16 + // Autopilot supports the new FILE_TRANSFER_PROTOCOL message type. + MAV_PROTOCOL_CAPABILITY_FTP MAV_PROTOCOL_CAPABILITY = 32 + // Autopilot supports commanding attitude offboard. + MAV_PROTOCOL_CAPABILITY_SET_ATTITUDE_TARGET MAV_PROTOCOL_CAPABILITY = 64 + // Autopilot supports commanding position and velocity targets in local NED frame. + MAV_PROTOCOL_CAPABILITY_SET_POSITION_TARGET_LOCAL_NED MAV_PROTOCOL_CAPABILITY = 128 + // Autopilot supports commanding position and velocity targets in global scaled integers. + MAV_PROTOCOL_CAPABILITY_SET_POSITION_TARGET_GLOBAL_INT MAV_PROTOCOL_CAPABILITY = 256 + // Autopilot supports terrain protocol / data handling. + MAV_PROTOCOL_CAPABILITY_TERRAIN MAV_PROTOCOL_CAPABILITY = 512 + // Autopilot supports direct actuator control. + MAV_PROTOCOL_CAPABILITY_SET_ACTUATOR_TARGET MAV_PROTOCOL_CAPABILITY = 1024 + // Autopilot supports the flight termination command. + MAV_PROTOCOL_CAPABILITY_FLIGHT_TERMINATION MAV_PROTOCOL_CAPABILITY = 2048 + // Autopilot supports onboard compass calibration. + MAV_PROTOCOL_CAPABILITY_COMPASS_CALIBRATION MAV_PROTOCOL_CAPABILITY = 4096 + // Autopilot supports MAVLink version 2. + MAV_PROTOCOL_CAPABILITY_MAVLINK2 MAV_PROTOCOL_CAPABILITY = 8192 + // Autopilot supports mission fence protocol. + MAV_PROTOCOL_CAPABILITY_MISSION_FENCE MAV_PROTOCOL_CAPABILITY = 16384 + // Autopilot supports mission rally point protocol. + MAV_PROTOCOL_CAPABILITY_MISSION_RALLY MAV_PROTOCOL_CAPABILITY = 32768 + // Reserved for future use. + MAV_PROTOCOL_CAPABILITY_RESERVED2 MAV_PROTOCOL_CAPABILITY = 65536 +) + +var labels_MAV_PROTOCOL_CAPABILITY = map[MAV_PROTOCOL_CAPABILITY]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAV_PROTOCOL_CAPABILITY) MarshalText() ([]byte, error) { + if l, ok := labels_MAV_PROTOCOL_CAPABILITY[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAV_PROTOCOL_CAPABILITY = map[string]MAV_PROTOCOL_CAPABILITY{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAV_PROTOCOL_CAPABILITY) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAV_PROTOCOL_CAPABILITY[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAV_PROTOCOL_CAPABILITY) String() string { + if l, ok := labels_MAV_PROTOCOL_CAPABILITY[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/all/enum_mav_qshot_mode.go b/pkg/dialects/all/enum_mav_qshot_mode.go new file mode 100644 index 000000000..e5719c24e --- /dev/null +++ b/pkg/dialects/all/enum_mav_qshot_mode.go @@ -0,0 +1,62 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package all + +import ( + "errors" +) + +// Enumeration of possible shot modes. +type MAV_QSHOT_MODE int + +const ( + // Undefined shot mode. Can be used to determine if qshots should be used or not. + MAV_QSHOT_MODE_UNDEFINED MAV_QSHOT_MODE = 0 + // Start normal gimbal operation. Is usally used to return back from a shot. + MAV_QSHOT_MODE_DEFAULT MAV_QSHOT_MODE = 1 + // Load and keep safe gimbal position and stop stabilization. + MAV_QSHOT_MODE_GIMBAL_RETRACT MAV_QSHOT_MODE = 2 + // Load neutral gimbal position and keep it while stabilizing. + MAV_QSHOT_MODE_GIMBAL_NEUTRAL MAV_QSHOT_MODE = 3 + // Start mission with gimbal control. + MAV_QSHOT_MODE_GIMBAL_MISSION MAV_QSHOT_MODE = 4 + // Start RC gimbal control. + MAV_QSHOT_MODE_GIMBAL_RC_CONTROL MAV_QSHOT_MODE = 5 + // Start gimbal tracking the point specified by Lat, Lon, Alt. + MAV_QSHOT_MODE_POI_TARGETING MAV_QSHOT_MODE = 6 + // Start gimbal tracking the system with specified system ID. + MAV_QSHOT_MODE_SYSID_TARGETING MAV_QSHOT_MODE = 7 + // Start 2-point cable cam quick shot. + MAV_QSHOT_MODE_CABLECAM_2POINT MAV_QSHOT_MODE = 8 + // Start gimbal tracking the home location. + MAV_QSHOT_MODE_HOME_TARGETING MAV_QSHOT_MODE = 9 +) + +var labels_MAV_QSHOT_MODE = map[MAV_QSHOT_MODE]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAV_QSHOT_MODE) MarshalText() ([]byte, error) { + if l, ok := labels_MAV_QSHOT_MODE[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAV_QSHOT_MODE = map[string]MAV_QSHOT_MODE{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAV_QSHOT_MODE) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAV_QSHOT_MODE[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAV_QSHOT_MODE) String() string { + if l, ok := labels_MAV_QSHOT_MODE[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/all/enum_mav_remote_log_data_block_commands.go b/pkg/dialects/all/enum_mav_remote_log_data_block_commands.go new file mode 100644 index 000000000..755762712 --- /dev/null +++ b/pkg/dialects/all/enum_mav_remote_log_data_block_commands.go @@ -0,0 +1,46 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package all + +import ( + "errors" +) + +// Special ACK block numbers control activation of dataflash log streaming. +type MAV_REMOTE_LOG_DATA_BLOCK_COMMANDS int + +const ( + // UAV to stop sending DataFlash blocks. + MAV_REMOTE_LOG_DATA_BLOCK_STOP MAV_REMOTE_LOG_DATA_BLOCK_COMMANDS = 2147483645 + // UAV to start sending DataFlash blocks. + MAV_REMOTE_LOG_DATA_BLOCK_START MAV_REMOTE_LOG_DATA_BLOCK_COMMANDS = 2147483646 +) + +var labels_MAV_REMOTE_LOG_DATA_BLOCK_COMMANDS = map[MAV_REMOTE_LOG_DATA_BLOCK_COMMANDS]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAV_REMOTE_LOG_DATA_BLOCK_COMMANDS) MarshalText() ([]byte, error) { + if l, ok := labels_MAV_REMOTE_LOG_DATA_BLOCK_COMMANDS[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAV_REMOTE_LOG_DATA_BLOCK_COMMANDS = map[string]MAV_REMOTE_LOG_DATA_BLOCK_COMMANDS{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAV_REMOTE_LOG_DATA_BLOCK_COMMANDS) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAV_REMOTE_LOG_DATA_BLOCK_COMMANDS[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAV_REMOTE_LOG_DATA_BLOCK_COMMANDS) String() string { + if l, ok := labels_MAV_REMOTE_LOG_DATA_BLOCK_COMMANDS[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/all/enum_mav_remote_log_data_block_statuses.go b/pkg/dialects/all/enum_mav_remote_log_data_block_statuses.go new file mode 100644 index 000000000..41cd1f6fe --- /dev/null +++ b/pkg/dialects/all/enum_mav_remote_log_data_block_statuses.go @@ -0,0 +1,46 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package all + +import ( + "errors" +) + +// Possible remote log data block statuses. +type MAV_REMOTE_LOG_DATA_BLOCK_STATUSES int + +const ( + // This block has NOT been received. + MAV_REMOTE_LOG_DATA_BLOCK_NACK MAV_REMOTE_LOG_DATA_BLOCK_STATUSES = 0 + // This block has been received. + MAV_REMOTE_LOG_DATA_BLOCK_ACK MAV_REMOTE_LOG_DATA_BLOCK_STATUSES = 1 +) + +var labels_MAV_REMOTE_LOG_DATA_BLOCK_STATUSES = map[MAV_REMOTE_LOG_DATA_BLOCK_STATUSES]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAV_REMOTE_LOG_DATA_BLOCK_STATUSES) MarshalText() ([]byte, error) { + if l, ok := labels_MAV_REMOTE_LOG_DATA_BLOCK_STATUSES[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAV_REMOTE_LOG_DATA_BLOCK_STATUSES = map[string]MAV_REMOTE_LOG_DATA_BLOCK_STATUSES{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAV_REMOTE_LOG_DATA_BLOCK_STATUSES) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAV_REMOTE_LOG_DATA_BLOCK_STATUSES[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAV_REMOTE_LOG_DATA_BLOCK_STATUSES) String() string { + if l, ok := labels_MAV_REMOTE_LOG_DATA_BLOCK_STATUSES[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/all/enum_mav_result.go b/pkg/dialects/all/enum_mav_result.go new file mode 100644 index 000000000..4966d9153 --- /dev/null +++ b/pkg/dialects/all/enum_mav_result.go @@ -0,0 +1,56 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package all + +import ( + "errors" +) + +// Result from a MAVLink command (MAV_CMD) +type MAV_RESULT int + +const ( + // Command is valid (is supported and has valid parameters), and was executed. + MAV_RESULT_ACCEPTED MAV_RESULT = 0 + // Command is valid, but cannot be executed at this time. This is used to indicate a problem that should be fixed just by waiting (e.g. a state machine is busy, can't arm because have not got GPS lock, etc.). Retrying later should work. + MAV_RESULT_TEMPORARILY_REJECTED MAV_RESULT = 1 + // Command is invalid (is supported but has invalid parameters). Retrying same command and parameters will not work. + MAV_RESULT_DENIED MAV_RESULT = 2 + // Command is not supported (unknown). + MAV_RESULT_UNSUPPORTED MAV_RESULT = 3 + // Command is valid, but execution has failed. This is used to indicate any non-temporary or unexpected problem, i.e. any problem that must be fixed before the command can succeed/be retried. For example, attempting to write a file when out of memory, attempting to arm when sensors are not calibrated, etc. + MAV_RESULT_FAILED MAV_RESULT = 4 + // Command is valid and is being executed. This will be followed by further progress updates, i.e. the component may send further COMMAND_ACK messages with result MAV_RESULT_IN_PROGRESS (at a rate decided by the implementation), and must terminate by sending a COMMAND_ACK message with final result of the operation. The COMMAND_ACK.progress field can be used to indicate the progress of the operation. + MAV_RESULT_IN_PROGRESS MAV_RESULT = 5 + // Command has been cancelled (as a result of receiving a COMMAND_CANCEL message). + MAV_RESULT_CANCELLED MAV_RESULT = 6 +) + +var labels_MAV_RESULT = map[MAV_RESULT]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAV_RESULT) MarshalText() ([]byte, error) { + if l, ok := labels_MAV_RESULT[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAV_RESULT = map[string]MAV_RESULT{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAV_RESULT) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAV_RESULT[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAV_RESULT) String() string { + if l, ok := labels_MAV_RESULT[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/all/enum_mav_roi.go b/pkg/dialects/all/enum_mav_roi.go new file mode 100644 index 000000000..8ded21a91 --- /dev/null +++ b/pkg/dialects/all/enum_mav_roi.go @@ -0,0 +1,54 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package all + +import ( + "errors" +) + +// The ROI (region of interest) for the vehicle. This can be +// be used by the vehicle for camera/vehicle attitude alignment (see +// MAV_CMD_NAV_ROI). +type MAV_ROI int + +const ( + // No region of interest. + MAV_ROI_NONE MAV_ROI = 0 + // Point toward next waypoint, with optional pitch/roll/yaw offset. + MAV_ROI_WPNEXT MAV_ROI = 1 + // Point toward given waypoint. + MAV_ROI_WPINDEX MAV_ROI = 2 + // Point toward fixed location. + MAV_ROI_LOCATION MAV_ROI = 3 + // Point toward of given id. + MAV_ROI_TARGET MAV_ROI = 4 +) + +var labels_MAV_ROI = map[MAV_ROI]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAV_ROI) MarshalText() ([]byte, error) { + if l, ok := labels_MAV_ROI[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAV_ROI = map[string]MAV_ROI{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAV_ROI) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAV_ROI[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAV_ROI) String() string { + if l, ok := labels_MAV_ROI[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/all/enum_mav_sensor_orientation.go b/pkg/dialects/all/enum_mav_sensor_orientation.go new file mode 100644 index 000000000..95498532d --- /dev/null +++ b/pkg/dialects/all/enum_mav_sensor_orientation.go @@ -0,0 +1,126 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package all + +import ( + "errors" +) + +// Enumeration of sensor orientation, according to its rotations +type MAV_SENSOR_ORIENTATION int + +const ( + // Roll: 0, Pitch: 0, Yaw: 0 + MAV_SENSOR_ROTATION_NONE MAV_SENSOR_ORIENTATION = 0 + // Roll: 0, Pitch: 0, Yaw: 45 + MAV_SENSOR_ROTATION_YAW_45 MAV_SENSOR_ORIENTATION = 1 + // Roll: 0, Pitch: 0, Yaw: 90 + MAV_SENSOR_ROTATION_YAW_90 MAV_SENSOR_ORIENTATION = 2 + // Roll: 0, Pitch: 0, Yaw: 135 + MAV_SENSOR_ROTATION_YAW_135 MAV_SENSOR_ORIENTATION = 3 + // Roll: 0, Pitch: 0, Yaw: 180 + MAV_SENSOR_ROTATION_YAW_180 MAV_SENSOR_ORIENTATION = 4 + // Roll: 0, Pitch: 0, Yaw: 225 + MAV_SENSOR_ROTATION_YAW_225 MAV_SENSOR_ORIENTATION = 5 + // Roll: 0, Pitch: 0, Yaw: 270 + MAV_SENSOR_ROTATION_YAW_270 MAV_SENSOR_ORIENTATION = 6 + // Roll: 0, Pitch: 0, Yaw: 315 + MAV_SENSOR_ROTATION_YAW_315 MAV_SENSOR_ORIENTATION = 7 + // Roll: 180, Pitch: 0, Yaw: 0 + MAV_SENSOR_ROTATION_ROLL_180 MAV_SENSOR_ORIENTATION = 8 + // Roll: 180, Pitch: 0, Yaw: 45 + MAV_SENSOR_ROTATION_ROLL_180_YAW_45 MAV_SENSOR_ORIENTATION = 9 + // Roll: 180, Pitch: 0, Yaw: 90 + MAV_SENSOR_ROTATION_ROLL_180_YAW_90 MAV_SENSOR_ORIENTATION = 10 + // Roll: 180, Pitch: 0, Yaw: 135 + MAV_SENSOR_ROTATION_ROLL_180_YAW_135 MAV_SENSOR_ORIENTATION = 11 + // Roll: 0, Pitch: 180, Yaw: 0 + MAV_SENSOR_ROTATION_PITCH_180 MAV_SENSOR_ORIENTATION = 12 + // Roll: 180, Pitch: 0, Yaw: 225 + MAV_SENSOR_ROTATION_ROLL_180_YAW_225 MAV_SENSOR_ORIENTATION = 13 + // Roll: 180, Pitch: 0, Yaw: 270 + MAV_SENSOR_ROTATION_ROLL_180_YAW_270 MAV_SENSOR_ORIENTATION = 14 + // Roll: 180, Pitch: 0, Yaw: 315 + MAV_SENSOR_ROTATION_ROLL_180_YAW_315 MAV_SENSOR_ORIENTATION = 15 + // Roll: 90, Pitch: 0, Yaw: 0 + MAV_SENSOR_ROTATION_ROLL_90 MAV_SENSOR_ORIENTATION = 16 + // Roll: 90, Pitch: 0, Yaw: 45 + MAV_SENSOR_ROTATION_ROLL_90_YAW_45 MAV_SENSOR_ORIENTATION = 17 + // Roll: 90, Pitch: 0, Yaw: 90 + MAV_SENSOR_ROTATION_ROLL_90_YAW_90 MAV_SENSOR_ORIENTATION = 18 + // Roll: 90, Pitch: 0, Yaw: 135 + MAV_SENSOR_ROTATION_ROLL_90_YAW_135 MAV_SENSOR_ORIENTATION = 19 + // Roll: 270, Pitch: 0, Yaw: 0 + MAV_SENSOR_ROTATION_ROLL_270 MAV_SENSOR_ORIENTATION = 20 + // Roll: 270, Pitch: 0, Yaw: 45 + MAV_SENSOR_ROTATION_ROLL_270_YAW_45 MAV_SENSOR_ORIENTATION = 21 + // Roll: 270, Pitch: 0, Yaw: 90 + MAV_SENSOR_ROTATION_ROLL_270_YAW_90 MAV_SENSOR_ORIENTATION = 22 + // Roll: 270, Pitch: 0, Yaw: 135 + MAV_SENSOR_ROTATION_ROLL_270_YAW_135 MAV_SENSOR_ORIENTATION = 23 + // Roll: 0, Pitch: 90, Yaw: 0 + MAV_SENSOR_ROTATION_PITCH_90 MAV_SENSOR_ORIENTATION = 24 + // Roll: 0, Pitch: 270, Yaw: 0 + MAV_SENSOR_ROTATION_PITCH_270 MAV_SENSOR_ORIENTATION = 25 + // Roll: 0, Pitch: 180, Yaw: 90 + MAV_SENSOR_ROTATION_PITCH_180_YAW_90 MAV_SENSOR_ORIENTATION = 26 + // Roll: 0, Pitch: 180, Yaw: 270 + MAV_SENSOR_ROTATION_PITCH_180_YAW_270 MAV_SENSOR_ORIENTATION = 27 + // Roll: 90, Pitch: 90, Yaw: 0 + MAV_SENSOR_ROTATION_ROLL_90_PITCH_90 MAV_SENSOR_ORIENTATION = 28 + // Roll: 180, Pitch: 90, Yaw: 0 + MAV_SENSOR_ROTATION_ROLL_180_PITCH_90 MAV_SENSOR_ORIENTATION = 29 + // Roll: 270, Pitch: 90, Yaw: 0 + MAV_SENSOR_ROTATION_ROLL_270_PITCH_90 MAV_SENSOR_ORIENTATION = 30 + // Roll: 90, Pitch: 180, Yaw: 0 + MAV_SENSOR_ROTATION_ROLL_90_PITCH_180 MAV_SENSOR_ORIENTATION = 31 + // Roll: 270, Pitch: 180, Yaw: 0 + MAV_SENSOR_ROTATION_ROLL_270_PITCH_180 MAV_SENSOR_ORIENTATION = 32 + // Roll: 90, Pitch: 270, Yaw: 0 + MAV_SENSOR_ROTATION_ROLL_90_PITCH_270 MAV_SENSOR_ORIENTATION = 33 + // Roll: 180, Pitch: 270, Yaw: 0 + MAV_SENSOR_ROTATION_ROLL_180_PITCH_270 MAV_SENSOR_ORIENTATION = 34 + // Roll: 270, Pitch: 270, Yaw: 0 + MAV_SENSOR_ROTATION_ROLL_270_PITCH_270 MAV_SENSOR_ORIENTATION = 35 + // Roll: 90, Pitch: 180, Yaw: 90 + MAV_SENSOR_ROTATION_ROLL_90_PITCH_180_YAW_90 MAV_SENSOR_ORIENTATION = 36 + // Roll: 90, Pitch: 0, Yaw: 270 + MAV_SENSOR_ROTATION_ROLL_90_YAW_270 MAV_SENSOR_ORIENTATION = 37 + // Roll: 90, Pitch: 68, Yaw: 293 + MAV_SENSOR_ROTATION_ROLL_90_PITCH_68_YAW_293 MAV_SENSOR_ORIENTATION = 38 + // Pitch: 315 + MAV_SENSOR_ROTATION_PITCH_315 MAV_SENSOR_ORIENTATION = 39 + // Roll: 90, Pitch: 315 + MAV_SENSOR_ROTATION_ROLL_90_PITCH_315 MAV_SENSOR_ORIENTATION = 40 + // Custom orientation + MAV_SENSOR_ROTATION_CUSTOM MAV_SENSOR_ORIENTATION = 100 +) + +var labels_MAV_SENSOR_ORIENTATION = map[MAV_SENSOR_ORIENTATION]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAV_SENSOR_ORIENTATION) MarshalText() ([]byte, error) { + if l, ok := labels_MAV_SENSOR_ORIENTATION[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAV_SENSOR_ORIENTATION = map[string]MAV_SENSOR_ORIENTATION{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAV_SENSOR_ORIENTATION) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAV_SENSOR_ORIENTATION[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAV_SENSOR_ORIENTATION) String() string { + if l, ok := labels_MAV_SENSOR_ORIENTATION[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/all/enum_mav_severity.go b/pkg/dialects/all/enum_mav_severity.go new file mode 100644 index 000000000..bd830a1fa --- /dev/null +++ b/pkg/dialects/all/enum_mav_severity.go @@ -0,0 +1,58 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package all + +import ( + "errors" +) + +// Indicates the severity level, generally used for status messages to indicate their relative urgency. Based on RFC-5424 using expanded definitions at: http://www.kiwisyslog.com/kb/info:-syslog-message-levels/. +type MAV_SEVERITY int + +const ( + // System is unusable. This is a "panic" condition. + MAV_SEVERITY_EMERGENCY MAV_SEVERITY = 0 + // Action should be taken immediately. Indicates error in non-critical systems. + MAV_SEVERITY_ALERT MAV_SEVERITY = 1 + // Action must be taken immediately. Indicates failure in a primary system. + MAV_SEVERITY_CRITICAL MAV_SEVERITY = 2 + // Indicates an error in secondary/redundant systems. + MAV_SEVERITY_ERROR MAV_SEVERITY = 3 + // Indicates about a possible future error if this is not resolved within a given timeframe. Example would be a low battery warning. + MAV_SEVERITY_WARNING MAV_SEVERITY = 4 + // An unusual event has occurred, though not an error condition. This should be investigated for the root cause. + MAV_SEVERITY_NOTICE MAV_SEVERITY = 5 + // Normal operational messages. Useful for logging. No action is required for these messages. + MAV_SEVERITY_INFO MAV_SEVERITY = 6 + // Useful non-operational messages that can assist in debugging. These should not occur during normal operation. + MAV_SEVERITY_DEBUG MAV_SEVERITY = 7 +) + +var labels_MAV_SEVERITY = map[MAV_SEVERITY]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAV_SEVERITY) MarshalText() ([]byte, error) { + if l, ok := labels_MAV_SEVERITY[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAV_SEVERITY = map[string]MAV_SEVERITY{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAV_SEVERITY) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAV_SEVERITY[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAV_SEVERITY) String() string { + if l, ok := labels_MAV_SEVERITY[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/all/enum_mav_state.go b/pkg/dialects/all/enum_mav_state.go new file mode 100644 index 000000000..7fccedb26 --- /dev/null +++ b/pkg/dialects/all/enum_mav_state.go @@ -0,0 +1,59 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package all + +import ( + "errors" +) + +type MAV_STATE int + +const ( + // Uninitialized system, state is unknown. + MAV_STATE_UNINIT MAV_STATE = 0 + // System is booting up. + MAV_STATE_BOOT MAV_STATE = 1 + // System is calibrating and not flight-ready. + MAV_STATE_CALIBRATING MAV_STATE = 2 + // System is grounded and on standby. It can be launched any time. + MAV_STATE_STANDBY MAV_STATE = 3 + // System is active and might be already airborne. Motors are engaged. + MAV_STATE_ACTIVE MAV_STATE = 4 + // System is in a non-normal flight mode. It can however still navigate. + MAV_STATE_CRITICAL MAV_STATE = 5 + // System is in a non-normal flight mode. It lost control over parts or over the whole airframe. It is in mayday and going down. + MAV_STATE_EMERGENCY MAV_STATE = 6 + // System just initialized its power-down sequence, will shut down now. + MAV_STATE_POWEROFF MAV_STATE = 7 + // System is terminating itself. + MAV_STATE_FLIGHT_TERMINATION MAV_STATE = 8 +) + +var labels_MAV_STATE = map[MAV_STATE]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAV_STATE) MarshalText() ([]byte, error) { + if l, ok := labels_MAV_STATE[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAV_STATE = map[string]MAV_STATE{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAV_STATE) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAV_STATE[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAV_STATE) String() string { + if l, ok := labels_MAV_STATE[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/all/enum_mav_storm32_camera_prearm_flags.go b/pkg/dialects/all/enum_mav_storm32_camera_prearm_flags.go new file mode 100644 index 000000000..362334559 --- /dev/null +++ b/pkg/dialects/all/enum_mav_storm32_camera_prearm_flags.go @@ -0,0 +1,44 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package all + +import ( + "errors" +) + +// STorM32 camera prearm check flags. +type MAV_STORM32_CAMERA_PREARM_FLAGS int + +const ( + // The camera has been found and is connected. + MAV_STORM32_CAMERA_PREARM_FLAGS_CONNECTED MAV_STORM32_CAMERA_PREARM_FLAGS = 1 +) + +var labels_MAV_STORM32_CAMERA_PREARM_FLAGS = map[MAV_STORM32_CAMERA_PREARM_FLAGS]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAV_STORM32_CAMERA_PREARM_FLAGS) MarshalText() ([]byte, error) { + if l, ok := labels_MAV_STORM32_CAMERA_PREARM_FLAGS[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAV_STORM32_CAMERA_PREARM_FLAGS = map[string]MAV_STORM32_CAMERA_PREARM_FLAGS{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAV_STORM32_CAMERA_PREARM_FLAGS) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAV_STORM32_CAMERA_PREARM_FLAGS[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAV_STORM32_CAMERA_PREARM_FLAGS) String() string { + if l, ok := labels_MAV_STORM32_CAMERA_PREARM_FLAGS[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/all/enum_mav_storm32_gimbal_action.go b/pkg/dialects/all/enum_mav_storm32_gimbal_action.go new file mode 100644 index 000000000..222f9d315 --- /dev/null +++ b/pkg/dialects/all/enum_mav_storm32_gimbal_action.go @@ -0,0 +1,48 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package all + +import ( + "errors" +) + +// Gimbal actions. +type MAV_STORM32_GIMBAL_ACTION int + +const ( + // Trigger the gimbal device to recenter the gimbal. + MAV_STORM32_GIMBAL_ACTION_RECENTER MAV_STORM32_GIMBAL_ACTION = 1 + // Trigger the gimbal device to run a calibration. + MAV_STORM32_GIMBAL_ACTION_CALIBRATION MAV_STORM32_GIMBAL_ACTION = 2 + // Trigger gimbal device to (re)discover the gimbal manager during run time. + MAV_STORM32_GIMBAL_ACTION_DISCOVER_MANAGER MAV_STORM32_GIMBAL_ACTION = 3 +) + +var labels_MAV_STORM32_GIMBAL_ACTION = map[MAV_STORM32_GIMBAL_ACTION]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAV_STORM32_GIMBAL_ACTION) MarshalText() ([]byte, error) { + if l, ok := labels_MAV_STORM32_GIMBAL_ACTION[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAV_STORM32_GIMBAL_ACTION = map[string]MAV_STORM32_GIMBAL_ACTION{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAV_STORM32_GIMBAL_ACTION) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAV_STORM32_GIMBAL_ACTION[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAV_STORM32_GIMBAL_ACTION) String() string { + if l, ok := labels_MAV_STORM32_GIMBAL_ACTION[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/all/enum_mav_storm32_gimbal_device_cap_flags.go b/pkg/dialects/all/enum_mav_storm32_gimbal_device_cap_flags.go new file mode 100644 index 000000000..40bc60fea --- /dev/null +++ b/pkg/dialects/all/enum_mav_storm32_gimbal_device_cap_flags.go @@ -0,0 +1,70 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package all + +import ( + "errors" +) + +// Gimbal device capability flags. +type MAV_STORM32_GIMBAL_DEVICE_CAP_FLAGS int + +const ( + // Gimbal device supports a retracted position. + MAV_STORM32_GIMBAL_DEVICE_CAP_FLAGS_HAS_RETRACT MAV_STORM32_GIMBAL_DEVICE_CAP_FLAGS = 1 + // Gimbal device supports a horizontal, forward looking position, stabilized. Can also be used to reset the gimbal's orientation. + MAV_STORM32_GIMBAL_DEVICE_CAP_FLAGS_HAS_NEUTRAL MAV_STORM32_GIMBAL_DEVICE_CAP_FLAGS = 2 + // Gimbal device supports rotating around roll axis. + MAV_STORM32_GIMBAL_DEVICE_CAP_FLAGS_HAS_ROLL_AXIS MAV_STORM32_GIMBAL_DEVICE_CAP_FLAGS = 4 + // Gimbal device supports to follow a roll angle relative to the vehicle. + MAV_STORM32_GIMBAL_DEVICE_CAP_FLAGS_HAS_ROLL_FOLLOW MAV_STORM32_GIMBAL_DEVICE_CAP_FLAGS = 8 + // Gimbal device supports locking to an roll angle (generally that's the default). + MAV_STORM32_GIMBAL_DEVICE_CAP_FLAGS_HAS_ROLL_LOCK MAV_STORM32_GIMBAL_DEVICE_CAP_FLAGS = 16 + // Gimbal device supports rotating around pitch axis. + MAV_STORM32_GIMBAL_DEVICE_CAP_FLAGS_HAS_PITCH_AXIS MAV_STORM32_GIMBAL_DEVICE_CAP_FLAGS = 32 + // Gimbal device supports to follow a pitch angle relative to the vehicle. + MAV_STORM32_GIMBAL_DEVICE_CAP_FLAGS_HAS_PITCH_FOLLOW MAV_STORM32_GIMBAL_DEVICE_CAP_FLAGS = 64 + // Gimbal device supports locking to an pitch angle (generally that's the default). + MAV_STORM32_GIMBAL_DEVICE_CAP_FLAGS_HAS_PITCH_LOCK MAV_STORM32_GIMBAL_DEVICE_CAP_FLAGS = 128 + // Gimbal device supports rotating around yaw axis. + MAV_STORM32_GIMBAL_DEVICE_CAP_FLAGS_HAS_YAW_AXIS MAV_STORM32_GIMBAL_DEVICE_CAP_FLAGS = 256 + // Gimbal device supports to follow a yaw angle relative to the vehicle (generally that's the default). + MAV_STORM32_GIMBAL_DEVICE_CAP_FLAGS_HAS_YAW_FOLLOW MAV_STORM32_GIMBAL_DEVICE_CAP_FLAGS = 512 + // Gimbal device supports locking to a heading angle. + MAV_STORM32_GIMBAL_DEVICE_CAP_FLAGS_HAS_YAW_LOCK MAV_STORM32_GIMBAL_DEVICE_CAP_FLAGS = 1024 + // Gimbal device supports yawing/panning infinitely (e.g. using a slip ring). + MAV_STORM32_GIMBAL_DEVICE_CAP_FLAGS_HAS_INFINITE_YAW MAV_STORM32_GIMBAL_DEVICE_CAP_FLAGS = 2048 + // Gimbal device supports absolute yaw angles (this usually requires support by an autopilot, and can be dynamic, i.e., go on and off during runtime). + MAV_STORM32_GIMBAL_DEVICE_CAP_FLAGS_HAS_ABSOLUTE_YAW MAV_STORM32_GIMBAL_DEVICE_CAP_FLAGS = 65536 + // Gimbal device supports control via an RC input signal. + MAV_STORM32_GIMBAL_DEVICE_CAP_FLAGS_HAS_RC MAV_STORM32_GIMBAL_DEVICE_CAP_FLAGS = 131072 +) + +var labels_MAV_STORM32_GIMBAL_DEVICE_CAP_FLAGS = map[MAV_STORM32_GIMBAL_DEVICE_CAP_FLAGS]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAV_STORM32_GIMBAL_DEVICE_CAP_FLAGS) MarshalText() ([]byte, error) { + if l, ok := labels_MAV_STORM32_GIMBAL_DEVICE_CAP_FLAGS[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAV_STORM32_GIMBAL_DEVICE_CAP_FLAGS = map[string]MAV_STORM32_GIMBAL_DEVICE_CAP_FLAGS{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAV_STORM32_GIMBAL_DEVICE_CAP_FLAGS) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAV_STORM32_GIMBAL_DEVICE_CAP_FLAGS[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAV_STORM32_GIMBAL_DEVICE_CAP_FLAGS) String() string { + if l, ok := labels_MAV_STORM32_GIMBAL_DEVICE_CAP_FLAGS[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/all/enum_mav_storm32_gimbal_device_error_flags.go b/pkg/dialects/all/enum_mav_storm32_gimbal_device_error_flags.go new file mode 100644 index 000000000..debbc5bb8 --- /dev/null +++ b/pkg/dialects/all/enum_mav_storm32_gimbal_device_error_flags.go @@ -0,0 +1,62 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package all + +import ( + "errors" +) + +// Gimbal device error and condition flags (0 means no error or other condition). +type MAV_STORM32_GIMBAL_DEVICE_ERROR_FLAGS int + +const ( + // Gimbal device is limited by hardware roll limit. + MAV_STORM32_GIMBAL_DEVICE_ERROR_FLAGS_AT_ROLL_LIMIT MAV_STORM32_GIMBAL_DEVICE_ERROR_FLAGS = 1 + // Gimbal device is limited by hardware pitch limit. + MAV_STORM32_GIMBAL_DEVICE_ERROR_FLAGS_AT_PITCH_LIMIT MAV_STORM32_GIMBAL_DEVICE_ERROR_FLAGS = 2 + // Gimbal device is limited by hardware yaw limit. + MAV_STORM32_GIMBAL_DEVICE_ERROR_FLAGS_AT_YAW_LIMIT MAV_STORM32_GIMBAL_DEVICE_ERROR_FLAGS = 4 + // There is an error with the gimbal device's encoders. + MAV_STORM32_GIMBAL_DEVICE_ERROR_FLAGS_ENCODER_ERROR MAV_STORM32_GIMBAL_DEVICE_ERROR_FLAGS = 8 + // There is an error with the gimbal device's power source. + MAV_STORM32_GIMBAL_DEVICE_ERROR_FLAGS_POWER_ERROR MAV_STORM32_GIMBAL_DEVICE_ERROR_FLAGS = 16 + // There is an error with the gimbal device's motors. + MAV_STORM32_GIMBAL_DEVICE_ERROR_FLAGS_MOTOR_ERROR MAV_STORM32_GIMBAL_DEVICE_ERROR_FLAGS = 32 + // There is an error with the gimbal device's software. + MAV_STORM32_GIMBAL_DEVICE_ERROR_FLAGS_SOFTWARE_ERROR MAV_STORM32_GIMBAL_DEVICE_ERROR_FLAGS = 64 + // There is an error with the gimbal device's communication. + MAV_STORM32_GIMBAL_DEVICE_ERROR_FLAGS_COMMS_ERROR MAV_STORM32_GIMBAL_DEVICE_ERROR_FLAGS = 128 + // Gimbal device is currently calibrating (not an error). + MAV_STORM32_GIMBAL_DEVICE_ERROR_FLAGS_CALIBRATION_RUNNING MAV_STORM32_GIMBAL_DEVICE_ERROR_FLAGS = 256 + // Gimbal device is not assigned to a gimbal manager (not an error). + MAV_STORM32_GIMBAL_DEVICE_ERROR_FLAGS_NO_MANAGER MAV_STORM32_GIMBAL_DEVICE_ERROR_FLAGS = 32768 +) + +var labels_MAV_STORM32_GIMBAL_DEVICE_ERROR_FLAGS = map[MAV_STORM32_GIMBAL_DEVICE_ERROR_FLAGS]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAV_STORM32_GIMBAL_DEVICE_ERROR_FLAGS) MarshalText() ([]byte, error) { + if l, ok := labels_MAV_STORM32_GIMBAL_DEVICE_ERROR_FLAGS[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAV_STORM32_GIMBAL_DEVICE_ERROR_FLAGS = map[string]MAV_STORM32_GIMBAL_DEVICE_ERROR_FLAGS{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAV_STORM32_GIMBAL_DEVICE_ERROR_FLAGS) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAV_STORM32_GIMBAL_DEVICE_ERROR_FLAGS[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAV_STORM32_GIMBAL_DEVICE_ERROR_FLAGS) String() string { + if l, ok := labels_MAV_STORM32_GIMBAL_DEVICE_ERROR_FLAGS[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/all/enum_mav_storm32_gimbal_device_flags.go b/pkg/dialects/all/enum_mav_storm32_gimbal_device_flags.go new file mode 100644 index 000000000..9f1a067ba --- /dev/null +++ b/pkg/dialects/all/enum_mav_storm32_gimbal_device_flags.go @@ -0,0 +1,62 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package all + +import ( + "errors" +) + +// Flags for gimbal device operation. Used for setting and reporting, unless specified otherwise. Settings which are in violation of the capability flags are ignored by the gimbal device. +type MAV_STORM32_GIMBAL_DEVICE_FLAGS int + +const ( + // Retracted safe position (no stabilization), takes presedence over NEUTRAL flag. If supported by the gimbal, the angles in the retracted position can be set in addition. + MAV_STORM32_GIMBAL_DEVICE_FLAGS_RETRACT MAV_STORM32_GIMBAL_DEVICE_FLAGS = 1 + // Neutral position (horizontal, forward looking, with stabiliziation). + MAV_STORM32_GIMBAL_DEVICE_FLAGS_NEUTRAL MAV_STORM32_GIMBAL_DEVICE_FLAGS = 2 + // Lock roll angle to absolute angle relative to horizon (not relative to drone). This is generally the default. + MAV_STORM32_GIMBAL_DEVICE_FLAGS_ROLL_LOCK MAV_STORM32_GIMBAL_DEVICE_FLAGS = 4 + // Lock pitch angle to absolute angle relative to horizon (not relative to drone). This is generally the default. + MAV_STORM32_GIMBAL_DEVICE_FLAGS_PITCH_LOCK MAV_STORM32_GIMBAL_DEVICE_FLAGS = 8 + // Lock yaw angle to absolute angle relative to earth (not relative to drone). When the YAW_ABSOLUTE flag is set, the quaternion is in the Earth frame with the x-axis pointing North (yaw absolute), else it is in the Earth frame rotated so that the x-axis is pointing forward (yaw relative to vehicle). + MAV_STORM32_GIMBAL_DEVICE_FLAGS_YAW_LOCK MAV_STORM32_GIMBAL_DEVICE_FLAGS = 16 + // Gimbal device can accept absolute yaw angle input. This flag cannot be set, is only for reporting (attempts to set it are rejected by the gimbal device). + MAV_STORM32_GIMBAL_DEVICE_FLAGS_CAN_ACCEPT_YAW_ABSOLUTE MAV_STORM32_GIMBAL_DEVICE_FLAGS = 256 + // Yaw angle is absolute (is only accepted if CAN_ACCEPT_YAW_ABSOLUTE is set). If this flag is set, the quaternion is in the Earth frame with the x-axis pointing North (yaw absolute), else it is in the Earth frame rotated so that the x-axis is pointing forward (yaw relative to vehicle). + MAV_STORM32_GIMBAL_DEVICE_FLAGS_YAW_ABSOLUTE MAV_STORM32_GIMBAL_DEVICE_FLAGS = 512 + // RC control. The RC input signal fed to the gimbal device exclusively controls the gimbal's orientation. Overrides RC_MIXED flag if that is also set. + MAV_STORM32_GIMBAL_DEVICE_FLAGS_RC_EXCLUSIVE MAV_STORM32_GIMBAL_DEVICE_FLAGS = 1024 + // RC control. The RC input signal fed to the gimbal device is mixed into the gimbal's orientation. Is overriden by RC_EXCLUSIVE flag if that is also set. + MAV_STORM32_GIMBAL_DEVICE_FLAGS_RC_MIXED MAV_STORM32_GIMBAL_DEVICE_FLAGS = 2048 + // UINT16_MAX = ignore. + MAV_STORM32_GIMBAL_DEVICE_FLAGS_NONE MAV_STORM32_GIMBAL_DEVICE_FLAGS = 65535 +) + +var labels_MAV_STORM32_GIMBAL_DEVICE_FLAGS = map[MAV_STORM32_GIMBAL_DEVICE_FLAGS]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAV_STORM32_GIMBAL_DEVICE_FLAGS) MarshalText() ([]byte, error) { + if l, ok := labels_MAV_STORM32_GIMBAL_DEVICE_FLAGS[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAV_STORM32_GIMBAL_DEVICE_FLAGS = map[string]MAV_STORM32_GIMBAL_DEVICE_FLAGS{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAV_STORM32_GIMBAL_DEVICE_FLAGS) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAV_STORM32_GIMBAL_DEVICE_FLAGS[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAV_STORM32_GIMBAL_DEVICE_FLAGS) String() string { + if l, ok := labels_MAV_STORM32_GIMBAL_DEVICE_FLAGS[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/all/enum_mav_storm32_gimbal_manager_cap_flags.go b/pkg/dialects/all/enum_mav_storm32_gimbal_manager_cap_flags.go new file mode 100644 index 000000000..a4c86a78d --- /dev/null +++ b/pkg/dialects/all/enum_mav_storm32_gimbal_manager_cap_flags.go @@ -0,0 +1,46 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package all + +import ( + "errors" +) + +// Gimbal manager capability flags. +type MAV_STORM32_GIMBAL_MANAGER_CAP_FLAGS int + +const ( + // The gimbal manager supports several profiles. + MAV_STORM32_GIMBAL_MANAGER_CAP_FLAGS_HAS_PROFILES MAV_STORM32_GIMBAL_MANAGER_CAP_FLAGS = 1 + // The gimbal manager supports changing the gimbal manager during run time, i.e. can be enabled/disabled. + MAV_STORM32_GIMBAL_MANAGER_CAP_FLAGS_SUPPORTS_CHANGE MAV_STORM32_GIMBAL_MANAGER_CAP_FLAGS = 2 +) + +var labels_MAV_STORM32_GIMBAL_MANAGER_CAP_FLAGS = map[MAV_STORM32_GIMBAL_MANAGER_CAP_FLAGS]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAV_STORM32_GIMBAL_MANAGER_CAP_FLAGS) MarshalText() ([]byte, error) { + if l, ok := labels_MAV_STORM32_GIMBAL_MANAGER_CAP_FLAGS[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAV_STORM32_GIMBAL_MANAGER_CAP_FLAGS = map[string]MAV_STORM32_GIMBAL_MANAGER_CAP_FLAGS{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAV_STORM32_GIMBAL_MANAGER_CAP_FLAGS) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAV_STORM32_GIMBAL_MANAGER_CAP_FLAGS[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAV_STORM32_GIMBAL_MANAGER_CAP_FLAGS) String() string { + if l, ok := labels_MAV_STORM32_GIMBAL_MANAGER_CAP_FLAGS[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/all/enum_mav_storm32_gimbal_manager_client.go b/pkg/dialects/all/enum_mav_storm32_gimbal_manager_client.go new file mode 100644 index 000000000..301e20739 --- /dev/null +++ b/pkg/dialects/all/enum_mav_storm32_gimbal_manager_client.go @@ -0,0 +1,60 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package all + +import ( + "errors" +) + +// Gimbal manager client ID. In a prioritizing profile, the priorities are determined by the implementation; they could e.g. be custom1 > onboard > GCS > autopilot/camera > GCS2 > custom2. +type MAV_STORM32_GIMBAL_MANAGER_CLIENT int + +const ( + // For convenience. + MAV_STORM32_GIMBAL_MANAGER_CLIENT_NONE MAV_STORM32_GIMBAL_MANAGER_CLIENT = 0 + // This is the onboard/companion computer client. + MAV_STORM32_GIMBAL_MANAGER_CLIENT_ONBOARD MAV_STORM32_GIMBAL_MANAGER_CLIENT = 1 + // This is the autopilot client. + MAV_STORM32_GIMBAL_MANAGER_CLIENT_AUTOPILOT MAV_STORM32_GIMBAL_MANAGER_CLIENT = 2 + // This is the GCS client. + MAV_STORM32_GIMBAL_MANAGER_CLIENT_GCS MAV_STORM32_GIMBAL_MANAGER_CLIENT = 3 + // This is the camera client. + MAV_STORM32_GIMBAL_MANAGER_CLIENT_CAMERA MAV_STORM32_GIMBAL_MANAGER_CLIENT = 4 + // This is the GCS2 client. + MAV_STORM32_GIMBAL_MANAGER_CLIENT_GCS2 MAV_STORM32_GIMBAL_MANAGER_CLIENT = 5 + // This is the camera2 client. + MAV_STORM32_GIMBAL_MANAGER_CLIENT_CAMERA2 MAV_STORM32_GIMBAL_MANAGER_CLIENT = 6 + // This is the custom client. + MAV_STORM32_GIMBAL_MANAGER_CLIENT_CUSTOM MAV_STORM32_GIMBAL_MANAGER_CLIENT = 7 + // This is the custom2 client. + MAV_STORM32_GIMBAL_MANAGER_CLIENT_CUSTOM2 MAV_STORM32_GIMBAL_MANAGER_CLIENT = 8 +) + +var labels_MAV_STORM32_GIMBAL_MANAGER_CLIENT = map[MAV_STORM32_GIMBAL_MANAGER_CLIENT]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAV_STORM32_GIMBAL_MANAGER_CLIENT) MarshalText() ([]byte, error) { + if l, ok := labels_MAV_STORM32_GIMBAL_MANAGER_CLIENT[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAV_STORM32_GIMBAL_MANAGER_CLIENT = map[string]MAV_STORM32_GIMBAL_MANAGER_CLIENT{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAV_STORM32_GIMBAL_MANAGER_CLIENT) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAV_STORM32_GIMBAL_MANAGER_CLIENT[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAV_STORM32_GIMBAL_MANAGER_CLIENT) String() string { + if l, ok := labels_MAV_STORM32_GIMBAL_MANAGER_CLIENT[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/all/enum_mav_storm32_gimbal_manager_flags.go b/pkg/dialects/all/enum_mav_storm32_gimbal_manager_flags.go new file mode 100644 index 000000000..6c3025195 --- /dev/null +++ b/pkg/dialects/all/enum_mav_storm32_gimbal_manager_flags.go @@ -0,0 +1,66 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package all + +import ( + "errors" +) + +// Flags for gimbal manager operation. Used for setting and reporting, unless specified otherwise. If a setting is accepted by the gimbal manger, is reported in the STORM32_GIMBAL_MANAGER_STATUS message. +type MAV_STORM32_GIMBAL_MANAGER_FLAGS int + +const ( + // 0 = ignore. + MAV_STORM32_GIMBAL_MANAGER_FLAGS_NONE MAV_STORM32_GIMBAL_MANAGER_FLAGS = 0 + // Request to set RC input to active, or report RC input is active. Implies RC mixed. RC exclusive is achieved by setting all clients to inactive. + MAV_STORM32_GIMBAL_MANAGER_FLAGS_RC_ACTIVE MAV_STORM32_GIMBAL_MANAGER_FLAGS = 1 + // Request to set onboard/companion computer client to active, or report this client is active. + MAV_STORM32_GIMBAL_MANAGER_FLAGS_CLIENT_ONBOARD_ACTIVE MAV_STORM32_GIMBAL_MANAGER_FLAGS = 2 + // Request to set autopliot client to active, or report this client is active. + MAV_STORM32_GIMBAL_MANAGER_FLAGS_CLIENT_AUTOPILOT_ACTIVE MAV_STORM32_GIMBAL_MANAGER_FLAGS = 4 + // Request to set GCS client to active, or report this client is active. + MAV_STORM32_GIMBAL_MANAGER_FLAGS_CLIENT_GCS_ACTIVE MAV_STORM32_GIMBAL_MANAGER_FLAGS = 8 + // Request to set camera client to active, or report this client is active. + MAV_STORM32_GIMBAL_MANAGER_FLAGS_CLIENT_CAMERA_ACTIVE MAV_STORM32_GIMBAL_MANAGER_FLAGS = 16 + // Request to set GCS2 client to active, or report this client is active. + MAV_STORM32_GIMBAL_MANAGER_FLAGS_CLIENT_GCS2_ACTIVE MAV_STORM32_GIMBAL_MANAGER_FLAGS = 32 + // Request to set camera2 client to active, or report this client is active. + MAV_STORM32_GIMBAL_MANAGER_FLAGS_CLIENT_CAMERA2_ACTIVE MAV_STORM32_GIMBAL_MANAGER_FLAGS = 64 + // Request to set custom client to active, or report this client is active. + MAV_STORM32_GIMBAL_MANAGER_FLAGS_CLIENT_CUSTOM_ACTIVE MAV_STORM32_GIMBAL_MANAGER_FLAGS = 128 + // Request to set custom2 client to active, or report this client is active. + MAV_STORM32_GIMBAL_MANAGER_FLAGS_CLIENT_CUSTOM2_ACTIVE MAV_STORM32_GIMBAL_MANAGER_FLAGS = 256 + // Request supervision. This flag is only for setting, it is not reported. + MAV_STORM32_GIMBAL_MANAGER_FLAGS_SET_SUPERVISON MAV_STORM32_GIMBAL_MANAGER_FLAGS = 512 + // Release supervision. This flag is only for setting, it is not reported. + MAV_STORM32_GIMBAL_MANAGER_FLAGS_SET_RELEASE MAV_STORM32_GIMBAL_MANAGER_FLAGS = 1024 +) + +var labels_MAV_STORM32_GIMBAL_MANAGER_FLAGS = map[MAV_STORM32_GIMBAL_MANAGER_FLAGS]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAV_STORM32_GIMBAL_MANAGER_FLAGS) MarshalText() ([]byte, error) { + if l, ok := labels_MAV_STORM32_GIMBAL_MANAGER_FLAGS[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAV_STORM32_GIMBAL_MANAGER_FLAGS = map[string]MAV_STORM32_GIMBAL_MANAGER_FLAGS{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAV_STORM32_GIMBAL_MANAGER_FLAGS) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAV_STORM32_GIMBAL_MANAGER_FLAGS[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAV_STORM32_GIMBAL_MANAGER_FLAGS) String() string { + if l, ok := labels_MAV_STORM32_GIMBAL_MANAGER_FLAGS[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/all/enum_mav_storm32_gimbal_manager_profile.go b/pkg/dialects/all/enum_mav_storm32_gimbal_manager_profile.go new file mode 100644 index 000000000..b02abdfdc --- /dev/null +++ b/pkg/dialects/all/enum_mav_storm32_gimbal_manager_profile.go @@ -0,0 +1,54 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package all + +import ( + "errors" +) + +// Gimbal manager profiles. Only standard profiles are defined. Any implementation can define it's own profile in addition, and should use enum values > 16. +type MAV_STORM32_GIMBAL_MANAGER_PROFILE int + +const ( + // Default profile. Implementation specific. + MAV_STORM32_GIMBAL_MANAGER_PROFILE_DEFAULT MAV_STORM32_GIMBAL_MANAGER_PROFILE = 0 + // Custom profile. Configurable profile according to the STorM32 definition. Is configured with STORM32_GIMBAL_MANAGER_PROFIL. + MAV_STORM32_GIMBAL_MANAGER_PROFILE_CUSTOM MAV_STORM32_GIMBAL_MANAGER_PROFILE = 1 + // Default cooperative profile. Uses STorM32 custom profile with default settings to achieve cooperative behavior. + MAV_STORM32_GIMBAL_MANAGER_PROFILE_COOPERATIVE MAV_STORM32_GIMBAL_MANAGER_PROFILE = 2 + // Default exclusive profile. Uses STorM32 custom profile with default settings to achieve exclusive behavior. + MAV_STORM32_GIMBAL_MANAGER_PROFILE_EXCLUSIVE MAV_STORM32_GIMBAL_MANAGER_PROFILE = 3 + // Default priority profile with cooperative behavior for equal priority. Uses STorM32 custom profile with default settings to achieve priority-based behavior. + MAV_STORM32_GIMBAL_MANAGER_PROFILE_PRIORITY_COOPERATIVE MAV_STORM32_GIMBAL_MANAGER_PROFILE = 4 + // Default priority profile with exclusive behavior for equal priority. Uses STorM32 custom profile with default settings to achieve priority-based behavior. + MAV_STORM32_GIMBAL_MANAGER_PROFILE_PRIORITY_EXCLUSIVE MAV_STORM32_GIMBAL_MANAGER_PROFILE = 5 +) + +var labels_MAV_STORM32_GIMBAL_MANAGER_PROFILE = map[MAV_STORM32_GIMBAL_MANAGER_PROFILE]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAV_STORM32_GIMBAL_MANAGER_PROFILE) MarshalText() ([]byte, error) { + if l, ok := labels_MAV_STORM32_GIMBAL_MANAGER_PROFILE[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAV_STORM32_GIMBAL_MANAGER_PROFILE = map[string]MAV_STORM32_GIMBAL_MANAGER_PROFILE{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAV_STORM32_GIMBAL_MANAGER_PROFILE) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAV_STORM32_GIMBAL_MANAGER_PROFILE[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAV_STORM32_GIMBAL_MANAGER_PROFILE) String() string { + if l, ok := labels_MAV_STORM32_GIMBAL_MANAGER_PROFILE[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/all/enum_mav_storm32_gimbal_manager_setup_flags.go b/pkg/dialects/all/enum_mav_storm32_gimbal_manager_setup_flags.go new file mode 100644 index 000000000..83e8b44c7 --- /dev/null +++ b/pkg/dialects/all/enum_mav_storm32_gimbal_manager_setup_flags.go @@ -0,0 +1,46 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package all + +import ( + "errors" +) + +// Flags for gimbal manager set up. Used for setting and reporting, unless specified otherwise. +type MAV_STORM32_GIMBAL_MANAGER_SETUP_FLAGS int + +const ( + // Enable gimbal manager. This flag is only for setting, is not reported. + MAV_STORM32_GIMBAL_MANAGER_SETUP_FLAGS_ENABLE MAV_STORM32_GIMBAL_MANAGER_SETUP_FLAGS = 16384 + // Disable gimbal manager. This flag is only for setting, is not reported. + MAV_STORM32_GIMBAL_MANAGER_SETUP_FLAGS_DISABLE MAV_STORM32_GIMBAL_MANAGER_SETUP_FLAGS = 32768 +) + +var labels_MAV_STORM32_GIMBAL_MANAGER_SETUP_FLAGS = map[MAV_STORM32_GIMBAL_MANAGER_SETUP_FLAGS]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAV_STORM32_GIMBAL_MANAGER_SETUP_FLAGS) MarshalText() ([]byte, error) { + if l, ok := labels_MAV_STORM32_GIMBAL_MANAGER_SETUP_FLAGS[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAV_STORM32_GIMBAL_MANAGER_SETUP_FLAGS = map[string]MAV_STORM32_GIMBAL_MANAGER_SETUP_FLAGS{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAV_STORM32_GIMBAL_MANAGER_SETUP_FLAGS) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAV_STORM32_GIMBAL_MANAGER_SETUP_FLAGS[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAV_STORM32_GIMBAL_MANAGER_SETUP_FLAGS) String() string { + if l, ok := labels_MAV_STORM32_GIMBAL_MANAGER_SETUP_FLAGS[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/all/enum_mav_storm32_gimbal_prearm_flags.go b/pkg/dialects/all/enum_mav_storm32_gimbal_prearm_flags.go new file mode 100644 index 000000000..3c37227c5 --- /dev/null +++ b/pkg/dialects/all/enum_mav_storm32_gimbal_prearm_flags.go @@ -0,0 +1,68 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package all + +import ( + "errors" +) + +// STorM32 gimbal prearm check flags. +type MAV_STORM32_GIMBAL_PREARM_FLAGS int + +const ( + // STorM32 gimbal is in normal state. + MAV_STORM32_GIMBAL_PREARM_FLAGS_IS_NORMAL MAV_STORM32_GIMBAL_PREARM_FLAGS = 1 + // The IMUs are healthy and working normally. + MAV_STORM32_GIMBAL_PREARM_FLAGS_IMUS_WORKING MAV_STORM32_GIMBAL_PREARM_FLAGS = 2 + // The motors are active and working normally. + MAV_STORM32_GIMBAL_PREARM_FLAGS_MOTORS_WORKING MAV_STORM32_GIMBAL_PREARM_FLAGS = 4 + // The encoders are healthy and working normally. + MAV_STORM32_GIMBAL_PREARM_FLAGS_ENCODERS_WORKING MAV_STORM32_GIMBAL_PREARM_FLAGS = 8 + // A battery voltage is applied and is in range. + MAV_STORM32_GIMBAL_PREARM_FLAGS_VOLTAGE_OK MAV_STORM32_GIMBAL_PREARM_FLAGS = 16 + // ???. + MAV_STORM32_GIMBAL_PREARM_FLAGS_VIRTUALCHANNELS_RECEIVING MAV_STORM32_GIMBAL_PREARM_FLAGS = 32 + // Mavlink messages are being received. + MAV_STORM32_GIMBAL_PREARM_FLAGS_MAVLINK_RECEIVING MAV_STORM32_GIMBAL_PREARM_FLAGS = 64 + // The STorM32Link data indicates QFix. + MAV_STORM32_GIMBAL_PREARM_FLAGS_STORM32LINK_QFIX MAV_STORM32_GIMBAL_PREARM_FLAGS = 128 + // The STorM32Link is working. + MAV_STORM32_GIMBAL_PREARM_FLAGS_STORM32LINK_WORKING MAV_STORM32_GIMBAL_PREARM_FLAGS = 256 + // The camera has been found and is connected. + MAV_STORM32_GIMBAL_PREARM_FLAGS_CAMERA_CONNECTED MAV_STORM32_GIMBAL_PREARM_FLAGS = 512 + // The signal on the AUX0 input pin is low. + MAV_STORM32_GIMBAL_PREARM_FLAGS_AUX0_LOW MAV_STORM32_GIMBAL_PREARM_FLAGS = 1024 + // The signal on the AUX1 input pin is low. + MAV_STORM32_GIMBAL_PREARM_FLAGS_AUX1_LOW MAV_STORM32_GIMBAL_PREARM_FLAGS = 2048 + // The NTLogger is working normally. + MAV_STORM32_GIMBAL_PREARM_FLAGS_NTLOGGER_WORKING MAV_STORM32_GIMBAL_PREARM_FLAGS = 4096 +) + +var labels_MAV_STORM32_GIMBAL_PREARM_FLAGS = map[MAV_STORM32_GIMBAL_PREARM_FLAGS]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAV_STORM32_GIMBAL_PREARM_FLAGS) MarshalText() ([]byte, error) { + if l, ok := labels_MAV_STORM32_GIMBAL_PREARM_FLAGS[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAV_STORM32_GIMBAL_PREARM_FLAGS = map[string]MAV_STORM32_GIMBAL_PREARM_FLAGS{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAV_STORM32_GIMBAL_PREARM_FLAGS) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAV_STORM32_GIMBAL_PREARM_FLAGS[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAV_STORM32_GIMBAL_PREARM_FLAGS) String() string { + if l, ok := labels_MAV_STORM32_GIMBAL_PREARM_FLAGS[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/all/enum_mav_storm32_tunnel_payload_type.go b/pkg/dialects/all/enum_mav_storm32_tunnel_payload_type.go new file mode 100644 index 000000000..bdb53cdb2 --- /dev/null +++ b/pkg/dialects/all/enum_mav_storm32_tunnel_payload_type.go @@ -0,0 +1,61 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package all + +import ( + "errors" +) + +type MAV_STORM32_TUNNEL_PAYLOAD_TYPE int + +const ( + // Registered for STorM32 gimbal controller. + MAV_STORM32_TUNNEL_PAYLOAD_TYPE_STORM32_CH1_IN MAV_STORM32_TUNNEL_PAYLOAD_TYPE = 200 + // Registered for STorM32 gimbal controller. + MAV_STORM32_TUNNEL_PAYLOAD_TYPE_STORM32_CH1_OUT MAV_STORM32_TUNNEL_PAYLOAD_TYPE = 201 + // Registered for STorM32 gimbal controller. + MAV_STORM32_TUNNEL_PAYLOAD_TYPE_STORM32_CH2_IN MAV_STORM32_TUNNEL_PAYLOAD_TYPE = 202 + // Registered for STorM32 gimbal controller. + MAV_STORM32_TUNNEL_PAYLOAD_TYPE_STORM32_CH2_OUT MAV_STORM32_TUNNEL_PAYLOAD_TYPE = 203 + // Registered for STorM32 gimbal controller. + MAV_STORM32_TUNNEL_PAYLOAD_TYPE_STORM32_CH3_IN MAV_STORM32_TUNNEL_PAYLOAD_TYPE = 204 + // Registered for STorM32 gimbal controller. + MAV_STORM32_TUNNEL_PAYLOAD_TYPE_STORM32_CH3_OUT MAV_STORM32_TUNNEL_PAYLOAD_TYPE = 205 + // Registered for STorM32 gimbal controller. + MAV_STORM32_TUNNEL_PAYLOAD_TYPE_STORM32_RESERVED6 MAV_STORM32_TUNNEL_PAYLOAD_TYPE = 206 + // Registered for STorM32 gimbal controller. + MAV_STORM32_TUNNEL_PAYLOAD_TYPE_STORM32_RESERVED7 MAV_STORM32_TUNNEL_PAYLOAD_TYPE = 207 + // Registered for STorM32 gimbal controller. + MAV_STORM32_TUNNEL_PAYLOAD_TYPE_STORM32_RESERVED8 MAV_STORM32_TUNNEL_PAYLOAD_TYPE = 208 + // Registered for STorM32 gimbal controller. + MAV_STORM32_TUNNEL_PAYLOAD_TYPE_STORM32_RESERVED9 MAV_STORM32_TUNNEL_PAYLOAD_TYPE = 209 +) + +var labels_MAV_STORM32_TUNNEL_PAYLOAD_TYPE = map[MAV_STORM32_TUNNEL_PAYLOAD_TYPE]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAV_STORM32_TUNNEL_PAYLOAD_TYPE) MarshalText() ([]byte, error) { + if l, ok := labels_MAV_STORM32_TUNNEL_PAYLOAD_TYPE[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAV_STORM32_TUNNEL_PAYLOAD_TYPE = map[string]MAV_STORM32_TUNNEL_PAYLOAD_TYPE{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAV_STORM32_TUNNEL_PAYLOAD_TYPE) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAV_STORM32_TUNNEL_PAYLOAD_TYPE[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAV_STORM32_TUNNEL_PAYLOAD_TYPE) String() string { + if l, ok := labels_MAV_STORM32_TUNNEL_PAYLOAD_TYPE[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/all/enum_mav_sys_status_sensor.go b/pkg/dialects/all/enum_mav_sys_status_sensor.go new file mode 100644 index 000000000..cc80e1e59 --- /dev/null +++ b/pkg/dialects/all/enum_mav_sys_status_sensor.go @@ -0,0 +1,106 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package all + +import ( + "errors" +) + +// These encode the sensors whose status is sent as part of the SYS_STATUS message. +type MAV_SYS_STATUS_SENSOR int + +const ( + // 0x01 3D gyro + MAV_SYS_STATUS_SENSOR_3D_GYRO MAV_SYS_STATUS_SENSOR = 1 + // 0x02 3D accelerometer + MAV_SYS_STATUS_SENSOR_3D_ACCEL MAV_SYS_STATUS_SENSOR = 2 + // 0x04 3D magnetometer + MAV_SYS_STATUS_SENSOR_3D_MAG MAV_SYS_STATUS_SENSOR = 4 + // 0x08 absolute pressure + MAV_SYS_STATUS_SENSOR_ABSOLUTE_PRESSURE MAV_SYS_STATUS_SENSOR = 8 + // 0x10 differential pressure + MAV_SYS_STATUS_SENSOR_DIFFERENTIAL_PRESSURE MAV_SYS_STATUS_SENSOR = 16 + // 0x20 GPS + MAV_SYS_STATUS_SENSOR_GPS MAV_SYS_STATUS_SENSOR = 32 + // 0x40 optical flow + MAV_SYS_STATUS_SENSOR_OPTICAL_FLOW MAV_SYS_STATUS_SENSOR = 64 + // 0x80 computer vision position + MAV_SYS_STATUS_SENSOR_VISION_POSITION MAV_SYS_STATUS_SENSOR = 128 + // 0x100 laser based position + MAV_SYS_STATUS_SENSOR_LASER_POSITION MAV_SYS_STATUS_SENSOR = 256 + // 0x200 external ground truth (Vicon or Leica) + MAV_SYS_STATUS_SENSOR_EXTERNAL_GROUND_TRUTH MAV_SYS_STATUS_SENSOR = 512 + // 0x400 3D angular rate control + MAV_SYS_STATUS_SENSOR_ANGULAR_RATE_CONTROL MAV_SYS_STATUS_SENSOR = 1024 + // 0x800 attitude stabilization + MAV_SYS_STATUS_SENSOR_ATTITUDE_STABILIZATION MAV_SYS_STATUS_SENSOR = 2048 + // 0x1000 yaw position + MAV_SYS_STATUS_SENSOR_YAW_POSITION MAV_SYS_STATUS_SENSOR = 4096 + // 0x2000 z/altitude control + MAV_SYS_STATUS_SENSOR_Z_ALTITUDE_CONTROL MAV_SYS_STATUS_SENSOR = 8192 + // 0x4000 x/y position control + MAV_SYS_STATUS_SENSOR_XY_POSITION_CONTROL MAV_SYS_STATUS_SENSOR = 16384 + // 0x8000 motor outputs / control + MAV_SYS_STATUS_SENSOR_MOTOR_OUTPUTS MAV_SYS_STATUS_SENSOR = 32768 + // 0x10000 rc receiver + MAV_SYS_STATUS_SENSOR_RC_RECEIVER MAV_SYS_STATUS_SENSOR = 65536 + // 0x20000 2nd 3D gyro + MAV_SYS_STATUS_SENSOR_3D_GYRO2 MAV_SYS_STATUS_SENSOR = 131072 + // 0x40000 2nd 3D accelerometer + MAV_SYS_STATUS_SENSOR_3D_ACCEL2 MAV_SYS_STATUS_SENSOR = 262144 + // 0x80000 2nd 3D magnetometer + MAV_SYS_STATUS_SENSOR_3D_MAG2 MAV_SYS_STATUS_SENSOR = 524288 + // 0x100000 geofence + MAV_SYS_STATUS_GEOFENCE MAV_SYS_STATUS_SENSOR = 1048576 + // 0x200000 AHRS subsystem health + MAV_SYS_STATUS_AHRS MAV_SYS_STATUS_SENSOR = 2097152 + // 0x400000 Terrain subsystem health + MAV_SYS_STATUS_TERRAIN MAV_SYS_STATUS_SENSOR = 4194304 + // 0x800000 Motors are reversed + MAV_SYS_STATUS_REVERSE_MOTOR MAV_SYS_STATUS_SENSOR = 8388608 + // 0x1000000 Logging + MAV_SYS_STATUS_LOGGING MAV_SYS_STATUS_SENSOR = 16777216 + // 0x2000000 Battery + MAV_SYS_STATUS_SENSOR_BATTERY MAV_SYS_STATUS_SENSOR = 33554432 + // 0x4000000 Proximity + MAV_SYS_STATUS_SENSOR_PROXIMITY MAV_SYS_STATUS_SENSOR = 67108864 + // 0x8000000 Satellite Communication + MAV_SYS_STATUS_SENSOR_SATCOM MAV_SYS_STATUS_SENSOR = 134217728 + // 0x10000000 pre-arm check status. Always healthy when armed + MAV_SYS_STATUS_PREARM_CHECK MAV_SYS_STATUS_SENSOR = 268435456 + // 0x20000000 Avoidance/collision prevention + MAV_SYS_STATUS_OBSTACLE_AVOIDANCE MAV_SYS_STATUS_SENSOR = 536870912 + // 0x40000000 propulsion (actuator, esc, motor or propellor) + MAV_SYS_STATUS_SENSOR_PROPULSION MAV_SYS_STATUS_SENSOR = 1073741824 + // 0x80000000 Extended bit-field are used for further sensor status bits (needs to be set in onboard_control_sensors_present only) + MAV_SYS_STATUS_EXTENSION_USED MAV_SYS_STATUS_SENSOR = 2147483648 +) + +var labels_MAV_SYS_STATUS_SENSOR = map[MAV_SYS_STATUS_SENSOR]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAV_SYS_STATUS_SENSOR) MarshalText() ([]byte, error) { + if l, ok := labels_MAV_SYS_STATUS_SENSOR[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAV_SYS_STATUS_SENSOR = map[string]MAV_SYS_STATUS_SENSOR{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAV_SYS_STATUS_SENSOR) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAV_SYS_STATUS_SENSOR[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAV_SYS_STATUS_SENSOR) String() string { + if l, ok := labels_MAV_SYS_STATUS_SENSOR[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/all/enum_mav_sys_status_sensor_extended.go b/pkg/dialects/all/enum_mav_sys_status_sensor_extended.go new file mode 100644 index 000000000..2040adc5c --- /dev/null +++ b/pkg/dialects/all/enum_mav_sys_status_sensor_extended.go @@ -0,0 +1,44 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package all + +import ( + "errors" +) + +// These encode the sensors whose status is sent as part of the SYS_STATUS message in the extended fields. +type MAV_SYS_STATUS_SENSOR_EXTENDED int + +const ( + // 0x01 Recovery system (parachute, balloon, retracts etc) + MAV_SYS_STATUS_RECOVERY_SYSTEM MAV_SYS_STATUS_SENSOR_EXTENDED = 1 +) + +var labels_MAV_SYS_STATUS_SENSOR_EXTENDED = map[MAV_SYS_STATUS_SENSOR_EXTENDED]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAV_SYS_STATUS_SENSOR_EXTENDED) MarshalText() ([]byte, error) { + if l, ok := labels_MAV_SYS_STATUS_SENSOR_EXTENDED[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAV_SYS_STATUS_SENSOR_EXTENDED = map[string]MAV_SYS_STATUS_SENSOR_EXTENDED{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAV_SYS_STATUS_SENSOR_EXTENDED) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAV_SYS_STATUS_SENSOR_EXTENDED[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAV_SYS_STATUS_SENSOR_EXTENDED) String() string { + if l, ok := labels_MAV_SYS_STATUS_SENSOR_EXTENDED[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/all/enum_mav_tunnel_payload_type.go b/pkg/dialects/all/enum_mav_tunnel_payload_type.go new file mode 100644 index 000000000..03179f49b --- /dev/null +++ b/pkg/dialects/all/enum_mav_tunnel_payload_type.go @@ -0,0 +1,63 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package all + +import ( + "errors" +) + +type MAV_TUNNEL_PAYLOAD_TYPE int + +const ( + // Encoding of payload unknown. + MAV_TUNNEL_PAYLOAD_TYPE_UNKNOWN MAV_TUNNEL_PAYLOAD_TYPE = 0 + // Registered for STorM32 gimbal controller. + MAV_TUNNEL_PAYLOAD_TYPE_STORM32_RESERVED0 MAV_TUNNEL_PAYLOAD_TYPE = 200 + // Registered for STorM32 gimbal controller. + MAV_TUNNEL_PAYLOAD_TYPE_STORM32_RESERVED1 MAV_TUNNEL_PAYLOAD_TYPE = 201 + // Registered for STorM32 gimbal controller. + MAV_TUNNEL_PAYLOAD_TYPE_STORM32_RESERVED2 MAV_TUNNEL_PAYLOAD_TYPE = 202 + // Registered for STorM32 gimbal controller. + MAV_TUNNEL_PAYLOAD_TYPE_STORM32_RESERVED3 MAV_TUNNEL_PAYLOAD_TYPE = 203 + // Registered for STorM32 gimbal controller. + MAV_TUNNEL_PAYLOAD_TYPE_STORM32_RESERVED4 MAV_TUNNEL_PAYLOAD_TYPE = 204 + // Registered for STorM32 gimbal controller. + MAV_TUNNEL_PAYLOAD_TYPE_STORM32_RESERVED5 MAV_TUNNEL_PAYLOAD_TYPE = 205 + // Registered for STorM32 gimbal controller. + MAV_TUNNEL_PAYLOAD_TYPE_STORM32_RESERVED6 MAV_TUNNEL_PAYLOAD_TYPE = 206 + // Registered for STorM32 gimbal controller. + MAV_TUNNEL_PAYLOAD_TYPE_STORM32_RESERVED7 MAV_TUNNEL_PAYLOAD_TYPE = 207 + // Registered for STorM32 gimbal controller. + MAV_TUNNEL_PAYLOAD_TYPE_STORM32_RESERVED8 MAV_TUNNEL_PAYLOAD_TYPE = 208 + // Registered for STorM32 gimbal controller. + MAV_TUNNEL_PAYLOAD_TYPE_STORM32_RESERVED9 MAV_TUNNEL_PAYLOAD_TYPE = 209 +) + +var labels_MAV_TUNNEL_PAYLOAD_TYPE = map[MAV_TUNNEL_PAYLOAD_TYPE]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAV_TUNNEL_PAYLOAD_TYPE) MarshalText() ([]byte, error) { + if l, ok := labels_MAV_TUNNEL_PAYLOAD_TYPE[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAV_TUNNEL_PAYLOAD_TYPE = map[string]MAV_TUNNEL_PAYLOAD_TYPE{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAV_TUNNEL_PAYLOAD_TYPE) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAV_TUNNEL_PAYLOAD_TYPE[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAV_TUNNEL_PAYLOAD_TYPE) String() string { + if l, ok := labels_MAV_TUNNEL_PAYLOAD_TYPE[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/all/enum_mav_type.go b/pkg/dialects/all/enum_mav_type.go new file mode 100644 index 000000000..a005ecbd9 --- /dev/null +++ b/pkg/dialects/all/enum_mav_type.go @@ -0,0 +1,126 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package all + +import ( + "errors" +) + +// MAVLINK component type reported in HEARTBEAT message. Flight controllers must report the type of the vehicle on which they are mounted (e.g. MAV_TYPE_OCTOROTOR). All other components must report a value appropriate for their type (e.g. a camera must use MAV_TYPE_CAMERA). +type MAV_TYPE int + +const ( + // Generic micro air vehicle + MAV_TYPE_GENERIC MAV_TYPE = 0 + // Fixed wing aircraft. + MAV_TYPE_FIXED_WING MAV_TYPE = 1 + // Quadrotor + MAV_TYPE_QUADROTOR MAV_TYPE = 2 + // Coaxial helicopter + MAV_TYPE_COAXIAL MAV_TYPE = 3 + // Normal helicopter with tail rotor. + MAV_TYPE_HELICOPTER MAV_TYPE = 4 + // Ground installation + MAV_TYPE_ANTENNA_TRACKER MAV_TYPE = 5 + // Operator control unit / ground control station + MAV_TYPE_GCS MAV_TYPE = 6 + // Airship, controlled + MAV_TYPE_AIRSHIP MAV_TYPE = 7 + // Free balloon, uncontrolled + MAV_TYPE_FREE_BALLOON MAV_TYPE = 8 + // Rocket + MAV_TYPE_ROCKET MAV_TYPE = 9 + // Ground rover + MAV_TYPE_GROUND_ROVER MAV_TYPE = 10 + // Surface vessel, boat, ship + MAV_TYPE_SURFACE_BOAT MAV_TYPE = 11 + // Submarine + MAV_TYPE_SUBMARINE MAV_TYPE = 12 + // Hexarotor + MAV_TYPE_HEXAROTOR MAV_TYPE = 13 + // Octorotor + MAV_TYPE_OCTOROTOR MAV_TYPE = 14 + // Tricopter + MAV_TYPE_TRICOPTER MAV_TYPE = 15 + // Flapping wing + MAV_TYPE_FLAPPING_WING MAV_TYPE = 16 + // Kite + MAV_TYPE_KITE MAV_TYPE = 17 + // Onboard companion controller + MAV_TYPE_ONBOARD_CONTROLLER MAV_TYPE = 18 + // Two-rotor VTOL using control surfaces in vertical operation in addition. Tailsitter. + MAV_TYPE_VTOL_DUOROTOR MAV_TYPE = 19 + // Quad-rotor VTOL using a V-shaped quad config in vertical operation. Tailsitter. + MAV_TYPE_VTOL_QUADROTOR MAV_TYPE = 20 + // Tiltrotor VTOL + MAV_TYPE_VTOL_TILTROTOR MAV_TYPE = 21 + // VTOL reserved 2 + MAV_TYPE_VTOL_RESERVED2 MAV_TYPE = 22 + // VTOL reserved 3 + MAV_TYPE_VTOL_RESERVED3 MAV_TYPE = 23 + // VTOL reserved 4 + MAV_TYPE_VTOL_RESERVED4 MAV_TYPE = 24 + // VTOL reserved 5 + MAV_TYPE_VTOL_RESERVED5 MAV_TYPE = 25 + // Gimbal + MAV_TYPE_GIMBAL MAV_TYPE = 26 + // ADSB system + MAV_TYPE_ADSB MAV_TYPE = 27 + // Steerable, nonrigid airfoil + MAV_TYPE_PARAFOIL MAV_TYPE = 28 + // Dodecarotor + MAV_TYPE_DODECAROTOR MAV_TYPE = 29 + // Camera + MAV_TYPE_CAMERA MAV_TYPE = 30 + // Charging station + MAV_TYPE_CHARGING_STATION MAV_TYPE = 31 + // FLARM collision avoidance system + MAV_TYPE_FLARM MAV_TYPE = 32 + // Servo + MAV_TYPE_SERVO MAV_TYPE = 33 + // Open Drone ID. See https://mavlink.io/en/services/opendroneid.html. + MAV_TYPE_ODID MAV_TYPE = 34 + // Decarotor + MAV_TYPE_DECAROTOR MAV_TYPE = 35 + // Battery + MAV_TYPE_BATTERY MAV_TYPE = 36 + // Parachute + MAV_TYPE_PARACHUTE MAV_TYPE = 37 + // Log + MAV_TYPE_LOG MAV_TYPE = 38 + // OSD + MAV_TYPE_OSD MAV_TYPE = 39 + // IMU + MAV_TYPE_IMU MAV_TYPE = 40 + // GPS + MAV_TYPE_GPS MAV_TYPE = 41 +) + +var labels_MAV_TYPE = map[MAV_TYPE]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAV_TYPE) MarshalText() ([]byte, error) { + if l, ok := labels_MAV_TYPE[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAV_TYPE = map[string]MAV_TYPE{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAV_TYPE) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAV_TYPE[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAV_TYPE) String() string { + if l, ok := labels_MAV_TYPE[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/all/enum_mav_vtol_state.go b/pkg/dialects/all/enum_mav_vtol_state.go new file mode 100644 index 000000000..b8f25545f --- /dev/null +++ b/pkg/dialects/all/enum_mav_vtol_state.go @@ -0,0 +1,52 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package all + +import ( + "errors" +) + +// Enumeration of VTOL states +type MAV_VTOL_STATE int + +const ( + // MAV is not configured as VTOL + MAV_VTOL_STATE_UNDEFINED MAV_VTOL_STATE = 0 + // VTOL is in transition from multicopter to fixed-wing + MAV_VTOL_STATE_TRANSITION_TO_FW MAV_VTOL_STATE = 1 + // VTOL is in transition from fixed-wing to multicopter + MAV_VTOL_STATE_TRANSITION_TO_MC MAV_VTOL_STATE = 2 + // VTOL is in multicopter state + MAV_VTOL_STATE_MC MAV_VTOL_STATE = 3 + // VTOL is in fixed-wing state + MAV_VTOL_STATE_FW MAV_VTOL_STATE = 4 +) + +var labels_MAV_VTOL_STATE = map[MAV_VTOL_STATE]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAV_VTOL_STATE) MarshalText() ([]byte, error) { + if l, ok := labels_MAV_VTOL_STATE[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAV_VTOL_STATE = map[string]MAV_VTOL_STATE{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAV_VTOL_STATE) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAV_VTOL_STATE[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAV_VTOL_STATE) String() string { + if l, ok := labels_MAV_VTOL_STATE[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/all/enum_mav_winch_status_flag.go b/pkg/dialects/all/enum_mav_winch_status_flag.go new file mode 100644 index 000000000..d0190dd01 --- /dev/null +++ b/pkg/dialects/all/enum_mav_winch_status_flag.go @@ -0,0 +1,64 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package all + +import ( + "errors" +) + +// Winch status flags used in WINCH_STATUS +type MAV_WINCH_STATUS_FLAG int + +const ( + // Winch is healthy + MAV_WINCH_STATUS_HEALTHY MAV_WINCH_STATUS_FLAG = 1 + // Winch line is fully retracted + MAV_WINCH_STATUS_FULLY_RETRACTED MAV_WINCH_STATUS_FLAG = 2 + // Winch motor is moving + MAV_WINCH_STATUS_MOVING MAV_WINCH_STATUS_FLAG = 4 + // Winch clutch is engaged allowing motor to move freely. + MAV_WINCH_STATUS_CLUTCH_ENGAGED MAV_WINCH_STATUS_FLAG = 8 + // Winch is locked by locking mechanism. + MAV_WINCH_STATUS_LOCKED MAV_WINCH_STATUS_FLAG = 16 + // Winch is gravity dropping payload. + MAV_WINCH_STATUS_DROPPING MAV_WINCH_STATUS_FLAG = 32 + // Winch is arresting payload descent. + MAV_WINCH_STATUS_ARRESTING MAV_WINCH_STATUS_FLAG = 64 + // Winch is using torque measurements to sense the ground. + MAV_WINCH_STATUS_GROUND_SENSE MAV_WINCH_STATUS_FLAG = 128 + // Winch is returning to the fully retracted position. + MAV_WINCH_STATUS_RETRACTING MAV_WINCH_STATUS_FLAG = 256 + // Winch is redelivering the payload. This is a failover state if the line tension goes above a threshold during RETRACTING. + MAV_WINCH_STATUS_REDELIVER MAV_WINCH_STATUS_FLAG = 512 + // Winch is abandoning the line and possibly payload. Winch unspools the entire calculated line length. This is a failover state from REDELIVER if the number of attemps exceeds a threshold. + MAV_WINCH_STATUS_ABANDON_LINE MAV_WINCH_STATUS_FLAG = 1024 +) + +var labels_MAV_WINCH_STATUS_FLAG = map[MAV_WINCH_STATUS_FLAG]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAV_WINCH_STATUS_FLAG) MarshalText() ([]byte, error) { + if l, ok := labels_MAV_WINCH_STATUS_FLAG[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAV_WINCH_STATUS_FLAG = map[string]MAV_WINCH_STATUS_FLAG{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAV_WINCH_STATUS_FLAG) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAV_WINCH_STATUS_FLAG[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAV_WINCH_STATUS_FLAG) String() string { + if l, ok := labels_MAV_WINCH_STATUS_FLAG[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/all/enum_mavlink_data_stream_type.go b/pkg/dialects/all/enum_mavlink_data_stream_type.go new file mode 100644 index 000000000..5eebb213a --- /dev/null +++ b/pkg/dialects/all/enum_mavlink_data_stream_type.go @@ -0,0 +1,47 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package all + +import ( + "errors" +) + +type MAVLINK_DATA_STREAM_TYPE int + +const ( + MAVLINK_DATA_STREAM_IMG_JPEG MAVLINK_DATA_STREAM_TYPE = 0 + MAVLINK_DATA_STREAM_IMG_BMP MAVLINK_DATA_STREAM_TYPE = 1 + MAVLINK_DATA_STREAM_IMG_RAW8U MAVLINK_DATA_STREAM_TYPE = 2 + MAVLINK_DATA_STREAM_IMG_RAW32U MAVLINK_DATA_STREAM_TYPE = 3 + MAVLINK_DATA_STREAM_IMG_PGM MAVLINK_DATA_STREAM_TYPE = 4 + MAVLINK_DATA_STREAM_IMG_PNG MAVLINK_DATA_STREAM_TYPE = 5 +) + +var labels_MAVLINK_DATA_STREAM_TYPE = map[MAVLINK_DATA_STREAM_TYPE]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAVLINK_DATA_STREAM_TYPE) MarshalText() ([]byte, error) { + if l, ok := labels_MAVLINK_DATA_STREAM_TYPE[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAVLINK_DATA_STREAM_TYPE = map[string]MAVLINK_DATA_STREAM_TYPE{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAVLINK_DATA_STREAM_TYPE) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAVLINK_DATA_STREAM_TYPE[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAVLINK_DATA_STREAM_TYPE) String() string { + if l, ok := labels_MAVLINK_DATA_STREAM_TYPE[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/all/enum_motor_test_order.go b/pkg/dialects/all/enum_motor_test_order.go new file mode 100644 index 000000000..fc68921b4 --- /dev/null +++ b/pkg/dialects/all/enum_motor_test_order.go @@ -0,0 +1,48 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package all + +import ( + "errors" +) + +// Sequence that motors are tested when using MAV_CMD_DO_MOTOR_TEST. +type MOTOR_TEST_ORDER int + +const ( + // Default autopilot motor test method. + MOTOR_TEST_ORDER_DEFAULT MOTOR_TEST_ORDER = 0 + // Motor numbers are specified as their index in a predefined vehicle-specific sequence. + MOTOR_TEST_ORDER_SEQUENCE MOTOR_TEST_ORDER = 1 + // Motor numbers are specified as the output as labeled on the board. + MOTOR_TEST_ORDER_BOARD MOTOR_TEST_ORDER = 2 +) + +var labels_MOTOR_TEST_ORDER = map[MOTOR_TEST_ORDER]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MOTOR_TEST_ORDER) MarshalText() ([]byte, error) { + if l, ok := labels_MOTOR_TEST_ORDER[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MOTOR_TEST_ORDER = map[string]MOTOR_TEST_ORDER{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MOTOR_TEST_ORDER) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MOTOR_TEST_ORDER[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MOTOR_TEST_ORDER) String() string { + if l, ok := labels_MOTOR_TEST_ORDER[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/all/enum_motor_test_throttle_type.go b/pkg/dialects/all/enum_motor_test_throttle_type.go new file mode 100644 index 000000000..ab7bd4602 --- /dev/null +++ b/pkg/dialects/all/enum_motor_test_throttle_type.go @@ -0,0 +1,50 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package all + +import ( + "errors" +) + +// Defines how throttle value is represented in MAV_CMD_DO_MOTOR_TEST. +type MOTOR_TEST_THROTTLE_TYPE int + +const ( + // Throttle as a percentage (0 ~ 100) + MOTOR_TEST_THROTTLE_PERCENT MOTOR_TEST_THROTTLE_TYPE = 0 + // Throttle as an absolute PWM value (normally in range of 1000~2000). + MOTOR_TEST_THROTTLE_PWM MOTOR_TEST_THROTTLE_TYPE = 1 + // Throttle pass-through from pilot's transmitter. + MOTOR_TEST_THROTTLE_PILOT MOTOR_TEST_THROTTLE_TYPE = 2 + // Per-motor compass calibration test. + MOTOR_TEST_COMPASS_CAL MOTOR_TEST_THROTTLE_TYPE = 3 +) + +var labels_MOTOR_TEST_THROTTLE_TYPE = map[MOTOR_TEST_THROTTLE_TYPE]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MOTOR_TEST_THROTTLE_TYPE) MarshalText() ([]byte, error) { + if l, ok := labels_MOTOR_TEST_THROTTLE_TYPE[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MOTOR_TEST_THROTTLE_TYPE = map[string]MOTOR_TEST_THROTTLE_TYPE{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MOTOR_TEST_THROTTLE_TYPE) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MOTOR_TEST_THROTTLE_TYPE[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MOTOR_TEST_THROTTLE_TYPE) String() string { + if l, ok := labels_MOTOR_TEST_THROTTLE_TYPE[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/all/enum_nav_vtol_land_options.go b/pkg/dialects/all/enum_nav_vtol_land_options.go new file mode 100644 index 000000000..2c9a2dab3 --- /dev/null +++ b/pkg/dialects/all/enum_nav_vtol_land_options.go @@ -0,0 +1,48 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package all + +import ( + "errors" +) + +type NAV_VTOL_LAND_OPTIONS int + +const ( + // Default autopilot landing behaviour. + NAV_VTOL_LAND_OPTIONS_DEFAULT NAV_VTOL_LAND_OPTIONS = 0 + // Descend in fixed wing mode, transitioning to multicopter mode for vertical landing when close to the ground. + // The fixed wing descent pattern is at the discretion of the vehicle (e.g. transition altitude, loiter direction, radius, and speed, etc.). + NAV_VTOL_LAND_OPTIONS_FW_DESCENT NAV_VTOL_LAND_OPTIONS = 1 + // Land in multicopter mode on reaching the landing co-ordinates (the whole landing is by "hover descent"). + NAV_VTOL_LAND_OPTIONS_HOVER_DESCENT NAV_VTOL_LAND_OPTIONS = 2 +) + +var labels_NAV_VTOL_LAND_OPTIONS = map[NAV_VTOL_LAND_OPTIONS]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e NAV_VTOL_LAND_OPTIONS) MarshalText() ([]byte, error) { + if l, ok := labels_NAV_VTOL_LAND_OPTIONS[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_NAV_VTOL_LAND_OPTIONS = map[string]NAV_VTOL_LAND_OPTIONS{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *NAV_VTOL_LAND_OPTIONS) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_NAV_VTOL_LAND_OPTIONS[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e NAV_VTOL_LAND_OPTIONS) String() string { + if l, ok := labels_NAV_VTOL_LAND_OPTIONS[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/all/enum_orbit_yaw_behaviour.go b/pkg/dialects/all/enum_orbit_yaw_behaviour.go new file mode 100644 index 000000000..590dd2ec1 --- /dev/null +++ b/pkg/dialects/all/enum_orbit_yaw_behaviour.go @@ -0,0 +1,52 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package all + +import ( + "errors" +) + +// Yaw behaviour during orbit flight. +type ORBIT_YAW_BEHAVIOUR int + +const ( + // Vehicle front points to the center (default). + ORBIT_YAW_BEHAVIOUR_HOLD_FRONT_TO_CIRCLE_CENTER ORBIT_YAW_BEHAVIOUR = 0 + // Vehicle front holds heading when message received. + ORBIT_YAW_BEHAVIOUR_HOLD_INITIAL_HEADING ORBIT_YAW_BEHAVIOUR = 1 + // Yaw uncontrolled. + ORBIT_YAW_BEHAVIOUR_UNCONTROLLED ORBIT_YAW_BEHAVIOUR = 2 + // Vehicle front follows flight path (tangential to circle). + ORBIT_YAW_BEHAVIOUR_HOLD_FRONT_TANGENT_TO_CIRCLE ORBIT_YAW_BEHAVIOUR = 3 + // Yaw controlled by RC input. + ORBIT_YAW_BEHAVIOUR_RC_CONTROLLED ORBIT_YAW_BEHAVIOUR = 4 +) + +var labels_ORBIT_YAW_BEHAVIOUR = map[ORBIT_YAW_BEHAVIOUR]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e ORBIT_YAW_BEHAVIOUR) MarshalText() ([]byte, error) { + if l, ok := labels_ORBIT_YAW_BEHAVIOUR[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_ORBIT_YAW_BEHAVIOUR = map[string]ORBIT_YAW_BEHAVIOUR{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *ORBIT_YAW_BEHAVIOUR) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_ORBIT_YAW_BEHAVIOUR[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e ORBIT_YAW_BEHAVIOUR) String() string { + if l, ok := labels_ORBIT_YAW_BEHAVIOUR[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/all/enum_osd_param_config_error.go b/pkg/dialects/all/enum_osd_param_config_error.go new file mode 100644 index 000000000..92bea885b --- /dev/null +++ b/pkg/dialects/all/enum_osd_param_config_error.go @@ -0,0 +1,46 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package all + +import ( + "errors" +) + +// The error type for the OSD parameter editor. +type OSD_PARAM_CONFIG_ERROR int + +const ( + OSD_PARAM_SUCCESS OSD_PARAM_CONFIG_ERROR = 0 + OSD_PARAM_INVALID_SCREEN OSD_PARAM_CONFIG_ERROR = 1 + OSD_PARAM_INVALID_PARAMETER_INDEX OSD_PARAM_CONFIG_ERROR = 2 + OSD_PARAM_INVALID_PARAMETER OSD_PARAM_CONFIG_ERROR = 3 +) + +var labels_OSD_PARAM_CONFIG_ERROR = map[OSD_PARAM_CONFIG_ERROR]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e OSD_PARAM_CONFIG_ERROR) MarshalText() ([]byte, error) { + if l, ok := labels_OSD_PARAM_CONFIG_ERROR[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_OSD_PARAM_CONFIG_ERROR = map[string]OSD_PARAM_CONFIG_ERROR{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *OSD_PARAM_CONFIG_ERROR) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_OSD_PARAM_CONFIG_ERROR[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e OSD_PARAM_CONFIG_ERROR) String() string { + if l, ok := labels_OSD_PARAM_CONFIG_ERROR[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/all/enum_osd_param_config_type.go b/pkg/dialects/all/enum_osd_param_config_type.go new file mode 100644 index 000000000..2b9733efa --- /dev/null +++ b/pkg/dialects/all/enum_osd_param_config_type.go @@ -0,0 +1,51 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package all + +import ( + "errors" +) + +// The type of parameter for the OSD parameter editor. +type OSD_PARAM_CONFIG_TYPE int + +const ( + OSD_PARAM_NONE OSD_PARAM_CONFIG_TYPE = 0 + OSD_PARAM_SERIAL_PROTOCOL OSD_PARAM_CONFIG_TYPE = 1 + OSD_PARAM_SERVO_FUNCTION OSD_PARAM_CONFIG_TYPE = 2 + OSD_PARAM_AUX_FUNCTION OSD_PARAM_CONFIG_TYPE = 3 + OSD_PARAM_FLIGHT_MODE OSD_PARAM_CONFIG_TYPE = 4 + OSD_PARAM_FAILSAFE_ACTION OSD_PARAM_CONFIG_TYPE = 5 + OSD_PARAM_FAILSAFE_ACTION_1 OSD_PARAM_CONFIG_TYPE = 6 + OSD_PARAM_FAILSAFE_ACTION_2 OSD_PARAM_CONFIG_TYPE = 7 + OSD_PARAM_NUM_TYPES OSD_PARAM_CONFIG_TYPE = 8 +) + +var labels_OSD_PARAM_CONFIG_TYPE = map[OSD_PARAM_CONFIG_TYPE]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e OSD_PARAM_CONFIG_TYPE) MarshalText() ([]byte, error) { + if l, ok := labels_OSD_PARAM_CONFIG_TYPE[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_OSD_PARAM_CONFIG_TYPE = map[string]OSD_PARAM_CONFIG_TYPE{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *OSD_PARAM_CONFIG_TYPE) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_OSD_PARAM_CONFIG_TYPE[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e OSD_PARAM_CONFIG_TYPE) String() string { + if l, ok := labels_OSD_PARAM_CONFIG_TYPE[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/all/enum_parachute_action.go b/pkg/dialects/all/enum_parachute_action.go new file mode 100644 index 000000000..64deebf0a --- /dev/null +++ b/pkg/dialects/all/enum_parachute_action.go @@ -0,0 +1,48 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package all + +import ( + "errors" +) + +// Parachute actions. Trigger release and enable/disable auto-release. +type PARACHUTE_ACTION int + +const ( + // Disable auto-release of parachute (i.e. release triggered by crash detectors). + PARACHUTE_DISABLE PARACHUTE_ACTION = 0 + // Enable auto-release of parachute. + PARACHUTE_ENABLE PARACHUTE_ACTION = 1 + // Release parachute and kill motors. + PARACHUTE_RELEASE PARACHUTE_ACTION = 2 +) + +var labels_PARACHUTE_ACTION = map[PARACHUTE_ACTION]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e PARACHUTE_ACTION) MarshalText() ([]byte, error) { + if l, ok := labels_PARACHUTE_ACTION[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_PARACHUTE_ACTION = map[string]PARACHUTE_ACTION{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *PARACHUTE_ACTION) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_PARACHUTE_ACTION[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e PARACHUTE_ACTION) String() string { + if l, ok := labels_PARACHUTE_ACTION[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/all/enum_param_ack.go b/pkg/dialects/all/enum_param_ack.go new file mode 100644 index 000000000..85bbd4de2 --- /dev/null +++ b/pkg/dialects/all/enum_param_ack.go @@ -0,0 +1,50 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package all + +import ( + "errors" +) + +// Result from PARAM_EXT_SET message (or a PARAM_SET within a transaction). +type PARAM_ACK int + +const ( + // Parameter value ACCEPTED and SET + PARAM_ACK_ACCEPTED PARAM_ACK = 0 + // Parameter value UNKNOWN/UNSUPPORTED + PARAM_ACK_VALUE_UNSUPPORTED PARAM_ACK = 1 + // Parameter failed to set + PARAM_ACK_FAILED PARAM_ACK = 2 + // Parameter value received but not yet set/accepted. A subsequent PARAM_ACK_TRANSACTION or PARAM_EXT_ACK with the final result will follow once operation is completed. This is returned immediately for parameters that take longer to set, indicating taht the the parameter was recieved and does not need to be resent. + PARAM_ACK_IN_PROGRESS PARAM_ACK = 3 +) + +var labels_PARAM_ACK = map[PARAM_ACK]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e PARAM_ACK) MarshalText() ([]byte, error) { + if l, ok := labels_PARAM_ACK[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_PARAM_ACK = map[string]PARAM_ACK{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *PARAM_ACK) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_PARAM_ACK[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e PARAM_ACK) String() string { + if l, ok := labels_PARAM_ACK[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/all/enum_param_transaction_action.go b/pkg/dialects/all/enum_param_transaction_action.go new file mode 100644 index 000000000..af76227c0 --- /dev/null +++ b/pkg/dialects/all/enum_param_transaction_action.go @@ -0,0 +1,48 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package all + +import ( + "errors" +) + +// Possible parameter transaction actions. +type PARAM_TRANSACTION_ACTION int + +const ( + // Commit the current parameter transaction. + PARAM_TRANSACTION_ACTION_START PARAM_TRANSACTION_ACTION = 0 + // Commit the current parameter transaction. + PARAM_TRANSACTION_ACTION_COMMIT PARAM_TRANSACTION_ACTION = 1 + // Cancel the current parameter transaction. + PARAM_TRANSACTION_ACTION_CANCEL PARAM_TRANSACTION_ACTION = 2 +) + +var labels_PARAM_TRANSACTION_ACTION = map[PARAM_TRANSACTION_ACTION]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e PARAM_TRANSACTION_ACTION) MarshalText() ([]byte, error) { + if l, ok := labels_PARAM_TRANSACTION_ACTION[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_PARAM_TRANSACTION_ACTION = map[string]PARAM_TRANSACTION_ACTION{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *PARAM_TRANSACTION_ACTION) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_PARAM_TRANSACTION_ACTION[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e PARAM_TRANSACTION_ACTION) String() string { + if l, ok := labels_PARAM_TRANSACTION_ACTION[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/all/enum_param_transaction_transport.go b/pkg/dialects/all/enum_param_transaction_transport.go new file mode 100644 index 000000000..103a9c786 --- /dev/null +++ b/pkg/dialects/all/enum_param_transaction_transport.go @@ -0,0 +1,46 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package all + +import ( + "errors" +) + +// Possible transport layers to set and get parameters via mavlink during a parameter transaction. +type PARAM_TRANSACTION_TRANSPORT int + +const ( + // Transaction over param transport. + PARAM_TRANSACTION_TRANSPORT_PARAM PARAM_TRANSACTION_TRANSPORT = 0 + // Transaction over param_ext transport. + PARAM_TRANSACTION_TRANSPORT_PARAM_EXT PARAM_TRANSACTION_TRANSPORT = 1 +) + +var labels_PARAM_TRANSACTION_TRANSPORT = map[PARAM_TRANSACTION_TRANSPORT]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e PARAM_TRANSACTION_TRANSPORT) MarshalText() ([]byte, error) { + if l, ok := labels_PARAM_TRANSACTION_TRANSPORT[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_PARAM_TRANSACTION_TRANSPORT = map[string]PARAM_TRANSACTION_TRANSPORT{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *PARAM_TRANSACTION_TRANSPORT) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_PARAM_TRANSACTION_TRANSPORT[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e PARAM_TRANSACTION_TRANSPORT) String() string { + if l, ok := labels_PARAM_TRANSACTION_TRANSPORT[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/all/enum_pid_tuning_axis.go b/pkg/dialects/all/enum_pid_tuning_axis.go new file mode 100644 index 000000000..b02464e63 --- /dev/null +++ b/pkg/dialects/all/enum_pid_tuning_axis.go @@ -0,0 +1,47 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package all + +import ( + "errors" +) + +type PID_TUNING_AXIS int + +const ( + PID_TUNING_ROLL PID_TUNING_AXIS = 1 + PID_TUNING_PITCH PID_TUNING_AXIS = 2 + PID_TUNING_YAW PID_TUNING_AXIS = 3 + PID_TUNING_ACCZ PID_TUNING_AXIS = 4 + PID_TUNING_STEER PID_TUNING_AXIS = 5 + PID_TUNING_LANDING PID_TUNING_AXIS = 6 +) + +var labels_PID_TUNING_AXIS = map[PID_TUNING_AXIS]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e PID_TUNING_AXIS) MarshalText() ([]byte, error) { + if l, ok := labels_PID_TUNING_AXIS[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_PID_TUNING_AXIS = map[string]PID_TUNING_AXIS{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *PID_TUNING_AXIS) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_PID_TUNING_AXIS[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e PID_TUNING_AXIS) String() string { + if l, ok := labels_PID_TUNING_AXIS[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/all/enum_plane_mode.go b/pkg/dialects/all/enum_plane_mode.go new file mode 100644 index 000000000..90a2c25cb --- /dev/null +++ b/pkg/dialects/all/enum_plane_mode.go @@ -0,0 +1,66 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package all + +import ( + "errors" +) + +// A mapping of plane flight modes for custom_mode field of heartbeat. +type PLANE_MODE int + +const ( + PLANE_MODE_MANUAL PLANE_MODE = 0 + PLANE_MODE_CIRCLE PLANE_MODE = 1 + PLANE_MODE_STABILIZE PLANE_MODE = 2 + PLANE_MODE_TRAINING PLANE_MODE = 3 + PLANE_MODE_ACRO PLANE_MODE = 4 + PLANE_MODE_FLY_BY_WIRE_A PLANE_MODE = 5 + PLANE_MODE_FLY_BY_WIRE_B PLANE_MODE = 6 + PLANE_MODE_CRUISE PLANE_MODE = 7 + PLANE_MODE_AUTOTUNE PLANE_MODE = 8 + PLANE_MODE_AUTO PLANE_MODE = 10 + PLANE_MODE_RTL PLANE_MODE = 11 + PLANE_MODE_LOITER PLANE_MODE = 12 + PLANE_MODE_TAKEOFF PLANE_MODE = 13 + PLANE_MODE_AVOID_ADSB PLANE_MODE = 14 + PLANE_MODE_GUIDED PLANE_MODE = 15 + PLANE_MODE_INITIALIZING PLANE_MODE = 16 + PLANE_MODE_QSTABILIZE PLANE_MODE = 17 + PLANE_MODE_QHOVER PLANE_MODE = 18 + PLANE_MODE_QLOITER PLANE_MODE = 19 + PLANE_MODE_QLAND PLANE_MODE = 20 + PLANE_MODE_QRTL PLANE_MODE = 21 + PLANE_MODE_QAUTOTUNE PLANE_MODE = 22 + PLANE_MODE_QACRO PLANE_MODE = 23 + PLANE_MODE_THERMAL PLANE_MODE = 24 +) + +var labels_PLANE_MODE = map[PLANE_MODE]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e PLANE_MODE) MarshalText() ([]byte, error) { + if l, ok := labels_PLANE_MODE[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_PLANE_MODE = map[string]PLANE_MODE{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *PLANE_MODE) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_PLANE_MODE[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e PLANE_MODE) String() string { + if l, ok := labels_PLANE_MODE[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/all/enum_position_target_typemask.go b/pkg/dialects/all/enum_position_target_typemask.go new file mode 100644 index 000000000..3343725e1 --- /dev/null +++ b/pkg/dialects/all/enum_position_target_typemask.go @@ -0,0 +1,66 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package all + +import ( + "errors" +) + +// Bitmap to indicate which dimensions should be ignored by the vehicle: a value of 0b0000000000000000 or 0b0000001000000000 indicates that none of the setpoint dimensions should be ignored. If bit 9 is set the floats afx afy afz should be interpreted as force instead of acceleration. +type POSITION_TARGET_TYPEMASK int + +const ( + // Ignore position x + POSITION_TARGET_TYPEMASK_X_IGNORE POSITION_TARGET_TYPEMASK = 1 + // Ignore position y + POSITION_TARGET_TYPEMASK_Y_IGNORE POSITION_TARGET_TYPEMASK = 2 + // Ignore position z + POSITION_TARGET_TYPEMASK_Z_IGNORE POSITION_TARGET_TYPEMASK = 4 + // Ignore velocity x + POSITION_TARGET_TYPEMASK_VX_IGNORE POSITION_TARGET_TYPEMASK = 8 + // Ignore velocity y + POSITION_TARGET_TYPEMASK_VY_IGNORE POSITION_TARGET_TYPEMASK = 16 + // Ignore velocity z + POSITION_TARGET_TYPEMASK_VZ_IGNORE POSITION_TARGET_TYPEMASK = 32 + // Ignore acceleration x + POSITION_TARGET_TYPEMASK_AX_IGNORE POSITION_TARGET_TYPEMASK = 64 + // Ignore acceleration y + POSITION_TARGET_TYPEMASK_AY_IGNORE POSITION_TARGET_TYPEMASK = 128 + // Ignore acceleration z + POSITION_TARGET_TYPEMASK_AZ_IGNORE POSITION_TARGET_TYPEMASK = 256 + // Use force instead of acceleration + POSITION_TARGET_TYPEMASK_FORCE_SET POSITION_TARGET_TYPEMASK = 512 + // Ignore yaw + POSITION_TARGET_TYPEMASK_YAW_IGNORE POSITION_TARGET_TYPEMASK = 1024 + // Ignore yaw rate + POSITION_TARGET_TYPEMASK_YAW_RATE_IGNORE POSITION_TARGET_TYPEMASK = 2048 +) + +var labels_POSITION_TARGET_TYPEMASK = map[POSITION_TARGET_TYPEMASK]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e POSITION_TARGET_TYPEMASK) MarshalText() ([]byte, error) { + if l, ok := labels_POSITION_TARGET_TYPEMASK[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_POSITION_TARGET_TYPEMASK = map[string]POSITION_TARGET_TYPEMASK{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *POSITION_TARGET_TYPEMASK) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_POSITION_TARGET_TYPEMASK[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e POSITION_TARGET_TYPEMASK) String() string { + if l, ok := labels_POSITION_TARGET_TYPEMASK[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/all/enum_precision_land_mode.go b/pkg/dialects/all/enum_precision_land_mode.go new file mode 100644 index 000000000..178344be7 --- /dev/null +++ b/pkg/dialects/all/enum_precision_land_mode.go @@ -0,0 +1,48 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package all + +import ( + "errors" +) + +// Precision land modes (used in MAV_CMD_NAV_LAND). +type PRECISION_LAND_MODE int + +const ( + // Normal (non-precision) landing. + PRECISION_LAND_MODE_DISABLED PRECISION_LAND_MODE = 0 + // Use precision landing if beacon detected when land command accepted, otherwise land normally. + PRECISION_LAND_MODE_OPPORTUNISTIC PRECISION_LAND_MODE = 1 + // Use precision landing, searching for beacon if not found when land command accepted (land normally if beacon cannot be found). + PRECISION_LAND_MODE_REQUIRED PRECISION_LAND_MODE = 2 +) + +var labels_PRECISION_LAND_MODE = map[PRECISION_LAND_MODE]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e PRECISION_LAND_MODE) MarshalText() ([]byte, error) { + if l, ok := labels_PRECISION_LAND_MODE[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_PRECISION_LAND_MODE = map[string]PRECISION_LAND_MODE{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *PRECISION_LAND_MODE) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_PRECISION_LAND_MODE[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e PRECISION_LAND_MODE) String() string { + if l, ok := labels_PRECISION_LAND_MODE[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/all/enum_rally_flags.go b/pkg/dialects/all/enum_rally_flags.go new file mode 100644 index 000000000..dd7ef955f --- /dev/null +++ b/pkg/dialects/all/enum_rally_flags.go @@ -0,0 +1,46 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package all + +import ( + "errors" +) + +// Flags in RALLY_POINT message. +type RALLY_FLAGS int + +const ( + // Flag set when requiring favorable winds for landing. + FAVORABLE_WIND RALLY_FLAGS = 1 + // Flag set when plane is to immediately descend to break altitude and land without GCS intervention. Flag not set when plane is to loiter at Rally point until commanded to land. + LAND_IMMEDIATELY RALLY_FLAGS = 2 +) + +var labels_RALLY_FLAGS = map[RALLY_FLAGS]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e RALLY_FLAGS) MarshalText() ([]byte, error) { + if l, ok := labels_RALLY_FLAGS[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_RALLY_FLAGS = map[string]RALLY_FLAGS{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *RALLY_FLAGS) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_RALLY_FLAGS[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e RALLY_FLAGS) String() string { + if l, ok := labels_RALLY_FLAGS[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/all/enum_rc_type.go b/pkg/dialects/all/enum_rc_type.go new file mode 100644 index 000000000..8a56abecf --- /dev/null +++ b/pkg/dialects/all/enum_rc_type.go @@ -0,0 +1,46 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package all + +import ( + "errors" +) + +// RC type +type RC_TYPE int + +const ( + // Spektrum DSM2 + RC_TYPE_SPEKTRUM_DSM2 RC_TYPE = 0 + // Spektrum DSMX + RC_TYPE_SPEKTRUM_DSMX RC_TYPE = 1 +) + +var labels_RC_TYPE = map[RC_TYPE]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e RC_TYPE) MarshalText() ([]byte, error) { + if l, ok := labels_RC_TYPE[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_RC_TYPE = map[string]RC_TYPE{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *RC_TYPE) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_RC_TYPE[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e RC_TYPE) String() string { + if l, ok := labels_RC_TYPE[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/all/enum_rover_mode.go b/pkg/dialects/all/enum_rover_mode.go new file mode 100644 index 000000000..449211ad7 --- /dev/null +++ b/pkg/dialects/all/enum_rover_mode.go @@ -0,0 +1,54 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package all + +import ( + "errors" +) + +// A mapping of rover flight modes for custom_mode field of heartbeat. +type ROVER_MODE int + +const ( + ROVER_MODE_MANUAL ROVER_MODE = 0 + ROVER_MODE_ACRO ROVER_MODE = 1 + ROVER_MODE_STEERING ROVER_MODE = 3 + ROVER_MODE_HOLD ROVER_MODE = 4 + ROVER_MODE_LOITER ROVER_MODE = 5 + ROVER_MODE_FOLLOW ROVER_MODE = 6 + ROVER_MODE_SIMPLE ROVER_MODE = 7 + ROVER_MODE_AUTO ROVER_MODE = 10 + ROVER_MODE_RTL ROVER_MODE = 11 + ROVER_MODE_SMART_RTL ROVER_MODE = 12 + ROVER_MODE_GUIDED ROVER_MODE = 15 + ROVER_MODE_INITIALIZING ROVER_MODE = 16 +) + +var labels_ROVER_MODE = map[ROVER_MODE]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e ROVER_MODE) MarshalText() ([]byte, error) { + if l, ok := labels_ROVER_MODE[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_ROVER_MODE = map[string]ROVER_MODE{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *ROVER_MODE) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_ROVER_MODE[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e ROVER_MODE) String() string { + if l, ok := labels_ROVER_MODE[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/all/enum_rtk_baseline_coordinate_system.go b/pkg/dialects/all/enum_rtk_baseline_coordinate_system.go new file mode 100644 index 000000000..6b62dd1c6 --- /dev/null +++ b/pkg/dialects/all/enum_rtk_baseline_coordinate_system.go @@ -0,0 +1,46 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package all + +import ( + "errors" +) + +// RTK GPS baseline coordinate system, used for RTK corrections +type RTK_BASELINE_COORDINATE_SYSTEM int + +const ( + // Earth-centered, Earth-fixed + RTK_BASELINE_COORDINATE_SYSTEM_ECEF RTK_BASELINE_COORDINATE_SYSTEM = 0 + // RTK basestation centered, north, east, down + RTK_BASELINE_COORDINATE_SYSTEM_NED RTK_BASELINE_COORDINATE_SYSTEM = 1 +) + +var labels_RTK_BASELINE_COORDINATE_SYSTEM = map[RTK_BASELINE_COORDINATE_SYSTEM]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e RTK_BASELINE_COORDINATE_SYSTEM) MarshalText() ([]byte, error) { + if l, ok := labels_RTK_BASELINE_COORDINATE_SYSTEM[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_RTK_BASELINE_COORDINATE_SYSTEM = map[string]RTK_BASELINE_COORDINATE_SYSTEM{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *RTK_BASELINE_COORDINATE_SYSTEM) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_RTK_BASELINE_COORDINATE_SYSTEM[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e RTK_BASELINE_COORDINATE_SYSTEM) String() string { + if l, ok := labels_RTK_BASELINE_COORDINATE_SYSTEM[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/all/enum_scripting_cmd.go b/pkg/dialects/all/enum_scripting_cmd.go new file mode 100644 index 000000000..ffcca9529 --- /dev/null +++ b/pkg/dialects/all/enum_scripting_cmd.go @@ -0,0 +1,49 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package all + +import ( + "errors" +) + +type SCRIPTING_CMD int + +const ( + // Start a REPL session. + SCRIPTING_CMD_REPL_START SCRIPTING_CMD = 0 + // End a REPL session. + SCRIPTING_CMD_REPL_STOP SCRIPTING_CMD = 1 + // Stop execution of scripts. + SCRIPTING_CMD_STOP SCRIPTING_CMD = 2 + // Stop execution of scripts and restart. + SCRIPTING_CMD_STOP_AND_RESTART SCRIPTING_CMD = 3 +) + +var labels_SCRIPTING_CMD = map[SCRIPTING_CMD]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e SCRIPTING_CMD) MarshalText() ([]byte, error) { + if l, ok := labels_SCRIPTING_CMD[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_SCRIPTING_CMD = map[string]SCRIPTING_CMD{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *SCRIPTING_CMD) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_SCRIPTING_CMD[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e SCRIPTING_CMD) String() string { + if l, ok := labels_SCRIPTING_CMD[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/all/enum_serial_control_dev.go b/pkg/dialects/all/enum_serial_control_dev.go new file mode 100644 index 000000000..5b51faa05 --- /dev/null +++ b/pkg/dialects/all/enum_serial_control_dev.go @@ -0,0 +1,72 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package all + +import ( + "errors" +) + +// SERIAL_CONTROL device types +type SERIAL_CONTROL_DEV int + +const ( + // First telemetry port + SERIAL_CONTROL_DEV_TELEM1 SERIAL_CONTROL_DEV = 0 + // Second telemetry port + SERIAL_CONTROL_DEV_TELEM2 SERIAL_CONTROL_DEV = 1 + // First GPS port + SERIAL_CONTROL_DEV_GPS1 SERIAL_CONTROL_DEV = 2 + // Second GPS port + SERIAL_CONTROL_DEV_GPS2 SERIAL_CONTROL_DEV = 3 + // system shell + SERIAL_CONTROL_DEV_SHELL SERIAL_CONTROL_DEV = 10 + // SERIAL0 + SERIAL_CONTROL_SERIAL0 SERIAL_CONTROL_DEV = 100 + // SERIAL1 + SERIAL_CONTROL_SERIAL1 SERIAL_CONTROL_DEV = 101 + // SERIAL2 + SERIAL_CONTROL_SERIAL2 SERIAL_CONTROL_DEV = 102 + // SERIAL3 + SERIAL_CONTROL_SERIAL3 SERIAL_CONTROL_DEV = 103 + // SERIAL4 + SERIAL_CONTROL_SERIAL4 SERIAL_CONTROL_DEV = 104 + // SERIAL5 + SERIAL_CONTROL_SERIAL5 SERIAL_CONTROL_DEV = 105 + // SERIAL6 + SERIAL_CONTROL_SERIAL6 SERIAL_CONTROL_DEV = 106 + // SERIAL7 + SERIAL_CONTROL_SERIAL7 SERIAL_CONTROL_DEV = 107 + // SERIAL8 + SERIAL_CONTROL_SERIAL8 SERIAL_CONTROL_DEV = 108 + // SERIAL9 + SERIAL_CONTROL_SERIAL9 SERIAL_CONTROL_DEV = 109 +) + +var labels_SERIAL_CONTROL_DEV = map[SERIAL_CONTROL_DEV]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e SERIAL_CONTROL_DEV) MarshalText() ([]byte, error) { + if l, ok := labels_SERIAL_CONTROL_DEV[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_SERIAL_CONTROL_DEV = map[string]SERIAL_CONTROL_DEV{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *SERIAL_CONTROL_DEV) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_SERIAL_CONTROL_DEV[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e SERIAL_CONTROL_DEV) String() string { + if l, ok := labels_SERIAL_CONTROL_DEV[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/all/enum_serial_control_flag.go b/pkg/dialects/all/enum_serial_control_flag.go new file mode 100644 index 000000000..b601ad432 --- /dev/null +++ b/pkg/dialects/all/enum_serial_control_flag.go @@ -0,0 +1,52 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package all + +import ( + "errors" +) + +// SERIAL_CONTROL flags (bitmask) +type SERIAL_CONTROL_FLAG int + +const ( + // Set if this is a reply + SERIAL_CONTROL_FLAG_REPLY SERIAL_CONTROL_FLAG = 1 + // Set if the sender wants the receiver to send a response as another SERIAL_CONTROL message + SERIAL_CONTROL_FLAG_RESPOND SERIAL_CONTROL_FLAG = 2 + // Set if access to the serial port should be removed from whatever driver is currently using it, giving exclusive access to the SERIAL_CONTROL protocol. The port can be handed back by sending a request without this flag set + SERIAL_CONTROL_FLAG_EXCLUSIVE SERIAL_CONTROL_FLAG = 4 + // Block on writes to the serial port + SERIAL_CONTROL_FLAG_BLOCKING SERIAL_CONTROL_FLAG = 8 + // Send multiple replies until port is drained + SERIAL_CONTROL_FLAG_MULTI SERIAL_CONTROL_FLAG = 16 +) + +var labels_SERIAL_CONTROL_FLAG = map[SERIAL_CONTROL_FLAG]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e SERIAL_CONTROL_FLAG) MarshalText() ([]byte, error) { + if l, ok := labels_SERIAL_CONTROL_FLAG[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_SERIAL_CONTROL_FLAG = map[string]SERIAL_CONTROL_FLAG{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *SERIAL_CONTROL_FLAG) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_SERIAL_CONTROL_FLAG[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e SERIAL_CONTROL_FLAG) String() string { + if l, ok := labels_SERIAL_CONTROL_FLAG[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/all/enum_set_focus_type.go b/pkg/dialects/all/enum_set_focus_type.go new file mode 100644 index 000000000..c68faac49 --- /dev/null +++ b/pkg/dialects/all/enum_set_focus_type.go @@ -0,0 +1,56 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package all + +import ( + "errors" +) + +// Focus types for MAV_CMD_SET_CAMERA_FOCUS +type SET_FOCUS_TYPE int + +const ( + // Focus one step increment (-1 for focusing in, 1 for focusing out towards infinity). + FOCUS_TYPE_STEP SET_FOCUS_TYPE = 0 + // Continuous focus up/down until stopped (-1 for focusing in, 1 for focusing out towards infinity, 0 to stop focusing) + FOCUS_TYPE_CONTINUOUS SET_FOCUS_TYPE = 1 + // Focus value as proportion of full camera focus range (a value between 0.0 and 100.0) + FOCUS_TYPE_RANGE SET_FOCUS_TYPE = 2 + // Focus value in metres. Note that there is no message to get the valid focus range of the camera, so this can type can only be used for cameras where the range is known (implying that this cannot reliably be used in a GCS for an arbitrary camera). + FOCUS_TYPE_METERS SET_FOCUS_TYPE = 3 + // Focus automatically. + FOCUS_TYPE_AUTO SET_FOCUS_TYPE = 4 + // Single auto focus. Mainly used for still pictures. Usually abbreviated as AF-S. + FOCUS_TYPE_AUTO_SINGLE SET_FOCUS_TYPE = 5 + // Continuous auto focus. Mainly used for dynamic scenes. Abbreviated as AF-C. + FOCUS_TYPE_AUTO_CONTINUOUS SET_FOCUS_TYPE = 6 +) + +var labels_SET_FOCUS_TYPE = map[SET_FOCUS_TYPE]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e SET_FOCUS_TYPE) MarshalText() ([]byte, error) { + if l, ok := labels_SET_FOCUS_TYPE[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_SET_FOCUS_TYPE = map[string]SET_FOCUS_TYPE{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *SET_FOCUS_TYPE) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_SET_FOCUS_TYPE[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e SET_FOCUS_TYPE) String() string { + if l, ok := labels_SET_FOCUS_TYPE[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/all/enum_speed_type.go b/pkg/dialects/all/enum_speed_type.go new file mode 100644 index 000000000..1eb74e17f --- /dev/null +++ b/pkg/dialects/all/enum_speed_type.go @@ -0,0 +1,43 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package all + +import ( + "errors" +) + +type SPEED_TYPE int + +const ( + SPEED_TYPE_AIRSPEED SPEED_TYPE = 0 + SPEED_TYPE_GROUNDSPEED SPEED_TYPE = 1 +) + +var labels_SPEED_TYPE = map[SPEED_TYPE]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e SPEED_TYPE) MarshalText() ([]byte, error) { + if l, ok := labels_SPEED_TYPE[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_SPEED_TYPE = map[string]SPEED_TYPE{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *SPEED_TYPE) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_SPEED_TYPE[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e SPEED_TYPE) String() string { + if l, ok := labels_SPEED_TYPE[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/all/enum_storage_status.go b/pkg/dialects/all/enum_storage_status.go new file mode 100644 index 000000000..c4a3b2252 --- /dev/null +++ b/pkg/dialects/all/enum_storage_status.go @@ -0,0 +1,50 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package all + +import ( + "errors" +) + +// Flags to indicate the status of camera storage. +type STORAGE_STATUS int + +const ( + // Storage is missing (no microSD card loaded for example.) + STORAGE_STATUS_EMPTY STORAGE_STATUS = 0 + // Storage present but unformatted. + STORAGE_STATUS_UNFORMATTED STORAGE_STATUS = 1 + // Storage present and ready. + STORAGE_STATUS_READY STORAGE_STATUS = 2 + // Camera does not supply storage status information. Capacity information in STORAGE_INFORMATION fields will be ignored. + STORAGE_STATUS_NOT_SUPPORTED STORAGE_STATUS = 3 +) + +var labels_STORAGE_STATUS = map[STORAGE_STATUS]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e STORAGE_STATUS) MarshalText() ([]byte, error) { + if l, ok := labels_STORAGE_STATUS[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_STORAGE_STATUS = map[string]STORAGE_STATUS{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *STORAGE_STATUS) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_STORAGE_STATUS[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e STORAGE_STATUS) String() string { + if l, ok := labels_STORAGE_STATUS[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/all/enum_storage_type.go b/pkg/dialects/all/enum_storage_type.go new file mode 100644 index 000000000..4b0c6a394 --- /dev/null +++ b/pkg/dialects/all/enum_storage_type.go @@ -0,0 +1,60 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package all + +import ( + "errors" +) + +// Flags to indicate the type of storage. +type STORAGE_TYPE int + +const ( + // Storage type is not known. + STORAGE_TYPE_UNKNOWN STORAGE_TYPE = 0 + // Storage type is USB device. + STORAGE_TYPE_USB_STICK STORAGE_TYPE = 1 + // Storage type is SD card. + STORAGE_TYPE_SD STORAGE_TYPE = 2 + // Storage type is microSD card. + STORAGE_TYPE_MICROSD STORAGE_TYPE = 3 + // Storage type is CFast. + STORAGE_TYPE_CF STORAGE_TYPE = 4 + // Storage type is CFexpress. + STORAGE_TYPE_CFE STORAGE_TYPE = 5 + // Storage type is XQD. + STORAGE_TYPE_XQD STORAGE_TYPE = 6 + // Storage type is HD mass storage type. + STORAGE_TYPE_HD STORAGE_TYPE = 7 + // Storage type is other, not listed type. + STORAGE_TYPE_OTHER STORAGE_TYPE = 254 +) + +var labels_STORAGE_TYPE = map[STORAGE_TYPE]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e STORAGE_TYPE) MarshalText() ([]byte, error) { + if l, ok := labels_STORAGE_TYPE[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_STORAGE_TYPE = map[string]STORAGE_TYPE{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *STORAGE_TYPE) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_STORAGE_TYPE[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e STORAGE_TYPE) String() string { + if l, ok := labels_STORAGE_TYPE[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/all/enum_storage_usage_flag.go b/pkg/dialects/all/enum_storage_usage_flag.go new file mode 100644 index 000000000..89e32774e --- /dev/null +++ b/pkg/dialects/all/enum_storage_usage_flag.go @@ -0,0 +1,50 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package all + +import ( + "errors" +) + +// Flags to indicate usage for a particular storage (see STORAGE_INFORMATION.storage_usage and MAV_CMD_SET_STORAGE_USAGE). +type STORAGE_USAGE_FLAG int + +const ( + // Always set to 1 (indicates STORAGE_INFORMATION.storage_usage is supported). + STORAGE_USAGE_FLAG_SET STORAGE_USAGE_FLAG = 1 + // Storage for saving photos. + STORAGE_USAGE_FLAG_PHOTO STORAGE_USAGE_FLAG = 2 + // Storage for saving videos. + STORAGE_USAGE_FLAG_VIDEO STORAGE_USAGE_FLAG = 4 + // Storage for saving logs. + STORAGE_USAGE_FLAG_LOGS STORAGE_USAGE_FLAG = 8 +) + +var labels_STORAGE_USAGE_FLAG = map[STORAGE_USAGE_FLAG]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e STORAGE_USAGE_FLAG) MarshalText() ([]byte, error) { + if l, ok := labels_STORAGE_USAGE_FLAG[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_STORAGE_USAGE_FLAG = map[string]STORAGE_USAGE_FLAG{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *STORAGE_USAGE_FLAG) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_STORAGE_USAGE_FLAG[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e STORAGE_USAGE_FLAG) String() string { + if l, ok := labels_STORAGE_USAGE_FLAG[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/all/enum_sub_mode.go b/pkg/dialects/all/enum_sub_mode.go new file mode 100644 index 000000000..adc8d227a --- /dev/null +++ b/pkg/dialects/all/enum_sub_mode.go @@ -0,0 +1,51 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package all + +import ( + "errors" +) + +// A mapping of sub flight modes for custom_mode field of heartbeat. +type SUB_MODE int + +const ( + SUB_MODE_STABILIZE SUB_MODE = 0 + SUB_MODE_ACRO SUB_MODE = 1 + SUB_MODE_ALT_HOLD SUB_MODE = 2 + SUB_MODE_AUTO SUB_MODE = 3 + SUB_MODE_GUIDED SUB_MODE = 4 + SUB_MODE_CIRCLE SUB_MODE = 7 + SUB_MODE_SURFACE SUB_MODE = 9 + SUB_MODE_POSHOLD SUB_MODE = 16 + SUB_MODE_MANUAL SUB_MODE = 19 +) + +var labels_SUB_MODE = map[SUB_MODE]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e SUB_MODE) MarshalText() ([]byte, error) { + if l, ok := labels_SUB_MODE[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_SUB_MODE = map[string]SUB_MODE{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *SUB_MODE) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_SUB_MODE[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e SUB_MODE) String() string { + if l, ok := labels_SUB_MODE[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/all/enum_tracker_mode.go b/pkg/dialects/all/enum_tracker_mode.go new file mode 100644 index 000000000..88a3b40a4 --- /dev/null +++ b/pkg/dialects/all/enum_tracker_mode.go @@ -0,0 +1,48 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package all + +import ( + "errors" +) + +// A mapping of antenna tracker flight modes for custom_mode field of heartbeat. +type TRACKER_MODE int + +const ( + TRACKER_MODE_MANUAL TRACKER_MODE = 0 + TRACKER_MODE_STOP TRACKER_MODE = 1 + TRACKER_MODE_SCAN TRACKER_MODE = 2 + TRACKER_MODE_SERVO_TEST TRACKER_MODE = 3 + TRACKER_MODE_AUTO TRACKER_MODE = 10 + TRACKER_MODE_INITIALIZING TRACKER_MODE = 16 +) + +var labels_TRACKER_MODE = map[TRACKER_MODE]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e TRACKER_MODE) MarshalText() ([]byte, error) { + if l, ok := labels_TRACKER_MODE[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_TRACKER_MODE = map[string]TRACKER_MODE{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *TRACKER_MODE) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_TRACKER_MODE[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e TRACKER_MODE) String() string { + if l, ok := labels_TRACKER_MODE[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/all/enum_tune_format.go b/pkg/dialects/all/enum_tune_format.go new file mode 100644 index 000000000..1ec14b70d --- /dev/null +++ b/pkg/dialects/all/enum_tune_format.go @@ -0,0 +1,46 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package all + +import ( + "errors" +) + +// Tune formats (used for vehicle buzzer/tone generation). +type TUNE_FORMAT int + +const ( + // Format is QBasic 1.1 Play: https://www.qbasic.net/en/reference/qb11/Statement/PLAY-006.htm. + TUNE_FORMAT_QBASIC1_1 TUNE_FORMAT = 1 + // Format is Modern Music Markup Language (MML): https://en.wikipedia.org/wiki/Music_Macro_Language#Modern_MML. + TUNE_FORMAT_MML_MODERN TUNE_FORMAT = 2 +) + +var labels_TUNE_FORMAT = map[TUNE_FORMAT]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e TUNE_FORMAT) MarshalText() ([]byte, error) { + if l, ok := labels_TUNE_FORMAT[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_TUNE_FORMAT = map[string]TUNE_FORMAT{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *TUNE_FORMAT) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_TUNE_FORMAT[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e TUNE_FORMAT) String() string { + if l, ok := labels_TUNE_FORMAT[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/all/enum_ualberta_autopilot_mode.go b/pkg/dialects/all/enum_ualberta_autopilot_mode.go new file mode 100644 index 000000000..3b29e932f --- /dev/null +++ b/pkg/dialects/all/enum_ualberta_autopilot_mode.go @@ -0,0 +1,52 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package all + +import ( + "errors" +) + +// Available autopilot modes for ualberta uav +type UALBERTA_AUTOPILOT_MODE int + +const ( + // Raw input pulse widts sent to output + MODE_MANUAL_DIRECT UALBERTA_AUTOPILOT_MODE = 1 + // Inputs are normalized using calibration, the converted back to raw pulse widths for output + MODE_MANUAL_SCALED UALBERTA_AUTOPILOT_MODE = 2 + // dfsdfs + MODE_AUTO_PID_ATT UALBERTA_AUTOPILOT_MODE = 3 + // dfsfds + MODE_AUTO_PID_VEL UALBERTA_AUTOPILOT_MODE = 4 + // dfsdfsdfs + MODE_AUTO_PID_POS UALBERTA_AUTOPILOT_MODE = 5 +) + +var labels_UALBERTA_AUTOPILOT_MODE = map[UALBERTA_AUTOPILOT_MODE]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e UALBERTA_AUTOPILOT_MODE) MarshalText() ([]byte, error) { + if l, ok := labels_UALBERTA_AUTOPILOT_MODE[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_UALBERTA_AUTOPILOT_MODE = map[string]UALBERTA_AUTOPILOT_MODE{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *UALBERTA_AUTOPILOT_MODE) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_UALBERTA_AUTOPILOT_MODE[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e UALBERTA_AUTOPILOT_MODE) String() string { + if l, ok := labels_UALBERTA_AUTOPILOT_MODE[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/all/enum_ualberta_nav_mode.go b/pkg/dialects/all/enum_ualberta_nav_mode.go new file mode 100644 index 000000000..6bb3ea655 --- /dev/null +++ b/pkg/dialects/all/enum_ualberta_nav_mode.go @@ -0,0 +1,49 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package all + +import ( + "errors" +) + +// Navigation filter mode +type UALBERTA_NAV_MODE int + +const ( + NAV_AHRS_INIT UALBERTA_NAV_MODE = 1 + // AHRS mode + NAV_AHRS UALBERTA_NAV_MODE = 2 + // INS/GPS initialization mode + NAV_INS_GPS_INIT UALBERTA_NAV_MODE = 3 + // INS/GPS mode + NAV_INS_GPS UALBERTA_NAV_MODE = 4 +) + +var labels_UALBERTA_NAV_MODE = map[UALBERTA_NAV_MODE]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e UALBERTA_NAV_MODE) MarshalText() ([]byte, error) { + if l, ok := labels_UALBERTA_NAV_MODE[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_UALBERTA_NAV_MODE = map[string]UALBERTA_NAV_MODE{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *UALBERTA_NAV_MODE) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_UALBERTA_NAV_MODE[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e UALBERTA_NAV_MODE) String() string { + if l, ok := labels_UALBERTA_NAV_MODE[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/all/enum_ualberta_pilot_mode.go b/pkg/dialects/all/enum_ualberta_pilot_mode.go new file mode 100644 index 000000000..62786105b --- /dev/null +++ b/pkg/dialects/all/enum_ualberta_pilot_mode.go @@ -0,0 +1,48 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package all + +import ( + "errors" +) + +// Mode currently commanded by pilot +type UALBERTA_PILOT_MODE int + +const ( + // sdf + PILOT_MANUAL UALBERTA_PILOT_MODE = 1 + // dfs + PILOT_AUTO UALBERTA_PILOT_MODE = 2 + // Rotomotion mode + PILOT_ROTO UALBERTA_PILOT_MODE = 3 +) + +var labels_UALBERTA_PILOT_MODE = map[UALBERTA_PILOT_MODE]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e UALBERTA_PILOT_MODE) MarshalText() ([]byte, error) { + if l, ok := labels_UALBERTA_PILOT_MODE[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_UALBERTA_PILOT_MODE = map[string]UALBERTA_PILOT_MODE{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *UALBERTA_PILOT_MODE) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_UALBERTA_PILOT_MODE[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e UALBERTA_PILOT_MODE) String() string { + if l, ok := labels_UALBERTA_PILOT_MODE[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/all/enum_uavcan_node_health.go b/pkg/dialects/all/enum_uavcan_node_health.go new file mode 100644 index 000000000..c06c48356 --- /dev/null +++ b/pkg/dialects/all/enum_uavcan_node_health.go @@ -0,0 +1,50 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package all + +import ( + "errors" +) + +// Generalized UAVCAN node health +type UAVCAN_NODE_HEALTH int + +const ( + // The node is functioning properly. + UAVCAN_NODE_HEALTH_OK UAVCAN_NODE_HEALTH = 0 + // A critical parameter went out of range or the node has encountered a minor failure. + UAVCAN_NODE_HEALTH_WARNING UAVCAN_NODE_HEALTH = 1 + // The node has encountered a major failure. + UAVCAN_NODE_HEALTH_ERROR UAVCAN_NODE_HEALTH = 2 + // The node has suffered a fatal malfunction. + UAVCAN_NODE_HEALTH_CRITICAL UAVCAN_NODE_HEALTH = 3 +) + +var labels_UAVCAN_NODE_HEALTH = map[UAVCAN_NODE_HEALTH]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e UAVCAN_NODE_HEALTH) MarshalText() ([]byte, error) { + if l, ok := labels_UAVCAN_NODE_HEALTH[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_UAVCAN_NODE_HEALTH = map[string]UAVCAN_NODE_HEALTH{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *UAVCAN_NODE_HEALTH) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_UAVCAN_NODE_HEALTH[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e UAVCAN_NODE_HEALTH) String() string { + if l, ok := labels_UAVCAN_NODE_HEALTH[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/all/enum_uavcan_node_mode.go b/pkg/dialects/all/enum_uavcan_node_mode.go new file mode 100644 index 000000000..fa54f5f2a --- /dev/null +++ b/pkg/dialects/all/enum_uavcan_node_mode.go @@ -0,0 +1,52 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package all + +import ( + "errors" +) + +// Generalized UAVCAN node mode +type UAVCAN_NODE_MODE int + +const ( + // The node is performing its primary functions. + UAVCAN_NODE_MODE_OPERATIONAL UAVCAN_NODE_MODE = 0 + // The node is initializing; this mode is entered immediately after startup. + UAVCAN_NODE_MODE_INITIALIZATION UAVCAN_NODE_MODE = 1 + // The node is under maintenance. + UAVCAN_NODE_MODE_MAINTENANCE UAVCAN_NODE_MODE = 2 + // The node is in the process of updating its software. + UAVCAN_NODE_MODE_SOFTWARE_UPDATE UAVCAN_NODE_MODE = 3 + // The node is no longer available online. + UAVCAN_NODE_MODE_OFFLINE UAVCAN_NODE_MODE = 7 +) + +var labels_UAVCAN_NODE_MODE = map[UAVCAN_NODE_MODE]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e UAVCAN_NODE_MODE) MarshalText() ([]byte, error) { + if l, ok := labels_UAVCAN_NODE_MODE[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_UAVCAN_NODE_MODE = map[string]UAVCAN_NODE_MODE{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *UAVCAN_NODE_MODE) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_UAVCAN_NODE_MODE[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e UAVCAN_NODE_MODE) String() string { + if l, ok := labels_UAVCAN_NODE_MODE[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/all/enum_uavionix_adsb_emergency_status.go b/pkg/dialects/all/enum_uavionix_adsb_emergency_status.go new file mode 100644 index 000000000..959420177 --- /dev/null +++ b/pkg/dialects/all/enum_uavionix_adsb_emergency_status.go @@ -0,0 +1,50 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package all + +import ( + "errors" +) + +// Emergency status encoding +type UAVIONIX_ADSB_EMERGENCY_STATUS int + +const ( + UAVIONIX_ADSB_OUT_NO_EMERGENCY UAVIONIX_ADSB_EMERGENCY_STATUS = 0 + UAVIONIX_ADSB_OUT_GENERAL_EMERGENCY UAVIONIX_ADSB_EMERGENCY_STATUS = 1 + UAVIONIX_ADSB_OUT_LIFEGUARD_EMERGENCY UAVIONIX_ADSB_EMERGENCY_STATUS = 2 + UAVIONIX_ADSB_OUT_MINIMUM_FUEL_EMERGENCY UAVIONIX_ADSB_EMERGENCY_STATUS = 3 + UAVIONIX_ADSB_OUT_NO_COMM_EMERGENCY UAVIONIX_ADSB_EMERGENCY_STATUS = 4 + UAVIONIX_ADSB_OUT_UNLAWFUL_INTERFERANCE_EMERGENCY UAVIONIX_ADSB_EMERGENCY_STATUS = 5 + UAVIONIX_ADSB_OUT_DOWNED_AIRCRAFT_EMERGENCY UAVIONIX_ADSB_EMERGENCY_STATUS = 6 + UAVIONIX_ADSB_OUT_RESERVED UAVIONIX_ADSB_EMERGENCY_STATUS = 7 +) + +var labels_UAVIONIX_ADSB_EMERGENCY_STATUS = map[UAVIONIX_ADSB_EMERGENCY_STATUS]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e UAVIONIX_ADSB_EMERGENCY_STATUS) MarshalText() ([]byte, error) { + if l, ok := labels_UAVIONIX_ADSB_EMERGENCY_STATUS[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_UAVIONIX_ADSB_EMERGENCY_STATUS = map[string]UAVIONIX_ADSB_EMERGENCY_STATUS{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *UAVIONIX_ADSB_EMERGENCY_STATUS) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_UAVIONIX_ADSB_EMERGENCY_STATUS[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e UAVIONIX_ADSB_EMERGENCY_STATUS) String() string { + if l, ok := labels_UAVIONIX_ADSB_EMERGENCY_STATUS[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/all/enum_uavionix_adsb_out_cfg_aircraft_size.go b/pkg/dialects/all/enum_uavionix_adsb_out_cfg_aircraft_size.go new file mode 100644 index 000000000..ef5dcc793 --- /dev/null +++ b/pkg/dialects/all/enum_uavionix_adsb_out_cfg_aircraft_size.go @@ -0,0 +1,58 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package all + +import ( + "errors" +) + +// Definitions for aircraft size +type UAVIONIX_ADSB_OUT_CFG_AIRCRAFT_SIZE int + +const ( + UAVIONIX_ADSB_OUT_CFG_AIRCRAFT_SIZE_NO_DATA UAVIONIX_ADSB_OUT_CFG_AIRCRAFT_SIZE = 0 + UAVIONIX_ADSB_OUT_CFG_AIRCRAFT_SIZE_L15M_W23M UAVIONIX_ADSB_OUT_CFG_AIRCRAFT_SIZE = 1 + UAVIONIX_ADSB_OUT_CFG_AIRCRAFT_SIZE_L25M_W28P5M UAVIONIX_ADSB_OUT_CFG_AIRCRAFT_SIZE = 2 + UAVIONIX_ADSB_OUT_CFG_AIRCRAFT_SIZE_L25_34M UAVIONIX_ADSB_OUT_CFG_AIRCRAFT_SIZE = 3 + UAVIONIX_ADSB_OUT_CFG_AIRCRAFT_SIZE_L35_33M UAVIONIX_ADSB_OUT_CFG_AIRCRAFT_SIZE = 4 + UAVIONIX_ADSB_OUT_CFG_AIRCRAFT_SIZE_L35_38M UAVIONIX_ADSB_OUT_CFG_AIRCRAFT_SIZE = 5 + UAVIONIX_ADSB_OUT_CFG_AIRCRAFT_SIZE_L45_39P5M UAVIONIX_ADSB_OUT_CFG_AIRCRAFT_SIZE = 6 + UAVIONIX_ADSB_OUT_CFG_AIRCRAFT_SIZE_L45_45M UAVIONIX_ADSB_OUT_CFG_AIRCRAFT_SIZE = 7 + UAVIONIX_ADSB_OUT_CFG_AIRCRAFT_SIZE_L55_45M UAVIONIX_ADSB_OUT_CFG_AIRCRAFT_SIZE = 8 + UAVIONIX_ADSB_OUT_CFG_AIRCRAFT_SIZE_L55_52M UAVIONIX_ADSB_OUT_CFG_AIRCRAFT_SIZE = 9 + UAVIONIX_ADSB_OUT_CFG_AIRCRAFT_SIZE_L65_59P5M UAVIONIX_ADSB_OUT_CFG_AIRCRAFT_SIZE = 10 + UAVIONIX_ADSB_OUT_CFG_AIRCRAFT_SIZE_L65_67M UAVIONIX_ADSB_OUT_CFG_AIRCRAFT_SIZE = 11 + UAVIONIX_ADSB_OUT_CFG_AIRCRAFT_SIZE_L75_W72P5M UAVIONIX_ADSB_OUT_CFG_AIRCRAFT_SIZE = 12 + UAVIONIX_ADSB_OUT_CFG_AIRCRAFT_SIZE_L75_W80M UAVIONIX_ADSB_OUT_CFG_AIRCRAFT_SIZE = 13 + UAVIONIX_ADSB_OUT_CFG_AIRCRAFT_SIZE_L85_W80M UAVIONIX_ADSB_OUT_CFG_AIRCRAFT_SIZE = 14 + UAVIONIX_ADSB_OUT_CFG_AIRCRAFT_SIZE_L85_W90M UAVIONIX_ADSB_OUT_CFG_AIRCRAFT_SIZE = 15 +) + +var labels_UAVIONIX_ADSB_OUT_CFG_AIRCRAFT_SIZE = map[UAVIONIX_ADSB_OUT_CFG_AIRCRAFT_SIZE]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e UAVIONIX_ADSB_OUT_CFG_AIRCRAFT_SIZE) MarshalText() ([]byte, error) { + if l, ok := labels_UAVIONIX_ADSB_OUT_CFG_AIRCRAFT_SIZE[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_UAVIONIX_ADSB_OUT_CFG_AIRCRAFT_SIZE = map[string]UAVIONIX_ADSB_OUT_CFG_AIRCRAFT_SIZE{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *UAVIONIX_ADSB_OUT_CFG_AIRCRAFT_SIZE) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_UAVIONIX_ADSB_OUT_CFG_AIRCRAFT_SIZE[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e UAVIONIX_ADSB_OUT_CFG_AIRCRAFT_SIZE) String() string { + if l, ok := labels_UAVIONIX_ADSB_OUT_CFG_AIRCRAFT_SIZE[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/all/enum_uavionix_adsb_out_cfg_gps_offset_lat.go b/pkg/dialects/all/enum_uavionix_adsb_out_cfg_gps_offset_lat.go new file mode 100644 index 000000000..55a5ebc86 --- /dev/null +++ b/pkg/dialects/all/enum_uavionix_adsb_out_cfg_gps_offset_lat.go @@ -0,0 +1,50 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package all + +import ( + "errors" +) + +// GPS lataral offset encoding +type UAVIONIX_ADSB_OUT_CFG_GPS_OFFSET_LAT int + +const ( + UAVIONIX_ADSB_OUT_CFG_GPS_OFFSET_LAT_NO_DATA UAVIONIX_ADSB_OUT_CFG_GPS_OFFSET_LAT = 0 + UAVIONIX_ADSB_OUT_CFG_GPS_OFFSET_LAT_LEFT_2M UAVIONIX_ADSB_OUT_CFG_GPS_OFFSET_LAT = 1 + UAVIONIX_ADSB_OUT_CFG_GPS_OFFSET_LAT_LEFT_4M UAVIONIX_ADSB_OUT_CFG_GPS_OFFSET_LAT = 2 + UAVIONIX_ADSB_OUT_CFG_GPS_OFFSET_LAT_LEFT_6M UAVIONIX_ADSB_OUT_CFG_GPS_OFFSET_LAT = 3 + UAVIONIX_ADSB_OUT_CFG_GPS_OFFSET_LAT_RIGHT_0M UAVIONIX_ADSB_OUT_CFG_GPS_OFFSET_LAT = 4 + UAVIONIX_ADSB_OUT_CFG_GPS_OFFSET_LAT_RIGHT_2M UAVIONIX_ADSB_OUT_CFG_GPS_OFFSET_LAT = 5 + UAVIONIX_ADSB_OUT_CFG_GPS_OFFSET_LAT_RIGHT_4M UAVIONIX_ADSB_OUT_CFG_GPS_OFFSET_LAT = 6 + UAVIONIX_ADSB_OUT_CFG_GPS_OFFSET_LAT_RIGHT_6M UAVIONIX_ADSB_OUT_CFG_GPS_OFFSET_LAT = 7 +) + +var labels_UAVIONIX_ADSB_OUT_CFG_GPS_OFFSET_LAT = map[UAVIONIX_ADSB_OUT_CFG_GPS_OFFSET_LAT]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e UAVIONIX_ADSB_OUT_CFG_GPS_OFFSET_LAT) MarshalText() ([]byte, error) { + if l, ok := labels_UAVIONIX_ADSB_OUT_CFG_GPS_OFFSET_LAT[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_UAVIONIX_ADSB_OUT_CFG_GPS_OFFSET_LAT = map[string]UAVIONIX_ADSB_OUT_CFG_GPS_OFFSET_LAT{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *UAVIONIX_ADSB_OUT_CFG_GPS_OFFSET_LAT) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_UAVIONIX_ADSB_OUT_CFG_GPS_OFFSET_LAT[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e UAVIONIX_ADSB_OUT_CFG_GPS_OFFSET_LAT) String() string { + if l, ok := labels_UAVIONIX_ADSB_OUT_CFG_GPS_OFFSET_LAT[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/all/enum_uavionix_adsb_out_cfg_gps_offset_lon.go b/pkg/dialects/all/enum_uavionix_adsb_out_cfg_gps_offset_lon.go new file mode 100644 index 000000000..266a65a3b --- /dev/null +++ b/pkg/dialects/all/enum_uavionix_adsb_out_cfg_gps_offset_lon.go @@ -0,0 +1,44 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package all + +import ( + "errors" +) + +// GPS longitudinal offset encoding +type UAVIONIX_ADSB_OUT_CFG_GPS_OFFSET_LON int + +const ( + UAVIONIX_ADSB_OUT_CFG_GPS_OFFSET_LON_NO_DATA UAVIONIX_ADSB_OUT_CFG_GPS_OFFSET_LON = 0 + UAVIONIX_ADSB_OUT_CFG_GPS_OFFSET_LON_APPLIED_BY_SENSOR UAVIONIX_ADSB_OUT_CFG_GPS_OFFSET_LON = 1 +) + +var labels_UAVIONIX_ADSB_OUT_CFG_GPS_OFFSET_LON = map[UAVIONIX_ADSB_OUT_CFG_GPS_OFFSET_LON]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e UAVIONIX_ADSB_OUT_CFG_GPS_OFFSET_LON) MarshalText() ([]byte, error) { + if l, ok := labels_UAVIONIX_ADSB_OUT_CFG_GPS_OFFSET_LON[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_UAVIONIX_ADSB_OUT_CFG_GPS_OFFSET_LON = map[string]UAVIONIX_ADSB_OUT_CFG_GPS_OFFSET_LON{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *UAVIONIX_ADSB_OUT_CFG_GPS_OFFSET_LON) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_UAVIONIX_ADSB_OUT_CFG_GPS_OFFSET_LON[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e UAVIONIX_ADSB_OUT_CFG_GPS_OFFSET_LON) String() string { + if l, ok := labels_UAVIONIX_ADSB_OUT_CFG_GPS_OFFSET_LON[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/all/enum_uavionix_adsb_out_dynamic_gps_fix.go b/pkg/dialects/all/enum_uavionix_adsb_out_dynamic_gps_fix.go new file mode 100644 index 000000000..57094ff66 --- /dev/null +++ b/pkg/dialects/all/enum_uavionix_adsb_out_dynamic_gps_fix.go @@ -0,0 +1,48 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package all + +import ( + "errors" +) + +// Status for ADS-B transponder dynamic input +type UAVIONIX_ADSB_OUT_DYNAMIC_GPS_FIX int + +const ( + UAVIONIX_ADSB_OUT_DYNAMIC_GPS_FIX_NONE_0 UAVIONIX_ADSB_OUT_DYNAMIC_GPS_FIX = 0 + UAVIONIX_ADSB_OUT_DYNAMIC_GPS_FIX_NONE_1 UAVIONIX_ADSB_OUT_DYNAMIC_GPS_FIX = 1 + UAVIONIX_ADSB_OUT_DYNAMIC_GPS_FIX_2D UAVIONIX_ADSB_OUT_DYNAMIC_GPS_FIX = 2 + UAVIONIX_ADSB_OUT_DYNAMIC_GPS_FIX_3D UAVIONIX_ADSB_OUT_DYNAMIC_GPS_FIX = 3 + UAVIONIX_ADSB_OUT_DYNAMIC_GPS_FIX_DGPS UAVIONIX_ADSB_OUT_DYNAMIC_GPS_FIX = 4 + UAVIONIX_ADSB_OUT_DYNAMIC_GPS_FIX_RTK UAVIONIX_ADSB_OUT_DYNAMIC_GPS_FIX = 5 +) + +var labels_UAVIONIX_ADSB_OUT_DYNAMIC_GPS_FIX = map[UAVIONIX_ADSB_OUT_DYNAMIC_GPS_FIX]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e UAVIONIX_ADSB_OUT_DYNAMIC_GPS_FIX) MarshalText() ([]byte, error) { + if l, ok := labels_UAVIONIX_ADSB_OUT_DYNAMIC_GPS_FIX[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_UAVIONIX_ADSB_OUT_DYNAMIC_GPS_FIX = map[string]UAVIONIX_ADSB_OUT_DYNAMIC_GPS_FIX{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *UAVIONIX_ADSB_OUT_DYNAMIC_GPS_FIX) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_UAVIONIX_ADSB_OUT_DYNAMIC_GPS_FIX[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e UAVIONIX_ADSB_OUT_DYNAMIC_GPS_FIX) String() string { + if l, ok := labels_UAVIONIX_ADSB_OUT_DYNAMIC_GPS_FIX[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/all/enum_uavionix_adsb_out_dynamic_state.go b/pkg/dialects/all/enum_uavionix_adsb_out_dynamic_state.go new file mode 100644 index 000000000..662b57162 --- /dev/null +++ b/pkg/dialects/all/enum_uavionix_adsb_out_dynamic_state.go @@ -0,0 +1,47 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package all + +import ( + "errors" +) + +// State flags for ADS-B transponder dynamic report +type UAVIONIX_ADSB_OUT_DYNAMIC_STATE int + +const ( + UAVIONIX_ADSB_OUT_DYNAMIC_STATE_INTENT_CHANGE UAVIONIX_ADSB_OUT_DYNAMIC_STATE = 1 + UAVIONIX_ADSB_OUT_DYNAMIC_STATE_AUTOPILOT_ENABLED UAVIONIX_ADSB_OUT_DYNAMIC_STATE = 2 + UAVIONIX_ADSB_OUT_DYNAMIC_STATE_NICBARO_CROSSCHECKED UAVIONIX_ADSB_OUT_DYNAMIC_STATE = 4 + UAVIONIX_ADSB_OUT_DYNAMIC_STATE_ON_GROUND UAVIONIX_ADSB_OUT_DYNAMIC_STATE = 8 + UAVIONIX_ADSB_OUT_DYNAMIC_STATE_IDENT UAVIONIX_ADSB_OUT_DYNAMIC_STATE = 16 +) + +var labels_UAVIONIX_ADSB_OUT_DYNAMIC_STATE = map[UAVIONIX_ADSB_OUT_DYNAMIC_STATE]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e UAVIONIX_ADSB_OUT_DYNAMIC_STATE) MarshalText() ([]byte, error) { + if l, ok := labels_UAVIONIX_ADSB_OUT_DYNAMIC_STATE[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_UAVIONIX_ADSB_OUT_DYNAMIC_STATE = map[string]UAVIONIX_ADSB_OUT_DYNAMIC_STATE{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *UAVIONIX_ADSB_OUT_DYNAMIC_STATE) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_UAVIONIX_ADSB_OUT_DYNAMIC_STATE[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e UAVIONIX_ADSB_OUT_DYNAMIC_STATE) String() string { + if l, ok := labels_UAVIONIX_ADSB_OUT_DYNAMIC_STATE[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/all/enum_uavionix_adsb_out_rf_select.go b/pkg/dialects/all/enum_uavionix_adsb_out_rf_select.go new file mode 100644 index 000000000..3ff49bb35 --- /dev/null +++ b/pkg/dialects/all/enum_uavionix_adsb_out_rf_select.go @@ -0,0 +1,45 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package all + +import ( + "errors" +) + +// Transceiver RF control flags for ADS-B transponder dynamic reports +type UAVIONIX_ADSB_OUT_RF_SELECT int + +const ( + UAVIONIX_ADSB_OUT_RF_SELECT_STANDBY UAVIONIX_ADSB_OUT_RF_SELECT = 0 + UAVIONIX_ADSB_OUT_RF_SELECT_RX_ENABLED UAVIONIX_ADSB_OUT_RF_SELECT = 1 + UAVIONIX_ADSB_OUT_RF_SELECT_TX_ENABLED UAVIONIX_ADSB_OUT_RF_SELECT = 2 +) + +var labels_UAVIONIX_ADSB_OUT_RF_SELECT = map[UAVIONIX_ADSB_OUT_RF_SELECT]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e UAVIONIX_ADSB_OUT_RF_SELECT) MarshalText() ([]byte, error) { + if l, ok := labels_UAVIONIX_ADSB_OUT_RF_SELECT[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_UAVIONIX_ADSB_OUT_RF_SELECT = map[string]UAVIONIX_ADSB_OUT_RF_SELECT{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *UAVIONIX_ADSB_OUT_RF_SELECT) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_UAVIONIX_ADSB_OUT_RF_SELECT[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e UAVIONIX_ADSB_OUT_RF_SELECT) String() string { + if l, ok := labels_UAVIONIX_ADSB_OUT_RF_SELECT[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/all/enum_uavionix_adsb_rf_health.go b/pkg/dialects/all/enum_uavionix_adsb_rf_health.go new file mode 100644 index 000000000..af033a4d7 --- /dev/null +++ b/pkg/dialects/all/enum_uavionix_adsb_rf_health.go @@ -0,0 +1,46 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package all + +import ( + "errors" +) + +// Status flags for ADS-B transponder dynamic output +type UAVIONIX_ADSB_RF_HEALTH int + +const ( + UAVIONIX_ADSB_RF_HEALTH_INITIALIZING UAVIONIX_ADSB_RF_HEALTH = 0 + UAVIONIX_ADSB_RF_HEALTH_OK UAVIONIX_ADSB_RF_HEALTH = 1 + UAVIONIX_ADSB_RF_HEALTH_FAIL_TX UAVIONIX_ADSB_RF_HEALTH = 2 + UAVIONIX_ADSB_RF_HEALTH_FAIL_RX UAVIONIX_ADSB_RF_HEALTH = 16 +) + +var labels_UAVIONIX_ADSB_RF_HEALTH = map[UAVIONIX_ADSB_RF_HEALTH]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e UAVIONIX_ADSB_RF_HEALTH) MarshalText() ([]byte, error) { + if l, ok := labels_UAVIONIX_ADSB_RF_HEALTH[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_UAVIONIX_ADSB_RF_HEALTH = map[string]UAVIONIX_ADSB_RF_HEALTH{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *UAVIONIX_ADSB_RF_HEALTH) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_UAVIONIX_ADSB_RF_HEALTH[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e UAVIONIX_ADSB_RF_HEALTH) String() string { + if l, ok := labels_UAVIONIX_ADSB_RF_HEALTH[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/all/enum_utm_data_avail_flags.go b/pkg/dialects/all/enum_utm_data_avail_flags.go new file mode 100644 index 000000000..8ce9578e3 --- /dev/null +++ b/pkg/dialects/all/enum_utm_data_avail_flags.go @@ -0,0 +1,58 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package all + +import ( + "errors" +) + +// Flags for the global position report. +type UTM_DATA_AVAIL_FLAGS int + +const ( + // The field time contains valid data. + UTM_DATA_AVAIL_FLAGS_TIME_VALID UTM_DATA_AVAIL_FLAGS = 1 + // The field uas_id contains valid data. + UTM_DATA_AVAIL_FLAGS_UAS_ID_AVAILABLE UTM_DATA_AVAIL_FLAGS = 2 + // The fields lat, lon and h_acc contain valid data. + UTM_DATA_AVAIL_FLAGS_POSITION_AVAILABLE UTM_DATA_AVAIL_FLAGS = 4 + // The fields alt and v_acc contain valid data. + UTM_DATA_AVAIL_FLAGS_ALTITUDE_AVAILABLE UTM_DATA_AVAIL_FLAGS = 8 + // The field relative_alt contains valid data. + UTM_DATA_AVAIL_FLAGS_RELATIVE_ALTITUDE_AVAILABLE UTM_DATA_AVAIL_FLAGS = 16 + // The fields vx and vy contain valid data. + UTM_DATA_AVAIL_FLAGS_HORIZONTAL_VELO_AVAILABLE UTM_DATA_AVAIL_FLAGS = 32 + // The field vz contains valid data. + UTM_DATA_AVAIL_FLAGS_VERTICAL_VELO_AVAILABLE UTM_DATA_AVAIL_FLAGS = 64 + // The fields next_lat, next_lon and next_alt contain valid data. + UTM_DATA_AVAIL_FLAGS_NEXT_WAYPOINT_AVAILABLE UTM_DATA_AVAIL_FLAGS = 128 +) + +var labels_UTM_DATA_AVAIL_FLAGS = map[UTM_DATA_AVAIL_FLAGS]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e UTM_DATA_AVAIL_FLAGS) MarshalText() ([]byte, error) { + if l, ok := labels_UTM_DATA_AVAIL_FLAGS[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_UTM_DATA_AVAIL_FLAGS = map[string]UTM_DATA_AVAIL_FLAGS{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *UTM_DATA_AVAIL_FLAGS) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_UTM_DATA_AVAIL_FLAGS[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e UTM_DATA_AVAIL_FLAGS) String() string { + if l, ok := labels_UTM_DATA_AVAIL_FLAGS[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/all/enum_utm_flight_state.go b/pkg/dialects/all/enum_utm_flight_state.go new file mode 100644 index 000000000..b55cf5f5d --- /dev/null +++ b/pkg/dialects/all/enum_utm_flight_state.go @@ -0,0 +1,52 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package all + +import ( + "errors" +) + +// Airborne status of UAS. +type UTM_FLIGHT_STATE int + +const ( + // The flight state can't be determined. + UTM_FLIGHT_STATE_UNKNOWN UTM_FLIGHT_STATE = 1 + // UAS on ground. + UTM_FLIGHT_STATE_GROUND UTM_FLIGHT_STATE = 2 + // UAS airborne. + UTM_FLIGHT_STATE_AIRBORNE UTM_FLIGHT_STATE = 3 + // UAS is in an emergency flight state. + UTM_FLIGHT_STATE_EMERGENCY UTM_FLIGHT_STATE = 16 + // UAS has no active controls. + UTM_FLIGHT_STATE_NOCTRL UTM_FLIGHT_STATE = 32 +) + +var labels_UTM_FLIGHT_STATE = map[UTM_FLIGHT_STATE]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e UTM_FLIGHT_STATE) MarshalText() ([]byte, error) { + if l, ok := labels_UTM_FLIGHT_STATE[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_UTM_FLIGHT_STATE = map[string]UTM_FLIGHT_STATE{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *UTM_FLIGHT_STATE) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_UTM_FLIGHT_STATE[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e UTM_FLIGHT_STATE) String() string { + if l, ok := labels_UTM_FLIGHT_STATE[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/all/enum_video_stream_status_flags.go b/pkg/dialects/all/enum_video_stream_status_flags.go new file mode 100644 index 000000000..5954d30d8 --- /dev/null +++ b/pkg/dialects/all/enum_video_stream_status_flags.go @@ -0,0 +1,46 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package all + +import ( + "errors" +) + +// Stream status flags (Bitmap) +type VIDEO_STREAM_STATUS_FLAGS int + +const ( + // Stream is active (running) + VIDEO_STREAM_STATUS_FLAGS_RUNNING VIDEO_STREAM_STATUS_FLAGS = 1 + // Stream is thermal imaging + VIDEO_STREAM_STATUS_FLAGS_THERMAL VIDEO_STREAM_STATUS_FLAGS = 2 +) + +var labels_VIDEO_STREAM_STATUS_FLAGS = map[VIDEO_STREAM_STATUS_FLAGS]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e VIDEO_STREAM_STATUS_FLAGS) MarshalText() ([]byte, error) { + if l, ok := labels_VIDEO_STREAM_STATUS_FLAGS[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_VIDEO_STREAM_STATUS_FLAGS = map[string]VIDEO_STREAM_STATUS_FLAGS{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *VIDEO_STREAM_STATUS_FLAGS) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_VIDEO_STREAM_STATUS_FLAGS[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e VIDEO_STREAM_STATUS_FLAGS) String() string { + if l, ok := labels_VIDEO_STREAM_STATUS_FLAGS[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/all/enum_video_stream_type.go b/pkg/dialects/all/enum_video_stream_type.go new file mode 100644 index 000000000..5b8f6fcbe --- /dev/null +++ b/pkg/dialects/all/enum_video_stream_type.go @@ -0,0 +1,50 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package all + +import ( + "errors" +) + +// Video stream types +type VIDEO_STREAM_TYPE int + +const ( + // Stream is RTSP + VIDEO_STREAM_TYPE_RTSP VIDEO_STREAM_TYPE = 0 + // Stream is RTP UDP (URI gives the port number) + VIDEO_STREAM_TYPE_RTPUDP VIDEO_STREAM_TYPE = 1 + // Stream is MPEG on TCP + VIDEO_STREAM_TYPE_TCP_MPEG VIDEO_STREAM_TYPE = 2 + // Stream is h.264 on MPEG TS (URI gives the port number) + VIDEO_STREAM_TYPE_MPEG_TS_H264 VIDEO_STREAM_TYPE = 3 +) + +var labels_VIDEO_STREAM_TYPE = map[VIDEO_STREAM_TYPE]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e VIDEO_STREAM_TYPE) MarshalText() ([]byte, error) { + if l, ok := labels_VIDEO_STREAM_TYPE[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_VIDEO_STREAM_TYPE = map[string]VIDEO_STREAM_TYPE{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *VIDEO_STREAM_TYPE) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_VIDEO_STREAM_TYPE[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e VIDEO_STREAM_TYPE) String() string { + if l, ok := labels_VIDEO_STREAM_TYPE[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/all/enum_vtol_transition_heading.go b/pkg/dialects/all/enum_vtol_transition_heading.go new file mode 100644 index 000000000..15ea5e755 --- /dev/null +++ b/pkg/dialects/all/enum_vtol_transition_heading.go @@ -0,0 +1,52 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package all + +import ( + "errors" +) + +// Direction of VTOL transition +type VTOL_TRANSITION_HEADING int + +const ( + // Respect the heading configuration of the vehicle. + VTOL_TRANSITION_HEADING_VEHICLE_DEFAULT VTOL_TRANSITION_HEADING = 0 + // Use the heading pointing towards the next waypoint. + VTOL_TRANSITION_HEADING_NEXT_WAYPOINT VTOL_TRANSITION_HEADING = 1 + // Use the heading on takeoff (while sitting on the ground). + VTOL_TRANSITION_HEADING_TAKEOFF VTOL_TRANSITION_HEADING = 2 + // Use the specified heading in parameter 4. + VTOL_TRANSITION_HEADING_SPECIFIED VTOL_TRANSITION_HEADING = 3 + // Use the current heading when reaching takeoff altitude (potentially facing the wind when weather-vaning is active). + VTOL_TRANSITION_HEADING_ANY VTOL_TRANSITION_HEADING = 4 +) + +var labels_VTOL_TRANSITION_HEADING = map[VTOL_TRANSITION_HEADING]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e VTOL_TRANSITION_HEADING) MarshalText() ([]byte, error) { + if l, ok := labels_VTOL_TRANSITION_HEADING[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_VTOL_TRANSITION_HEADING = map[string]VTOL_TRANSITION_HEADING{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *VTOL_TRANSITION_HEADING) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_VTOL_TRANSITION_HEADING[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e VTOL_TRANSITION_HEADING) String() string { + if l, ok := labels_VTOL_TRANSITION_HEADING[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/all/enum_wifi_config_ap_mode.go b/pkg/dialects/all/enum_wifi_config_ap_mode.go new file mode 100644 index 000000000..2f7023003 --- /dev/null +++ b/pkg/dialects/all/enum_wifi_config_ap_mode.go @@ -0,0 +1,50 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package all + +import ( + "errors" +) + +// WiFi Mode. +type WIFI_CONFIG_AP_MODE int + +const ( + // WiFi mode is undefined. + WIFI_CONFIG_AP_MODE_UNDEFINED WIFI_CONFIG_AP_MODE = 0 + // WiFi configured as an access point. + WIFI_CONFIG_AP_MODE_AP WIFI_CONFIG_AP_MODE = 1 + // WiFi configured as a station connected to an existing local WiFi network. + WIFI_CONFIG_AP_MODE_STATION WIFI_CONFIG_AP_MODE = 2 + // WiFi disabled. + WIFI_CONFIG_AP_MODE_DISABLED WIFI_CONFIG_AP_MODE = 3 +) + +var labels_WIFI_CONFIG_AP_MODE = map[WIFI_CONFIG_AP_MODE]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e WIFI_CONFIG_AP_MODE) MarshalText() ([]byte, error) { + if l, ok := labels_WIFI_CONFIG_AP_MODE[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_WIFI_CONFIG_AP_MODE = map[string]WIFI_CONFIG_AP_MODE{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *WIFI_CONFIG_AP_MODE) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_WIFI_CONFIG_AP_MODE[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e WIFI_CONFIG_AP_MODE) String() string { + if l, ok := labels_WIFI_CONFIG_AP_MODE[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/all/enum_wifi_config_ap_response.go b/pkg/dialects/all/enum_wifi_config_ap_response.go new file mode 100644 index 000000000..ea0d6185b --- /dev/null +++ b/pkg/dialects/all/enum_wifi_config_ap_response.go @@ -0,0 +1,54 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package all + +import ( + "errors" +) + +// Possible responses from a WIFI_CONFIG_AP message. +type WIFI_CONFIG_AP_RESPONSE int + +const ( + // Undefined response. Likely an indicative of a system that doesn't support this request. + WIFI_CONFIG_AP_RESPONSE_UNDEFINED WIFI_CONFIG_AP_RESPONSE = 0 + // Changes accepted. + WIFI_CONFIG_AP_RESPONSE_ACCEPTED WIFI_CONFIG_AP_RESPONSE = 1 + // Changes rejected. + WIFI_CONFIG_AP_RESPONSE_REJECTED WIFI_CONFIG_AP_RESPONSE = 2 + // Invalid Mode. + WIFI_CONFIG_AP_RESPONSE_MODE_ERROR WIFI_CONFIG_AP_RESPONSE = 3 + // Invalid SSID. + WIFI_CONFIG_AP_RESPONSE_SSID_ERROR WIFI_CONFIG_AP_RESPONSE = 4 + // Invalid Password. + WIFI_CONFIG_AP_RESPONSE_PASSWORD_ERROR WIFI_CONFIG_AP_RESPONSE = 5 +) + +var labels_WIFI_CONFIG_AP_RESPONSE = map[WIFI_CONFIG_AP_RESPONSE]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e WIFI_CONFIG_AP_RESPONSE) MarshalText() ([]byte, error) { + if l, ok := labels_WIFI_CONFIG_AP_RESPONSE[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_WIFI_CONFIG_AP_RESPONSE = map[string]WIFI_CONFIG_AP_RESPONSE{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *WIFI_CONFIG_AP_RESPONSE) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_WIFI_CONFIG_AP_RESPONSE[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e WIFI_CONFIG_AP_RESPONSE) String() string { + if l, ok := labels_WIFI_CONFIG_AP_RESPONSE[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/all/enum_wifi_network_security.go b/pkg/dialects/all/enum_wifi_network_security.go new file mode 100644 index 000000000..dfb546c89 --- /dev/null +++ b/pkg/dialects/all/enum_wifi_network_security.go @@ -0,0 +1,54 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package all + +import ( + "errors" +) + +// WiFi wireless security protocols. +type WIFI_NETWORK_SECURITY int + +const ( + // Undefined or unknown security protocol. + WIFI_NETWORK_SECURITY_UNDEFINED WIFI_NETWORK_SECURITY = 0 + // Open network, no security. + WIFI_NETWORK_SECURITY_OPEN WIFI_NETWORK_SECURITY = 1 + // WEP. + WIFI_NETWORK_SECURITY_WEP WIFI_NETWORK_SECURITY = 2 + // WPA1. + WIFI_NETWORK_SECURITY_WPA1 WIFI_NETWORK_SECURITY = 3 + // WPA2. + WIFI_NETWORK_SECURITY_WPA2 WIFI_NETWORK_SECURITY = 4 + // WPA3. + WIFI_NETWORK_SECURITY_WPA3 WIFI_NETWORK_SECURITY = 5 +) + +var labels_WIFI_NETWORK_SECURITY = map[WIFI_NETWORK_SECURITY]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e WIFI_NETWORK_SECURITY) MarshalText() ([]byte, error) { + if l, ok := labels_WIFI_NETWORK_SECURITY[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_WIFI_NETWORK_SECURITY = map[string]WIFI_NETWORK_SECURITY{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *WIFI_NETWORK_SECURITY) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_WIFI_NETWORK_SECURITY[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e WIFI_NETWORK_SECURITY) String() string { + if l, ok := labels_WIFI_NETWORK_SECURITY[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/all/enum_winch_actions.go b/pkg/dialects/all/enum_winch_actions.go new file mode 100644 index 000000000..8ab8e302e --- /dev/null +++ b/pkg/dialects/all/enum_winch_actions.go @@ -0,0 +1,60 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package all + +import ( + "errors" +) + +// Winch actions. +type WINCH_ACTIONS int + +const ( + // Allow motor to freewheel. + WINCH_RELAXED WINCH_ACTIONS = 0 + // Wind or unwind specified length of line, optionally using specified rate. + WINCH_RELATIVE_LENGTH_CONTROL WINCH_ACTIONS = 1 + // Wind or unwind line at specified rate. + WINCH_RATE_CONTROL WINCH_ACTIONS = 2 + // Perform the locking sequence to relieve motor while in the fully retracted position. Only action and instance command parameters are used, others are ignored. + WINCH_LOCK WINCH_ACTIONS = 3 + // Sequence of drop, slow down, touch down, reel up, lock. Only action and instance command parameters are used, others are ignored. + WINCH_DELIVER WINCH_ACTIONS = 4 + // Engage motor and hold current position. Only action and instance command parameters are used, others are ignored. + WINCH_HOLD WINCH_ACTIONS = 5 + // Return the reel to the fully retracted position. Only action and instance command parameters are used, others are ignored. + WINCH_RETRACT WINCH_ACTIONS = 6 + // Load the reel with line. The winch will calculate the total loaded length and stop when the tension exceeds a threshold. Only action and instance command parameters are used, others are ignored. + WINCH_LOAD_LINE WINCH_ACTIONS = 7 + // Spool out the entire length of the line. Only action and instance command parameters are used, others are ignored. + WINCH_ABANDON_LINE WINCH_ACTIONS = 8 +) + +var labels_WINCH_ACTIONS = map[WINCH_ACTIONS]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e WINCH_ACTIONS) MarshalText() ([]byte, error) { + if l, ok := labels_WINCH_ACTIONS[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_WINCH_ACTIONS = map[string]WINCH_ACTIONS{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *WINCH_ACTIONS) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_WINCH_ACTIONS[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e WINCH_ACTIONS) String() string { + if l, ok := labels_WINCH_ACTIONS[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/all/msg_actuator_control_target.go b/pkg/dialects/all/msg_actuator_control_target.go new file mode 100644 index 000000000..a6267f223 --- /dev/null +++ b/pkg/dialects/all/msg_actuator_control_target.go @@ -0,0 +1,18 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// Set the vehicle attitude and body angular rates. +type MessageActuatorControlTarget struct { + // Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. + TimeUsec uint64 + // Actuator group. The "_mlx" indicates this is a multi-instance message and a MAVLink parser should use this field to difference between instances. + GroupMlx uint8 + // Actuator controls. Normed to -1..+1 where 0 is neutral position. Throttle for single rotation direction motors is 0..1, negative range for reverse direction. Standard mapping for attitude controls (group 0): (index 0-7): roll, pitch, yaw, throttle, flaps, spoilers, airbrakes, landing gear. Load a pass-through mixer to repurpose them as generic outputs. + Controls [8]float32 +} + +// GetID implements the msg.Message interface. +func (*MessageActuatorControlTarget) GetID() uint32 { + return 140 +} diff --git a/pkg/dialects/all/msg_actuator_output_status.go b/pkg/dialects/all/msg_actuator_output_status.go new file mode 100644 index 000000000..3fbd5d279 --- /dev/null +++ b/pkg/dialects/all/msg_actuator_output_status.go @@ -0,0 +1,18 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// The raw values of the actuator outputs (e.g. on Pixhawk, from MAIN, AUX ports). This message supersedes SERVO_OUTPUT_RAW. +type MessageActuatorOutputStatus struct { + // Timestamp (since system boot). + TimeUsec uint64 + // Active outputs + Active uint32 + // Servo / motor output array values. Zero values indicate unused channels. + Actuator [32]float32 +} + +// GetID implements the msg.Message interface. +func (*MessageActuatorOutputStatus) GetID() uint32 { + return 375 +} diff --git a/pkg/dialects/all/msg_adap_tuning.go b/pkg/dialects/all/msg_adap_tuning.go new file mode 100644 index 000000000..980b07f55 --- /dev/null +++ b/pkg/dialects/all/msg_adap_tuning.go @@ -0,0 +1,38 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// Adaptive Controller tuning information. +type MessageAdapTuning struct { + // Axis. + Axis PID_TUNING_AXIS `mavenum:"uint8"` + // Desired rate. + Desired float32 + // Achieved rate. + Achieved float32 + // Error between model and vehicle. + Error float32 + // Theta estimated state predictor. + Theta float32 + // Omega estimated state predictor. + Omega float32 + // Sigma estimated state predictor. + Sigma float32 + // Theta derivative. + ThetaDot float32 + // Omega derivative. + OmegaDot float32 + // Sigma derivative. + SigmaDot float32 + // Projection operator value. + F float32 + // Projection operator derivative. + FDot float32 + // u adaptive controlled output command. + U float32 +} + +// GetID implements the msg.Message interface. +func (*MessageAdapTuning) GetID() uint32 { + return 11010 +} diff --git a/pkg/dialects/all/msg_adsb_vehicle.go b/pkg/dialects/all/msg_adsb_vehicle.go new file mode 100644 index 000000000..3c46f3bc9 --- /dev/null +++ b/pkg/dialects/all/msg_adsb_vehicle.go @@ -0,0 +1,38 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// The location and information of an ADSB vehicle +type MessageAdsbVehicle struct { + // ICAO address + IcaoAddress uint32 `mavname:"ICAO_address"` + // Latitude + Lat int32 + // Longitude + Lon int32 + // ADSB altitude type. + AltitudeType ADSB_ALTITUDE_TYPE `mavenum:"uint8"` + // Altitude(ASL) + Altitude int32 + // Course over ground + Heading uint16 + // The horizontal velocity + HorVelocity uint16 + // The vertical velocity. Positive is up + VerVelocity int16 + // The callsign, 8+null + Callsign string `mavlen:"9"` + // ADSB emitter type. + EmitterType ADSB_EMITTER_TYPE `mavenum:"uint8"` + // Time since last communication in seconds + Tslc uint8 + // Bitmap to indicate various statuses including valid data fields + Flags ADSB_FLAGS `mavenum:"uint16"` + // Squawk code + Squawk uint16 +} + +// GetID implements the msg.Message interface. +func (*MessageAdsbVehicle) GetID() uint32 { + return 246 +} diff --git a/pkg/dialects/all/msg_ahrs.go b/pkg/dialects/all/msg_ahrs.go new file mode 100644 index 000000000..5a150acc7 --- /dev/null +++ b/pkg/dialects/all/msg_ahrs.go @@ -0,0 +1,26 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// Status of DCM attitude estimator. +type MessageAhrs struct { + // X gyro drift estimate. + Omegaix float32 `mavname:"omegaIx"` + // Y gyro drift estimate. + Omegaiy float32 `mavname:"omegaIy"` + // Z gyro drift estimate. + Omegaiz float32 `mavname:"omegaIz"` + // Average accel_weight. + AccelWeight float32 + // Average renormalisation value. + RenormVal float32 + // Average error_roll_pitch value. + ErrorRp float32 + // Average error_yaw value. + ErrorYaw float32 +} + +// GetID implements the msg.Message interface. +func (*MessageAhrs) GetID() uint32 { + return 163 +} diff --git a/pkg/dialects/all/msg_ahrs2.go b/pkg/dialects/all/msg_ahrs2.go new file mode 100644 index 000000000..2a1bfe9f0 --- /dev/null +++ b/pkg/dialects/all/msg_ahrs2.go @@ -0,0 +1,24 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// Status of secondary AHRS filter if available. +type MessageAhrs2 struct { + // Roll angle. + Roll float32 + // Pitch angle. + Pitch float32 + // Yaw angle. + Yaw float32 + // Altitude (MSL). + Altitude float32 + // Latitude. + Lat int32 + // Longitude. + Lng int32 +} + +// GetID implements the msg.Message interface. +func (*MessageAhrs2) GetID() uint32 { + return 178 +} diff --git a/pkg/dialects/all/msg_ahrs3.go b/pkg/dialects/all/msg_ahrs3.go new file mode 100644 index 000000000..a99e2fa18 --- /dev/null +++ b/pkg/dialects/all/msg_ahrs3.go @@ -0,0 +1,32 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// Status of third AHRS filter if available. This is for ANU research group (Ali and Sean). +type MessageAhrs3 struct { + // Roll angle. + Roll float32 + // Pitch angle. + Pitch float32 + // Yaw angle. + Yaw float32 + // Altitude (MSL). + Altitude float32 + // Latitude. + Lat int32 + // Longitude. + Lng int32 + // Test variable1. + V1 float32 + // Test variable2. + V2 float32 + // Test variable3. + V3 float32 + // Test variable4. + V4 float32 +} + +// GetID implements the msg.Message interface. +func (*MessageAhrs3) GetID() uint32 { + return 182 +} diff --git a/pkg/dialects/all/msg_airspeed.go b/pkg/dialects/all/msg_airspeed.go new file mode 100644 index 000000000..664ed56bf --- /dev/null +++ b/pkg/dialects/all/msg_airspeed.go @@ -0,0 +1,26 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// Airspeed information from a sensor. +type MessageAirspeed struct { + // Sensor ID. + Id uint8 + // Calibrated airspeed (CAS) if available, otherwise indicated airspeed (IAS). + Airspeed float32 + // Temperature. INT16_MAX for value unknown/not supplied. + Temperature int16 + // Differential pressure. NaN for value unknown/not supplied. + PressDiff float32 + // Static pressure. NaN for value unknown/not supplied. + PressStatic float32 + // Error/accuracy. NaN for value unknown/not supplied. + Error float32 + // Airspeed sensor type. NaN for value unknown/not supplied. Used to estimate accuracy (i.e. as an alternative to using the error field). + Type AIRSPEED_SENSOR_TYPE `mavenum:"uint8"` +} + +// GetID implements the msg.Message interface. +func (*MessageAirspeed) GetID() uint32 { + return 295 +} diff --git a/pkg/dialects/all/msg_airspeed_autocal.go b/pkg/dialects/all/msg_airspeed_autocal.go new file mode 100644 index 000000000..50f1c3842 --- /dev/null +++ b/pkg/dialects/all/msg_airspeed_autocal.go @@ -0,0 +1,36 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// Airspeed auto-calibration. +type MessageAirspeedAutocal struct { + // GPS velocity north. + Vx float32 + // GPS velocity east. + Vy float32 + // GPS velocity down. + Vz float32 + // Differential pressure. + DiffPressure float32 + // Estimated to true airspeed ratio. + Eas2tas float32 `mavname:"EAS2TAS"` + // Airspeed ratio. + Ratio float32 + // EKF state x. + StateX float32 + // EKF state y. + StateY float32 + // EKF state z. + StateZ float32 + // EKF Pax. + Pax float32 `mavname:"Pax"` + // EKF Pby. + Pby float32 `mavname:"Pby"` + // EKF Pcz. + Pcz float32 `mavname:"Pcz"` +} + +// GetID implements the msg.Message interface. +func (*MessageAirspeedAutocal) GetID() uint32 { + return 174 +} diff --git a/pkg/dialects/all/msg_ais_vessel.go b/pkg/dialects/all/msg_ais_vessel.go new file mode 100644 index 000000000..480d5bf11 --- /dev/null +++ b/pkg/dialects/all/msg_ais_vessel.go @@ -0,0 +1,46 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// The location and information of an AIS vessel +type MessageAisVessel struct { + // Mobile Marine Service Identifier, 9 decimal digits + Mmsi uint32 `mavname:"MMSI"` + // Latitude + Lat int32 + // Longitude + Lon int32 + // Course over ground + Cog uint16 `mavname:"COG"` + // True heading + Heading uint16 + // Speed over ground + Velocity uint16 + // Turn rate + TurnRate int8 + // Navigational status + NavigationalStatus AIS_NAV_STATUS `mavenum:"uint8"` + // Type of vessels + Type AIS_TYPE `mavenum:"uint8"` + // Distance from lat/lon location to bow + DimensionBow uint16 + // Distance from lat/lon location to stern + DimensionStern uint16 + // Distance from lat/lon location to port side + DimensionPort uint8 + // Distance from lat/lon location to starboard side + DimensionStarboard uint8 + // The vessel callsign + Callsign string `mavlen:"7"` + // The vessel name + Name string `mavlen:"20"` + // Time since last communication in seconds + Tslc uint16 + // Bitmask to indicate various statuses including valid data fields + Flags AIS_FLAGS `mavenum:"uint16"` +} + +// GetID implements the msg.Message interface. +func (*MessageAisVessel) GetID() uint32 { + return 301 +} diff --git a/pkg/dialects/all/msg_altitude.go b/pkg/dialects/all/msg_altitude.go new file mode 100644 index 000000000..acdee55cd --- /dev/null +++ b/pkg/dialects/all/msg_altitude.go @@ -0,0 +1,26 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// The current system altitude. +type MessageAltitude struct { + // Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. + TimeUsec uint64 + // This altitude measure is initialized on system boot and monotonic (it is never reset, but represents the local altitude change). The only guarantee on this field is that it will never be reset and is consistent within a flight. The recommended value for this field is the uncorrected barometric altitude at boot time. This altitude will also drift and vary between flights. + AltitudeMonotonic float32 + // This altitude measure is strictly above mean sea level and might be non-monotonic (it might reset on events like GPS lock or when a new QNH value is set). It should be the altitude to which global altitude waypoints are compared to. Note that it is *not* the GPS altitude, however, most GPS modules already output MSL by default and not the WGS84 altitude. + AltitudeAmsl float32 + // This is the local altitude in the local coordinate frame. It is not the altitude above home, but in reference to the coordinate origin (0, 0, 0). It is up-positive. + AltitudeLocal float32 + // This is the altitude above the home position. It resets on each change of the current home position. + AltitudeRelative float32 + // This is the altitude above terrain. It might be fed by a terrain database or an altimeter. Values smaller than -1000 should be interpreted as unknown. + AltitudeTerrain float32 + // This is not the altitude, but the clear space below the system according to the fused clearance estimate. It generally should max out at the maximum range of e.g. the laser altimeter. It is generally a moving target. A negative value indicates no measurement available. + BottomClearance float32 +} + +// GetID implements the msg.Message interface. +func (*MessageAltitude) GetID() uint32 { + return 141 +} diff --git a/pkg/dialects/all/msg_aoa_ssa.go b/pkg/dialects/all/msg_aoa_ssa.go new file mode 100644 index 000000000..3ce5bdf57 --- /dev/null +++ b/pkg/dialects/all/msg_aoa_ssa.go @@ -0,0 +1,18 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// Angle of Attack and Side Slip Angle. +type MessageAoaSsa struct { + // Timestamp (since boot or Unix epoch). + TimeUsec uint64 + // Angle of Attack. + Aoa float32 `mavname:"AOA"` + // Side Slip Angle. + Ssa float32 `mavname:"SSA"` +} + +// GetID implements the msg.Message interface. +func (*MessageAoaSsa) GetID() uint32 { + return 11020 +} diff --git a/pkg/dialects/all/msg_ap_adc.go b/pkg/dialects/all/msg_ap_adc.go new file mode 100644 index 000000000..8598645f2 --- /dev/null +++ b/pkg/dialects/all/msg_ap_adc.go @@ -0,0 +1,24 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// Raw ADC output. +type MessageApAdc struct { + // ADC output 1. + Adc1 uint16 + // ADC output 2. + Adc2 uint16 + // ADC output 3. + Adc3 uint16 + // ADC output 4. + Adc4 uint16 + // ADC output 5. + Adc5 uint16 + // ADC output 6. + Adc6 uint16 +} + +// GetID implements the msg.Message interface. +func (*MessageApAdc) GetID() uint32 { + return 153 +} diff --git a/pkg/dialects/all/msg_array_test_0.go b/pkg/dialects/all/msg_array_test_0.go new file mode 100644 index 000000000..788858340 --- /dev/null +++ b/pkg/dialects/all/msg_array_test_0.go @@ -0,0 +1,22 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// Array test #0. +type MessageArrayTest_0 struct { + // Stub field + V1 uint8 + // Value array + ArI8 [4]int8 + // Value array + ArU8 [4]uint8 + // Value array + ArU16 [4]uint16 + // Value array + ArU32 [4]uint32 +} + +// GetID implements the msg.Message interface. +func (*MessageArrayTest_0) GetID() uint32 { + return 17150 +} diff --git a/pkg/dialects/all/msg_array_test_1.go b/pkg/dialects/all/msg_array_test_1.go new file mode 100644 index 000000000..87cd44ba0 --- /dev/null +++ b/pkg/dialects/all/msg_array_test_1.go @@ -0,0 +1,14 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// Array test #1. +type MessageArrayTest_1 struct { + // Value array + ArU32 [4]uint32 +} + +// GetID implements the msg.Message interface. +func (*MessageArrayTest_1) GetID() uint32 { + return 17151 +} diff --git a/pkg/dialects/all/msg_array_test_3.go b/pkg/dialects/all/msg_array_test_3.go new file mode 100644 index 000000000..199a38f35 --- /dev/null +++ b/pkg/dialects/all/msg_array_test_3.go @@ -0,0 +1,16 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// Array test #3. +type MessageArrayTest_3 struct { + // Stub field + V uint8 + // Value array + ArU32 [4]uint32 +} + +// GetID implements the msg.Message interface. +func (*MessageArrayTest_3) GetID() uint32 { + return 17153 +} diff --git a/pkg/dialects/all/msg_array_test_4.go b/pkg/dialects/all/msg_array_test_4.go new file mode 100644 index 000000000..9a7ede80c --- /dev/null +++ b/pkg/dialects/all/msg_array_test_4.go @@ -0,0 +1,16 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// Array test #4. +type MessageArrayTest_4 struct { + // Value array + ArU32 [4]uint32 + // Stub field + V uint8 +} + +// GetID implements the msg.Message interface. +func (*MessageArrayTest_4) GetID() uint32 { + return 17154 +} diff --git a/pkg/dialects/all/msg_array_test_5.go b/pkg/dialects/all/msg_array_test_5.go new file mode 100644 index 000000000..a2d0c0e17 --- /dev/null +++ b/pkg/dialects/all/msg_array_test_5.go @@ -0,0 +1,16 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// Array test #5. +type MessageArrayTest_5 struct { + // Value array + C1 string `mavlen:"5"` + // Value array + C2 string `mavlen:"5"` +} + +// GetID implements the msg.Message interface. +func (*MessageArrayTest_5) GetID() uint32 { + return 17155 +} diff --git a/pkg/dialects/all/msg_array_test_6.go b/pkg/dialects/all/msg_array_test_6.go new file mode 100644 index 000000000..25f50fcce --- /dev/null +++ b/pkg/dialects/all/msg_array_test_6.go @@ -0,0 +1,36 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// Array test #6. +type MessageArrayTest_6 struct { + // Stub field + V1 uint8 + // Stub field + V2 uint16 + // Stub field + V3 uint32 + // Value array + ArU32 [2]uint32 + // Value array + ArI32 [2]int32 + // Value array + ArU16 [2]uint16 + // Value array + ArI16 [2]int16 + // Value array + ArU8 [2]uint8 + // Value array + ArI8 [2]int8 + // Value array + ArC string `mavlen:"32"` + // Value array + ArD [2]float64 + // Value array + ArF [2]float32 +} + +// GetID implements the msg.Message interface. +func (*MessageArrayTest_6) GetID() uint32 { + return 17156 +} diff --git a/pkg/dialects/all/msg_array_test_7.go b/pkg/dialects/all/msg_array_test_7.go new file mode 100644 index 000000000..c87a7a588 --- /dev/null +++ b/pkg/dialects/all/msg_array_test_7.go @@ -0,0 +1,30 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// Array test #7. +type MessageArrayTest_7 struct { + // Value array + ArD [2]float64 + // Value array + ArF [2]float32 + // Value array + ArU32 [2]uint32 + // Value array + ArI32 [2]int32 + // Value array + ArU16 [2]uint16 + // Value array + ArI16 [2]int16 + // Value array + ArU8 [2]uint8 + // Value array + ArI8 [2]int8 + // Value array + ArC string `mavlen:"32"` +} + +// GetID implements the msg.Message interface. +func (*MessageArrayTest_7) GetID() uint32 { + return 17157 +} diff --git a/pkg/dialects/all/msg_array_test_8.go b/pkg/dialects/all/msg_array_test_8.go new file mode 100644 index 000000000..4e732fa37 --- /dev/null +++ b/pkg/dialects/all/msg_array_test_8.go @@ -0,0 +1,18 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// Array test #8. +type MessageArrayTest_8 struct { + // Stub field + V3 uint32 + // Value array + ArD [2]float64 + // Value array + ArU16 [2]uint16 +} + +// GetID implements the msg.Message interface. +func (*MessageArrayTest_8) GetID() uint32 { + return 17158 +} diff --git a/pkg/dialects/all/msg_asl_obctrl.go b/pkg/dialects/all/msg_asl_obctrl.go new file mode 100644 index 000000000..5b9eb0505 --- /dev/null +++ b/pkg/dialects/all/msg_asl_obctrl.go @@ -0,0 +1,28 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// Off-board controls/commands for ASLUAVs +type MessageAslObctrl struct { + // Time since system start + Timestamp uint64 + // Elevator command [~] + Uelev float32 `mavname:"uElev"` + // Throttle command [~] + Uthrot float32 `mavname:"uThrot"` + // Throttle 2 command [~] + Uthrot2 float32 `mavname:"uThrot2"` + // Left aileron command [~] + Uaill float32 `mavname:"uAilL"` + // Right aileron command [~] + Uailr float32 `mavname:"uAilR"` + // Rudder command [~] + Urud float32 `mavname:"uRud"` + // Off-board computer status + ObctrlStatus uint8 +} + +// GetID implements the msg.Message interface. +func (*MessageAslObctrl) GetID() uint32 { + return 8008 +} diff --git a/pkg/dialects/all/msg_aslctrl_data.go b/pkg/dialects/all/msg_aslctrl_data.go new file mode 100644 index 000000000..e7115a858 --- /dev/null +++ b/pkg/dialects/all/msg_aslctrl_data.go @@ -0,0 +1,47 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// ASL-fixed-wing controller data +type MessageAslctrlData struct { + // Timestamp + Timestamp uint64 + // ASLCTRL control-mode (manual, stabilized, auto, etc...) + AslctrlMode uint8 + // See sourcecode for a description of these values... + H float32 + Href float32 `mavname:"hRef"` + HrefT float32 `mavname:"hRef_t"` + // Pitch angle + Pitchangle float32 `mavname:"PitchAngle"` + // Pitch angle reference + Pitchangleref float32 `mavname:"PitchAngleRef"` + Q float32 + Qref float32 `mavname:"qRef"` + Uelev float32 `mavname:"uElev"` + Uthrot float32 `mavname:"uThrot"` + Uthrot2 float32 `mavname:"uThrot2"` + Nz float32 `mavname:"nZ"` + // Airspeed reference + Airspeedref float32 `mavname:"AirspeedRef"` + Spoilersengaged uint8 `mavname:"SpoilersEngaged"` + // Yaw angle + Yawangle float32 `mavname:"YawAngle"` + // Yaw angle reference + Yawangleref float32 `mavname:"YawAngleRef"` + // Roll angle + Rollangle float32 `mavname:"RollAngle"` + // Roll angle reference + Rollangleref float32 `mavname:"RollAngleRef"` + P float32 + Pref float32 `mavname:"pRef"` + R float32 + Rref float32 `mavname:"rRef"` + Uail float32 `mavname:"uAil"` + Urud float32 `mavname:"uRud"` +} + +// GetID implements the msg.Message interface. +func (*MessageAslctrlData) GetID() uint32 { + return 8004 +} diff --git a/pkg/dialects/all/msg_aslctrl_debug.go b/pkg/dialects/all/msg_aslctrl_debug.go new file mode 100644 index 000000000..0bc84d0a9 --- /dev/null +++ b/pkg/dialects/all/msg_aslctrl_debug.go @@ -0,0 +1,34 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// ASL-fixed-wing controller debug data +type MessageAslctrlDebug struct { + // Debug data + I32_1 uint32 + // Debug data + I8_1 uint8 + // Debug data + I8_2 uint8 + // Debug data + F_1 float32 + // Debug data + F_2 float32 + // Debug data + F_3 float32 + // Debug data + F_4 float32 + // Debug data + F_5 float32 + // Debug data + F_6 float32 + // Debug data + F_7 float32 + // Debug data + F_8 float32 +} + +// GetID implements the msg.Message interface. +func (*MessageAslctrlDebug) GetID() uint32 { + return 8005 +} diff --git a/pkg/dialects/all/msg_asluav_status.go b/pkg/dialects/all/msg_asluav_status.go new file mode 100644 index 000000000..85850a95a --- /dev/null +++ b/pkg/dialects/all/msg_asluav_status.go @@ -0,0 +1,20 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// Extended state information for ASLUAVs +type MessageAsluavStatus struct { + // Status of the position-indicator LEDs + LedStatus uint8 `mavname:"LED_status"` + // Status of the IRIDIUM satellite communication system + SatcomStatus uint8 `mavname:"SATCOM_status"` + // Status vector for up to 8 servos + ServoStatus [8]uint8 `mavname:"Servo_status"` + // Motor RPM + MotorRpm float32 `mavname:"Motor_rpm"` +} + +// GetID implements the msg.Message interface. +func (*MessageAsluavStatus) GetID() uint32 { + return 8006 +} diff --git a/pkg/dialects/all/msg_att_pos_mocap.go b/pkg/dialects/all/msg_att_pos_mocap.go new file mode 100644 index 000000000..e928f16e0 --- /dev/null +++ b/pkg/dialects/all/msg_att_pos_mocap.go @@ -0,0 +1,24 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// Motion capture attitude and position +type MessageAttPosMocap struct { + // Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. + TimeUsec uint64 + // Attitude quaternion (w, x, y, z order, zero-rotation is 1, 0, 0, 0) + Q [4]float32 + // X position (NED) + X float32 + // Y position (NED) + Y float32 + // Z position (NED) + Z float32 + // Row-major representation of a pose 6x6 cross-covariance matrix upper right triangle (states: x, y, z, roll, pitch, yaw; first six entries are the first ROW, next five entries are the second ROW, etc.). If unknown, assign NaN value to first element in the array. + Covariance [21]float32 `mavext:"true"` +} + +// GetID implements the msg.Message interface. +func (*MessageAttPosMocap) GetID() uint32 { + return 138 +} diff --git a/pkg/dialects/all/msg_attitude.go b/pkg/dialects/all/msg_attitude.go new file mode 100644 index 000000000..71eeb6f80 --- /dev/null +++ b/pkg/dialects/all/msg_attitude.go @@ -0,0 +1,26 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// The attitude in the aeronautical frame (right-handed, Z-down, X-front, Y-right). +type MessageAttitude struct { + // Timestamp (time since system boot). + TimeBootMs uint32 + // Roll angle (-pi..+pi) + Roll float32 + // Pitch angle (-pi..+pi) + Pitch float32 + // Yaw angle (-pi..+pi) + Yaw float32 + // Roll angular speed + Rollspeed float32 + // Pitch angular speed + Pitchspeed float32 + // Yaw angular speed + Yawspeed float32 +} + +// GetID implements the msg.Message interface. +func (*MessageAttitude) GetID() uint32 { + return 30 +} diff --git a/pkg/dialects/all/msg_attitude_quaternion.go b/pkg/dialects/all/msg_attitude_quaternion.go new file mode 100644 index 000000000..481f8975b --- /dev/null +++ b/pkg/dialects/all/msg_attitude_quaternion.go @@ -0,0 +1,30 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// The attitude in the aeronautical frame (right-handed, Z-down, X-front, Y-right), expressed as quaternion. Quaternion order is w, x, y, z and a zero rotation would be expressed as (1 0 0 0). +type MessageAttitudeQuaternion struct { + // Timestamp (time since system boot). + TimeBootMs uint32 + // Quaternion component 1, w (1 in null-rotation) + Q1 float32 + // Quaternion component 2, x (0 in null-rotation) + Q2 float32 + // Quaternion component 3, y (0 in null-rotation) + Q3 float32 + // Quaternion component 4, z (0 in null-rotation) + Q4 float32 + // Roll angular speed + Rollspeed float32 + // Pitch angular speed + Pitchspeed float32 + // Yaw angular speed + Yawspeed float32 + // Rotation offset by which the attitude quaternion and angular speed vector should be rotated for user display (quaternion with [w, x, y, z] order, zero-rotation is [1, 0, 0, 0], send [0, 0, 0, 0] if field not supported). This field is intended for systems in which the reference attitude may change during flight. For example, tailsitters VTOLs rotate their reference attitude by 90 degrees between hover mode and fixed wing mode, thus repr_offset_q is equal to [1, 0, 0, 0] in hover mode and equal to [0.7071, 0, 0.7071, 0] in fixed wing mode. + ReprOffsetQ [4]float32 `mavext:"true"` +} + +// GetID implements the msg.Message interface. +func (*MessageAttitudeQuaternion) GetID() uint32 { + return 31 +} diff --git a/pkg/dialects/all/msg_attitude_quaternion_cov.go b/pkg/dialects/all/msg_attitude_quaternion_cov.go new file mode 100644 index 000000000..3c172af7b --- /dev/null +++ b/pkg/dialects/all/msg_attitude_quaternion_cov.go @@ -0,0 +1,24 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// The attitude in the aeronautical frame (right-handed, Z-down, X-front, Y-right), expressed as quaternion. Quaternion order is w, x, y, z and a zero rotation would be expressed as (1 0 0 0). +type MessageAttitudeQuaternionCov struct { + // Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. + TimeUsec uint64 + // Quaternion components, w, x, y, z (1 0 0 0 is the null-rotation) + Q [4]float32 + // Roll angular speed + Rollspeed float32 + // Pitch angular speed + Pitchspeed float32 + // Yaw angular speed + Yawspeed float32 + // Row-major representation of a 3x3 attitude covariance matrix (states: roll, pitch, yaw; first three entries are the first ROW, next three entries are the second row, etc.). If unknown, assign NaN value to first element in the array. + Covariance [9]float32 +} + +// GetID implements the msg.Message interface. +func (*MessageAttitudeQuaternionCov) GetID() uint32 { + return 61 +} diff --git a/pkg/dialects/all/msg_attitude_target.go b/pkg/dialects/all/msg_attitude_target.go new file mode 100644 index 000000000..fe37d0bc5 --- /dev/null +++ b/pkg/dialects/all/msg_attitude_target.go @@ -0,0 +1,26 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// Reports the current commanded attitude of the vehicle as specified by the autopilot. This should match the commands sent in a SET_ATTITUDE_TARGET message if the vehicle is being controlled this way. +type MessageAttitudeTarget struct { + // Timestamp (time since system boot). + TimeBootMs uint32 + // Bitmap to indicate which dimensions should be ignored by the vehicle. + TypeMask ATTITUDE_TARGET_TYPEMASK `mavenum:"uint8"` + // Attitude quaternion (w, x, y, z order, zero-rotation is 1, 0, 0, 0) + Q [4]float32 + // Body roll rate + BodyRollRate float32 + // Body pitch rate + BodyPitchRate float32 + // Body yaw rate + BodyYawRate float32 + // Collective thrust, normalized to 0 .. 1 (-1 .. 1 for vehicles capable of reverse trust) + Thrust float32 +} + +// GetID implements the msg.Message interface. +func (*MessageAttitudeTarget) GetID() uint32 { + return 83 +} diff --git a/pkg/dialects/all/msg_auth_key.go b/pkg/dialects/all/msg_auth_key.go new file mode 100644 index 000000000..47100c37f --- /dev/null +++ b/pkg/dialects/all/msg_auth_key.go @@ -0,0 +1,14 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// Emit an encrypted signature / key identifying this system. PLEASE NOTE: This protocol has been kept simple, so transmitting the key requires an encrypted channel for true safety. +type MessageAuthKey struct { + // key + Key string `mavlen:"32"` +} + +// GetID implements the msg.Message interface. +func (*MessageAuthKey) GetID() uint32 { + return 7 +} diff --git a/pkg/dialects/all/msg_autopilot_state_for_gimbal_device.go b/pkg/dialects/all/msg_autopilot_state_for_gimbal_device.go new file mode 100644 index 000000000..c08429c33 --- /dev/null +++ b/pkg/dialects/all/msg_autopilot_state_for_gimbal_device.go @@ -0,0 +1,36 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// Low level message containing autopilot state relevant for a gimbal device. This message is to be sent from the gimbal manager to the gimbal device component. The data of this message server for the gimbal's estimator corrections in particular horizon compensation, as well as the autopilot's control intention e.g. feed forward angular control in z-axis. +type MessageAutopilotStateForGimbalDevice struct { + // System ID + TargetSystem uint8 + // Component ID + TargetComponent uint8 + // Timestamp (time since system boot). + TimeBootUs uint64 + // Quaternion components of autopilot attitude: w, x, y, z (1 0 0 0 is the null-rotation, Hamilton convention). + Q [4]float32 + // Estimated delay of the attitude data. + QEstimatedDelayUs uint32 + // X Speed in NED (North, East, Down). + Vx float32 + // Y Speed in NED (North, East, Down). + Vy float32 + // Z Speed in NED (North, East, Down). + Vz float32 + // Estimated delay of the speed data. + VEstimatedDelayUs uint32 + // Feed forward Z component of angular velocity, positive is yawing to the right, NaN to be ignored. This is to indicate if the autopilot is actively yawing. + FeedForwardAngularVelocityZ float32 + // Bitmap indicating which estimator outputs are valid. + EstimatorStatus ESTIMATOR_STATUS_FLAGS `mavenum:"uint16"` + // The landed state. Is set to MAV_LANDED_STATE_UNDEFINED if landed state is unknown. + LandedState MAV_LANDED_STATE `mavenum:"uint8"` +} + +// GetID implements the msg.Message interface. +func (*MessageAutopilotStateForGimbalDevice) GetID() uint32 { + return 286 +} diff --git a/pkg/dialects/all/msg_autopilot_version.go b/pkg/dialects/all/msg_autopilot_version.go new file mode 100644 index 000000000..546185529 --- /dev/null +++ b/pkg/dialects/all/msg_autopilot_version.go @@ -0,0 +1,36 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// Version and capability of autopilot software. This should be emitted in response to a request with MAV_CMD_REQUEST_MESSAGE. +type MessageAutopilotVersion struct { + // Bitmap of capabilities + Capabilities MAV_PROTOCOL_CAPABILITY `mavenum:"uint64"` + // Firmware version number + FlightSwVersion uint32 + // Middleware version number + MiddlewareSwVersion uint32 + // Operating system version number + OsSwVersion uint32 + // HW / board version (last 8 bits should be silicon ID, if any). The first 16 bits of this field specify https://github.com/PX4/PX4-Bootloader/blob/master/board_types.txt + BoardVersion uint32 + // Custom version field, commonly the first 8 bytes of the git hash. This is not an unique identifier, but should allow to identify the commit using the main version number even for very large code bases. + FlightCustomVersion [8]uint8 + // Custom version field, commonly the first 8 bytes of the git hash. This is not an unique identifier, but should allow to identify the commit using the main version number even for very large code bases. + MiddlewareCustomVersion [8]uint8 + // Custom version field, commonly the first 8 bytes of the git hash. This is not an unique identifier, but should allow to identify the commit using the main version number even for very large code bases. + OsCustomVersion [8]uint8 + // ID of the board vendor + VendorId uint16 + // ID of the product + ProductId uint16 + // UID if provided by hardware (see uid2) + Uid uint64 + // UID if provided by hardware (supersedes the uid field. If this is non-zero, use this field, otherwise use uid) + Uid2 [18]uint8 `mavext:"true"` +} + +// GetID implements the msg.Message interface. +func (*MessageAutopilotVersion) GetID() uint32 { + return 148 +} diff --git a/pkg/dialects/all/msg_autopilot_version_request.go b/pkg/dialects/all/msg_autopilot_version_request.go new file mode 100644 index 000000000..3dc0aadbb --- /dev/null +++ b/pkg/dialects/all/msg_autopilot_version_request.go @@ -0,0 +1,16 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// Request the autopilot version from the system/component. +type MessageAutopilotVersionRequest struct { + // System ID. + TargetSystem uint8 + // Component ID. + TargetComponent uint8 +} + +// GetID implements the msg.Message interface. +func (*MessageAutopilotVersionRequest) GetID() uint32 { + return 183 +} diff --git a/pkg/dialects/all/msg_avss_prs_sys_status.go b/pkg/dialects/all/msg_avss_prs_sys_status.go new file mode 100644 index 000000000..9f70334c1 --- /dev/null +++ b/pkg/dialects/all/msg_avss_prs_sys_status.go @@ -0,0 +1,22 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// AVSS PRS system status. +type MessageAvssPrsSysStatus struct { + // PRS arm statuses + ArmStatus uint8 + // Estimated battery run-time without a remote connection and PRS battery voltage + BatteryStatus uint16 + // PRS error statuses + ErrorStatus uint32 + // PRS battery change statuses + ChangeStatus uint8 + // Time since PRS system boot + TimeBootMs uint32 +} + +// GetID implements the msg.Message interface. +func (*MessageAvssPrsSysStatus) GetID() uint32 { + return 60050 +} diff --git a/pkg/dialects/all/msg_battery2.go b/pkg/dialects/all/msg_battery2.go new file mode 100644 index 000000000..7f4b7758d --- /dev/null +++ b/pkg/dialects/all/msg_battery2.go @@ -0,0 +1,16 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// 2nd Battery status +type MessageBattery2 struct { + // Voltage. + Voltage uint16 + // Battery current, -1: autopilot does not measure the current. + CurrentBattery int16 +} + +// GetID implements the msg.Message interface. +func (*MessageBattery2) GetID() uint32 { + return 181 +} diff --git a/pkg/dialects/all/msg_battery_status.go b/pkg/dialects/all/msg_battery_status.go new file mode 100644 index 000000000..32792d465 --- /dev/null +++ b/pkg/dialects/all/msg_battery_status.go @@ -0,0 +1,40 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// Battery information. Updates GCS with flight controller battery status. Smart batteries also use this message, but may additionally send SMART_BATTERY_INFO. +type MessageBatteryStatus struct { + // Battery ID + Id uint8 + // Function of the battery + BatteryFunction MAV_BATTERY_FUNCTION `mavenum:"uint8"` + // Type (chemistry) of the battery + Type MAV_BATTERY_TYPE `mavenum:"uint8"` + // Temperature of the battery. INT16_MAX for unknown temperature. + Temperature int16 + // Battery voltage of cells 1 to 10 (see voltages_ext for cells 11-14). Cells in this field above the valid cell count for this battery should have the UINT16_MAX value. If individual cell voltages are unknown or not measured for this battery, then the overall battery voltage should be filled in cell 0, with all others set to UINT16_MAX. If the voltage of the battery is greater than (UINT16_MAX - 1), then cell 0 should be set to (UINT16_MAX - 1), and cell 1 to the remaining voltage. This can be extended to multiple cells if the total voltage is greater than 2 * (UINT16_MAX - 1). + Voltages [10]uint16 + // Battery current, -1: autopilot does not measure the current + CurrentBattery int16 + // Consumed charge, -1: autopilot does not provide consumption estimate + CurrentConsumed int32 + // Consumed energy, -1: autopilot does not provide energy consumption estimate + EnergyConsumed int32 + // Remaining battery energy. Values: [0-100], -1: autopilot does not estimate the remaining battery. + BatteryRemaining int8 + // Remaining battery time, 0: autopilot does not provide remaining battery time estimate + TimeRemaining int32 `mavext:"true"` + // State for extent of discharge, provided by autopilot for warning or external reactions + ChargeState MAV_BATTERY_CHARGE_STATE `mavenum:"uint8" mavext:"true"` + // Battery voltages for cells 11 to 14. Cells above the valid cell count for this battery should have a value of 0, where zero indicates not supported (note, this is different than for the voltages field and allows empty byte truncation). If the measured value is 0 then 1 should be sent instead. + VoltagesExt [4]uint16 `mavext:"true"` + // Battery mode. Default (0) is that battery mode reporting is not supported or battery is in normal-use mode. + Mode MAV_BATTERY_MODE `mavenum:"uint8" mavext:"true"` + // Fault/health indications. These should be set when charge_state is MAV_BATTERY_CHARGE_STATE_FAILED or MAV_BATTERY_CHARGE_STATE_UNHEALTHY (if not, fault reporting is not supported). + FaultBitmask MAV_BATTERY_FAULT `mavenum:"uint32" mavext:"true"` +} + +// GetID implements the msg.Message interface. +func (*MessageBatteryStatus) GetID() uint32 { + return 147 +} diff --git a/pkg/dialects/all/msg_button_change.go b/pkg/dialects/all/msg_button_change.go new file mode 100644 index 000000000..90742ce3c --- /dev/null +++ b/pkg/dialects/all/msg_button_change.go @@ -0,0 +1,18 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// Report button state change. +type MessageButtonChange struct { + // Timestamp (time since system boot). + TimeBootMs uint32 + // Time of last change of button state. + LastChangeMs uint32 + // Bitmap for state of buttons. + State uint8 +} + +// GetID implements the msg.Message interface. +func (*MessageButtonChange) GetID() uint32 { + return 257 +} diff --git a/pkg/dialects/all/msg_camera_capture_status.go b/pkg/dialects/all/msg_camera_capture_status.go new file mode 100644 index 000000000..d4352bc90 --- /dev/null +++ b/pkg/dialects/all/msg_camera_capture_status.go @@ -0,0 +1,26 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// Information about the status of a capture. Can be requested with a MAV_CMD_REQUEST_MESSAGE command. +type MessageCameraCaptureStatus struct { + // Timestamp (time since system boot). + TimeBootMs uint32 + // Current status of image capturing (0: idle, 1: capture in progress, 2: interval set but idle, 3: interval set and capture in progress) + ImageStatus uint8 + // Current status of video capturing (0: idle, 1: capture in progress) + VideoStatus uint8 + // Image capture interval + ImageInterval float32 + // Elapsed time since recording started (0: Not supported/available). A GCS should compute recording time and use non-zero values of this field to correct any discrepancy. + RecordingTimeMs uint32 + // Available storage capacity. + AvailableCapacity float32 + // Total number of images captured ('forever', or until reset using MAV_CMD_STORAGE_FORMAT). + ImageCount int32 `mavext:"true"` +} + +// GetID implements the msg.Message interface. +func (*MessageCameraCaptureStatus) GetID() uint32 { + return 262 +} diff --git a/pkg/dialects/all/msg_camera_feedback.go b/pkg/dialects/all/msg_camera_feedback.go new file mode 100644 index 000000000..f0c2409a2 --- /dev/null +++ b/pkg/dialects/all/msg_camera_feedback.go @@ -0,0 +1,40 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// Camera Capture Feedback. +type MessageCameraFeedback struct { + // Image timestamp (since UNIX epoch), as passed in by CAMERA_STATUS message (or autopilot if no CCB). + TimeUsec uint64 + // System ID. + TargetSystem uint8 + // Camera ID. + CamIdx uint8 + // Image index. + ImgIdx uint16 + // Latitude. + Lat int32 + // Longitude. + Lng int32 + // Altitude (MSL). + AltMsl float32 + // Altitude (Relative to HOME location). + AltRel float32 + // Camera Roll angle (earth frame, +-180). + Roll float32 + // Camera Pitch angle (earth frame, +-180). + Pitch float32 + // Camera Yaw (earth frame, 0-360, true). + Yaw float32 + // Focal Length. + FocLen float32 + // Feedback flags. + Flags CAMERA_FEEDBACK_FLAGS `mavenum:"uint8"` + // Completed image captures. + CompletedCaptures uint16 `mavext:"true"` +} + +// GetID implements the msg.Message interface. +func (*MessageCameraFeedback) GetID() uint32 { + return 180 +} diff --git a/pkg/dialects/all/msg_camera_fov_status.go b/pkg/dialects/all/msg_camera_fov_status.go new file mode 100644 index 000000000..09987d4b5 --- /dev/null +++ b/pkg/dialects/all/msg_camera_fov_status.go @@ -0,0 +1,32 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// Information about the field of view of a camera. Can be requested with a MAV_CMD_REQUEST_MESSAGE command. +type MessageCameraFovStatus struct { + // Timestamp (time since system boot). + TimeBootMs uint32 + // Latitude of camera (INT32_MAX if unknown). + LatCamera int32 + // Longitude of camera (INT32_MAX if unknown). + LonCamera int32 + // Altitude (MSL) of camera (INT32_MAX if unknown). + AltCamera int32 + // Latitude of center of image (INT32_MAX if unknown, INT32_MIN if at infinity, not intersecting with horizon). + LatImage int32 + // Longitude of center of image (INT32_MAX if unknown, INT32_MIN if at infinity, not intersecting with horizon). + LonImage int32 + // Altitude (MSL) of center of image (INT32_MAX if unknown, INT32_MIN if at infinity, not intersecting with horizon). + AltImage int32 + // Quaternion of camera orientation (w, x, y, z order, zero-rotation is 1, 0, 0, 0) + Q [4]float32 + // Horizontal field of view (NaN if unknown). + Hfov float32 + // Vertical field of view (NaN if unknown). + Vfov float32 +} + +// GetID implements the msg.Message interface. +func (*MessageCameraFovStatus) GetID() uint32 { + return 271 +} diff --git a/pkg/dialects/all/msg_camera_image_captured.go b/pkg/dialects/all/msg_camera_image_captured.go new file mode 100644 index 000000000..15d68204e --- /dev/null +++ b/pkg/dialects/all/msg_camera_image_captured.go @@ -0,0 +1,40 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// Information about a captured image. This is emitted every time a message is captured. +// MAV_CMD_REQUEST_MESSAGE can be used to (re)request this message for a specific sequence number or range of sequence numbers: +// MAV_CMD_REQUEST_MESSAGE.param2 indicates the sequence number the first image to send, or set to -1 to send the message for all sequence numbers. +// MAV_CMD_REQUEST_MESSAGE.param3 is used to specify a range of messages to send: +// set to 0 (default) to send just the the message for the sequence number in param 2, +// set to -1 to send the message for the sequence number in param 2 and all the following sequence numbers, +// set to the sequence number of the final message in the range. +type MessageCameraImageCaptured struct { + // Timestamp (time since system boot). + TimeBootMs uint32 + // Timestamp (time since UNIX epoch) in UTC. 0 for unknown. + TimeUtc uint64 + // Deprecated/unused. Component IDs are used to differentiate multiple cameras. + CameraId uint8 + // Latitude where image was taken + Lat int32 + // Longitude where capture was taken + Lon int32 + // Altitude (MSL) where image was taken + Alt int32 + // Altitude above ground + RelativeAlt int32 + // Quaternion of camera orientation (w, x, y, z order, zero-rotation is 1, 0, 0, 0) + Q [4]float32 + // Zero based index of this image (i.e. a new image will have index CAMERA_CAPTURE_STATUS.image count -1) + ImageIndex int32 + // Boolean indicating success (1) or failure (0) while capturing this image. + CaptureResult int8 + // URL of image taken. Either local storage or http://foo.jpg if camera provides an HTTP interface. + FileUrl string `mavlen:"205"` +} + +// GetID implements the msg.Message interface. +func (*MessageCameraImageCaptured) GetID() uint32 { + return 263 +} diff --git a/pkg/dialects/all/msg_camera_information.go b/pkg/dialects/all/msg_camera_information.go new file mode 100644 index 000000000..6296beac4 --- /dev/null +++ b/pkg/dialects/all/msg_camera_information.go @@ -0,0 +1,38 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// Information about a camera. Can be requested with a MAV_CMD_REQUEST_MESSAGE command. +type MessageCameraInformation struct { + // Timestamp (time since system boot). + TimeBootMs uint32 + // Name of the camera vendor + VendorName [32]uint8 + // Name of the camera model + ModelName [32]uint8 + // Version of the camera firmware, encoded as: (Dev & 0xff) << 24 | (Patch & 0xff) << 16 | (Minor & 0xff) << 8 | (Major & 0xff) + FirmwareVersion uint32 + // Focal length + FocalLength float32 + // Image sensor size horizontal + SensorSizeH float32 + // Image sensor size vertical + SensorSizeV float32 + // Horizontal image resolution + ResolutionH uint16 + // Vertical image resolution + ResolutionV uint16 + // Reserved for a lens ID + LensId uint8 + // Bitmap of camera capability flags. + Flags CAMERA_CAP_FLAGS `mavenum:"uint32"` + // Camera definition version (iteration) + CamDefinitionVersion uint16 + // Camera definition URI (if any, otherwise only basic functions will be available). HTTP- (http://) and MAVLink FTP- (mavlinkftp://) formatted URIs are allowed (and both must be supported by any GCS that implements the Camera Protocol). The definition file may be xz compressed, which will be indicated by the file extension .xml.xz (a GCS that implements the protocol must support decompressing the file). + CamDefinitionUri string `mavlen:"140"` +} + +// GetID implements the msg.Message interface. +func (*MessageCameraInformation) GetID() uint32 { + return 259 +} diff --git a/pkg/dialects/all/msg_camera_settings.go b/pkg/dialects/all/msg_camera_settings.go new file mode 100644 index 000000000..ae8663d93 --- /dev/null +++ b/pkg/dialects/all/msg_camera_settings.go @@ -0,0 +1,20 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// Settings of a camera. Can be requested with a MAV_CMD_REQUEST_MESSAGE command. +type MessageCameraSettings struct { + // Timestamp (time since system boot). + TimeBootMs uint32 + // Camera mode + ModeId CAMERA_MODE `mavenum:"uint8"` + // Current zoom level (0.0 to 100.0, NaN if not known) + Zoomlevel float32 `mavext:"true" mavname:"zoomLevel"` + // Current focus level (0.0 to 100.0, NaN if not known) + Focuslevel float32 `mavext:"true" mavname:"focusLevel"` +} + +// GetID implements the msg.Message interface. +func (*MessageCameraSettings) GetID() uint32 { + return 260 +} diff --git a/pkg/dialects/all/msg_camera_status.go b/pkg/dialects/all/msg_camera_status.go new file mode 100644 index 000000000..11440e6e9 --- /dev/null +++ b/pkg/dialects/all/msg_camera_status.go @@ -0,0 +1,30 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// Camera Event. +type MessageCameraStatus struct { + // Image timestamp (since UNIX epoch, according to camera clock). + TimeUsec uint64 + // System ID. + TargetSystem uint8 + // Camera ID. + CamIdx uint8 + // Image index. + ImgIdx uint16 + // Event type. + EventId CAMERA_STATUS_TYPES `mavenum:"uint8"` + // Parameter 1 (meaning depends on event_id, see CAMERA_STATUS_TYPES enum). + P1 float32 + // Parameter 2 (meaning depends on event_id, see CAMERA_STATUS_TYPES enum). + P2 float32 + // Parameter 3 (meaning depends on event_id, see CAMERA_STATUS_TYPES enum). + P3 float32 + // Parameter 4 (meaning depends on event_id, see CAMERA_STATUS_TYPES enum). + P4 float32 +} + +// GetID implements the msg.Message interface. +func (*MessageCameraStatus) GetID() uint32 { + return 179 +} diff --git a/pkg/dialects/all/msg_camera_tracking_geo_status.go b/pkg/dialects/all/msg_camera_tracking_geo_status.go new file mode 100644 index 000000000..86438f7af --- /dev/null +++ b/pkg/dialects/all/msg_camera_tracking_geo_status.go @@ -0,0 +1,38 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// Camera tracking status, sent while in active tracking. Use MAV_CMD_SET_MESSAGE_INTERVAL to define message interval. +type MessageCameraTrackingGeoStatus struct { + // Current tracking status + TrackingStatus CAMERA_TRACKING_STATUS_FLAGS `mavenum:"uint8"` + // Latitude of tracked object + Lat int32 + // Longitude of tracked object + Lon int32 + // Altitude of tracked object(AMSL, WGS84) + Alt float32 + // Horizontal accuracy. NAN if unknown + HAcc float32 + // Vertical accuracy. NAN if unknown + VAcc float32 + // North velocity of tracked object. NAN if unknown + VelN float32 + // East velocity of tracked object. NAN if unknown + VelE float32 + // Down velocity of tracked object. NAN if unknown + VelD float32 + // Velocity accuracy. NAN if unknown + VelAcc float32 + // Distance between camera and tracked object. NAN if unknown + Dist float32 + // Heading in radians, in NED. NAN if unknown + Hdg float32 + // Accuracy of heading, in NED. NAN if unknown + HdgAcc float32 +} + +// GetID implements the msg.Message interface. +func (*MessageCameraTrackingGeoStatus) GetID() uint32 { + return 276 +} diff --git a/pkg/dialects/all/msg_camera_tracking_image_status.go b/pkg/dialects/all/msg_camera_tracking_image_status.go new file mode 100644 index 000000000..65f70e030 --- /dev/null +++ b/pkg/dialects/all/msg_camera_tracking_image_status.go @@ -0,0 +1,32 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// Camera tracking status, sent while in active tracking. Use MAV_CMD_SET_MESSAGE_INTERVAL to define message interval. +type MessageCameraTrackingImageStatus struct { + // Current tracking status + TrackingStatus CAMERA_TRACKING_STATUS_FLAGS `mavenum:"uint8"` + // Current tracking mode + TrackingMode CAMERA_TRACKING_MODE `mavenum:"uint8"` + // Defines location of target data + TargetData CAMERA_TRACKING_TARGET_DATA `mavenum:"uint8"` + // Current tracked point x value if CAMERA_TRACKING_MODE_POINT (normalized 0..1, 0 is left, 1 is right), NAN if unknown + PointX float32 + // Current tracked point y value if CAMERA_TRACKING_MODE_POINT (normalized 0..1, 0 is top, 1 is bottom), NAN if unknown + PointY float32 + // Current tracked radius if CAMERA_TRACKING_MODE_POINT (normalized 0..1, 0 is image left, 1 is image right), NAN if unknown + Radius float32 + // Current tracked rectangle top x value if CAMERA_TRACKING_MODE_RECTANGLE (normalized 0..1, 0 is left, 1 is right), NAN if unknown + RecTopX float32 + // Current tracked rectangle top y value if CAMERA_TRACKING_MODE_RECTANGLE (normalized 0..1, 0 is top, 1 is bottom), NAN if unknown + RecTopY float32 + // Current tracked rectangle bottom x value if CAMERA_TRACKING_MODE_RECTANGLE (normalized 0..1, 0 is left, 1 is right), NAN if unknown + RecBottomX float32 + // Current tracked rectangle bottom y value if CAMERA_TRACKING_MODE_RECTANGLE (normalized 0..1, 0 is top, 1 is bottom), NAN if unknown + RecBottomY float32 +} + +// GetID implements the msg.Message interface. +func (*MessageCameraTrackingImageStatus) GetID() uint32 { + return 275 +} diff --git a/pkg/dialects/all/msg_camera_trigger.go b/pkg/dialects/all/msg_camera_trigger.go new file mode 100644 index 000000000..f0594d596 --- /dev/null +++ b/pkg/dialects/all/msg_camera_trigger.go @@ -0,0 +1,16 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// Camera-IMU triggering and synchronisation message. +type MessageCameraTrigger struct { + // Timestamp for image frame (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. + TimeUsec uint64 + // Image frame sequence + Seq uint32 +} + +// GetID implements the msg.Message interface. +func (*MessageCameraTrigger) GetID() uint32 { + return 112 +} diff --git a/pkg/dialects/all/msg_cellular_config.go b/pkg/dialects/all/msg_cellular_config.go new file mode 100644 index 000000000..36f23bf58 --- /dev/null +++ b/pkg/dialects/all/msg_cellular_config.go @@ -0,0 +1,30 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// Configure cellular modems. +// This message is re-emitted as an acknowledgement by the modem. +// The message may also be explicitly requested using MAV_CMD_REQUEST_MESSAGE. +type MessageCellularConfig struct { + // Enable/disable LTE. 0: setting unchanged, 1: disabled, 2: enabled. Current setting when sent back as a response. + EnableLte uint8 + // Enable/disable PIN on the SIM card. 0: setting unchanged, 1: disabled, 2: enabled. Current setting when sent back as a response. + EnablePin uint8 + // PIN sent to the SIM card. Blank when PIN is disabled. Empty when message is sent back as a response. + Pin string `mavlen:"16"` + // New PIN when changing the PIN. Blank to leave it unchanged. Empty when message is sent back as a response. + NewPin string `mavlen:"16"` + // Name of the cellular APN. Blank to leave it unchanged. Current APN when sent back as a response. + Apn string `mavlen:"32"` + // Required PUK code in case the user failed to authenticate 3 times with the PIN. Empty when message is sent back as a response. + Puk string `mavlen:"16"` + // Enable/disable roaming. 0: setting unchanged, 1: disabled, 2: enabled. Current setting when sent back as a response. + Roaming uint8 + // Message acceptance response (sent back to GS). + Response CELLULAR_CONFIG_RESPONSE `mavenum:"uint8"` +} + +// GetID implements the msg.Message interface. +func (*MessageCellularConfig) GetID() uint32 { + return 336 +} diff --git a/pkg/dialects/all/msg_cellular_status.go b/pkg/dialects/all/msg_cellular_status.go new file mode 100644 index 000000000..e2682bd22 --- /dev/null +++ b/pkg/dialects/all/msg_cellular_status.go @@ -0,0 +1,26 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// Report current used cellular network status +type MessageCellularStatus struct { + // Cellular modem status + Status CELLULAR_STATUS_FLAG `mavenum:"uint8"` + // Failure reason when status in in CELLUAR_STATUS_FAILED + FailureReason CELLULAR_NETWORK_FAILED_REASON `mavenum:"uint8"` + // Cellular network radio type: gsm, cdma, lte... + Type CELLULAR_NETWORK_RADIO_TYPE `mavenum:"uint8"` + // Signal quality in percent. If unknown, set to UINT8_MAX + Quality uint8 + // Mobile country code. If unknown, set to UINT16_MAX + Mcc uint16 + // Mobile network code. If unknown, set to UINT16_MAX + Mnc uint16 + // Location area code. If unknown, set to 0 + Lac uint16 +} + +// GetID implements the msg.Message interface. +func (*MessageCellularStatus) GetID() uint32 { + return 334 +} diff --git a/pkg/dialects/all/msg_change_operator_control.go b/pkg/dialects/all/msg_change_operator_control.go new file mode 100644 index 000000000..913a7c6fa --- /dev/null +++ b/pkg/dialects/all/msg_change_operator_control.go @@ -0,0 +1,20 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// Request to control this MAV +type MessageChangeOperatorControl struct { + // System the GCS requests control for + TargetSystem uint8 + // 0: request control of this MAV, 1: Release control of this MAV + ControlRequest uint8 + // 0: key as plaintext, 1-255: future, different hashing/encryption variants. The GCS should in general use the safest mode possible initially and then gradually move down the encryption level if it gets a NACK message indicating an encryption mismatch. + Version uint8 + // Password / Key, depending on version plaintext or encrypted. 25 or less characters, NULL terminated. The characters may involve A-Z, a-z, 0-9, and "!?,.-" + Passkey string `mavlen:"25"` +} + +// GetID implements the msg.Message interface. +func (*MessageChangeOperatorControl) GetID() uint32 { + return 5 +} diff --git a/pkg/dialects/all/msg_change_operator_control_ack.go b/pkg/dialects/all/msg_change_operator_control_ack.go new file mode 100644 index 000000000..09c3e481c --- /dev/null +++ b/pkg/dialects/all/msg_change_operator_control_ack.go @@ -0,0 +1,18 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// Accept / deny control of this MAV +type MessageChangeOperatorControlAck struct { + // ID of the GCS this message + GcsSystemId uint8 + // 0: request control of this MAV, 1: Release control of this MAV + ControlRequest uint8 + // 0: ACK, 1: NACK: Wrong passkey, 2: NACK: Unsupported passkey encryption method, 3: NACK: Already under control + Ack uint8 +} + +// GetID implements the msg.Message interface. +func (*MessageChangeOperatorControlAck) GetID() uint32 { + return 6 +} diff --git a/pkg/dialects/all/msg_collision.go b/pkg/dialects/all/msg_collision.go new file mode 100644 index 000000000..b1d56351d --- /dev/null +++ b/pkg/dialects/all/msg_collision.go @@ -0,0 +1,26 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// Information about a potential collision +type MessageCollision struct { + // Collision data source + Src MAV_COLLISION_SRC `mavenum:"uint8"` + // Unique identifier, domain based on src field + Id uint32 + // Action that is being taken to avoid this collision + Action MAV_COLLISION_ACTION `mavenum:"uint8"` + // How concerned the aircraft is about this collision + ThreatLevel MAV_COLLISION_THREAT_LEVEL `mavenum:"uint8"` + // Estimated time until collision occurs + TimeToMinimumDelta float32 + // Closest vertical distance between vehicle and object + AltitudeMinimumDelta float32 + // Closest horizontal distance between vehicle and object + HorizontalMinimumDelta float32 +} + +// GetID implements the msg.Message interface. +func (*MessageCollision) GetID() uint32 { + return 247 +} diff --git a/pkg/dialects/all/msg_command_ack.go b/pkg/dialects/all/msg_command_ack.go new file mode 100644 index 000000000..9a71fa7aa --- /dev/null +++ b/pkg/dialects/all/msg_command_ack.go @@ -0,0 +1,24 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// Report status of a command. Includes feedback whether the command was executed. The command microservice is documented at https://mavlink.io/en/services/command.html +type MessageCommandAck struct { + // Command ID (of acknowledged command). + Command MAV_CMD `mavenum:"uint16"` + // Result of command. + Result MAV_RESULT `mavenum:"uint8"` + // Also used as result_param1, it can be set with an enum containing the errors reasons of why the command was denied, or the progress percentage when result is MAV_RESULT_IN_PROGRESS (UINT8_MAX if the progress is unknown). + Progress uint8 `mavext:"true"` + // Additional parameter of the result, example: which parameter of MAV_CMD_NAV_WAYPOINT caused it to be denied. + ResultParam2 int32 `mavext:"true"` + // System ID of the target recipient. This is the ID of the system that sent the command for which this COMMAND_ACK is an acknowledgement. + TargetSystem uint8 `mavext:"true"` + // Component ID of the target recipient. This is the ID of the system that sent the command for which this COMMAND_ACK is an acknowledgement. + TargetComponent uint8 `mavext:"true"` +} + +// GetID implements the msg.Message interface. +func (*MessageCommandAck) GetID() uint32 { + return 77 +} diff --git a/pkg/dialects/all/msg_command_cancel.go b/pkg/dialects/all/msg_command_cancel.go new file mode 100644 index 000000000..0df01dc17 --- /dev/null +++ b/pkg/dialects/all/msg_command_cancel.go @@ -0,0 +1,18 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// Cancel a long running command. The target system should respond with a COMMAND_ACK to the original command with result=MAV_RESULT_CANCELLED if the long running process was cancelled. If it has already completed, the cancel action can be ignored. The cancel action can be retried until some sort of acknowledgement to the original command has been received. The command microservice is documented at https://mavlink.io/en/services/command.html +type MessageCommandCancel struct { + // System executing long running command. Should not be broadcast (0). + TargetSystem uint8 + // Component executing long running command. + TargetComponent uint8 + // Command ID (of command to cancel). + Command MAV_CMD `mavenum:"uint16"` +} + +// GetID implements the msg.Message interface. +func (*MessageCommandCancel) GetID() uint32 { + return 80 +} diff --git a/pkg/dialects/all/msg_command_int.go b/pkg/dialects/all/msg_command_int.go new file mode 100644 index 000000000..6c418cfb1 --- /dev/null +++ b/pkg/dialects/all/msg_command_int.go @@ -0,0 +1,38 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// Message encoding a command with parameters as scaled integers. Scaling depends on the actual command value. NaN or INT32_MAX may be used in float/integer params (respectively) to indicate optional/default values (e.g. to use the component's current latitude, yaw rather than a specific value). The command microservice is documented at https://mavlink.io/en/services/command.html +type MessageCommandInt struct { + // System ID + TargetSystem uint8 + // Component ID + TargetComponent uint8 + // The coordinate system of the COMMAND. + Frame MAV_FRAME `mavenum:"uint8"` + // The scheduled action for the mission item. + Command MAV_CMD `mavenum:"uint16"` + // Not used. + Current uint8 + // Not used (set 0). + Autocontinue uint8 + // PARAM1, see MAV_CMD enum + Param1 float32 + // PARAM2, see MAV_CMD enum + Param2 float32 + // PARAM3, see MAV_CMD enum + Param3 float32 + // PARAM4, see MAV_CMD enum + Param4 float32 + // PARAM5 / local: x position in meters * 1e4, global: latitude in degrees * 10^7 + X int32 + // PARAM6 / local: y position in meters * 1e4, global: longitude in degrees * 10^7 + Y int32 + // PARAM7 / z position: global: altitude in meters (relative or absolute, depending on frame). + Z float32 +} + +// GetID implements the msg.Message interface. +func (*MessageCommandInt) GetID() uint32 { + return 75 +} diff --git a/pkg/dialects/all/msg_command_int_stamped.go b/pkg/dialects/all/msg_command_int_stamped.go new file mode 100644 index 000000000..341506a37 --- /dev/null +++ b/pkg/dialects/all/msg_command_int_stamped.go @@ -0,0 +1,42 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// Message encoding a command with parameters as scaled integers and additional metadata. Scaling depends on the actual command value. +type MessageCommandIntStamped struct { + // UTC time, seconds elapsed since 01.01.1970 + UtcTime uint32 + // Microseconds elapsed since vehicle boot + VehicleTimestamp uint64 + // System ID + TargetSystem uint8 + // Component ID + TargetComponent uint8 + // The coordinate system of the COMMAND, as defined by MAV_FRAME enum + Frame MAV_FRAME `mavenum:"uint8"` + // The scheduled action for the mission item, as defined by MAV_CMD enum + Command MAV_CMD `mavenum:"uint16"` + // false:0, true:1 + Current uint8 + // autocontinue to next wp + Autocontinue uint8 + // PARAM1, see MAV_CMD enum + Param1 float32 + // PARAM2, see MAV_CMD enum + Param2 float32 + // PARAM3, see MAV_CMD enum + Param3 float32 + // PARAM4, see MAV_CMD enum + Param4 float32 + // PARAM5 / local: x position in meters * 1e4, global: latitude in degrees * 10^7 + X int32 + // PARAM6 / local: y position in meters * 1e4, global: longitude in degrees * 10^7 + Y int32 + // PARAM7 / z position: global: altitude in meters (MSL, WGS84, AGL or relative to home - depending on frame). + Z float32 +} + +// GetID implements the msg.Message interface. +func (*MessageCommandIntStamped) GetID() uint32 { + return 223 +} diff --git a/pkg/dialects/all/msg_command_long.go b/pkg/dialects/all/msg_command_long.go new file mode 100644 index 000000000..de63328b5 --- /dev/null +++ b/pkg/dialects/all/msg_command_long.go @@ -0,0 +1,34 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// Send a command with up to seven parameters to the MAV. The command microservice is documented at https://mavlink.io/en/services/command.html +type MessageCommandLong struct { + // System which should execute the command + TargetSystem uint8 + // Component which should execute the command, 0 for all components + TargetComponent uint8 + // Command ID (of command to send). + Command MAV_CMD `mavenum:"uint16"` + // 0: First transmission of this command. 1-255: Confirmation transmissions (e.g. for kill command) + Confirmation uint8 + // Parameter 1 (for the specific command). + Param1 float32 + // Parameter 2 (for the specific command). + Param2 float32 + // Parameter 3 (for the specific command). + Param3 float32 + // Parameter 4 (for the specific command). + Param4 float32 + // Parameter 5 (for the specific command). + Param5 float32 + // Parameter 6 (for the specific command). + Param6 float32 + // Parameter 7 (for the specific command). + Param7 float32 +} + +// GetID implements the msg.Message interface. +func (*MessageCommandLong) GetID() uint32 { + return 76 +} diff --git a/pkg/dialects/all/msg_command_long_stamped.go b/pkg/dialects/all/msg_command_long_stamped.go new file mode 100644 index 000000000..335678d34 --- /dev/null +++ b/pkg/dialects/all/msg_command_long_stamped.go @@ -0,0 +1,38 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// Send a command with up to seven parameters to the MAV and additional metadata +type MessageCommandLongStamped struct { + // UTC time, seconds elapsed since 01.01.1970 + UtcTime uint32 + // Microseconds elapsed since vehicle boot + VehicleTimestamp uint64 + // System which should execute the command + TargetSystem uint8 + // Component which should execute the command, 0 for all components + TargetComponent uint8 + // Command ID, as defined by MAV_CMD enum. + Command MAV_CMD `mavenum:"uint16"` + // 0: First transmission of this command. 1-255: Confirmation transmissions (e.g. for kill command) + Confirmation uint8 + // Parameter 1, as defined by MAV_CMD enum. + Param1 float32 + // Parameter 2, as defined by MAV_CMD enum. + Param2 float32 + // Parameter 3, as defined by MAV_CMD enum. + Param3 float32 + // Parameter 4, as defined by MAV_CMD enum. + Param4 float32 + // Parameter 5, as defined by MAV_CMD enum. + Param5 float32 + // Parameter 6, as defined by MAV_CMD enum. + Param6 float32 + // Parameter 7, as defined by MAV_CMD enum. + Param7 float32 +} + +// GetID implements the msg.Message interface. +func (*MessageCommandLongStamped) GetID() uint32 { + return 224 +} diff --git a/pkg/dialects/all/msg_compassmot_status.go b/pkg/dialects/all/msg_compassmot_status.go new file mode 100644 index 000000000..ff2809ff3 --- /dev/null +++ b/pkg/dialects/all/msg_compassmot_status.go @@ -0,0 +1,24 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// Status of compassmot calibration. +type MessageCompassmotStatus struct { + // Throttle. + Throttle uint16 + // Current. + Current float32 + // Interference. + Interference uint16 + // Motor Compensation X. + Compensationx float32 `mavname:"CompensationX"` + // Motor Compensation Y. + Compensationy float32 `mavname:"CompensationY"` + // Motor Compensation Z. + Compensationz float32 `mavname:"CompensationZ"` +} + +// GetID implements the msg.Message interface. +func (*MessageCompassmotStatus) GetID() uint32 { + return 177 +} diff --git a/pkg/dialects/all/msg_component_information.go b/pkg/dialects/all/msg_component_information.go new file mode 100644 index 000000000..9e7ac4461 --- /dev/null +++ b/pkg/dialects/all/msg_component_information.go @@ -0,0 +1,22 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// Information about a component. For camera components instead use CAMERA_INFORMATION, and for autopilots additionally use AUTOPILOT_VERSION. Components including GCSes should consider supporting requests of this message via MAV_CMD_REQUEST_MESSAGE. +type MessageComponentInformation struct { + // Timestamp (time since system boot). + TimeBootMs uint32 + // CRC32 of the TYPE_GENERAL file (can be used by a GCS for file caching). The general metadata file contains URLs to other files of different type according to COMP_METADATA_TYPE. + GeneralMetadataFileCrc uint32 + // Component definition URI for TYPE_GENERAL. This must be a MAVLink FTP URI and the file might be compressed with xz. + GeneralMetadataUri string `mavlen:"100"` + // CRC32 of the TYPE_PERIPHERALS file (can be used by a GCS for file caching). + PeripheralsMetadataFileCrc uint32 + // (Optional) Component definition URI for TYPE_PERIPHERALS. This must be a MAVLink FTP URI and the file might be compressed with xz. Peripherals are listed as a separate URL and not included in the general metadata file because it will likely be generated at runtime while the general (and other referenced files) might be generated at compile time. + PeripheralsMetadataUri string `mavlen:"100"` +} + +// GetID implements the msg.Message interface. +func (*MessageComponentInformation) GetID() uint32 { + return 395 +} diff --git a/pkg/dialects/all/msg_component_information_basic.go b/pkg/dialects/all/msg_component_information_basic.go new file mode 100644 index 000000000..1ff60a93a --- /dev/null +++ b/pkg/dialects/all/msg_component_information_basic.go @@ -0,0 +1,24 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// Basic component information data. +type MessageComponentInformationBasic struct { + // Timestamp (time since system boot). + TimeBootMs uint32 + // Name of the component vendor + VendorName [32]uint8 + // Name of the component model + ModelName [32]uint8 + // Sofware version. The version format can be custom, recommended is SEMVER 'major.minor.patch'. + SoftwareVersion string `mavlen:"24"` + // Hardware version. The version format can be custom, recommended is SEMVER 'major.minor.patch'. + HardwareVersion string `mavlen:"24"` + // Component capability flags + Capabilities MAV_PROTOCOL_CAPABILITY `mavenum:"uint64"` +} + +// GetID implements the msg.Message interface. +func (*MessageComponentInformationBasic) GetID() uint32 { + return 396 +} diff --git a/pkg/dialects/all/msg_component_prearm_status.go b/pkg/dialects/all/msg_component_prearm_status.go new file mode 100644 index 000000000..c7b63efbe --- /dev/null +++ b/pkg/dialects/all/msg_component_prearm_status.go @@ -0,0 +1,20 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// Message reporting the status of the prearm checks. The flags are component specific. +type MessageComponentPrearmStatus struct { + // System ID + TargetSystem uint8 + // Component ID + TargetComponent uint8 + // Currently enabled prearm checks. 0 means no checks are being performed, UINT32_MAX means not known. + EnabledFlags uint32 + // Currently not passed prearm checks. 0 means all checks have been passed. + FailFlags uint32 +} + +// GetID implements the msg.Message interface. +func (*MessageComponentPrearmStatus) GetID() uint32 { + return 60025 +} diff --git a/pkg/dialects/all/msg_control_system_state.go b/pkg/dialects/all/msg_control_system_state.go new file mode 100644 index 000000000..e5d019791 --- /dev/null +++ b/pkg/dialects/all/msg_control_system_state.go @@ -0,0 +1,46 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// The smoothed, monotonic system state used to feed the control loops of the system. +type MessageControlSystemState struct { + // Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. + TimeUsec uint64 + // X acceleration in body frame + XAcc float32 + // Y acceleration in body frame + YAcc float32 + // Z acceleration in body frame + ZAcc float32 + // X velocity in body frame + XVel float32 + // Y velocity in body frame + YVel float32 + // Z velocity in body frame + ZVel float32 + // X position in local frame + XPos float32 + // Y position in local frame + YPos float32 + // Z position in local frame + ZPos float32 + // Airspeed, set to -1 if unknown + Airspeed float32 + // Variance of body velocity estimate + VelVariance [3]float32 + // Variance in local position + PosVariance [3]float32 + // The attitude, represented as Quaternion + Q [4]float32 + // Angular rate in roll axis + RollRate float32 + // Angular rate in pitch axis + PitchRate float32 + // Angular rate in yaw axis + YawRate float32 +} + +// GetID implements the msg.Message interface. +func (*MessageControlSystemState) GetID() uint32 { + return 146 +} diff --git a/pkg/dialects/all/msg_current_event_sequence.go b/pkg/dialects/all/msg_current_event_sequence.go new file mode 100644 index 000000000..f925a2bc5 --- /dev/null +++ b/pkg/dialects/all/msg_current_event_sequence.go @@ -0,0 +1,16 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// Regular broadcast for the current latest event sequence number for a component. This is used to check for dropped events. +type MessageCurrentEventSequence struct { + // Sequence number. + Sequence uint16 + // Flag bitset. + Flags MAV_EVENT_CURRENT_SEQUENCE_FLAGS `mavenum:"uint8"` +} + +// GetID implements the msg.Message interface. +func (*MessageCurrentEventSequence) GetID() uint32 { + return 411 +} diff --git a/pkg/dialects/all/msg_data16.go b/pkg/dialects/all/msg_data16.go new file mode 100644 index 000000000..dbb100717 --- /dev/null +++ b/pkg/dialects/all/msg_data16.go @@ -0,0 +1,18 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// Data packet, size 16. +type MessageData16 struct { + // Data type. + Type uint8 + // Data length. + Len uint8 + // Raw data. + Data [16]uint8 +} + +// GetID implements the msg.Message interface. +func (*MessageData16) GetID() uint32 { + return 169 +} diff --git a/pkg/dialects/all/msg_data32.go b/pkg/dialects/all/msg_data32.go new file mode 100644 index 000000000..401f9e9c0 --- /dev/null +++ b/pkg/dialects/all/msg_data32.go @@ -0,0 +1,18 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// Data packet, size 32. +type MessageData32 struct { + // Data type. + Type uint8 + // Data length. + Len uint8 + // Raw data. + Data [32]uint8 +} + +// GetID implements the msg.Message interface. +func (*MessageData32) GetID() uint32 { + return 170 +} diff --git a/pkg/dialects/all/msg_data64.go b/pkg/dialects/all/msg_data64.go new file mode 100644 index 000000000..1e7b70d67 --- /dev/null +++ b/pkg/dialects/all/msg_data64.go @@ -0,0 +1,18 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// Data packet, size 64. +type MessageData64 struct { + // Data type. + Type uint8 + // Data length. + Len uint8 + // Raw data. + Data [64]uint8 +} + +// GetID implements the msg.Message interface. +func (*MessageData64) GetID() uint32 { + return 171 +} diff --git a/pkg/dialects/all/msg_data96.go b/pkg/dialects/all/msg_data96.go new file mode 100644 index 000000000..f7a6ad6bb --- /dev/null +++ b/pkg/dialects/all/msg_data96.go @@ -0,0 +1,18 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// Data packet, size 96. +type MessageData96 struct { + // Data type. + Type uint8 + // Data length. + Len uint8 + // Raw data. + Data [96]uint8 +} + +// GetID implements the msg.Message interface. +func (*MessageData96) GetID() uint32 { + return 172 +} diff --git a/pkg/dialects/all/msg_data_stream.go b/pkg/dialects/all/msg_data_stream.go new file mode 100644 index 000000000..27198cdd6 --- /dev/null +++ b/pkg/dialects/all/msg_data_stream.go @@ -0,0 +1,18 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// Data stream status information. +type MessageDataStream struct { + // The ID of the requested data stream + StreamId uint8 + // The message rate + MessageRate uint16 + // 1 stream is enabled, 0 stream is stopped. + OnOff uint8 +} + +// GetID implements the msg.Message interface. +func (*MessageDataStream) GetID() uint32 { + return 67 +} diff --git a/pkg/dialects/all/msg_data_transmission_handshake.go b/pkg/dialects/all/msg_data_transmission_handshake.go new file mode 100644 index 000000000..4124ae86d --- /dev/null +++ b/pkg/dialects/all/msg_data_transmission_handshake.go @@ -0,0 +1,26 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// Handshake message to initiate, control and stop image streaming when using the Image Transmission Protocol: https://mavlink.io/en/services/image_transmission.html. +type MessageDataTransmissionHandshake struct { + // Type of requested/acknowledged data. + Type MAVLINK_DATA_STREAM_TYPE `mavenum:"uint8"` + // total data size (set on ACK only). + Size uint32 + // Width of a matrix or image. + Width uint16 + // Height of a matrix or image. + Height uint16 + // Number of packets being sent (set on ACK only). + Packets uint16 + // Payload size per packet (normally 253 byte, see DATA field size in message ENCAPSULATED_DATA) (set on ACK only). + Payload uint8 + // JPEG quality. Values: [1-100]. + JpgQuality uint8 +} + +// GetID implements the msg.Message interface. +func (*MessageDataTransmissionHandshake) GetID() uint32 { + return 130 +} diff --git a/pkg/dialects/all/msg_debug.go b/pkg/dialects/all/msg_debug.go new file mode 100644 index 000000000..16609efc6 --- /dev/null +++ b/pkg/dialects/all/msg_debug.go @@ -0,0 +1,18 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// Send a debug value. The index is used to discriminate between values. These values show up in the plot of QGroundControl as DEBUG N. +type MessageDebug struct { + // Timestamp (time since system boot). + TimeBootMs uint32 + // index of debug variable + Ind uint8 + // DEBUG value + Value float32 +} + +// GetID implements the msg.Message interface. +func (*MessageDebug) GetID() uint32 { + return 254 +} diff --git a/pkg/dialects/all/msg_debug_float_array.go b/pkg/dialects/all/msg_debug_float_array.go new file mode 100644 index 000000000..a25ab3154 --- /dev/null +++ b/pkg/dialects/all/msg_debug_float_array.go @@ -0,0 +1,20 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// Large debug/prototyping array. The message uses the maximum available payload for data. The array_id and name fields are used to discriminate between messages in code and in user interfaces (respectively). Do not use in production code. +type MessageDebugFloatArray struct { + // Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. + TimeUsec uint64 + // Name, for human-friendly display in a Ground Control Station + Name string `mavlen:"10"` + // Unique ID used to discriminate between arrays + ArrayId uint16 + // data + Data [58]float32 `mavext:"true"` +} + +// GetID implements the msg.Message interface. +func (*MessageDebugFloatArray) GetID() uint32 { + return 350 +} diff --git a/pkg/dialects/all/msg_debug_vect.go b/pkg/dialects/all/msg_debug_vect.go new file mode 100644 index 000000000..588574489 --- /dev/null +++ b/pkg/dialects/all/msg_debug_vect.go @@ -0,0 +1,22 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// To debug something using a named 3D vector. +type MessageDebugVect struct { + // Name + Name string `mavlen:"10"` + // Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. + TimeUsec uint64 + // x + X float32 + // y + Y float32 + // z + Z float32 +} + +// GetID implements the msg.Message interface. +func (*MessageDebugVect) GetID() uint32 { + return 250 +} diff --git a/pkg/dialects/all/msg_deepstall.go b/pkg/dialects/all/msg_deepstall.go new file mode 100644 index 000000000..3b0aeda37 --- /dev/null +++ b/pkg/dialects/all/msg_deepstall.go @@ -0,0 +1,32 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// Deepstall path planning. +type MessageDeepstall struct { + // Landing latitude. + LandingLat int32 + // Landing longitude. + LandingLon int32 + // Final heading start point, latitude. + PathLat int32 + // Final heading start point, longitude. + PathLon int32 + // Arc entry point, latitude. + ArcEntryLat int32 + // Arc entry point, longitude. + ArcEntryLon int32 + // Altitude. + Altitude float32 + // Distance the aircraft expects to travel during the deepstall. + ExpectedTravelDistance float32 + // Deepstall cross track error (only valid when in DEEPSTALL_STAGE_LAND). + CrossTrackError float32 + // Deepstall stage. + Stage DEEPSTALL_STAGE `mavenum:"uint8"` +} + +// GetID implements the msg.Message interface. +func (*MessageDeepstall) GetID() uint32 { + return 195 +} diff --git a/pkg/dialects/all/msg_device_op_read.go b/pkg/dialects/all/msg_device_op_read.go new file mode 100644 index 000000000..b166dccb7 --- /dev/null +++ b/pkg/dialects/all/msg_device_op_read.go @@ -0,0 +1,32 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// Read registers for a device. +type MessageDeviceOpRead struct { + // System ID. + TargetSystem uint8 + // Component ID. + TargetComponent uint8 + // Request ID - copied to reply. + RequestId uint32 + // The bus type. + Bustype DEVICE_OP_BUSTYPE `mavenum:"uint8"` + // Bus number. + Bus uint8 + // Bus address. + Address uint8 + // Name of device on bus (for SPI). + Busname string `mavlen:"40"` + // First register to read. + Regstart uint8 + // Count of registers to read. + Count uint8 + // Bank number. + Bank uint8 `mavext:"true"` +} + +// GetID implements the msg.Message interface. +func (*MessageDeviceOpRead) GetID() uint32 { + return 11000 +} diff --git a/pkg/dialects/all/msg_device_op_read_reply.go b/pkg/dialects/all/msg_device_op_read_reply.go new file mode 100644 index 000000000..b83b18f29 --- /dev/null +++ b/pkg/dialects/all/msg_device_op_read_reply.go @@ -0,0 +1,24 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// Read registers reply. +type MessageDeviceOpReadReply struct { + // Request ID - copied from request. + RequestId uint32 + // 0 for success, anything else is failure code. + Result uint8 + // Starting register. + Regstart uint8 + // Count of bytes read. + Count uint8 + // Reply data. + Data [128]uint8 + // Bank number. + Bank uint8 `mavext:"true"` +} + +// GetID implements the msg.Message interface. +func (*MessageDeviceOpReadReply) GetID() uint32 { + return 11001 +} diff --git a/pkg/dialects/all/msg_device_op_write.go b/pkg/dialects/all/msg_device_op_write.go new file mode 100644 index 000000000..cea0b255c --- /dev/null +++ b/pkg/dialects/all/msg_device_op_write.go @@ -0,0 +1,34 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// Write registers for a device. +type MessageDeviceOpWrite struct { + // System ID. + TargetSystem uint8 + // Component ID. + TargetComponent uint8 + // Request ID - copied to reply. + RequestId uint32 + // The bus type. + Bustype DEVICE_OP_BUSTYPE `mavenum:"uint8"` + // Bus number. + Bus uint8 + // Bus address. + Address uint8 + // Name of device on bus (for SPI). + Busname string `mavlen:"40"` + // First register to write. + Regstart uint8 + // Count of registers to write. + Count uint8 + // Write data. + Data [128]uint8 + // Bank number. + Bank uint8 `mavext:"true"` +} + +// GetID implements the msg.Message interface. +func (*MessageDeviceOpWrite) GetID() uint32 { + return 11002 +} diff --git a/pkg/dialects/all/msg_device_op_write_reply.go b/pkg/dialects/all/msg_device_op_write_reply.go new file mode 100644 index 000000000..3850846dd --- /dev/null +++ b/pkg/dialects/all/msg_device_op_write_reply.go @@ -0,0 +1,16 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// Write registers reply. +type MessageDeviceOpWriteReply struct { + // Request ID - copied from request. + RequestId uint32 + // 0 for success, anything else is failure code. + Result uint8 +} + +// GetID implements the msg.Message interface. +func (*MessageDeviceOpWriteReply) GetID() uint32 { + return 11003 +} diff --git a/pkg/dialects/all/msg_digicam_configure.go b/pkg/dialects/all/msg_digicam_configure.go new file mode 100644 index 000000000..72aade936 --- /dev/null +++ b/pkg/dialects/all/msg_digicam_configure.go @@ -0,0 +1,34 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// Configure on-board Camera Control System. +type MessageDigicamConfigure struct { + // System ID. + TargetSystem uint8 + // Component ID. + TargetComponent uint8 + // Mode enumeration from 1 to N //P, TV, AV, M, etc. (0 means ignore). + Mode uint8 + // Divisor number //e.g. 1000 means 1/1000 (0 means ignore). + ShutterSpeed uint16 + // F stop number x 10 //e.g. 28 means 2.8 (0 means ignore). + Aperture uint8 + // ISO enumeration from 1 to N //e.g. 80, 100, 200, Etc (0 means ignore). + Iso uint8 + // Exposure type enumeration from 1 to N (0 means ignore). + ExposureType uint8 + // Command Identity (incremental loop: 0 to 255). //A command sent multiple times will be executed or pooled just once. + CommandId uint8 + // Main engine cut-off time before camera trigger (0 means no cut-off). + EngineCutOff uint8 + // Extra parameters enumeration (0 means ignore). + ExtraParam uint8 + // Correspondent value to given extra_param. + ExtraValue float32 +} + +// GetID implements the msg.Message interface. +func (*MessageDigicamConfigure) GetID() uint32 { + return 154 +} diff --git a/pkg/dialects/all/msg_digicam_control.go b/pkg/dialects/all/msg_digicam_control.go new file mode 100644 index 000000000..cef866aab --- /dev/null +++ b/pkg/dialects/all/msg_digicam_control.go @@ -0,0 +1,32 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// Control on-board Camera Control System to take shots. +type MessageDigicamControl struct { + // System ID. + TargetSystem uint8 + // Component ID. + TargetComponent uint8 + // 0: stop, 1: start or keep it up //Session control e.g. show/hide lens. + Session uint8 + // 1 to N //Zoom's absolute position (0 means ignore). + ZoomPos uint8 + // -100 to 100 //Zooming step value to offset zoom from the current position. + ZoomStep int8 + // 0: unlock focus or keep unlocked, 1: lock focus or keep locked, 3: re-lock focus. + FocusLock uint8 + // 0: ignore, 1: shot or start filming. + Shot uint8 + // Command Identity (incremental loop: 0 to 255)//A command sent multiple times will be executed or pooled just once. + CommandId uint8 + // Extra parameters enumeration (0 means ignore). + ExtraParam uint8 + // Correspondent value to given extra_param. + ExtraValue float32 +} + +// GetID implements the msg.Message interface. +func (*MessageDigicamControl) GetID() uint32 { + return 155 +} diff --git a/pkg/dialects/all/msg_distance_sensor.go b/pkg/dialects/all/msg_distance_sensor.go new file mode 100644 index 000000000..986276e19 --- /dev/null +++ b/pkg/dialects/all/msg_distance_sensor.go @@ -0,0 +1,36 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// Distance sensor information for an onboard rangefinder. +type MessageDistanceSensor struct { + // Timestamp (time since system boot). + TimeBootMs uint32 + // Minimum distance the sensor can measure + MinDistance uint16 + // Maximum distance the sensor can measure + MaxDistance uint16 + // Current distance reading + CurrentDistance uint16 + // Type of distance sensor. + Type MAV_DISTANCE_SENSOR `mavenum:"uint8"` + // Onboard ID of the sensor + Id uint8 + // Direction the sensor faces. downward-facing: ROTATION_PITCH_270, upward-facing: ROTATION_PITCH_90, backward-facing: ROTATION_PITCH_180, forward-facing: ROTATION_NONE, left-facing: ROTATION_YAW_90, right-facing: ROTATION_YAW_270 + Orientation MAV_SENSOR_ORIENTATION `mavenum:"uint8"` + // Measurement variance. Max standard deviation is 6cm. UINT8_MAX if unknown. + Covariance uint8 + // Horizontal Field of View (angle) where the distance measurement is valid and the field of view is known. Otherwise this is set to 0. + HorizontalFov float32 `mavext:"true"` + // Vertical Field of View (angle) where the distance measurement is valid and the field of view is known. Otherwise this is set to 0. + VerticalFov float32 `mavext:"true"` + // Quaternion of the sensor orientation in vehicle body frame (w, x, y, z order, zero-rotation is 1, 0, 0, 0). Zero-rotation is along the vehicle body x-axis. This field is required if the orientation is set to MAV_SENSOR_ROTATION_CUSTOM. Set it to 0 if invalid." + Quaternion [4]float32 `mavext:"true"` + // Signal quality of the sensor. Specific to each sensor type, representing the relation of the signal strength with the target reflectivity, distance, size or aspect, but normalised as a percentage. 0 = unknown/unset signal quality, 1 = invalid signal, 100 = perfect signal. + SignalQuality uint8 `mavext:"true"` +} + +// GetID implements the msg.Message interface. +func (*MessageDistanceSensor) GetID() uint32 { + return 132 +} diff --git a/pkg/dialects/all/msg_efi_status.go b/pkg/dialects/all/msg_efi_status.go new file mode 100644 index 000000000..7859d6078 --- /dev/null +++ b/pkg/dialects/all/msg_efi_status.go @@ -0,0 +1,46 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// EFI status output +type MessageEfiStatus struct { + // EFI health status + Health uint8 + // ECU index + EcuIndex float32 + // RPM + Rpm float32 + // Fuel consumed + FuelConsumed float32 + // Fuel flow rate + FuelFlow float32 + // Engine load + EngineLoad float32 + // Throttle position + ThrottlePosition float32 + // Spark dwell time + SparkDwellTime float32 + // Barometric pressure + BarometricPressure float32 + // Intake manifold pressure( + IntakeManifoldPressure float32 + // Intake manifold temperature + IntakeManifoldTemperature float32 + // Cylinder head temperature + CylinderHeadTemperature float32 + // Ignition timing (Crank angle degrees) + IgnitionTiming float32 + // Injection time + InjectionTime float32 + // Exhaust gas temperature + ExhaustGasTemperature float32 + // Output throttle + ThrottleOut float32 + // Pressure/temperature compensation + PtCompensation float32 +} + +// GetID implements the msg.Message interface. +func (*MessageEfiStatus) GetID() uint32 { + return 225 +} diff --git a/pkg/dialects/all/msg_ekf_ext.go b/pkg/dialects/all/msg_ekf_ext.go new file mode 100644 index 000000000..acd848bfd --- /dev/null +++ b/pkg/dialects/all/msg_ekf_ext.go @@ -0,0 +1,26 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// Extended EKF state estimates for ASLUAVs +type MessageEkfExt struct { + // Time since system start + Timestamp uint64 + // Magnitude of wind velocity (in lateral inertial plane) + Windspeed float32 `mavname:"Windspeed"` + // Wind heading angle from North + Winddir float32 `mavname:"WindDir"` + // Z (Down) component of inertial wind velocity + Windz float32 `mavname:"WindZ"` + // Magnitude of air velocity + Airspeed float32 `mavname:"Airspeed"` + // Sideslip angle + Beta float32 + // Angle of attack + Alpha float32 +} + +// GetID implements the msg.Message interface. +func (*MessageEkfExt) GetID() uint32 { + return 8007 +} diff --git a/pkg/dialects/all/msg_ekf_status_report.go b/pkg/dialects/all/msg_ekf_status_report.go new file mode 100644 index 000000000..1e575b0ba --- /dev/null +++ b/pkg/dialects/all/msg_ekf_status_report.go @@ -0,0 +1,26 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// EKF Status message including flags and variances. +type MessageEkfStatusReport struct { + // Flags. + Flags EKF_STATUS_FLAGS `mavenum:"uint16"` + // Velocity variance. + VelocityVariance float32 + // Horizontal Position variance. + PosHorizVariance float32 + // Vertical Position variance. + PosVertVariance float32 + // Compass variance. + CompassVariance float32 + // Terrain Altitude variance. + TerrainAltVariance float32 + // Airspeed variance. + AirspeedVariance float32 `mavext:"true"` +} + +// GetID implements the msg.Message interface. +func (*MessageEkfStatusReport) GetID() uint32 { + return 193 +} diff --git a/pkg/dialects/all/msg_encapsulated_data.go b/pkg/dialects/all/msg_encapsulated_data.go new file mode 100644 index 000000000..50fb63526 --- /dev/null +++ b/pkg/dialects/all/msg_encapsulated_data.go @@ -0,0 +1,16 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// Data packet for images sent using the Image Transmission Protocol: https://mavlink.io/en/services/image_transmission.html. +type MessageEncapsulatedData struct { + // sequence number (starting with 0 on every transmission) + Seqnr uint16 + // image data bytes + Data [253]uint8 +} + +// GetID implements the msg.Message interface. +func (*MessageEncapsulatedData) GetID() uint32 { + return 131 +} diff --git a/pkg/dialects/all/msg_esc_info.go b/pkg/dialects/all/msg_esc_info.go new file mode 100644 index 000000000..30accd4dd --- /dev/null +++ b/pkg/dialects/all/msg_esc_info.go @@ -0,0 +1,30 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// ESC information for lower rate streaming. Recommended streaming rate 1Hz. See ESC_STATUS for higher-rate ESC data. +type MessageEscInfo struct { + // Index of the first ESC in this message. minValue = 0, maxValue = 60, increment = 4. + Index uint8 + // Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude the number. + TimeUsec uint64 + // Counter of data packets received. + Counter uint16 + // Total number of ESCs in all messages of this type. Message fields with an index higher than this should be ignored because they contain invalid data. + Count uint8 + // Connection type protocol for all ESC. + ConnectionType ESC_CONNECTION_TYPE `mavenum:"uint8"` + // Information regarding online/offline status of each ESC. + Info uint8 + // Bitmap of ESC failure flags. + FailureFlags [4]ESC_FAILURE_FLAGS `mavenum:"uint16"` + // Number of reported errors by each ESC since boot. + ErrorCount [4]uint32 + // Temperature of each ESC. INT16_MAX: if data not supplied by ESC. + Temperature [4]int16 +} + +// GetID implements the msg.Message interface. +func (*MessageEscInfo) GetID() uint32 { + return 290 +} diff --git a/pkg/dialects/all/msg_esc_status.go b/pkg/dialects/all/msg_esc_status.go new file mode 100644 index 000000000..c781b6a06 --- /dev/null +++ b/pkg/dialects/all/msg_esc_status.go @@ -0,0 +1,22 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// ESC information for higher rate streaming. Recommended streaming rate is ~10 Hz. Information that changes more slowly is sent in ESC_INFO. It should typically only be streamed on high-bandwidth links (i.e. to a companion computer). +type MessageEscStatus struct { + // Index of the first ESC in this message. minValue = 0, maxValue = 60, increment = 4. + Index uint8 + // Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude the number. + TimeUsec uint64 + // Reported motor RPM from each ESC (negative for reverse rotation). + Rpm [4]int32 + // Voltage measured from each ESC. + Voltage [4]float32 + // Current measured from each ESC. + Current [4]float32 +} + +// GetID implements the msg.Message interface. +func (*MessageEscStatus) GetID() uint32 { + return 291 +} diff --git a/pkg/dialects/all/msg_esc_telemetry_1_to_4.go b/pkg/dialects/all/msg_esc_telemetry_1_to_4.go new file mode 100644 index 000000000..a1f977925 --- /dev/null +++ b/pkg/dialects/all/msg_esc_telemetry_1_to_4.go @@ -0,0 +1,24 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// ESC Telemetry Data for ESCs 1 to 4, matching data sent by BLHeli ESCs. +type MessageEscTelemetry_1To_4 struct { + // Temperature. + Temperature [4]uint8 + // Voltage. + Voltage [4]uint16 + // Current. + Current [4]uint16 + // Total current. + Totalcurrent [4]uint16 + // RPM (eRPM). + Rpm [4]uint16 + // count of telemetry packets received (wraps at 65535). + Count [4]uint16 +} + +// GetID implements the msg.Message interface. +func (*MessageEscTelemetry_1To_4) GetID() uint32 { + return 11030 +} diff --git a/pkg/dialects/all/msg_esc_telemetry_5_to_8.go b/pkg/dialects/all/msg_esc_telemetry_5_to_8.go new file mode 100644 index 000000000..24a88546f --- /dev/null +++ b/pkg/dialects/all/msg_esc_telemetry_5_to_8.go @@ -0,0 +1,24 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// ESC Telemetry Data for ESCs 5 to 8, matching data sent by BLHeli ESCs. +type MessageEscTelemetry_5To_8 struct { + // Temperature. + Temperature [4]uint8 + // Voltage. + Voltage [4]uint16 + // Current. + Current [4]uint16 + // Total current. + Totalcurrent [4]uint16 + // RPM (eRPM). + Rpm [4]uint16 + // count of telemetry packets received (wraps at 65535). + Count [4]uint16 +} + +// GetID implements the msg.Message interface. +func (*MessageEscTelemetry_5To_8) GetID() uint32 { + return 11031 +} diff --git a/pkg/dialects/all/msg_esc_telemetry_9_to_12.go b/pkg/dialects/all/msg_esc_telemetry_9_to_12.go new file mode 100644 index 000000000..bd40256af --- /dev/null +++ b/pkg/dialects/all/msg_esc_telemetry_9_to_12.go @@ -0,0 +1,24 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// ESC Telemetry Data for ESCs 9 to 12, matching data sent by BLHeli ESCs. +type MessageEscTelemetry_9To_12 struct { + // Temperature. + Temperature [4]uint8 + // Voltage. + Voltage [4]uint16 + // Current. + Current [4]uint16 + // Total current. + Totalcurrent [4]uint16 + // RPM (eRPM). + Rpm [4]uint16 + // count of telemetry packets received (wraps at 65535). + Count [4]uint16 +} + +// GetID implements the msg.Message interface. +func (*MessageEscTelemetry_9To_12) GetID() uint32 { + return 11032 +} diff --git a/pkg/dialects/all/msg_estimator_status.go b/pkg/dialects/all/msg_estimator_status.go new file mode 100644 index 000000000..07d1d4900 --- /dev/null +++ b/pkg/dialects/all/msg_estimator_status.go @@ -0,0 +1,32 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// Estimator status message including flags, innovation test ratios and estimated accuracies. The flags message is an integer bitmask containing information on which EKF outputs are valid. See the ESTIMATOR_STATUS_FLAGS enum definition for further information. The innovation test ratios show the magnitude of the sensor innovation divided by the innovation check threshold. Under normal operation the innovation test ratios should be below 0.5 with occasional values up to 1.0. Values greater than 1.0 should be rare under normal operation and indicate that a measurement has been rejected by the filter. The user should be notified if an innovation test ratio greater than 1.0 is recorded. Notifications for values in the range between 0.5 and 1.0 should be optional and controllable by the user. +type MessageEstimatorStatus struct { + // Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. + TimeUsec uint64 + // Bitmap indicating which EKF outputs are valid. + Flags ESTIMATOR_STATUS_FLAGS `mavenum:"uint16"` + // Velocity innovation test ratio + VelRatio float32 + // Horizontal position innovation test ratio + PosHorizRatio float32 + // Vertical position innovation test ratio + PosVertRatio float32 + // Magnetometer innovation test ratio + MagRatio float32 + // Height above terrain innovation test ratio + HaglRatio float32 + // True airspeed innovation test ratio + TasRatio float32 + // Horizontal position 1-STD accuracy relative to the EKF local origin + PosHorizAccuracy float32 + // Vertical position 1-STD accuracy relative to the EKF local origin + PosVertAccuracy float32 +} + +// GetID implements the msg.Message interface. +func (*MessageEstimatorStatus) GetID() uint32 { + return 230 +} diff --git a/pkg/dialects/all/msg_event.go b/pkg/dialects/all/msg_event.go new file mode 100644 index 000000000..d2e7fb673 --- /dev/null +++ b/pkg/dialects/all/msg_event.go @@ -0,0 +1,26 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// Event message. Each new event from a particular component gets a new sequence number. The same message might be sent multiple times if (re-)requested. Most events are broadcast, some can be specific to a target component (as receivers keep track of the sequence for missed events, all events need to be broadcast. Thus we use destination_component instead of target_component). +type MessageEvent struct { + // Component ID + DestinationComponent uint8 + // System ID + DestinationSystem uint8 + // Event ID (as defined in the component metadata) + Id uint32 + // Timestamp (time since system boot when the event happened). + EventTimeBootMs uint32 + // Sequence number. + Sequence uint16 + // Log levels: 4 bits MSB: internal (for logging purposes), 4 bits LSB: external. Levels: Emergency = 0, Alert = 1, Critical = 2, Error = 3, Warning = 4, Notice = 5, Info = 6, Debug = 7, Protocol = 8, Disabled = 9 + LogLevels uint8 + // Arguments (depend on event ID). + Arguments [40]uint8 +} + +// GetID implements the msg.Message interface. +func (*MessageEvent) GetID() uint32 { + return 410 +} diff --git a/pkg/dialects/all/msg_extended_sys_state.go b/pkg/dialects/all/msg_extended_sys_state.go new file mode 100644 index 000000000..b3dff03af --- /dev/null +++ b/pkg/dialects/all/msg_extended_sys_state.go @@ -0,0 +1,16 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// Provides state for additional features +type MessageExtendedSysState struct { + // The VTOL state if applicable. Is set to MAV_VTOL_STATE_UNDEFINED if UAV is not in VTOL configuration. + VtolState MAV_VTOL_STATE `mavenum:"uint8"` + // The landed state. Is set to MAV_LANDED_STATE_UNDEFINED if landed state is unknown. + LandedState MAV_LANDED_STATE `mavenum:"uint8"` +} + +// GetID implements the msg.Message interface. +func (*MessageExtendedSysState) GetID() uint32 { + return 245 +} diff --git a/pkg/dialects/all/msg_fence_fetch_point.go b/pkg/dialects/all/msg_fence_fetch_point.go new file mode 100644 index 000000000..52b2deb78 --- /dev/null +++ b/pkg/dialects/all/msg_fence_fetch_point.go @@ -0,0 +1,18 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// Request a current fence point from MAV. +type MessageFenceFetchPoint struct { + // System ID. + TargetSystem uint8 + // Component ID. + TargetComponent uint8 + // Point index (first point is 1, 0 is for return point). + Idx uint8 +} + +// GetID implements the msg.Message interface. +func (*MessageFenceFetchPoint) GetID() uint32 { + return 161 +} diff --git a/pkg/dialects/all/msg_fence_point.go b/pkg/dialects/all/msg_fence_point.go new file mode 100644 index 000000000..470ad4492 --- /dev/null +++ b/pkg/dialects/all/msg_fence_point.go @@ -0,0 +1,24 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// A fence point. Used to set a point when from GCS -> MAV. Also used to return a point from MAV -> GCS. +type MessageFencePoint struct { + // System ID. + TargetSystem uint8 + // Component ID. + TargetComponent uint8 + // Point index (first point is 1, 0 is for return point). + Idx uint8 + // Total number of points (for sanity checking). + Count uint8 + // Latitude of point. + Lat float32 + // Longitude of point. + Lng float32 +} + +// GetID implements the msg.Message interface. +func (*MessageFencePoint) GetID() uint32 { + return 160 +} diff --git a/pkg/dialects/all/msg_fence_status.go b/pkg/dialects/all/msg_fence_status.go new file mode 100644 index 000000000..ed55f0705 --- /dev/null +++ b/pkg/dialects/all/msg_fence_status.go @@ -0,0 +1,22 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// Status of geo-fencing. Sent in extended status stream when fencing enabled. +type MessageFenceStatus struct { + // Breach status (0 if currently inside fence, 1 if outside). + BreachStatus uint8 + // Number of fence breaches. + BreachCount uint16 + // Last breach type. + BreachType FENCE_BREACH `mavenum:"uint8"` + // Time (since boot) of last breach. + BreachTime uint32 + // Active action to prevent fence breach + BreachMitigation FENCE_MITIGATE `mavenum:"uint8" mavext:"true"` +} + +// GetID implements the msg.Message interface. +func (*MessageFenceStatus) GetID() uint32 { + return 162 +} diff --git a/pkg/dialects/all/msg_file_transfer_protocol.go b/pkg/dialects/all/msg_file_transfer_protocol.go new file mode 100644 index 000000000..0360fc2a1 --- /dev/null +++ b/pkg/dialects/all/msg_file_transfer_protocol.go @@ -0,0 +1,20 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// File transfer message +type MessageFileTransferProtocol struct { + // Network ID (0 for broadcast) + TargetNetwork uint8 + // System ID (0 for broadcast) + TargetSystem uint8 + // Component ID (0 for broadcast) + TargetComponent uint8 + // Variable length payload. The length is defined by the remaining message length when subtracting the header and other fields. The entire content of this block is opaque unless you understand any the encoding message_type. The particular encoding used can be extension specific and might not always be documented as part of the mavlink specification. + Payload [251]uint8 +} + +// GetID implements the msg.Message interface. +func (*MessageFileTransferProtocol) GetID() uint32 { + return 110 +} diff --git a/pkg/dialects/all/msg_flight_information.go b/pkg/dialects/all/msg_flight_information.go new file mode 100644 index 000000000..f39b9a155 --- /dev/null +++ b/pkg/dialects/all/msg_flight_information.go @@ -0,0 +1,21 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// Information about flight since last arming. +// This can be requested using MAV_CMD_REQUEST_MESSAGE. +type MessageFlightInformation struct { + // Timestamp (time since system boot). + TimeBootMs uint32 + // Timestamp at arming (time since UNIX epoch) in UTC, 0 for unknown + ArmingTimeUtc uint64 + // Timestamp at takeoff (time since UNIX epoch) in UTC, 0 for unknown + TakeoffTimeUtc uint64 + // Universally unique identifier (UUID) of flight, should correspond to name of log files + FlightUuid uint64 +} + +// GetID implements the msg.Message interface. +func (*MessageFlightInformation) GetID() uint32 { + return 264 +} diff --git a/pkg/dialects/all/msg_follow_target.go b/pkg/dialects/all/msg_follow_target.go new file mode 100644 index 000000000..b766a63ca --- /dev/null +++ b/pkg/dialects/all/msg_follow_target.go @@ -0,0 +1,34 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// Current motion information from a designated system +type MessageFollowTarget struct { + // Timestamp (time since system boot). + Timestamp uint64 + // bit positions for tracker reporting capabilities (POS = 0, VEL = 1, ACCEL = 2, ATT + RATES = 3) + EstCapabilities uint8 + // Latitude (WGS84) + Lat int32 + // Longitude (WGS84) + Lon int32 + // Altitude (MSL) + Alt float32 + // target velocity (0,0,0) for unknown + Vel [3]float32 + // linear target acceleration (0,0,0) for unknown + Acc [3]float32 + // (0 0 0 0 for unknown) + AttitudeQ [4]float32 + // (0 0 0 for unknown) + Rates [3]float32 + // eph epv + PositionCov [3]float32 + // button states or switches of a tracker device + CustomState uint64 +} + +// GetID implements the msg.Message interface. +func (*MessageFollowTarget) GetID() uint32 { + return 144 +} diff --git a/pkg/dialects/all/msg_fw_soaring_data.go b/pkg/dialects/all/msg_fw_soaring_data.go new file mode 100644 index 000000000..d59aa9f1e --- /dev/null +++ b/pkg/dialects/all/msg_fw_soaring_data.go @@ -0,0 +1,62 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// Fixed-wing soaring (i.e. thermal seeking) data +type MessageFwSoaringData struct { + // Timestamp + Timestamp uint64 + // Timestamp since last mode change + Timestampmodechanged uint64 `mavname:"timestampModeChanged"` + // Thermal core updraft strength + Xw float32 `mavname:"xW"` + // Thermal radius + Xr float32 `mavname:"xR"` + // Thermal center latitude + Xlat float32 `mavname:"xLat"` + // Thermal center longitude + Xlon float32 `mavname:"xLon"` + // Variance W + Varw float32 `mavname:"VarW"` + // Variance R + Varr float32 `mavname:"VarR"` + // Variance Lat + Varlat float32 `mavname:"VarLat"` + // Variance Lon + Varlon float32 `mavname:"VarLon"` + // Suggested loiter radius + Loiterradius float32 `mavname:"LoiterRadius"` + // Suggested loiter direction + Loiterdirection float32 `mavname:"LoiterDirection"` + // Distance to soar point + Disttosoarpoint float32 `mavname:"DistToSoarPoint"` + // Expected sink rate at current airspeed, roll and throttle + Vsinkexp float32 `mavname:"vSinkExp"` + // Measurement / updraft speed at current/local airplane position + Z1Localupdraftspeed float32 `mavname:"z1_LocalUpdraftSpeed"` + // Measurement / roll angle tracking error + Z2Deltaroll float32 `mavname:"z2_DeltaRoll"` + // Expected measurement 1 + Z1Exp float32 + // Expected measurement 2 + Z2Exp float32 + // Thermal drift (from estimator prediction step only) + Thermalgsnorth float32 `mavname:"ThermalGSNorth"` + // Thermal drift (from estimator prediction step only) + Thermalgseast float32 `mavname:"ThermalGSEast"` + // Total specific energy change (filtered) + TseDot float32 `mavname:"TSE_dot"` + // Debug variable 1 + Debugvar1 float32 `mavname:"DebugVar1"` + // Debug variable 2 + Debugvar2 float32 `mavname:"DebugVar2"` + // Control Mode [-] + Controlmode uint8 `mavname:"ControlMode"` + // Data valid [-] + Valid uint8 +} + +// GetID implements the msg.Message interface. +func (*MessageFwSoaringData) GetID() uint32 { + return 8011 +} diff --git a/pkg/dialects/all/msg_generator_status.go b/pkg/dialects/all/msg_generator_status.go new file mode 100644 index 000000000..eb428b47e --- /dev/null +++ b/pkg/dialects/all/msg_generator_status.go @@ -0,0 +1,34 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// Telemetry of power generation system. Alternator or mechanical generator. +type MessageGeneratorStatus struct { + // Status flags. + Status MAV_GENERATOR_STATUS_FLAG `mavenum:"uint64"` + // Speed of electrical generator or alternator. UINT16_MAX: field not provided. + GeneratorSpeed uint16 + // Current into/out of battery. Positive for out. Negative for in. NaN: field not provided. + BatteryCurrent float32 + // Current going to the UAV. If battery current not available this is the DC current from the generator. Positive for out. Negative for in. NaN: field not provided + LoadCurrent float32 + // The power being generated. NaN: field not provided + PowerGenerated float32 + // Voltage of the bus seen at the generator, or battery bus if battery bus is controlled by generator and at a different voltage to main bus. + BusVoltage float32 + // The temperature of the rectifier or power converter. INT16_MAX: field not provided. + RectifierTemperature int16 + // The target battery current. Positive for out. Negative for in. NaN: field not provided + BatCurrentSetpoint float32 + // The temperature of the mechanical motor, fuel cell core or generator. INT16_MAX: field not provided. + GeneratorTemperature int16 + // Seconds this generator has run since it was rebooted. UINT32_MAX: field not provided. + Runtime uint32 + // Seconds until this generator requires maintenance. A negative value indicates maintenance is past-due. INT32_MAX: field not provided. + TimeUntilMaintenance int32 +} + +// GetID implements the msg.Message interface. +func (*MessageGeneratorStatus) GetID() uint32 { + return 373 +} diff --git a/pkg/dialects/all/msg_gimbal_control.go b/pkg/dialects/all/msg_gimbal_control.go new file mode 100644 index 000000000..a72cf3581 --- /dev/null +++ b/pkg/dialects/all/msg_gimbal_control.go @@ -0,0 +1,22 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// Control message for rate gimbal. +type MessageGimbalControl struct { + // System ID. + TargetSystem uint8 + // Component ID. + TargetComponent uint8 + // Demanded angular rate X. + DemandedRateX float32 + // Demanded angular rate Y. + DemandedRateY float32 + // Demanded angular rate Z. + DemandedRateZ float32 +} + +// GetID implements the msg.Message interface. +func (*MessageGimbalControl) GetID() uint32 { + return 201 +} diff --git a/pkg/dialects/all/msg_gimbal_device_attitude_status.go b/pkg/dialects/all/msg_gimbal_device_attitude_status.go new file mode 100644 index 000000000..584aa01a4 --- /dev/null +++ b/pkg/dialects/all/msg_gimbal_device_attitude_status.go @@ -0,0 +1,30 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// Message reporting the status of a gimbal device. This message should be broadcasted by a gimbal device component. The angles encoded in the quaternion are relative to absolute North if the flag GIMBAL_DEVICE_FLAGS_YAW_LOCK is set (roll: positive is rolling to the right, pitch: positive is pitching up, yaw is turn to the right) or relative to the vehicle heading if the flag is not set. This message should be broadcast at a low regular rate (e.g. 10Hz). +type MessageGimbalDeviceAttitudeStatus struct { + // System ID + TargetSystem uint8 + // Component ID + TargetComponent uint8 + // Timestamp (time since system boot). + TimeBootMs uint32 + // Current gimbal flags set. + Flags GIMBAL_DEVICE_FLAGS `mavenum:"uint16"` + // Quaternion components, w, x, y, z (1 0 0 0 is the null-rotation, the frame is depends on whether the flag GIMBAL_DEVICE_FLAGS_YAW_LOCK is set) + Q [4]float32 + // X component of angular velocity (NaN if unknown) + AngularVelocityX float32 + // Y component of angular velocity (NaN if unknown) + AngularVelocityY float32 + // Z component of angular velocity (NaN if unknown) + AngularVelocityZ float32 + // Failure flags (0 for no failure) + FailureFlags GIMBAL_DEVICE_ERROR_FLAGS `mavenum:"uint32"` +} + +// GetID implements the msg.Message interface. +func (*MessageGimbalDeviceAttitudeStatus) GetID() uint32 { + return 285 +} diff --git a/pkg/dialects/all/msg_gimbal_device_information.go b/pkg/dialects/all/msg_gimbal_device_information.go new file mode 100644 index 000000000..d3af7d0c1 --- /dev/null +++ b/pkg/dialects/all/msg_gimbal_device_information.go @@ -0,0 +1,42 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// Information about a low level gimbal. This message should be requested by the gimbal manager or a ground station using MAV_CMD_REQUEST_MESSAGE. The maximum angles and rates are the limits by hardware. However, the limits by software used are likely different/smaller and dependent on mode/settings/etc.. +type MessageGimbalDeviceInformation struct { + // Timestamp (time since system boot). + TimeBootMs uint32 + // Name of the gimbal vendor. + VendorName string `mavlen:"32"` + // Name of the gimbal model. + ModelName string `mavlen:"32"` + // Custom name of the gimbal given to it by the user. + CustomName string `mavlen:"32"` + // Version of the gimbal firmware, encoded as: (Dev & 0xff) << 24 | (Patch & 0xff) << 16 | (Minor & 0xff) << 8 | (Major & 0xff). + FirmwareVersion uint32 + // Version of the gimbal hardware, encoded as: (Dev & 0xff) << 24 | (Patch & 0xff) << 16 | (Minor & 0xff) << 8 | (Major & 0xff). + HardwareVersion uint32 + // UID of gimbal hardware (0 if unknown). + Uid uint64 + // Bitmap of gimbal capability flags. + CapFlags GIMBAL_DEVICE_CAP_FLAGS `mavenum:"uint16"` + // Bitmap for use for gimbal-specific capability flags. + CustomCapFlags uint16 + // Minimum hardware roll angle (positive: rolling to the right, negative: rolling to the left) + RollMin float32 + // Maximum hardware roll angle (positive: rolling to the right, negative: rolling to the left) + RollMax float32 + // Minimum hardware pitch angle (positive: up, negative: down) + PitchMin float32 + // Maximum hardware pitch angle (positive: up, negative: down) + PitchMax float32 + // Minimum hardware yaw angle (positive: to the right, negative: to the left) + YawMin float32 + // Maximum hardware yaw angle (positive: to the right, negative: to the left) + YawMax float32 +} + +// GetID implements the msg.Message interface. +func (*MessageGimbalDeviceInformation) GetID() uint32 { + return 283 +} diff --git a/pkg/dialects/all/msg_gimbal_device_set_attitude.go b/pkg/dialects/all/msg_gimbal_device_set_attitude.go new file mode 100644 index 000000000..bec2ee10f --- /dev/null +++ b/pkg/dialects/all/msg_gimbal_device_set_attitude.go @@ -0,0 +1,26 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// Low level message to control a gimbal device's attitude. This message is to be sent from the gimbal manager to the gimbal device component. Angles and rates can be set to NaN according to use case. +type MessageGimbalDeviceSetAttitude struct { + // System ID + TargetSystem uint8 + // Component ID + TargetComponent uint8 + // Low level gimbal flags. + Flags GIMBAL_DEVICE_FLAGS `mavenum:"uint16"` + // Quaternion components, w, x, y, z (1 0 0 0 is the null-rotation, the frame is depends on whether the flag GIMBAL_DEVICE_FLAGS_YAW_LOCK is set, set all fields to NaN if only angular velocity should be used) + Q [4]float32 + // X component of angular velocity, positive is rolling to the right, NaN to be ignored. + AngularVelocityX float32 + // Y component of angular velocity, positive is pitching up, NaN to be ignored. + AngularVelocityY float32 + // Z component of angular velocity, positive is yawing to the right, NaN to be ignored. + AngularVelocityZ float32 +} + +// GetID implements the msg.Message interface. +func (*MessageGimbalDeviceSetAttitude) GetID() uint32 { + return 284 +} diff --git a/pkg/dialects/all/msg_gimbal_manager_information.go b/pkg/dialects/all/msg_gimbal_manager_information.go new file mode 100644 index 000000000..4524bbc49 --- /dev/null +++ b/pkg/dialects/all/msg_gimbal_manager_information.go @@ -0,0 +1,30 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// Information about a high level gimbal manager. This message should be requested by a ground station using MAV_CMD_REQUEST_MESSAGE. +type MessageGimbalManagerInformation struct { + // Timestamp (time since system boot). + TimeBootMs uint32 + // Bitmap of gimbal capability flags. + CapFlags GIMBAL_MANAGER_CAP_FLAGS `mavenum:"uint32"` + // Gimbal device ID that this gimbal manager is responsible for. + GimbalDeviceId uint8 + // Minimum hardware roll angle (positive: rolling to the right, negative: rolling to the left) + RollMin float32 + // Maximum hardware roll angle (positive: rolling to the right, negative: rolling to the left) + RollMax float32 + // Minimum pitch angle (positive: up, negative: down) + PitchMin float32 + // Maximum pitch angle (positive: up, negative: down) + PitchMax float32 + // Minimum yaw angle (positive: to the right, negative: to the left) + YawMin float32 + // Maximum yaw angle (positive: to the right, negative: to the left) + YawMax float32 +} + +// GetID implements the msg.Message interface. +func (*MessageGimbalManagerInformation) GetID() uint32 { + return 280 +} diff --git a/pkg/dialects/all/msg_gimbal_manager_set_attitude.go b/pkg/dialects/all/msg_gimbal_manager_set_attitude.go new file mode 100644 index 000000000..ec3ab0b2e --- /dev/null +++ b/pkg/dialects/all/msg_gimbal_manager_set_attitude.go @@ -0,0 +1,28 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// High level message to control a gimbal's attitude. This message is to be sent to the gimbal manager (e.g. from a ground station). Angles and rates can be set to NaN according to use case. +type MessageGimbalManagerSetAttitude struct { + // System ID + TargetSystem uint8 + // Component ID + TargetComponent uint8 + // High level gimbal manager flags to use. + Flags GIMBAL_MANAGER_FLAGS `mavenum:"uint32"` + // Component ID of gimbal device to address (or 1-6 for non-MAVLink gimbal), 0 for all gimbal device components. Send command multiple times for more than one gimbal (but not all gimbals). + GimbalDeviceId uint8 + // Quaternion components, w, x, y, z (1 0 0 0 is the null-rotation, the frame is depends on whether the flag GIMBAL_MANAGER_FLAGS_YAW_LOCK is set) + Q [4]float32 + // X component of angular velocity, positive is rolling to the right, NaN to be ignored. + AngularVelocityX float32 + // Y component of angular velocity, positive is pitching up, NaN to be ignored. + AngularVelocityY float32 + // Z component of angular velocity, positive is yawing to the right, NaN to be ignored. + AngularVelocityZ float32 +} + +// GetID implements the msg.Message interface. +func (*MessageGimbalManagerSetAttitude) GetID() uint32 { + return 282 +} diff --git a/pkg/dialects/all/msg_gimbal_manager_set_manual_control.go b/pkg/dialects/all/msg_gimbal_manager_set_manual_control.go new file mode 100644 index 000000000..be5042599 --- /dev/null +++ b/pkg/dialects/all/msg_gimbal_manager_set_manual_control.go @@ -0,0 +1,28 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// High level message to control a gimbal manually. The angles or angular rates are unitless; the actual rates will depend on internal gimbal manager settings/configuration (e.g. set by parameters). This message is to be sent to the gimbal manager (e.g. from a ground station). Angles and rates can be set to NaN according to use case. +type MessageGimbalManagerSetManualControl struct { + // System ID + TargetSystem uint8 + // Component ID + TargetComponent uint8 + // High level gimbal manager flags. + Flags GIMBAL_MANAGER_FLAGS `mavenum:"uint32"` + // Component ID of gimbal device to address (or 1-6 for non-MAVLink gimbal), 0 for all gimbal device components. Send command multiple times for more than one gimbal (but not all gimbals). + GimbalDeviceId uint8 + // Pitch angle unitless (-1..1, positive: up, negative: down, NaN to be ignored). + Pitch float32 + // Yaw angle unitless (-1..1, positive: to the right, negative: to the left, NaN to be ignored). + Yaw float32 + // Pitch angular rate unitless (-1..1, positive: up, negative: down, NaN to be ignored). + PitchRate float32 + // Yaw angular rate unitless (-1..1, positive: to the right, negative: to the left, NaN to be ignored). + YawRate float32 +} + +// GetID implements the msg.Message interface. +func (*MessageGimbalManagerSetManualControl) GetID() uint32 { + return 288 +} diff --git a/pkg/dialects/all/msg_gimbal_manager_set_pitchyaw.go b/pkg/dialects/all/msg_gimbal_manager_set_pitchyaw.go new file mode 100644 index 000000000..ff34a4c21 --- /dev/null +++ b/pkg/dialects/all/msg_gimbal_manager_set_pitchyaw.go @@ -0,0 +1,28 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// High level message to control a gimbal's pitch and yaw angles. This message is to be sent to the gimbal manager (e.g. from a ground station). Angles and rates can be set to NaN according to use case. +type MessageGimbalManagerSetPitchyaw struct { + // System ID + TargetSystem uint8 + // Component ID + TargetComponent uint8 + // High level gimbal manager flags to use. + Flags GIMBAL_MANAGER_FLAGS `mavenum:"uint32"` + // Component ID of gimbal device to address (or 1-6 for non-MAVLink gimbal), 0 for all gimbal device components. Send command multiple times for more than one gimbal (but not all gimbals). + GimbalDeviceId uint8 + // Pitch angle (positive: up, negative: down, NaN to be ignored). + Pitch float32 + // Yaw angle (positive: to the right, negative: to the left, NaN to be ignored). + Yaw float32 + // Pitch angular rate (positive: up, negative: down, NaN to be ignored). + PitchRate float32 + // Yaw angular rate (positive: to the right, negative: to the left, NaN to be ignored). + YawRate float32 +} + +// GetID implements the msg.Message interface. +func (*MessageGimbalManagerSetPitchyaw) GetID() uint32 { + return 287 +} diff --git a/pkg/dialects/all/msg_gimbal_manager_status.go b/pkg/dialects/all/msg_gimbal_manager_status.go new file mode 100644 index 000000000..1f9fbd5b0 --- /dev/null +++ b/pkg/dialects/all/msg_gimbal_manager_status.go @@ -0,0 +1,26 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// Current status about a high level gimbal manager. This message should be broadcast at a low regular rate (e.g. 5Hz). +type MessageGimbalManagerStatus struct { + // Timestamp (time since system boot). + TimeBootMs uint32 + // High level gimbal manager flags currently applied. + Flags GIMBAL_MANAGER_FLAGS `mavenum:"uint32"` + // Gimbal device ID that this gimbal manager is responsible for. + GimbalDeviceId uint8 + // System ID of MAVLink component with primary control, 0 for none. + PrimaryControlSysid uint8 + // Component ID of MAVLink component with primary control, 0 for none. + PrimaryControlCompid uint8 + // System ID of MAVLink component with secondary control, 0 for none. + SecondaryControlSysid uint8 + // Component ID of MAVLink component with secondary control, 0 for none. + SecondaryControlCompid uint8 +} + +// GetID implements the msg.Message interface. +func (*MessageGimbalManagerStatus) GetID() uint32 { + return 281 +} diff --git a/pkg/dialects/all/msg_gimbal_report.go b/pkg/dialects/all/msg_gimbal_report.go new file mode 100644 index 000000000..4e352e06b --- /dev/null +++ b/pkg/dialects/all/msg_gimbal_report.go @@ -0,0 +1,36 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// 3 axis gimbal measurements. +type MessageGimbalReport struct { + // System ID. + TargetSystem uint8 + // Component ID. + TargetComponent uint8 + // Time since last update. + DeltaTime float32 + // Delta angle X. + DeltaAngleX float32 + // Delta angle Y. + DeltaAngleY float32 + // Delta angle X. + DeltaAngleZ float32 + // Delta velocity X. + DeltaVelocityX float32 + // Delta velocity Y. + DeltaVelocityY float32 + // Delta velocity Z. + DeltaVelocityZ float32 + // Joint ROLL. + JointRoll float32 + // Joint EL. + JointEl float32 + // Joint AZ. + JointAz float32 +} + +// GetID implements the msg.Message interface. +func (*MessageGimbalReport) GetID() uint32 { + return 200 +} diff --git a/pkg/dialects/all/msg_gimbal_torque_cmd_report.go b/pkg/dialects/all/msg_gimbal_torque_cmd_report.go new file mode 100644 index 000000000..71a8d425e --- /dev/null +++ b/pkg/dialects/all/msg_gimbal_torque_cmd_report.go @@ -0,0 +1,22 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// 100 Hz gimbal torque command telemetry. +type MessageGimbalTorqueCmdReport struct { + // System ID. + TargetSystem uint8 + // Component ID. + TargetComponent uint8 + // Roll Torque Command. + RlTorqueCmd int16 + // Elevation Torque Command. + ElTorqueCmd int16 + // Azimuth Torque Command. + AzTorqueCmd int16 +} + +// GetID implements the msg.Message interface. +func (*MessageGimbalTorqueCmdReport) GetID() uint32 { + return 214 +} diff --git a/pkg/dialects/all/msg_global_position_int.go b/pkg/dialects/all/msg_global_position_int.go new file mode 100644 index 000000000..5854d2dbe --- /dev/null +++ b/pkg/dialects/all/msg_global_position_int.go @@ -0,0 +1,31 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// The filtered global position (e.g. fused GPS and accelerometers). The position is in GPS-frame (right-handed, Z-up). It +// is designed as scaled integer message since the resolution of float is not sufficient. +type MessageGlobalPositionInt struct { + // Timestamp (time since system boot). + TimeBootMs uint32 + // Latitude, expressed + Lat int32 + // Longitude, expressed + Lon int32 + // Altitude (MSL). Note that virtually all GPS modules provide both WGS84 and MSL. + Alt int32 + // Altitude above ground + RelativeAlt int32 + // Ground X Speed (Latitude, positive north) + Vx int16 + // Ground Y Speed (Longitude, positive east) + Vy int16 + // Ground Z Speed (Altitude, positive down) + Vz int16 + // Vehicle heading (yaw angle), 0.0..359.99 degrees. If unknown, set to: UINT16_MAX + Hdg uint16 +} + +// GetID implements the msg.Message interface. +func (*MessageGlobalPositionInt) GetID() uint32 { + return 33 +} diff --git a/pkg/dialects/all/msg_global_position_int_cov.go b/pkg/dialects/all/msg_global_position_int_cov.go new file mode 100644 index 000000000..9cc59a518 --- /dev/null +++ b/pkg/dialects/all/msg_global_position_int_cov.go @@ -0,0 +1,32 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// The filtered global position (e.g. fused GPS and accelerometers). The position is in GPS-frame (right-handed, Z-up). It is designed as scaled integer message since the resolution of float is not sufficient. NOTE: This message is intended for onboard networks / companion computers and higher-bandwidth links and optimized for accuracy and completeness. Please use the GLOBAL_POSITION_INT message for a minimal subset. +type MessageGlobalPositionIntCov struct { + // Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. + TimeUsec uint64 + // Class id of the estimator this estimate originated from. + EstimatorType MAV_ESTIMATOR_TYPE `mavenum:"uint8"` + // Latitude + Lat int32 + // Longitude + Lon int32 + // Altitude in meters above MSL + Alt int32 + // Altitude above ground + RelativeAlt int32 + // Ground X Speed (Latitude) + Vx float32 + // Ground Y Speed (Longitude) + Vy float32 + // Ground Z Speed (Altitude) + Vz float32 + // Row-major representation of a 6x6 position and velocity 6x6 cross-covariance matrix (states: lat, lon, alt, vx, vy, vz; first six entries are the first ROW, next six entries are the second row, etc.). If unknown, assign NaN value to first element in the array. + Covariance [36]float32 +} + +// GetID implements the msg.Message interface. +func (*MessageGlobalPositionIntCov) GetID() uint32 { + return 63 +} diff --git a/pkg/dialects/all/msg_global_vision_position_estimate.go b/pkg/dialects/all/msg_global_vision_position_estimate.go new file mode 100644 index 000000000..d161f80e4 --- /dev/null +++ b/pkg/dialects/all/msg_global_vision_position_estimate.go @@ -0,0 +1,30 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// Global position/attitude estimate from a vision source. +type MessageGlobalVisionPositionEstimate struct { + // Timestamp (UNIX time or since system boot) + Usec uint64 + // Global X position + X float32 + // Global Y position + Y float32 + // Global Z position + Z float32 + // Roll angle + Roll float32 + // Pitch angle + Pitch float32 + // Yaw angle + Yaw float32 + // Row-major representation of pose 6x6 cross-covariance matrix upper right triangle (states: x_global, y_global, z_global, roll, pitch, yaw; first six entries are the first ROW, next five entries are the second ROW, etc.). If unknown, assign NaN value to first element in the array. + Covariance [21]float32 `mavext:"true"` + // Estimate reset counter. This should be incremented when the estimate resets in any of the dimensions (position, velocity, attitude, angular speed). This is designed to be used when e.g an external SLAM system detects a loop-closure and the estimate jumps. + ResetCounter uint8 `mavext:"true"` +} + +// GetID implements the msg.Message interface. +func (*MessageGlobalVisionPositionEstimate) GetID() uint32 { + return 101 +} diff --git a/pkg/dialects/all/msg_gopro_get_request.go b/pkg/dialects/all/msg_gopro_get_request.go new file mode 100644 index 000000000..e3dfc6329 --- /dev/null +++ b/pkg/dialects/all/msg_gopro_get_request.go @@ -0,0 +1,18 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// Request a GOPRO_COMMAND response from the GoPro. +type MessageGoproGetRequest struct { + // System ID. + TargetSystem uint8 + // Component ID. + TargetComponent uint8 + // Command ID. + CmdId GOPRO_COMMAND `mavenum:"uint8"` +} + +// GetID implements the msg.Message interface. +func (*MessageGoproGetRequest) GetID() uint32 { + return 216 +} diff --git a/pkg/dialects/all/msg_gopro_get_response.go b/pkg/dialects/all/msg_gopro_get_response.go new file mode 100644 index 000000000..33f29bb49 --- /dev/null +++ b/pkg/dialects/all/msg_gopro_get_response.go @@ -0,0 +1,18 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// Response from a GOPRO_COMMAND get request. +type MessageGoproGetResponse struct { + // Command ID. + CmdId GOPRO_COMMAND `mavenum:"uint8"` + // Status. + Status GOPRO_REQUEST_STATUS `mavenum:"uint8"` + // Value. + Value [4]uint8 +} + +// GetID implements the msg.Message interface. +func (*MessageGoproGetResponse) GetID() uint32 { + return 217 +} diff --git a/pkg/dialects/all/msg_gopro_heartbeat.go b/pkg/dialects/all/msg_gopro_heartbeat.go new file mode 100644 index 000000000..672e64060 --- /dev/null +++ b/pkg/dialects/all/msg_gopro_heartbeat.go @@ -0,0 +1,18 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// Heartbeat from a HeroBus attached GoPro. +type MessageGoproHeartbeat struct { + // Status. + Status GOPRO_HEARTBEAT_STATUS `mavenum:"uint8"` + // Current capture mode. + CaptureMode GOPRO_CAPTURE_MODE `mavenum:"uint8"` + // Additional status bits. + Flags GOPRO_HEARTBEAT_FLAGS `mavenum:"uint8"` +} + +// GetID implements the msg.Message interface. +func (*MessageGoproHeartbeat) GetID() uint32 { + return 215 +} diff --git a/pkg/dialects/all/msg_gopro_set_request.go b/pkg/dialects/all/msg_gopro_set_request.go new file mode 100644 index 000000000..e8cdee0a4 --- /dev/null +++ b/pkg/dialects/all/msg_gopro_set_request.go @@ -0,0 +1,20 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// Request to set a GOPRO_COMMAND with a desired. +type MessageGoproSetRequest struct { + // System ID. + TargetSystem uint8 + // Component ID. + TargetComponent uint8 + // Command ID. + CmdId GOPRO_COMMAND `mavenum:"uint8"` + // Value. + Value [4]uint8 +} + +// GetID implements the msg.Message interface. +func (*MessageGoproSetRequest) GetID() uint32 { + return 218 +} diff --git a/pkg/dialects/all/msg_gopro_set_response.go b/pkg/dialects/all/msg_gopro_set_response.go new file mode 100644 index 000000000..0c930e0fa --- /dev/null +++ b/pkg/dialects/all/msg_gopro_set_response.go @@ -0,0 +1,16 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// Response from a GOPRO_COMMAND set request. +type MessageGoproSetResponse struct { + // Command ID. + CmdId GOPRO_COMMAND `mavenum:"uint8"` + // Status. + Status GOPRO_REQUEST_STATUS `mavenum:"uint8"` +} + +// GetID implements the msg.Message interface. +func (*MessageGoproSetResponse) GetID() uint32 { + return 219 +} diff --git a/pkg/dialects/all/msg_gps2_raw.go b/pkg/dialects/all/msg_gps2_raw.go new file mode 100644 index 000000000..c5bbd4e26 --- /dev/null +++ b/pkg/dialects/all/msg_gps2_raw.go @@ -0,0 +1,48 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// Second GPS data. +type MessageGps2Raw struct { + // Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. + TimeUsec uint64 + // GPS fix type. + FixType GPS_FIX_TYPE `mavenum:"uint8"` + // Latitude (WGS84) + Lat int32 + // Longitude (WGS84) + Lon int32 + // Altitude (MSL). Positive for up. + Alt int32 + // GPS HDOP horizontal dilution of position (unitless * 100). If unknown, set to: UINT16_MAX + Eph uint16 + // GPS VDOP vertical dilution of position (unitless * 100). If unknown, set to: UINT16_MAX + Epv uint16 + // GPS ground speed. If unknown, set to: UINT16_MAX + Vel uint16 + // Course over ground (NOT heading, but direction of movement): 0.0..359.99 degrees. If unknown, set to: UINT16_MAX + Cog uint16 + // Number of satellites visible. If unknown, set to UINT8_MAX + SatellitesVisible uint8 + // Number of DGPS satellites + DgpsNumch uint8 + // Age of DGPS info + DgpsAge uint32 + // Yaw in earth frame from north. Use 0 if this GPS does not provide yaw. Use UINT16_MAX if this GPS is configured to provide yaw and is currently unable to provide it. Use 36000 for north. + Yaw uint16 `mavext:"true"` + // Altitude (above WGS84, EGM96 ellipsoid). Positive for up. + AltEllipsoid int32 `mavext:"true"` + // Position uncertainty. + HAcc uint32 `mavext:"true"` + // Altitude uncertainty. + VAcc uint32 `mavext:"true"` + // Speed uncertainty. + VelAcc uint32 `mavext:"true"` + // Heading / track uncertainty + HdgAcc uint32 `mavext:"true"` +} + +// GetID implements the msg.Message interface. +func (*MessageGps2Raw) GetID() uint32 { + return 124 +} diff --git a/pkg/dialects/all/msg_gps2_rtk.go b/pkg/dialects/all/msg_gps2_rtk.go new file mode 100644 index 000000000..f4f33b7be --- /dev/null +++ b/pkg/dialects/all/msg_gps2_rtk.go @@ -0,0 +1,38 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// RTK GPS data. Gives information on the relative baseline calculation the GPS is reporting +type MessageGps2Rtk struct { + // Time since boot of last baseline message received. + TimeLastBaselineMs uint32 + // Identification of connected RTK receiver. + RtkReceiverId uint8 + // GPS Week Number of last baseline + Wn uint16 + // GPS Time of Week of last baseline + Tow uint32 + // GPS-specific health report for RTK data. + RtkHealth uint8 + // Rate of baseline messages being received by GPS + RtkRate uint8 + // Current number of sats used for RTK calculation. + Nsats uint8 + // Coordinate system of baseline + BaselineCoordsType RTK_BASELINE_COORDINATE_SYSTEM `mavenum:"uint8"` + // Current baseline in ECEF x or NED north component. + BaselineAMm int32 + // Current baseline in ECEF y or NED east component. + BaselineBMm int32 + // Current baseline in ECEF z or NED down component. + BaselineCMm int32 + // Current estimate of baseline accuracy. + Accuracy uint32 + // Current number of integer ambiguity hypotheses. + IarNumHypotheses int32 +} + +// GetID implements the msg.Message interface. +func (*MessageGps2Rtk) GetID() uint32 { + return 128 +} diff --git a/pkg/dialects/all/msg_gps_global_origin.go b/pkg/dialects/all/msg_gps_global_origin.go new file mode 100644 index 000000000..398f70325 --- /dev/null +++ b/pkg/dialects/all/msg_gps_global_origin.go @@ -0,0 +1,20 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// Publishes the GPS co-ordinates of the vehicle local origin (0,0,0) position. Emitted whenever a new GPS-Local position mapping is requested or set - e.g. following SET_GPS_GLOBAL_ORIGIN message. +type MessageGpsGlobalOrigin struct { + // Latitude (WGS84) + Latitude int32 + // Longitude (WGS84) + Longitude int32 + // Altitude (MSL). Positive for up. + Altitude int32 + // Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. + TimeUsec uint64 `mavext:"true"` +} + +// GetID implements the msg.Message interface. +func (*MessageGpsGlobalOrigin) GetID() uint32 { + return 49 +} diff --git a/pkg/dialects/all/msg_gps_inject_data.go b/pkg/dialects/all/msg_gps_inject_data.go new file mode 100644 index 000000000..009542dc9 --- /dev/null +++ b/pkg/dialects/all/msg_gps_inject_data.go @@ -0,0 +1,20 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// Data for injecting into the onboard GPS (used for DGPS) +type MessageGpsInjectData struct { + // System ID + TargetSystem uint8 + // Component ID + TargetComponent uint8 + // Data length + Len uint8 + // Raw data (110 is enough for 12 satellites of RTCMv2) + Data [110]uint8 +} + +// GetID implements the msg.Message interface. +func (*MessageGpsInjectData) GetID() uint32 { + return 123 +} diff --git a/pkg/dialects/all/msg_gps_input.go b/pkg/dialects/all/msg_gps_input.go new file mode 100644 index 000000000..df953c0fd --- /dev/null +++ b/pkg/dialects/all/msg_gps_input.go @@ -0,0 +1,50 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// GPS sensor input message. This is a raw sensor value sent by the GPS. This is NOT the global position estimate of the system. +type MessageGpsInput struct { + // Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. + TimeUsec uint64 + // ID of the GPS for multiple GPS inputs + GpsId uint8 + // Bitmap indicating which GPS input flags fields to ignore. All other fields must be provided. + IgnoreFlags GPS_INPUT_IGNORE_FLAGS `mavenum:"uint16"` + // GPS time (from start of GPS week) + TimeWeekMs uint32 + // GPS week number + TimeWeek uint16 + // 0-1: no fix, 2: 2D fix, 3: 3D fix. 4: 3D with DGPS. 5: 3D with RTK + FixType uint8 + // Latitude (WGS84) + Lat int32 + // Longitude (WGS84) + Lon int32 + // Altitude (MSL). Positive for up. + Alt float32 + // GPS HDOP horizontal dilution of position (unitless). If unknown, set to: UINT16_MAX + Hdop float32 + // GPS VDOP vertical dilution of position (unitless). If unknown, set to: UINT16_MAX + Vdop float32 + // GPS velocity in north direction in earth-fixed NED frame + Vn float32 + // GPS velocity in east direction in earth-fixed NED frame + Ve float32 + // GPS velocity in down direction in earth-fixed NED frame + Vd float32 + // GPS speed accuracy + SpeedAccuracy float32 + // GPS horizontal accuracy + HorizAccuracy float32 + // GPS vertical accuracy + VertAccuracy float32 + // Number of satellites visible. + SatellitesVisible uint8 + // Yaw of vehicle relative to Earth's North, zero means not available, use 36000 for north + Yaw uint16 `mavext:"true"` +} + +// GetID implements the msg.Message interface. +func (*MessageGpsInput) GetID() uint32 { + return 232 +} diff --git a/pkg/dialects/all/msg_gps_raw_int.go b/pkg/dialects/all/msg_gps_raw_int.go new file mode 100644 index 000000000..c89dc1233 --- /dev/null +++ b/pkg/dialects/all/msg_gps_raw_int.go @@ -0,0 +1,45 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// The global position, as returned by the Global Positioning System (GPS). This is +// NOT the global position estimate of the system, but rather a RAW sensor value. See message GLOBAL_POSITION_INT for the global position estimate. +type MessageGpsRawInt struct { + // Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. + TimeUsec uint64 + // GPS fix type. + FixType GPS_FIX_TYPE `mavenum:"uint8"` + // Latitude (WGS84, EGM96 ellipsoid) + Lat int32 + // Longitude (WGS84, EGM96 ellipsoid) + Lon int32 + // Altitude (MSL). Positive for up. Note that virtually all GPS modules provide the MSL altitude in addition to the WGS84 altitude. + Alt int32 + // GPS HDOP horizontal dilution of position (unitless * 100). If unknown, set to: UINT16_MAX + Eph uint16 + // GPS VDOP vertical dilution of position (unitless * 100). If unknown, set to: UINT16_MAX + Epv uint16 + // GPS ground speed. If unknown, set to: UINT16_MAX + Vel uint16 + // Course over ground (NOT heading, but direction of movement) in degrees * 100, 0.0..359.99 degrees. If unknown, set to: UINT16_MAX + Cog uint16 + // Number of satellites visible. If unknown, set to UINT8_MAX + SatellitesVisible uint8 + // Altitude (above WGS84, EGM96 ellipsoid). Positive for up. + AltEllipsoid int32 `mavext:"true"` + // Position uncertainty. + HAcc uint32 `mavext:"true"` + // Altitude uncertainty. + VAcc uint32 `mavext:"true"` + // Speed uncertainty. + VelAcc uint32 `mavext:"true"` + // Heading / track uncertainty + HdgAcc uint32 `mavext:"true"` + // Yaw in earth frame from north. Use 0 if this GPS does not provide yaw. Use UINT16_MAX if this GPS is configured to provide yaw and is currently unable to provide it. Use 36000 for north. + Yaw uint16 `mavext:"true"` +} + +// GetID implements the msg.Message interface. +func (*MessageGpsRawInt) GetID() uint32 { + return 24 +} diff --git a/pkg/dialects/all/msg_gps_rtcm_data.go b/pkg/dialects/all/msg_gps_rtcm_data.go new file mode 100644 index 000000000..4e7bba3d9 --- /dev/null +++ b/pkg/dialects/all/msg_gps_rtcm_data.go @@ -0,0 +1,18 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// RTCM message for injecting into the onboard GPS (used for DGPS) +type MessageGpsRtcmData struct { + // LSB: 1 means message is fragmented, next 2 bits are the fragment ID, the remaining 5 bits are used for the sequence ID. Messages are only to be flushed to the GPS when the entire message has been reconstructed on the autopilot. The fragment ID specifies which order the fragments should be assembled into a buffer, while the sequence ID is used to detect a mismatch between different buffers. The buffer is considered fully reconstructed when either all 4 fragments are present, or all the fragments before the first fragment with a non full payload is received. This management is used to ensure that normal GPS operation doesn't corrupt RTCM data, and to recover from a unreliable transport delivery order. + Flags uint8 + // data length + Len uint8 + // RTCM message (may be fragmented) + Data [180]uint8 +} + +// GetID implements the msg.Message interface. +func (*MessageGpsRtcmData) GetID() uint32 { + return 233 +} diff --git a/pkg/dialects/all/msg_gps_rtk.go b/pkg/dialects/all/msg_gps_rtk.go new file mode 100644 index 000000000..efbc8b6f3 --- /dev/null +++ b/pkg/dialects/all/msg_gps_rtk.go @@ -0,0 +1,38 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// RTK GPS data. Gives information on the relative baseline calculation the GPS is reporting +type MessageGpsRtk struct { + // Time since boot of last baseline message received. + TimeLastBaselineMs uint32 + // Identification of connected RTK receiver. + RtkReceiverId uint8 + // GPS Week Number of last baseline + Wn uint16 + // GPS Time of Week of last baseline + Tow uint32 + // GPS-specific health report for RTK data. + RtkHealth uint8 + // Rate of baseline messages being received by GPS + RtkRate uint8 + // Current number of sats used for RTK calculation. + Nsats uint8 + // Coordinate system of baseline + BaselineCoordsType RTK_BASELINE_COORDINATE_SYSTEM `mavenum:"uint8"` + // Current baseline in ECEF x or NED north component. + BaselineAMm int32 + // Current baseline in ECEF y or NED east component. + BaselineBMm int32 + // Current baseline in ECEF z or NED down component. + BaselineCMm int32 + // Current estimate of baseline accuracy. + Accuracy uint32 + // Current number of integer ambiguity hypotheses. + IarNumHypotheses int32 +} + +// GetID implements the msg.Message interface. +func (*MessageGpsRtk) GetID() uint32 { + return 127 +} diff --git a/pkg/dialects/all/msg_gps_status.go b/pkg/dialects/all/msg_gps_status.go new file mode 100644 index 000000000..d4b9ee9b0 --- /dev/null +++ b/pkg/dialects/all/msg_gps_status.go @@ -0,0 +1,24 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// The positioning status, as reported by GPS. This message is intended to display status information about each satellite visible to the receiver. See message GLOBAL_POSITION_INT for the global position estimate. This message can contain information for up to 20 satellites. +type MessageGpsStatus struct { + // Number of satellites visible + SatellitesVisible uint8 + // Global satellite ID + SatellitePrn [20]uint8 + // 0: Satellite not used, 1: used for localization + SatelliteUsed [20]uint8 + // Elevation (0: right on top of receiver, 90: on the horizon) of satellite + SatelliteElevation [20]uint8 + // Direction of satellite, 0: 0 deg, 255: 360 deg. + SatelliteAzimuth [20]uint8 + // Signal to noise ratio of satellite + SatelliteSnr [20]uint8 +} + +// GetID implements the msg.Message interface. +func (*MessageGpsStatus) GetID() uint32 { + return 25 +} diff --git a/pkg/dialects/all/msg_group_end.go b/pkg/dialects/all/msg_group_end.go new file mode 100644 index 000000000..a4099c912 --- /dev/null +++ b/pkg/dialects/all/msg_group_end.go @@ -0,0 +1,19 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// Emitted during mission execution when control reaches MAV_CMD_GROUP_END. +type MessageGroupEnd struct { + // Mission-unique group id (from MAV_CMD_GROUP_END). + GroupId uint32 + // CRC32 checksum of current plan for MAV_MISSION_TYPE_ALL. As defined in MISSION_CHECKSUM message. + MissionChecksum uint32 + // Timestamp (UNIX Epoch time or time since system boot). + // The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. + TimeUsec uint64 +} + +// GetID implements the msg.Message interface. +func (*MessageGroupEnd) GetID() uint32 { + return 415 +} diff --git a/pkg/dialects/all/msg_group_start.go b/pkg/dialects/all/msg_group_start.go new file mode 100644 index 000000000..617a37044 --- /dev/null +++ b/pkg/dialects/all/msg_group_start.go @@ -0,0 +1,19 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// Emitted during mission execution when control reaches MAV_CMD_GROUP_START. +type MessageGroupStart struct { + // Mission-unique group id (from MAV_CMD_GROUP_START). + GroupId uint32 + // CRC32 checksum of current plan for MAV_MISSION_TYPE_ALL. As defined in MISSION_CHECKSUM message. + MissionChecksum uint32 + // Timestamp (UNIX Epoch time or time since system boot). + // The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. + TimeUsec uint64 +} + +// GetID implements the msg.Message interface. +func (*MessageGroupStart) GetID() uint32 { + return 414 +} diff --git a/pkg/dialects/all/msg_gsm_link_status.go b/pkg/dialects/all/msg_gsm_link_status.go new file mode 100644 index 000000000..ac21ee801 --- /dev/null +++ b/pkg/dialects/all/msg_gsm_link_status.go @@ -0,0 +1,26 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// Status of GSM modem (connected to onboard computer) +type MessageGsmLinkStatus struct { + // Timestamp (of OBC) + Timestamp uint64 + // GSM modem used + GsmModemType GSM_MODEM_TYPE `mavenum:"uint8"` + // GSM link type + GsmLinkType GSM_LINK_TYPE `mavenum:"uint8"` + // RSSI as reported by modem (unconverted) + Rssi uint8 + // RSRP (LTE) or RSCP (WCDMA) as reported by modem (unconverted) + RsrpRscp uint8 + // SINR (LTE) or ECIO (WCDMA) as reported by modem (unconverted) + SinrEcio uint8 + // RSRQ (LTE only) as reported by modem (unconverted) + Rsrq uint8 +} + +// GetID implements the msg.Message interface. +func (*MessageGsmLinkStatus) GetID() uint32 { + return 8014 +} diff --git a/pkg/dialects/all/msg_heartbeat.go b/pkg/dialects/all/msg_heartbeat.go new file mode 100644 index 000000000..808e2e060 --- /dev/null +++ b/pkg/dialects/all/msg_heartbeat.go @@ -0,0 +1,24 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// The heartbeat message shows that a system or component is present and responding. The type and autopilot fields (along with the message component id), allow the receiving system to treat further messages from this system appropriately (e.g. by laying out the user interface based on the autopilot). This microservice is documented at https://mavlink.io/en/services/heartbeat.html +type MessageHeartbeat struct { + // Vehicle or component type. For a flight controller component the vehicle type (quadrotor, helicopter, etc.). For other components the component type (e.g. camera, gimbal, etc.). This should be used in preference to component id for identifying the component type. + Type MAV_TYPE `mavenum:"uint8"` + // Autopilot type / class. Use MAV_AUTOPILOT_INVALID for components that are not flight controllers. + Autopilot MAV_AUTOPILOT `mavenum:"uint8"` + // System mode bitmap. + BaseMode MAV_MODE_FLAG `mavenum:"uint8"` + // A bitfield for use for autopilot-specific flags + CustomMode uint32 + // System status flag. + SystemStatus MAV_STATE `mavenum:"uint8"` + // MAVLink version, not writable by user, gets added by protocol because of magic data type: uint8_t_mavlink_version + MavlinkVersion uint8 +} + +// GetID implements the msg.Message interface. +func (*MessageHeartbeat) GetID() uint32 { + return 0 +} diff --git a/pkg/dialects/all/msg_high_latency.go b/pkg/dialects/all/msg_high_latency.go new file mode 100644 index 000000000..7d66fe776 --- /dev/null +++ b/pkg/dialects/all/msg_high_latency.go @@ -0,0 +1,60 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// Message appropriate for high latency connections like Iridium +type MessageHighLatency struct { + // Bitmap of enabled system modes. + BaseMode MAV_MODE_FLAG `mavenum:"uint8"` + // A bitfield for use for autopilot-specific flags. + CustomMode uint32 + // The landed state. Is set to MAV_LANDED_STATE_UNDEFINED if landed state is unknown. + LandedState MAV_LANDED_STATE `mavenum:"uint8"` + // roll + Roll int16 + // pitch + Pitch int16 + // heading + Heading uint16 + // throttle (percentage) + Throttle int8 + // heading setpoint + HeadingSp int16 + // Latitude + Latitude int32 + // Longitude + Longitude int32 + // Altitude above mean sea level + AltitudeAmsl int16 + // Altitude setpoint relative to the home position + AltitudeSp int16 + // airspeed + Airspeed uint8 + // airspeed setpoint + AirspeedSp uint8 + // groundspeed + Groundspeed uint8 + // climb rate + ClimbRate int8 + // Number of satellites visible. If unknown, set to UINT8_MAX + GpsNsat uint8 + // GPS Fix type. + GpsFixType GPS_FIX_TYPE `mavenum:"uint8"` + // Remaining battery (percentage) + BatteryRemaining uint8 + // Autopilot temperature (degrees C) + Temperature int8 + // Air temperature (degrees C) from airspeed sensor + TemperatureAir int8 + // failsafe (each bit represents a failsafe where 0=ok, 1=failsafe active (bit0:RC, bit1:batt, bit2:GPS, bit3:GCS, bit4:fence) + Failsafe uint8 + // current waypoint number + WpNum uint8 + // distance to target + WpDistance uint16 +} + +// GetID implements the msg.Message interface. +func (*MessageHighLatency) GetID() uint32 { + return 234 +} diff --git a/pkg/dialects/all/msg_high_latency2.go b/pkg/dialects/all/msg_high_latency2.go new file mode 100644 index 000000000..b68c72828 --- /dev/null +++ b/pkg/dialects/all/msg_high_latency2.go @@ -0,0 +1,66 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// Message appropriate for high latency connections like Iridium (version 2) +type MessageHighLatency2 struct { + // Timestamp (milliseconds since boot or Unix epoch) + Timestamp uint32 + // Type of the MAV (quadrotor, helicopter, etc.) + Type MAV_TYPE `mavenum:"uint8"` + // Autopilot type / class. Use MAV_AUTOPILOT_INVALID for components that are not flight controllers. + Autopilot MAV_AUTOPILOT `mavenum:"uint8"` + // A bitfield for use for autopilot-specific flags (2 byte version). + CustomMode uint16 + // Latitude + Latitude int32 + // Longitude + Longitude int32 + // Altitude above mean sea level + Altitude int16 + // Altitude setpoint + TargetAltitude int16 + // Heading + Heading uint8 + // Heading setpoint + TargetHeading uint8 + // Distance to target waypoint or position + TargetDistance uint16 + // Throttle + Throttle uint8 + // Airspeed + Airspeed uint8 + // Airspeed setpoint + AirspeedSp uint8 + // Groundspeed + Groundspeed uint8 + // Windspeed + Windspeed uint8 + // Wind heading + WindHeading uint8 + // Maximum error horizontal position since last message + Eph uint8 + // Maximum error vertical position since last message + Epv uint8 + // Air temperature from airspeed sensor + TemperatureAir int8 + // Maximum climb rate magnitude since last message + ClimbRate int8 + // Battery level (-1 if field not provided). + Battery int8 + // Current waypoint number + WpNum uint16 + // Bitmap of failure flags. + FailureFlags HL_FAILURE_FLAG `mavenum:"uint16"` + // Field for custom payload. + Custom0 int8 + // Field for custom payload. + Custom1 int8 + // Field for custom payload. + Custom2 int8 +} + +// GetID implements the msg.Message interface. +func (*MessageHighLatency2) GetID() uint32 { + return 235 +} diff --git a/pkg/dialects/all/msg_highres_imu.go b/pkg/dialects/all/msg_highres_imu.go new file mode 100644 index 000000000..b5a66d859 --- /dev/null +++ b/pkg/dialects/all/msg_highres_imu.go @@ -0,0 +1,44 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// The IMU readings in SI units in NED body frame +type MessageHighresImu struct { + // Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. + TimeUsec uint64 + // X acceleration + Xacc float32 + // Y acceleration + Yacc float32 + // Z acceleration + Zacc float32 + // Angular speed around X axis + Xgyro float32 + // Angular speed around Y axis + Ygyro float32 + // Angular speed around Z axis + Zgyro float32 + // X Magnetic field + Xmag float32 + // Y Magnetic field + Ymag float32 + // Z Magnetic field + Zmag float32 + // Absolute pressure + AbsPressure float32 + // Differential pressure + DiffPressure float32 + // Altitude calculated from pressure + PressureAlt float32 + // Temperature + Temperature float32 + // Bitmap for fields that have updated since last message + FieldsUpdated HIGHRES_IMU_UPDATED_FLAGS `mavenum:"uint16"` + // Id. Ids are numbered from 0 and map to IMUs numbered from 1 (e.g. IMU1 will have a message with id=0) + Id uint8 `mavext:"true"` +} + +// GetID implements the msg.Message interface. +func (*MessageHighresImu) GetID() uint32 { + return 105 +} diff --git a/pkg/dialects/all/msg_hil_actuator_controls.go b/pkg/dialects/all/msg_hil_actuator_controls.go new file mode 100644 index 000000000..64dd6c0ea --- /dev/null +++ b/pkg/dialects/all/msg_hil_actuator_controls.go @@ -0,0 +1,20 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// Sent from autopilot to simulation. Hardware in the loop control outputs (replacement for HIL_CONTROLS) +type MessageHilActuatorControls struct { + // Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. + TimeUsec uint64 + // Control outputs -1 .. 1. Channel assignment depends on the simulated hardware. + Controls [16]float32 + // System mode. Includes arming state. + Mode MAV_MODE_FLAG `mavenum:"uint8"` + // Flags as bitfield, 1: indicate simulation using lockstep. + Flags uint64 +} + +// GetID implements the msg.Message interface. +func (*MessageHilActuatorControls) GetID() uint32 { + return 93 +} diff --git a/pkg/dialects/all/msg_hil_controls.go b/pkg/dialects/all/msg_hil_controls.go new file mode 100644 index 000000000..76cb7f973 --- /dev/null +++ b/pkg/dialects/all/msg_hil_controls.go @@ -0,0 +1,34 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// Sent from autopilot to simulation. Hardware in the loop control outputs +type MessageHilControls struct { + // Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. + TimeUsec uint64 + // Control output -1 .. 1 + RollAilerons float32 + // Control output -1 .. 1 + PitchElevator float32 + // Control output -1 .. 1 + YawRudder float32 + // Throttle 0 .. 1 + Throttle float32 + // Aux 1, -1 .. 1 + Aux1 float32 + // Aux 2, -1 .. 1 + Aux2 float32 + // Aux 3, -1 .. 1 + Aux3 float32 + // Aux 4, -1 .. 1 + Aux4 float32 + // System mode. + Mode MAV_MODE `mavenum:"uint8"` + // Navigation mode (MAV_NAV_MODE) + NavMode uint8 +} + +// GetID implements the msg.Message interface. +func (*MessageHilControls) GetID() uint32 { + return 91 +} diff --git a/pkg/dialects/all/msg_hil_gps.go b/pkg/dialects/all/msg_hil_gps.go new file mode 100644 index 000000000..a03c30ac6 --- /dev/null +++ b/pkg/dialects/all/msg_hil_gps.go @@ -0,0 +1,43 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// The global position, as returned by the Global Positioning System (GPS). This is +// NOT the global position estimate of the sytem, but rather a RAW sensor value. See message GLOBAL_POSITION_INT for the global position estimate. +type MessageHilGps struct { + // Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. + TimeUsec uint64 + // 0-1: no fix, 2: 2D fix, 3: 3D fix. Some applications will not use the value of this field unless it is at least two, so always correctly fill in the fix. + FixType uint8 + // Latitude (WGS84) + Lat int32 + // Longitude (WGS84) + Lon int32 + // Altitude (MSL). Positive for up. + Alt int32 + // GPS HDOP horizontal dilution of position (unitless * 100). If unknown, set to: UINT16_MAX + Eph uint16 + // GPS VDOP vertical dilution of position (unitless * 100). If unknown, set to: UINT16_MAX + Epv uint16 + // GPS ground speed. If unknown, set to: UINT16_MAX + Vel uint16 + // GPS velocity in north direction in earth-fixed NED frame + Vn int16 + // GPS velocity in east direction in earth-fixed NED frame + Ve int16 + // GPS velocity in down direction in earth-fixed NED frame + Vd int16 + // Course over ground (NOT heading, but direction of movement), 0.0..359.99 degrees. If unknown, set to: UINT16_MAX + Cog uint16 + // Number of satellites visible. If unknown, set to UINT8_MAX + SatellitesVisible uint8 + // GPS ID (zero indexed). Used for multiple GPS inputs + Id uint8 `mavext:"true"` + // Yaw of vehicle relative to Earth's North, zero means not available, use 36000 for north + Yaw uint16 `mavext:"true"` +} + +// GetID implements the msg.Message interface. +func (*MessageHilGps) GetID() uint32 { + return 113 +} diff --git a/pkg/dialects/all/msg_hil_optical_flow.go b/pkg/dialects/all/msg_hil_optical_flow.go new file mode 100644 index 000000000..6deb35899 --- /dev/null +++ b/pkg/dialects/all/msg_hil_optical_flow.go @@ -0,0 +1,36 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// Simulated optical flow from a flow sensor (e.g. PX4FLOW or optical mouse sensor) +type MessageHilOpticalFlow struct { + // Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. + TimeUsec uint64 + // Sensor ID + SensorId uint8 + // Integration time. Divide integrated_x and integrated_y by the integration time to obtain average flow. The integration time also indicates the. + IntegrationTimeUs uint32 + // Flow in radians around X axis (Sensor RH rotation about the X axis induces a positive flow. Sensor linear motion along the positive Y axis induces a negative flow.) + IntegratedX float32 + // Flow in radians around Y axis (Sensor RH rotation about the Y axis induces a positive flow. Sensor linear motion along the positive X axis induces a positive flow.) + IntegratedY float32 + // RH rotation around X axis + IntegratedXgyro float32 + // RH rotation around Y axis + IntegratedYgyro float32 + // RH rotation around Z axis + IntegratedZgyro float32 + // Temperature + Temperature int16 + // Optical flow quality / confidence. 0: no valid flow, 255: maximum quality + Quality uint8 + // Time since the distance was sampled. + TimeDeltaDistanceUs uint32 + // Distance to the center of the flow field. Positive value (including zero): distance known. Negative value: Unknown distance. + Distance float32 +} + +// GetID implements the msg.Message interface. +func (*MessageHilOpticalFlow) GetID() uint32 { + return 114 +} diff --git a/pkg/dialects/all/msg_hil_rc_inputs_raw.go b/pkg/dialects/all/msg_hil_rc_inputs_raw.go new file mode 100644 index 000000000..a86c00ddf --- /dev/null +++ b/pkg/dialects/all/msg_hil_rc_inputs_raw.go @@ -0,0 +1,40 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// Sent from simulation to autopilot. The RAW values of the RC channels received. The standard PPM modulation is as follows: 1000 microseconds: 0%, 2000 microseconds: 100%. Individual receivers/transmitters might violate this specification. +type MessageHilRcInputsRaw struct { + // Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. + TimeUsec uint64 + // RC channel 1 value + Chan1Raw uint16 + // RC channel 2 value + Chan2Raw uint16 + // RC channel 3 value + Chan3Raw uint16 + // RC channel 4 value + Chan4Raw uint16 + // RC channel 5 value + Chan5Raw uint16 + // RC channel 6 value + Chan6Raw uint16 + // RC channel 7 value + Chan7Raw uint16 + // RC channel 8 value + Chan8Raw uint16 + // RC channel 9 value + Chan9Raw uint16 + // RC channel 10 value + Chan10Raw uint16 + // RC channel 11 value + Chan11Raw uint16 + // RC channel 12 value + Chan12Raw uint16 + // Receive signal strength indicator in device-dependent units/scale. Values: [0-254], UINT8_MAX: invalid/unknown. + Rssi uint8 +} + +// GetID implements the msg.Message interface. +func (*MessageHilRcInputsRaw) GetID() uint32 { + return 92 +} diff --git a/pkg/dialects/all/msg_hil_sensor.go b/pkg/dialects/all/msg_hil_sensor.go new file mode 100644 index 000000000..3a9b27a27 --- /dev/null +++ b/pkg/dialects/all/msg_hil_sensor.go @@ -0,0 +1,44 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// The IMU readings in SI units in NED body frame +type MessageHilSensor struct { + // Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. + TimeUsec uint64 + // X acceleration + Xacc float32 + // Y acceleration + Yacc float32 + // Z acceleration + Zacc float32 + // Angular speed around X axis in body frame + Xgyro float32 + // Angular speed around Y axis in body frame + Ygyro float32 + // Angular speed around Z axis in body frame + Zgyro float32 + // X Magnetic field + Xmag float32 + // Y Magnetic field + Ymag float32 + // Z Magnetic field + Zmag float32 + // Absolute pressure + AbsPressure float32 + // Differential pressure (airspeed) + DiffPressure float32 + // Altitude calculated from pressure + PressureAlt float32 + // Temperature + Temperature float32 + // Bitmap for fields that have updated since last message + FieldsUpdated HIL_SENSOR_UPDATED_FLAGS `mavenum:"uint32"` + // Sensor ID (zero indexed). Used for multiple sensor inputs + Id uint8 `mavext:"true"` +} + +// GetID implements the msg.Message interface. +func (*MessageHilSensor) GetID() uint32 { + return 107 +} diff --git a/pkg/dialects/all/msg_hil_state.go b/pkg/dialects/all/msg_hil_state.go new file mode 100644 index 000000000..efcd76441 --- /dev/null +++ b/pkg/dialects/all/msg_hil_state.go @@ -0,0 +1,44 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// Sent from simulation to autopilot. This packet is useful for high throughput applications such as hardware in the loop simulations. +type MessageHilState struct { + // Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. + TimeUsec uint64 + // Roll angle + Roll float32 + // Pitch angle + Pitch float32 + // Yaw angle + Yaw float32 + // Body frame roll / phi angular speed + Rollspeed float32 + // Body frame pitch / theta angular speed + Pitchspeed float32 + // Body frame yaw / psi angular speed + Yawspeed float32 + // Latitude + Lat int32 + // Longitude + Lon int32 + // Altitude + Alt int32 + // Ground X Speed (Latitude) + Vx int16 + // Ground Y Speed (Longitude) + Vy int16 + // Ground Z Speed (Altitude) + Vz int16 + // X acceleration + Xacc int16 + // Y acceleration + Yacc int16 + // Z acceleration + Zacc int16 +} + +// GetID implements the msg.Message interface. +func (*MessageHilState) GetID() uint32 { + return 90 +} diff --git a/pkg/dialects/all/msg_hil_state_quaternion.go b/pkg/dialects/all/msg_hil_state_quaternion.go new file mode 100644 index 000000000..2973425ee --- /dev/null +++ b/pkg/dialects/all/msg_hil_state_quaternion.go @@ -0,0 +1,44 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// Sent from simulation to autopilot, avoids in contrast to HIL_STATE singularities. This packet is useful for high throughput applications such as hardware in the loop simulations. +type MessageHilStateQuaternion struct { + // Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. + TimeUsec uint64 + // Vehicle attitude expressed as normalized quaternion in w, x, y, z order (with 1 0 0 0 being the null-rotation) + AttitudeQuaternion [4]float32 + // Body frame roll / phi angular speed + Rollspeed float32 + // Body frame pitch / theta angular speed + Pitchspeed float32 + // Body frame yaw / psi angular speed + Yawspeed float32 + // Latitude + Lat int32 + // Longitude + Lon int32 + // Altitude + Alt int32 + // Ground X Speed (Latitude) + Vx int16 + // Ground Y Speed (Longitude) + Vy int16 + // Ground Z Speed (Altitude) + Vz int16 + // Indicated airspeed + IndAirspeed uint16 + // True airspeed + TrueAirspeed uint16 + // X acceleration + Xacc int16 + // Y acceleration + Yacc int16 + // Z acceleration + Zacc int16 +} + +// GetID implements the msg.Message interface. +func (*MessageHilStateQuaternion) GetID() uint32 { + return 115 +} diff --git a/pkg/dialects/all/msg_home_position.go b/pkg/dialects/all/msg_home_position.go new file mode 100644 index 000000000..62e6d4164 --- /dev/null +++ b/pkg/dialects/all/msg_home_position.go @@ -0,0 +1,34 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// This message can be requested by sending the MAV_CMD_GET_HOME_POSITION command. The position the system will return to and land on. The position is set automatically by the system during the takeoff in case it was not explicitly set by the operator before or after. The global and local positions encode the position in the respective coordinate frames, while the q parameter encodes the orientation of the surface. Under normal conditions it describes the heading and terrain slope, which can be used by the aircraft to adjust the approach. The approach 3D vector describes the point to which the system should fly in normal flight mode and then perform a landing sequence along the vector. +type MessageHomePosition struct { + // Latitude (WGS84) + Latitude int32 + // Longitude (WGS84) + Longitude int32 + // Altitude (MSL). Positive for up. + Altitude int32 + // Local X position of this position in the local coordinate frame + X float32 + // Local Y position of this position in the local coordinate frame + Y float32 + // Local Z position of this position in the local coordinate frame + Z float32 + // World to surface normal and heading transformation of the takeoff position. Used to indicate the heading and slope of the ground + Q [4]float32 + // Local X position of the end of the approach vector. Multicopters should set this position based on their takeoff path. Grass-landing fixed wing aircraft should set it the same way as multicopters. Runway-landing fixed wing aircraft should set it to the opposite direction of the takeoff, assuming the takeoff happened from the threshold / touchdown zone. + ApproachX float32 + // Local Y position of the end of the approach vector. Multicopters should set this position based on their takeoff path. Grass-landing fixed wing aircraft should set it the same way as multicopters. Runway-landing fixed wing aircraft should set it to the opposite direction of the takeoff, assuming the takeoff happened from the threshold / touchdown zone. + ApproachY float32 + // Local Z position of the end of the approach vector. Multicopters should set this position based on their takeoff path. Grass-landing fixed wing aircraft should set it the same way as multicopters. Runway-landing fixed wing aircraft should set it to the opposite direction of the takeoff, assuming the takeoff happened from the threshold / touchdown zone. + ApproachZ float32 + // Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. + TimeUsec uint64 `mavext:"true"` +} + +// GetID implements the msg.Message interface. +func (*MessageHomePosition) GetID() uint32 { + return 242 +} diff --git a/pkg/dialects/all/msg_hwstatus.go b/pkg/dialects/all/msg_hwstatus.go new file mode 100644 index 000000000..1bc147bfc --- /dev/null +++ b/pkg/dialects/all/msg_hwstatus.go @@ -0,0 +1,16 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// Status of key hardware. +type MessageHwstatus struct { + // Board voltage. + Vcc uint16 `mavname:"Vcc"` + // I2C error count. + I2cerr uint8 `mavname:"I2Cerr"` +} + +// GetID implements the msg.Message interface. +func (*MessageHwstatus) GetID() uint32 { + return 165 +} diff --git a/pkg/dialects/all/msg_hygrometer_sensor.go b/pkg/dialects/all/msg_hygrometer_sensor.go new file mode 100644 index 000000000..6804a17d7 --- /dev/null +++ b/pkg/dialects/all/msg_hygrometer_sensor.go @@ -0,0 +1,18 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// Temperature and humidity from hygrometer. +type MessageHygrometerSensor struct { + // Hygrometer ID + Id uint8 + // Temperature + Temperature int16 + // Humidity + Humidity uint16 +} + +// GetID implements the msg.Message interface. +func (*MessageHygrometerSensor) GetID() uint32 { + return 12920 +} diff --git a/pkg/dialects/all/msg_icarous_heartbeat.go b/pkg/dialects/all/msg_icarous_heartbeat.go new file mode 100644 index 000000000..eece4d16d --- /dev/null +++ b/pkg/dialects/all/msg_icarous_heartbeat.go @@ -0,0 +1,14 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// ICAROUS heartbeat +type MessageIcarousHeartbeat struct { + // See the FMS_STATE enum. + Status ICAROUS_FMS_STATE `mavenum:"uint8"` +} + +// GetID implements the msg.Message interface. +func (*MessageIcarousHeartbeat) GetID() uint32 { + return 42000 +} diff --git a/pkg/dialects/all/msg_icarous_kinematic_bands.go b/pkg/dialects/all/msg_icarous_kinematic_bands.go new file mode 100644 index 000000000..6cab9c718 --- /dev/null +++ b/pkg/dialects/all/msg_icarous_kinematic_bands.go @@ -0,0 +1,44 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// Kinematic multi bands (track) output from Daidalus +type MessageIcarousKinematicBands struct { + // Number of track bands + Numbands int8 `mavname:"numBands"` + // See the TRACK_BAND_TYPES enum. + Type1 ICAROUS_TRACK_BAND_TYPES `mavenum:"uint8"` + // min angle (degrees) + Min1 float32 + // max angle (degrees) + Max1 float32 + // See the TRACK_BAND_TYPES enum. + Type2 ICAROUS_TRACK_BAND_TYPES `mavenum:"uint8"` + // min angle (degrees) + Min2 float32 + // max angle (degrees) + Max2 float32 + // See the TRACK_BAND_TYPES enum. + Type3 ICAROUS_TRACK_BAND_TYPES `mavenum:"uint8"` + // min angle (degrees) + Min3 float32 + // max angle (degrees) + Max3 float32 + // See the TRACK_BAND_TYPES enum. + Type4 ICAROUS_TRACK_BAND_TYPES `mavenum:"uint8"` + // min angle (degrees) + Min4 float32 + // max angle (degrees) + Max4 float32 + // See the TRACK_BAND_TYPES enum. + Type5 ICAROUS_TRACK_BAND_TYPES `mavenum:"uint8"` + // min angle (degrees) + Min5 float32 + // max angle (degrees) + Max5 float32 +} + +// GetID implements the msg.Message interface. +func (*MessageIcarousKinematicBands) GetID() uint32 { + return 42001 +} diff --git a/pkg/dialects/all/msg_isbd_link_status.go b/pkg/dialects/all/msg_isbd_link_status.go new file mode 100644 index 000000000..a285c001f --- /dev/null +++ b/pkg/dialects/all/msg_isbd_link_status.go @@ -0,0 +1,28 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// Status of the Iridium SBD link. +type MessageIsbdLinkStatus struct { + // Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. + Timestamp uint64 + // Timestamp of the last successful sbd session. The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. + LastHeartbeat uint64 + // Number of failed SBD sessions. + FailedSessions uint16 + // Number of successful SBD sessions. + SuccessfulSessions uint16 + // Signal quality equal to the number of bars displayed on the ISU signal strength indicator. Range is 0 to 5, where 0 indicates no signal and 5 indicates maximum signal strength. + SignalQuality uint8 + // 1: Ring call pending, 0: No call pending. + RingPending uint8 + // 1: Transmission session pending, 0: No transmission session pending. + TxSessionPending uint8 + // 1: Receiving session pending, 0: No receiving session pending. + RxSessionPending uint8 +} + +// GetID implements the msg.Message interface. +func (*MessageIsbdLinkStatus) GetID() uint32 { + return 335 +} diff --git a/pkg/dialects/all/msg_landing_target.go b/pkg/dialects/all/msg_landing_target.go new file mode 100644 index 000000000..5988ba450 --- /dev/null +++ b/pkg/dialects/all/msg_landing_target.go @@ -0,0 +1,40 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// The location of a landing target. See: https://mavlink.io/en/services/landing_target.html +type MessageLandingTarget struct { + // Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. + TimeUsec uint64 + // The ID of the target if multiple targets are present + TargetNum uint8 + // Coordinate frame used for following fields. + Frame MAV_FRAME `mavenum:"uint8"` + // X-axis angular offset of the target from the center of the image + AngleX float32 + // Y-axis angular offset of the target from the center of the image + AngleY float32 + // Distance to the target from the vehicle + Distance float32 + // Size of target along x-axis + SizeX float32 + // Size of target along y-axis + SizeY float32 + // X Position of the landing target in MAV_FRAME + X float32 `mavext:"true"` + // Y Position of the landing target in MAV_FRAME + Y float32 `mavext:"true"` + // Z Position of the landing target in MAV_FRAME + Z float32 `mavext:"true"` + // Quaternion of landing target orientation (w, x, y, z order, zero-rotation is 1, 0, 0, 0) + Q [4]float32 `mavext:"true"` + // Type of landing target + Type LANDING_TARGET_TYPE `mavenum:"uint8" mavext:"true"` + // Boolean indicating whether the position fields (x, y, z, q, type) contain valid target position information (valid: 1, invalid: 0). Default is 0 (invalid). + PositionValid uint8 `mavext:"true"` +} + +// GetID implements the msg.Message interface. +func (*MessageLandingTarget) GetID() uint32 { + return 149 +} diff --git a/pkg/dialects/all/msg_led_control.go b/pkg/dialects/all/msg_led_control.go new file mode 100644 index 000000000..75c1c2e76 --- /dev/null +++ b/pkg/dialects/all/msg_led_control.go @@ -0,0 +1,24 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// Control vehicle LEDs. +type MessageLedControl struct { + // System ID. + TargetSystem uint8 + // Component ID. + TargetComponent uint8 + // Instance (LED instance to control or 255 for all LEDs). + Instance uint8 + // Pattern (see LED_PATTERN_ENUM). + Pattern uint8 + // Custom Byte Length. + CustomLen uint8 + // Custom Bytes. + CustomBytes [24]uint8 +} + +// GetID implements the msg.Message interface. +func (*MessageLedControl) GetID() uint32 { + return 186 +} diff --git a/pkg/dialects/all/msg_limits_status.go b/pkg/dialects/all/msg_limits_status.go new file mode 100644 index 000000000..f9d6ce6cc --- /dev/null +++ b/pkg/dialects/all/msg_limits_status.go @@ -0,0 +1,30 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// Status of AP_Limits. Sent in extended status stream when AP_Limits is enabled. +type MessageLimitsStatus struct { + // State of AP_Limits. + LimitsState LIMITS_STATE `mavenum:"uint8"` + // Time (since boot) of last breach. + LastTrigger uint32 + // Time (since boot) of last recovery action. + LastAction uint32 + // Time (since boot) of last successful recovery. + LastRecovery uint32 + // Time (since boot) of last all-clear. + LastClear uint32 + // Number of fence breaches. + BreachCount uint16 + // AP_Limit_Module bitfield of enabled modules. + ModsEnabled LIMIT_MODULE `mavenum:"uint8"` + // AP_Limit_Module bitfield of required modules. + ModsRequired LIMIT_MODULE `mavenum:"uint8"` + // AP_Limit_Module bitfield of triggered modules. + ModsTriggered LIMIT_MODULE `mavenum:"uint8"` +} + +// GetID implements the msg.Message interface. +func (*MessageLimitsStatus) GetID() uint32 { + return 167 +} diff --git a/pkg/dialects/all/msg_link_node_status.go b/pkg/dialects/all/msg_link_node_status.go new file mode 100644 index 000000000..180046c81 --- /dev/null +++ b/pkg/dialects/all/msg_link_node_status.go @@ -0,0 +1,34 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// Status generated in each node in the communication chain and injected into MAVLink stream. +type MessageLinkNodeStatus struct { + // Timestamp (time since system boot). + Timestamp uint64 + // Remaining free transmit buffer space + TxBuf uint8 + // Remaining free receive buffer space + RxBuf uint8 + // Transmit rate + TxRate uint32 + // Receive rate + RxRate uint32 + // Number of bytes that could not be parsed correctly. + RxParseErr uint16 + // Transmit buffer overflows. This number wraps around as it reaches UINT16_MAX + TxOverflows uint16 + // Receive buffer overflows. This number wraps around as it reaches UINT16_MAX + RxOverflows uint16 + // Messages sent + MessagesSent uint32 + // Messages received (estimated from counting seq) + MessagesReceived uint32 + // Messages lost (estimated from counting seq) + MessagesLost uint32 +} + +// GetID implements the msg.Message interface. +func (*MessageLinkNodeStatus) GetID() uint32 { + return 8 +} diff --git a/pkg/dialects/all/msg_local_position_ned.go b/pkg/dialects/all/msg_local_position_ned.go new file mode 100644 index 000000000..8cdaacb7e --- /dev/null +++ b/pkg/dialects/all/msg_local_position_ned.go @@ -0,0 +1,26 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// The filtered local position (e.g. fused computer vision and accelerometers). Coordinate frame is right-handed, Z-axis down (aeronautical frame, NED / north-east-down convention) +type MessageLocalPositionNed struct { + // Timestamp (time since system boot). + TimeBootMs uint32 + // X Position + X float32 + // Y Position + Y float32 + // Z Position + Z float32 + // X Speed + Vx float32 + // Y Speed + Vy float32 + // Z Speed + Vz float32 +} + +// GetID implements the msg.Message interface. +func (*MessageLocalPositionNed) GetID() uint32 { + return 32 +} diff --git a/pkg/dialects/all/msg_local_position_ned_cov.go b/pkg/dialects/all/msg_local_position_ned_cov.go new file mode 100644 index 000000000..c62fe40b1 --- /dev/null +++ b/pkg/dialects/all/msg_local_position_ned_cov.go @@ -0,0 +1,36 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// The filtered local position (e.g. fused computer vision and accelerometers). Coordinate frame is right-handed, Z-axis down (aeronautical frame, NED / north-east-down convention) +type MessageLocalPositionNedCov struct { + // Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. + TimeUsec uint64 + // Class id of the estimator this estimate originated from. + EstimatorType MAV_ESTIMATOR_TYPE `mavenum:"uint8"` + // X Position + X float32 + // Y Position + Y float32 + // Z Position + Z float32 + // X Speed + Vx float32 + // Y Speed + Vy float32 + // Z Speed + Vz float32 + // X Acceleration + Ax float32 + // Y Acceleration + Ay float32 + // Z Acceleration + Az float32 + // Row-major representation of position, velocity and acceleration 9x9 cross-covariance matrix upper right triangle (states: x, y, z, vx, vy, vz, ax, ay, az; first nine entries are the first ROW, next eight entries are the second row, etc.). If unknown, assign NaN value to first element in the array. + Covariance [45]float32 +} + +// GetID implements the msg.Message interface. +func (*MessageLocalPositionNedCov) GetID() uint32 { + return 64 +} diff --git a/pkg/dialects/all/msg_local_position_ned_system_global_offset.go b/pkg/dialects/all/msg_local_position_ned_system_global_offset.go new file mode 100644 index 000000000..0b724c921 --- /dev/null +++ b/pkg/dialects/all/msg_local_position_ned_system_global_offset.go @@ -0,0 +1,26 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// The offset in X, Y, Z and yaw between the LOCAL_POSITION_NED messages of MAV X and the global coordinate frame in NED coordinates. Coordinate frame is right-handed, Z-axis down (aeronautical frame, NED / north-east-down convention) +type MessageLocalPositionNedSystemGlobalOffset struct { + // Timestamp (time since system boot). + TimeBootMs uint32 + // X Position + X float32 + // Y Position + Y float32 + // Z Position + Z float32 + // Roll + Roll float32 + // Pitch + Pitch float32 + // Yaw + Yaw float32 +} + +// GetID implements the msg.Message interface. +func (*MessageLocalPositionNedSystemGlobalOffset) GetID() uint32 { + return 89 +} diff --git a/pkg/dialects/all/msg_log_data.go b/pkg/dialects/all/msg_log_data.go new file mode 100644 index 000000000..fc8716473 --- /dev/null +++ b/pkg/dialects/all/msg_log_data.go @@ -0,0 +1,20 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// Reply to LOG_REQUEST_DATA +type MessageLogData struct { + // Log id (from LOG_ENTRY reply) + Id uint16 + // Offset into the log + Ofs uint32 + // Number of bytes (zero for end of log) + Count uint8 + // log data + Data [90]uint8 +} + +// GetID implements the msg.Message interface. +func (*MessageLogData) GetID() uint32 { + return 120 +} diff --git a/pkg/dialects/all/msg_log_entry.go b/pkg/dialects/all/msg_log_entry.go new file mode 100644 index 000000000..0f4f4c705 --- /dev/null +++ b/pkg/dialects/all/msg_log_entry.go @@ -0,0 +1,22 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// Reply to LOG_REQUEST_LIST +type MessageLogEntry struct { + // Log id + Id uint16 + // Total number of logs + NumLogs uint16 + // High log number + LastLogNum uint16 + // UTC timestamp of log since 1970, or 0 if not available + TimeUtc uint32 + // Size of the log (may be approximate) + Size uint32 +} + +// GetID implements the msg.Message interface. +func (*MessageLogEntry) GetID() uint32 { + return 118 +} diff --git a/pkg/dialects/all/msg_log_erase.go b/pkg/dialects/all/msg_log_erase.go new file mode 100644 index 000000000..a253a902b --- /dev/null +++ b/pkg/dialects/all/msg_log_erase.go @@ -0,0 +1,16 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// Erase all logs +type MessageLogErase struct { + // System ID + TargetSystem uint8 + // Component ID + TargetComponent uint8 +} + +// GetID implements the msg.Message interface. +func (*MessageLogErase) GetID() uint32 { + return 121 +} diff --git a/pkg/dialects/all/msg_log_request_data.go b/pkg/dialects/all/msg_log_request_data.go new file mode 100644 index 000000000..e4e6a7171 --- /dev/null +++ b/pkg/dialects/all/msg_log_request_data.go @@ -0,0 +1,22 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// Request a chunk of a log +type MessageLogRequestData struct { + // System ID + TargetSystem uint8 + // Component ID + TargetComponent uint8 + // Log id (from LOG_ENTRY reply) + Id uint16 + // Offset into the log + Ofs uint32 + // Number of bytes + Count uint32 +} + +// GetID implements the msg.Message interface. +func (*MessageLogRequestData) GetID() uint32 { + return 119 +} diff --git a/pkg/dialects/all/msg_log_request_end.go b/pkg/dialects/all/msg_log_request_end.go new file mode 100644 index 000000000..909f08bab --- /dev/null +++ b/pkg/dialects/all/msg_log_request_end.go @@ -0,0 +1,16 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// Stop log transfer and resume normal logging +type MessageLogRequestEnd struct { + // System ID + TargetSystem uint8 + // Component ID + TargetComponent uint8 +} + +// GetID implements the msg.Message interface. +func (*MessageLogRequestEnd) GetID() uint32 { + return 122 +} diff --git a/pkg/dialects/all/msg_log_request_list.go b/pkg/dialects/all/msg_log_request_list.go new file mode 100644 index 000000000..1bd0aeaf3 --- /dev/null +++ b/pkg/dialects/all/msg_log_request_list.go @@ -0,0 +1,20 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// Request a list of available logs. On some systems calling this may stop on-board logging until LOG_REQUEST_END is called. If there are no log files available this request shall be answered with one LOG_ENTRY message with id = 0 and num_logs = 0. +type MessageLogRequestList struct { + // System ID + TargetSystem uint8 + // Component ID + TargetComponent uint8 + // First log id (0 for first available) + Start uint16 + // Last log id (0xffff for last available) + End uint16 +} + +// GetID implements the msg.Message interface. +func (*MessageLogRequestList) GetID() uint32 { + return 117 +} diff --git a/pkg/dialects/all/msg_logging_ack.go b/pkg/dialects/all/msg_logging_ack.go new file mode 100644 index 000000000..44caeb73c --- /dev/null +++ b/pkg/dialects/all/msg_logging_ack.go @@ -0,0 +1,18 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// An ack for a LOGGING_DATA_ACKED message +type MessageLoggingAck struct { + // system ID of the target + TargetSystem uint8 + // component ID of the target + TargetComponent uint8 + // sequence number (must match the one in LOGGING_DATA_ACKED) + Sequence uint16 +} + +// GetID implements the msg.Message interface. +func (*MessageLoggingAck) GetID() uint32 { + return 268 +} diff --git a/pkg/dialects/all/msg_logging_data.go b/pkg/dialects/all/msg_logging_data.go new file mode 100644 index 000000000..f727e20d3 --- /dev/null +++ b/pkg/dialects/all/msg_logging_data.go @@ -0,0 +1,24 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// A message containing logged data (see also MAV_CMD_LOGGING_START) +type MessageLoggingData struct { + // system ID of the target + TargetSystem uint8 + // component ID of the target + TargetComponent uint8 + // sequence number (can wrap) + Sequence uint16 + // data length + Length uint8 + // offset into data where first message starts. This can be used for recovery, when a previous message got lost (set to UINT8_MAX if no start exists). + FirstMessageOffset uint8 + // logged data + Data [249]uint8 +} + +// GetID implements the msg.Message interface. +func (*MessageLoggingData) GetID() uint32 { + return 266 +} diff --git a/pkg/dialects/all/msg_logging_data_acked.go b/pkg/dialects/all/msg_logging_data_acked.go new file mode 100644 index 000000000..f19784b0e --- /dev/null +++ b/pkg/dialects/all/msg_logging_data_acked.go @@ -0,0 +1,24 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// A message containing logged data which requires a LOGGING_ACK to be sent back +type MessageLoggingDataAcked struct { + // system ID of the target + TargetSystem uint8 + // component ID of the target + TargetComponent uint8 + // sequence number (can wrap) + Sequence uint16 + // data length + Length uint8 + // offset into data where first message starts. This can be used for recovery, when a previous message got lost (set to UINT8_MAX if no start exists). + FirstMessageOffset uint8 + // logged data + Data [249]uint8 +} + +// GetID implements the msg.Message interface. +func (*MessageLoggingDataAcked) GetID() uint32 { + return 267 +} diff --git a/pkg/dialects/all/msg_mag_cal_progress.go b/pkg/dialects/all/msg_mag_cal_progress.go new file mode 100644 index 000000000..7e6206bdf --- /dev/null +++ b/pkg/dialects/all/msg_mag_cal_progress.go @@ -0,0 +1,30 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// Reports progress of compass calibration. +type MessageMagCalProgress struct { + // Compass being calibrated. + CompassId uint8 + // Bitmask of compasses being calibrated. + CalMask uint8 + // Calibration Status. + CalStatus MAG_CAL_STATUS `mavenum:"uint8"` + // Attempt number. + Attempt uint8 + // Completion percentage. + CompletionPct uint8 + // Bitmask of sphere sections (see http://en.wikipedia.org/wiki/Geodesic_grid). + CompletionMask [10]uint8 + // Body frame direction vector for display. + DirectionX float32 + // Body frame direction vector for display. + DirectionY float32 + // Body frame direction vector for display. + DirectionZ float32 +} + +// GetID implements the msg.Message interface. +func (*MessageMagCalProgress) GetID() uint32 { + return 191 +} diff --git a/pkg/dialects/all/msg_mag_cal_report.go b/pkg/dialects/all/msg_mag_cal_report.go new file mode 100644 index 000000000..e204ffdfc --- /dev/null +++ b/pkg/dialects/all/msg_mag_cal_report.go @@ -0,0 +1,48 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// Reports results of completed compass calibration. Sent until MAG_CAL_ACK received. +type MessageMagCalReport struct { + // Compass being calibrated. + CompassId uint8 + // Bitmask of compasses being calibrated. + CalMask uint8 + // Calibration Status. + CalStatus MAG_CAL_STATUS `mavenum:"uint8"` + // 0=requires a MAV_CMD_DO_ACCEPT_MAG_CAL, 1=saved to parameters. + Autosaved uint8 + // RMS milligauss residuals. + Fitness float32 + // X offset. + OfsX float32 + // Y offset. + OfsY float32 + // Z offset. + OfsZ float32 + // X diagonal (matrix 11). + DiagX float32 + // Y diagonal (matrix 22). + DiagY float32 + // Z diagonal (matrix 33). + DiagZ float32 + // X off-diagonal (matrix 12 and 21). + OffdiagX float32 + // Y off-diagonal (matrix 13 and 31). + OffdiagY float32 + // Z off-diagonal (matrix 32 and 23). + OffdiagZ float32 + // Confidence in orientation (higher is better). + OrientationConfidence float32 `mavext:"true"` + // orientation before calibration. + OldOrientation MAV_SENSOR_ORIENTATION `mavenum:"uint8" mavext:"true"` + // orientation after calibration. + NewOrientation MAV_SENSOR_ORIENTATION `mavenum:"uint8" mavext:"true"` + // field radius correction factor + ScaleFactor float32 `mavext:"true"` +} + +// GetID implements the msg.Message interface. +func (*MessageMagCalReport) GetID() uint32 { + return 192 +} diff --git a/pkg/dialects/all/msg_manual_control.go b/pkg/dialects/all/msg_manual_control.go new file mode 100644 index 000000000..4cf15cdbb --- /dev/null +++ b/pkg/dialects/all/msg_manual_control.go @@ -0,0 +1,32 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// This message provides an API for manually controlling the vehicle using standard joystick axes nomenclature, along with a joystick-like input device. Unused axes can be disabled and buttons states are transmitted as individual on/off bits of a bitmask +type MessageManualControl struct { + // The system to be controlled. + Target uint8 + // X-axis, normalized to the range [-1000,1000]. A value of INT16_MAX indicates that this axis is invalid. Generally corresponds to forward(1000)-backward(-1000) movement on a joystick and the pitch of a vehicle. + X int16 + // Y-axis, normalized to the range [-1000,1000]. A value of INT16_MAX indicates that this axis is invalid. Generally corresponds to left(-1000)-right(1000) movement on a joystick and the roll of a vehicle. + Y int16 + // Z-axis, normalized to the range [-1000,1000]. A value of INT16_MAX indicates that this axis is invalid. Generally corresponds to a separate slider movement with maximum being 1000 and minimum being -1000 on a joystick and the thrust of a vehicle. Positive values are positive thrust, negative values are negative thrust. + Z int16 + // R-axis, normalized to the range [-1000,1000]. A value of INT16_MAX indicates that this axis is invalid. Generally corresponds to a twisting of the joystick, with counter-clockwise being 1000 and clockwise being -1000, and the yaw of a vehicle. + R int16 + // A bitfield corresponding to the joystick buttons' 0-15 current state, 1 for pressed, 0 for released. The lowest bit corresponds to Button 1. + Buttons uint16 + // A bitfield corresponding to the joystick buttons' 16-31 current state, 1 for pressed, 0 for released. The lowest bit corresponds to Button 16. + Buttons2 uint16 `mavext:"true"` + // Set bits to 1 to indicate which of the following extension fields contain valid data: bit 0: pitch, bit 1: roll. + EnabledExtensions uint8 `mavext:"true"` + // Pitch-only-axis, normalized to the range [-1000,1000]. Generally corresponds to pitch on vehicles with additional degrees of freedom. Valid if bit 0 of enabled_extensions field is set. Set to 0 if invalid. + S int16 `mavext:"true"` + // Roll-only-axis, normalized to the range [-1000,1000]. Generally corresponds to roll on vehicles with additional degrees of freedom. Valid if bit 1 of enabled_extensions field is set. Set to 0 if invalid. + T int16 `mavext:"true"` +} + +// GetID implements the msg.Message interface. +func (*MessageManualControl) GetID() uint32 { + return 69 +} diff --git a/pkg/dialects/all/msg_manual_setpoint.go b/pkg/dialects/all/msg_manual_setpoint.go new file mode 100644 index 000000000..a9f37eed7 --- /dev/null +++ b/pkg/dialects/all/msg_manual_setpoint.go @@ -0,0 +1,26 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// Setpoint in roll, pitch, yaw and thrust from the operator +type MessageManualSetpoint struct { + // Timestamp (time since system boot). + TimeBootMs uint32 + // Desired roll rate + Roll float32 + // Desired pitch rate + Pitch float32 + // Desired yaw rate + Yaw float32 + // Collective thrust, normalized to 0 .. 1 + Thrust float32 + // Flight mode switch position, 0.. 255 + ModeSwitch uint8 + // Override mode switch position, 0.. 255 + ManualOverrideSwitch uint8 +} + +// GetID implements the msg.Message interface. +func (*MessageManualSetpoint) GetID() uint32 { + return 81 +} diff --git a/pkg/dialects/all/msg_mcu_status.go b/pkg/dialects/all/msg_mcu_status.go new file mode 100644 index 000000000..ae2cc38e7 --- /dev/null +++ b/pkg/dialects/all/msg_mcu_status.go @@ -0,0 +1,22 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// The MCU status, giving MCU temperature and voltage. The min and max voltages are to allow for detecting power supply instability. +type MessageMcuStatus struct { + // MCU instance + Id uint8 + // MCU Internal temperature + McuTemperature int16 `mavname:"MCU_temperature"` + // MCU voltage + McuVoltage uint16 `mavname:"MCU_voltage"` + // MCU voltage minimum + McuVoltageMin uint16 `mavname:"MCU_voltage_min"` + // MCU voltage maximum + McuVoltageMax uint16 `mavname:"MCU_voltage_max"` +} + +// GetID implements the msg.Message interface. +func (*MessageMcuStatus) GetID() uint32 { + return 11039 +} diff --git a/pkg/dialects/all/msg_meminfo.go b/pkg/dialects/all/msg_meminfo.go new file mode 100644 index 000000000..6cceea9b9 --- /dev/null +++ b/pkg/dialects/all/msg_meminfo.go @@ -0,0 +1,18 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// State of autopilot RAM. +type MessageMeminfo struct { + // Heap top. + Brkval uint16 + // Free memory. + Freemem uint16 + // Free memory (32 bit). + Freemem32 uint32 `mavext:"true"` +} + +// GetID implements the msg.Message interface. +func (*MessageMeminfo) GetID() uint32 { + return 152 +} diff --git a/pkg/dialects/all/msg_memory_vect.go b/pkg/dialects/all/msg_memory_vect.go new file mode 100644 index 000000000..fed2e454a --- /dev/null +++ b/pkg/dialects/all/msg_memory_vect.go @@ -0,0 +1,20 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// Send raw controller memory. The use of this message is discouraged for normal packets, but a quite efficient way for testing new messages and getting experimental debug output. +type MessageMemoryVect struct { + // Starting address of the debug variables + Address uint16 + // Version code of the type variable. 0=unknown, type ignored and assumed int16_t. 1=as below + Ver uint8 + // Type code of the memory variables. for ver = 1: 0=16 x int16_t, 1=16 x uint16_t, 2=16 x Q15, 3=16 x 1Q14 + Type uint8 + // Memory contents at specified address + Value [32]int8 +} + +// GetID implements the msg.Message interface. +func (*MessageMemoryVect) GetID() uint32 { + return 249 +} diff --git a/pkg/dialects/all/msg_message_interval.go b/pkg/dialects/all/msg_message_interval.go new file mode 100644 index 000000000..02f30924f --- /dev/null +++ b/pkg/dialects/all/msg_message_interval.go @@ -0,0 +1,16 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// The interval between messages for a particular MAVLink message ID. This message is the response to the MAV_CMD_GET_MESSAGE_INTERVAL command. This interface replaces DATA_STREAM. +type MessageMessageInterval struct { + // The ID of the requested MAVLink message. v1.0 is limited to 254 messages. + MessageId uint16 + // The interval between two messages. A value of -1 indicates this stream is disabled, 0 indicates it is not available, > 0 indicates the interval at which it is sent. + IntervalUs int32 +} + +// GetID implements the msg.Message interface. +func (*MessageMessageInterval) GetID() uint32 { + return 244 +} diff --git a/pkg/dialects/all/msg_mission_ack.go b/pkg/dialects/all/msg_mission_ack.go new file mode 100644 index 000000000..dc2a11fc3 --- /dev/null +++ b/pkg/dialects/all/msg_mission_ack.go @@ -0,0 +1,20 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// Acknowledgment message during waypoint handling. The type field states if this message is a positive ack (type=0) or if an error happened (type=non-zero). +type MessageMissionAck struct { + // System ID + TargetSystem uint8 + // Component ID + TargetComponent uint8 + // Mission result. + Type MAV_MISSION_RESULT `mavenum:"uint8"` + // Mission type. + MissionType MAV_MISSION_TYPE `mavenum:"uint8" mavext:"true"` +} + +// GetID implements the msg.Message interface. +func (*MessageMissionAck) GetID() uint32 { + return 47 +} diff --git a/pkg/dialects/all/msg_mission_changed.go b/pkg/dialects/all/msg_mission_changed.go new file mode 100644 index 000000000..d972fddb8 --- /dev/null +++ b/pkg/dialects/all/msg_mission_changed.go @@ -0,0 +1,22 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// A broadcast message to notify any ground station or SDK if a mission, geofence or safe points have changed on the vehicle. +type MessageMissionChanged struct { + // Start index for partial mission change (-1 for all items). + StartIndex int16 + // End index of a partial mission change. -1 is a synonym for the last mission item (i.e. selects all items from start_index). Ignore field if start_index=-1. + EndIndex int16 + // System ID of the author of the new mission. + OriginSysid uint8 + // Compnent ID of the author of the new mission. + OriginCompid MAV_COMPONENT `mavenum:"uint8"` + // Mission type. + MissionType MAV_MISSION_TYPE `mavenum:"uint8"` +} + +// GetID implements the msg.Message interface. +func (*MessageMissionChanged) GetID() uint32 { + return 52 +} diff --git a/pkg/dialects/all/msg_mission_checksum.go b/pkg/dialects/all/msg_mission_checksum.go new file mode 100644 index 000000000..bb3de003f --- /dev/null +++ b/pkg/dialects/all/msg_mission_checksum.go @@ -0,0 +1,24 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// Checksum for the current mission, rally point or geofence plan, or for the "combined" plan (a GCS can use these checksums to determine if it has matching plans). +// This message must be broadcast with the appropriate checksum following any change to a mission, geofence or rally point definition +// (immediately after the MISSION_ACK that completes the upload sequence). +// It may also be requested using MAV_CMD_REQUEST_MESSAGE, where param 2 indicates the plan type for which the checksum is required. +// The checksum must be calculated on the autopilot, but may also be calculated by the GCS. +// The checksum uses the same CRC32 algorithm as MAVLink FTP (https://mavlink.io/en/services/ftp.html#crc32-implementation). +// The checksum for a mission, geofence or rally point definition is run over each item in the plan in seq order (excluding the home location if present in the plan), and covers the following fields (in order): +// frame, command, autocontinue, param1, param2, param3, param4, param5, param6, param7. +// The checksum for the whole plan (MAV_MISSION_TYPE_ALL) is calculated using the same approach, running over each sub-plan in the following order: mission, geofence then rally point. +type MessageMissionChecksum struct { + // Mission type. + MissionType MAV_MISSION_TYPE `mavenum:"uint8"` + // CRC32 checksum of current plan for specified type. + Checksum uint32 +} + +// GetID implements the msg.Message interface. +func (*MessageMissionChecksum) GetID() uint32 { + return 53 +} diff --git a/pkg/dialects/all/msg_mission_clear_all.go b/pkg/dialects/all/msg_mission_clear_all.go new file mode 100644 index 000000000..1a12a7d64 --- /dev/null +++ b/pkg/dialects/all/msg_mission_clear_all.go @@ -0,0 +1,18 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// Delete all mission items at once. +type MessageMissionClearAll struct { + // System ID + TargetSystem uint8 + // Component ID + TargetComponent uint8 + // Mission type. + MissionType MAV_MISSION_TYPE `mavenum:"uint8" mavext:"true"` +} + +// GetID implements the msg.Message interface. +func (*MessageMissionClearAll) GetID() uint32 { + return 45 +} diff --git a/pkg/dialects/all/msg_mission_count.go b/pkg/dialects/all/msg_mission_count.go new file mode 100644 index 000000000..5d863faad --- /dev/null +++ b/pkg/dialects/all/msg_mission_count.go @@ -0,0 +1,20 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// This message is emitted as response to MISSION_REQUEST_LIST by the MAV and to initiate a write transaction. The GCS can then request the individual mission item based on the knowledge of the total number of waypoints. +type MessageMissionCount struct { + // System ID + TargetSystem uint8 + // Component ID + TargetComponent uint8 + // Number of mission items in the sequence + Count uint16 + // Mission type. + MissionType MAV_MISSION_TYPE `mavenum:"uint8" mavext:"true"` +} + +// GetID implements the msg.Message interface. +func (*MessageMissionCount) GetID() uint32 { + return 44 +} diff --git a/pkg/dialects/all/msg_mission_current.go b/pkg/dialects/all/msg_mission_current.go new file mode 100644 index 000000000..5891adaca --- /dev/null +++ b/pkg/dialects/all/msg_mission_current.go @@ -0,0 +1,14 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// Message that announces the sequence number of the current active mission item. The MAV will fly towards this mission item. +type MessageMissionCurrent struct { + // Sequence + Seq uint16 +} + +// GetID implements the msg.Message interface. +func (*MessageMissionCurrent) GetID() uint32 { + return 42 +} diff --git a/pkg/dialects/all/msg_mission_item.go b/pkg/dialects/all/msg_mission_item.go new file mode 100644 index 000000000..7cffa60f8 --- /dev/null +++ b/pkg/dialects/all/msg_mission_item.go @@ -0,0 +1,43 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// Message encoding a mission item. This message is emitted to announce +// the presence of a mission item and to set a mission item on the system. The mission item can be either in x, y, z meters (type: LOCAL) or x:lat, y:lon, z:altitude. Local frame is Z-down, right handed (NED), global frame is Z-up, right handed (ENU). NaN may be used to indicate an optional/default value (e.g. to use the system's current latitude or yaw rather than a specific value). See also https://mavlink.io/en/services/mission.html. +type MessageMissionItem struct { + // System ID + TargetSystem uint8 + // Component ID + TargetComponent uint8 + // Sequence + Seq uint16 + // The coordinate system of the waypoint. + Frame MAV_FRAME `mavenum:"uint8"` + // The scheduled action for the waypoint. + Command MAV_CMD `mavenum:"uint16"` + // false:0, true:1 + Current uint8 + // Autocontinue to next waypoint + Autocontinue uint8 + // PARAM1, see MAV_CMD enum + Param1 float32 + // PARAM2, see MAV_CMD enum + Param2 float32 + // PARAM3, see MAV_CMD enum + Param3 float32 + // PARAM4, see MAV_CMD enum + Param4 float32 + // PARAM5 / local: X coordinate, global: latitude + X float32 + // PARAM6 / local: Y coordinate, global: longitude + Y float32 + // PARAM7 / local: Z coordinate, global: altitude (relative or absolute, depending on frame). + Z float32 + // Mission type. + MissionType MAV_MISSION_TYPE `mavenum:"uint8" mavext:"true"` +} + +// GetID implements the msg.Message interface. +func (*MessageMissionItem) GetID() uint32 { + return 39 +} diff --git a/pkg/dialects/all/msg_mission_item_int.go b/pkg/dialects/all/msg_mission_item_int.go new file mode 100644 index 000000000..3a33081f8 --- /dev/null +++ b/pkg/dialects/all/msg_mission_item_int.go @@ -0,0 +1,43 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// Message encoding a mission item. This message is emitted to announce +// the presence of a mission item and to set a mission item on the system. The mission item can be either in x, y, z meters (type: LOCAL) or x:lat, y:lon, z:altitude. Local frame is Z-down, right handed (NED), global frame is Z-up, right handed (ENU). NaN or INT32_MAX may be used in float/integer params (respectively) to indicate optional/default values (e.g. to use the component's current latitude, yaw rather than a specific value). See also https://mavlink.io/en/services/mission.html. +type MessageMissionItemInt struct { + // System ID + TargetSystem uint8 + // Component ID + TargetComponent uint8 + // Waypoint ID (sequence number). Starts at zero. Increases monotonically for each waypoint, no gaps in the sequence (0,1,2,3,4). + Seq uint16 + // The coordinate system of the waypoint. + Frame MAV_FRAME `mavenum:"uint8"` + // The scheduled action for the waypoint. + Command MAV_CMD `mavenum:"uint16"` + // false:0, true:1 + Current uint8 + // Autocontinue to next waypoint + Autocontinue uint8 + // PARAM1, see MAV_CMD enum + Param1 float32 + // PARAM2, see MAV_CMD enum + Param2 float32 + // PARAM3, see MAV_CMD enum + Param3 float32 + // PARAM4, see MAV_CMD enum + Param4 float32 + // PARAM5 / local: x position in meters * 1e4, global: latitude in degrees * 10^7 + X int32 + // PARAM6 / y position: local: x position in meters * 1e4, global: longitude in degrees *10^7 + Y int32 + // PARAM7 / z position: global: altitude in meters (relative or absolute, depending on frame. + Z float32 + // Mission type. + MissionType MAV_MISSION_TYPE `mavenum:"uint8" mavext:"true"` +} + +// GetID implements the msg.Message interface. +func (*MessageMissionItemInt) GetID() uint32 { + return 73 +} diff --git a/pkg/dialects/all/msg_mission_item_reached.go b/pkg/dialects/all/msg_mission_item_reached.go new file mode 100644 index 000000000..545f9734c --- /dev/null +++ b/pkg/dialects/all/msg_mission_item_reached.go @@ -0,0 +1,14 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// A certain mission item has been reached. The system will either hold this position (or circle on the orbit) or (if the autocontinue on the WP was set) continue to the next waypoint. +type MessageMissionItemReached struct { + // Sequence + Seq uint16 +} + +// GetID implements the msg.Message interface. +func (*MessageMissionItemReached) GetID() uint32 { + return 46 +} diff --git a/pkg/dialects/all/msg_mission_request.go b/pkg/dialects/all/msg_mission_request.go new file mode 100644 index 000000000..d324705d8 --- /dev/null +++ b/pkg/dialects/all/msg_mission_request.go @@ -0,0 +1,20 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// Request the information of the mission item with the sequence number seq. The response of the system to this message should be a MISSION_ITEM message. https://mavlink.io/en/services/mission.html +type MessageMissionRequest struct { + // System ID + TargetSystem uint8 + // Component ID + TargetComponent uint8 + // Sequence + Seq uint16 + // Mission type. + MissionType MAV_MISSION_TYPE `mavenum:"uint8" mavext:"true"` +} + +// GetID implements the msg.Message interface. +func (*MessageMissionRequest) GetID() uint32 { + return 40 +} diff --git a/pkg/dialects/all/msg_mission_request_int.go b/pkg/dialects/all/msg_mission_request_int.go new file mode 100644 index 000000000..7167036f6 --- /dev/null +++ b/pkg/dialects/all/msg_mission_request_int.go @@ -0,0 +1,20 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// Request the information of the mission item with the sequence number seq. The response of the system to this message should be a MISSION_ITEM_INT message. https://mavlink.io/en/services/mission.html +type MessageMissionRequestInt struct { + // System ID + TargetSystem uint8 + // Component ID + TargetComponent uint8 + // Sequence + Seq uint16 + // Mission type. + MissionType MAV_MISSION_TYPE `mavenum:"uint8" mavext:"true"` +} + +// GetID implements the msg.Message interface. +func (*MessageMissionRequestInt) GetID() uint32 { + return 51 +} diff --git a/pkg/dialects/all/msg_mission_request_list.go b/pkg/dialects/all/msg_mission_request_list.go new file mode 100644 index 000000000..ecb028633 --- /dev/null +++ b/pkg/dialects/all/msg_mission_request_list.go @@ -0,0 +1,18 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// Request the overall list of mission items from the system/component. +type MessageMissionRequestList struct { + // System ID + TargetSystem uint8 + // Component ID + TargetComponent uint8 + // Mission type. + MissionType MAV_MISSION_TYPE `mavenum:"uint8" mavext:"true"` +} + +// GetID implements the msg.Message interface. +func (*MessageMissionRequestList) GetID() uint32 { + return 43 +} diff --git a/pkg/dialects/all/msg_mission_request_partial_list.go b/pkg/dialects/all/msg_mission_request_partial_list.go new file mode 100644 index 000000000..b895ed820 --- /dev/null +++ b/pkg/dialects/all/msg_mission_request_partial_list.go @@ -0,0 +1,22 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// Request a partial list of mission items from the system/component. https://mavlink.io/en/services/mission.html. If start and end index are the same, just send one waypoint. +type MessageMissionRequestPartialList struct { + // System ID + TargetSystem uint8 + // Component ID + TargetComponent uint8 + // Start index + StartIndex int16 + // End index, -1 by default (-1: send list to end). Else a valid index of the list + EndIndex int16 + // Mission type. + MissionType MAV_MISSION_TYPE `mavenum:"uint8" mavext:"true"` +} + +// GetID implements the msg.Message interface. +func (*MessageMissionRequestPartialList) GetID() uint32 { + return 37 +} diff --git a/pkg/dialects/all/msg_mission_set_current.go b/pkg/dialects/all/msg_mission_set_current.go new file mode 100644 index 000000000..8a57da7ed --- /dev/null +++ b/pkg/dialects/all/msg_mission_set_current.go @@ -0,0 +1,18 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// Set the mission item with sequence number seq as current item. This means that the MAV will continue to this mission item on the shortest path (not following the mission items in-between). +type MessageMissionSetCurrent struct { + // System ID + TargetSystem uint8 + // Component ID + TargetComponent uint8 + // Sequence + Seq uint16 +} + +// GetID implements the msg.Message interface. +func (*MessageMissionSetCurrent) GetID() uint32 { + return 41 +} diff --git a/pkg/dialects/all/msg_mission_write_partial_list.go b/pkg/dialects/all/msg_mission_write_partial_list.go new file mode 100644 index 000000000..e21884c82 --- /dev/null +++ b/pkg/dialects/all/msg_mission_write_partial_list.go @@ -0,0 +1,22 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// This message is sent to the MAV to write a partial list. If start index == end index, only one item will be transmitted / updated. If the start index is NOT 0 and above the current list size, this request should be REJECTED! +type MessageMissionWritePartialList struct { + // System ID + TargetSystem uint8 + // Component ID + TargetComponent uint8 + // Start index. Must be smaller / equal to the largest index of the current onboard list. + StartIndex int16 + // End index, equal or greater than start index. + EndIndex int16 + // Mission type. + MissionType MAV_MISSION_TYPE `mavenum:"uint8" mavext:"true"` +} + +// GetID implements the msg.Message interface. +func (*MessageMissionWritePartialList) GetID() uint32 { + return 38 +} diff --git a/pkg/dialects/all/msg_mount_configure.go b/pkg/dialects/all/msg_mount_configure.go new file mode 100644 index 000000000..bf52d1d9f --- /dev/null +++ b/pkg/dialects/all/msg_mount_configure.go @@ -0,0 +1,24 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// Message to configure a camera mount, directional antenna, etc. +type MessageMountConfigure struct { + // System ID. + TargetSystem uint8 + // Component ID. + TargetComponent uint8 + // Mount operating mode. + MountMode MAV_MOUNT_MODE `mavenum:"uint8"` + // (1 = yes, 0 = no). + StabRoll uint8 + // (1 = yes, 0 = no). + StabPitch uint8 + // (1 = yes, 0 = no). + StabYaw uint8 +} + +// GetID implements the msg.Message interface. +func (*MessageMountConfigure) GetID() uint32 { + return 156 +} diff --git a/pkg/dialects/all/msg_mount_control.go b/pkg/dialects/all/msg_mount_control.go new file mode 100644 index 000000000..e1b2348fa --- /dev/null +++ b/pkg/dialects/all/msg_mount_control.go @@ -0,0 +1,24 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// Message to control a camera mount, directional antenna, etc. +type MessageMountControl struct { + // System ID. + TargetSystem uint8 + // Component ID. + TargetComponent uint8 + // Pitch (centi-degrees) or lat (degE7), depending on mount mode. + InputA int32 + // Roll (centi-degrees) or lon (degE7) depending on mount mode. + InputB int32 + // Yaw (centi-degrees) or alt (cm) depending on mount mode. + InputC int32 + // If "1" it will save current trimmed position on EEPROM (just valid for NEUTRAL and LANDING). + SavePosition uint8 +} + +// GetID implements the msg.Message interface. +func (*MessageMountControl) GetID() uint32 { + return 157 +} diff --git a/pkg/dialects/all/msg_mount_orientation.go b/pkg/dialects/all/msg_mount_orientation.go new file mode 100644 index 000000000..27822b4b7 --- /dev/null +++ b/pkg/dialects/all/msg_mount_orientation.go @@ -0,0 +1,22 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// Orientation of a mount +type MessageMountOrientation struct { + // Timestamp (time since system boot). + TimeBootMs uint32 + // Roll in global frame (set to NaN for invalid). + Roll float32 + // Pitch in global frame (set to NaN for invalid). + Pitch float32 + // Yaw relative to vehicle (set to NaN for invalid). + Yaw float32 + // Yaw in absolute frame relative to Earth's North, north is 0 (set to NaN for invalid). + YawAbsolute float32 `mavext:"true"` +} + +// GetID implements the msg.Message interface. +func (*MessageMountOrientation) GetID() uint32 { + return 265 +} diff --git a/pkg/dialects/all/msg_mount_status.go b/pkg/dialects/all/msg_mount_status.go new file mode 100644 index 000000000..3b9505404 --- /dev/null +++ b/pkg/dialects/all/msg_mount_status.go @@ -0,0 +1,24 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// Message with some status from autopilot to GCS about camera or antenna mount. +type MessageMountStatus struct { + // System ID. + TargetSystem uint8 + // Component ID. + TargetComponent uint8 + // Pitch. + PointingA int32 + // Roll. + PointingB int32 + // Yaw. + PointingC int32 + // Mount operating mode. + MountMode MAV_MOUNT_MODE `mavenum:"uint8" mavext:"true"` +} + +// GetID implements the msg.Message interface. +func (*MessageMountStatus) GetID() uint32 { + return 158 +} diff --git a/pkg/dialects/all/msg_named_value_float.go b/pkg/dialects/all/msg_named_value_float.go new file mode 100644 index 000000000..bc155b5e0 --- /dev/null +++ b/pkg/dialects/all/msg_named_value_float.go @@ -0,0 +1,18 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// Send a key-value pair as float. The use of this message is discouraged for normal packets, but a quite efficient way for testing new messages and getting experimental debug output. +type MessageNamedValueFloat struct { + // Timestamp (time since system boot). + TimeBootMs uint32 + // Name of the debug variable + Name string `mavlen:"10"` + // Floating point value + Value float32 +} + +// GetID implements the msg.Message interface. +func (*MessageNamedValueFloat) GetID() uint32 { + return 251 +} diff --git a/pkg/dialects/all/msg_named_value_int.go b/pkg/dialects/all/msg_named_value_int.go new file mode 100644 index 000000000..82e724f4d --- /dev/null +++ b/pkg/dialects/all/msg_named_value_int.go @@ -0,0 +1,18 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// Send a key-value pair as integer. The use of this message is discouraged for normal packets, but a quite efficient way for testing new messages and getting experimental debug output. +type MessageNamedValueInt struct { + // Timestamp (time since system boot). + TimeBootMs uint32 + // Name of the debug variable + Name string `mavlen:"10"` + // Signed integer value + Value int32 +} + +// GetID implements the msg.Message interface. +func (*MessageNamedValueInt) GetID() uint32 { + return 252 +} diff --git a/pkg/dialects/all/msg_nav_controller_output.go b/pkg/dialects/all/msg_nav_controller_output.go new file mode 100644 index 000000000..863e2a1c1 --- /dev/null +++ b/pkg/dialects/all/msg_nav_controller_output.go @@ -0,0 +1,28 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// The state of the navigation and position controller. +type MessageNavControllerOutput struct { + // Current desired roll + NavRoll float32 + // Current desired pitch + NavPitch float32 + // Current desired heading + NavBearing int16 + // Bearing to current waypoint/target + TargetBearing int16 + // Distance to active waypoint + WpDist uint16 + // Current altitude error + AltError float32 + // Current airspeed error + AspdError float32 + // Current crosstrack error on x-y plane + XtrackError float32 +} + +// GetID implements the msg.Message interface. +func (*MessageNavControllerOutput) GetID() uint32 { + return 62 +} diff --git a/pkg/dialects/all/msg_nav_filter_bias.go b/pkg/dialects/all/msg_nav_filter_bias.go new file mode 100644 index 000000000..f53a39688 --- /dev/null +++ b/pkg/dialects/all/msg_nav_filter_bias.go @@ -0,0 +1,26 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// Accelerometer and Gyro biases from the navigation filter +type MessageNavFilterBias struct { + // Timestamp (microseconds) + Usec uint64 + // b_f[0] + Accel_0 float32 + // b_f[1] + Accel_1 float32 + // b_f[2] + Accel_2 float32 + // b_f[0] + Gyro_0 float32 + // b_f[1] + Gyro_1 float32 + // b_f[2] + Gyro_2 float32 +} + +// GetID implements the msg.Message interface. +func (*MessageNavFilterBias) GetID() uint32 { + return 220 +} diff --git a/pkg/dialects/all/msg_obstacle_distance.go b/pkg/dialects/all/msg_obstacle_distance.go new file mode 100644 index 000000000..57edae973 --- /dev/null +++ b/pkg/dialects/all/msg_obstacle_distance.go @@ -0,0 +1,30 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// Obstacle distances in front of the sensor, starting from the left in increment degrees to the right +type MessageObstacleDistance struct { + // Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. + TimeUsec uint64 + // Class id of the distance sensor type. + SensorType MAV_DISTANCE_SENSOR `mavenum:"uint8"` + // Distance of obstacles around the vehicle with index 0 corresponding to north + angle_offset, unless otherwise specified in the frame. A value of 0 is valid and means that the obstacle is practically touching the sensor. A value of max_distance +1 means no obstacle is present. A value of UINT16_MAX for unknown/not used. In a array element, one unit corresponds to 1cm. + Distances [72]uint16 + // Angular width in degrees of each array element. Increment direction is clockwise. This field is ignored if increment_f is non-zero. + Increment uint8 + // Minimum distance the sensor can measure. + MinDistance uint16 + // Maximum distance the sensor can measure. + MaxDistance uint16 + // Angular width in degrees of each array element as a float. If non-zero then this value is used instead of the uint8_t increment field. Positive is clockwise direction, negative is counter-clockwise. + IncrementF float32 `mavext:"true"` + // Relative angle offset of the 0-index element in the distances array. Value of 0 corresponds to forward. Positive is clockwise direction, negative is counter-clockwise. + AngleOffset float32 `mavext:"true"` + // Coordinate frame of reference for the yaw rotation and offset of the sensor data. Defaults to MAV_FRAME_GLOBAL, which is north aligned. For body-mounted sensors use MAV_FRAME_BODY_FRD, which is vehicle front aligned. + Frame MAV_FRAME `mavenum:"uint8" mavext:"true"` +} + +// GetID implements the msg.Message interface. +func (*MessageObstacleDistance) GetID() uint32 { + return 330 +} diff --git a/pkg/dialects/all/msg_obstacle_distance_3d.go b/pkg/dialects/all/msg_obstacle_distance_3d.go new file mode 100644 index 000000000..10b6d233a --- /dev/null +++ b/pkg/dialects/all/msg_obstacle_distance_3d.go @@ -0,0 +1,30 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// Obstacle located as a 3D vector. +type MessageObstacleDistance_3d struct { + // Timestamp (time since system boot). + TimeBootMs uint32 + // Class id of the distance sensor type. + SensorType MAV_DISTANCE_SENSOR `mavenum:"uint8"` + // Coordinate frame of reference. + Frame MAV_FRAME `mavenum:"uint8"` + // Unique ID given to each obstacle so that its movement can be tracked. Use UINT16_MAX if object ID is unknown or cannot be determined. + ObstacleId uint16 + // X position of the obstacle. + X float32 + // Y position of the obstacle. + Y float32 + // Z position of the obstacle. + Z float32 + // Minimum distance the sensor can measure. + MinDistance float32 + // Maximum distance the sensor can measure. + MaxDistance float32 +} + +// GetID implements the msg.Message interface. +func (*MessageObstacleDistance_3d) GetID() uint32 { + return 11037 +} diff --git a/pkg/dialects/all/msg_odometry.go b/pkg/dialects/all/msg_odometry.go new file mode 100644 index 000000000..aed60fac5 --- /dev/null +++ b/pkg/dialects/all/msg_odometry.go @@ -0,0 +1,46 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// Odometry message to communicate odometry information with an external interface. Fits ROS REP 147 standard for aerial vehicles (http://www.ros.org/reps/rep-0147.html). +type MessageOdometry struct { + // Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. + TimeUsec uint64 + // Coordinate frame of reference for the pose data. + FrameId MAV_FRAME `mavenum:"uint8"` + // Coordinate frame of reference for the velocity in free space (twist) data. + ChildFrameId MAV_FRAME `mavenum:"uint8"` + // X Position + X float32 + // Y Position + Y float32 + // Z Position + Z float32 + // Quaternion components, w, x, y, z (1 0 0 0 is the null-rotation) + Q [4]float32 + // X linear speed + Vx float32 + // Y linear speed + Vy float32 + // Z linear speed + Vz float32 + // Roll angular speed + Rollspeed float32 + // Pitch angular speed + Pitchspeed float32 + // Yaw angular speed + Yawspeed float32 + // Row-major representation of a 6x6 pose cross-covariance matrix upper right triangle (states: x, y, z, roll, pitch, yaw; first six entries are the first ROW, next five entries are the second ROW, etc.). If unknown, assign NaN value to first element in the array. + PoseCovariance [21]float32 + // Row-major representation of a 6x6 velocity cross-covariance matrix upper right triangle (states: vx, vy, vz, rollspeed, pitchspeed, yawspeed; first six entries are the first ROW, next five entries are the second ROW, etc.). If unknown, assign NaN value to first element in the array. + VelocityCovariance [21]float32 + // Estimate reset counter. This should be incremented when the estimate resets in any of the dimensions (position, velocity, attitude, angular speed). This is designed to be used when e.g an external SLAM system detects a loop-closure and the estimate jumps. + ResetCounter uint8 `mavext:"true"` + // Type of estimator that is providing the odometry. + EstimatorType MAV_ESTIMATOR_TYPE `mavenum:"uint8" mavext:"true"` +} + +// GetID implements the msg.Message interface. +func (*MessageOdometry) GetID() uint32 { + return 331 +} diff --git a/pkg/dialects/all/msg_onboard_computer_status.go b/pkg/dialects/all/msg_onboard_computer_status.go new file mode 100644 index 000000000..7a39127cc --- /dev/null +++ b/pkg/dialects/all/msg_onboard_computer_status.go @@ -0,0 +1,52 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// Hardware status sent by an onboard computer. +type MessageOnboardComputerStatus struct { + // Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. + TimeUsec uint64 + // Time since system boot. + Uptime uint32 + // Type of the onboard computer: 0: Mission computer primary, 1: Mission computer backup 1, 2: Mission computer backup 2, 3: Compute node, 4-5: Compute spares, 6-9: Payload computers. + Type uint8 + // CPU usage on the component in percent (100 - idle). A value of UINT8_MAX implies the field is unused. + CpuCores [8]uint8 + // Combined CPU usage as the last 10 slices of 100 MS (a histogram). This allows to identify spikes in load that max out the system, but only for a short amount of time. A value of UINT8_MAX implies the field is unused. + CpuCombined [10]uint8 + // GPU usage on the component in percent (100 - idle). A value of UINT8_MAX implies the field is unused. + GpuCores [4]uint8 + // Combined GPU usage as the last 10 slices of 100 MS (a histogram). This allows to identify spikes in load that max out the system, but only for a short amount of time. A value of UINT8_MAX implies the field is unused. + GpuCombined [10]uint8 + // Temperature of the board. A value of INT8_MAX implies the field is unused. + TemperatureBoard int8 + // Temperature of the CPU core. A value of INT8_MAX implies the field is unused. + TemperatureCore [8]int8 + // Fan speeds. A value of INT16_MAX implies the field is unused. + FanSpeed [4]int16 + // Amount of used RAM on the component system. A value of UINT32_MAX implies the field is unused. + RamUsage uint32 + // Total amount of RAM on the component system. A value of UINT32_MAX implies the field is unused. + RamTotal uint32 + // Storage type: 0: HDD, 1: SSD, 2: EMMC, 3: SD card (non-removable), 4: SD card (removable). A value of UINT32_MAX implies the field is unused. + StorageType [4]uint32 + // Amount of used storage space on the component system. A value of UINT32_MAX implies the field is unused. + StorageUsage [4]uint32 + // Total amount of storage space on the component system. A value of UINT32_MAX implies the field is unused. + StorageTotal [4]uint32 + // Link type: 0-9: UART, 10-19: Wired network, 20-29: Wifi, 30-39: Point-to-point proprietary, 40-49: Mesh proprietary + LinkType [6]uint32 + // Network traffic from the component system. A value of UINT32_MAX implies the field is unused. + LinkTxRate [6]uint32 + // Network traffic to the component system. A value of UINT32_MAX implies the field is unused. + LinkRxRate [6]uint32 + // Network capacity from the component system. A value of UINT32_MAX implies the field is unused. + LinkTxMax [6]uint32 + // Network capacity to the component system. A value of UINT32_MAX implies the field is unused. + LinkRxMax [6]uint32 +} + +// GetID implements the msg.Message interface. +func (*MessageOnboardComputerStatus) GetID() uint32 { + return 390 +} diff --git a/pkg/dialects/all/msg_open_drone_id_authentication.go b/pkg/dialects/all/msg_open_drone_id_authentication.go new file mode 100644 index 000000000..574b28ae9 --- /dev/null +++ b/pkg/dialects/all/msg_open_drone_id_authentication.go @@ -0,0 +1,30 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// Data for filling the OpenDroneID Authentication message. The Authentication Message defines a field that can provide a means of authenticity for the identity of the UAS (Unmanned Aircraft System). The Authentication message can have two different formats. Five data pages are supported. For data page 0, the fields PageCount, Length and TimeStamp are present and AuthData is only 17 bytes. For data page 1 through 15, PageCount, Length and TimeStamp are not present and the size of AuthData is 23 bytes. +type MessageOpenDroneIdAuthentication struct { + // System ID (0 for broadcast). + TargetSystem uint8 + // Component ID (0 for broadcast). + TargetComponent uint8 + // Only used for drone ID data received from other UAs. See detailed description at https://mavlink.io/en/services/opendroneid.html. + IdOrMac [20]uint8 + // Indicates the type of authentication. + AuthenticationType MAV_ODID_AUTH_TYPE `mavenum:"uint8"` + // Allowed range is 0 - 15. + DataPage uint8 + // This field is only present for page 0. Allowed range is 0 - 15. See the description of struct ODID_Auth_data at https://github.com/opendroneid/opendroneid-core-c/blob/master/libopendroneid/opendroneid.h. + LastPageIndex uint8 + // This field is only present for page 0. Total bytes of authentication_data from all data pages. See the description of struct ODID_Auth_data at https://github.com/opendroneid/opendroneid-core-c/blob/master/libopendroneid/opendroneid.h. + Length uint8 + // This field is only present for page 0. 32 bit Unix Timestamp in seconds since 00:00:00 01/01/2019. + Timestamp uint32 + // Opaque authentication data. For page 0, the size is only 17 bytes. For other pages, the size is 23 bytes. Shall be filled with nulls in the unused portion of the field. + AuthenticationData [23]uint8 +} + +// GetID implements the msg.Message interface. +func (*MessageOpenDroneIdAuthentication) GetID() uint32 { + return 12902 +} diff --git a/pkg/dialects/all/msg_open_drone_id_basic_id.go b/pkg/dialects/all/msg_open_drone_id_basic_id.go new file mode 100644 index 000000000..54573204f --- /dev/null +++ b/pkg/dialects/all/msg_open_drone_id_basic_id.go @@ -0,0 +1,24 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// Data for filling the OpenDroneID Basic ID message. This and the below messages are primarily meant for feeding data to/from an OpenDroneID implementation. E.g. https://github.com/opendroneid/opendroneid-core-c. These messages are compatible with the ASTM Remote ID standard at https://www.astm.org/Standards/F3411.htm and the ASD-STAN Direct Remote ID standard. The usage of these messages is documented at https://mavlink.io/en/services/opendroneid.html. +type MessageOpenDroneIdBasicId struct { + // System ID (0 for broadcast). + TargetSystem uint8 + // Component ID (0 for broadcast). + TargetComponent uint8 + // Only used for drone ID data received from other UAs. See detailed description at https://mavlink.io/en/services/opendroneid.html. + IdOrMac [20]uint8 + // Indicates the format for the uas_id field of this message. + IdType MAV_ODID_ID_TYPE `mavenum:"uint8"` + // Indicates the type of UA (Unmanned Aircraft). + UaType MAV_ODID_UA_TYPE `mavenum:"uint8"` + // UAS (Unmanned Aircraft System) ID following the format specified by id_type. Shall be filled with nulls in the unused portion of the field. + UasId [20]uint8 +} + +// GetID implements the msg.Message interface. +func (*MessageOpenDroneIdBasicId) GetID() uint32 { + return 12900 +} diff --git a/pkg/dialects/all/msg_open_drone_id_location.go b/pkg/dialects/all/msg_open_drone_id_location.go new file mode 100644 index 000000000..2d2ede13e --- /dev/null +++ b/pkg/dialects/all/msg_open_drone_id_location.go @@ -0,0 +1,50 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// Data for filling the OpenDroneID Location message. The float data types are 32-bit IEEE 754. The Location message provides the location, altitude, direction and speed of the aircraft. +type MessageOpenDroneIdLocation struct { + // System ID (0 for broadcast). + TargetSystem uint8 + // Component ID (0 for broadcast). + TargetComponent uint8 + // Only used for drone ID data received from other UAs. See detailed description at https://mavlink.io/en/services/opendroneid.html. + IdOrMac [20]uint8 + // Indicates whether the unmanned aircraft is on the ground or in the air. + Status MAV_ODID_STATUS `mavenum:"uint8"` + // Direction over ground (not heading, but direction of movement) measured clockwise from true North: 0 - 35999 centi-degrees. If unknown: 36100 centi-degrees. + Direction uint16 + // Ground speed. Positive only. If unknown: 25500 cm/s. If speed is larger than 25425 cm/s, use 25425 cm/s. + SpeedHorizontal uint16 + // The vertical speed. Up is positive. If unknown: 6300 cm/s. If speed is larger than 6200 cm/s, use 6200 cm/s. If lower than -6200 cm/s, use -6200 cm/s. + SpeedVertical int16 + // Current latitude of the unmanned aircraft. If unknown: 0 (both Lat/Lon). + Latitude int32 + // Current longitude of the unmanned aircraft. If unknown: 0 (both Lat/Lon). + Longitude int32 + // The altitude calculated from the barometric pressue. Reference is against 29.92inHg or 1013.2mb. If unknown: -1000 m. + AltitudeBarometric float32 + // The geodetic altitude as defined by WGS84. If unknown: -1000 m. + AltitudeGeodetic float32 + // Indicates the reference point for the height field. + HeightReference MAV_ODID_HEIGHT_REF `mavenum:"uint8"` + // The current height of the unmanned aircraft above the take-off location or the ground as indicated by height_reference. If unknown: -1000 m. + Height float32 + // The accuracy of the horizontal position. + HorizontalAccuracy MAV_ODID_HOR_ACC `mavenum:"uint8"` + // The accuracy of the vertical position. + VerticalAccuracy MAV_ODID_VER_ACC `mavenum:"uint8"` + // The accuracy of the barometric altitude. + BarometerAccuracy MAV_ODID_VER_ACC `mavenum:"uint8"` + // The accuracy of the horizontal and vertical speed. + SpeedAccuracy MAV_ODID_SPEED_ACC `mavenum:"uint8"` + // Seconds after the full hour with reference to UTC time. Typically the GPS outputs a time-of-week value in milliseconds. First convert that to UTC and then convert for this field using ((float) (time_week_ms % (60*60*1000))) / 1000. If unknown: 0xFFFF. + Timestamp float32 + // The accuracy of the timestamps. + TimestampAccuracy MAV_ODID_TIME_ACC `mavenum:"uint8"` +} + +// GetID implements the msg.Message interface. +func (*MessageOpenDroneIdLocation) GetID() uint32 { + return 12901 +} diff --git a/pkg/dialects/all/msg_open_drone_id_message_pack.go b/pkg/dialects/all/msg_open_drone_id_message_pack.go new file mode 100644 index 000000000..17e5fe4db --- /dev/null +++ b/pkg/dialects/all/msg_open_drone_id_message_pack.go @@ -0,0 +1,24 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// An OpenDroneID message pack is a container for multiple encoded OpenDroneID messages (i.e. not in the format given for the above messages descriptions but after encoding into the compressed OpenDroneID byte format). Used e.g. when transmitting on Bluetooth 5.0 Long Range/Extended Advertising or on WiFi Neighbor Aware Networking. +type MessageOpenDroneIdMessagePack struct { + // System ID (0 for broadcast). + TargetSystem uint8 + // Component ID (0 for broadcast). + TargetComponent uint8 + // Only used for drone ID data received from other UAs. See detailed description at https://mavlink.io/en/services/opendroneid.html. + IdOrMac [20]uint8 + // This field must currently always be equal to 25 (bytes), since all encoded OpenDroneID messages are specificed to have this length. + SingleMessageSize uint8 + // Number of encoded messages in the pack (not the number of bytes). Allowed range is 1 - 9. + MsgPackSize uint8 + // Concatenation of encoded OpenDroneID messages. Shall be filled with nulls in the unused portion of the field. + Messages [225]uint8 +} + +// GetID implements the msg.Message interface. +func (*MessageOpenDroneIdMessagePack) GetID() uint32 { + return 12915 +} diff --git a/pkg/dialects/all/msg_open_drone_id_operator_id.go b/pkg/dialects/all/msg_open_drone_id_operator_id.go new file mode 100644 index 000000000..61d804204 --- /dev/null +++ b/pkg/dialects/all/msg_open_drone_id_operator_id.go @@ -0,0 +1,22 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// Data for filling the OpenDroneID Operator ID message, which contains the CAA (Civil Aviation Authority) issued operator ID. +type MessageOpenDroneIdOperatorId struct { + // System ID (0 for broadcast). + TargetSystem uint8 + // Component ID (0 for broadcast). + TargetComponent uint8 + // Only used for drone ID data received from other UAs. See detailed description at https://mavlink.io/en/services/opendroneid.html. + IdOrMac [20]uint8 + // Indicates the type of the operator_id field. + OperatorIdType MAV_ODID_OPERATOR_ID_TYPE `mavenum:"uint8"` + // Text description or numeric value expressed as ASCII characters. Shall be filled with nulls in the unused portion of the field. + OperatorId string `mavlen:"20"` +} + +// GetID implements the msg.Message interface. +func (*MessageOpenDroneIdOperatorId) GetID() uint32 { + return 12905 +} diff --git a/pkg/dialects/all/msg_open_drone_id_self_id.go b/pkg/dialects/all/msg_open_drone_id_self_id.go new file mode 100644 index 000000000..e45d81f66 --- /dev/null +++ b/pkg/dialects/all/msg_open_drone_id_self_id.go @@ -0,0 +1,22 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// Data for filling the OpenDroneID Self ID message. The Self ID Message is an opportunity for the operator to (optionally) declare their identity and purpose of the flight. This message can provide additional information that could reduce the threat profile of a UA (Unmanned Aircraft) flying in a particular area or manner. +type MessageOpenDroneIdSelfId struct { + // System ID (0 for broadcast). + TargetSystem uint8 + // Component ID (0 for broadcast). + TargetComponent uint8 + // Only used for drone ID data received from other UAs. See detailed description at https://mavlink.io/en/services/opendroneid.html. + IdOrMac [20]uint8 + // Indicates the type of the description field. + DescriptionType MAV_ODID_DESC_TYPE `mavenum:"uint8"` + // Text description or numeric value expressed as ASCII characters. Shall be filled with nulls in the unused portion of the field. + Description string `mavlen:"23"` +} + +// GetID implements the msg.Message interface. +func (*MessageOpenDroneIdSelfId) GetID() uint32 { + return 12903 +} diff --git a/pkg/dialects/all/msg_open_drone_id_system.go b/pkg/dialects/all/msg_open_drone_id_system.go new file mode 100644 index 000000000..05a3f5889 --- /dev/null +++ b/pkg/dialects/all/msg_open_drone_id_system.go @@ -0,0 +1,40 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// Data for filling the OpenDroneID System message. The System Message contains general system information including the operator location and possible aircraft group information. +type MessageOpenDroneIdSystem struct { + // System ID (0 for broadcast). + TargetSystem uint8 + // Component ID (0 for broadcast). + TargetComponent uint8 + // Only used for drone ID data received from other UAs. See detailed description at https://mavlink.io/en/services/opendroneid.html. + IdOrMac [20]uint8 + // Specifies the operator location type. + OperatorLocationType MAV_ODID_OPERATOR_LOCATION_TYPE `mavenum:"uint8"` + // Specifies the classification type of the UA. + ClassificationType MAV_ODID_CLASSIFICATION_TYPE `mavenum:"uint8"` + // Latitude of the operator. If unknown: 0 (both Lat/Lon). + OperatorLatitude int32 + // Longitude of the operator. If unknown: 0 (both Lat/Lon). + OperatorLongitude int32 + // Number of aircraft in the area, group or formation (default 1). + AreaCount uint16 + // Radius of the cylindrical area of the group or formation (default 0). + AreaRadius uint16 + // Area Operations Ceiling relative to WGS84. If unknown: -1000 m. + AreaCeiling float32 + // Area Operations Floor relative to WGS84. If unknown: -1000 m. + AreaFloor float32 + // When classification_type is MAV_ODID_CLASSIFICATION_TYPE_EU, specifies the category of the UA. + CategoryEu MAV_ODID_CATEGORY_EU `mavenum:"uint8"` + // When classification_type is MAV_ODID_CLASSIFICATION_TYPE_EU, specifies the class of the UA. + ClassEu MAV_ODID_CLASS_EU `mavenum:"uint8"` + // Geodetic altitude of the operator relative to WGS84. If unknown: -1000 m. + OperatorAltitudeGeo float32 +} + +// GetID implements the msg.Message interface. +func (*MessageOpenDroneIdSystem) GetID() uint32 { + return 12904 +} diff --git a/pkg/dialects/all/msg_optical_flow.go b/pkg/dialects/all/msg_optical_flow.go new file mode 100644 index 000000000..59b3c96d4 --- /dev/null +++ b/pkg/dialects/all/msg_optical_flow.go @@ -0,0 +1,32 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// Optical flow from a flow sensor (e.g. optical mouse sensor) +type MessageOpticalFlow struct { + // Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. + TimeUsec uint64 + // Sensor ID + SensorId uint8 + // Flow in x-sensor direction + FlowX int16 + // Flow in y-sensor direction + FlowY int16 + // Flow in x-sensor direction, angular-speed compensated + FlowCompMX float32 + // Flow in y-sensor direction, angular-speed compensated + FlowCompMY float32 + // Optical flow quality / confidence. 0: bad, 255: maximum quality + Quality uint8 + // Ground distance. Positive value: distance known. Negative value: Unknown distance + GroundDistance float32 + // Flow rate about X axis + FlowRateX float32 `mavext:"true"` + // Flow rate about Y axis + FlowRateY float32 `mavext:"true"` +} + +// GetID implements the msg.Message interface. +func (*MessageOpticalFlow) GetID() uint32 { + return 100 +} diff --git a/pkg/dialects/all/msg_optical_flow_rad.go b/pkg/dialects/all/msg_optical_flow_rad.go new file mode 100644 index 000000000..807f7af7b --- /dev/null +++ b/pkg/dialects/all/msg_optical_flow_rad.go @@ -0,0 +1,36 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// Optical flow from an angular rate flow sensor (e.g. PX4FLOW or mouse sensor) +type MessageOpticalFlowRad struct { + // Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. + TimeUsec uint64 + // Sensor ID + SensorId uint8 + // Integration time. Divide integrated_x and integrated_y by the integration time to obtain average flow. The integration time also indicates the. + IntegrationTimeUs uint32 + // Flow around X axis (Sensor RH rotation about the X axis induces a positive flow. Sensor linear motion along the positive Y axis induces a negative flow.) + IntegratedX float32 + // Flow around Y axis (Sensor RH rotation about the Y axis induces a positive flow. Sensor linear motion along the positive X axis induces a positive flow.) + IntegratedY float32 + // RH rotation around X axis + IntegratedXgyro float32 + // RH rotation around Y axis + IntegratedYgyro float32 + // RH rotation around Z axis + IntegratedZgyro float32 + // Temperature + Temperature int16 + // Optical flow quality / confidence. 0: no valid flow, 255: maximum quality + Quality uint8 + // Time since the distance was sampled. + TimeDeltaDistanceUs uint32 + // Distance to the center of the flow field. Positive value (including zero): distance known. Negative value: Unknown distance. + Distance float32 +} + +// GetID implements the msg.Message interface. +func (*MessageOpticalFlowRad) GetID() uint32 { + return 106 +} diff --git a/pkg/dialects/all/msg_orbit_execution_status.go b/pkg/dialects/all/msg_orbit_execution_status.go new file mode 100644 index 000000000..b65b79e5f --- /dev/null +++ b/pkg/dialects/all/msg_orbit_execution_status.go @@ -0,0 +1,24 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// Vehicle status report that is sent out while orbit execution is in progress (see MAV_CMD_DO_ORBIT). +type MessageOrbitExecutionStatus struct { + // Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. + TimeUsec uint64 + // Radius of the orbit circle. Positive values orbit clockwise, negative values orbit counter-clockwise. + Radius float32 + // The coordinate system of the fields: x, y, z. + Frame MAV_FRAME `mavenum:"uint8"` + // X coordinate of center point. Coordinate system depends on frame field: local = x position in meters * 1e4, global = latitude in degrees * 1e7. + X int32 + // Y coordinate of center point. Coordinate system depends on frame field: local = x position in meters * 1e4, global = latitude in degrees * 1e7. + Y int32 + // Altitude of center point. Coordinate system depends on frame field. + Z float32 +} + +// GetID implements the msg.Message interface. +func (*MessageOrbitExecutionStatus) GetID() uint32 { + return 360 +} diff --git a/pkg/dialects/all/msg_osd_param_config.go b/pkg/dialects/all/msg_osd_param_config.go new file mode 100644 index 000000000..b26e1bbe0 --- /dev/null +++ b/pkg/dialects/all/msg_osd_param_config.go @@ -0,0 +1,32 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// Configure an OSD parameter slot. +type MessageOsdParamConfig struct { + // System ID. + TargetSystem uint8 + // Component ID. + TargetComponent uint8 + // Request ID - copied to reply. + RequestId uint32 + // OSD parameter screen index. + OsdScreen uint8 + // OSD parameter display index. + OsdIndex uint8 + // Onboard parameter id, terminated by NULL if the length is less than 16 human-readable chars and WITHOUT null termination (NULL) byte if the length is exactly 16 chars - applications have to provide 16+1 bytes storage if the ID is stored as string + ParamId string `mavlen:"16"` + // Config type. + ConfigType OSD_PARAM_CONFIG_TYPE `mavenum:"uint8"` + // OSD parameter minimum value. + MinValue float32 + // OSD parameter maximum value. + MaxValue float32 + // OSD parameter increment. + Increment float32 +} + +// GetID implements the msg.Message interface. +func (*MessageOsdParamConfig) GetID() uint32 { + return 11033 +} diff --git a/pkg/dialects/all/msg_osd_param_config_reply.go b/pkg/dialects/all/msg_osd_param_config_reply.go new file mode 100644 index 000000000..2660ae54f --- /dev/null +++ b/pkg/dialects/all/msg_osd_param_config_reply.go @@ -0,0 +1,16 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// Configure OSD parameter reply. +type MessageOsdParamConfigReply struct { + // Request ID - copied from request. + RequestId uint32 + // Config error type. + Result OSD_PARAM_CONFIG_ERROR `mavenum:"uint8"` +} + +// GetID implements the msg.Message interface. +func (*MessageOsdParamConfigReply) GetID() uint32 { + return 11034 +} diff --git a/pkg/dialects/all/msg_osd_param_show_config.go b/pkg/dialects/all/msg_osd_param_show_config.go new file mode 100644 index 000000000..f40953927 --- /dev/null +++ b/pkg/dialects/all/msg_osd_param_show_config.go @@ -0,0 +1,22 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// Read a configured an OSD parameter slot. +type MessageOsdParamShowConfig struct { + // System ID. + TargetSystem uint8 + // Component ID. + TargetComponent uint8 + // Request ID - copied to reply. + RequestId uint32 + // OSD parameter screen index. + OsdScreen uint8 + // OSD parameter display index. + OsdIndex uint8 +} + +// GetID implements the msg.Message interface. +func (*MessageOsdParamShowConfig) GetID() uint32 { + return 11035 +} diff --git a/pkg/dialects/all/msg_osd_param_show_config_reply.go b/pkg/dialects/all/msg_osd_param_show_config_reply.go new file mode 100644 index 000000000..a98a893aa --- /dev/null +++ b/pkg/dialects/all/msg_osd_param_show_config_reply.go @@ -0,0 +1,26 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// Read configured OSD parameter reply. +type MessageOsdParamShowConfigReply struct { + // Request ID - copied from request. + RequestId uint32 + // Config error type. + Result OSD_PARAM_CONFIG_ERROR `mavenum:"uint8"` + // Onboard parameter id, terminated by NULL if the length is less than 16 human-readable chars and WITHOUT null termination (NULL) byte if the length is exactly 16 chars - applications have to provide 16+1 bytes storage if the ID is stored as string + ParamId string `mavlen:"16"` + // Config type. + ConfigType OSD_PARAM_CONFIG_TYPE `mavenum:"uint8"` + // OSD parameter minimum value. + MinValue float32 + // OSD parameter maximum value. + MaxValue float32 + // OSD parameter increment. + Increment float32 +} + +// GetID implements the msg.Message interface. +func (*MessageOsdParamShowConfigReply) GetID() uint32 { + return 11036 +} diff --git a/pkg/dialects/all/msg_param_ack_transaction.go b/pkg/dialects/all/msg_param_ack_transaction.go new file mode 100644 index 000000000..a9d82b6a7 --- /dev/null +++ b/pkg/dialects/all/msg_param_ack_transaction.go @@ -0,0 +1,24 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// Response from a PARAM_SET message when it is used in a transaction. +type MessageParamAckTransaction struct { + // Id of system that sent PARAM_SET message. + TargetSystem uint8 + // Id of system that sent PARAM_SET message. + TargetComponent uint8 + // Parameter id, terminated by NULL if the length is less than 16 human-readable chars and WITHOUT null termination (NULL) byte if the length is exactly 16 chars - applications have to provide 16+1 bytes storage if the ID is stored as string + ParamId string `mavlen:"16"` + // Parameter value (new value if PARAM_ACCEPTED, current value otherwise) + ParamValue float32 + // Parameter type. + ParamType MAV_PARAM_TYPE `mavenum:"uint8"` + // Result code. + ParamResult PARAM_ACK `mavenum:"uint8"` +} + +// GetID implements the msg.Message interface. +func (*MessageParamAckTransaction) GetID() uint32 { + return 19 +} diff --git a/pkg/dialects/all/msg_param_ext_ack.go b/pkg/dialects/all/msg_param_ext_ack.go new file mode 100644 index 000000000..f514bfd7a --- /dev/null +++ b/pkg/dialects/all/msg_param_ext_ack.go @@ -0,0 +1,20 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// Response from a PARAM_EXT_SET message. +type MessageParamExtAck struct { + // Parameter id, terminated by NULL if the length is less than 16 human-readable chars and WITHOUT null termination (NULL) byte if the length is exactly 16 chars - applications have to provide 16+1 bytes storage if the ID is stored as string + ParamId string `mavlen:"16"` + // Parameter value (new value if PARAM_ACK_ACCEPTED, current value otherwise) + ParamValue string `mavlen:"128"` + // Parameter type. + ParamType MAV_PARAM_EXT_TYPE `mavenum:"uint8"` + // Result code. + ParamResult PARAM_ACK `mavenum:"uint8"` +} + +// GetID implements the msg.Message interface. +func (*MessageParamExtAck) GetID() uint32 { + return 324 +} diff --git a/pkg/dialects/all/msg_param_ext_request_list.go b/pkg/dialects/all/msg_param_ext_request_list.go new file mode 100644 index 000000000..51a5363cf --- /dev/null +++ b/pkg/dialects/all/msg_param_ext_request_list.go @@ -0,0 +1,16 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// Request all parameters of this component. All parameters should be emitted in response as PARAM_EXT_VALUE. +type MessageParamExtRequestList struct { + // System ID + TargetSystem uint8 + // Component ID + TargetComponent uint8 +} + +// GetID implements the msg.Message interface. +func (*MessageParamExtRequestList) GetID() uint32 { + return 321 +} diff --git a/pkg/dialects/all/msg_param_ext_request_read.go b/pkg/dialects/all/msg_param_ext_request_read.go new file mode 100644 index 000000000..220978d57 --- /dev/null +++ b/pkg/dialects/all/msg_param_ext_request_read.go @@ -0,0 +1,20 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// Request to read the value of a parameter with either the param_id string id or param_index. PARAM_EXT_VALUE should be emitted in response. +type MessageParamExtRequestRead struct { + // System ID + TargetSystem uint8 + // Component ID + TargetComponent uint8 + // Parameter id, terminated by NULL if the length is less than 16 human-readable chars and WITHOUT null termination (NULL) byte if the length is exactly 16 chars - applications have to provide 16+1 bytes storage if the ID is stored as string + ParamId string `mavlen:"16"` + // Parameter index. Set to -1 to use the Parameter ID field as identifier (else param_id will be ignored) + ParamIndex int16 +} + +// GetID implements the msg.Message interface. +func (*MessageParamExtRequestRead) GetID() uint32 { + return 320 +} diff --git a/pkg/dialects/all/msg_param_ext_set.go b/pkg/dialects/all/msg_param_ext_set.go new file mode 100644 index 000000000..e98e94349 --- /dev/null +++ b/pkg/dialects/all/msg_param_ext_set.go @@ -0,0 +1,22 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// Set a parameter value. In order to deal with message loss (and retransmission of PARAM_EXT_SET), when setting a parameter value and the new value is the same as the current value, you will immediately get a PARAM_ACK_ACCEPTED response. If the current state is PARAM_ACK_IN_PROGRESS, you will accordingly receive a PARAM_ACK_IN_PROGRESS in response. +type MessageParamExtSet struct { + // System ID + TargetSystem uint8 + // Component ID + TargetComponent uint8 + // Parameter id, terminated by NULL if the length is less than 16 human-readable chars and WITHOUT null termination (NULL) byte if the length is exactly 16 chars - applications have to provide 16+1 bytes storage if the ID is stored as string + ParamId string `mavlen:"16"` + // Parameter value + ParamValue string `mavlen:"128"` + // Parameter type. + ParamType MAV_PARAM_EXT_TYPE `mavenum:"uint8"` +} + +// GetID implements the msg.Message interface. +func (*MessageParamExtSet) GetID() uint32 { + return 323 +} diff --git a/pkg/dialects/all/msg_param_ext_value.go b/pkg/dialects/all/msg_param_ext_value.go new file mode 100644 index 000000000..760b0c50f --- /dev/null +++ b/pkg/dialects/all/msg_param_ext_value.go @@ -0,0 +1,22 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// Emit the value of a parameter. The inclusion of param_count and param_index in the message allows the recipient to keep track of received parameters and allows them to re-request missing parameters after a loss or timeout. +type MessageParamExtValue struct { + // Parameter id, terminated by NULL if the length is less than 16 human-readable chars and WITHOUT null termination (NULL) byte if the length is exactly 16 chars - applications have to provide 16+1 bytes storage if the ID is stored as string + ParamId string `mavlen:"16"` + // Parameter value + ParamValue string `mavlen:"128"` + // Parameter type. + ParamType MAV_PARAM_EXT_TYPE `mavenum:"uint8"` + // Total number of parameters + ParamCount uint16 + // Index of this parameter + ParamIndex uint16 +} + +// GetID implements the msg.Message interface. +func (*MessageParamExtValue) GetID() uint32 { + return 322 +} diff --git a/pkg/dialects/all/msg_param_map_rc.go b/pkg/dialects/all/msg_param_map_rc.go new file mode 100644 index 000000000..79ec299d9 --- /dev/null +++ b/pkg/dialects/all/msg_param_map_rc.go @@ -0,0 +1,30 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// Bind a RC channel to a parameter. The parameter should change according to the RC channel value. +type MessageParamMapRc struct { + // System ID + TargetSystem uint8 + // Component ID + TargetComponent uint8 + // Onboard parameter id, terminated by NULL if the length is less than 16 human-readable chars and WITHOUT null termination (NULL) byte if the length is exactly 16 chars - applications have to provide 16+1 bytes storage if the ID is stored as string + ParamId string `mavlen:"16"` + // Parameter index. Send -1 to use the param ID field as identifier (else the param id will be ignored), send -2 to disable any existing map for this rc_channel_index. + ParamIndex int16 + // Index of parameter RC channel. Not equal to the RC channel id. Typically corresponds to a potentiometer-knob on the RC. + ParameterRcChannelIndex uint8 + // Initial parameter value + ParamValue0 float32 + // Scale, maps the RC range [-1, 1] to a parameter value + Scale float32 + // Minimum param value. The protocol does not define if this overwrites an onboard minimum value. (Depends on implementation) + ParamValueMin float32 + // Maximum param value. The protocol does not define if this overwrites an onboard maximum value. (Depends on implementation) + ParamValueMax float32 +} + +// GetID implements the msg.Message interface. +func (*MessageParamMapRc) GetID() uint32 { + return 50 +} diff --git a/pkg/dialects/all/msg_param_request_list.go b/pkg/dialects/all/msg_param_request_list.go new file mode 100644 index 000000000..5b07b300f --- /dev/null +++ b/pkg/dialects/all/msg_param_request_list.go @@ -0,0 +1,16 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// Request all parameters of this component. After this request, all parameters are emitted. The parameter microservice is documented at https://mavlink.io/en/services/parameter.html +type MessageParamRequestList struct { + // System ID + TargetSystem uint8 + // Component ID + TargetComponent uint8 +} + +// GetID implements the msg.Message interface. +func (*MessageParamRequestList) GetID() uint32 { + return 21 +} diff --git a/pkg/dialects/all/msg_param_request_read.go b/pkg/dialects/all/msg_param_request_read.go new file mode 100644 index 000000000..5aeb99c14 --- /dev/null +++ b/pkg/dialects/all/msg_param_request_read.go @@ -0,0 +1,20 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// Request to read the onboard parameter with the param_id string id. Onboard parameters are stored as key[const char*] -> value[float]. This allows to send a parameter to any other component (such as the GCS) without the need of previous knowledge of possible parameter names. Thus the same GCS can store different parameters for different autopilots. See also https://mavlink.io/en/services/parameter.html for a full documentation of QGroundControl and IMU code. +type MessageParamRequestRead struct { + // System ID + TargetSystem uint8 + // Component ID + TargetComponent uint8 + // Onboard parameter id, terminated by NULL if the length is less than 16 human-readable chars and WITHOUT null termination (NULL) byte if the length is exactly 16 chars - applications have to provide 16+1 bytes storage if the ID is stored as string + ParamId string `mavlen:"16"` + // Parameter index. Send -1 to use the param ID field as identifier (else the param id will be ignored) + ParamIndex int16 +} + +// GetID implements the msg.Message interface. +func (*MessageParamRequestRead) GetID() uint32 { + return 20 +} diff --git a/pkg/dialects/all/msg_param_set.go b/pkg/dialects/all/msg_param_set.go new file mode 100644 index 000000000..af93757d1 --- /dev/null +++ b/pkg/dialects/all/msg_param_set.go @@ -0,0 +1,24 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// Set a parameter value (write new value to permanent storage). +// The receiving component should acknowledge the new parameter value by broadcasting a PARAM_VALUE message (broadcasting ensures that multiple GCS all have an up-to-date list of all parameters). If the sending GCS did not receive a PARAM_VALUE within its timeout time, it should re-send the PARAM_SET message. The parameter microservice is documented at https://mavlink.io/en/services/parameter.html. +// PARAM_SET may also be called within the context of a transaction (started with MAV_CMD_PARAM_TRANSACTION). Within a transaction the receiving component should respond with PARAM_ACK_TRANSACTION to the setter component (instead of broadcasting PARAM_VALUE), and PARAM_SET should be re-sent if this is ACK not received. +type MessageParamSet struct { + // System ID + TargetSystem uint8 + // Component ID + TargetComponent uint8 + // Onboard parameter id, terminated by NULL if the length is less than 16 human-readable chars and WITHOUT null termination (NULL) byte if the length is exactly 16 chars - applications have to provide 16+1 bytes storage if the ID is stored as string + ParamId string `mavlen:"16"` + // Onboard parameter value + ParamValue float32 + // Onboard parameter type. + ParamType MAV_PARAM_TYPE `mavenum:"uint8"` +} + +// GetID implements the msg.Message interface. +func (*MessageParamSet) GetID() uint32 { + return 23 +} diff --git a/pkg/dialects/all/msg_param_value.go b/pkg/dialects/all/msg_param_value.go new file mode 100644 index 000000000..d00846f80 --- /dev/null +++ b/pkg/dialects/all/msg_param_value.go @@ -0,0 +1,22 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// Emit the value of a onboard parameter. The inclusion of param_count and param_index in the message allows the recipient to keep track of received parameters and allows him to re-request missing parameters after a loss or timeout. The parameter microservice is documented at https://mavlink.io/en/services/parameter.html +type MessageParamValue struct { + // Onboard parameter id, terminated by NULL if the length is less than 16 human-readable chars and WITHOUT null termination (NULL) byte if the length is exactly 16 chars - applications have to provide 16+1 bytes storage if the ID is stored as string + ParamId string `mavlen:"16"` + // Onboard parameter value + ParamValue float32 + // Onboard parameter type. + ParamType MAV_PARAM_TYPE `mavenum:"uint8"` + // Total number of onboard parameters + ParamCount uint16 + // Index of this onboard parameter + ParamIndex uint16 +} + +// GetID implements the msg.Message interface. +func (*MessageParamValue) GetID() uint32 { + return 22 +} diff --git a/pkg/dialects/all/msg_pid_tuning.go b/pkg/dialects/all/msg_pid_tuning.go new file mode 100644 index 000000000..54358cf35 --- /dev/null +++ b/pkg/dialects/all/msg_pid_tuning.go @@ -0,0 +1,30 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// PID tuning information. +type MessagePidTuning struct { + // Axis. + Axis PID_TUNING_AXIS `mavenum:"uint8"` + // Desired rate. + Desired float32 + // Achieved rate. + Achieved float32 + // FF component. + Ff float32 `mavname:"FF"` + // P component. + P float32 `mavname:"P"` + // I component. + I float32 `mavname:"I"` + // D component. + D float32 `mavname:"D"` + // Slew rate. + Srate float32 `mavext:"true" mavname:"SRate"` + // P/D oscillation modifier. + Pdmod float32 `mavext:"true" mavname:"PDmod"` +} + +// GetID implements the msg.Message interface. +func (*MessagePidTuning) GetID() uint32 { + return 194 +} diff --git a/pkg/dialects/all/msg_ping.go b/pkg/dialects/all/msg_ping.go new file mode 100644 index 000000000..067b8d09a --- /dev/null +++ b/pkg/dialects/all/msg_ping.go @@ -0,0 +1,20 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// A ping message either requesting or responding to a ping. This allows to measure the system latencies, including serial port, radio modem and UDP connections. The ping microservice is documented at https://mavlink.io/en/services/ping.html +type MessagePing struct { + // Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. + TimeUsec uint64 + // PING sequence + Seq uint32 + // 0: request ping from all receiving systems. If greater than 0: message is a ping response and number is the system id of the requesting system + TargetSystem uint8 + // 0: request ping from all receiving components. If greater than 0: message is a ping response and number is the component id of the requesting component. + TargetComponent uint8 +} + +// GetID implements the msg.Message interface. +func (*MessagePing) GetID() uint32 { + return 4 +} diff --git a/pkg/dialects/all/msg_play_tune.go b/pkg/dialects/all/msg_play_tune.go new file mode 100644 index 000000000..1ffebca6a --- /dev/null +++ b/pkg/dialects/all/msg_play_tune.go @@ -0,0 +1,20 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// Control vehicle tone generation (buzzer). +type MessagePlayTune struct { + // System ID + TargetSystem uint8 + // Component ID + TargetComponent uint8 + // tune in board specific format + Tune string `mavlen:"30"` + // tune extension (appended to tune) + Tune2 string `mavext:"true" mavlen:"200"` +} + +// GetID implements the msg.Message interface. +func (*MessagePlayTune) GetID() uint32 { + return 258 +} diff --git a/pkg/dialects/all/msg_play_tune_v2.go b/pkg/dialects/all/msg_play_tune_v2.go new file mode 100644 index 000000000..936626790 --- /dev/null +++ b/pkg/dialects/all/msg_play_tune_v2.go @@ -0,0 +1,20 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// Play vehicle tone/tune (buzzer). Supersedes message PLAY_TUNE. +type MessagePlayTuneV2 struct { + // System ID + TargetSystem uint8 + // Component ID + TargetComponent uint8 + // Tune format + Format TUNE_FORMAT `mavenum:"uint32"` + // Tune definition as a NULL-terminated string. + Tune string `mavlen:"248"` +} + +// GetID implements the msg.Message interface. +func (*MessagePlayTuneV2) GetID() uint32 { + return 400 +} diff --git a/pkg/dialects/all/msg_position_target_global_int.go b/pkg/dialects/all/msg_position_target_global_int.go new file mode 100644 index 000000000..8573d2ad6 --- /dev/null +++ b/pkg/dialects/all/msg_position_target_global_int.go @@ -0,0 +1,40 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// Reports the current commanded vehicle position, velocity, and acceleration as specified by the autopilot. This should match the commands sent in SET_POSITION_TARGET_GLOBAL_INT if the vehicle is being controlled this way. +type MessagePositionTargetGlobalInt struct { + // Timestamp (time since system boot). The rationale for the timestamp in the setpoint is to allow the system to compensate for the transport delay of the setpoint. This allows the system to compensate processing latency. + TimeBootMs uint32 + // Valid options are: MAV_FRAME_GLOBAL_INT = 5, MAV_FRAME_GLOBAL_RELATIVE_ALT_INT = 6, MAV_FRAME_GLOBAL_TERRAIN_ALT_INT = 11 + CoordinateFrame MAV_FRAME `mavenum:"uint8"` + // Bitmap to indicate which dimensions should be ignored by the vehicle. + TypeMask POSITION_TARGET_TYPEMASK `mavenum:"uint16"` + // X Position in WGS84 frame + LatInt int32 + // Y Position in WGS84 frame + LonInt int32 + // Altitude (MSL, AGL or relative to home altitude, depending on frame) + Alt float32 + // X velocity in NED frame + Vx float32 + // Y velocity in NED frame + Vy float32 + // Z velocity in NED frame + Vz float32 + // X acceleration or force (if bit 10 of type_mask is set) in NED frame in meter / s^2 or N + Afx float32 + // Y acceleration or force (if bit 10 of type_mask is set) in NED frame in meter / s^2 or N + Afy float32 + // Z acceleration or force (if bit 10 of type_mask is set) in NED frame in meter / s^2 or N + Afz float32 + // yaw setpoint + Yaw float32 + // yaw rate setpoint + YawRate float32 +} + +// GetID implements the msg.Message interface. +func (*MessagePositionTargetGlobalInt) GetID() uint32 { + return 87 +} diff --git a/pkg/dialects/all/msg_position_target_local_ned.go b/pkg/dialects/all/msg_position_target_local_ned.go new file mode 100644 index 000000000..ef7cb49e5 --- /dev/null +++ b/pkg/dialects/all/msg_position_target_local_ned.go @@ -0,0 +1,40 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// Reports the current commanded vehicle position, velocity, and acceleration as specified by the autopilot. This should match the commands sent in SET_POSITION_TARGET_LOCAL_NED if the vehicle is being controlled this way. +type MessagePositionTargetLocalNed struct { + // Timestamp (time since system boot). + TimeBootMs uint32 + // Valid options are: MAV_FRAME_LOCAL_NED = 1, MAV_FRAME_LOCAL_OFFSET_NED = 7, MAV_FRAME_BODY_NED = 8, MAV_FRAME_BODY_OFFSET_NED = 9 + CoordinateFrame MAV_FRAME `mavenum:"uint8"` + // Bitmap to indicate which dimensions should be ignored by the vehicle. + TypeMask POSITION_TARGET_TYPEMASK `mavenum:"uint16"` + // X Position in NED frame + X float32 + // Y Position in NED frame + Y float32 + // Z Position in NED frame (note, altitude is negative in NED) + Z float32 + // X velocity in NED frame + Vx float32 + // Y velocity in NED frame + Vy float32 + // Z velocity in NED frame + Vz float32 + // X acceleration or force (if bit 10 of type_mask is set) in NED frame in meter / s^2 or N + Afx float32 + // Y acceleration or force (if bit 10 of type_mask is set) in NED frame in meter / s^2 or N + Afy float32 + // Z acceleration or force (if bit 10 of type_mask is set) in NED frame in meter / s^2 or N + Afz float32 + // yaw setpoint + Yaw float32 + // yaw rate setpoint + YawRate float32 +} + +// GetID implements the msg.Message interface. +func (*MessagePositionTargetLocalNed) GetID() uint32 { + return 85 +} diff --git a/pkg/dialects/all/msg_power_status.go b/pkg/dialects/all/msg_power_status.go new file mode 100644 index 000000000..43edde6cb --- /dev/null +++ b/pkg/dialects/all/msg_power_status.go @@ -0,0 +1,18 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// Power supply status +type MessagePowerStatus struct { + // 5V rail voltage. + Vcc uint16 `mavname:"Vcc"` + // Servo rail voltage. + Vservo uint16 `mavname:"Vservo"` + // Bitmap of power supply status flags. + Flags MAV_POWER_STATUS `mavenum:"uint16"` +} + +// GetID implements the msg.Message interface. +func (*MessagePowerStatus) GetID() uint32 { + return 125 +} diff --git a/pkg/dialects/all/msg_protocol_version.go b/pkg/dialects/all/msg_protocol_version.go new file mode 100644 index 000000000..a267c06e1 --- /dev/null +++ b/pkg/dialects/all/msg_protocol_version.go @@ -0,0 +1,22 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// Version and capability of protocol version. This message can be requested with MAV_CMD_REQUEST_MESSAGE and is used as part of the handshaking to establish which MAVLink version should be used on the network. Every node should respond to a request for PROTOCOL_VERSION to enable the handshaking. Library implementers should consider adding this into the default decoding state machine to allow the protocol core to respond directly. +type MessageProtocolVersion struct { + // Currently active MAVLink version number * 100: v1.0 is 100, v2.0 is 200, etc. + Version uint16 + // Minimum MAVLink version supported + MinVersion uint16 + // Maximum MAVLink version supported (set to the same value as version by default) + MaxVersion uint16 + // The first 8 bytes (not characters printed in hex!) of the git hash. + SpecVersionHash [8]uint8 + // The first 8 bytes (not characters printed in hex!) of the git hash. + LibraryVersionHash [8]uint8 +} + +// GetID implements the msg.Message interface. +func (*MessageProtocolVersion) GetID() uint32 { + return 300 +} diff --git a/pkg/dialects/all/msg_qshot_status.go b/pkg/dialects/all/msg_qshot_status.go new file mode 100644 index 000000000..10ac99d9e --- /dev/null +++ b/pkg/dialects/all/msg_qshot_status.go @@ -0,0 +1,16 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// Information about the shot operation. +type MessageQshotStatus struct { + // Current shot mode. + Mode MAV_QSHOT_MODE `mavenum:"uint16"` + // Current state in the shot. States are specific to the selected shot mode. + ShotState uint16 +} + +// GetID implements the msg.Message interface. +func (*MessageQshotStatus) GetID() uint32 { + return 60020 +} diff --git a/pkg/dialects/all/msg_radio.go b/pkg/dialects/all/msg_radio.go new file mode 100644 index 000000000..a50872ca4 --- /dev/null +++ b/pkg/dialects/all/msg_radio.go @@ -0,0 +1,26 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// Status generated by radio. +type MessageRadio struct { + // Local signal strength. + Rssi uint8 + // Remote signal strength. + Remrssi uint8 + // How full the tx buffer is. + Txbuf uint8 + // Background noise level. + Noise uint8 + // Remote background noise level. + Remnoise uint8 + // Receive errors. + Rxerrors uint16 + // Count of error corrected packets. + Fixed uint16 +} + +// GetID implements the msg.Message interface. +func (*MessageRadio) GetID() uint32 { + return 166 +} diff --git a/pkg/dialects/all/msg_radio_calibration.go b/pkg/dialects/all/msg_radio_calibration.go new file mode 100644 index 000000000..a77abcfc7 --- /dev/null +++ b/pkg/dialects/all/msg_radio_calibration.go @@ -0,0 +1,24 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// Complete set of calibration parameters for the radio +type MessageRadioCalibration struct { + // Aileron setpoints: left, center, right + Aileron [3]uint16 + // Elevator setpoints: nose down, center, nose up + Elevator [3]uint16 + // Rudder setpoints: nose left, center, nose right + Rudder [3]uint16 + // Tail gyro mode/gain setpoints: heading hold, rate mode + Gyro [2]uint16 + // Pitch curve setpoints (every 25%) + Pitch [5]uint16 + // Throttle curve setpoints (every 25%) + Throttle [5]uint16 +} + +// GetID implements the msg.Message interface. +func (*MessageRadioCalibration) GetID() uint32 { + return 221 +} diff --git a/pkg/dialects/all/msg_radio_status.go b/pkg/dialects/all/msg_radio_status.go new file mode 100644 index 000000000..f6f33b2b0 --- /dev/null +++ b/pkg/dialects/all/msg_radio_status.go @@ -0,0 +1,26 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// Status generated by radio and injected into MAVLink stream. +type MessageRadioStatus struct { + // Local (message sender) recieved signal strength indication in device-dependent units/scale. Values: [0-254], UINT8_MAX: invalid/unknown. + Rssi uint8 + // Remote (message receiver) signal strength indication in device-dependent units/scale. Values: [0-254], UINT8_MAX: invalid/unknown. + Remrssi uint8 + // Remaining free transmitter buffer space. + Txbuf uint8 + // Local background noise level. These are device dependent RSSI values (scale as approx 2x dB on SiK radios). Values: [0-254], UINT8_MAX: invalid/unknown. + Noise uint8 + // Remote background noise level. These are device dependent RSSI values (scale as approx 2x dB on SiK radios). Values: [0-254], UINT8_MAX: invalid/unknown. + Remnoise uint8 + // Count of radio packet receive errors (since boot). + Rxerrors uint16 + // Count of error corrected radio packets (since boot). + Fixed uint16 +} + +// GetID implements the msg.Message interface. +func (*MessageRadioStatus) GetID() uint32 { + return 109 +} diff --git a/pkg/dialects/all/msg_rally_fetch_point.go b/pkg/dialects/all/msg_rally_fetch_point.go new file mode 100644 index 000000000..d94f58d37 --- /dev/null +++ b/pkg/dialects/all/msg_rally_fetch_point.go @@ -0,0 +1,18 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// Request a current rally point from MAV. MAV should respond with a RALLY_POINT message. MAV should not respond if the request is invalid. +type MessageRallyFetchPoint struct { + // System ID. + TargetSystem uint8 + // Component ID. + TargetComponent uint8 + // Point index (first point is 0). + Idx uint8 +} + +// GetID implements the msg.Message interface. +func (*MessageRallyFetchPoint) GetID() uint32 { + return 176 +} diff --git a/pkg/dialects/all/msg_rally_point.go b/pkg/dialects/all/msg_rally_point.go new file mode 100644 index 000000000..e2f553f45 --- /dev/null +++ b/pkg/dialects/all/msg_rally_point.go @@ -0,0 +1,32 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// A rally point. Used to set a point when from GCS -> MAV. Also used to return a point from MAV -> GCS. +type MessageRallyPoint struct { + // System ID. + TargetSystem uint8 + // Component ID. + TargetComponent uint8 + // Point index (first point is 0). + Idx uint8 + // Total number of points (for sanity checking). + Count uint8 + // Latitude of point. + Lat int32 + // Longitude of point. + Lng int32 + // Transit / loiter altitude relative to home. + Alt int16 + // Break altitude relative to home. + BreakAlt int16 + // Heading to aim for when landing. + LandDir uint16 + // Configuration flags. + Flags RALLY_FLAGS `mavenum:"uint8"` +} + +// GetID implements the msg.Message interface. +func (*MessageRallyPoint) GetID() uint32 { + return 175 +} diff --git a/pkg/dialects/all/msg_rangefinder.go b/pkg/dialects/all/msg_rangefinder.go new file mode 100644 index 000000000..0016739a6 --- /dev/null +++ b/pkg/dialects/all/msg_rangefinder.go @@ -0,0 +1,16 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// Rangefinder reporting. +type MessageRangefinder struct { + // Distance. + Distance float32 + // Raw voltage if available, zero otherwise. + Voltage float32 +} + +// GetID implements the msg.Message interface. +func (*MessageRangefinder) GetID() uint32 { + return 173 +} diff --git a/pkg/dialects/all/msg_raw_imu.go b/pkg/dialects/all/msg_raw_imu.go new file mode 100644 index 000000000..e9a3f8dc1 --- /dev/null +++ b/pkg/dialects/all/msg_raw_imu.go @@ -0,0 +1,36 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// The RAW IMU readings for a 9DOF sensor, which is identified by the id (default IMU1). This message should always contain the true raw values without any scaling to allow data capture and system debugging. +type MessageRawImu struct { + // Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. + TimeUsec uint64 + // X acceleration (raw) + Xacc int16 + // Y acceleration (raw) + Yacc int16 + // Z acceleration (raw) + Zacc int16 + // Angular speed around X axis (raw) + Xgyro int16 + // Angular speed around Y axis (raw) + Ygyro int16 + // Angular speed around Z axis (raw) + Zgyro int16 + // X Magnetic field (raw) + Xmag int16 + // Y Magnetic field (raw) + Ymag int16 + // Z Magnetic field (raw) + Zmag int16 + // Id. Ids are numbered from 0 and map to IMUs numbered from 1 (e.g. IMU1 will have a message with id=0) + Id uint8 `mavext:"true"` + // Temperature, 0: IMU does not provide temperature values. If the IMU is at 0C it must send 1 (0.01C). + Temperature int16 `mavext:"true"` +} + +// GetID implements the msg.Message interface. +func (*MessageRawImu) GetID() uint32 { + return 27 +} diff --git a/pkg/dialects/all/msg_raw_pressure.go b/pkg/dialects/all/msg_raw_pressure.go new file mode 100644 index 000000000..f5023bbbf --- /dev/null +++ b/pkg/dialects/all/msg_raw_pressure.go @@ -0,0 +1,22 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// The RAW pressure readings for the typical setup of one absolute pressure and one differential pressure sensor. The sensor values should be the raw, UNSCALED ADC values. +type MessageRawPressure struct { + // Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. + TimeUsec uint64 + // Absolute pressure (raw) + PressAbs int16 + // Differential pressure 1 (raw, 0 if nonexistent) + PressDiff1 int16 + // Differential pressure 2 (raw, 0 if nonexistent) + PressDiff2 int16 + // Raw Temperature measurement (raw) + Temperature int16 +} + +// GetID implements the msg.Message interface. +func (*MessageRawPressure) GetID() uint32 { + return 28 +} diff --git a/pkg/dialects/all/msg_raw_rpm.go b/pkg/dialects/all/msg_raw_rpm.go new file mode 100644 index 000000000..e6cabf163 --- /dev/null +++ b/pkg/dialects/all/msg_raw_rpm.go @@ -0,0 +1,16 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// RPM sensor data message. +type MessageRawRpm struct { + // Index of this RPM sensor (0-indexed) + Index uint8 + // Indicated rate + Frequency float32 +} + +// GetID implements the msg.Message interface. +func (*MessageRawRpm) GetID() uint32 { + return 339 +} diff --git a/pkg/dialects/all/msg_rc_channels.go b/pkg/dialects/all/msg_rc_channels.go new file mode 100644 index 000000000..4f75e8ff9 --- /dev/null +++ b/pkg/dialects/all/msg_rc_channels.go @@ -0,0 +1,54 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// The PPM values of the RC channels received. The standard PPM modulation is as follows: 1000 microseconds: 0%, 2000 microseconds: 100%. A value of UINT16_MAX implies the channel is unused. Individual receivers/transmitters might violate this specification. +type MessageRcChannels struct { + // Timestamp (time since system boot). + TimeBootMs uint32 + // Total number of RC channels being received. This can be larger than 18, indicating that more channels are available but not given in this message. This value should be 0 when no RC channels are available. + Chancount uint8 + // RC channel 1 value. + Chan1Raw uint16 + // RC channel 2 value. + Chan2Raw uint16 + // RC channel 3 value. + Chan3Raw uint16 + // RC channel 4 value. + Chan4Raw uint16 + // RC channel 5 value. + Chan5Raw uint16 + // RC channel 6 value. + Chan6Raw uint16 + // RC channel 7 value. + Chan7Raw uint16 + // RC channel 8 value. + Chan8Raw uint16 + // RC channel 9 value. + Chan9Raw uint16 + // RC channel 10 value. + Chan10Raw uint16 + // RC channel 11 value. + Chan11Raw uint16 + // RC channel 12 value. + Chan12Raw uint16 + // RC channel 13 value. + Chan13Raw uint16 + // RC channel 14 value. + Chan14Raw uint16 + // RC channel 15 value. + Chan15Raw uint16 + // RC channel 16 value. + Chan16Raw uint16 + // RC channel 17 value. + Chan17Raw uint16 + // RC channel 18 value. + Chan18Raw uint16 + // Receive signal strength indicator in device-dependent units/scale. Values: [0-254], UINT8_MAX: invalid/unknown. + Rssi uint8 +} + +// GetID implements the msg.Message interface. +func (*MessageRcChannels) GetID() uint32 { + return 65 +} diff --git a/pkg/dialects/all/msg_rc_channels_override.go b/pkg/dialects/all/msg_rc_channels_override.go new file mode 100644 index 000000000..f22fdb54a --- /dev/null +++ b/pkg/dialects/all/msg_rc_channels_override.go @@ -0,0 +1,52 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// The RAW values of the RC channels sent to the MAV to override info received from the RC radio. The standard PPM modulation is as follows: 1000 microseconds: 0%, 2000 microseconds: 100%. Individual receivers/transmitters might violate this specification. Note carefully the semantic differences between the first 8 channels and the subsequent channels +type MessageRcChannelsOverride struct { + // System ID + TargetSystem uint8 + // Component ID + TargetComponent uint8 + // RC channel 1 value. A value of UINT16_MAX means to ignore this field. A value of 0 means to release this channel back to the RC radio. + Chan1Raw uint16 + // RC channel 2 value. A value of UINT16_MAX means to ignore this field. A value of 0 means to release this channel back to the RC radio. + Chan2Raw uint16 + // RC channel 3 value. A value of UINT16_MAX means to ignore this field. A value of 0 means to release this channel back to the RC radio. + Chan3Raw uint16 + // RC channel 4 value. A value of UINT16_MAX means to ignore this field. A value of 0 means to release this channel back to the RC radio. + Chan4Raw uint16 + // RC channel 5 value. A value of UINT16_MAX means to ignore this field. A value of 0 means to release this channel back to the RC radio. + Chan5Raw uint16 + // RC channel 6 value. A value of UINT16_MAX means to ignore this field. A value of 0 means to release this channel back to the RC radio. + Chan6Raw uint16 + // RC channel 7 value. A value of UINT16_MAX means to ignore this field. A value of 0 means to release this channel back to the RC radio. + Chan7Raw uint16 + // RC channel 8 value. A value of UINT16_MAX means to ignore this field. A value of 0 means to release this channel back to the RC radio. + Chan8Raw uint16 + // RC channel 9 value. A value of 0 or UINT16_MAX means to ignore this field. A value of UINT16_MAX-1 means to release this channel back to the RC radio. + Chan9Raw uint16 `mavext:"true"` + // RC channel 10 value. A value of 0 or UINT16_MAX means to ignore this field. A value of UINT16_MAX-1 means to release this channel back to the RC radio. + Chan10Raw uint16 `mavext:"true"` + // RC channel 11 value. A value of 0 or UINT16_MAX means to ignore this field. A value of UINT16_MAX-1 means to release this channel back to the RC radio. + Chan11Raw uint16 `mavext:"true"` + // RC channel 12 value. A value of 0 or UINT16_MAX means to ignore this field. A value of UINT16_MAX-1 means to release this channel back to the RC radio. + Chan12Raw uint16 `mavext:"true"` + // RC channel 13 value. A value of 0 or UINT16_MAX means to ignore this field. A value of UINT16_MAX-1 means to release this channel back to the RC radio. + Chan13Raw uint16 `mavext:"true"` + // RC channel 14 value. A value of 0 or UINT16_MAX means to ignore this field. A value of UINT16_MAX-1 means to release this channel back to the RC radio. + Chan14Raw uint16 `mavext:"true"` + // RC channel 15 value. A value of 0 or UINT16_MAX means to ignore this field. A value of UINT16_MAX-1 means to release this channel back to the RC radio. + Chan15Raw uint16 `mavext:"true"` + // RC channel 16 value. A value of 0 or UINT16_MAX means to ignore this field. A value of UINT16_MAX-1 means to release this channel back to the RC radio. + Chan16Raw uint16 `mavext:"true"` + // RC channel 17 value. A value of 0 or UINT16_MAX means to ignore this field. A value of UINT16_MAX-1 means to release this channel back to the RC radio. + Chan17Raw uint16 `mavext:"true"` + // RC channel 18 value. A value of 0 or UINT16_MAX means to ignore this field. A value of UINT16_MAX-1 means to release this channel back to the RC radio. + Chan18Raw uint16 `mavext:"true"` +} + +// GetID implements the msg.Message interface. +func (*MessageRcChannelsOverride) GetID() uint32 { + return 70 +} diff --git a/pkg/dialects/all/msg_rc_channels_raw.go b/pkg/dialects/all/msg_rc_channels_raw.go new file mode 100644 index 000000000..e81b1d4df --- /dev/null +++ b/pkg/dialects/all/msg_rc_channels_raw.go @@ -0,0 +1,34 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// The RAW values of the RC channels received. The standard PPM modulation is as follows: 1000 microseconds: 0%, 2000 microseconds: 100%. A value of UINT16_MAX implies the channel is unused. Individual receivers/transmitters might violate this specification. +type MessageRcChannelsRaw struct { + // Timestamp (time since system boot). + TimeBootMs uint32 + // Servo output port (set of 8 outputs = 1 port). Flight stacks running on Pixhawk should use: 0 = MAIN, 1 = AUX. + Port uint8 + // RC channel 1 value. + Chan1Raw uint16 + // RC channel 2 value. + Chan2Raw uint16 + // RC channel 3 value. + Chan3Raw uint16 + // RC channel 4 value. + Chan4Raw uint16 + // RC channel 5 value. + Chan5Raw uint16 + // RC channel 6 value. + Chan6Raw uint16 + // RC channel 7 value. + Chan7Raw uint16 + // RC channel 8 value. + Chan8Raw uint16 + // Receive signal strength indicator in device-dependent units/scale. Values: [0-254], UINT8_MAX: invalid/unknown. + Rssi uint8 +} + +// GetID implements the msg.Message interface. +func (*MessageRcChannelsRaw) GetID() uint32 { + return 35 +} diff --git a/pkg/dialects/all/msg_rc_channels_scaled.go b/pkg/dialects/all/msg_rc_channels_scaled.go new file mode 100644 index 000000000..08156b97b --- /dev/null +++ b/pkg/dialects/all/msg_rc_channels_scaled.go @@ -0,0 +1,34 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// The scaled values of the RC channels received: (-100%) -10000, (0%) 0, (100%) 10000. Channels that are inactive should be set to UINT16_MAX. +type MessageRcChannelsScaled struct { + // Timestamp (time since system boot). + TimeBootMs uint32 + // Servo output port (set of 8 outputs = 1 port). Flight stacks running on Pixhawk should use: 0 = MAIN, 1 = AUX. + Port uint8 + // RC channel 1 value scaled. + Chan1Scaled int16 + // RC channel 2 value scaled. + Chan2Scaled int16 + // RC channel 3 value scaled. + Chan3Scaled int16 + // RC channel 4 value scaled. + Chan4Scaled int16 + // RC channel 5 value scaled. + Chan5Scaled int16 + // RC channel 6 value scaled. + Chan6Scaled int16 + // RC channel 7 value scaled. + Chan7Scaled int16 + // RC channel 8 value scaled. + Chan8Scaled int16 + // Receive signal strength indicator in device-dependent units/scale. Values: [0-254], UINT8_MAX: invalid/unknown. + Rssi uint8 +} + +// GetID implements the msg.Message interface. +func (*MessageRcChannelsScaled) GetID() uint32 { + return 34 +} diff --git a/pkg/dialects/all/msg_remote_log_block_status.go b/pkg/dialects/all/msg_remote_log_block_status.go new file mode 100644 index 000000000..2380af92e --- /dev/null +++ b/pkg/dialects/all/msg_remote_log_block_status.go @@ -0,0 +1,20 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// Send Status of each log block that autopilot board might have sent. +type MessageRemoteLogBlockStatus struct { + // System ID. + TargetSystem uint8 + // Component ID. + TargetComponent uint8 + // Log data block sequence number. + Seqno uint32 + // Log data block status. + Status MAV_REMOTE_LOG_DATA_BLOCK_STATUSES `mavenum:"uint8"` +} + +// GetID implements the msg.Message interface. +func (*MessageRemoteLogBlockStatus) GetID() uint32 { + return 185 +} diff --git a/pkg/dialects/all/msg_remote_log_data_block.go b/pkg/dialects/all/msg_remote_log_data_block.go new file mode 100644 index 000000000..4913104b2 --- /dev/null +++ b/pkg/dialects/all/msg_remote_log_data_block.go @@ -0,0 +1,20 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// Send a block of log data to remote location. +type MessageRemoteLogDataBlock struct { + // System ID. + TargetSystem uint8 + // Component ID. + TargetComponent uint8 + // Log data block sequence number. + Seqno MAV_REMOTE_LOG_DATA_BLOCK_COMMANDS `mavenum:"uint32"` + // Log data block. + Data [200]uint8 +} + +// GetID implements the msg.Message interface. +func (*MessageRemoteLogDataBlock) GetID() uint32 { + return 184 +} diff --git a/pkg/dialects/all/msg_request_data_stream.go b/pkg/dialects/all/msg_request_data_stream.go new file mode 100644 index 000000000..83f10f986 --- /dev/null +++ b/pkg/dialects/all/msg_request_data_stream.go @@ -0,0 +1,22 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// Request a data stream. +type MessageRequestDataStream struct { + // The target requested to send the message stream. + TargetSystem uint8 + // The target requested to send the message stream. + TargetComponent uint8 + // The ID of the requested data stream + ReqStreamId uint8 + // The requested message rate + ReqMessageRate uint16 + // 1 to start sending, 0 to stop sending. + StartStop uint8 +} + +// GetID implements the msg.Message interface. +func (*MessageRequestDataStream) GetID() uint32 { + return 66 +} diff --git a/pkg/dialects/all/msg_request_event.go b/pkg/dialects/all/msg_request_event.go new file mode 100644 index 000000000..32dfe597f --- /dev/null +++ b/pkg/dialects/all/msg_request_event.go @@ -0,0 +1,20 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// Request one or more events to be (re-)sent. If first_sequence==last_sequence, only a single event is requested. Note that first_sequence can be larger than last_sequence (because the sequence number can wrap). Each sequence will trigger an EVENT or EVENT_ERROR response. +type MessageRequestEvent struct { + // System ID + TargetSystem uint8 + // Component ID + TargetComponent uint8 + // First sequence number of the requested event. + FirstSequence uint16 + // Last sequence number of the requested event. + LastSequence uint16 +} + +// GetID implements the msg.Message interface. +func (*MessageRequestEvent) GetID() uint32 { + return 412 +} diff --git a/pkg/dialects/all/msg_resource_request.go b/pkg/dialects/all/msg_resource_request.go new file mode 100644 index 000000000..d23af94bf --- /dev/null +++ b/pkg/dialects/all/msg_resource_request.go @@ -0,0 +1,22 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// The autopilot is requesting a resource (file, binary, other type of data) +type MessageResourceRequest struct { + // Request ID. This ID should be re-used when sending back URI contents + RequestId uint8 + // The type of requested URI. 0 = a file via URL. 1 = a UAVCAN binary + UriType uint8 + // The requested unique resource identifier (URI). It is not necessarily a straight domain name (depends on the URI type enum) + Uri [120]uint8 + // The way the autopilot wants to receive the URI. 0 = MAVLink FTP. 1 = binary stream. + TransferType uint8 + // The storage path the autopilot wants the URI to be stored in. Will only be valid if the transfer_type has a storage associated (e.g. MAVLink FTP). + Storage [120]uint8 +} + +// GetID implements the msg.Message interface. +func (*MessageResourceRequest) GetID() uint32 { + return 142 +} diff --git a/pkg/dialects/all/msg_response_event_error.go b/pkg/dialects/all/msg_response_event_error.go new file mode 100644 index 000000000..5b6c9b6da --- /dev/null +++ b/pkg/dialects/all/msg_response_event_error.go @@ -0,0 +1,22 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// Response to a REQUEST_EVENT in case of an error (e.g. the event is not available anymore). +type MessageResponseEventError struct { + // System ID + TargetSystem uint8 + // Component ID + TargetComponent uint8 + // Sequence number. + Sequence uint16 + // Oldest Sequence number that is still available after the sequence set in REQUEST_EVENT. + SequenceOldestAvailable uint16 + // Error reason. + Reason MAV_EVENT_ERROR_REASON `mavenum:"uint8"` +} + +// GetID implements the msg.Message interface. +func (*MessageResponseEventError) GetID() uint32 { + return 413 +} diff --git a/pkg/dialects/all/msg_rpm.go b/pkg/dialects/all/msg_rpm.go new file mode 100644 index 000000000..a2ca7f41b --- /dev/null +++ b/pkg/dialects/all/msg_rpm.go @@ -0,0 +1,16 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// RPM sensor output. +type MessageRpm struct { + // RPM Sensor1. + Rpm1 float32 + // RPM Sensor2. + Rpm2 float32 +} + +// GetID implements the msg.Message interface. +func (*MessageRpm) GetID() uint32 { + return 226 +} diff --git a/pkg/dialects/all/msg_safety_allowed_area.go b/pkg/dialects/all/msg_safety_allowed_area.go new file mode 100644 index 000000000..39918fd9a --- /dev/null +++ b/pkg/dialects/all/msg_safety_allowed_area.go @@ -0,0 +1,26 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// Read out the safety zone the MAV currently assumes. +type MessageSafetyAllowedArea struct { + // Coordinate frame. Can be either global, GPS, right-handed with Z axis up or local, right handed, Z axis down. + Frame MAV_FRAME `mavenum:"uint8"` + // x position 1 / Latitude 1 + P1x float32 + // y position 1 / Longitude 1 + P1y float32 + // z position 1 / Altitude 1 + P1z float32 + // x position 2 / Latitude 2 + P2x float32 + // y position 2 / Longitude 2 + P2y float32 + // z position 2 / Altitude 2 + P2z float32 +} + +// GetID implements the msg.Message interface. +func (*MessageSafetyAllowedArea) GetID() uint32 { + return 55 +} diff --git a/pkg/dialects/all/msg_safety_set_allowed_area.go b/pkg/dialects/all/msg_safety_set_allowed_area.go new file mode 100644 index 000000000..8a3f8f7b8 --- /dev/null +++ b/pkg/dialects/all/msg_safety_set_allowed_area.go @@ -0,0 +1,30 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// Set a safety zone (volume), which is defined by two corners of a cube. This message can be used to tell the MAV which setpoints/waypoints to accept and which to reject. Safety areas are often enforced by national or competition regulations. +type MessageSafetySetAllowedArea struct { + // System ID + TargetSystem uint8 + // Component ID + TargetComponent uint8 + // Coordinate frame. Can be either global, GPS, right-handed with Z axis up or local, right handed, Z axis down. + Frame MAV_FRAME `mavenum:"uint8"` + // x position 1 / Latitude 1 + P1x float32 + // y position 1 / Longitude 1 + P1y float32 + // z position 1 / Altitude 1 + P1z float32 + // x position 2 / Latitude 2 + P2x float32 + // y position 2 / Longitude 2 + P2y float32 + // z position 2 / Altitude 2 + P2z float32 +} + +// GetID implements the msg.Message interface. +func (*MessageSafetySetAllowedArea) GetID() uint32 { + return 54 +} diff --git a/pkg/dialects/all/msg_satcom_link_status.go b/pkg/dialects/all/msg_satcom_link_status.go new file mode 100644 index 000000000..512b46254 --- /dev/null +++ b/pkg/dialects/all/msg_satcom_link_status.go @@ -0,0 +1,28 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// Status of the SatCom link +type MessageSatcomLinkStatus struct { + // Timestamp + Timestamp uint64 + // Timestamp of the last successful sbd session + LastHeartbeat uint64 + // Number of failed sessions + FailedSessions uint16 + // Number of successful sessions + SuccessfulSessions uint16 + // Signal quality + SignalQuality uint8 + // Ring call pending + RingPending uint8 + // Transmission session pending + TxSessionPending uint8 + // Receiving session pending + RxSessionPending uint8 +} + +// GetID implements the msg.Message interface. +func (*MessageSatcomLinkStatus) GetID() uint32 { + return 8015 +} diff --git a/pkg/dialects/all/msg_scaled_imu.go b/pkg/dialects/all/msg_scaled_imu.go new file mode 100644 index 000000000..edaa161c7 --- /dev/null +++ b/pkg/dialects/all/msg_scaled_imu.go @@ -0,0 +1,34 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// The RAW IMU readings for the usual 9DOF sensor setup. This message should contain the scaled values to the described units +type MessageScaledImu struct { + // Timestamp (time since system boot). + TimeBootMs uint32 + // X acceleration + Xacc int16 + // Y acceleration + Yacc int16 + // Z acceleration + Zacc int16 + // Angular speed around X axis + Xgyro int16 + // Angular speed around Y axis + Ygyro int16 + // Angular speed around Z axis + Zgyro int16 + // X Magnetic field + Xmag int16 + // Y Magnetic field + Ymag int16 + // Z Magnetic field + Zmag int16 + // Temperature, 0: IMU does not provide temperature values. If the IMU is at 0C it must send 1 (0.01C). + Temperature int16 `mavext:"true"` +} + +// GetID implements the msg.Message interface. +func (*MessageScaledImu) GetID() uint32 { + return 26 +} diff --git a/pkg/dialects/all/msg_scaled_imu2.go b/pkg/dialects/all/msg_scaled_imu2.go new file mode 100644 index 000000000..fbfa8c188 --- /dev/null +++ b/pkg/dialects/all/msg_scaled_imu2.go @@ -0,0 +1,34 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// The RAW IMU readings for secondary 9DOF sensor setup. This message should contain the scaled values to the described units +type MessageScaledImu2 struct { + // Timestamp (time since system boot). + TimeBootMs uint32 + // X acceleration + Xacc int16 + // Y acceleration + Yacc int16 + // Z acceleration + Zacc int16 + // Angular speed around X axis + Xgyro int16 + // Angular speed around Y axis + Ygyro int16 + // Angular speed around Z axis + Zgyro int16 + // X Magnetic field + Xmag int16 + // Y Magnetic field + Ymag int16 + // Z Magnetic field + Zmag int16 + // Temperature, 0: IMU does not provide temperature values. If the IMU is at 0C it must send 1 (0.01C). + Temperature int16 `mavext:"true"` +} + +// GetID implements the msg.Message interface. +func (*MessageScaledImu2) GetID() uint32 { + return 116 +} diff --git a/pkg/dialects/all/msg_scaled_imu3.go b/pkg/dialects/all/msg_scaled_imu3.go new file mode 100644 index 000000000..7a75f9732 --- /dev/null +++ b/pkg/dialects/all/msg_scaled_imu3.go @@ -0,0 +1,34 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// The RAW IMU readings for 3rd 9DOF sensor setup. This message should contain the scaled values to the described units +type MessageScaledImu3 struct { + // Timestamp (time since system boot). + TimeBootMs uint32 + // X acceleration + Xacc int16 + // Y acceleration + Yacc int16 + // Z acceleration + Zacc int16 + // Angular speed around X axis + Xgyro int16 + // Angular speed around Y axis + Ygyro int16 + // Angular speed around Z axis + Zgyro int16 + // X Magnetic field + Xmag int16 + // Y Magnetic field + Ymag int16 + // Z Magnetic field + Zmag int16 + // Temperature, 0: IMU does not provide temperature values. If the IMU is at 0C it must send 1 (0.01C). + Temperature int16 `mavext:"true"` +} + +// GetID implements the msg.Message interface. +func (*MessageScaledImu3) GetID() uint32 { + return 129 +} diff --git a/pkg/dialects/all/msg_scaled_pressure.go b/pkg/dialects/all/msg_scaled_pressure.go new file mode 100644 index 000000000..e3c2f5751 --- /dev/null +++ b/pkg/dialects/all/msg_scaled_pressure.go @@ -0,0 +1,22 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// The pressure readings for the typical setup of one absolute and differential pressure sensor. The units are as specified in each field. +type MessageScaledPressure struct { + // Timestamp (time since system boot). + TimeBootMs uint32 + // Absolute pressure + PressAbs float32 + // Differential pressure 1 + PressDiff float32 + // Absolute pressure temperature + Temperature int16 + // Differential pressure temperature (0, if not available). Report values of 0 (or 1) as 1 cdegC. + TemperaturePressDiff int16 `mavext:"true"` +} + +// GetID implements the msg.Message interface. +func (*MessageScaledPressure) GetID() uint32 { + return 29 +} diff --git a/pkg/dialects/all/msg_scaled_pressure2.go b/pkg/dialects/all/msg_scaled_pressure2.go new file mode 100644 index 000000000..dd664f538 --- /dev/null +++ b/pkg/dialects/all/msg_scaled_pressure2.go @@ -0,0 +1,22 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// Barometer readings for 2nd barometer +type MessageScaledPressure2 struct { + // Timestamp (time since system boot). + TimeBootMs uint32 + // Absolute pressure + PressAbs float32 + // Differential pressure + PressDiff float32 + // Absolute pressure temperature + Temperature int16 + // Differential pressure temperature (0, if not available). Report values of 0 (or 1) as 1 cdegC. + TemperaturePressDiff int16 `mavext:"true"` +} + +// GetID implements the msg.Message interface. +func (*MessageScaledPressure2) GetID() uint32 { + return 137 +} diff --git a/pkg/dialects/all/msg_scaled_pressure3.go b/pkg/dialects/all/msg_scaled_pressure3.go new file mode 100644 index 000000000..479a6361d --- /dev/null +++ b/pkg/dialects/all/msg_scaled_pressure3.go @@ -0,0 +1,22 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// Barometer readings for 3rd barometer +type MessageScaledPressure3 struct { + // Timestamp (time since system boot). + TimeBootMs uint32 + // Absolute pressure + PressAbs float32 + // Differential pressure + PressDiff float32 + // Absolute pressure temperature + Temperature int16 + // Differential pressure temperature (0, if not available). Report values of 0 (or 1) as 1 cdegC. + TemperaturePressDiff int16 `mavext:"true"` +} + +// GetID implements the msg.Message interface. +func (*MessageScaledPressure3) GetID() uint32 { + return 143 +} diff --git a/pkg/dialects/all/msg_sens_atmos.go b/pkg/dialects/all/msg_sens_atmos.go new file mode 100644 index 000000000..c9ab72b84 --- /dev/null +++ b/pkg/dialects/all/msg_sens_atmos.go @@ -0,0 +1,18 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// Atmospheric sensors (temperature, humidity, ...) +type MessageSensAtmos struct { + // Time since system boot + Timestamp uint64 + // Ambient temperature + Tempambient float32 `mavname:"TempAmbient"` + // Relative humidity + Humidity float32 `mavname:"Humidity"` +} + +// GetID implements the msg.Message interface. +func (*MessageSensAtmos) GetID() uint32 { + return 8009 +} diff --git a/pkg/dialects/all/msg_sens_batmon.go b/pkg/dialects/all/msg_sens_batmon.go new file mode 100644 index 000000000..7ee781cfa --- /dev/null +++ b/pkg/dialects/all/msg_sens_batmon.go @@ -0,0 +1,42 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// Battery pack monitoring data for Li-Ion batteries +type MessageSensBatmon struct { + // Time since system start + BatmonTimestamp uint64 + // Battery pack temperature + Temperature float32 + // Battery pack voltage + Voltage uint16 + // Battery pack current + Current int16 + // Battery pack state-of-charge + Soc uint8 `mavname:"SoC"` + // Battery monitor status report bits in Hex + Batterystatus uint16 + // Battery monitor serial number in Hex + Serialnumber uint16 + // Battery monitor safetystatus report bits in Hex + Safetystatus uint32 + // Battery monitor operation status report bits in Hex + Operationstatus uint32 + // Battery pack cell 1 voltage + Cellvoltage1 uint16 + // Battery pack cell 2 voltage + Cellvoltage2 uint16 + // Battery pack cell 3 voltage + Cellvoltage3 uint16 + // Battery pack cell 4 voltage + Cellvoltage4 uint16 + // Battery pack cell 5 voltage + Cellvoltage5 uint16 + // Battery pack cell 6 voltage + Cellvoltage6 uint16 +} + +// GetID implements the msg.Message interface. +func (*MessageSensBatmon) GetID() uint32 { + return 8010 +} diff --git a/pkg/dialects/all/msg_sens_mppt.go b/pkg/dialects/all/msg_sens_mppt.go new file mode 100644 index 000000000..778de2036 --- /dev/null +++ b/pkg/dialects/all/msg_sens_mppt.go @@ -0,0 +1,38 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// Maximum Power Point Tracker (MPPT) sensor data for solar module power performance tracking +type MessageSensMppt struct { + // MPPT last timestamp + MpptTimestamp uint64 + // MPPT1 voltage + Mppt1Volt float32 + // MPPT1 current + Mppt1Amp float32 + // MPPT1 pwm + Mppt1Pwm uint16 + // MPPT1 status + Mppt1Status uint8 + // MPPT2 voltage + Mppt2Volt float32 + // MPPT2 current + Mppt2Amp float32 + // MPPT2 pwm + Mppt2Pwm uint16 + // MPPT2 status + Mppt2Status uint8 + // MPPT3 voltage + Mppt3Volt float32 + // MPPT3 current + Mppt3Amp float32 + // MPPT3 pwm + Mppt3Pwm uint16 + // MPPT3 status + Mppt3Status uint8 +} + +// GetID implements the msg.Message interface. +func (*MessageSensMppt) GetID() uint32 { + return 8003 +} diff --git a/pkg/dialects/all/msg_sens_power.go b/pkg/dialects/all/msg_sens_power.go new file mode 100644 index 000000000..a764d97d4 --- /dev/null +++ b/pkg/dialects/all/msg_sens_power.go @@ -0,0 +1,20 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// Voltage and current sensor data +type MessageSensPower struct { + // Power board voltage sensor reading + Adc121VspbVolt float32 + // Power board current sensor reading + Adc121CspbAmp float32 + // Board current sensor 1 reading + Adc121Cs1Amp float32 + // Board current sensor 2 reading + Adc121Cs2Amp float32 +} + +// GetID implements the msg.Message interface. +func (*MessageSensPower) GetID() uint32 { + return 8002 +} diff --git a/pkg/dialects/all/msg_sens_power_board.go b/pkg/dialects/all/msg_sens_power_board.go new file mode 100644 index 000000000..e457b9520 --- /dev/null +++ b/pkg/dialects/all/msg_sens_power_board.go @@ -0,0 +1,36 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// Monitoring of power board status +type MessageSensPowerBoard struct { + // Timestamp + Timestamp uint64 + // Power board status register + PwrBrdStatus uint8 + // Power board leds status + PwrBrdLedStatus uint8 + // Power board system voltage + PwrBrdSystemVolt float32 + // Power board servo voltage + PwrBrdServoVolt float32 + // Power board digital voltage + PwrBrdDigitalVolt float32 + // Power board left motor current sensor + PwrBrdMotLAmp float32 + // Power board right motor current sensor + PwrBrdMotRAmp float32 + // Power board analog current sensor + PwrBrdAnalogAmp float32 + // Power board digital current sensor + PwrBrdDigitalAmp float32 + // Power board extension current sensor + PwrBrdExtAmp float32 + // Power board aux current sensor + PwrBrdAuxAmp float32 +} + +// GetID implements the msg.Message interface. +func (*MessageSensPowerBoard) GetID() uint32 { + return 8013 +} diff --git a/pkg/dialects/all/msg_sensor_airflow_angles.go b/pkg/dialects/all/msg_sensor_airflow_angles.go new file mode 100644 index 000000000..7627cbd58 --- /dev/null +++ b/pkg/dialects/all/msg_sensor_airflow_angles.go @@ -0,0 +1,22 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// Calibrated airflow angle measurements +type MessageSensorAirflowAngles struct { + // Timestamp + Timestamp uint64 + // Angle of attack + Angleofattack float32 + // Angle of attack measurement valid + AngleofattackValid uint8 + // Sideslip angle + Sideslip float32 + // Sideslip angle measurement valid + SideslipValid uint8 +} + +// GetID implements the msg.Message interface. +func (*MessageSensorAirflowAngles) GetID() uint32 { + return 8016 +} diff --git a/pkg/dialects/all/msg_sensor_offsets.go b/pkg/dialects/all/msg_sensor_offsets.go new file mode 100644 index 000000000..5208b1ad6 --- /dev/null +++ b/pkg/dialects/all/msg_sensor_offsets.go @@ -0,0 +1,36 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// Offsets and calibrations values for hardware sensors. This makes it easier to debug the calibration process. +type MessageSensorOffsets struct { + // Magnetometer X offset. + MagOfsX int16 + // Magnetometer Y offset. + MagOfsY int16 + // Magnetometer Z offset. + MagOfsZ int16 + // Magnetic declination. + MagDeclination float32 + // Raw pressure from barometer. + RawPress int32 + // Raw temperature from barometer. + RawTemp int32 + // Gyro X calibration. + GyroCalX float32 + // Gyro Y calibration. + GyroCalY float32 + // Gyro Z calibration. + GyroCalZ float32 + // Accel X calibration. + AccelCalX float32 + // Accel Y calibration. + AccelCalY float32 + // Accel Z calibration. + AccelCalZ float32 +} + +// GetID implements the msg.Message interface. +func (*MessageSensorOffsets) GetID() uint32 { + return 150 +} diff --git a/pkg/dialects/all/msg_sensorpod_status.go b/pkg/dialects/all/msg_sensorpod_status.go new file mode 100644 index 000000000..d6717ca44 --- /dev/null +++ b/pkg/dialects/all/msg_sensorpod_status.go @@ -0,0 +1,28 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// Monitoring of sensorpod status +type MessageSensorpodStatus struct { + // Timestamp in linuxtime (since 1.1.1970) + Timestamp uint64 + // Rate of ROS topic 1 + VisensorRate_1 uint8 + // Rate of ROS topic 2 + VisensorRate_2 uint8 + // Rate of ROS topic 3 + VisensorRate_3 uint8 + // Rate of ROS topic 4 + VisensorRate_4 uint8 + // Number of recording nodes + RecordingNodesCount uint8 + // Temperature of sensorpod CPU in + CpuTemp uint8 + // Free space available in recordings directory in [Gb] * 1e2 + FreeSpace uint16 +} + +// GetID implements the msg.Message interface. +func (*MessageSensorpodStatus) GetID() uint32 { + return 8012 +} diff --git a/pkg/dialects/all/msg_serial_control.go b/pkg/dialects/all/msg_serial_control.go new file mode 100644 index 000000000..21053bda6 --- /dev/null +++ b/pkg/dialects/all/msg_serial_control.go @@ -0,0 +1,28 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// Control a serial port. This can be used for raw access to an onboard serial peripheral such as a GPS or telemetry radio. It is designed to make it possible to update the devices firmware via MAVLink messages or change the devices settings. A message with zero bytes can be used to change just the baudrate. +type MessageSerialControl struct { + // Serial control device type. + Device SERIAL_CONTROL_DEV `mavenum:"uint8"` + // Bitmap of serial control flags. + Flags SERIAL_CONTROL_FLAG `mavenum:"uint8"` + // Timeout for reply data + Timeout uint16 + // Baudrate of transfer. Zero means no change. + Baudrate uint32 + // how many bytes in this transfer + Count uint8 + // serial data + Data [70]uint8 + // System ID + TargetSystem uint8 `mavext:"true"` + // Component ID + TargetComponent uint8 `mavext:"true"` +} + +// GetID implements the msg.Message interface. +func (*MessageSerialControl) GetID() uint32 { + return 126 +} diff --git a/pkg/dialects/all/msg_servo_output_raw.go b/pkg/dialects/all/msg_servo_output_raw.go new file mode 100644 index 000000000..df93e7264 --- /dev/null +++ b/pkg/dialects/all/msg_servo_output_raw.go @@ -0,0 +1,48 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// Superseded by ACTUATOR_OUTPUT_STATUS. The RAW values of the servo outputs (for RC input from the remote, use the RC_CHANNELS messages). The standard PPM modulation is as follows: 1000 microseconds: 0%, 2000 microseconds: 100%. +type MessageServoOutputRaw struct { + // Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. + TimeUsec uint32 + // Servo output port (set of 8 outputs = 1 port). Flight stacks running on Pixhawk should use: 0 = MAIN, 1 = AUX. + Port uint8 + // Servo output 1 value + Servo1Raw uint16 + // Servo output 2 value + Servo2Raw uint16 + // Servo output 3 value + Servo3Raw uint16 + // Servo output 4 value + Servo4Raw uint16 + // Servo output 5 value + Servo5Raw uint16 + // Servo output 6 value + Servo6Raw uint16 + // Servo output 7 value + Servo7Raw uint16 + // Servo output 8 value + Servo8Raw uint16 + // Servo output 9 value + Servo9Raw uint16 `mavext:"true"` + // Servo output 10 value + Servo10Raw uint16 `mavext:"true"` + // Servo output 11 value + Servo11Raw uint16 `mavext:"true"` + // Servo output 12 value + Servo12Raw uint16 `mavext:"true"` + // Servo output 13 value + Servo13Raw uint16 `mavext:"true"` + // Servo output 14 value + Servo14Raw uint16 `mavext:"true"` + // Servo output 15 value + Servo15Raw uint16 `mavext:"true"` + // Servo output 16 value + Servo16Raw uint16 `mavext:"true"` +} + +// GetID implements the msg.Message interface. +func (*MessageServoOutputRaw) GetID() uint32 { + return 36 +} diff --git a/pkg/dialects/all/msg_set_actuator_control_target.go b/pkg/dialects/all/msg_set_actuator_control_target.go new file mode 100644 index 000000000..44f3217af --- /dev/null +++ b/pkg/dialects/all/msg_set_actuator_control_target.go @@ -0,0 +1,22 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// Set the vehicle attitude and body angular rates. +type MessageSetActuatorControlTarget struct { + // Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. + TimeUsec uint64 + // Actuator group. The "_mlx" indicates this is a multi-instance message and a MAVLink parser should use this field to difference between instances. + GroupMlx uint8 + // System ID + TargetSystem uint8 + // Component ID + TargetComponent uint8 + // Actuator controls. Normed to -1..+1 where 0 is neutral position. Throttle for single rotation direction motors is 0..1, negative range for reverse direction. Standard mapping for attitude controls (group 0): (index 0-7): roll, pitch, yaw, throttle, flaps, spoilers, airbrakes, landing gear. Load a pass-through mixer to repurpose them as generic outputs. + Controls [8]float32 +} + +// GetID implements the msg.Message interface. +func (*MessageSetActuatorControlTarget) GetID() uint32 { + return 139 +} diff --git a/pkg/dialects/all/msg_set_attitude_target.go b/pkg/dialects/all/msg_set_attitude_target.go new file mode 100644 index 000000000..62c6d9804 --- /dev/null +++ b/pkg/dialects/all/msg_set_attitude_target.go @@ -0,0 +1,32 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// Sets a desired vehicle attitude. Used by an external controller to command the vehicle (manual controller or other system). +type MessageSetAttitudeTarget struct { + // Timestamp (time since system boot). + TimeBootMs uint32 + // System ID + TargetSystem uint8 + // Component ID + TargetComponent uint8 + // Bitmap to indicate which dimensions should be ignored by the vehicle. + TypeMask ATTITUDE_TARGET_TYPEMASK `mavenum:"uint8"` + // Attitude quaternion (w, x, y, z order, zero-rotation is 1, 0, 0, 0) + Q [4]float32 + // Body roll rate + BodyRollRate float32 + // Body pitch rate + BodyPitchRate float32 + // Body yaw rate + BodyYawRate float32 + // Collective thrust, normalized to 0 .. 1 (-1 .. 1 for vehicles capable of reverse trust) + Thrust float32 + // 3D thrust setpoint in the body NED frame, normalized to -1 .. 1 + ThrustBody [3]float32 `mavext:"true"` +} + +// GetID implements the msg.Message interface. +func (*MessageSetAttitudeTarget) GetID() uint32 { + return 82 +} diff --git a/pkg/dialects/all/msg_set_gps_global_origin.go b/pkg/dialects/all/msg_set_gps_global_origin.go new file mode 100644 index 000000000..2391ba56d --- /dev/null +++ b/pkg/dialects/all/msg_set_gps_global_origin.go @@ -0,0 +1,22 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// Sets the GPS co-ordinates of the vehicle local origin (0,0,0) position. Vehicle should emit GPS_GLOBAL_ORIGIN irrespective of whether the origin is changed. This enables transform between the local coordinate frame and the global (GPS) coordinate frame, which may be necessary when (for example) indoor and outdoor settings are connected and the MAV should move from in- to outdoor. +type MessageSetGpsGlobalOrigin struct { + // System ID + TargetSystem uint8 + // Latitude (WGS84) + Latitude int32 + // Longitude (WGS84) + Longitude int32 + // Altitude (MSL). Positive for up. + Altitude int32 + // Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. + TimeUsec uint64 `mavext:"true"` +} + +// GetID implements the msg.Message interface. +func (*MessageSetGpsGlobalOrigin) GetID() uint32 { + return 48 +} diff --git a/pkg/dialects/all/msg_set_home_position.go b/pkg/dialects/all/msg_set_home_position.go new file mode 100644 index 000000000..1d333c1fa --- /dev/null +++ b/pkg/dialects/all/msg_set_home_position.go @@ -0,0 +1,36 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// The position the system will return to and land on. The position is set automatically by the system during the takeoff in case it was not explicitly set by the operator before or after. The global and local positions encode the position in the respective coordinate frames, while the q parameter encodes the orientation of the surface. Under normal conditions it describes the heading and terrain slope, which can be used by the aircraft to adjust the approach. The approach 3D vector describes the point to which the system should fly in normal flight mode and then perform a landing sequence along the vector. +type MessageSetHomePosition struct { + // System ID. + TargetSystem uint8 + // Latitude (WGS84) + Latitude int32 + // Longitude (WGS84) + Longitude int32 + // Altitude (MSL). Positive for up. + Altitude int32 + // Local X position of this position in the local coordinate frame + X float32 + // Local Y position of this position in the local coordinate frame + Y float32 + // Local Z position of this position in the local coordinate frame + Z float32 + // World to surface normal and heading transformation of the takeoff position. Used to indicate the heading and slope of the ground + Q [4]float32 + // Local X position of the end of the approach vector. Multicopters should set this position based on their takeoff path. Grass-landing fixed wing aircraft should set it the same way as multicopters. Runway-landing fixed wing aircraft should set it to the opposite direction of the takeoff, assuming the takeoff happened from the threshold / touchdown zone. + ApproachX float32 + // Local Y position of the end of the approach vector. Multicopters should set this position based on their takeoff path. Grass-landing fixed wing aircraft should set it the same way as multicopters. Runway-landing fixed wing aircraft should set it to the opposite direction of the takeoff, assuming the takeoff happened from the threshold / touchdown zone. + ApproachY float32 + // Local Z position of the end of the approach vector. Multicopters should set this position based on their takeoff path. Grass-landing fixed wing aircraft should set it the same way as multicopters. Runway-landing fixed wing aircraft should set it to the opposite direction of the takeoff, assuming the takeoff happened from the threshold / touchdown zone. + ApproachZ float32 + // Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. + TimeUsec uint64 `mavext:"true"` +} + +// GetID implements the msg.Message interface. +func (*MessageSetHomePosition) GetID() uint32 { + return 243 +} diff --git a/pkg/dialects/all/msg_set_mag_offsets.go b/pkg/dialects/all/msg_set_mag_offsets.go new file mode 100644 index 000000000..0f3197964 --- /dev/null +++ b/pkg/dialects/all/msg_set_mag_offsets.go @@ -0,0 +1,22 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// Set the magnetometer offsets +type MessageSetMagOffsets struct { + // System ID. + TargetSystem uint8 + // Component ID. + TargetComponent uint8 + // Magnetometer X offset. + MagOfsX int16 + // Magnetometer Y offset. + MagOfsY int16 + // Magnetometer Z offset. + MagOfsZ int16 +} + +// GetID implements the msg.Message interface. +func (*MessageSetMagOffsets) GetID() uint32 { + return 151 +} diff --git a/pkg/dialects/all/msg_set_mode.go b/pkg/dialects/all/msg_set_mode.go new file mode 100644 index 000000000..5368dd08c --- /dev/null +++ b/pkg/dialects/all/msg_set_mode.go @@ -0,0 +1,18 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// Set the system mode, as defined by enum MAV_MODE. There is no target component id as the mode is by definition for the overall aircraft, not only for one component. +type MessageSetMode struct { + // The system setting the mode + TargetSystem uint8 + // The new base mode. + BaseMode MAV_MODE `mavenum:"uint8"` + // The new autopilot-specific mode. This field can be ignored by an autopilot. + CustomMode uint32 +} + +// GetID implements the msg.Message interface. +func (*MessageSetMode) GetID() uint32 { + return 11 +} diff --git a/pkg/dialects/all/msg_set_position_target_global_int.go b/pkg/dialects/all/msg_set_position_target_global_int.go new file mode 100644 index 000000000..d0284e2a2 --- /dev/null +++ b/pkg/dialects/all/msg_set_position_target_global_int.go @@ -0,0 +1,44 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// Sets a desired vehicle position, velocity, and/or acceleration in a global coordinate system (WGS84). Used by an external controller to command the vehicle (manual controller or other system). +type MessageSetPositionTargetGlobalInt struct { + // Timestamp (time since system boot). The rationale for the timestamp in the setpoint is to allow the system to compensate for the transport delay of the setpoint. This allows the system to compensate processing latency. + TimeBootMs uint32 + // System ID + TargetSystem uint8 + // Component ID + TargetComponent uint8 + // Valid options are: MAV_FRAME_GLOBAL_INT = 5, MAV_FRAME_GLOBAL_RELATIVE_ALT_INT = 6, MAV_FRAME_GLOBAL_TERRAIN_ALT_INT = 11 + CoordinateFrame MAV_FRAME `mavenum:"uint8"` + // Bitmap to indicate which dimensions should be ignored by the vehicle. + TypeMask POSITION_TARGET_TYPEMASK `mavenum:"uint16"` + // X Position in WGS84 frame + LatInt int32 + // Y Position in WGS84 frame + LonInt int32 + // Altitude (MSL, Relative to home, or AGL - depending on frame) + Alt float32 + // X velocity in NED frame + Vx float32 + // Y velocity in NED frame + Vy float32 + // Z velocity in NED frame + Vz float32 + // X acceleration or force (if bit 10 of type_mask is set) in NED frame in meter / s^2 or N + Afx float32 + // Y acceleration or force (if bit 10 of type_mask is set) in NED frame in meter / s^2 or N + Afy float32 + // Z acceleration or force (if bit 10 of type_mask is set) in NED frame in meter / s^2 or N + Afz float32 + // yaw setpoint + Yaw float32 + // yaw rate setpoint + YawRate float32 +} + +// GetID implements the msg.Message interface. +func (*MessageSetPositionTargetGlobalInt) GetID() uint32 { + return 86 +} diff --git a/pkg/dialects/all/msg_set_position_target_local_ned.go b/pkg/dialects/all/msg_set_position_target_local_ned.go new file mode 100644 index 000000000..fbe797947 --- /dev/null +++ b/pkg/dialects/all/msg_set_position_target_local_ned.go @@ -0,0 +1,44 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// Sets a desired vehicle position in a local north-east-down coordinate frame. Used by an external controller to command the vehicle (manual controller or other system). +type MessageSetPositionTargetLocalNed struct { + // Timestamp (time since system boot). + TimeBootMs uint32 + // System ID + TargetSystem uint8 + // Component ID + TargetComponent uint8 + // Valid options are: MAV_FRAME_LOCAL_NED = 1, MAV_FRAME_LOCAL_OFFSET_NED = 7, MAV_FRAME_BODY_NED = 8, MAV_FRAME_BODY_OFFSET_NED = 9 + CoordinateFrame MAV_FRAME `mavenum:"uint8"` + // Bitmap to indicate which dimensions should be ignored by the vehicle. + TypeMask POSITION_TARGET_TYPEMASK `mavenum:"uint16"` + // X Position in NED frame + X float32 + // Y Position in NED frame + Y float32 + // Z Position in NED frame (note, altitude is negative in NED) + Z float32 + // X velocity in NED frame + Vx float32 + // Y velocity in NED frame + Vy float32 + // Z velocity in NED frame + Vz float32 + // X acceleration or force (if bit 10 of type_mask is set) in NED frame in meter / s^2 or N + Afx float32 + // Y acceleration or force (if bit 10 of type_mask is set) in NED frame in meter / s^2 or N + Afy float32 + // Z acceleration or force (if bit 10 of type_mask is set) in NED frame in meter / s^2 or N + Afz float32 + // yaw setpoint + Yaw float32 + // yaw rate setpoint + YawRate float32 +} + +// GetID implements the msg.Message interface. +func (*MessageSetPositionTargetLocalNed) GetID() uint32 { + return 84 +} diff --git a/pkg/dialects/all/msg_setup_signing.go b/pkg/dialects/all/msg_setup_signing.go new file mode 100644 index 000000000..04222813d --- /dev/null +++ b/pkg/dialects/all/msg_setup_signing.go @@ -0,0 +1,20 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// Setup a MAVLink2 signing key. If called with secret_key of all zero and zero initial_timestamp will disable signing +type MessageSetupSigning struct { + // system id of the target + TargetSystem uint8 + // component ID of the target + TargetComponent uint8 + // signing key + SecretKey [32]uint8 + // initial timestamp + InitialTimestamp uint64 +} + +// GetID implements the msg.Message interface. +func (*MessageSetupSigning) GetID() uint32 { + return 256 +} diff --git a/pkg/dialects/all/msg_sim_state.go b/pkg/dialects/all/msg_sim_state.go new file mode 100644 index 000000000..3911f0b58 --- /dev/null +++ b/pkg/dialects/all/msg_sim_state.go @@ -0,0 +1,54 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// Status of simulation environment, if used +type MessageSimState struct { + // True attitude quaternion component 1, w (1 in null-rotation) + Q1 float32 + // True attitude quaternion component 2, x (0 in null-rotation) + Q2 float32 + // True attitude quaternion component 3, y (0 in null-rotation) + Q3 float32 + // True attitude quaternion component 4, z (0 in null-rotation) + Q4 float32 + // Attitude roll expressed as Euler angles, not recommended except for human-readable outputs + Roll float32 + // Attitude pitch expressed as Euler angles, not recommended except for human-readable outputs + Pitch float32 + // Attitude yaw expressed as Euler angles, not recommended except for human-readable outputs + Yaw float32 + // X acceleration + Xacc float32 + // Y acceleration + Yacc float32 + // Z acceleration + Zacc float32 + // Angular speed around X axis + Xgyro float32 + // Angular speed around Y axis + Ygyro float32 + // Angular speed around Z axis + Zgyro float32 + // Latitude + Lat float32 + // Longitude + Lon float32 + // Altitude + Alt float32 + // Horizontal position standard deviation + StdDevHorz float32 + // Vertical position standard deviation + StdDevVert float32 + // True velocity in north direction in earth-fixed NED frame + Vn float32 + // True velocity in east direction in earth-fixed NED frame + Ve float32 + // True velocity in down direction in earth-fixed NED frame + Vd float32 +} + +// GetID implements the msg.Message interface. +func (*MessageSimState) GetID() uint32 { + return 108 +} diff --git a/pkg/dialects/all/msg_simstate.go b/pkg/dialects/all/msg_simstate.go new file mode 100644 index 000000000..18c131917 --- /dev/null +++ b/pkg/dialects/all/msg_simstate.go @@ -0,0 +1,34 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// Status of simulation environment, if used. +type MessageSimstate struct { + // Roll angle. + Roll float32 + // Pitch angle. + Pitch float32 + // Yaw angle. + Yaw float32 + // X acceleration. + Xacc float32 + // Y acceleration. + Yacc float32 + // Z acceleration. + Zacc float32 + // Angular speed around X axis. + Xgyro float32 + // Angular speed around Y axis. + Ygyro float32 + // Angular speed around Z axis. + Zgyro float32 + // Latitude. + Lat int32 + // Longitude. + Lng int32 +} + +// GetID implements the msg.Message interface. +func (*MessageSimstate) GetID() uint32 { + return 164 +} diff --git a/pkg/dialects/all/msg_smart_battery_info.go b/pkg/dialects/all/msg_smart_battery_info.go new file mode 100644 index 000000000..5e9817f9f --- /dev/null +++ b/pkg/dialects/all/msg_smart_battery_info.go @@ -0,0 +1,46 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// Smart Battery information (static/infrequent update). Use for updates from: smart battery to flight stack, flight stack to GCS. Use BATTERY_STATUS for smart battery frequent updates. +type MessageSmartBatteryInfo struct { + // Battery ID + Id uint8 + // Function of the battery + BatteryFunction MAV_BATTERY_FUNCTION `mavenum:"uint8"` + // Type (chemistry) of the battery + Type MAV_BATTERY_TYPE `mavenum:"uint8"` + // Capacity when full according to manufacturer, -1: field not provided. + CapacityFullSpecification int32 + // Capacity when full (accounting for battery degradation), -1: field not provided. + CapacityFull int32 + // Charge/discharge cycle count. UINT16_MAX: field not provided. + CycleCount uint16 + // Serial number in ASCII characters, 0 terminated. All 0: field not provided. + SerialNumber string `mavlen:"16"` + // Static device name in ASCII characters, 0 terminated. All 0: field not provided. Encode as manufacturer name then product name separated using an underscore. + DeviceName string `mavlen:"50"` + // Battery weight. 0: field not provided. + Weight uint16 + // Minimum per-cell voltage when discharging. If not supplied set to UINT16_MAX value. + DischargeMinimumVoltage uint16 + // Minimum per-cell voltage when charging. If not supplied set to UINT16_MAX value. + ChargingMinimumVoltage uint16 + // Minimum per-cell voltage when resting. If not supplied set to UINT16_MAX value. + RestingMinimumVoltage uint16 + // Maximum per-cell voltage when charged. 0: field not provided. + ChargingMaximumVoltage uint16 `mavext:"true"` + // Number of battery cells in series. 0: field not provided. + CellsInSeries uint8 `mavext:"true"` + // Maximum pack discharge current. 0: field not provided. + DischargeMaximumCurrent uint32 `mavext:"true"` + // Maximum pack discharge burst current. 0: field not provided. + DischargeMaximumBurstCurrent uint32 `mavext:"true"` + // Manufacture date (DD/MM/YYYY) in ASCII characters, 0 terminated. All 0: field not provided. + ManufactureDate string `mavext:"true" mavlen:"11"` +} + +// GetID implements the msg.Message interface. +func (*MessageSmartBatteryInfo) GetID() uint32 { + return 370 +} diff --git a/pkg/dialects/all/msg_statustext.go b/pkg/dialects/all/msg_statustext.go new file mode 100644 index 000000000..2d2b25ce3 --- /dev/null +++ b/pkg/dialects/all/msg_statustext.go @@ -0,0 +1,20 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// Status text message. These messages are printed in yellow in the COMM console of QGroundControl. WARNING: They consume quite some bandwidth, so use only for important status and error messages. If implemented wisely, these messages are buffered on the MCU and sent only at a limited rate (e.g. 10 Hz). +type MessageStatustext struct { + // Severity of status. Relies on the definitions within RFC-5424. + Severity MAV_SEVERITY `mavenum:"uint8"` + // Status text message, without null termination character + Text string `mavlen:"50"` + // Unique (opaque) identifier for this statustext message. May be used to reassemble a logical long-statustext message from a sequence of chunks. A value of zero indicates this is the only chunk in the sequence and the message can be emitted immediately. + Id uint16 `mavext:"true"` + // This chunk's sequence number; indexing is from zero. Any null character in the text field is taken to mean this was the last chunk. + ChunkSeq uint8 `mavext:"true"` +} + +// GetID implements the msg.Message interface. +func (*MessageStatustext) GetID() uint32 { + return 253 +} diff --git a/pkg/dialects/all/msg_storage_information.go b/pkg/dialects/all/msg_storage_information.go new file mode 100644 index 000000000..7abc7e332 --- /dev/null +++ b/pkg/dialects/all/msg_storage_information.go @@ -0,0 +1,39 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// Information about a storage medium. This message is sent in response to a request with MAV_CMD_REQUEST_MESSAGE and whenever the status of the storage changes (STORAGE_STATUS). Use MAV_CMD_REQUEST_MESSAGE.param2 to indicate the index/id of requested storage: 0 for all, 1 for first, 2 for second, etc. +type MessageStorageInformation struct { + // Timestamp (time since system boot). + TimeBootMs uint32 + // Storage ID (1 for first, 2 for second, etc.) + StorageId uint8 + // Number of storage devices + StorageCount uint8 + // Status of storage + Status STORAGE_STATUS `mavenum:"uint8"` + // Total capacity. If storage is not ready (STORAGE_STATUS_READY) value will be ignored. + TotalCapacity float32 + // Used capacity. If storage is not ready (STORAGE_STATUS_READY) value will be ignored. + UsedCapacity float32 + // Available storage capacity. If storage is not ready (STORAGE_STATUS_READY) value will be ignored. + AvailableCapacity float32 + // Read speed. + ReadSpeed float32 + // Write speed. + WriteSpeed float32 + // Type of storage + Type STORAGE_TYPE `mavenum:"uint8" mavext:"true"` + // Textual storage name to be used in UI (microSD 1, Internal Memory, etc.) This is a NULL terminated string. If it is exactly 32 characters long, add a terminating NULL. If this string is empty, the generic type is shown to the user. + Name string `mavext:"true" mavlen:"32"` + // Flags indicating whether this instance is preferred storage for photos, videos, etc. + // Note: Implementations should initially set the flags on the system-default storage id used for saving media (if possible/supported). + // This setting can then be overridden using MAV_CMD_SET_STORAGE_USAGE. + // If the media usage flags are not set, a GCS may assume storage ID 1 is the default storage for all media types. + StorageUsage STORAGE_USAGE_FLAG `mavenum:"uint8" mavext:"true"` +} + +// GetID implements the msg.Message interface. +func (*MessageStorageInformation) GetID() uint32 { + return 261 +} diff --git a/pkg/dialects/all/msg_storm32_gimbal_device_control.go b/pkg/dialects/all/msg_storm32_gimbal_device_control.go new file mode 100644 index 000000000..17bc7dc5c --- /dev/null +++ b/pkg/dialects/all/msg_storm32_gimbal_device_control.go @@ -0,0 +1,26 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// Message to a gimbal device to control its attitude. This message is to be sent from the gimbal manager to the gimbal device. Angles and rates can be set to NaN according to use case. +type MessageStorm32GimbalDeviceControl struct { + // System ID + TargetSystem uint8 + // Component ID + TargetComponent uint8 + // Gimbal device flags (UINT16_MAX to be ignored). + Flags MAV_STORM32_GIMBAL_DEVICE_FLAGS `mavenum:"uint16"` + // Quaternion components, w, x, y, z (1 0 0 0 is the null-rotation, the frame is determined by the STORM32_GIMBAL_DEVICE_FLAGS_YAW_ABSOLUTE flag, set first element to NaN to be ignored). + Q [4]float32 + // X component of angular velocity (positive: roll to the right, NaN to be ignored). + AngularVelocityX float32 + // Y component of angular velocity (positive: tilt up, NaN to be ignored). + AngularVelocityY float32 + // Z component of angular velocity (positive: pan to the right, the frame is determined by the STORM32_GIMBAL_DEVICE_FLAGS_YAW_ABSOLUTE flag, NaN to be ignored). + AngularVelocityZ float32 +} + +// GetID implements the msg.Message interface. +func (*MessageStorm32GimbalDeviceControl) GetID() uint32 { + return 60002 +} diff --git a/pkg/dialects/all/msg_storm32_gimbal_device_status.go b/pkg/dialects/all/msg_storm32_gimbal_device_status.go new file mode 100644 index 000000000..0a2b29bc1 --- /dev/null +++ b/pkg/dialects/all/msg_storm32_gimbal_device_status.go @@ -0,0 +1,32 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// Message reporting the current status of a gimbal device. This message should be broadcasted by a gimbal device component at a low regular rate (e.g. 4 Hz). For higher rates it should be emitted with a target. +type MessageStorm32GimbalDeviceStatus struct { + // System ID + TargetSystem uint8 + // Component ID + TargetComponent uint8 + // Timestamp (time since system boot). + TimeBootMs uint32 + // Gimbal device flags currently applied. + Flags MAV_STORM32_GIMBAL_DEVICE_FLAGS `mavenum:"uint16"` + // Quaternion components, w, x, y, z (1 0 0 0 is the null-rotation). The frame depends on the STORM32_GIMBAL_DEVICE_FLAGS_YAW_ABSOLUTE flag. + Q [4]float32 + // X component of angular velocity (NaN if unknown). + AngularVelocityX float32 + // Y component of angular velocity (NaN if unknown). + AngularVelocityY float32 + // Z component of angular velocity (the frame depends on the STORM32_GIMBAL_DEVICE_FLAGS_YAW_ABSOLUTE flag, NaN if unknown). + AngularVelocityZ float32 + // Yaw in absolute frame relative to Earth's North, north is 0 (NaN if unknown). + YawAbsolute float32 + // Failure flags (0 for no failure). + FailureFlags GIMBAL_DEVICE_ERROR_FLAGS `mavenum:"uint16"` +} + +// GetID implements the msg.Message interface. +func (*MessageStorm32GimbalDeviceStatus) GetID() uint32 { + return 60001 +} diff --git a/pkg/dialects/all/msg_storm32_gimbal_manager_control.go b/pkg/dialects/all/msg_storm32_gimbal_manager_control.go new file mode 100644 index 000000000..b0d3894e6 --- /dev/null +++ b/pkg/dialects/all/msg_storm32_gimbal_manager_control.go @@ -0,0 +1,32 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// Message to a gimbal manager to control the gimbal attitude. Angles and rates can be set to NaN according to use case. A gimbal device is never to react to this message. +type MessageStorm32GimbalManagerControl struct { + // System ID + TargetSystem uint8 + // Component ID + TargetComponent uint8 + // Gimbal ID of the gimbal manager to address (component ID or 1-6 for non-MAVLink gimbal, 0 for all gimbals, send command multiple times for more than one but not all gimbals). + GimbalId uint8 + // Client which is contacting the gimbal manager (must be set). + Client MAV_STORM32_GIMBAL_MANAGER_CLIENT `mavenum:"uint8"` + // Gimbal device flags (UINT16_MAX to be ignored). + DeviceFlags MAV_STORM32_GIMBAL_DEVICE_FLAGS `mavenum:"uint16"` + // Gimbal manager flags (0 to be ignored). + ManagerFlags MAV_STORM32_GIMBAL_MANAGER_FLAGS `mavenum:"uint16"` + // Quaternion components, w, x, y, z (1 0 0 0 is the null-rotation, the frame is determined by the GIMBAL_MANAGER_FLAGS_ABSOLUTE_YAW flag, set first element to NaN to be ignored). + Q [4]float32 + // X component of angular velocity (positive: roll to the right, NaN to be ignored). + AngularVelocityX float32 + // Y component of angular velocity (positive: tilt up, NaN to be ignored). + AngularVelocityY float32 + // Z component of angular velocity (positive: pan to the right, the frame is determined by the STORM32_GIMBAL_DEVICE_FLAGS_YAW_ABSOLUTE flag, NaN to be ignored). + AngularVelocityZ float32 +} + +// GetID implements the msg.Message interface. +func (*MessageStorm32GimbalManagerControl) GetID() uint32 { + return 60012 +} diff --git a/pkg/dialects/all/msg_storm32_gimbal_manager_control_pitchyaw.go b/pkg/dialects/all/msg_storm32_gimbal_manager_control_pitchyaw.go new file mode 100644 index 000000000..e3e420042 --- /dev/null +++ b/pkg/dialects/all/msg_storm32_gimbal_manager_control_pitchyaw.go @@ -0,0 +1,32 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// Message to a gimbal manager to control the gimbal tilt and pan angles. Angles and rates can be set to NaN according to use case. A gimbal device is never to react to this message. +type MessageStorm32GimbalManagerControlPitchyaw struct { + // System ID + TargetSystem uint8 + // Component ID + TargetComponent uint8 + // Gimbal ID of the gimbal manager to address (component ID or 1-6 for non-MAVLink gimbal, 0 for all gimbals, send command multiple times for more than one but not all gimbals). + GimbalId uint8 + // Client which is contacting the gimbal manager (must be set). + Client MAV_STORM32_GIMBAL_MANAGER_CLIENT `mavenum:"uint8"` + // Gimbal device flags (UINT16_MAX to be ignored). + DeviceFlags MAV_STORM32_GIMBAL_DEVICE_FLAGS `mavenum:"uint16"` + // Gimbal manager flags (0 to be ignored). + ManagerFlags MAV_STORM32_GIMBAL_MANAGER_FLAGS `mavenum:"uint16"` + // Pitch/tilt angle (positive: tilt up, NaN to be ignored). + Pitch float32 + // Yaw/pan angle (positive: pan the right, the frame is determined by the STORM32_GIMBAL_DEVICE_FLAGS_YAW_ABSOLUTE flag, NaN to be ignored). + Yaw float32 + // Pitch/tilt angular rate (positive: tilt up, NaN to be ignored). + PitchRate float32 + // Yaw/pan angular rate (positive: pan to the right, the frame is determined by the STORM32_GIMBAL_DEVICE_FLAGS_YAW_ABSOLUTE flag, NaN to be ignored). + YawRate float32 +} + +// GetID implements the msg.Message interface. +func (*MessageStorm32GimbalManagerControlPitchyaw) GetID() uint32 { + return 60013 +} diff --git a/pkg/dialects/all/msg_storm32_gimbal_manager_correct_roll.go b/pkg/dialects/all/msg_storm32_gimbal_manager_correct_roll.go new file mode 100644 index 000000000..09581ca4a --- /dev/null +++ b/pkg/dialects/all/msg_storm32_gimbal_manager_correct_roll.go @@ -0,0 +1,22 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// Message to a gimbal manager to correct the gimbal roll angle. This message is typically used to manually correct for a tilted horizon in operation. A gimbal device is never to react to this message. +type MessageStorm32GimbalManagerCorrectRoll struct { + // System ID + TargetSystem uint8 + // Component ID + TargetComponent uint8 + // Gimbal ID of the gimbal manager to address (component ID or 1-6 for non-MAVLink gimbal, 0 for all gimbals, send command multiple times for more than one but not all gimbals). + GimbalId uint8 + // Client which is contacting the gimbal manager (must be set). + Client MAV_STORM32_GIMBAL_MANAGER_CLIENT `mavenum:"uint8"` + // Roll angle (positive to roll to the right). + Roll float32 +} + +// GetID implements the msg.Message interface. +func (*MessageStorm32GimbalManagerCorrectRoll) GetID() uint32 { + return 60014 +} diff --git a/pkg/dialects/all/msg_storm32_gimbal_manager_information.go b/pkg/dialects/all/msg_storm32_gimbal_manager_information.go new file mode 100644 index 000000000..0f1a68b8e --- /dev/null +++ b/pkg/dialects/all/msg_storm32_gimbal_manager_information.go @@ -0,0 +1,30 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// Information about a gimbal manager. This message should be requested by a ground station using MAV_CMD_REQUEST_MESSAGE. It mirrors some fields of the STORM32_GIMBAL_DEVICE_INFORMATION message, but not all. If the additional information is desired, also STORM32_GIMBAL_DEVICE_INFORMATION should be requested. +type MessageStorm32GimbalManagerInformation struct { + // Gimbal ID (component ID or 1-6 for non-MAVLink gimbal) that this gimbal manager is responsible for. + GimbalId uint8 + // Gimbal device capability flags. + DeviceCapFlags MAV_STORM32_GIMBAL_DEVICE_CAP_FLAGS `mavenum:"uint32"` + // Gimbal manager capability flags. + ManagerCapFlags MAV_STORM32_GIMBAL_MANAGER_CAP_FLAGS `mavenum:"uint32"` + // Hardware minimum roll angle (positive: roll to the right, NaN if unknown). + RollMin float32 + // Hardware maximum roll angle (positive: roll to the right, NaN if unknown). + RollMax float32 + // Hardware minimum pitch/tilt angle (positive: tilt up, NaN if unknown). + PitchMin float32 + // Hardware maximum pitch/tilt angle (positive: tilt up, NaN if unknown). + PitchMax float32 + // Hardware minimum yaw/pan angle (positive: pan to the right, relative to the vehicle/gimbal base, NaN if unknown). + YawMin float32 + // Hardware maximum yaw/pan angle (positive: pan to the right, relative to the vehicle/gimbal base, NaN if unknown). + YawMax float32 +} + +// GetID implements the msg.Message interface. +func (*MessageStorm32GimbalManagerInformation) GetID() uint32 { + return 60010 +} diff --git a/pkg/dialects/all/msg_storm32_gimbal_manager_profile.go b/pkg/dialects/all/msg_storm32_gimbal_manager_profile.go new file mode 100644 index 000000000..efac6cef3 --- /dev/null +++ b/pkg/dialects/all/msg_storm32_gimbal_manager_profile.go @@ -0,0 +1,28 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// Message to set a gimbal manager profile. A gimbal device is never to react to this command. The selected profile is reported in the STORM32_GIMBAL_MANAGER_STATUS message. +type MessageStorm32GimbalManagerProfile struct { + // System ID + TargetSystem uint8 + // Component ID + TargetComponent uint8 + // Gimbal ID of the gimbal manager to address (component ID or 1-6 for non-MAVLink gimbal, 0 for all gimbals, send command multiple times for more than one but not all gimbals). + GimbalId uint8 + // Profile to be applied (0 = default). + Profile MAV_STORM32_GIMBAL_MANAGER_PROFILE `mavenum:"uint8"` + // Priorities for custom profile. + Priorities [8]uint8 + // Profile flags for custom profile (0 = default). + ProfileFlags uint8 + // Rc timeouts for custom profile (0 = infinite, in uints of 100 ms). + RcTimeout uint8 + // Timeouts for custom profile (0 = infinite, in uints of 100 ms). + Timeouts [8]uint8 +} + +// GetID implements the msg.Message interface. +func (*MessageStorm32GimbalManagerProfile) GetID() uint32 { + return 60015 +} diff --git a/pkg/dialects/all/msg_storm32_gimbal_manager_status.go b/pkg/dialects/all/msg_storm32_gimbal_manager_status.go new file mode 100644 index 000000000..a566c11d9 --- /dev/null +++ b/pkg/dialects/all/msg_storm32_gimbal_manager_status.go @@ -0,0 +1,22 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// Message reporting the current status of a gimbal manager. This message should be broadcast at a low regular rate (e.g. 1 Hz, may be increase momentarily to e.g. 5 Hz for a period of 1 sec after a change). +type MessageStorm32GimbalManagerStatus struct { + // Gimbal ID (component ID or 1-6 for non-MAVLink gimbal) that this gimbal manager is responsible for. + GimbalId uint8 + // Client who is currently supervisor (0 = none). + Supervisor MAV_STORM32_GIMBAL_MANAGER_CLIENT `mavenum:"uint8"` + // Gimbal device flags currently applied. + DeviceFlags MAV_STORM32_GIMBAL_DEVICE_FLAGS `mavenum:"uint16"` + // Gimbal manager flags currently applied. + ManagerFlags MAV_STORM32_GIMBAL_MANAGER_FLAGS `mavenum:"uint16"` + // Profile currently applied (0 = default). + Profile MAV_STORM32_GIMBAL_MANAGER_PROFILE `mavenum:"uint8"` +} + +// GetID implements the msg.Message interface. +func (*MessageStorm32GimbalManagerStatus) GetID() uint32 { + return 60011 +} diff --git a/pkg/dialects/all/msg_supported_tunes.go b/pkg/dialects/all/msg_supported_tunes.go new file mode 100644 index 000000000..dfd93fb79 --- /dev/null +++ b/pkg/dialects/all/msg_supported_tunes.go @@ -0,0 +1,18 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// Tune formats supported by vehicle. This should be emitted as response to MAV_CMD_REQUEST_MESSAGE. +type MessageSupportedTunes struct { + // System ID + TargetSystem uint8 + // Component ID + TargetComponent uint8 + // Bitfield of supported tune formats. + Format TUNE_FORMAT `mavenum:"uint32"` +} + +// GetID implements the msg.Message interface. +func (*MessageSupportedTunes) GetID() uint32 { + return 401 +} diff --git a/pkg/dialects/all/msg_sys_status.go b/pkg/dialects/all/msg_sys_status.go new file mode 100644 index 000000000..ff754bd68 --- /dev/null +++ b/pkg/dialects/all/msg_sys_status.go @@ -0,0 +1,44 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// The general system state. If the system is following the MAVLink standard, the system state is mainly defined by three orthogonal states/modes: The system mode, which is either LOCKED (motors shut down and locked), MANUAL (system under RC control), GUIDED (system with autonomous position control, position setpoint controlled manually) or AUTO (system guided by path/waypoint planner). The NAV_MODE defined the current flight state: LIFTOFF (often an open-loop maneuver), LANDING, WAYPOINTS or VECTOR. This represents the internal navigation state machine. The system status shows whether the system is currently active or not and if an emergency occurred. During the CRITICAL and EMERGENCY states the MAV is still considered to be active, but should start emergency procedures autonomously. After a failure occurred it should first move from active to critical to allow manual intervention and then move to emergency after a certain timeout. +type MessageSysStatus struct { + // Bitmap showing which onboard controllers and sensors are present. Value of 0: not present. Value of 1: present. + OnboardControlSensorsPresent MAV_SYS_STATUS_SENSOR `mavenum:"uint32"` + // Bitmap showing which onboard controllers and sensors are enabled: Value of 0: not enabled. Value of 1: enabled. + OnboardControlSensorsEnabled MAV_SYS_STATUS_SENSOR `mavenum:"uint32"` + // Bitmap showing which onboard controllers and sensors have an error (or are operational). Value of 0: error. Value of 1: healthy. + OnboardControlSensorsHealth MAV_SYS_STATUS_SENSOR `mavenum:"uint32"` + // Maximum usage in percent of the mainloop time. Values: [0-1000] - should always be below 1000 + Load uint16 + // Battery voltage, UINT16_MAX: Voltage not sent by autopilot + VoltageBattery uint16 + // Battery current, -1: Current not sent by autopilot + CurrentBattery int16 + // Battery energy remaining, -1: Battery remaining energy not sent by autopilot + BatteryRemaining int8 + // Communication drop rate, (UART, I2C, SPI, CAN), dropped packets on all links (packets that were corrupted on reception on the MAV) + DropRateComm uint16 + // Communication errors (UART, I2C, SPI, CAN), dropped packets on all links (packets that were corrupted on reception on the MAV) + ErrorsComm uint16 + // Autopilot-specific errors + ErrorsCount1 uint16 + // Autopilot-specific errors + ErrorsCount2 uint16 + // Autopilot-specific errors + ErrorsCount3 uint16 + // Autopilot-specific errors + ErrorsCount4 uint16 + // Bitmap showing which onboard controllers and sensors are present. Value of 0: not present. Value of 1: present. + OnboardControlSensorsPresentExtended MAV_SYS_STATUS_SENSOR_EXTENDED `mavenum:"uint32" mavext:"true"` + // Bitmap showing which onboard controllers and sensors are enabled: Value of 0: not enabled. Value of 1: enabled. + OnboardControlSensorsEnabledExtended MAV_SYS_STATUS_SENSOR_EXTENDED `mavenum:"uint32" mavext:"true"` + // Bitmap showing which onboard controllers and sensors have an error (or are operational). Value of 0: error. Value of 1: healthy. + OnboardControlSensorsHealthExtended MAV_SYS_STATUS_SENSOR_EXTENDED `mavenum:"uint32" mavext:"true"` +} + +// GetID implements the msg.Message interface. +func (*MessageSysStatus) GetID() uint32 { + return 1 +} diff --git a/pkg/dialects/all/msg_system_time.go b/pkg/dialects/all/msg_system_time.go new file mode 100644 index 000000000..cec71e1c4 --- /dev/null +++ b/pkg/dialects/all/msg_system_time.go @@ -0,0 +1,16 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// The system time is the time of the master clock, typically the computer clock of the main onboard computer. +type MessageSystemTime struct { + // Timestamp (UNIX epoch time). + TimeUnixUsec uint64 + // Timestamp (time since system boot). + TimeBootMs uint32 +} + +// GetID implements the msg.Message interface. +func (*MessageSystemTime) GetID() uint32 { + return 2 +} diff --git a/pkg/dialects/all/msg_terrain_check.go b/pkg/dialects/all/msg_terrain_check.go new file mode 100644 index 000000000..fde0f4875 --- /dev/null +++ b/pkg/dialects/all/msg_terrain_check.go @@ -0,0 +1,16 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// Request that the vehicle report terrain height at the given location (expected response is a TERRAIN_REPORT). Used by GCS to check if vehicle has all terrain data needed for a mission. +type MessageTerrainCheck struct { + // Latitude + Lat int32 + // Longitude + Lon int32 +} + +// GetID implements the msg.Message interface. +func (*MessageTerrainCheck) GetID() uint32 { + return 135 +} diff --git a/pkg/dialects/all/msg_terrain_data.go b/pkg/dialects/all/msg_terrain_data.go new file mode 100644 index 000000000..89c1d814a --- /dev/null +++ b/pkg/dialects/all/msg_terrain_data.go @@ -0,0 +1,22 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// Terrain data sent from GCS. The lat/lon and grid_spacing must be the same as a lat/lon from a TERRAIN_REQUEST. See terrain protocol docs: https://mavlink.io/en/services/terrain.html +type MessageTerrainData struct { + // Latitude of SW corner of first grid + Lat int32 + // Longitude of SW corner of first grid + Lon int32 + // Grid spacing + GridSpacing uint16 + // bit within the terrain request mask + Gridbit uint8 + // Terrain data MSL + Data [16]int16 +} + +// GetID implements the msg.Message interface. +func (*MessageTerrainData) GetID() uint32 { + return 134 +} diff --git a/pkg/dialects/all/msg_terrain_report.go b/pkg/dialects/all/msg_terrain_report.go new file mode 100644 index 000000000..1d3780168 --- /dev/null +++ b/pkg/dialects/all/msg_terrain_report.go @@ -0,0 +1,26 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// Streamed from drone to report progress of terrain map download (initiated by TERRAIN_REQUEST), or sent as a response to a TERRAIN_CHECK request. See terrain protocol docs: https://mavlink.io/en/services/terrain.html +type MessageTerrainReport struct { + // Latitude + Lat int32 + // Longitude + Lon int32 + // grid spacing (zero if terrain at this location unavailable) + Spacing uint16 + // Terrain height MSL + TerrainHeight float32 + // Current vehicle height above lat/lon terrain height + CurrentHeight float32 + // Number of 4x4 terrain blocks waiting to be received or read from disk + Pending uint16 + // Number of 4x4 terrain blocks in memory + Loaded uint16 +} + +// GetID implements the msg.Message interface. +func (*MessageTerrainReport) GetID() uint32 { + return 136 +} diff --git a/pkg/dialects/all/msg_terrain_request.go b/pkg/dialects/all/msg_terrain_request.go new file mode 100644 index 000000000..bda8f9c13 --- /dev/null +++ b/pkg/dialects/all/msg_terrain_request.go @@ -0,0 +1,20 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// Request for terrain data and terrain status. See terrain protocol docs: https://mavlink.io/en/services/terrain.html +type MessageTerrainRequest struct { + // Latitude of SW corner of first grid + Lat int32 + // Longitude of SW corner of first grid + Lon int32 + // Grid spacing + GridSpacing uint16 + // Bitmask of requested 4x4 grids (row major 8x7 array of grids, 56 bits) + Mask uint64 +} + +// GetID implements the msg.Message interface. +func (*MessageTerrainRequest) GetID() uint32 { + return 133 +} diff --git a/pkg/dialects/all/msg_test_types.go b/pkg/dialects/all/msg_test_types.go new file mode 100644 index 000000000..f8696dcc7 --- /dev/null +++ b/pkg/dialects/all/msg_test_types.go @@ -0,0 +1,56 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// Test all field types +type MessageTestTypes struct { + // char + C string + // string + S string `mavlen:"10"` + // uint8_t + U8 uint8 + // uint16_t + U16 uint16 + // uint32_t + U32 uint32 + // uint64_t + U64 uint64 + // int8_t + S8 int8 + // int16_t + S16 int16 + // int32_t + S32 int32 + // int64_t + S64 int64 + // float + F float32 + // double + D float64 + // uint8_t_array + U8Array [3]uint8 + // uint16_t_array + U16Array [3]uint16 + // uint32_t_array + U32Array [3]uint32 + // uint64_t_array + U64Array [3]uint64 + // int8_t_array + S8Array [3]int8 + // int16_t_array + S16Array [3]int16 + // int32_t_array + S32Array [3]int32 + // int64_t_array + S64Array [3]int64 + // float_array + FArray [3]float32 + // double_array + DArray [3]float64 +} + +// GetID implements the msg.Message interface. +func (*MessageTestTypes) GetID() uint32 { + return 17000 +} diff --git a/pkg/dialects/all/msg_time_estimate_to_target.go b/pkg/dialects/all/msg_time_estimate_to_target.go new file mode 100644 index 000000000..d72d1dd17 --- /dev/null +++ b/pkg/dialects/all/msg_time_estimate_to_target.go @@ -0,0 +1,22 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// Time/duration estimates for various events and actions given the current vehicle state and position. +type MessageTimeEstimateToTarget struct { + // Estimated time to complete the vehicle's configured "safe return" action from its current position (e.g. RTL, Smart RTL, etc.). -1 indicates that the vehicle is landed, or that no time estimate available. + SafeReturn int32 + // Estimated time for vehicle to complete the LAND action from its current position. -1 indicates that the vehicle is landed, or that no time estimate available. + Land int32 + // Estimated time for reaching/completing the currently active mission item. -1 means no time estimate available. + MissionNextItem int32 + // Estimated time for completing the current mission. -1 means no mission active and/or no estimate available. + MissionEnd int32 + // Estimated time for completing the current commanded action (i.e. Go To, Takeoff, Land, etc.). -1 means no action active and/or no estimate available. + CommandedAction int32 +} + +// GetID implements the msg.Message interface. +func (*MessageTimeEstimateToTarget) GetID() uint32 { + return 380 +} diff --git a/pkg/dialects/all/msg_timesync.go b/pkg/dialects/all/msg_timesync.go new file mode 100644 index 000000000..98ca0e1d6 --- /dev/null +++ b/pkg/dialects/all/msg_timesync.go @@ -0,0 +1,16 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// Time synchronization message. +type MessageTimesync struct { + // Time sync timestamp 1 + Tc1 int64 + // Time sync timestamp 2 + Ts1 int64 +} + +// GetID implements the msg.Message interface. +func (*MessageTimesync) GetID() uint32 { + return 111 +} diff --git a/pkg/dialects/all/msg_trajectory_representation_bezier.go b/pkg/dialects/all/msg_trajectory_representation_bezier.go new file mode 100644 index 000000000..d02aa2e51 --- /dev/null +++ b/pkg/dialects/all/msg_trajectory_representation_bezier.go @@ -0,0 +1,26 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// Describe a trajectory using an array of up-to 5 bezier control points in the local frame (MAV_FRAME_LOCAL_NED). +type MessageTrajectoryRepresentationBezier struct { + // Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. + TimeUsec uint64 + // Number of valid control points (up-to 5 points are possible) + ValidPoints uint8 + // X-coordinate of bezier control points. Set to NaN if not being used + PosX [5]float32 + // Y-coordinate of bezier control points. Set to NaN if not being used + PosY [5]float32 + // Z-coordinate of bezier control points. Set to NaN if not being used + PosZ [5]float32 + // Bezier time horizon. Set to NaN if velocity/acceleration should not be incorporated + Delta [5]float32 + // Yaw. Set to NaN for unchanged + PosYaw [5]float32 +} + +// GetID implements the msg.Message interface. +func (*MessageTrajectoryRepresentationBezier) GetID() uint32 { + return 333 +} diff --git a/pkg/dialects/all/msg_trajectory_representation_waypoints.go b/pkg/dialects/all/msg_trajectory_representation_waypoints.go new file mode 100644 index 000000000..a4607cf62 --- /dev/null +++ b/pkg/dialects/all/msg_trajectory_representation_waypoints.go @@ -0,0 +1,40 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// Describe a trajectory using an array of up-to 5 waypoints in the local frame (MAV_FRAME_LOCAL_NED). +type MessageTrajectoryRepresentationWaypoints struct { + // Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. + TimeUsec uint64 + // Number of valid points (up-to 5 waypoints are possible) + ValidPoints uint8 + // X-coordinate of waypoint, set to NaN if not being used + PosX [5]float32 + // Y-coordinate of waypoint, set to NaN if not being used + PosY [5]float32 + // Z-coordinate of waypoint, set to NaN if not being used + PosZ [5]float32 + // X-velocity of waypoint, set to NaN if not being used + VelX [5]float32 + // Y-velocity of waypoint, set to NaN if not being used + VelY [5]float32 + // Z-velocity of waypoint, set to NaN if not being used + VelZ [5]float32 + // X-acceleration of waypoint, set to NaN if not being used + AccX [5]float32 + // Y-acceleration of waypoint, set to NaN if not being used + AccY [5]float32 + // Z-acceleration of waypoint, set to NaN if not being used + AccZ [5]float32 + // Yaw angle, set to NaN if not being used + PosYaw [5]float32 + // Yaw rate, set to NaN if not being used + VelYaw [5]float32 + // MAV_CMD command id of waypoint, set to UINT16_MAX if not being used. + Command [5]MAV_CMD `mavenum:"uint16"` +} + +// GetID implements the msg.Message interface. +func (*MessageTrajectoryRepresentationWaypoints) GetID() uint32 { + return 332 +} diff --git a/pkg/dialects/all/msg_tunnel.go b/pkg/dialects/all/msg_tunnel.go new file mode 100644 index 000000000..487d9a4b7 --- /dev/null +++ b/pkg/dialects/all/msg_tunnel.go @@ -0,0 +1,22 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// Message for transporting "arbitrary" variable-length data from one component to another (broadcast is not forbidden, but discouraged). The encoding of the data is usually extension specific, i.e. determined by the source, and is usually not documented as part of the MAVLink specification. +type MessageTunnel struct { + // System ID (can be 0 for broadcast, but this is discouraged) + TargetSystem uint8 + // Component ID (can be 0 for broadcast, but this is discouraged) + TargetComponent uint8 + // A code that identifies the content of the payload (0 for unknown, which is the default). If this code is less than 32768, it is a 'registered' payload type and the corresponding code should be added to the MAV_TUNNEL_PAYLOAD_TYPE enum. Software creators can register blocks of types as needed. Codes greater than 32767 are considered local experiments and should not be checked in to any widely distributed codebase. + PayloadType MAV_TUNNEL_PAYLOAD_TYPE `mavenum:"uint16"` + // Length of the data transported in payload + PayloadLength uint8 + // Variable length payload. The payload length is defined by payload_length. The entire content of this block is opaque unless you understand the encoding specified by payload_type. + Payload [128]uint8 +} + +// GetID implements the msg.Message interface. +func (*MessageTunnel) GetID() uint32 { + return 385 +} diff --git a/pkg/dialects/all/msg_ualberta_sys_status.go b/pkg/dialects/all/msg_ualberta_sys_status.go new file mode 100644 index 000000000..7f2bb77ca --- /dev/null +++ b/pkg/dialects/all/msg_ualberta_sys_status.go @@ -0,0 +1,18 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// System status specific to ualberta uav +type MessageUalbertaSysStatus struct { + // System mode, see UALBERTA_AUTOPILOT_MODE ENUM + Mode uint8 + // Navigation mode, see UALBERTA_NAV_MODE ENUM + NavMode uint8 + // Pilot mode, see UALBERTA_PILOT_MODE + Pilot uint8 +} + +// GetID implements the msg.Message interface. +func (*MessageUalbertaSysStatus) GetID() uint32 { + return 222 +} diff --git a/pkg/dialects/all/msg_uavcan_node_info.go b/pkg/dialects/all/msg_uavcan_node_info.go new file mode 100644 index 000000000..f31b46897 --- /dev/null +++ b/pkg/dialects/all/msg_uavcan_node_info.go @@ -0,0 +1,30 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// General information describing a particular UAVCAN node. Please refer to the definition of the UAVCAN service "uavcan.protocol.GetNodeInfo" for the background information. This message should be emitted by the system whenever a new node appears online, or an existing node reboots. Additionally, it can be emitted upon request from the other end of the MAVLink channel (see MAV_CMD_UAVCAN_GET_NODE_INFO). It is also not prohibited to emit this message unconditionally at a low frequency. The UAVCAN specification is available at http://uavcan.org. +type MessageUavcanNodeInfo struct { + // Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. + TimeUsec uint64 + // Time since the start-up of the node. + UptimeSec uint32 + // Node name string. For example, "sapog.px4.io". + Name string `mavlen:"80"` + // Hardware major version number. + HwVersionMajor uint8 + // Hardware minor version number. + HwVersionMinor uint8 + // Hardware unique 128-bit ID. + HwUniqueId [16]uint8 + // Software major version number. + SwVersionMajor uint8 + // Software minor version number. + SwVersionMinor uint8 + // Version control system (VCS) revision identifier (e.g. git short commit hash). 0 if unknown. + SwVcsCommit uint32 +} + +// GetID implements the msg.Message interface. +func (*MessageUavcanNodeInfo) GetID() uint32 { + return 311 +} diff --git a/pkg/dialects/all/msg_uavcan_node_status.go b/pkg/dialects/all/msg_uavcan_node_status.go new file mode 100644 index 000000000..3a89aed77 --- /dev/null +++ b/pkg/dialects/all/msg_uavcan_node_status.go @@ -0,0 +1,24 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// General status information of an UAVCAN node. Please refer to the definition of the UAVCAN message "uavcan.protocol.NodeStatus" for the background information. The UAVCAN specification is available at http://uavcan.org. +type MessageUavcanNodeStatus struct { + // Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. + TimeUsec uint64 + // Time since the start-up of the node. + UptimeSec uint32 + // Generalized node health status. + Health UAVCAN_NODE_HEALTH `mavenum:"uint8"` + // Generalized operating mode. + Mode UAVCAN_NODE_MODE `mavenum:"uint8"` + // Not used currently. + SubMode uint8 + // Vendor-specific status information. + VendorSpecificStatusCode uint16 +} + +// GetID implements the msg.Message interface. +func (*MessageUavcanNodeStatus) GetID() uint32 { + return 310 +} diff --git a/pkg/dialects/all/msg_uavionix_adsb_out_cfg.go b/pkg/dialects/all/msg_uavionix_adsb_out_cfg.go new file mode 100644 index 000000000..13ef3cc97 --- /dev/null +++ b/pkg/dialects/all/msg_uavionix_adsb_out_cfg.go @@ -0,0 +1,28 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// Static data to configure the ADS-B transponder (send within 10 sec of a POR and every 10 sec thereafter) +type MessageUavionixAdsbOutCfg struct { + // Vehicle address (24 bit) + Icao uint32 `mavname:"ICAO"` + // Vehicle identifier (8 characters, null terminated, valid characters are A-Z, 0-9, " " only) + Callsign string `mavlen:"9"` + // Transmitting vehicle type. See ADSB_EMITTER_TYPE enum + Emittertype ADSB_EMITTER_TYPE `mavenum:"uint8" mavname:"emitterType"` + // Aircraft length and width encoding (table 2-35 of DO-282B) + Aircraftsize UAVIONIX_ADSB_OUT_CFG_AIRCRAFT_SIZE `mavenum:"uint8" mavname:"aircraftSize"` + // GPS antenna lateral offset (table 2-36 of DO-282B) + Gpsoffsetlat UAVIONIX_ADSB_OUT_CFG_GPS_OFFSET_LAT `mavenum:"uint8" mavname:"gpsOffsetLat"` + // GPS antenna longitudinal offset from nose [if non-zero, take position (in meters) divide by 2 and add one] (table 2-37 DO-282B) + Gpsoffsetlon UAVIONIX_ADSB_OUT_CFG_GPS_OFFSET_LON `mavenum:"uint8" mavname:"gpsOffsetLon"` + // Aircraft stall speed in cm/s + Stallspeed uint16 `mavname:"stallSpeed"` + // ADS-B transponder reciever and transmit enable flags + Rfselect UAVIONIX_ADSB_OUT_RF_SELECT `mavenum:"uint8" mavname:"rfSelect"` +} + +// GetID implements the msg.Message interface. +func (*MessageUavionixAdsbOutCfg) GetID() uint32 { + return 10001 +} diff --git a/pkg/dialects/all/msg_uavionix_adsb_out_dynamic.go b/pkg/dialects/all/msg_uavionix_adsb_out_dynamic.go new file mode 100644 index 000000000..76bfb3514 --- /dev/null +++ b/pkg/dialects/all/msg_uavionix_adsb_out_dynamic.go @@ -0,0 +1,44 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// Dynamic data used to generate ADS-B out transponder data (send at 5Hz) +type MessageUavionixAdsbOutDynamic struct { + // UTC time in seconds since GPS epoch (Jan 6, 1980). If unknown set to UINT32_MAX + Utctime uint32 `mavname:"utcTime"` + // Latitude WGS84 (deg * 1E7). If unknown set to INT32_MAX + Gpslat int32 `mavname:"gpsLat"` + // Longitude WGS84 (deg * 1E7). If unknown set to INT32_MAX + Gpslon int32 `mavname:"gpsLon"` + // Altitude (WGS84). UP +ve. If unknown set to INT32_MAX + Gpsalt int32 `mavname:"gpsAlt"` + // 0-1: no fix, 2: 2D fix, 3: 3D fix, 4: DGPS, 5: RTK + Gpsfix UAVIONIX_ADSB_OUT_DYNAMIC_GPS_FIX `mavenum:"uint8" mavname:"gpsFix"` + // Number of satellites visible. If unknown set to UINT8_MAX + Numsats uint8 `mavname:"numSats"` + // Barometric pressure altitude (MSL) relative to a standard atmosphere of 1013.2 mBar and NOT bar corrected altitude (m * 1E-3). (up +ve). If unknown set to INT32_MAX + Baroaltmsl int32 `mavname:"baroAltMSL"` + // Horizontal accuracy in mm (m * 1E-3). If unknown set to UINT32_MAX + Accuracyhor uint32 `mavname:"accuracyHor"` + // Vertical accuracy in cm. If unknown set to UINT16_MAX + Accuracyvert uint16 `mavname:"accuracyVert"` + // Velocity accuracy in mm/s (m * 1E-3). If unknown set to UINT16_MAX + Accuracyvel uint16 `mavname:"accuracyVel"` + // GPS vertical speed in cm/s. If unknown set to INT16_MAX + Velvert int16 `mavname:"velVert"` + // North-South velocity over ground in cm/s North +ve. If unknown set to INT16_MAX + Velns int16 `mavname:"velNS"` + // East-West velocity over ground in cm/s East +ve. If unknown set to INT16_MAX + Velew int16 `mavname:"VelEW"` + // Emergency status + Emergencystatus UAVIONIX_ADSB_EMERGENCY_STATUS `mavenum:"uint8" mavname:"emergencyStatus"` + // ADS-B transponder dynamic input state flags + State UAVIONIX_ADSB_OUT_DYNAMIC_STATE `mavenum:"uint16"` + // Mode A code (typically 1200 [0x04B0] for VFR) + Squawk uint16 +} + +// GetID implements the msg.Message interface. +func (*MessageUavionixAdsbOutDynamic) GetID() uint32 { + return 10002 +} diff --git a/pkg/dialects/all/msg_uavionix_adsb_transceiver_health_report.go b/pkg/dialects/all/msg_uavionix_adsb_transceiver_health_report.go new file mode 100644 index 000000000..6cfbf72bc --- /dev/null +++ b/pkg/dialects/all/msg_uavionix_adsb_transceiver_health_report.go @@ -0,0 +1,14 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// Transceiver heartbeat with health report (updated every 10s) +type MessageUavionixAdsbTransceiverHealthReport struct { + // ADS-B transponder messages + Rfhealth UAVIONIX_ADSB_RF_HEALTH `mavenum:"uint8" mavname:"rfHealth"` +} + +// GetID implements the msg.Message interface. +func (*MessageUavionixAdsbTransceiverHealthReport) GetID() uint32 { + return 10003 +} diff --git a/pkg/dialects/all/msg_utm_global_position.go b/pkg/dialects/all/msg_utm_global_position.go new file mode 100644 index 000000000..65a781027 --- /dev/null +++ b/pkg/dialects/all/msg_utm_global_position.go @@ -0,0 +1,48 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// The global position resulting from GPS and sensor fusion. +type MessageUtmGlobalPosition struct { + // Time of applicability of position (microseconds since UNIX epoch). + Time uint64 + // Unique UAS ID. + UasId [18]uint8 + // Latitude (WGS84) + Lat int32 + // Longitude (WGS84) + Lon int32 + // Altitude (WGS84) + Alt int32 + // Altitude above ground + RelativeAlt int32 + // Ground X speed (latitude, positive north) + Vx int16 + // Ground Y speed (longitude, positive east) + Vy int16 + // Ground Z speed (altitude, positive down) + Vz int16 + // Horizontal position uncertainty (standard deviation) + HAcc uint16 + // Altitude uncertainty (standard deviation) + VAcc uint16 + // Speed uncertainty (standard deviation) + VelAcc uint16 + // Next waypoint, latitude (WGS84) + NextLat int32 + // Next waypoint, longitude (WGS84) + NextLon int32 + // Next waypoint, altitude (WGS84) + NextAlt int32 + // Time until next update. Set to 0 if unknown or in data driven mode. + UpdateRate uint16 + // Flight state + FlightState UTM_FLIGHT_STATE `mavenum:"uint8"` + // Bitwise OR combination of the data available flags. + Flags UTM_DATA_AVAIL_FLAGS `mavenum:"uint8"` +} + +// GetID implements the msg.Message interface. +func (*MessageUtmGlobalPosition) GetID() uint32 { + return 340 +} diff --git a/pkg/dialects/all/msg_v2_extension.go b/pkg/dialects/all/msg_v2_extension.go new file mode 100644 index 000000000..42d011844 --- /dev/null +++ b/pkg/dialects/all/msg_v2_extension.go @@ -0,0 +1,22 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// Message implementing parts of the V2 payload specs in V1 frames for transitional support. +type MessageV2Extension struct { + // Network ID (0 for broadcast) + TargetNetwork uint8 + // System ID (0 for broadcast) + TargetSystem uint8 + // Component ID (0 for broadcast) + TargetComponent uint8 + // A code that identifies the software component that understands this message (analogous to USB device classes or mime type strings). If this code is less than 32768, it is considered a 'registered' protocol extension and the corresponding entry should be added to https://github.com/mavlink/mavlink/definition_files/extension_message_ids.xml. Software creators can register blocks of message IDs as needed (useful for GCS specific metadata, etc...). Message_types greater than 32767 are considered local experiments and should not be checked in to any widely distributed codebase. + MessageType uint16 + // Variable length payload. The length must be encoded in the payload as part of the message_type protocol, e.g. by including the length as payload data, or by terminating the payload data with a non-zero marker. This is required in order to reconstruct zero-terminated payloads that are (or otherwise would be) trimmed by MAVLink 2 empty-byte truncation. The entire content of the payload block is opaque unless you understand the encoding message_type. The particular encoding used can be extension specific and might not always be documented as part of the MAVLink specification. + Payload [249]uint8 +} + +// GetID implements the msg.Message interface. +func (*MessageV2Extension) GetID() uint32 { + return 248 +} diff --git a/pkg/dialects/all/msg_vfr_hud.go b/pkg/dialects/all/msg_vfr_hud.go new file mode 100644 index 000000000..4bacf0f45 --- /dev/null +++ b/pkg/dialects/all/msg_vfr_hud.go @@ -0,0 +1,24 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// Metrics typically displayed on a HUD for fixed wing aircraft. +type MessageVfrHud struct { + // Vehicle speed in form appropriate for vehicle type. For standard aircraft this is typically calibrated airspeed (CAS) or indicated airspeed (IAS) - either of which can be used by a pilot to estimate stall speed. + Airspeed float32 + // Current ground speed. + Groundspeed float32 + // Current heading in compass units (0-360, 0=north). + Heading int16 + // Current throttle setting (0 to 100). + Throttle uint16 + // Current altitude (MSL). + Alt float32 + // Current climb rate. + Climb float32 +} + +// GetID implements the msg.Message interface. +func (*MessageVfrHud) GetID() uint32 { + return 74 +} diff --git a/pkg/dialects/all/msg_vibration.go b/pkg/dialects/all/msg_vibration.go new file mode 100644 index 000000000..7a91704db --- /dev/null +++ b/pkg/dialects/all/msg_vibration.go @@ -0,0 +1,26 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// Vibration levels and accelerometer clipping +type MessageVibration struct { + // Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. + TimeUsec uint64 + // Vibration levels on X-axis + VibrationX float32 + // Vibration levels on Y-axis + VibrationY float32 + // Vibration levels on Z-axis + VibrationZ float32 + // first accelerometer clipping count + Clipping_0 uint32 + // second accelerometer clipping count + Clipping_1 uint32 + // third accelerometer clipping count + Clipping_2 uint32 +} + +// GetID implements the msg.Message interface. +func (*MessageVibration) GetID() uint32 { + return 241 +} diff --git a/pkg/dialects/all/msg_vicon_position_estimate.go b/pkg/dialects/all/msg_vicon_position_estimate.go new file mode 100644 index 000000000..61a40d092 --- /dev/null +++ b/pkg/dialects/all/msg_vicon_position_estimate.go @@ -0,0 +1,28 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// Global position estimate from a Vicon motion system source. +type MessageViconPositionEstimate struct { + // Timestamp (UNIX time or time since system boot) + Usec uint64 + // Global X position + X float32 + // Global Y position + Y float32 + // Global Z position + Z float32 + // Roll angle + Roll float32 + // Pitch angle + Pitch float32 + // Yaw angle + Yaw float32 + // Row-major representation of 6x6 pose cross-covariance matrix upper right triangle (states: x, y, z, roll, pitch, yaw; first six entries are the first ROW, next five entries are the second ROW, etc.). If unknown, assign NaN value to first element in the array. + Covariance [21]float32 `mavext:"true"` +} + +// GetID implements the msg.Message interface. +func (*MessageViconPositionEstimate) GetID() uint32 { + return 104 +} diff --git a/pkg/dialects/all/msg_video_stream_information.go b/pkg/dialects/all/msg_video_stream_information.go new file mode 100644 index 000000000..3350baf0e --- /dev/null +++ b/pkg/dialects/all/msg_video_stream_information.go @@ -0,0 +1,36 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// Information about video stream. It may be requested using MAV_CMD_REQUEST_MESSAGE, where param2 indicates the video stream id: 0 for all streams, 1 for first, 2 for second, etc. +type MessageVideoStreamInformation struct { + // Video Stream ID (1 for first, 2 for second, etc.) + StreamId uint8 + // Number of streams available. + Count uint8 + // Type of stream. + Type VIDEO_STREAM_TYPE `mavenum:"uint8"` + // Bitmap of stream status flags. + Flags VIDEO_STREAM_STATUS_FLAGS `mavenum:"uint16"` + // Frame rate. + Framerate float32 + // Horizontal resolution. + ResolutionH uint16 + // Vertical resolution. + ResolutionV uint16 + // Bit rate. + Bitrate uint32 + // Video image rotation clockwise. + Rotation uint16 + // Horizontal Field of view. + Hfov uint16 + // Stream name. + Name string `mavlen:"32"` + // Video stream URI (TCP or RTSP URI ground station should connect to) or port number (UDP port ground station should listen to). + Uri string `mavlen:"160"` +} + +// GetID implements the msg.Message interface. +func (*MessageVideoStreamInformation) GetID() uint32 { + return 269 +} diff --git a/pkg/dialects/all/msg_video_stream_status.go b/pkg/dialects/all/msg_video_stream_status.go new file mode 100644 index 000000000..3aaa561b2 --- /dev/null +++ b/pkg/dialects/all/msg_video_stream_status.go @@ -0,0 +1,28 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// Information about the status of a video stream. It may be requested using MAV_CMD_REQUEST_MESSAGE. +type MessageVideoStreamStatus struct { + // Video Stream ID (1 for first, 2 for second, etc.) + StreamId uint8 + // Bitmap of stream status flags + Flags VIDEO_STREAM_STATUS_FLAGS `mavenum:"uint16"` + // Frame rate + Framerate float32 + // Horizontal resolution + ResolutionH uint16 + // Vertical resolution + ResolutionV uint16 + // Bit rate + Bitrate uint32 + // Video image rotation clockwise + Rotation uint16 + // Horizontal Field of view + Hfov uint16 +} + +// GetID implements the msg.Message interface. +func (*MessageVideoStreamStatus) GetID() uint32 { + return 270 +} diff --git a/pkg/dialects/all/msg_vision_position_delta.go b/pkg/dialects/all/msg_vision_position_delta.go new file mode 100644 index 000000000..5e651d19e --- /dev/null +++ b/pkg/dialects/all/msg_vision_position_delta.go @@ -0,0 +1,22 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// Camera vision based attitude and position deltas. +type MessageVisionPositionDelta struct { + // Timestamp (synced to UNIX time or since system boot). + TimeUsec uint64 + // Time since the last reported camera frame. + TimeDeltaUsec uint64 + // Defines a rotation vector [roll, pitch, yaw] to the current MAV_FRAME_BODY_FRD from the previous MAV_FRAME_BODY_FRD. + AngleDelta [3]float32 + // Change in position to the current MAV_FRAME_BODY_FRD from the previous FRAME_BODY_FRD rotated to the current MAV_FRAME_BODY_FRD. + PositionDelta [3]float32 + // Normalised confidence value from 0 to 100. + Confidence float32 +} + +// GetID implements the msg.Message interface. +func (*MessageVisionPositionDelta) GetID() uint32 { + return 11011 +} diff --git a/pkg/dialects/all/msg_vision_position_estimate.go b/pkg/dialects/all/msg_vision_position_estimate.go new file mode 100644 index 000000000..c5c385fb5 --- /dev/null +++ b/pkg/dialects/all/msg_vision_position_estimate.go @@ -0,0 +1,30 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// Local position/attitude estimate from a vision source. +type MessageVisionPositionEstimate struct { + // Timestamp (UNIX time or time since system boot) + Usec uint64 + // Local X position + X float32 + // Local Y position + Y float32 + // Local Z position + Z float32 + // Roll angle + Roll float32 + // Pitch angle + Pitch float32 + // Yaw angle + Yaw float32 + // Row-major representation of pose 6x6 cross-covariance matrix upper right triangle (states: x, y, z, roll, pitch, yaw; first six entries are the first ROW, next five entries are the second ROW, etc.). If unknown, assign NaN value to first element in the array. + Covariance [21]float32 `mavext:"true"` + // Estimate reset counter. This should be incremented when the estimate resets in any of the dimensions (position, velocity, attitude, angular speed). This is designed to be used when e.g an external SLAM system detects a loop-closure and the estimate jumps. + ResetCounter uint8 `mavext:"true"` +} + +// GetID implements the msg.Message interface. +func (*MessageVisionPositionEstimate) GetID() uint32 { + return 102 +} diff --git a/pkg/dialects/all/msg_vision_speed_estimate.go b/pkg/dialects/all/msg_vision_speed_estimate.go new file mode 100644 index 000000000..1f3f03683 --- /dev/null +++ b/pkg/dialects/all/msg_vision_speed_estimate.go @@ -0,0 +1,24 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// Speed estimate from a vision source. +type MessageVisionSpeedEstimate struct { + // Timestamp (UNIX time or time since system boot) + Usec uint64 + // Global X speed + X float32 + // Global Y speed + Y float32 + // Global Z speed + Z float32 + // Row-major representation of 3x3 linear velocity covariance matrix (states: vx, vy, vz; 1st three entries - 1st row, etc.). If unknown, assign NaN value to first element in the array. + Covariance [9]float32 `mavext:"true"` + // Estimate reset counter. This should be incremented when the estimate resets in any of the dimensions (position, velocity, attitude, angular speed). This is designed to be used when e.g an external SLAM system detects a loop-closure and the estimate jumps. + ResetCounter uint8 `mavext:"true"` +} + +// GetID implements the msg.Message interface. +func (*MessageVisionSpeedEstimate) GetID() uint32 { + return 103 +} diff --git a/pkg/dialects/all/msg_water_depth.go b/pkg/dialects/all/msg_water_depth.go new file mode 100644 index 000000000..eaaa8daea --- /dev/null +++ b/pkg/dialects/all/msg_water_depth.go @@ -0,0 +1,34 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// Water depth +type MessageWaterDepth struct { + // Timestamp (time since system boot) + TimeBootMs uint32 + // Onboard ID of the sensor + Id uint8 + // Sensor data healthy (0=unhealthy, 1=healthy) + Healthy uint8 + // Latitude + Lat int32 + // Longitude + Lng int32 + // Altitude (MSL) of vehicle + Alt float32 + // Roll angle + Roll float32 + // Pitch angle + Pitch float32 + // Yaw angle + Yaw float32 + // Distance (uncorrected) + Distance float32 + // Water temperature + Temperature float32 +} + +// GetID implements the msg.Message interface. +func (*MessageWaterDepth) GetID() uint32 { + return 11038 +} diff --git a/pkg/dialects/all/msg_wheel_distance.go b/pkg/dialects/all/msg_wheel_distance.go new file mode 100644 index 000000000..f3b731e7b --- /dev/null +++ b/pkg/dialects/all/msg_wheel_distance.go @@ -0,0 +1,18 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// Cumulative distance traveled for each reported wheel. +type MessageWheelDistance struct { + // Timestamp (synced to UNIX time or since system boot). + TimeUsec uint64 + // Number of wheels reported. + Count uint8 + // Distance reported by individual wheel encoders. Forward rotations increase values, reverse rotations decrease them. Not all wheels will necessarily have wheel encoders; the mapping of encoders to wheel positions must be agreed/understood by the endpoints. + Distance [16]float64 +} + +// GetID implements the msg.Message interface. +func (*MessageWheelDistance) GetID() uint32 { + return 9000 +} diff --git a/pkg/dialects/all/msg_wifi_config_ap.go b/pkg/dialects/all/msg_wifi_config_ap.go new file mode 100644 index 000000000..fb8f71809 --- /dev/null +++ b/pkg/dialects/all/msg_wifi_config_ap.go @@ -0,0 +1,20 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// Configure WiFi AP SSID, password, and mode. This message is re-emitted as an acknowledgement by the AP. The message may also be explicitly requested using MAV_CMD_REQUEST_MESSAGE +type MessageWifiConfigAp struct { + // Name of Wi-Fi network (SSID). Blank to leave it unchanged when setting. Current SSID when sent back as a response. + Ssid string `mavlen:"32"` + // Password. Blank for an open AP. MD5 hash when message is sent back as a response. + Password string `mavlen:"64"` + // WiFi Mode. + Mode WIFI_CONFIG_AP_MODE `mavenum:"int8" mavext:"true"` + // Message acceptance response (sent back to GS). + Response WIFI_CONFIG_AP_RESPONSE `mavenum:"int8" mavext:"true"` +} + +// GetID implements the msg.Message interface. +func (*MessageWifiConfigAp) GetID() uint32 { + return 299 +} diff --git a/pkg/dialects/all/msg_wifi_network_info.go b/pkg/dialects/all/msg_wifi_network_info.go new file mode 100644 index 000000000..336d4cf27 --- /dev/null +++ b/pkg/dialects/all/msg_wifi_network_info.go @@ -0,0 +1,22 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// Detected WiFi network status information. This message is sent per each WiFi network detected in range with known SSID and general status parameters. +type MessageWifiNetworkInfo struct { + // Name of Wi-Fi network (SSID). + Ssid string `mavlen:"32"` + // WiFi network operating channel ID. Set to 0 if unknown or unidentified. + ChannelId uint8 + // WiFi network signal quality. + SignalQuality uint8 + // WiFi network data rate. Set to UINT16_MAX if data_rate information is not supplied. + DataRate uint16 + // WiFi network security type. + Security WIFI_NETWORK_SECURITY `mavenum:"uint8"` +} + +// GetID implements the msg.Message interface. +func (*MessageWifiNetworkInfo) GetID() uint32 { + return 298 +} diff --git a/pkg/dialects/all/msg_winch_status.go b/pkg/dialects/all/msg_winch_status.go new file mode 100644 index 000000000..a963e5053 --- /dev/null +++ b/pkg/dialects/all/msg_winch_status.go @@ -0,0 +1,28 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// Winch status. +type MessageWinchStatus struct { + // Timestamp (synced to UNIX time or since system boot). + TimeUsec uint64 + // Length of line released. NaN if unknown + LineLength float32 + // Speed line is being released or retracted. Positive values if being released, negative values if being retracted, NaN if unknown + Speed float32 + // Tension on the line. NaN if unknown + Tension float32 + // Voltage of the battery supplying the winch. NaN if unknown + Voltage float32 + // Current draw from the winch. NaN if unknown + Current float32 + // Temperature of the motor. INT16_MAX if unknown + Temperature int16 + // Status flags + Status MAV_WINCH_STATUS_FLAG `mavenum:"uint32"` +} + +// GetID implements the msg.Message interface. +func (*MessageWinchStatus) GetID() uint32 { + return 9005 +} diff --git a/pkg/dialects/all/msg_wind.go b/pkg/dialects/all/msg_wind.go new file mode 100644 index 000000000..8dbc7a5fb --- /dev/null +++ b/pkg/dialects/all/msg_wind.go @@ -0,0 +1,18 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// Wind estimation. +type MessageWind struct { + // Wind direction (that wind is coming from). + Direction float32 + // Wind speed in ground plane. + Speed float32 + // Vertical wind speed. + SpeedZ float32 +} + +// GetID implements the msg.Message interface. +func (*MessageWind) GetID() uint32 { + return 168 +} diff --git a/pkg/dialects/all/msg_wind_cov.go b/pkg/dialects/all/msg_wind_cov.go new file mode 100644 index 000000000..69c6ffd85 --- /dev/null +++ b/pkg/dialects/all/msg_wind_cov.go @@ -0,0 +1,30 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package all + +// Wind covariance estimate from vehicle. +type MessageWindCov struct { + // Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. + TimeUsec uint64 + // Wind in X (NED) direction + WindX float32 + // Wind in Y (NED) direction + WindY float32 + // Wind in Z (NED) direction + WindZ float32 + // Variability of the wind in XY. RMS of a 1 Hz lowpassed wind estimate. + VarHoriz float32 + // Variability of the wind in Z. RMS of a 1 Hz lowpassed wind estimate. + VarVert float32 + // Altitude (MSL) that this measurement was taken at + WindAlt float32 + // Horizontal speed 1-STD accuracy + HorizAccuracy float32 + // Vertical speed 1-STD accuracy + VertAccuracy float32 +} + +// GetID implements the msg.Message interface. +func (*MessageWindCov) GetID() uint32 { + return 231 +} diff --git a/pkg/dialects/ardupilotmega/enum_mav_protocol_capability.go b/pkg/dialects/ardupilotmega/enum_mav_protocol_capability.go index 213e7ca56..26cf7a5a4 100644 --- a/pkg/dialects/ardupilotmega/enum_mav_protocol_capability.go +++ b/pkg/dialects/ardupilotmega/enum_mav_protocol_capability.go @@ -10,16 +10,18 @@ import ( type MAV_PROTOCOL_CAPABILITY int const ( - // Autopilot supports MISSION float message type. + // Autopilot supports the MISSION_ITEM float message type. + // Note that MISSION_ITEM is deprecated, and autopilots should use MISSION_INT instead. MAV_PROTOCOL_CAPABILITY_MISSION_FLOAT MAV_PROTOCOL_CAPABILITY = 1 // Autopilot supports the new param float message type. MAV_PROTOCOL_CAPABILITY_PARAM_FLOAT MAV_PROTOCOL_CAPABILITY = 2 // Autopilot supports MISSION_ITEM_INT scaled integer message type. + // Note that this flag must always be set if missions are supported, because missions must always use MISSION_ITEM_INT (rather than MISSION_ITEM, which is deprecated). MAV_PROTOCOL_CAPABILITY_MISSION_INT MAV_PROTOCOL_CAPABILITY = 4 // Autopilot supports COMMAND_INT scaled integer message type. MAV_PROTOCOL_CAPABILITY_COMMAND_INT MAV_PROTOCOL_CAPABILITY = 8 - // Autopilot supports the new param union message type. - MAV_PROTOCOL_CAPABILITY_PARAM_UNION MAV_PROTOCOL_CAPABILITY = 16 + // Reserved for future use. + MAV_PROTOCOL_CAPABILITY_RESERVED1 MAV_PROTOCOL_CAPABILITY = 16 // Autopilot supports the new FILE_TRANSFER_PROTOCOL message type. MAV_PROTOCOL_CAPABILITY_FTP MAV_PROTOCOL_CAPABILITY = 32 // Autopilot supports commanding attitude offboard. @@ -42,8 +44,8 @@ const ( MAV_PROTOCOL_CAPABILITY_MISSION_FENCE MAV_PROTOCOL_CAPABILITY = 16384 // Autopilot supports mission rally point protocol. MAV_PROTOCOL_CAPABILITY_MISSION_RALLY MAV_PROTOCOL_CAPABILITY = 32768 - // Autopilot supports the flight information protocol. - MAV_PROTOCOL_CAPABILITY_FLIGHT_INFORMATION MAV_PROTOCOL_CAPABILITY = 65536 + // Reserved for future use. + MAV_PROTOCOL_CAPABILITY_RESERVED2 MAV_PROTOCOL_CAPABILITY = 65536 ) var labels_MAV_PROTOCOL_CAPABILITY = map[MAV_PROTOCOL_CAPABILITY]string{} diff --git a/pkg/dialects/ardupilotmega/msg_component_information.go b/pkg/dialects/ardupilotmega/msg_component_information.go index 20ff6bc6d..1451bee98 100644 --- a/pkg/dialects/ardupilotmega/msg_component_information.go +++ b/pkg/dialects/ardupilotmega/msg_component_information.go @@ -6,13 +6,13 @@ package ardupilotmega type MessageComponentInformation struct { // Timestamp (time since system boot). TimeBootMs uint32 - // CRC32 of the TYPE_GENERAL file (can be used by a GCS for file caching). + // CRC32 of the TYPE_GENERAL file (can be used by a GCS for file caching). The general metadata file contains URLs to other files of different type according to COMP_METADATA_TYPE. GeneralMetadataFileCrc uint32 // Component definition URI for TYPE_GENERAL. This must be a MAVLink FTP URI and the file might be compressed with xz. GeneralMetadataUri string `mavlen:"100"` // CRC32 of the TYPE_PERIPHERALS file (can be used by a GCS for file caching). PeripheralsMetadataFileCrc uint32 - // (Optional) Component definition URI for TYPE_PERIPHERALS. This must be a MAVLink FTP URI and the file might be compressed with xz. + // (Optional) Component definition URI for TYPE_PERIPHERALS. This must be a MAVLink FTP URI and the file might be compressed with xz. Peripherals are listed as a separate URL and not included in the general metadata file because it will likely be generated at runtime while the general (and other referenced files) might be generated at compile time. PeripheralsMetadataUri string `mavlen:"100"` } diff --git a/pkg/dialects/ardupilotmega/msg_flight_information.go b/pkg/dialects/ardupilotmega/msg_flight_information.go index bbeee7093..275a843e7 100644 --- a/pkg/dialects/ardupilotmega/msg_flight_information.go +++ b/pkg/dialects/ardupilotmega/msg_flight_information.go @@ -3,6 +3,7 @@ package ardupilotmega // Information about flight since last arming. +// This can be requested using MAV_CMD_REQUEST_MESSAGE. type MessageFlightInformation struct { // Timestamp (time since system boot). TimeBootMs uint32 diff --git a/pkg/dialects/asluav/enum_mav_protocol_capability.go b/pkg/dialects/asluav/enum_mav_protocol_capability.go index 6f1388339..d5c91ac4b 100644 --- a/pkg/dialects/asluav/enum_mav_protocol_capability.go +++ b/pkg/dialects/asluav/enum_mav_protocol_capability.go @@ -10,16 +10,18 @@ import ( type MAV_PROTOCOL_CAPABILITY int const ( - // Autopilot supports MISSION float message type. + // Autopilot supports the MISSION_ITEM float message type. + // Note that MISSION_ITEM is deprecated, and autopilots should use MISSION_INT instead. MAV_PROTOCOL_CAPABILITY_MISSION_FLOAT MAV_PROTOCOL_CAPABILITY = 1 // Autopilot supports the new param float message type. MAV_PROTOCOL_CAPABILITY_PARAM_FLOAT MAV_PROTOCOL_CAPABILITY = 2 // Autopilot supports MISSION_ITEM_INT scaled integer message type. + // Note that this flag must always be set if missions are supported, because missions must always use MISSION_ITEM_INT (rather than MISSION_ITEM, which is deprecated). MAV_PROTOCOL_CAPABILITY_MISSION_INT MAV_PROTOCOL_CAPABILITY = 4 // Autopilot supports COMMAND_INT scaled integer message type. MAV_PROTOCOL_CAPABILITY_COMMAND_INT MAV_PROTOCOL_CAPABILITY = 8 - // Autopilot supports the new param union message type. - MAV_PROTOCOL_CAPABILITY_PARAM_UNION MAV_PROTOCOL_CAPABILITY = 16 + // Reserved for future use. + MAV_PROTOCOL_CAPABILITY_RESERVED1 MAV_PROTOCOL_CAPABILITY = 16 // Autopilot supports the new FILE_TRANSFER_PROTOCOL message type. MAV_PROTOCOL_CAPABILITY_FTP MAV_PROTOCOL_CAPABILITY = 32 // Autopilot supports commanding attitude offboard. @@ -42,8 +44,8 @@ const ( MAV_PROTOCOL_CAPABILITY_MISSION_FENCE MAV_PROTOCOL_CAPABILITY = 16384 // Autopilot supports mission rally point protocol. MAV_PROTOCOL_CAPABILITY_MISSION_RALLY MAV_PROTOCOL_CAPABILITY = 32768 - // Autopilot supports the flight information protocol. - MAV_PROTOCOL_CAPABILITY_FLIGHT_INFORMATION MAV_PROTOCOL_CAPABILITY = 65536 + // Reserved for future use. + MAV_PROTOCOL_CAPABILITY_RESERVED2 MAV_PROTOCOL_CAPABILITY = 65536 ) var labels_MAV_PROTOCOL_CAPABILITY = map[MAV_PROTOCOL_CAPABILITY]string{} diff --git a/pkg/dialects/asluav/msg_component_information.go b/pkg/dialects/asluav/msg_component_information.go index 4af35899c..7eb68bba4 100644 --- a/pkg/dialects/asluav/msg_component_information.go +++ b/pkg/dialects/asluav/msg_component_information.go @@ -6,13 +6,13 @@ package asluav type MessageComponentInformation struct { // Timestamp (time since system boot). TimeBootMs uint32 - // CRC32 of the TYPE_GENERAL file (can be used by a GCS for file caching). + // CRC32 of the TYPE_GENERAL file (can be used by a GCS for file caching). The general metadata file contains URLs to other files of different type according to COMP_METADATA_TYPE. GeneralMetadataFileCrc uint32 // Component definition URI for TYPE_GENERAL. This must be a MAVLink FTP URI and the file might be compressed with xz. GeneralMetadataUri string `mavlen:"100"` // CRC32 of the TYPE_PERIPHERALS file (can be used by a GCS for file caching). PeripheralsMetadataFileCrc uint32 - // (Optional) Component definition URI for TYPE_PERIPHERALS. This must be a MAVLink FTP URI and the file might be compressed with xz. + // (Optional) Component definition URI for TYPE_PERIPHERALS. This must be a MAVLink FTP URI and the file might be compressed with xz. Peripherals are listed as a separate URL and not included in the general metadata file because it will likely be generated at runtime while the general (and other referenced files) might be generated at compile time. PeripheralsMetadataUri string `mavlen:"100"` } diff --git a/pkg/dialects/asluav/msg_flight_information.go b/pkg/dialects/asluav/msg_flight_information.go index afa474d55..309225e1a 100644 --- a/pkg/dialects/asluav/msg_flight_information.go +++ b/pkg/dialects/asluav/msg_flight_information.go @@ -3,6 +3,7 @@ package asluav // Information about flight since last arming. +// This can be requested using MAV_CMD_REQUEST_MESSAGE. type MessageFlightInformation struct { // Timestamp (time since system boot). TimeBootMs uint32 diff --git a/pkg/dialects/avssuas/dialect.go b/pkg/dialects/avssuas/dialect.go new file mode 100644 index 000000000..b4de212c2 --- /dev/null +++ b/pkg/dialects/avssuas/dialect.go @@ -0,0 +1,237 @@ +//autogenerated:yes +// Package avssuas contains the AVSSUAS dialect. +package avssuas + +import ( + "github.com/aler9/gomavlib/pkg/dialect" + "github.com/aler9/gomavlib/pkg/msg" +) + +// Dialect contains the dialect definition. +var Dialect = dial + +// dial is not exposed directly in order not to display it in godoc. +var dial = &dialect.Dialect{ + Version: 1, + Messages: []msg.Message{ + // minimal.xml + &MessageHeartbeat{}, + &MessageProtocolVersion{}, + // common.xml + &MessageSysStatus{}, + &MessageSystemTime{}, + &MessagePing{}, + &MessageChangeOperatorControl{}, + &MessageChangeOperatorControlAck{}, + &MessageAuthKey{}, + &MessageLinkNodeStatus{}, + &MessageSetMode{}, + &MessageParamRequestRead{}, + &MessageParamRequestList{}, + &MessageParamValue{}, + &MessageParamSet{}, + &MessageGpsRawInt{}, + &MessageGpsStatus{}, + &MessageScaledImu{}, + &MessageRawImu{}, + &MessageRawPressure{}, + &MessageScaledPressure{}, + &MessageAttitude{}, + &MessageAttitudeQuaternion{}, + &MessageLocalPositionNed{}, + &MessageGlobalPositionInt{}, + &MessageRcChannelsScaled{}, + &MessageRcChannelsRaw{}, + &MessageServoOutputRaw{}, + &MessageMissionRequestPartialList{}, + &MessageMissionWritePartialList{}, + &MessageMissionItem{}, + &MessageMissionRequest{}, + &MessageMissionSetCurrent{}, + &MessageMissionCurrent{}, + &MessageMissionRequestList{}, + &MessageMissionCount{}, + &MessageMissionClearAll{}, + &MessageMissionItemReached{}, + &MessageMissionAck{}, + &MessageSetGpsGlobalOrigin{}, + &MessageGpsGlobalOrigin{}, + &MessageParamMapRc{}, + &MessageMissionRequestInt{}, + &MessageSafetySetAllowedArea{}, + &MessageSafetyAllowedArea{}, + &MessageAttitudeQuaternionCov{}, + &MessageNavControllerOutput{}, + &MessageGlobalPositionIntCov{}, + &MessageLocalPositionNedCov{}, + &MessageRcChannels{}, + &MessageRequestDataStream{}, + &MessageDataStream{}, + &MessageManualControl{}, + &MessageRcChannelsOverride{}, + &MessageMissionItemInt{}, + &MessageVfrHud{}, + &MessageCommandInt{}, + &MessageCommandLong{}, + &MessageCommandAck{}, + &MessageCommandCancel{}, + &MessageManualSetpoint{}, + &MessageSetAttitudeTarget{}, + &MessageAttitudeTarget{}, + &MessageSetPositionTargetLocalNed{}, + &MessagePositionTargetLocalNed{}, + &MessageSetPositionTargetGlobalInt{}, + &MessagePositionTargetGlobalInt{}, + &MessageLocalPositionNedSystemGlobalOffset{}, + &MessageHilState{}, + &MessageHilControls{}, + &MessageHilRcInputsRaw{}, + &MessageHilActuatorControls{}, + &MessageOpticalFlow{}, + &MessageGlobalVisionPositionEstimate{}, + &MessageVisionPositionEstimate{}, + &MessageVisionSpeedEstimate{}, + &MessageViconPositionEstimate{}, + &MessageHighresImu{}, + &MessageOpticalFlowRad{}, + &MessageHilSensor{}, + &MessageSimState{}, + &MessageRadioStatus{}, + &MessageFileTransferProtocol{}, + &MessageTimesync{}, + &MessageCameraTrigger{}, + &MessageHilGps{}, + &MessageHilOpticalFlow{}, + &MessageHilStateQuaternion{}, + &MessageScaledImu2{}, + &MessageLogRequestList{}, + &MessageLogEntry{}, + &MessageLogRequestData{}, + &MessageLogData{}, + &MessageLogErase{}, + &MessageLogRequestEnd{}, + &MessageGpsInjectData{}, + &MessageGps2Raw{}, + &MessagePowerStatus{}, + &MessageSerialControl{}, + &MessageGpsRtk{}, + &MessageGps2Rtk{}, + &MessageScaledImu3{}, + &MessageDataTransmissionHandshake{}, + &MessageEncapsulatedData{}, + &MessageDistanceSensor{}, + &MessageTerrainRequest{}, + &MessageTerrainData{}, + &MessageTerrainCheck{}, + &MessageTerrainReport{}, + &MessageScaledPressure2{}, + &MessageAttPosMocap{}, + &MessageSetActuatorControlTarget{}, + &MessageActuatorControlTarget{}, + &MessageAltitude{}, + &MessageResourceRequest{}, + &MessageScaledPressure3{}, + &MessageFollowTarget{}, + &MessageControlSystemState{}, + &MessageBatteryStatus{}, + &MessageAutopilotVersion{}, + &MessageLandingTarget{}, + &MessageFenceStatus{}, + &MessageMagCalReport{}, + &MessageEfiStatus{}, + &MessageEstimatorStatus{}, + &MessageWindCov{}, + &MessageGpsInput{}, + &MessageGpsRtcmData{}, + &MessageHighLatency{}, + &MessageHighLatency2{}, + &MessageVibration{}, + &MessageHomePosition{}, + &MessageSetHomePosition{}, + &MessageMessageInterval{}, + &MessageExtendedSysState{}, + &MessageAdsbVehicle{}, + &MessageCollision{}, + &MessageV2Extension{}, + &MessageMemoryVect{}, + &MessageDebugVect{}, + &MessageNamedValueFloat{}, + &MessageNamedValueInt{}, + &MessageStatustext{}, + &MessageDebug{}, + &MessageSetupSigning{}, + &MessageButtonChange{}, + &MessagePlayTune{}, + &MessageCameraInformation{}, + &MessageCameraSettings{}, + &MessageStorageInformation{}, + &MessageCameraCaptureStatus{}, + &MessageCameraImageCaptured{}, + &MessageFlightInformation{}, + &MessageMountOrientation{}, + &MessageLoggingData{}, + &MessageLoggingDataAcked{}, + &MessageLoggingAck{}, + &MessageVideoStreamInformation{}, + &MessageVideoStreamStatus{}, + &MessageCameraFovStatus{}, + &MessageCameraTrackingImageStatus{}, + &MessageCameraTrackingGeoStatus{}, + &MessageGimbalManagerInformation{}, + &MessageGimbalManagerStatus{}, + &MessageGimbalManagerSetAttitude{}, + &MessageGimbalDeviceInformation{}, + &MessageGimbalDeviceSetAttitude{}, + &MessageGimbalDeviceAttitudeStatus{}, + &MessageAutopilotStateForGimbalDevice{}, + &MessageGimbalManagerSetPitchyaw{}, + &MessageGimbalManagerSetManualControl{}, + &MessageEscInfo{}, + &MessageEscStatus{}, + &MessageWifiConfigAp{}, + &MessageAisVessel{}, + &MessageUavcanNodeStatus{}, + &MessageUavcanNodeInfo{}, + &MessageParamExtRequestRead{}, + &MessageParamExtRequestList{}, + &MessageParamExtValue{}, + &MessageParamExtSet{}, + &MessageParamExtAck{}, + &MessageObstacleDistance{}, + &MessageOdometry{}, + &MessageTrajectoryRepresentationWaypoints{}, + &MessageTrajectoryRepresentationBezier{}, + &MessageCellularStatus{}, + &MessageIsbdLinkStatus{}, + &MessageCellularConfig{}, + &MessageRawRpm{}, + &MessageUtmGlobalPosition{}, + &MessageDebugFloatArray{}, + &MessageOrbitExecutionStatus{}, + &MessageSmartBatteryInfo{}, + &MessageGeneratorStatus{}, + &MessageActuatorOutputStatus{}, + &MessageTimeEstimateToTarget{}, + &MessageTunnel{}, + &MessageOnboardComputerStatus{}, + &MessageComponentInformation{}, + &MessagePlayTuneV2{}, + &MessageSupportedTunes{}, + &MessageEvent{}, + &MessageCurrentEventSequence{}, + &MessageRequestEvent{}, + &MessageResponseEventError{}, + &MessageWheelDistance{}, + &MessageWinchStatus{}, + &MessageOpenDroneIdBasicId{}, + &MessageOpenDroneIdLocation{}, + &MessageOpenDroneIdAuthentication{}, + &MessageOpenDroneIdSelfId{}, + &MessageOpenDroneIdSystem{}, + &MessageOpenDroneIdOperatorId{}, + &MessageOpenDroneIdMessagePack{}, + &MessageHygrometerSensor{}, + // AVSSUAS.xml + &MessageAvssPrsSysStatus{}, + }, +} diff --git a/pkg/dialects/avssuas/enum_actuator_configuration.go b/pkg/dialects/avssuas/enum_actuator_configuration.go new file mode 100644 index 000000000..55a0e3c2b --- /dev/null +++ b/pkg/dialects/avssuas/enum_actuator_configuration.go @@ -0,0 +1,54 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package avssuas + +import ( + "errors" +) + +// Actuator configuration, used to change a setting on an actuator. Component information metadata can be used to know which outputs support which commands. +type ACTUATOR_CONFIGURATION int + +const ( + // Do nothing. + ACTUATOR_CONFIGURATION_NONE ACTUATOR_CONFIGURATION = 0 + // Command the actuator to beep now. + ACTUATOR_CONFIGURATION_BEEP ACTUATOR_CONFIGURATION = 1 + // Permanently set the actuator (ESC) to 3D mode (reversible thrust). + ACTUATOR_CONFIGURATION_3D_MODE_ON ACTUATOR_CONFIGURATION = 2 + // Permanently set the actuator (ESC) to non 3D mode (non-reversible thrust). + ACTUATOR_CONFIGURATION_3D_MODE_OFF ACTUATOR_CONFIGURATION = 3 + // Permanently set the actuator (ESC) to spin direction 1 (which can be clockwise or counter-clockwise). + ACTUATOR_CONFIGURATION_SPIN_DIRECTION1 ACTUATOR_CONFIGURATION = 4 + // Permanently set the actuator (ESC) to spin direction 2 (opposite of direction 1). + ACTUATOR_CONFIGURATION_SPIN_DIRECTION2 ACTUATOR_CONFIGURATION = 5 +) + +var labels_ACTUATOR_CONFIGURATION = map[ACTUATOR_CONFIGURATION]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e ACTUATOR_CONFIGURATION) MarshalText() ([]byte, error) { + if l, ok := labels_ACTUATOR_CONFIGURATION[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_ACTUATOR_CONFIGURATION = map[string]ACTUATOR_CONFIGURATION{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *ACTUATOR_CONFIGURATION) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_ACTUATOR_CONFIGURATION[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e ACTUATOR_CONFIGURATION) String() string { + if l, ok := labels_ACTUATOR_CONFIGURATION[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/avssuas/enum_actuator_output_function.go b/pkg/dialects/avssuas/enum_actuator_output_function.go new file mode 100644 index 000000000..f0e69d181 --- /dev/null +++ b/pkg/dialects/avssuas/enum_actuator_output_function.go @@ -0,0 +1,108 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package avssuas + +import ( + "errors" +) + +// Actuator output function. Values greater or equal to 1000 are autopilot-specific. +type ACTUATOR_OUTPUT_FUNCTION int + +const ( + // No function (disabled). + ACTUATOR_OUTPUT_FUNCTION_NONE ACTUATOR_OUTPUT_FUNCTION = 0 + // Motor 1 + ACTUATOR_OUTPUT_FUNCTION_MOTOR1 ACTUATOR_OUTPUT_FUNCTION = 1 + // Motor 2 + ACTUATOR_OUTPUT_FUNCTION_MOTOR2 ACTUATOR_OUTPUT_FUNCTION = 2 + // Motor 3 + ACTUATOR_OUTPUT_FUNCTION_MOTOR3 ACTUATOR_OUTPUT_FUNCTION = 3 + // Motor 4 + ACTUATOR_OUTPUT_FUNCTION_MOTOR4 ACTUATOR_OUTPUT_FUNCTION = 4 + // Motor 5 + ACTUATOR_OUTPUT_FUNCTION_MOTOR5 ACTUATOR_OUTPUT_FUNCTION = 5 + // Motor 6 + ACTUATOR_OUTPUT_FUNCTION_MOTOR6 ACTUATOR_OUTPUT_FUNCTION = 6 + // Motor 7 + ACTUATOR_OUTPUT_FUNCTION_MOTOR7 ACTUATOR_OUTPUT_FUNCTION = 7 + // Motor 8 + ACTUATOR_OUTPUT_FUNCTION_MOTOR8 ACTUATOR_OUTPUT_FUNCTION = 8 + // Motor 9 + ACTUATOR_OUTPUT_FUNCTION_MOTOR9 ACTUATOR_OUTPUT_FUNCTION = 9 + // Motor 10 + ACTUATOR_OUTPUT_FUNCTION_MOTOR10 ACTUATOR_OUTPUT_FUNCTION = 10 + // Motor 11 + ACTUATOR_OUTPUT_FUNCTION_MOTOR11 ACTUATOR_OUTPUT_FUNCTION = 11 + // Motor 12 + ACTUATOR_OUTPUT_FUNCTION_MOTOR12 ACTUATOR_OUTPUT_FUNCTION = 12 + // Motor 13 + ACTUATOR_OUTPUT_FUNCTION_MOTOR13 ACTUATOR_OUTPUT_FUNCTION = 13 + // Motor 14 + ACTUATOR_OUTPUT_FUNCTION_MOTOR14 ACTUATOR_OUTPUT_FUNCTION = 14 + // Motor 15 + ACTUATOR_OUTPUT_FUNCTION_MOTOR15 ACTUATOR_OUTPUT_FUNCTION = 15 + // Motor 16 + ACTUATOR_OUTPUT_FUNCTION_MOTOR16 ACTUATOR_OUTPUT_FUNCTION = 16 + // Servo 1 + ACTUATOR_OUTPUT_FUNCTION_SERVO1 ACTUATOR_OUTPUT_FUNCTION = 33 + // Servo 2 + ACTUATOR_OUTPUT_FUNCTION_SERVO2 ACTUATOR_OUTPUT_FUNCTION = 34 + // Servo 3 + ACTUATOR_OUTPUT_FUNCTION_SERVO3 ACTUATOR_OUTPUT_FUNCTION = 35 + // Servo 4 + ACTUATOR_OUTPUT_FUNCTION_SERVO4 ACTUATOR_OUTPUT_FUNCTION = 36 + // Servo 5 + ACTUATOR_OUTPUT_FUNCTION_SERVO5 ACTUATOR_OUTPUT_FUNCTION = 37 + // Servo 6 + ACTUATOR_OUTPUT_FUNCTION_SERVO6 ACTUATOR_OUTPUT_FUNCTION = 38 + // Servo 7 + ACTUATOR_OUTPUT_FUNCTION_SERVO7 ACTUATOR_OUTPUT_FUNCTION = 39 + // Servo 8 + ACTUATOR_OUTPUT_FUNCTION_SERVO8 ACTUATOR_OUTPUT_FUNCTION = 40 + // Servo 9 + ACTUATOR_OUTPUT_FUNCTION_SERVO9 ACTUATOR_OUTPUT_FUNCTION = 41 + // Servo 10 + ACTUATOR_OUTPUT_FUNCTION_SERVO10 ACTUATOR_OUTPUT_FUNCTION = 42 + // Servo 11 + ACTUATOR_OUTPUT_FUNCTION_SERVO11 ACTUATOR_OUTPUT_FUNCTION = 43 + // Servo 12 + ACTUATOR_OUTPUT_FUNCTION_SERVO12 ACTUATOR_OUTPUT_FUNCTION = 44 + // Servo 13 + ACTUATOR_OUTPUT_FUNCTION_SERVO13 ACTUATOR_OUTPUT_FUNCTION = 45 + // Servo 14 + ACTUATOR_OUTPUT_FUNCTION_SERVO14 ACTUATOR_OUTPUT_FUNCTION = 46 + // Servo 15 + ACTUATOR_OUTPUT_FUNCTION_SERVO15 ACTUATOR_OUTPUT_FUNCTION = 47 + // Servo 16 + ACTUATOR_OUTPUT_FUNCTION_SERVO16 ACTUATOR_OUTPUT_FUNCTION = 48 +) + +var labels_ACTUATOR_OUTPUT_FUNCTION = map[ACTUATOR_OUTPUT_FUNCTION]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e ACTUATOR_OUTPUT_FUNCTION) MarshalText() ([]byte, error) { + if l, ok := labels_ACTUATOR_OUTPUT_FUNCTION[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_ACTUATOR_OUTPUT_FUNCTION = map[string]ACTUATOR_OUTPUT_FUNCTION{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *ACTUATOR_OUTPUT_FUNCTION) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_ACTUATOR_OUTPUT_FUNCTION[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e ACTUATOR_OUTPUT_FUNCTION) String() string { + if l, ok := labels_ACTUATOR_OUTPUT_FUNCTION[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/avssuas/enum_adsb_altitude_type.go b/pkg/dialects/avssuas/enum_adsb_altitude_type.go new file mode 100644 index 000000000..e9df6ebce --- /dev/null +++ b/pkg/dialects/avssuas/enum_adsb_altitude_type.go @@ -0,0 +1,46 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package avssuas + +import ( + "errors" +) + +// Enumeration of the ADSB altimeter types +type ADSB_ALTITUDE_TYPE int + +const ( + // Altitude reported from a Baro source using QNH reference + ADSB_ALTITUDE_TYPE_PRESSURE_QNH ADSB_ALTITUDE_TYPE = 0 + // Altitude reported from a GNSS source + ADSB_ALTITUDE_TYPE_GEOMETRIC ADSB_ALTITUDE_TYPE = 1 +) + +var labels_ADSB_ALTITUDE_TYPE = map[ADSB_ALTITUDE_TYPE]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e ADSB_ALTITUDE_TYPE) MarshalText() ([]byte, error) { + if l, ok := labels_ADSB_ALTITUDE_TYPE[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_ADSB_ALTITUDE_TYPE = map[string]ADSB_ALTITUDE_TYPE{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *ADSB_ALTITUDE_TYPE) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_ADSB_ALTITUDE_TYPE[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e ADSB_ALTITUDE_TYPE) String() string { + if l, ok := labels_ADSB_ALTITUDE_TYPE[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/avssuas/enum_adsb_emitter_type.go b/pkg/dialects/avssuas/enum_adsb_emitter_type.go new file mode 100644 index 000000000..8654a2ea9 --- /dev/null +++ b/pkg/dialects/avssuas/enum_adsb_emitter_type.go @@ -0,0 +1,62 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package avssuas + +import ( + "errors" +) + +// ADSB classification for the type of vehicle emitting the transponder signal +type ADSB_EMITTER_TYPE int + +const ( + ADSB_EMITTER_TYPE_NO_INFO ADSB_EMITTER_TYPE = 0 + ADSB_EMITTER_TYPE_LIGHT ADSB_EMITTER_TYPE = 1 + ADSB_EMITTER_TYPE_SMALL ADSB_EMITTER_TYPE = 2 + ADSB_EMITTER_TYPE_LARGE ADSB_EMITTER_TYPE = 3 + ADSB_EMITTER_TYPE_HIGH_VORTEX_LARGE ADSB_EMITTER_TYPE = 4 + ADSB_EMITTER_TYPE_HEAVY ADSB_EMITTER_TYPE = 5 + ADSB_EMITTER_TYPE_HIGHLY_MANUV ADSB_EMITTER_TYPE = 6 + ADSB_EMITTER_TYPE_ROTOCRAFT ADSB_EMITTER_TYPE = 7 + ADSB_EMITTER_TYPE_UNASSIGNED ADSB_EMITTER_TYPE = 8 + ADSB_EMITTER_TYPE_GLIDER ADSB_EMITTER_TYPE = 9 + ADSB_EMITTER_TYPE_LIGHTER_AIR ADSB_EMITTER_TYPE = 10 + ADSB_EMITTER_TYPE_PARACHUTE ADSB_EMITTER_TYPE = 11 + ADSB_EMITTER_TYPE_ULTRA_LIGHT ADSB_EMITTER_TYPE = 12 + ADSB_EMITTER_TYPE_UNASSIGNED2 ADSB_EMITTER_TYPE = 13 + ADSB_EMITTER_TYPE_UAV ADSB_EMITTER_TYPE = 14 + ADSB_EMITTER_TYPE_SPACE ADSB_EMITTER_TYPE = 15 + ADSB_EMITTER_TYPE_UNASSGINED3 ADSB_EMITTER_TYPE = 16 + ADSB_EMITTER_TYPE_EMERGENCY_SURFACE ADSB_EMITTER_TYPE = 17 + ADSB_EMITTER_TYPE_SERVICE_SURFACE ADSB_EMITTER_TYPE = 18 + ADSB_EMITTER_TYPE_POINT_OBSTACLE ADSB_EMITTER_TYPE = 19 +) + +var labels_ADSB_EMITTER_TYPE = map[ADSB_EMITTER_TYPE]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e ADSB_EMITTER_TYPE) MarshalText() ([]byte, error) { + if l, ok := labels_ADSB_EMITTER_TYPE[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_ADSB_EMITTER_TYPE = map[string]ADSB_EMITTER_TYPE{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *ADSB_EMITTER_TYPE) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_ADSB_EMITTER_TYPE[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e ADSB_EMITTER_TYPE) String() string { + if l, ok := labels_ADSB_EMITTER_TYPE[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/avssuas/enum_adsb_flags.go b/pkg/dialects/avssuas/enum_adsb_flags.go new file mode 100644 index 000000000..a6f24bae7 --- /dev/null +++ b/pkg/dialects/avssuas/enum_adsb_flags.go @@ -0,0 +1,52 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package avssuas + +import ( + "errors" +) + +// These flags indicate status such as data validity of each data source. Set = data valid +type ADSB_FLAGS int + +const ( + ADSB_FLAGS_VALID_COORDS ADSB_FLAGS = 1 + ADSB_FLAGS_VALID_ALTITUDE ADSB_FLAGS = 2 + ADSB_FLAGS_VALID_HEADING ADSB_FLAGS = 4 + ADSB_FLAGS_VALID_VELOCITY ADSB_FLAGS = 8 + ADSB_FLAGS_VALID_CALLSIGN ADSB_FLAGS = 16 + ADSB_FLAGS_VALID_SQUAWK ADSB_FLAGS = 32 + ADSB_FLAGS_SIMULATED ADSB_FLAGS = 64 + ADSB_FLAGS_VERTICAL_VELOCITY_VALID ADSB_FLAGS = 128 + ADSB_FLAGS_BARO_VALID ADSB_FLAGS = 256 + ADSB_FLAGS_SOURCE_UAT ADSB_FLAGS = 32768 +) + +var labels_ADSB_FLAGS = map[ADSB_FLAGS]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e ADSB_FLAGS) MarshalText() ([]byte, error) { + if l, ok := labels_ADSB_FLAGS[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_ADSB_FLAGS = map[string]ADSB_FLAGS{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *ADSB_FLAGS) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_ADSB_FLAGS[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e ADSB_FLAGS) String() string { + if l, ok := labels_ADSB_FLAGS[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/avssuas/enum_ais_flags.go b/pkg/dialects/avssuas/enum_ais_flags.go new file mode 100644 index 000000000..32c1ff7b7 --- /dev/null +++ b/pkg/dialects/avssuas/enum_ais_flags.go @@ -0,0 +1,62 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package avssuas + +import ( + "errors" +) + +// These flags are used in the AIS_VESSEL.fields bitmask to indicate validity of data in the other message fields. When set, the data is valid. +type AIS_FLAGS int + +const ( + // 1 = Position accuracy less than 10m, 0 = position accuracy greater than 10m. + AIS_FLAGS_POSITION_ACCURACY AIS_FLAGS = 1 + AIS_FLAGS_VALID_COG AIS_FLAGS = 2 + AIS_FLAGS_VALID_VELOCITY AIS_FLAGS = 4 + // 1 = Velocity over 52.5765m/s (102.2 knots) + AIS_FLAGS_HIGH_VELOCITY AIS_FLAGS = 8 + AIS_FLAGS_VALID_TURN_RATE AIS_FLAGS = 16 + // Only the sign of the returned turn rate value is valid, either greater than 5deg/30s or less than -5deg/30s + AIS_FLAGS_TURN_RATE_SIGN_ONLY AIS_FLAGS = 32 + AIS_FLAGS_VALID_DIMENSIONS AIS_FLAGS = 64 + // Distance to bow is larger than 511m + AIS_FLAGS_LARGE_BOW_DIMENSION AIS_FLAGS = 128 + // Distance to stern is larger than 511m + AIS_FLAGS_LARGE_STERN_DIMENSION AIS_FLAGS = 256 + // Distance to port side is larger than 63m + AIS_FLAGS_LARGE_PORT_DIMENSION AIS_FLAGS = 512 + // Distance to starboard side is larger than 63m + AIS_FLAGS_LARGE_STARBOARD_DIMENSION AIS_FLAGS = 1024 + AIS_FLAGS_VALID_CALLSIGN AIS_FLAGS = 2048 + AIS_FLAGS_VALID_NAME AIS_FLAGS = 4096 +) + +var labels_AIS_FLAGS = map[AIS_FLAGS]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e AIS_FLAGS) MarshalText() ([]byte, error) { + if l, ok := labels_AIS_FLAGS[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_AIS_FLAGS = map[string]AIS_FLAGS{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *AIS_FLAGS) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_AIS_FLAGS[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e AIS_FLAGS) String() string { + if l, ok := labels_AIS_FLAGS[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/avssuas/enum_ais_nav_status.go b/pkg/dialects/avssuas/enum_ais_nav_status.go new file mode 100644 index 000000000..61321f507 --- /dev/null +++ b/pkg/dialects/avssuas/enum_ais_nav_status.go @@ -0,0 +1,61 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package avssuas + +import ( + "errors" +) + +// Navigational status of AIS vessel, enum duplicated from AIS standard, https://gpsd.gitlab.io/gpsd/AIVDM.html +type AIS_NAV_STATUS int + +const ( + // Under way using engine. + UNDER_WAY AIS_NAV_STATUS = 0 + AIS_NAV_ANCHORED AIS_NAV_STATUS = 1 + AIS_NAV_UN_COMMANDED AIS_NAV_STATUS = 2 + AIS_NAV_RESTRICTED_MANOEUVERABILITY AIS_NAV_STATUS = 3 + AIS_NAV_DRAUGHT_CONSTRAINED AIS_NAV_STATUS = 4 + AIS_NAV_MOORED AIS_NAV_STATUS = 5 + AIS_NAV_AGROUND AIS_NAV_STATUS = 6 + AIS_NAV_FISHING AIS_NAV_STATUS = 7 + AIS_NAV_SAILING AIS_NAV_STATUS = 8 + AIS_NAV_RESERVED_HSC AIS_NAV_STATUS = 9 + AIS_NAV_RESERVED_WIG AIS_NAV_STATUS = 10 + AIS_NAV_RESERVED_1 AIS_NAV_STATUS = 11 + AIS_NAV_RESERVED_2 AIS_NAV_STATUS = 12 + AIS_NAV_RESERVED_3 AIS_NAV_STATUS = 13 + // Search And Rescue Transponder. + AIS_NAV_AIS_SART AIS_NAV_STATUS = 14 + // Not available (default). + AIS_NAV_UNKNOWN AIS_NAV_STATUS = 15 +) + +var labels_AIS_NAV_STATUS = map[AIS_NAV_STATUS]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e AIS_NAV_STATUS) MarshalText() ([]byte, error) { + if l, ok := labels_AIS_NAV_STATUS[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_AIS_NAV_STATUS = map[string]AIS_NAV_STATUS{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *AIS_NAV_STATUS) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_AIS_NAV_STATUS[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e AIS_NAV_STATUS) String() string { + if l, ok := labels_AIS_NAV_STATUS[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/avssuas/enum_ais_type.go b/pkg/dialects/avssuas/enum_ais_type.go new file mode 100644 index 000000000..6671520a2 --- /dev/null +++ b/pkg/dialects/avssuas/enum_ais_type.go @@ -0,0 +1,150 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package avssuas + +import ( + "errors" +) + +// Type of AIS vessel, enum duplicated from AIS standard, https://gpsd.gitlab.io/gpsd/AIVDM.html +type AIS_TYPE int + +const ( + // Not available (default). + AIS_TYPE_UNKNOWN AIS_TYPE = 0 + AIS_TYPE_RESERVED_1 AIS_TYPE = 1 + AIS_TYPE_RESERVED_2 AIS_TYPE = 2 + AIS_TYPE_RESERVED_3 AIS_TYPE = 3 + AIS_TYPE_RESERVED_4 AIS_TYPE = 4 + AIS_TYPE_RESERVED_5 AIS_TYPE = 5 + AIS_TYPE_RESERVED_6 AIS_TYPE = 6 + AIS_TYPE_RESERVED_7 AIS_TYPE = 7 + AIS_TYPE_RESERVED_8 AIS_TYPE = 8 + AIS_TYPE_RESERVED_9 AIS_TYPE = 9 + AIS_TYPE_RESERVED_10 AIS_TYPE = 10 + AIS_TYPE_RESERVED_11 AIS_TYPE = 11 + AIS_TYPE_RESERVED_12 AIS_TYPE = 12 + AIS_TYPE_RESERVED_13 AIS_TYPE = 13 + AIS_TYPE_RESERVED_14 AIS_TYPE = 14 + AIS_TYPE_RESERVED_15 AIS_TYPE = 15 + AIS_TYPE_RESERVED_16 AIS_TYPE = 16 + AIS_TYPE_RESERVED_17 AIS_TYPE = 17 + AIS_TYPE_RESERVED_18 AIS_TYPE = 18 + AIS_TYPE_RESERVED_19 AIS_TYPE = 19 + // Wing In Ground effect. + AIS_TYPE_WIG AIS_TYPE = 20 + AIS_TYPE_WIG_HAZARDOUS_A AIS_TYPE = 21 + AIS_TYPE_WIG_HAZARDOUS_B AIS_TYPE = 22 + AIS_TYPE_WIG_HAZARDOUS_C AIS_TYPE = 23 + AIS_TYPE_WIG_HAZARDOUS_D AIS_TYPE = 24 + AIS_TYPE_WIG_RESERVED_1 AIS_TYPE = 25 + AIS_TYPE_WIG_RESERVED_2 AIS_TYPE = 26 + AIS_TYPE_WIG_RESERVED_3 AIS_TYPE = 27 + AIS_TYPE_WIG_RESERVED_4 AIS_TYPE = 28 + AIS_TYPE_WIG_RESERVED_5 AIS_TYPE = 29 + AIS_TYPE_FISHING AIS_TYPE = 30 + AIS_TYPE_TOWING AIS_TYPE = 31 + // Towing: length exceeds 200m or breadth exceeds 25m. + AIS_TYPE_TOWING_LARGE AIS_TYPE = 32 + // Dredging or other underwater ops. + AIS_TYPE_DREDGING AIS_TYPE = 33 + AIS_TYPE_DIVING AIS_TYPE = 34 + AIS_TYPE_MILITARY AIS_TYPE = 35 + AIS_TYPE_SAILING AIS_TYPE = 36 + AIS_TYPE_PLEASURE AIS_TYPE = 37 + AIS_TYPE_RESERVED_20 AIS_TYPE = 38 + AIS_TYPE_RESERVED_21 AIS_TYPE = 39 + // High Speed Craft. + AIS_TYPE_HSC AIS_TYPE = 40 + AIS_TYPE_HSC_HAZARDOUS_A AIS_TYPE = 41 + AIS_TYPE_HSC_HAZARDOUS_B AIS_TYPE = 42 + AIS_TYPE_HSC_HAZARDOUS_C AIS_TYPE = 43 + AIS_TYPE_HSC_HAZARDOUS_D AIS_TYPE = 44 + AIS_TYPE_HSC_RESERVED_1 AIS_TYPE = 45 + AIS_TYPE_HSC_RESERVED_2 AIS_TYPE = 46 + AIS_TYPE_HSC_RESERVED_3 AIS_TYPE = 47 + AIS_TYPE_HSC_RESERVED_4 AIS_TYPE = 48 + AIS_TYPE_HSC_UNKNOWN AIS_TYPE = 49 + AIS_TYPE_PILOT AIS_TYPE = 50 + // Search And Rescue vessel. + AIS_TYPE_SAR AIS_TYPE = 51 + AIS_TYPE_TUG AIS_TYPE = 52 + AIS_TYPE_PORT_TENDER AIS_TYPE = 53 + // Anti-pollution equipment. + AIS_TYPE_ANTI_POLLUTION AIS_TYPE = 54 + AIS_TYPE_LAW_ENFORCEMENT AIS_TYPE = 55 + AIS_TYPE_SPARE_LOCAL_1 AIS_TYPE = 56 + AIS_TYPE_SPARE_LOCAL_2 AIS_TYPE = 57 + AIS_TYPE_MEDICAL_TRANSPORT AIS_TYPE = 58 + // Noncombatant ship according to RR Resolution No. 18. + AIS_TYPE_NONECOMBATANT AIS_TYPE = 59 + AIS_TYPE_PASSENGER AIS_TYPE = 60 + AIS_TYPE_PASSENGER_HAZARDOUS_A AIS_TYPE = 61 + AIS_TYPE_PASSENGER_HAZARDOUS_B AIS_TYPE = 62 + AIS_TYPE_AIS_TYPE_PASSENGER_HAZARDOUS_C AIS_TYPE = 63 + AIS_TYPE_PASSENGER_HAZARDOUS_D AIS_TYPE = 64 + AIS_TYPE_PASSENGER_RESERVED_1 AIS_TYPE = 65 + AIS_TYPE_PASSENGER_RESERVED_2 AIS_TYPE = 66 + AIS_TYPE_PASSENGER_RESERVED_3 AIS_TYPE = 67 + AIS_TYPE_AIS_TYPE_PASSENGER_RESERVED_4 AIS_TYPE = 68 + AIS_TYPE_PASSENGER_UNKNOWN AIS_TYPE = 69 + AIS_TYPE_CARGO AIS_TYPE = 70 + AIS_TYPE_CARGO_HAZARDOUS_A AIS_TYPE = 71 + AIS_TYPE_CARGO_HAZARDOUS_B AIS_TYPE = 72 + AIS_TYPE_CARGO_HAZARDOUS_C AIS_TYPE = 73 + AIS_TYPE_CARGO_HAZARDOUS_D AIS_TYPE = 74 + AIS_TYPE_CARGO_RESERVED_1 AIS_TYPE = 75 + AIS_TYPE_CARGO_RESERVED_2 AIS_TYPE = 76 + AIS_TYPE_CARGO_RESERVED_3 AIS_TYPE = 77 + AIS_TYPE_CARGO_RESERVED_4 AIS_TYPE = 78 + AIS_TYPE_CARGO_UNKNOWN AIS_TYPE = 79 + AIS_TYPE_TANKER AIS_TYPE = 80 + AIS_TYPE_TANKER_HAZARDOUS_A AIS_TYPE = 81 + AIS_TYPE_TANKER_HAZARDOUS_B AIS_TYPE = 82 + AIS_TYPE_TANKER_HAZARDOUS_C AIS_TYPE = 83 + AIS_TYPE_TANKER_HAZARDOUS_D AIS_TYPE = 84 + AIS_TYPE_TANKER_RESERVED_1 AIS_TYPE = 85 + AIS_TYPE_TANKER_RESERVED_2 AIS_TYPE = 86 + AIS_TYPE_TANKER_RESERVED_3 AIS_TYPE = 87 + AIS_TYPE_TANKER_RESERVED_4 AIS_TYPE = 88 + AIS_TYPE_TANKER_UNKNOWN AIS_TYPE = 89 + AIS_TYPE_OTHER AIS_TYPE = 90 + AIS_TYPE_OTHER_HAZARDOUS_A AIS_TYPE = 91 + AIS_TYPE_OTHER_HAZARDOUS_B AIS_TYPE = 92 + AIS_TYPE_OTHER_HAZARDOUS_C AIS_TYPE = 93 + AIS_TYPE_OTHER_HAZARDOUS_D AIS_TYPE = 94 + AIS_TYPE_OTHER_RESERVED_1 AIS_TYPE = 95 + AIS_TYPE_OTHER_RESERVED_2 AIS_TYPE = 96 + AIS_TYPE_OTHER_RESERVED_3 AIS_TYPE = 97 + AIS_TYPE_OTHER_RESERVED_4 AIS_TYPE = 98 + AIS_TYPE_OTHER_UNKNOWN AIS_TYPE = 99 +) + +var labels_AIS_TYPE = map[AIS_TYPE]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e AIS_TYPE) MarshalText() ([]byte, error) { + if l, ok := labels_AIS_TYPE[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_AIS_TYPE = map[string]AIS_TYPE{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *AIS_TYPE) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_AIS_TYPE[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e AIS_TYPE) String() string { + if l, ok := labels_AIS_TYPE[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/avssuas/enum_attitude_target_typemask.go b/pkg/dialects/avssuas/enum_attitude_target_typemask.go new file mode 100644 index 000000000..311093b2f --- /dev/null +++ b/pkg/dialects/avssuas/enum_attitude_target_typemask.go @@ -0,0 +1,54 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package avssuas + +import ( + "errors" +) + +// Bitmap to indicate which dimensions should be ignored by the vehicle: a value of 0b00000000 indicates that none of the setpoint dimensions should be ignored. +type ATTITUDE_TARGET_TYPEMASK int + +const ( + // Ignore body roll rate + ATTITUDE_TARGET_TYPEMASK_BODY_ROLL_RATE_IGNORE ATTITUDE_TARGET_TYPEMASK = 1 + // Ignore body pitch rate + ATTITUDE_TARGET_TYPEMASK_BODY_PITCH_RATE_IGNORE ATTITUDE_TARGET_TYPEMASK = 2 + // Ignore body yaw rate + ATTITUDE_TARGET_TYPEMASK_BODY_YAW_RATE_IGNORE ATTITUDE_TARGET_TYPEMASK = 4 + // Use 3D body thrust setpoint instead of throttle + ATTITUDE_TARGET_TYPEMASK_THRUST_BODY_SET ATTITUDE_TARGET_TYPEMASK = 32 + // Ignore throttle + ATTITUDE_TARGET_TYPEMASK_THROTTLE_IGNORE ATTITUDE_TARGET_TYPEMASK = 64 + // Ignore attitude + ATTITUDE_TARGET_TYPEMASK_ATTITUDE_IGNORE ATTITUDE_TARGET_TYPEMASK = 128 +) + +var labels_ATTITUDE_TARGET_TYPEMASK = map[ATTITUDE_TARGET_TYPEMASK]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e ATTITUDE_TARGET_TYPEMASK) MarshalText() ([]byte, error) { + if l, ok := labels_ATTITUDE_TARGET_TYPEMASK[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_ATTITUDE_TARGET_TYPEMASK = map[string]ATTITUDE_TARGET_TYPEMASK{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *ATTITUDE_TARGET_TYPEMASK) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_ATTITUDE_TARGET_TYPEMASK[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e ATTITUDE_TARGET_TYPEMASK) String() string { + if l, ok := labels_ATTITUDE_TARGET_TYPEMASK[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/avssuas/enum_autotune_axis.go b/pkg/dialects/avssuas/enum_autotune_axis.go new file mode 100644 index 000000000..82d648ce8 --- /dev/null +++ b/pkg/dialects/avssuas/enum_autotune_axis.go @@ -0,0 +1,50 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package avssuas + +import ( + "errors" +) + +// Enable axes that will be tuned via autotuning. Used in MAV_CMD_DO_AUTOTUNE_ENABLE. +type AUTOTUNE_AXIS int + +const ( + // Flight stack tunes axis according to its default settings. + AUTOTUNE_AXIS_DEFAULT AUTOTUNE_AXIS = 0 + // Autotune roll axis. + AUTOTUNE_AXIS_ROLL AUTOTUNE_AXIS = 1 + // Autotune pitch axis. + AUTOTUNE_AXIS_PITCH AUTOTUNE_AXIS = 2 + // Autotune yaw axis. + AUTOTUNE_AXIS_YAW AUTOTUNE_AXIS = 4 +) + +var labels_AUTOTUNE_AXIS = map[AUTOTUNE_AXIS]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e AUTOTUNE_AXIS) MarshalText() ([]byte, error) { + if l, ok := labels_AUTOTUNE_AXIS[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_AUTOTUNE_AXIS = map[string]AUTOTUNE_AXIS{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *AUTOTUNE_AXIS) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_AUTOTUNE_AXIS[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e AUTOTUNE_AXIS) String() string { + if l, ok := labels_AUTOTUNE_AXIS[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/avssuas/enum_camera_cap_flags.go b/pkg/dialects/avssuas/enum_camera_cap_flags.go new file mode 100644 index 000000000..0b5ad901d --- /dev/null +++ b/pkg/dialects/avssuas/enum_camera_cap_flags.go @@ -0,0 +1,66 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package avssuas + +import ( + "errors" +) + +// Camera capability flags (Bitmap) +type CAMERA_CAP_FLAGS int + +const ( + // Camera is able to record video + CAMERA_CAP_FLAGS_CAPTURE_VIDEO CAMERA_CAP_FLAGS = 1 + // Camera is able to capture images + CAMERA_CAP_FLAGS_CAPTURE_IMAGE CAMERA_CAP_FLAGS = 2 + // Camera has separate Video and Image/Photo modes (MAV_CMD_SET_CAMERA_MODE) + CAMERA_CAP_FLAGS_HAS_MODES CAMERA_CAP_FLAGS = 4 + // Camera can capture images while in video mode + CAMERA_CAP_FLAGS_CAN_CAPTURE_IMAGE_IN_VIDEO_MODE CAMERA_CAP_FLAGS = 8 + // Camera can capture videos while in Photo/Image mode + CAMERA_CAP_FLAGS_CAN_CAPTURE_VIDEO_IN_IMAGE_MODE CAMERA_CAP_FLAGS = 16 + // Camera has image survey mode (MAV_CMD_SET_CAMERA_MODE) + CAMERA_CAP_FLAGS_HAS_IMAGE_SURVEY_MODE CAMERA_CAP_FLAGS = 32 + // Camera has basic zoom control (MAV_CMD_SET_CAMERA_ZOOM) + CAMERA_CAP_FLAGS_HAS_BASIC_ZOOM CAMERA_CAP_FLAGS = 64 + // Camera has basic focus control (MAV_CMD_SET_CAMERA_FOCUS) + CAMERA_CAP_FLAGS_HAS_BASIC_FOCUS CAMERA_CAP_FLAGS = 128 + // Camera has video streaming capabilities (request VIDEO_STREAM_INFORMATION with MAV_CMD_REQUEST_MESSAGE for video streaming info) + CAMERA_CAP_FLAGS_HAS_VIDEO_STREAM CAMERA_CAP_FLAGS = 256 + // Camera supports tracking of a point on the camera view. + CAMERA_CAP_FLAGS_HAS_TRACKING_POINT CAMERA_CAP_FLAGS = 512 + // Camera supports tracking of a selection rectangle on the camera view. + CAMERA_CAP_FLAGS_HAS_TRACKING_RECTANGLE CAMERA_CAP_FLAGS = 1024 + // Camera supports tracking geo status (CAMERA_TRACKING_GEO_STATUS). + CAMERA_CAP_FLAGS_HAS_TRACKING_GEO_STATUS CAMERA_CAP_FLAGS = 2048 +) + +var labels_CAMERA_CAP_FLAGS = map[CAMERA_CAP_FLAGS]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e CAMERA_CAP_FLAGS) MarshalText() ([]byte, error) { + if l, ok := labels_CAMERA_CAP_FLAGS[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_CAMERA_CAP_FLAGS = map[string]CAMERA_CAP_FLAGS{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *CAMERA_CAP_FLAGS) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_CAMERA_CAP_FLAGS[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e CAMERA_CAP_FLAGS) String() string { + if l, ok := labels_CAMERA_CAP_FLAGS[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/avssuas/enum_camera_mode.go b/pkg/dialects/avssuas/enum_camera_mode.go new file mode 100644 index 000000000..18c10f722 --- /dev/null +++ b/pkg/dialects/avssuas/enum_camera_mode.go @@ -0,0 +1,48 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package avssuas + +import ( + "errors" +) + +// Camera Modes. +type CAMERA_MODE int + +const ( + // Camera is in image/photo capture mode. + CAMERA_MODE_IMAGE CAMERA_MODE = 0 + // Camera is in video capture mode. + CAMERA_MODE_VIDEO CAMERA_MODE = 1 + // Camera is in image survey capture mode. It allows for camera controller to do specific settings for surveys. + CAMERA_MODE_IMAGE_SURVEY CAMERA_MODE = 2 +) + +var labels_CAMERA_MODE = map[CAMERA_MODE]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e CAMERA_MODE) MarshalText() ([]byte, error) { + if l, ok := labels_CAMERA_MODE[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_CAMERA_MODE = map[string]CAMERA_MODE{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *CAMERA_MODE) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_CAMERA_MODE[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e CAMERA_MODE) String() string { + if l, ok := labels_CAMERA_MODE[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/avssuas/enum_camera_tracking_mode.go b/pkg/dialects/avssuas/enum_camera_tracking_mode.go new file mode 100644 index 000000000..aaf480e03 --- /dev/null +++ b/pkg/dialects/avssuas/enum_camera_tracking_mode.go @@ -0,0 +1,48 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package avssuas + +import ( + "errors" +) + +// Camera tracking modes +type CAMERA_TRACKING_MODE int + +const ( + // Not tracking + CAMERA_TRACKING_MODE_NONE CAMERA_TRACKING_MODE = 0 + // Target is a point + CAMERA_TRACKING_MODE_POINT CAMERA_TRACKING_MODE = 1 + // Target is a rectangle + CAMERA_TRACKING_MODE_RECTANGLE CAMERA_TRACKING_MODE = 2 +) + +var labels_CAMERA_TRACKING_MODE = map[CAMERA_TRACKING_MODE]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e CAMERA_TRACKING_MODE) MarshalText() ([]byte, error) { + if l, ok := labels_CAMERA_TRACKING_MODE[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_CAMERA_TRACKING_MODE = map[string]CAMERA_TRACKING_MODE{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *CAMERA_TRACKING_MODE) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_CAMERA_TRACKING_MODE[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e CAMERA_TRACKING_MODE) String() string { + if l, ok := labels_CAMERA_TRACKING_MODE[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/avssuas/enum_camera_tracking_status_flags.go b/pkg/dialects/avssuas/enum_camera_tracking_status_flags.go new file mode 100644 index 000000000..395ea804f --- /dev/null +++ b/pkg/dialects/avssuas/enum_camera_tracking_status_flags.go @@ -0,0 +1,48 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package avssuas + +import ( + "errors" +) + +// Camera tracking status flags +type CAMERA_TRACKING_STATUS_FLAGS int + +const ( + // Camera is not tracking + CAMERA_TRACKING_STATUS_FLAGS_IDLE CAMERA_TRACKING_STATUS_FLAGS = 0 + // Camera is tracking + CAMERA_TRACKING_STATUS_FLAGS_ACTIVE CAMERA_TRACKING_STATUS_FLAGS = 1 + // Camera tracking in error state + CAMERA_TRACKING_STATUS_FLAGS_ERROR CAMERA_TRACKING_STATUS_FLAGS = 2 +) + +var labels_CAMERA_TRACKING_STATUS_FLAGS = map[CAMERA_TRACKING_STATUS_FLAGS]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e CAMERA_TRACKING_STATUS_FLAGS) MarshalText() ([]byte, error) { + if l, ok := labels_CAMERA_TRACKING_STATUS_FLAGS[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_CAMERA_TRACKING_STATUS_FLAGS = map[string]CAMERA_TRACKING_STATUS_FLAGS{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *CAMERA_TRACKING_STATUS_FLAGS) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_CAMERA_TRACKING_STATUS_FLAGS[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e CAMERA_TRACKING_STATUS_FLAGS) String() string { + if l, ok := labels_CAMERA_TRACKING_STATUS_FLAGS[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/avssuas/enum_camera_tracking_target_data.go b/pkg/dialects/avssuas/enum_camera_tracking_target_data.go new file mode 100644 index 000000000..a926d47c7 --- /dev/null +++ b/pkg/dialects/avssuas/enum_camera_tracking_target_data.go @@ -0,0 +1,50 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package avssuas + +import ( + "errors" +) + +// Camera tracking target data (shows where tracked target is within image) +type CAMERA_TRACKING_TARGET_DATA int + +const ( + // No target data + CAMERA_TRACKING_TARGET_DATA_NONE CAMERA_TRACKING_TARGET_DATA = 0 + // Target data embedded in image data (proprietary) + CAMERA_TRACKING_TARGET_DATA_EMBEDDED CAMERA_TRACKING_TARGET_DATA = 1 + // Target data rendered in image + CAMERA_TRACKING_TARGET_DATA_RENDERED CAMERA_TRACKING_TARGET_DATA = 2 + // Target data within status message (Point or Rectangle) + CAMERA_TRACKING_TARGET_DATA_IN_STATUS CAMERA_TRACKING_TARGET_DATA = 4 +) + +var labels_CAMERA_TRACKING_TARGET_DATA = map[CAMERA_TRACKING_TARGET_DATA]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e CAMERA_TRACKING_TARGET_DATA) MarshalText() ([]byte, error) { + if l, ok := labels_CAMERA_TRACKING_TARGET_DATA[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_CAMERA_TRACKING_TARGET_DATA = map[string]CAMERA_TRACKING_TARGET_DATA{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *CAMERA_TRACKING_TARGET_DATA) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_CAMERA_TRACKING_TARGET_DATA[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e CAMERA_TRACKING_TARGET_DATA) String() string { + if l, ok := labels_CAMERA_TRACKING_TARGET_DATA[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/avssuas/enum_camera_zoom_type.go b/pkg/dialects/avssuas/enum_camera_zoom_type.go new file mode 100644 index 000000000..954bcd210 --- /dev/null +++ b/pkg/dialects/avssuas/enum_camera_zoom_type.go @@ -0,0 +1,50 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package avssuas + +import ( + "errors" +) + +// Zoom types for MAV_CMD_SET_CAMERA_ZOOM +type CAMERA_ZOOM_TYPE int + +const ( + // Zoom one step increment (-1 for wide, 1 for tele) + ZOOM_TYPE_STEP CAMERA_ZOOM_TYPE = 0 + // Continuous zoom up/down until stopped (-1 for wide, 1 for tele, 0 to stop zooming) + ZOOM_TYPE_CONTINUOUS CAMERA_ZOOM_TYPE = 1 + // Zoom value as proportion of full camera range (a value between 0.0 and 100.0) + ZOOM_TYPE_RANGE CAMERA_ZOOM_TYPE = 2 + // Zoom value/variable focal length in milimetres. Note that there is no message to get the valid zoom range of the camera, so this can type can only be used for cameras where the zoom range is known (implying that this cannot reliably be used in a GCS for an arbitrary camera) + ZOOM_TYPE_FOCAL_LENGTH CAMERA_ZOOM_TYPE = 3 +) + +var labels_CAMERA_ZOOM_TYPE = map[CAMERA_ZOOM_TYPE]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e CAMERA_ZOOM_TYPE) MarshalText() ([]byte, error) { + if l, ok := labels_CAMERA_ZOOM_TYPE[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_CAMERA_ZOOM_TYPE = map[string]CAMERA_ZOOM_TYPE{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *CAMERA_ZOOM_TYPE) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_CAMERA_ZOOM_TYPE[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e CAMERA_ZOOM_TYPE) String() string { + if l, ok := labels_CAMERA_ZOOM_TYPE[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/avssuas/enum_cellular_config_response.go b/pkg/dialects/avssuas/enum_cellular_config_response.go new file mode 100644 index 000000000..e7bde16f5 --- /dev/null +++ b/pkg/dialects/avssuas/enum_cellular_config_response.go @@ -0,0 +1,52 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package avssuas + +import ( + "errors" +) + +// Possible responses from a CELLULAR_CONFIG message. +type CELLULAR_CONFIG_RESPONSE int + +const ( + // Changes accepted. + CELLULAR_CONFIG_RESPONSE_ACCEPTED CELLULAR_CONFIG_RESPONSE = 0 + // Invalid APN. + CELLULAR_CONFIG_RESPONSE_APN_ERROR CELLULAR_CONFIG_RESPONSE = 1 + // Invalid PIN. + CELLULAR_CONFIG_RESPONSE_PIN_ERROR CELLULAR_CONFIG_RESPONSE = 2 + // Changes rejected. + CELLULAR_CONFIG_RESPONSE_REJECTED CELLULAR_CONFIG_RESPONSE = 3 + // PUK is required to unblock SIM card. + CELLULAR_CONFIG_BLOCKED_PUK_REQUIRED CELLULAR_CONFIG_RESPONSE = 4 +) + +var labels_CELLULAR_CONFIG_RESPONSE = map[CELLULAR_CONFIG_RESPONSE]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e CELLULAR_CONFIG_RESPONSE) MarshalText() ([]byte, error) { + if l, ok := labels_CELLULAR_CONFIG_RESPONSE[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_CELLULAR_CONFIG_RESPONSE = map[string]CELLULAR_CONFIG_RESPONSE{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *CELLULAR_CONFIG_RESPONSE) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_CELLULAR_CONFIG_RESPONSE[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e CELLULAR_CONFIG_RESPONSE) String() string { + if l, ok := labels_CELLULAR_CONFIG_RESPONSE[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/avssuas/enum_cellular_network_failed_reason.go b/pkg/dialects/avssuas/enum_cellular_network_failed_reason.go new file mode 100644 index 000000000..0ad5acbf8 --- /dev/null +++ b/pkg/dialects/avssuas/enum_cellular_network_failed_reason.go @@ -0,0 +1,50 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package avssuas + +import ( + "errors" +) + +// These flags are used to diagnose the failure state of CELLULAR_STATUS +type CELLULAR_NETWORK_FAILED_REASON int + +const ( + // No error + CELLULAR_NETWORK_FAILED_REASON_NONE CELLULAR_NETWORK_FAILED_REASON = 0 + // Error state is unknown + CELLULAR_NETWORK_FAILED_REASON_UNKNOWN CELLULAR_NETWORK_FAILED_REASON = 1 + // SIM is required for the modem but missing + CELLULAR_NETWORK_FAILED_REASON_SIM_MISSING CELLULAR_NETWORK_FAILED_REASON = 2 + // SIM is available, but not usuable for connection + CELLULAR_NETWORK_FAILED_REASON_SIM_ERROR CELLULAR_NETWORK_FAILED_REASON = 3 +) + +var labels_CELLULAR_NETWORK_FAILED_REASON = map[CELLULAR_NETWORK_FAILED_REASON]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e CELLULAR_NETWORK_FAILED_REASON) MarshalText() ([]byte, error) { + if l, ok := labels_CELLULAR_NETWORK_FAILED_REASON[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_CELLULAR_NETWORK_FAILED_REASON = map[string]CELLULAR_NETWORK_FAILED_REASON{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *CELLULAR_NETWORK_FAILED_REASON) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_CELLULAR_NETWORK_FAILED_REASON[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e CELLULAR_NETWORK_FAILED_REASON) String() string { + if l, ok := labels_CELLULAR_NETWORK_FAILED_REASON[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/avssuas/enum_cellular_network_radio_type.go b/pkg/dialects/avssuas/enum_cellular_network_radio_type.go new file mode 100644 index 000000000..ee27cad6e --- /dev/null +++ b/pkg/dialects/avssuas/enum_cellular_network_radio_type.go @@ -0,0 +1,47 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package avssuas + +import ( + "errors" +) + +// Cellular network radio type +type CELLULAR_NETWORK_RADIO_TYPE int + +const ( + CELLULAR_NETWORK_RADIO_TYPE_NONE CELLULAR_NETWORK_RADIO_TYPE = 0 + CELLULAR_NETWORK_RADIO_TYPE_GSM CELLULAR_NETWORK_RADIO_TYPE = 1 + CELLULAR_NETWORK_RADIO_TYPE_CDMA CELLULAR_NETWORK_RADIO_TYPE = 2 + CELLULAR_NETWORK_RADIO_TYPE_WCDMA CELLULAR_NETWORK_RADIO_TYPE = 3 + CELLULAR_NETWORK_RADIO_TYPE_LTE CELLULAR_NETWORK_RADIO_TYPE = 4 +) + +var labels_CELLULAR_NETWORK_RADIO_TYPE = map[CELLULAR_NETWORK_RADIO_TYPE]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e CELLULAR_NETWORK_RADIO_TYPE) MarshalText() ([]byte, error) { + if l, ok := labels_CELLULAR_NETWORK_RADIO_TYPE[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_CELLULAR_NETWORK_RADIO_TYPE = map[string]CELLULAR_NETWORK_RADIO_TYPE{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *CELLULAR_NETWORK_RADIO_TYPE) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_CELLULAR_NETWORK_RADIO_TYPE[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e CELLULAR_NETWORK_RADIO_TYPE) String() string { + if l, ok := labels_CELLULAR_NETWORK_RADIO_TYPE[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/avssuas/enum_cellular_status_flag.go b/pkg/dialects/avssuas/enum_cellular_status_flag.go new file mode 100644 index 000000000..01bb2cb0d --- /dev/null +++ b/pkg/dialects/avssuas/enum_cellular_status_flag.go @@ -0,0 +1,68 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package avssuas + +import ( + "errors" +) + +// These flags encode the cellular network status +type CELLULAR_STATUS_FLAG int + +const ( + // State unknown or not reportable. + CELLULAR_STATUS_FLAG_UNKNOWN CELLULAR_STATUS_FLAG = 0 + // Modem is unusable + CELLULAR_STATUS_FLAG_FAILED CELLULAR_STATUS_FLAG = 1 + // Modem is being initialized + CELLULAR_STATUS_FLAG_INITIALIZING CELLULAR_STATUS_FLAG = 2 + // Modem is locked + CELLULAR_STATUS_FLAG_LOCKED CELLULAR_STATUS_FLAG = 3 + // Modem is not enabled and is powered down + CELLULAR_STATUS_FLAG_DISABLED CELLULAR_STATUS_FLAG = 4 + // Modem is currently transitioning to the CELLULAR_STATUS_FLAG_DISABLED state + CELLULAR_STATUS_FLAG_DISABLING CELLULAR_STATUS_FLAG = 5 + // Modem is currently transitioning to the CELLULAR_STATUS_FLAG_ENABLED state + CELLULAR_STATUS_FLAG_ENABLING CELLULAR_STATUS_FLAG = 6 + // Modem is enabled and powered on but not registered with a network provider and not available for data connections + CELLULAR_STATUS_FLAG_ENABLED CELLULAR_STATUS_FLAG = 7 + // Modem is searching for a network provider to register + CELLULAR_STATUS_FLAG_SEARCHING CELLULAR_STATUS_FLAG = 8 + // Modem is registered with a network provider, and data connections and messaging may be available for use + CELLULAR_STATUS_FLAG_REGISTERED CELLULAR_STATUS_FLAG = 9 + // Modem is disconnecting and deactivating the last active packet data bearer. This state will not be entered if more than one packet data bearer is active and one of the active bearers is deactivated + CELLULAR_STATUS_FLAG_DISCONNECTING CELLULAR_STATUS_FLAG = 10 + // Modem is activating and connecting the first packet data bearer. Subsequent bearer activations when another bearer is already active do not cause this state to be entered + CELLULAR_STATUS_FLAG_CONNECTING CELLULAR_STATUS_FLAG = 11 + // One or more packet data bearers is active and connected + CELLULAR_STATUS_FLAG_CONNECTED CELLULAR_STATUS_FLAG = 12 +) + +var labels_CELLULAR_STATUS_FLAG = map[CELLULAR_STATUS_FLAG]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e CELLULAR_STATUS_FLAG) MarshalText() ([]byte, error) { + if l, ok := labels_CELLULAR_STATUS_FLAG[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_CELLULAR_STATUS_FLAG = map[string]CELLULAR_STATUS_FLAG{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *CELLULAR_STATUS_FLAG) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_CELLULAR_STATUS_FLAG[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e CELLULAR_STATUS_FLAG) String() string { + if l, ok := labels_CELLULAR_STATUS_FLAG[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/avssuas/enum_comp_metadata_type.go b/pkg/dialects/avssuas/enum_comp_metadata_type.go new file mode 100644 index 000000000..e48aa1272 --- /dev/null +++ b/pkg/dialects/avssuas/enum_comp_metadata_type.go @@ -0,0 +1,54 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package avssuas + +import ( + "errors" +) + +// Supported component metadata types. These are used in the "general" metadata file returned by COMPONENT_INFORMATION to provide information about supported metadata types. The types are not used directly in MAVLink messages. +type COMP_METADATA_TYPE int + +const ( + // General information about the component. General metadata includes information about other COMP_METADATA_TYPEs supported by the component. This type must be supported and must be downloadable from vehicle. + COMP_METADATA_TYPE_GENERAL COMP_METADATA_TYPE = 0 + // Parameter meta data. + COMP_METADATA_TYPE_PARAMETER COMP_METADATA_TYPE = 1 + // Meta data that specifies which commands and command parameters the vehicle supports. (WIP) + COMP_METADATA_TYPE_COMMANDS COMP_METADATA_TYPE = 2 + // Meta data that specifies external non-MAVLink peripherals. + COMP_METADATA_TYPE_PERIPHERALS COMP_METADATA_TYPE = 3 + // Meta data for the events interface. + COMP_METADATA_TYPE_EVENTS COMP_METADATA_TYPE = 4 + // Meta data for actuator configuration (motors, servos and vehicle geometry) and testing. + COMP_METADATA_TYPE_ACTUATORS COMP_METADATA_TYPE = 5 +) + +var labels_COMP_METADATA_TYPE = map[COMP_METADATA_TYPE]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e COMP_METADATA_TYPE) MarshalText() ([]byte, error) { + if l, ok := labels_COMP_METADATA_TYPE[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_COMP_METADATA_TYPE = map[string]COMP_METADATA_TYPE{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *COMP_METADATA_TYPE) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_COMP_METADATA_TYPE[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e COMP_METADATA_TYPE) String() string { + if l, ok := labels_COMP_METADATA_TYPE[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/avssuas/enum_esc_connection_type.go b/pkg/dialects/avssuas/enum_esc_connection_type.go new file mode 100644 index 000000000..2decd89de --- /dev/null +++ b/pkg/dialects/avssuas/enum_esc_connection_type.go @@ -0,0 +1,54 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package avssuas + +import ( + "errors" +) + +// Indicates the ESC connection type. +type ESC_CONNECTION_TYPE int + +const ( + // Traditional PPM ESC. + ESC_CONNECTION_TYPE_PPM ESC_CONNECTION_TYPE = 0 + // Serial Bus connected ESC. + ESC_CONNECTION_TYPE_SERIAL ESC_CONNECTION_TYPE = 1 + // One Shot PPM ESC. + ESC_CONNECTION_TYPE_ONESHOT ESC_CONNECTION_TYPE = 2 + // I2C ESC. + ESC_CONNECTION_TYPE_I2C ESC_CONNECTION_TYPE = 3 + // CAN-Bus ESC. + ESC_CONNECTION_TYPE_CAN ESC_CONNECTION_TYPE = 4 + // DShot ESC. + ESC_CONNECTION_TYPE_DSHOT ESC_CONNECTION_TYPE = 5 +) + +var labels_ESC_CONNECTION_TYPE = map[ESC_CONNECTION_TYPE]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e ESC_CONNECTION_TYPE) MarshalText() ([]byte, error) { + if l, ok := labels_ESC_CONNECTION_TYPE[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_ESC_CONNECTION_TYPE = map[string]ESC_CONNECTION_TYPE{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *ESC_CONNECTION_TYPE) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_ESC_CONNECTION_TYPE[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e ESC_CONNECTION_TYPE) String() string { + if l, ok := labels_ESC_CONNECTION_TYPE[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/avssuas/enum_esc_failure_flags.go b/pkg/dialects/avssuas/enum_esc_failure_flags.go new file mode 100644 index 000000000..10a4ae6f7 --- /dev/null +++ b/pkg/dialects/avssuas/enum_esc_failure_flags.go @@ -0,0 +1,58 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package avssuas + +import ( + "errors" +) + +// Flags to report ESC failures. +type ESC_FAILURE_FLAGS int + +const ( + // No ESC failure. + ESC_FAILURE_NONE ESC_FAILURE_FLAGS = 0 + // Over current failure. + ESC_FAILURE_OVER_CURRENT ESC_FAILURE_FLAGS = 1 + // Over voltage failure. + ESC_FAILURE_OVER_VOLTAGE ESC_FAILURE_FLAGS = 2 + // Over temperature failure. + ESC_FAILURE_OVER_TEMPERATURE ESC_FAILURE_FLAGS = 4 + // Over RPM failure. + ESC_FAILURE_OVER_RPM ESC_FAILURE_FLAGS = 8 + // Inconsistent command failure i.e. out of bounds. + ESC_FAILURE_INCONSISTENT_CMD ESC_FAILURE_FLAGS = 16 + // Motor stuck failure. + ESC_FAILURE_MOTOR_STUCK ESC_FAILURE_FLAGS = 32 + // Generic ESC failure. + ESC_FAILURE_GENERIC ESC_FAILURE_FLAGS = 64 +) + +var labels_ESC_FAILURE_FLAGS = map[ESC_FAILURE_FLAGS]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e ESC_FAILURE_FLAGS) MarshalText() ([]byte, error) { + if l, ok := labels_ESC_FAILURE_FLAGS[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_ESC_FAILURE_FLAGS = map[string]ESC_FAILURE_FLAGS{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *ESC_FAILURE_FLAGS) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_ESC_FAILURE_FLAGS[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e ESC_FAILURE_FLAGS) String() string { + if l, ok := labels_ESC_FAILURE_FLAGS[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/avssuas/enum_estimator_status_flags.go b/pkg/dialects/avssuas/enum_estimator_status_flags.go new file mode 100644 index 000000000..a391232d8 --- /dev/null +++ b/pkg/dialects/avssuas/enum_estimator_status_flags.go @@ -0,0 +1,66 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package avssuas + +import ( + "errors" +) + +// Flags in ESTIMATOR_STATUS message +type ESTIMATOR_STATUS_FLAGS int + +const ( + // True if the attitude estimate is good + ESTIMATOR_ATTITUDE ESTIMATOR_STATUS_FLAGS = 1 + // True if the horizontal velocity estimate is good + ESTIMATOR_VELOCITY_HORIZ ESTIMATOR_STATUS_FLAGS = 2 + // True if the vertical velocity estimate is good + ESTIMATOR_VELOCITY_VERT ESTIMATOR_STATUS_FLAGS = 4 + // True if the horizontal position (relative) estimate is good + ESTIMATOR_POS_HORIZ_REL ESTIMATOR_STATUS_FLAGS = 8 + // True if the horizontal position (absolute) estimate is good + ESTIMATOR_POS_HORIZ_ABS ESTIMATOR_STATUS_FLAGS = 16 + // True if the vertical position (absolute) estimate is good + ESTIMATOR_POS_VERT_ABS ESTIMATOR_STATUS_FLAGS = 32 + // True if the vertical position (above ground) estimate is good + ESTIMATOR_POS_VERT_AGL ESTIMATOR_STATUS_FLAGS = 64 + // True if the EKF is in a constant position mode and is not using external measurements (eg GPS or optical flow) + ESTIMATOR_CONST_POS_MODE ESTIMATOR_STATUS_FLAGS = 128 + // True if the EKF has sufficient data to enter a mode that will provide a (relative) position estimate + ESTIMATOR_PRED_POS_HORIZ_REL ESTIMATOR_STATUS_FLAGS = 256 + // True if the EKF has sufficient data to enter a mode that will provide a (absolute) position estimate + ESTIMATOR_PRED_POS_HORIZ_ABS ESTIMATOR_STATUS_FLAGS = 512 + // True if the EKF has detected a GPS glitch + ESTIMATOR_GPS_GLITCH ESTIMATOR_STATUS_FLAGS = 1024 + // True if the EKF has detected bad accelerometer data + ESTIMATOR_ACCEL_ERROR ESTIMATOR_STATUS_FLAGS = 2048 +) + +var labels_ESTIMATOR_STATUS_FLAGS = map[ESTIMATOR_STATUS_FLAGS]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e ESTIMATOR_STATUS_FLAGS) MarshalText() ([]byte, error) { + if l, ok := labels_ESTIMATOR_STATUS_FLAGS[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_ESTIMATOR_STATUS_FLAGS = map[string]ESTIMATOR_STATUS_FLAGS{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *ESTIMATOR_STATUS_FLAGS) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_ESTIMATOR_STATUS_FLAGS[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e ESTIMATOR_STATUS_FLAGS) String() string { + if l, ok := labels_ESTIMATOR_STATUS_FLAGS[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/avssuas/enum_failure_type.go b/pkg/dialects/avssuas/enum_failure_type.go new file mode 100644 index 000000000..6d40d3057 --- /dev/null +++ b/pkg/dialects/avssuas/enum_failure_type.go @@ -0,0 +1,58 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package avssuas + +import ( + "errors" +) + +// List of possible failure type to inject. +type FAILURE_TYPE int + +const ( + // No failure injected, used to reset a previous failure. + FAILURE_TYPE_OK FAILURE_TYPE = 0 + // Sets unit off, so completely non-responsive. + FAILURE_TYPE_OFF FAILURE_TYPE = 1 + // Unit is stuck e.g. keeps reporting the same value. + FAILURE_TYPE_STUCK FAILURE_TYPE = 2 + // Unit is reporting complete garbage. + FAILURE_TYPE_GARBAGE FAILURE_TYPE = 3 + // Unit is consistently wrong. + FAILURE_TYPE_WRONG FAILURE_TYPE = 4 + // Unit is slow, so e.g. reporting at slower than expected rate. + FAILURE_TYPE_SLOW FAILURE_TYPE = 5 + // Data of unit is delayed in time. + FAILURE_TYPE_DELAYED FAILURE_TYPE = 6 + // Unit is sometimes working, sometimes not. + FAILURE_TYPE_INTERMITTENT FAILURE_TYPE = 7 +) + +var labels_FAILURE_TYPE = map[FAILURE_TYPE]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e FAILURE_TYPE) MarshalText() ([]byte, error) { + if l, ok := labels_FAILURE_TYPE[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_FAILURE_TYPE = map[string]FAILURE_TYPE{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *FAILURE_TYPE) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_FAILURE_TYPE[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e FAILURE_TYPE) String() string { + if l, ok := labels_FAILURE_TYPE[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/avssuas/enum_failure_unit.go b/pkg/dialects/avssuas/enum_failure_unit.go new file mode 100644 index 000000000..9a9378ef3 --- /dev/null +++ b/pkg/dialects/avssuas/enum_failure_unit.go @@ -0,0 +1,57 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package avssuas + +import ( + "errors" +) + +// List of possible units where failures can be injected. +type FAILURE_UNIT int + +const ( + FAILURE_UNIT_SENSOR_GYRO FAILURE_UNIT = 0 + FAILURE_UNIT_SENSOR_ACCEL FAILURE_UNIT = 1 + FAILURE_UNIT_SENSOR_MAG FAILURE_UNIT = 2 + FAILURE_UNIT_SENSOR_BARO FAILURE_UNIT = 3 + FAILURE_UNIT_SENSOR_GPS FAILURE_UNIT = 4 + FAILURE_UNIT_SENSOR_OPTICAL_FLOW FAILURE_UNIT = 5 + FAILURE_UNIT_SENSOR_VIO FAILURE_UNIT = 6 + FAILURE_UNIT_SENSOR_DISTANCE_SENSOR FAILURE_UNIT = 7 + FAILURE_UNIT_SENSOR_AIRSPEED FAILURE_UNIT = 8 + FAILURE_UNIT_SYSTEM_BATTERY FAILURE_UNIT = 100 + FAILURE_UNIT_SYSTEM_MOTOR FAILURE_UNIT = 101 + FAILURE_UNIT_SYSTEM_SERVO FAILURE_UNIT = 102 + FAILURE_UNIT_SYSTEM_AVOIDANCE FAILURE_UNIT = 103 + FAILURE_UNIT_SYSTEM_RC_SIGNAL FAILURE_UNIT = 104 + FAILURE_UNIT_SYSTEM_MAVLINK_SIGNAL FAILURE_UNIT = 105 +) + +var labels_FAILURE_UNIT = map[FAILURE_UNIT]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e FAILURE_UNIT) MarshalText() ([]byte, error) { + if l, ok := labels_FAILURE_UNIT[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_FAILURE_UNIT = map[string]FAILURE_UNIT{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *FAILURE_UNIT) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_FAILURE_UNIT[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e FAILURE_UNIT) String() string { + if l, ok := labels_FAILURE_UNIT[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/avssuas/enum_fence_action.go b/pkg/dialects/avssuas/enum_fence_action.go new file mode 100644 index 000000000..6f2dc57b2 --- /dev/null +++ b/pkg/dialects/avssuas/enum_fence_action.go @@ -0,0 +1,58 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package avssuas + +import ( + "errors" +) + +// Actions following geofence breach. +type FENCE_ACTION int + +const ( + // Disable fenced mode. If used in a plan this would mean the next fence is disabled. + FENCE_ACTION_NONE FENCE_ACTION = 0 + // Fly to geofence MAV_CMD_NAV_FENCE_RETURN_POINT in GUIDED mode. Note: This action is only supported by ArduPlane, and may not be supported in all versions. + FENCE_ACTION_GUIDED FENCE_ACTION = 1 + // Report fence breach, but don't take action + FENCE_ACTION_REPORT FENCE_ACTION = 2 + // Fly to geofence MAV_CMD_NAV_FENCE_RETURN_POINT with manual throttle control in GUIDED mode. Note: This action is only supported by ArduPlane, and may not be supported in all versions. + FENCE_ACTION_GUIDED_THR_PASS FENCE_ACTION = 3 + // Return/RTL mode. + FENCE_ACTION_RTL FENCE_ACTION = 4 + // Hold at current location. + FENCE_ACTION_HOLD FENCE_ACTION = 5 + // Termination failsafe. Motors are shut down (some flight stacks may trigger other failsafe actions). + FENCE_ACTION_TERMINATE FENCE_ACTION = 6 + // Land at current location. + FENCE_ACTION_LAND FENCE_ACTION = 7 +) + +var labels_FENCE_ACTION = map[FENCE_ACTION]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e FENCE_ACTION) MarshalText() ([]byte, error) { + if l, ok := labels_FENCE_ACTION[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_FENCE_ACTION = map[string]FENCE_ACTION{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *FENCE_ACTION) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_FENCE_ACTION[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e FENCE_ACTION) String() string { + if l, ok := labels_FENCE_ACTION[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/avssuas/enum_fence_breach.go b/pkg/dialects/avssuas/enum_fence_breach.go new file mode 100644 index 000000000..c8fad2521 --- /dev/null +++ b/pkg/dialects/avssuas/enum_fence_breach.go @@ -0,0 +1,49 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package avssuas + +import ( + "errors" +) + +type FENCE_BREACH int + +const ( + // No last fence breach + FENCE_BREACH_NONE FENCE_BREACH = 0 + // Breached minimum altitude + FENCE_BREACH_MINALT FENCE_BREACH = 1 + // Breached maximum altitude + FENCE_BREACH_MAXALT FENCE_BREACH = 2 + // Breached fence boundary + FENCE_BREACH_BOUNDARY FENCE_BREACH = 3 +) + +var labels_FENCE_BREACH = map[FENCE_BREACH]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e FENCE_BREACH) MarshalText() ([]byte, error) { + if l, ok := labels_FENCE_BREACH[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_FENCE_BREACH = map[string]FENCE_BREACH{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *FENCE_BREACH) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_FENCE_BREACH[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e FENCE_BREACH) String() string { + if l, ok := labels_FENCE_BREACH[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/avssuas/enum_fence_mitigate.go b/pkg/dialects/avssuas/enum_fence_mitigate.go new file mode 100644 index 000000000..330ff7437 --- /dev/null +++ b/pkg/dialects/avssuas/enum_fence_mitigate.go @@ -0,0 +1,48 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package avssuas + +import ( + "errors" +) + +// Actions being taken to mitigate/prevent fence breach +type FENCE_MITIGATE int + +const ( + // Unknown + FENCE_MITIGATE_UNKNOWN FENCE_MITIGATE = 0 + // No actions being taken + FENCE_MITIGATE_NONE FENCE_MITIGATE = 1 + // Velocity limiting active to prevent breach + FENCE_MITIGATE_VEL_LIMIT FENCE_MITIGATE = 2 +) + +var labels_FENCE_MITIGATE = map[FENCE_MITIGATE]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e FENCE_MITIGATE) MarshalText() ([]byte, error) { + if l, ok := labels_FENCE_MITIGATE[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_FENCE_MITIGATE = map[string]FENCE_MITIGATE{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *FENCE_MITIGATE) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_FENCE_MITIGATE[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e FENCE_MITIGATE) String() string { + if l, ok := labels_FENCE_MITIGATE[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/avssuas/enum_firmware_version_type.go b/pkg/dialects/avssuas/enum_firmware_version_type.go new file mode 100644 index 000000000..390cd8f70 --- /dev/null +++ b/pkg/dialects/avssuas/enum_firmware_version_type.go @@ -0,0 +1,52 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package avssuas + +import ( + "errors" +) + +// These values define the type of firmware release. These values indicate the first version or release of this type. For example the first alpha release would be 64, the second would be 65. +type FIRMWARE_VERSION_TYPE int + +const ( + // development release + FIRMWARE_VERSION_TYPE_DEV FIRMWARE_VERSION_TYPE = 0 + // alpha release + FIRMWARE_VERSION_TYPE_ALPHA FIRMWARE_VERSION_TYPE = 64 + // beta release + FIRMWARE_VERSION_TYPE_BETA FIRMWARE_VERSION_TYPE = 128 + // release candidate + FIRMWARE_VERSION_TYPE_RC FIRMWARE_VERSION_TYPE = 192 + // official stable release + FIRMWARE_VERSION_TYPE_OFFICIAL FIRMWARE_VERSION_TYPE = 255 +) + +var labels_FIRMWARE_VERSION_TYPE = map[FIRMWARE_VERSION_TYPE]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e FIRMWARE_VERSION_TYPE) MarshalText() ([]byte, error) { + if l, ok := labels_FIRMWARE_VERSION_TYPE[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_FIRMWARE_VERSION_TYPE = map[string]FIRMWARE_VERSION_TYPE{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *FIRMWARE_VERSION_TYPE) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_FIRMWARE_VERSION_TYPE[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e FIRMWARE_VERSION_TYPE) String() string { + if l, ok := labels_FIRMWARE_VERSION_TYPE[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/avssuas/enum_gimbal_device_cap_flags.go b/pkg/dialects/avssuas/enum_gimbal_device_cap_flags.go new file mode 100644 index 000000000..1e85e8df2 --- /dev/null +++ b/pkg/dialects/avssuas/enum_gimbal_device_cap_flags.go @@ -0,0 +1,66 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package avssuas + +import ( + "errors" +) + +// Gimbal device (low level) capability flags (bitmap) +type GIMBAL_DEVICE_CAP_FLAGS int + +const ( + // Gimbal device supports a retracted position + GIMBAL_DEVICE_CAP_FLAGS_HAS_RETRACT GIMBAL_DEVICE_CAP_FLAGS = 1 + // Gimbal device supports a horizontal, forward looking position, stabilized + GIMBAL_DEVICE_CAP_FLAGS_HAS_NEUTRAL GIMBAL_DEVICE_CAP_FLAGS = 2 + // Gimbal device supports rotating around roll axis. + GIMBAL_DEVICE_CAP_FLAGS_HAS_ROLL_AXIS GIMBAL_DEVICE_CAP_FLAGS = 4 + // Gimbal device supports to follow a roll angle relative to the vehicle + GIMBAL_DEVICE_CAP_FLAGS_HAS_ROLL_FOLLOW GIMBAL_DEVICE_CAP_FLAGS = 8 + // Gimbal device supports locking to an roll angle (generally that's the default with roll stabilized) + GIMBAL_DEVICE_CAP_FLAGS_HAS_ROLL_LOCK GIMBAL_DEVICE_CAP_FLAGS = 16 + // Gimbal device supports rotating around pitch axis. + GIMBAL_DEVICE_CAP_FLAGS_HAS_PITCH_AXIS GIMBAL_DEVICE_CAP_FLAGS = 32 + // Gimbal device supports to follow a pitch angle relative to the vehicle + GIMBAL_DEVICE_CAP_FLAGS_HAS_PITCH_FOLLOW GIMBAL_DEVICE_CAP_FLAGS = 64 + // Gimbal device supports locking to an pitch angle (generally that's the default with pitch stabilized) + GIMBAL_DEVICE_CAP_FLAGS_HAS_PITCH_LOCK GIMBAL_DEVICE_CAP_FLAGS = 128 + // Gimbal device supports rotating around yaw axis. + GIMBAL_DEVICE_CAP_FLAGS_HAS_YAW_AXIS GIMBAL_DEVICE_CAP_FLAGS = 256 + // Gimbal device supports to follow a yaw angle relative to the vehicle (generally that's the default) + GIMBAL_DEVICE_CAP_FLAGS_HAS_YAW_FOLLOW GIMBAL_DEVICE_CAP_FLAGS = 512 + // Gimbal device supports locking to an absolute heading (often this is an option available) + GIMBAL_DEVICE_CAP_FLAGS_HAS_YAW_LOCK GIMBAL_DEVICE_CAP_FLAGS = 1024 + // Gimbal device supports yawing/panning infinetely (e.g. using slip disk). + GIMBAL_DEVICE_CAP_FLAGS_SUPPORTS_INFINITE_YAW GIMBAL_DEVICE_CAP_FLAGS = 2048 +) + +var labels_GIMBAL_DEVICE_CAP_FLAGS = map[GIMBAL_DEVICE_CAP_FLAGS]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e GIMBAL_DEVICE_CAP_FLAGS) MarshalText() ([]byte, error) { + if l, ok := labels_GIMBAL_DEVICE_CAP_FLAGS[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_GIMBAL_DEVICE_CAP_FLAGS = map[string]GIMBAL_DEVICE_CAP_FLAGS{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *GIMBAL_DEVICE_CAP_FLAGS) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_GIMBAL_DEVICE_CAP_FLAGS[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e GIMBAL_DEVICE_CAP_FLAGS) String() string { + if l, ok := labels_GIMBAL_DEVICE_CAP_FLAGS[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/avssuas/enum_gimbal_device_error_flags.go b/pkg/dialects/avssuas/enum_gimbal_device_error_flags.go new file mode 100644 index 000000000..bbe46fd29 --- /dev/null +++ b/pkg/dialects/avssuas/enum_gimbal_device_error_flags.go @@ -0,0 +1,60 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package avssuas + +import ( + "errors" +) + +// Gimbal device (low level) error flags (bitmap, 0 means no error) +type GIMBAL_DEVICE_ERROR_FLAGS int + +const ( + // Gimbal device is limited by hardware roll limit. + GIMBAL_DEVICE_ERROR_FLAGS_AT_ROLL_LIMIT GIMBAL_DEVICE_ERROR_FLAGS = 1 + // Gimbal device is limited by hardware pitch limit. + GIMBAL_DEVICE_ERROR_FLAGS_AT_PITCH_LIMIT GIMBAL_DEVICE_ERROR_FLAGS = 2 + // Gimbal device is limited by hardware yaw limit. + GIMBAL_DEVICE_ERROR_FLAGS_AT_YAW_LIMIT GIMBAL_DEVICE_ERROR_FLAGS = 4 + // There is an error with the gimbal encoders. + GIMBAL_DEVICE_ERROR_FLAGS_ENCODER_ERROR GIMBAL_DEVICE_ERROR_FLAGS = 8 + // There is an error with the gimbal power source. + GIMBAL_DEVICE_ERROR_FLAGS_POWER_ERROR GIMBAL_DEVICE_ERROR_FLAGS = 16 + // There is an error with the gimbal motor's. + GIMBAL_DEVICE_ERROR_FLAGS_MOTOR_ERROR GIMBAL_DEVICE_ERROR_FLAGS = 32 + // There is an error with the gimbal's software. + GIMBAL_DEVICE_ERROR_FLAGS_SOFTWARE_ERROR GIMBAL_DEVICE_ERROR_FLAGS = 64 + // There is an error with the gimbal's communication. + GIMBAL_DEVICE_ERROR_FLAGS_COMMS_ERROR GIMBAL_DEVICE_ERROR_FLAGS = 128 + // Gimbal is currently calibrating. + GIMBAL_DEVICE_ERROR_FLAGS_CALIBRATION_RUNNING GIMBAL_DEVICE_ERROR_FLAGS = 256 +) + +var labels_GIMBAL_DEVICE_ERROR_FLAGS = map[GIMBAL_DEVICE_ERROR_FLAGS]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e GIMBAL_DEVICE_ERROR_FLAGS) MarshalText() ([]byte, error) { + if l, ok := labels_GIMBAL_DEVICE_ERROR_FLAGS[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_GIMBAL_DEVICE_ERROR_FLAGS = map[string]GIMBAL_DEVICE_ERROR_FLAGS{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *GIMBAL_DEVICE_ERROR_FLAGS) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_GIMBAL_DEVICE_ERROR_FLAGS[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e GIMBAL_DEVICE_ERROR_FLAGS) String() string { + if l, ok := labels_GIMBAL_DEVICE_ERROR_FLAGS[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/avssuas/enum_gimbal_device_flags.go b/pkg/dialects/avssuas/enum_gimbal_device_flags.go new file mode 100644 index 000000000..0f01e935a --- /dev/null +++ b/pkg/dialects/avssuas/enum_gimbal_device_flags.go @@ -0,0 +1,52 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package avssuas + +import ( + "errors" +) + +// Flags for gimbal device (lower level) operation. +type GIMBAL_DEVICE_FLAGS int + +const ( + // Set to retracted safe position (no stabilization), takes presedence over all other flags. + GIMBAL_DEVICE_FLAGS_RETRACT GIMBAL_DEVICE_FLAGS = 1 + // Set to neutral/default position, taking precedence over all other flags except RETRACT. Neutral is commonly forward-facing and horizontal (pitch=yaw=0) but may be any orientation. + GIMBAL_DEVICE_FLAGS_NEUTRAL GIMBAL_DEVICE_FLAGS = 2 + // Lock roll angle to absolute angle relative to horizon (not relative to drone). This is generally the default with a stabilizing gimbal. + GIMBAL_DEVICE_FLAGS_ROLL_LOCK GIMBAL_DEVICE_FLAGS = 4 + // Lock pitch angle to absolute angle relative to horizon (not relative to drone). This is generally the default. + GIMBAL_DEVICE_FLAGS_PITCH_LOCK GIMBAL_DEVICE_FLAGS = 8 + // Lock yaw angle to absolute angle relative to North (not relative to drone). If this flag is set, the quaternion is in the Earth frame with the x-axis pointing North (yaw absolute). If this flag is not set, the quaternion frame is in the Earth frame rotated so that the x-axis is pointing forward (yaw relative to vehicle). + GIMBAL_DEVICE_FLAGS_YAW_LOCK GIMBAL_DEVICE_FLAGS = 16 +) + +var labels_GIMBAL_DEVICE_FLAGS = map[GIMBAL_DEVICE_FLAGS]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e GIMBAL_DEVICE_FLAGS) MarshalText() ([]byte, error) { + if l, ok := labels_GIMBAL_DEVICE_FLAGS[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_GIMBAL_DEVICE_FLAGS = map[string]GIMBAL_DEVICE_FLAGS{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *GIMBAL_DEVICE_FLAGS) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_GIMBAL_DEVICE_FLAGS[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e GIMBAL_DEVICE_FLAGS) String() string { + if l, ok := labels_GIMBAL_DEVICE_FLAGS[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/avssuas/enum_gimbal_manager_cap_flags.go b/pkg/dialects/avssuas/enum_gimbal_manager_cap_flags.go new file mode 100644 index 000000000..fad2d109b --- /dev/null +++ b/pkg/dialects/avssuas/enum_gimbal_manager_cap_flags.go @@ -0,0 +1,70 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package avssuas + +import ( + "errors" +) + +// Gimbal manager high level capability flags (bitmap). The first 16 bits are identical to the GIMBAL_DEVICE_CAP_FLAGS. However, the gimbal manager does not need to copy the flags from the gimbal but can also enhance the capabilities and thus add flags. +type GIMBAL_MANAGER_CAP_FLAGS int + +const ( + // Based on GIMBAL_DEVICE_CAP_FLAGS_HAS_RETRACT. + GIMBAL_MANAGER_CAP_FLAGS_HAS_RETRACT GIMBAL_MANAGER_CAP_FLAGS = 1 + // Based on GIMBAL_DEVICE_CAP_FLAGS_HAS_NEUTRAL. + GIMBAL_MANAGER_CAP_FLAGS_HAS_NEUTRAL GIMBAL_MANAGER_CAP_FLAGS = 2 + // Based on GIMBAL_DEVICE_CAP_FLAGS_HAS_ROLL_AXIS. + GIMBAL_MANAGER_CAP_FLAGS_HAS_ROLL_AXIS GIMBAL_MANAGER_CAP_FLAGS = 4 + // Based on GIMBAL_DEVICE_CAP_FLAGS_HAS_ROLL_FOLLOW. + GIMBAL_MANAGER_CAP_FLAGS_HAS_ROLL_FOLLOW GIMBAL_MANAGER_CAP_FLAGS = 8 + // Based on GIMBAL_DEVICE_CAP_FLAGS_HAS_ROLL_LOCK. + GIMBAL_MANAGER_CAP_FLAGS_HAS_ROLL_LOCK GIMBAL_MANAGER_CAP_FLAGS = 16 + // Based on GIMBAL_DEVICE_CAP_FLAGS_HAS_PITCH_AXIS. + GIMBAL_MANAGER_CAP_FLAGS_HAS_PITCH_AXIS GIMBAL_MANAGER_CAP_FLAGS = 32 + // Based on GIMBAL_DEVICE_CAP_FLAGS_HAS_PITCH_FOLLOW. + GIMBAL_MANAGER_CAP_FLAGS_HAS_PITCH_FOLLOW GIMBAL_MANAGER_CAP_FLAGS = 64 + // Based on GIMBAL_DEVICE_CAP_FLAGS_HAS_PITCH_LOCK. + GIMBAL_MANAGER_CAP_FLAGS_HAS_PITCH_LOCK GIMBAL_MANAGER_CAP_FLAGS = 128 + // Based on GIMBAL_DEVICE_CAP_FLAGS_HAS_YAW_AXIS. + GIMBAL_MANAGER_CAP_FLAGS_HAS_YAW_AXIS GIMBAL_MANAGER_CAP_FLAGS = 256 + // Based on GIMBAL_DEVICE_CAP_FLAGS_HAS_YAW_FOLLOW. + GIMBAL_MANAGER_CAP_FLAGS_HAS_YAW_FOLLOW GIMBAL_MANAGER_CAP_FLAGS = 512 + // Based on GIMBAL_DEVICE_CAP_FLAGS_HAS_YAW_LOCK. + GIMBAL_MANAGER_CAP_FLAGS_HAS_YAW_LOCK GIMBAL_MANAGER_CAP_FLAGS = 1024 + // Based on GIMBAL_DEVICE_CAP_FLAGS_SUPPORTS_INFINITE_YAW. + GIMBAL_MANAGER_CAP_FLAGS_SUPPORTS_INFINITE_YAW GIMBAL_MANAGER_CAP_FLAGS = 2048 + // Gimbal manager supports to point to a local position. + GIMBAL_MANAGER_CAP_FLAGS_CAN_POINT_LOCATION_LOCAL GIMBAL_MANAGER_CAP_FLAGS = 65536 + // Gimbal manager supports to point to a global latitude, longitude, altitude position. + GIMBAL_MANAGER_CAP_FLAGS_CAN_POINT_LOCATION_GLOBAL GIMBAL_MANAGER_CAP_FLAGS = 131072 +) + +var labels_GIMBAL_MANAGER_CAP_FLAGS = map[GIMBAL_MANAGER_CAP_FLAGS]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e GIMBAL_MANAGER_CAP_FLAGS) MarshalText() ([]byte, error) { + if l, ok := labels_GIMBAL_MANAGER_CAP_FLAGS[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_GIMBAL_MANAGER_CAP_FLAGS = map[string]GIMBAL_MANAGER_CAP_FLAGS{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *GIMBAL_MANAGER_CAP_FLAGS) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_GIMBAL_MANAGER_CAP_FLAGS[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e GIMBAL_MANAGER_CAP_FLAGS) String() string { + if l, ok := labels_GIMBAL_MANAGER_CAP_FLAGS[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/avssuas/enum_gimbal_manager_flags.go b/pkg/dialects/avssuas/enum_gimbal_manager_flags.go new file mode 100644 index 000000000..001119b5f --- /dev/null +++ b/pkg/dialects/avssuas/enum_gimbal_manager_flags.go @@ -0,0 +1,52 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package avssuas + +import ( + "errors" +) + +// Flags for high level gimbal manager operation The first 16 bits are identical to the GIMBAL_DEVICE_FLAGS. +type GIMBAL_MANAGER_FLAGS int + +const ( + // Based on GIMBAL_DEVICE_FLAGS_RETRACT + GIMBAL_MANAGER_FLAGS_RETRACT GIMBAL_MANAGER_FLAGS = 1 + // Based on GIMBAL_DEVICE_FLAGS_NEUTRAL + GIMBAL_MANAGER_FLAGS_NEUTRAL GIMBAL_MANAGER_FLAGS = 2 + // Based on GIMBAL_DEVICE_FLAGS_ROLL_LOCK + GIMBAL_MANAGER_FLAGS_ROLL_LOCK GIMBAL_MANAGER_FLAGS = 4 + // Based on GIMBAL_DEVICE_FLAGS_PITCH_LOCK + GIMBAL_MANAGER_FLAGS_PITCH_LOCK GIMBAL_MANAGER_FLAGS = 8 + // Based on GIMBAL_DEVICE_FLAGS_YAW_LOCK + GIMBAL_MANAGER_FLAGS_YAW_LOCK GIMBAL_MANAGER_FLAGS = 16 +) + +var labels_GIMBAL_MANAGER_FLAGS = map[GIMBAL_MANAGER_FLAGS]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e GIMBAL_MANAGER_FLAGS) MarshalText() ([]byte, error) { + if l, ok := labels_GIMBAL_MANAGER_FLAGS[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_GIMBAL_MANAGER_FLAGS = map[string]GIMBAL_MANAGER_FLAGS{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *GIMBAL_MANAGER_FLAGS) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_GIMBAL_MANAGER_FLAGS[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e GIMBAL_MANAGER_FLAGS) String() string { + if l, ok := labels_GIMBAL_MANAGER_FLAGS[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/avssuas/enum_gps_fix_type.go b/pkg/dialects/avssuas/enum_gps_fix_type.go new file mode 100644 index 000000000..452797b3b --- /dev/null +++ b/pkg/dialects/avssuas/enum_gps_fix_type.go @@ -0,0 +1,60 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package avssuas + +import ( + "errors" +) + +// Type of GPS fix +type GPS_FIX_TYPE int + +const ( + // No GPS connected + GPS_FIX_TYPE_NO_GPS GPS_FIX_TYPE = 0 + // No position information, GPS is connected + GPS_FIX_TYPE_NO_FIX GPS_FIX_TYPE = 1 + // 2D position + GPS_FIX_TYPE_2D_FIX GPS_FIX_TYPE = 2 + // 3D position + GPS_FIX_TYPE_3D_FIX GPS_FIX_TYPE = 3 + // DGPS/SBAS aided 3D position + GPS_FIX_TYPE_DGPS GPS_FIX_TYPE = 4 + // RTK float, 3D position + GPS_FIX_TYPE_RTK_FLOAT GPS_FIX_TYPE = 5 + // RTK Fixed, 3D position + GPS_FIX_TYPE_RTK_FIXED GPS_FIX_TYPE = 6 + // Static fixed, typically used for base stations + GPS_FIX_TYPE_STATIC GPS_FIX_TYPE = 7 + // PPP, 3D position. + GPS_FIX_TYPE_PPP GPS_FIX_TYPE = 8 +) + +var labels_GPS_FIX_TYPE = map[GPS_FIX_TYPE]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e GPS_FIX_TYPE) MarshalText() ([]byte, error) { + if l, ok := labels_GPS_FIX_TYPE[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_GPS_FIX_TYPE = map[string]GPS_FIX_TYPE{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *GPS_FIX_TYPE) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_GPS_FIX_TYPE[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e GPS_FIX_TYPE) String() string { + if l, ok := labels_GPS_FIX_TYPE[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/avssuas/enum_gps_input_ignore_flags.go b/pkg/dialects/avssuas/enum_gps_input_ignore_flags.go new file mode 100644 index 000000000..8a2415748 --- /dev/null +++ b/pkg/dialects/avssuas/enum_gps_input_ignore_flags.go @@ -0,0 +1,57 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package avssuas + +import ( + "errors" +) + +type GPS_INPUT_IGNORE_FLAGS int + +const ( + // ignore altitude field + GPS_INPUT_IGNORE_FLAG_ALT GPS_INPUT_IGNORE_FLAGS = 1 + // ignore hdop field + GPS_INPUT_IGNORE_FLAG_HDOP GPS_INPUT_IGNORE_FLAGS = 2 + // ignore vdop field + GPS_INPUT_IGNORE_FLAG_VDOP GPS_INPUT_IGNORE_FLAGS = 4 + // ignore horizontal velocity field (vn and ve) + GPS_INPUT_IGNORE_FLAG_VEL_HORIZ GPS_INPUT_IGNORE_FLAGS = 8 + // ignore vertical velocity field (vd) + GPS_INPUT_IGNORE_FLAG_VEL_VERT GPS_INPUT_IGNORE_FLAGS = 16 + // ignore speed accuracy field + GPS_INPUT_IGNORE_FLAG_SPEED_ACCURACY GPS_INPUT_IGNORE_FLAGS = 32 + // ignore horizontal accuracy field + GPS_INPUT_IGNORE_FLAG_HORIZONTAL_ACCURACY GPS_INPUT_IGNORE_FLAGS = 64 + // ignore vertical accuracy field + GPS_INPUT_IGNORE_FLAG_VERTICAL_ACCURACY GPS_INPUT_IGNORE_FLAGS = 128 +) + +var labels_GPS_INPUT_IGNORE_FLAGS = map[GPS_INPUT_IGNORE_FLAGS]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e GPS_INPUT_IGNORE_FLAGS) MarshalText() ([]byte, error) { + if l, ok := labels_GPS_INPUT_IGNORE_FLAGS[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_GPS_INPUT_IGNORE_FLAGS = map[string]GPS_INPUT_IGNORE_FLAGS{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *GPS_INPUT_IGNORE_FLAGS) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_GPS_INPUT_IGNORE_FLAGS[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e GPS_INPUT_IGNORE_FLAGS) String() string { + if l, ok := labels_GPS_INPUT_IGNORE_FLAGS[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/avssuas/enum_gripper_actions.go b/pkg/dialects/avssuas/enum_gripper_actions.go new file mode 100644 index 000000000..f4af6f3f2 --- /dev/null +++ b/pkg/dialects/avssuas/enum_gripper_actions.go @@ -0,0 +1,46 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package avssuas + +import ( + "errors" +) + +// Gripper actions. +type GRIPPER_ACTIONS int + +const ( + // Gripper release cargo. + GRIPPER_ACTION_RELEASE GRIPPER_ACTIONS = 0 + // Gripper grab onto cargo. + GRIPPER_ACTION_GRAB GRIPPER_ACTIONS = 1 +) + +var labels_GRIPPER_ACTIONS = map[GRIPPER_ACTIONS]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e GRIPPER_ACTIONS) MarshalText() ([]byte, error) { + if l, ok := labels_GRIPPER_ACTIONS[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_GRIPPER_ACTIONS = map[string]GRIPPER_ACTIONS{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *GRIPPER_ACTIONS) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_GRIPPER_ACTIONS[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e GRIPPER_ACTIONS) String() string { + if l, ok := labels_GRIPPER_ACTIONS[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/avssuas/enum_highres_imu_updated_flags.go b/pkg/dialects/avssuas/enum_highres_imu_updated_flags.go new file mode 100644 index 000000000..e085a7308 --- /dev/null +++ b/pkg/dialects/avssuas/enum_highres_imu_updated_flags.go @@ -0,0 +1,72 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package avssuas + +import ( + "errors" +) + +// Flags in the HIGHRES_IMU message indicate which fields have updated since the last message +type HIGHRES_IMU_UPDATED_FLAGS int + +const ( + // None of the fields in HIGHRES_IMU have been updated + HIGHRES_IMU_UPDATED_NONE HIGHRES_IMU_UPDATED_FLAGS = 0 + // The value in the xacc field has been updated + HIGHRES_IMU_UPDATED_XACC HIGHRES_IMU_UPDATED_FLAGS = 1 + // The value in the yacc field has been updated + HIGHRES_IMU_UPDATED_YACC HIGHRES_IMU_UPDATED_FLAGS = 2 + // The value in the zacc field has been updated since + HIGHRES_IMU_UPDATED_ZACC HIGHRES_IMU_UPDATED_FLAGS = 4 + // The value in the xgyro field has been updated + HIGHRES_IMU_UPDATED_XGYRO HIGHRES_IMU_UPDATED_FLAGS = 8 + // The value in the ygyro field has been updated + HIGHRES_IMU_UPDATED_YGYRO HIGHRES_IMU_UPDATED_FLAGS = 16 + // The value in the zgyro field has been updated + HIGHRES_IMU_UPDATED_ZGYRO HIGHRES_IMU_UPDATED_FLAGS = 32 + // The value in the xmag field has been updated + HIGHRES_IMU_UPDATED_XMAG HIGHRES_IMU_UPDATED_FLAGS = 64 + // The value in the ymag field has been updated + HIGHRES_IMU_UPDATED_YMAG HIGHRES_IMU_UPDATED_FLAGS = 128 + // The value in the zmag field has been updated + HIGHRES_IMU_UPDATED_ZMAG HIGHRES_IMU_UPDATED_FLAGS = 256 + // The value in the abs_pressure field has been updated + HIGHRES_IMU_UPDATED_ABS_PRESSURE HIGHRES_IMU_UPDATED_FLAGS = 512 + // The value in the diff_pressure field has been updated + HIGHRES_IMU_UPDATED_DIFF_PRESSURE HIGHRES_IMU_UPDATED_FLAGS = 1024 + // The value in the pressure_alt field has been updated + HIGHRES_IMU_UPDATED_PRESSURE_ALT HIGHRES_IMU_UPDATED_FLAGS = 2048 + // The value in the temperature field has been updated + HIGHRES_IMU_UPDATED_TEMPERATURE HIGHRES_IMU_UPDATED_FLAGS = 4096 + // All fields in HIGHRES_IMU have been updated. + HIGHRES_IMU_UPDATED_ALL HIGHRES_IMU_UPDATED_FLAGS = 65535 +) + +var labels_HIGHRES_IMU_UPDATED_FLAGS = map[HIGHRES_IMU_UPDATED_FLAGS]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e HIGHRES_IMU_UPDATED_FLAGS) MarshalText() ([]byte, error) { + if l, ok := labels_HIGHRES_IMU_UPDATED_FLAGS[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_HIGHRES_IMU_UPDATED_FLAGS = map[string]HIGHRES_IMU_UPDATED_FLAGS{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *HIGHRES_IMU_UPDATED_FLAGS) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_HIGHRES_IMU_UPDATED_FLAGS[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e HIGHRES_IMU_UPDATED_FLAGS) String() string { + if l, ok := labels_HIGHRES_IMU_UPDATED_FLAGS[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/avssuas/enum_hil_sensor_updated_flags.go b/pkg/dialects/avssuas/enum_hil_sensor_updated_flags.go new file mode 100644 index 000000000..54e3afa6e --- /dev/null +++ b/pkg/dialects/avssuas/enum_hil_sensor_updated_flags.go @@ -0,0 +1,72 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package avssuas + +import ( + "errors" +) + +// Flags in the HIL_SENSOR message indicate which fields have updated since the last message +type HIL_SENSOR_UPDATED_FLAGS int + +const ( + // None of the fields in HIL_SENSOR have been updated + HIL_SENSOR_UPDATED_NONE HIL_SENSOR_UPDATED_FLAGS = 0 + // The value in the xacc field has been updated + HIL_SENSOR_UPDATED_XACC HIL_SENSOR_UPDATED_FLAGS = 1 + // The value in the yacc field has been updated + HIL_SENSOR_UPDATED_YACC HIL_SENSOR_UPDATED_FLAGS = 2 + // The value in the zacc field has been updated + HIL_SENSOR_UPDATED_ZACC HIL_SENSOR_UPDATED_FLAGS = 4 + // The value in the xgyro field has been updated + HIL_SENSOR_UPDATED_XGYRO HIL_SENSOR_UPDATED_FLAGS = 8 + // The value in the ygyro field has been updated + HIL_SENSOR_UPDATED_YGYRO HIL_SENSOR_UPDATED_FLAGS = 16 + // The value in the zgyro field has been updated + HIL_SENSOR_UPDATED_ZGYRO HIL_SENSOR_UPDATED_FLAGS = 32 + // The value in the xmag field has been updated + HIL_SENSOR_UPDATED_XMAG HIL_SENSOR_UPDATED_FLAGS = 64 + // The value in the ymag field has been updated + HIL_SENSOR_UPDATED_YMAG HIL_SENSOR_UPDATED_FLAGS = 128 + // The value in the zmag field has been updated + HIL_SENSOR_UPDATED_ZMAG HIL_SENSOR_UPDATED_FLAGS = 256 + // The value in the abs_pressure field has been updated + HIL_SENSOR_UPDATED_ABS_PRESSURE HIL_SENSOR_UPDATED_FLAGS = 512 + // The value in the diff_pressure field has been updated + HIL_SENSOR_UPDATED_DIFF_PRESSURE HIL_SENSOR_UPDATED_FLAGS = 1024 + // The value in the pressure_alt field has been updated + HIL_SENSOR_UPDATED_PRESSURE_ALT HIL_SENSOR_UPDATED_FLAGS = 2048 + // The value in the temperature field has been updated + HIL_SENSOR_UPDATED_TEMPERATURE HIL_SENSOR_UPDATED_FLAGS = 4096 + // Full reset of attitude/position/velocities/etc was performed in sim (Bit 31). + HIL_SENSOR_UPDATED_RESET HIL_SENSOR_UPDATED_FLAGS = 2147483648 +) + +var labels_HIL_SENSOR_UPDATED_FLAGS = map[HIL_SENSOR_UPDATED_FLAGS]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e HIL_SENSOR_UPDATED_FLAGS) MarshalText() ([]byte, error) { + if l, ok := labels_HIL_SENSOR_UPDATED_FLAGS[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_HIL_SENSOR_UPDATED_FLAGS = map[string]HIL_SENSOR_UPDATED_FLAGS{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *HIL_SENSOR_UPDATED_FLAGS) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_HIL_SENSOR_UPDATED_FLAGS[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e HIL_SENSOR_UPDATED_FLAGS) String() string { + if l, ok := labels_HIL_SENSOR_UPDATED_FLAGS[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/avssuas/enum_hl_failure_flag.go b/pkg/dialects/avssuas/enum_hl_failure_flag.go new file mode 100644 index 000000000..e5c9c7d23 --- /dev/null +++ b/pkg/dialects/avssuas/enum_hl_failure_flag.go @@ -0,0 +1,70 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package avssuas + +import ( + "errors" +) + +// Flags to report failure cases over the high latency telemtry. +type HL_FAILURE_FLAG int + +const ( + // GPS failure. + HL_FAILURE_FLAG_GPS HL_FAILURE_FLAG = 1 + // Differential pressure sensor failure. + HL_FAILURE_FLAG_DIFFERENTIAL_PRESSURE HL_FAILURE_FLAG = 2 + // Absolute pressure sensor failure. + HL_FAILURE_FLAG_ABSOLUTE_PRESSURE HL_FAILURE_FLAG = 4 + // Accelerometer sensor failure. + HL_FAILURE_FLAG_3D_ACCEL HL_FAILURE_FLAG = 8 + // Gyroscope sensor failure. + HL_FAILURE_FLAG_3D_GYRO HL_FAILURE_FLAG = 16 + // Magnetometer sensor failure. + HL_FAILURE_FLAG_3D_MAG HL_FAILURE_FLAG = 32 + // Terrain subsystem failure. + HL_FAILURE_FLAG_TERRAIN HL_FAILURE_FLAG = 64 + // Battery failure/critical low battery. + HL_FAILURE_FLAG_BATTERY HL_FAILURE_FLAG = 128 + // RC receiver failure/no rc connection. + HL_FAILURE_FLAG_RC_RECEIVER HL_FAILURE_FLAG = 256 + // Offboard link failure. + HL_FAILURE_FLAG_OFFBOARD_LINK HL_FAILURE_FLAG = 512 + // Engine failure. + HL_FAILURE_FLAG_ENGINE HL_FAILURE_FLAG = 1024 + // Geofence violation. + HL_FAILURE_FLAG_GEOFENCE HL_FAILURE_FLAG = 2048 + // Estimator failure, for example measurement rejection or large variances. + HL_FAILURE_FLAG_ESTIMATOR HL_FAILURE_FLAG = 4096 + // Mission failure. + HL_FAILURE_FLAG_MISSION HL_FAILURE_FLAG = 8192 +) + +var labels_HL_FAILURE_FLAG = map[HL_FAILURE_FLAG]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e HL_FAILURE_FLAG) MarshalText() ([]byte, error) { + if l, ok := labels_HL_FAILURE_FLAG[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_HL_FAILURE_FLAG = map[string]HL_FAILURE_FLAG{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *HL_FAILURE_FLAG) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_HL_FAILURE_FLAG[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e HL_FAILURE_FLAG) String() string { + if l, ok := labels_HL_FAILURE_FLAG[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/avssuas/enum_landing_target_type.go b/pkg/dialects/avssuas/enum_landing_target_type.go new file mode 100644 index 000000000..c52d3887a --- /dev/null +++ b/pkg/dialects/avssuas/enum_landing_target_type.go @@ -0,0 +1,50 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package avssuas + +import ( + "errors" +) + +// Type of landing target +type LANDING_TARGET_TYPE int + +const ( + // Landing target signaled by light beacon (ex: IR-LOCK) + LANDING_TARGET_TYPE_LIGHT_BEACON LANDING_TARGET_TYPE = 0 + // Landing target signaled by radio beacon (ex: ILS, NDB) + LANDING_TARGET_TYPE_RADIO_BEACON LANDING_TARGET_TYPE = 1 + // Landing target represented by a fiducial marker (ex: ARTag) + LANDING_TARGET_TYPE_VISION_FIDUCIAL LANDING_TARGET_TYPE = 2 + // Landing target represented by a pre-defined visual shape/feature (ex: X-marker, H-marker, square) + LANDING_TARGET_TYPE_VISION_OTHER LANDING_TARGET_TYPE = 3 +) + +var labels_LANDING_TARGET_TYPE = map[LANDING_TARGET_TYPE]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e LANDING_TARGET_TYPE) MarshalText() ([]byte, error) { + if l, ok := labels_LANDING_TARGET_TYPE[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_LANDING_TARGET_TYPE = map[string]LANDING_TARGET_TYPE{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *LANDING_TARGET_TYPE) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_LANDING_TARGET_TYPE[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e LANDING_TARGET_TYPE) String() string { + if l, ok := labels_LANDING_TARGET_TYPE[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/avssuas/enum_mag_cal_status.go b/pkg/dialects/avssuas/enum_mag_cal_status.go new file mode 100644 index 000000000..fe7be1d13 --- /dev/null +++ b/pkg/dialects/avssuas/enum_mag_cal_status.go @@ -0,0 +1,49 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package avssuas + +import ( + "errors" +) + +type MAG_CAL_STATUS int + +const ( + MAG_CAL_NOT_STARTED MAG_CAL_STATUS = 0 + MAG_CAL_WAITING_TO_START MAG_CAL_STATUS = 1 + MAG_CAL_RUNNING_STEP_ONE MAG_CAL_STATUS = 2 + MAG_CAL_RUNNING_STEP_TWO MAG_CAL_STATUS = 3 + MAG_CAL_SUCCESS MAG_CAL_STATUS = 4 + MAG_CAL_FAILED MAG_CAL_STATUS = 5 + MAG_CAL_BAD_ORIENTATION MAG_CAL_STATUS = 6 + MAG_CAL_BAD_RADIUS MAG_CAL_STATUS = 7 +) + +var labels_MAG_CAL_STATUS = map[MAG_CAL_STATUS]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAG_CAL_STATUS) MarshalText() ([]byte, error) { + if l, ok := labels_MAG_CAL_STATUS[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAG_CAL_STATUS = map[string]MAG_CAL_STATUS{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAG_CAL_STATUS) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAG_CAL_STATUS[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAG_CAL_STATUS) String() string { + if l, ok := labels_MAG_CAL_STATUS[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/avssuas/enum_mav_arm_auth_denied_reason.go b/pkg/dialects/avssuas/enum_mav_arm_auth_denied_reason.go new file mode 100644 index 000000000..7fb16baf4 --- /dev/null +++ b/pkg/dialects/avssuas/enum_mav_arm_auth_denied_reason.go @@ -0,0 +1,53 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package avssuas + +import ( + "errors" +) + +type MAV_ARM_AUTH_DENIED_REASON int + +const ( + // Not a specific reason + MAV_ARM_AUTH_DENIED_REASON_GENERIC MAV_ARM_AUTH_DENIED_REASON = 0 + // Authorizer will send the error as string to GCS + MAV_ARM_AUTH_DENIED_REASON_NONE MAV_ARM_AUTH_DENIED_REASON = 1 + // At least one waypoint have a invalid value + MAV_ARM_AUTH_DENIED_REASON_INVALID_WAYPOINT MAV_ARM_AUTH_DENIED_REASON = 2 + // Timeout in the authorizer process(in case it depends on network) + MAV_ARM_AUTH_DENIED_REASON_TIMEOUT MAV_ARM_AUTH_DENIED_REASON = 3 + // Airspace of the mission in use by another vehicle, second result parameter can have the waypoint id that caused it to be denied. + MAV_ARM_AUTH_DENIED_REASON_AIRSPACE_IN_USE MAV_ARM_AUTH_DENIED_REASON = 4 + // Weather is not good to fly + MAV_ARM_AUTH_DENIED_REASON_BAD_WEATHER MAV_ARM_AUTH_DENIED_REASON = 5 +) + +var labels_MAV_ARM_AUTH_DENIED_REASON = map[MAV_ARM_AUTH_DENIED_REASON]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAV_ARM_AUTH_DENIED_REASON) MarshalText() ([]byte, error) { + if l, ok := labels_MAV_ARM_AUTH_DENIED_REASON[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAV_ARM_AUTH_DENIED_REASON = map[string]MAV_ARM_AUTH_DENIED_REASON{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAV_ARM_AUTH_DENIED_REASON) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAV_ARM_AUTH_DENIED_REASON[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAV_ARM_AUTH_DENIED_REASON) String() string { + if l, ok := labels_MAV_ARM_AUTH_DENIED_REASON[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/avssuas/enum_mav_autopilot.go b/pkg/dialects/avssuas/enum_mav_autopilot.go new file mode 100644 index 000000000..6915386ed --- /dev/null +++ b/pkg/dialects/avssuas/enum_mav_autopilot.go @@ -0,0 +1,84 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package avssuas + +import ( + "errors" +) + +// Micro air vehicle / autopilot classes. This identifies the individual model. +type MAV_AUTOPILOT int + +const ( + // Generic autopilot, full support for everything + MAV_AUTOPILOT_GENERIC MAV_AUTOPILOT = 0 + // Reserved for future use. + MAV_AUTOPILOT_RESERVED MAV_AUTOPILOT = 1 + // SLUGS autopilot, http://slugsuav.soe.ucsc.edu + MAV_AUTOPILOT_SLUGS MAV_AUTOPILOT = 2 + // ArduPilot - Plane/Copter/Rover/Sub/Tracker, https://ardupilot.org + MAV_AUTOPILOT_ARDUPILOTMEGA MAV_AUTOPILOT = 3 + // OpenPilot, http://openpilot.org + MAV_AUTOPILOT_OPENPILOT MAV_AUTOPILOT = 4 + // Generic autopilot only supporting simple waypoints + MAV_AUTOPILOT_GENERIC_WAYPOINTS_ONLY MAV_AUTOPILOT = 5 + // Generic autopilot supporting waypoints and other simple navigation commands + MAV_AUTOPILOT_GENERIC_WAYPOINTS_AND_SIMPLE_NAVIGATION_ONLY MAV_AUTOPILOT = 6 + // Generic autopilot supporting the full mission command set + MAV_AUTOPILOT_GENERIC_MISSION_FULL MAV_AUTOPILOT = 7 + // No valid autopilot, e.g. a GCS or other MAVLink component + MAV_AUTOPILOT_INVALID MAV_AUTOPILOT = 8 + // PPZ UAV - http://nongnu.org/paparazzi + MAV_AUTOPILOT_PPZ MAV_AUTOPILOT = 9 + // UAV Dev Board + MAV_AUTOPILOT_UDB MAV_AUTOPILOT = 10 + // FlexiPilot + MAV_AUTOPILOT_FP MAV_AUTOPILOT = 11 + // PX4 Autopilot - http://px4.io/ + MAV_AUTOPILOT_PX4 MAV_AUTOPILOT = 12 + // SMACCMPilot - http://smaccmpilot.org + MAV_AUTOPILOT_SMACCMPILOT MAV_AUTOPILOT = 13 + // AutoQuad -- http://autoquad.org + MAV_AUTOPILOT_AUTOQUAD MAV_AUTOPILOT = 14 + // Armazila -- http://armazila.com + MAV_AUTOPILOT_ARMAZILA MAV_AUTOPILOT = 15 + // Aerob -- http://aerob.ru + MAV_AUTOPILOT_AEROB MAV_AUTOPILOT = 16 + // ASLUAV autopilot -- http://www.asl.ethz.ch + MAV_AUTOPILOT_ASLUAV MAV_AUTOPILOT = 17 + // SmartAP Autopilot - http://sky-drones.com + MAV_AUTOPILOT_SMARTAP MAV_AUTOPILOT = 18 + // AirRails - http://uaventure.com + MAV_AUTOPILOT_AIRRAILS MAV_AUTOPILOT = 19 + // Fusion Reflex - https://fusion.engineering + MAV_AUTOPILOT_REFLEX MAV_AUTOPILOT = 20 +) + +var labels_MAV_AUTOPILOT = map[MAV_AUTOPILOT]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAV_AUTOPILOT) MarshalText() ([]byte, error) { + if l, ok := labels_MAV_AUTOPILOT[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAV_AUTOPILOT = map[string]MAV_AUTOPILOT{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAV_AUTOPILOT) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAV_AUTOPILOT[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAV_AUTOPILOT) String() string { + if l, ok := labels_MAV_AUTOPILOT[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/avssuas/enum_mav_avss_command_failure_reason.go b/pkg/dialects/avssuas/enum_mav_avss_command_failure_reason.go new file mode 100644 index 000000000..e5643ee1c --- /dev/null +++ b/pkg/dialects/avssuas/enum_mav_avss_command_failure_reason.go @@ -0,0 +1,47 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package avssuas + +import ( + "errors" +) + +type MAV_AVSS_COMMAND_FAILURE_REASON int + +const ( + // AVSS defined command failure reason. PRS not steady. + PRS_NOT_STEADY MAV_AVSS_COMMAND_FAILURE_REASON = 1 + // AVSS defined command failure reason. PRS DTM not armed. + PRS_DTM_NOT_ARMED MAV_AVSS_COMMAND_FAILURE_REASON = 2 + // AVSS defined command failure reason. PRS OTM not armed. + PRS_OTM_NOT_ARMED MAV_AVSS_COMMAND_FAILURE_REASON = 3 +) + +var labels_MAV_AVSS_COMMAND_FAILURE_REASON = map[MAV_AVSS_COMMAND_FAILURE_REASON]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAV_AVSS_COMMAND_FAILURE_REASON) MarshalText() ([]byte, error) { + if l, ok := labels_MAV_AVSS_COMMAND_FAILURE_REASON[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAV_AVSS_COMMAND_FAILURE_REASON = map[string]MAV_AVSS_COMMAND_FAILURE_REASON{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAV_AVSS_COMMAND_FAILURE_REASON) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAV_AVSS_COMMAND_FAILURE_REASON[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAV_AVSS_COMMAND_FAILURE_REASON) String() string { + if l, ok := labels_MAV_AVSS_COMMAND_FAILURE_REASON[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/avssuas/enum_mav_battery_charge_state.go b/pkg/dialects/avssuas/enum_mav_battery_charge_state.go new file mode 100644 index 000000000..4d4bbff5e --- /dev/null +++ b/pkg/dialects/avssuas/enum_mav_battery_charge_state.go @@ -0,0 +1,58 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package avssuas + +import ( + "errors" +) + +// Enumeration for battery charge states. +type MAV_BATTERY_CHARGE_STATE int + +const ( + // Low battery state is not provided + MAV_BATTERY_CHARGE_STATE_UNDEFINED MAV_BATTERY_CHARGE_STATE = 0 + // Battery is not in low state. Normal operation. + MAV_BATTERY_CHARGE_STATE_OK MAV_BATTERY_CHARGE_STATE = 1 + // Battery state is low, warn and monitor close. + MAV_BATTERY_CHARGE_STATE_LOW MAV_BATTERY_CHARGE_STATE = 2 + // Battery state is critical, return or abort immediately. + MAV_BATTERY_CHARGE_STATE_CRITICAL MAV_BATTERY_CHARGE_STATE = 3 + // Battery state is too low for ordinary abort sequence. Perform fastest possible emergency stop to prevent damage. + MAV_BATTERY_CHARGE_STATE_EMERGENCY MAV_BATTERY_CHARGE_STATE = 4 + // Battery failed, damage unavoidable. Possible causes (faults) are listed in MAV_BATTERY_FAULT. + MAV_BATTERY_CHARGE_STATE_FAILED MAV_BATTERY_CHARGE_STATE = 5 + // Battery is diagnosed to be defective or an error occurred, usage is discouraged / prohibited. Possible causes (faults) are listed in MAV_BATTERY_FAULT. + MAV_BATTERY_CHARGE_STATE_UNHEALTHY MAV_BATTERY_CHARGE_STATE = 6 + // Battery is charging. + MAV_BATTERY_CHARGE_STATE_CHARGING MAV_BATTERY_CHARGE_STATE = 7 +) + +var labels_MAV_BATTERY_CHARGE_STATE = map[MAV_BATTERY_CHARGE_STATE]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAV_BATTERY_CHARGE_STATE) MarshalText() ([]byte, error) { + if l, ok := labels_MAV_BATTERY_CHARGE_STATE[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAV_BATTERY_CHARGE_STATE = map[string]MAV_BATTERY_CHARGE_STATE{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAV_BATTERY_CHARGE_STATE) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAV_BATTERY_CHARGE_STATE[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAV_BATTERY_CHARGE_STATE) String() string { + if l, ok := labels_MAV_BATTERY_CHARGE_STATE[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/avssuas/enum_mav_battery_fault.go b/pkg/dialects/avssuas/enum_mav_battery_fault.go new file mode 100644 index 000000000..5c5f26c28 --- /dev/null +++ b/pkg/dialects/avssuas/enum_mav_battery_fault.go @@ -0,0 +1,60 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package avssuas + +import ( + "errors" +) + +// Smart battery supply status/fault flags (bitmask) for health indication. The battery must also report either MAV_BATTERY_CHARGE_STATE_FAILED or MAV_BATTERY_CHARGE_STATE_UNHEALTHY if any of these are set. +type MAV_BATTERY_FAULT int + +const ( + // Battery has deep discharged. + MAV_BATTERY_FAULT_DEEP_DISCHARGE MAV_BATTERY_FAULT = 1 + // Voltage spikes. + MAV_BATTERY_FAULT_SPIKES MAV_BATTERY_FAULT = 2 + // One or more cells have failed. Battery should also report MAV_BATTERY_CHARGE_STATE_FAILE (and should not be used). + MAV_BATTERY_FAULT_CELL_FAIL MAV_BATTERY_FAULT = 4 + // Over-current fault. + MAV_BATTERY_FAULT_OVER_CURRENT MAV_BATTERY_FAULT = 8 + // Over-temperature fault. + MAV_BATTERY_FAULT_OVER_TEMPERATURE MAV_BATTERY_FAULT = 16 + // Under-temperature fault. + MAV_BATTERY_FAULT_UNDER_TEMPERATURE MAV_BATTERY_FAULT = 32 + // Vehicle voltage is not compatible with this battery (batteries on same power rail should have similar voltage). + MAV_BATTERY_FAULT_INCOMPATIBLE_VOLTAGE MAV_BATTERY_FAULT = 64 + // Battery firmware is not compatible with current autopilot firmware. + MAV_BATTERY_FAULT_INCOMPATIBLE_FIRMWARE MAV_BATTERY_FAULT = 128 + // Battery is not compatible due to cell configuration (e.g. 5s1p when vehicle requires 6s). + BATTERY_FAULT_INCOMPATIBLE_CELLS_CONFIGURATION MAV_BATTERY_FAULT = 256 +) + +var labels_MAV_BATTERY_FAULT = map[MAV_BATTERY_FAULT]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAV_BATTERY_FAULT) MarshalText() ([]byte, error) { + if l, ok := labels_MAV_BATTERY_FAULT[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAV_BATTERY_FAULT = map[string]MAV_BATTERY_FAULT{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAV_BATTERY_FAULT) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAV_BATTERY_FAULT[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAV_BATTERY_FAULT) String() string { + if l, ok := labels_MAV_BATTERY_FAULT[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/avssuas/enum_mav_battery_function.go b/pkg/dialects/avssuas/enum_mav_battery_function.go new file mode 100644 index 000000000..b55926ceb --- /dev/null +++ b/pkg/dialects/avssuas/enum_mav_battery_function.go @@ -0,0 +1,52 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package avssuas + +import ( + "errors" +) + +// Enumeration of battery functions +type MAV_BATTERY_FUNCTION int + +const ( + // Battery function is unknown + MAV_BATTERY_FUNCTION_UNKNOWN MAV_BATTERY_FUNCTION = 0 + // Battery supports all flight systems + MAV_BATTERY_FUNCTION_ALL MAV_BATTERY_FUNCTION = 1 + // Battery for the propulsion system + MAV_BATTERY_FUNCTION_PROPULSION MAV_BATTERY_FUNCTION = 2 + // Avionics battery + MAV_BATTERY_FUNCTION_AVIONICS MAV_BATTERY_FUNCTION = 3 + // Payload battery + MAV_BATTERY_TYPE_PAYLOAD MAV_BATTERY_FUNCTION = 4 +) + +var labels_MAV_BATTERY_FUNCTION = map[MAV_BATTERY_FUNCTION]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAV_BATTERY_FUNCTION) MarshalText() ([]byte, error) { + if l, ok := labels_MAV_BATTERY_FUNCTION[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAV_BATTERY_FUNCTION = map[string]MAV_BATTERY_FUNCTION{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAV_BATTERY_FUNCTION) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAV_BATTERY_FUNCTION[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAV_BATTERY_FUNCTION) String() string { + if l, ok := labels_MAV_BATTERY_FUNCTION[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/avssuas/enum_mav_battery_mode.go b/pkg/dialects/avssuas/enum_mav_battery_mode.go new file mode 100644 index 000000000..14677241e --- /dev/null +++ b/pkg/dialects/avssuas/enum_mav_battery_mode.go @@ -0,0 +1,48 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package avssuas + +import ( + "errors" +) + +// Battery mode. Note, the normal operation mode (i.e. when flying) should be reported as MAV_BATTERY_MODE_UNKNOWN to allow message trimming in normal flight. +type MAV_BATTERY_MODE int + +const ( + // Battery mode not supported/unknown battery mode/normal operation. + MAV_BATTERY_MODE_UNKNOWN MAV_BATTERY_MODE = 0 + // Battery is auto discharging (towards storage level). + MAV_BATTERY_MODE_AUTO_DISCHARGING MAV_BATTERY_MODE = 1 + // Battery in hot-swap mode (current limited to prevent spikes that might damage sensitive electrical circuits). + MAV_BATTERY_MODE_HOT_SWAP MAV_BATTERY_MODE = 2 +) + +var labels_MAV_BATTERY_MODE = map[MAV_BATTERY_MODE]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAV_BATTERY_MODE) MarshalText() ([]byte, error) { + if l, ok := labels_MAV_BATTERY_MODE[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAV_BATTERY_MODE = map[string]MAV_BATTERY_MODE{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAV_BATTERY_MODE) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAV_BATTERY_MODE[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAV_BATTERY_MODE) String() string { + if l, ok := labels_MAV_BATTERY_MODE[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/avssuas/enum_mav_battery_type.go b/pkg/dialects/avssuas/enum_mav_battery_type.go new file mode 100644 index 000000000..68075a2cc --- /dev/null +++ b/pkg/dialects/avssuas/enum_mav_battery_type.go @@ -0,0 +1,52 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package avssuas + +import ( + "errors" +) + +// Enumeration of battery types +type MAV_BATTERY_TYPE int + +const ( + // Not specified. + MAV_BATTERY_TYPE_UNKNOWN MAV_BATTERY_TYPE = 0 + // Lithium polymer battery + MAV_BATTERY_TYPE_LIPO MAV_BATTERY_TYPE = 1 + // Lithium-iron-phosphate battery + MAV_BATTERY_TYPE_LIFE MAV_BATTERY_TYPE = 2 + // Lithium-ION battery + MAV_BATTERY_TYPE_LION MAV_BATTERY_TYPE = 3 + // Nickel metal hydride battery + MAV_BATTERY_TYPE_NIMH MAV_BATTERY_TYPE = 4 +) + +var labels_MAV_BATTERY_TYPE = map[MAV_BATTERY_TYPE]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAV_BATTERY_TYPE) MarshalText() ([]byte, error) { + if l, ok := labels_MAV_BATTERY_TYPE[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAV_BATTERY_TYPE = map[string]MAV_BATTERY_TYPE{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAV_BATTERY_TYPE) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAV_BATTERY_TYPE[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAV_BATTERY_TYPE) String() string { + if l, ok := labels_MAV_BATTERY_TYPE[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/avssuas/enum_mav_cmd.go b/pkg/dialects/avssuas/enum_mav_cmd.go new file mode 100644 index 000000000..3b52a335d --- /dev/null +++ b/pkg/dialects/avssuas/enum_mav_cmd.go @@ -0,0 +1,387 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package avssuas + +import ( + "errors" +) + +// Commands to be executed by the MAV. They can be executed on user request, or as part of a mission script. If the action is used in a mission, the parameter mapping to the waypoint/mission message is as follows: Param 1, Param 2, Param 3, Param 4, X: Param 5, Y:Param 6, Z:Param 7. This command list is similar what ARINC 424 is for commercial aircraft: A data format how to interpret waypoint/mission data. NaN and INT32_MAX may be used in float/integer params (respectively) to indicate optional/default values (e.g. to use the component's current yaw or latitude rather than a specific value). See https://mavlink.io/en/guide/xml_schema.html#MAV_CMD for information about the structure of the MAV_CMD entries +type MAV_CMD int + +const ( + // Navigate to waypoint. + MAV_CMD_NAV_WAYPOINT MAV_CMD = 16 + // Loiter around this waypoint an unlimited amount of time + MAV_CMD_NAV_LOITER_UNLIM MAV_CMD = 17 + // Loiter around this waypoint for X turns + MAV_CMD_NAV_LOITER_TURNS MAV_CMD = 18 + // Loiter at the specified latitude, longitude and altitude for a certain amount of time. Multicopter vehicles stop at the point (within a vehicle-specific acceptance radius). Forward-only moving vehicles (e.g. fixed-wing) circle the point with the specified radius/direction. If the Heading Required parameter (2) is non-zero forward moving aircraft will only leave the loiter circle once heading towards the next waypoint. + MAV_CMD_NAV_LOITER_TIME MAV_CMD = 19 + // Return to launch location + MAV_CMD_NAV_RETURN_TO_LAUNCH MAV_CMD = 20 + // Land at location. + MAV_CMD_NAV_LAND MAV_CMD = 21 + // Takeoff from ground / hand. Vehicles that support multiple takeoff modes (e.g. VTOL quadplane) should take off using the currently configured mode. + MAV_CMD_NAV_TAKEOFF MAV_CMD = 22 + // Land at local position (local frame only) + MAV_CMD_NAV_LAND_LOCAL MAV_CMD = 23 + // Takeoff from local position (local frame only) + MAV_CMD_NAV_TAKEOFF_LOCAL MAV_CMD = 24 + // Vehicle following, i.e. this waypoint represents the position of a moving vehicle + MAV_CMD_NAV_FOLLOW MAV_CMD = 25 + // Continue on the current course and climb/descend to specified altitude. When the altitude is reached continue to the next command (i.e., don't proceed to the next command until the desired altitude is reached. + MAV_CMD_NAV_CONTINUE_AND_CHANGE_ALT MAV_CMD = 30 + // Begin loiter at the specified Latitude and Longitude. If Lat=Lon=0, then loiter at the current position. Don't consider the navigation command complete (don't leave loiter) until the altitude has been reached. Additionally, if the Heading Required parameter is non-zero the aircraft will not leave the loiter until heading toward the next waypoint. + MAV_CMD_NAV_LOITER_TO_ALT MAV_CMD = 31 + // Begin following a target + MAV_CMD_DO_FOLLOW MAV_CMD = 32 + // Reposition the MAV after a follow target command has been sent + MAV_CMD_DO_FOLLOW_REPOSITION MAV_CMD = 33 + // Start orbiting on the circumference of a circle defined by the parameters. Setting values to NaN/INT32_MAX (as appropriate) results in using defaults. + MAV_CMD_DO_ORBIT MAV_CMD = 34 + // Sets the region of interest (ROI) for a sensor set or the vehicle itself. This can then be used by the vehicle's control system to control the vehicle attitude and the attitude of various sensors such as cameras. + MAV_CMD_NAV_ROI MAV_CMD = 80 + // Control autonomous path planning on the MAV. + MAV_CMD_NAV_PATHPLANNING MAV_CMD = 81 + // Navigate to waypoint using a spline path. + MAV_CMD_NAV_SPLINE_WAYPOINT MAV_CMD = 82 + // Takeoff from ground using VTOL mode, and transition to forward flight with specified heading. The command should be ignored by vehicles that dont support both VTOL and fixed-wing flight (multicopters, boats,etc.). + MAV_CMD_NAV_VTOL_TAKEOFF MAV_CMD = 84 + // Land using VTOL mode + MAV_CMD_NAV_VTOL_LAND MAV_CMD = 85 + // hand control over to an external controller + MAV_CMD_NAV_GUIDED_ENABLE MAV_CMD = 92 + // Delay the next navigation command a number of seconds or until a specified time + MAV_CMD_NAV_DELAY MAV_CMD = 93 + // Descend and place payload. Vehicle moves to specified location, descends until it detects a hanging payload has reached the ground, and then releases the payload. If ground is not detected before the reaching the maximum descent value (param1), the command will complete without releasing the payload. + MAV_CMD_NAV_PAYLOAD_PLACE MAV_CMD = 94 + // NOP - This command is only used to mark the upper limit of the NAV/ACTION commands in the enumeration + MAV_CMD_NAV_LAST MAV_CMD = 95 + // Delay mission state machine. + MAV_CMD_CONDITION_DELAY MAV_CMD = 112 + // Ascend/descend to target altitude at specified rate. Delay mission state machine until desired altitude reached. + MAV_CMD_CONDITION_CHANGE_ALT MAV_CMD = 113 + // Delay mission state machine until within desired distance of next NAV point. + MAV_CMD_CONDITION_DISTANCE MAV_CMD = 114 + // Reach a certain target angle. + MAV_CMD_CONDITION_YAW MAV_CMD = 115 + // NOP - This command is only used to mark the upper limit of the CONDITION commands in the enumeration + MAV_CMD_CONDITION_LAST MAV_CMD = 159 + // Set system mode. + MAV_CMD_DO_SET_MODE MAV_CMD = 176 + // Jump to the desired command in the mission list. Repeat this action only the specified number of times + MAV_CMD_DO_JUMP MAV_CMD = 177 + // Change speed and/or throttle set points. + MAV_CMD_DO_CHANGE_SPEED MAV_CMD = 178 + // Changes the home location either to the current location or a specified location. + MAV_CMD_DO_SET_HOME MAV_CMD = 179 + // Set a system parameter. Caution! Use of this command requires knowledge of the numeric enumeration value of the parameter. + MAV_CMD_DO_SET_PARAMETER MAV_CMD = 180 + // Set a relay to a condition. + MAV_CMD_DO_SET_RELAY MAV_CMD = 181 + // Cycle a relay on and off for a desired number of cycles with a desired period. + MAV_CMD_DO_REPEAT_RELAY MAV_CMD = 182 + // Set a servo to a desired PWM value. + MAV_CMD_DO_SET_SERVO MAV_CMD = 183 + // Cycle a between its nominal setting and a desired PWM for a desired number of cycles with a desired period. + MAV_CMD_DO_REPEAT_SERVO MAV_CMD = 184 + // Terminate flight immediately + MAV_CMD_DO_FLIGHTTERMINATION MAV_CMD = 185 + // Change altitude set point. + MAV_CMD_DO_CHANGE_ALTITUDE MAV_CMD = 186 + // Sets actuators (e.g. servos) to a desired value. The actuator numbers are mapped to specific outputs (e.g. on any MAIN or AUX PWM or UAVCAN) using a flight-stack specific mechanism (i.e. a parameter). + MAV_CMD_DO_SET_ACTUATOR MAV_CMD = 187 + // Mission command to perform a landing. This is used as a marker in a mission to tell the autopilot where a sequence of mission items that represents a landing starts. It may also be sent via a COMMAND_LONG to trigger a landing, in which case the nearest (geographically) landing sequence in the mission will be used. The Latitude/Longitude is optional, and may be set to 0 if not needed. If specified then it will be used to help find the closest landing sequence. + MAV_CMD_DO_LAND_START MAV_CMD = 189 + // Mission command to perform a landing from a rally point. + MAV_CMD_DO_RALLY_LAND MAV_CMD = 190 + // Mission command to safely abort an autonomous landing. + MAV_CMD_DO_GO_AROUND MAV_CMD = 191 + // Reposition the vehicle to a specific WGS84 global position. + MAV_CMD_DO_REPOSITION MAV_CMD = 192 + // If in a GPS controlled position mode, hold the current position or continue. + MAV_CMD_DO_PAUSE_CONTINUE MAV_CMD = 193 + // Set moving direction to forward or reverse. + MAV_CMD_DO_SET_REVERSE MAV_CMD = 194 + // Sets the region of interest (ROI) to a location. This can then be used by the vehicle's control system to control the vehicle attitude and the attitude of various sensors such as cameras. This command can be sent to a gimbal manager but not to a gimbal device. A gimbal is not to react to this message. + MAV_CMD_DO_SET_ROI_LOCATION MAV_CMD = 195 + // Sets the region of interest (ROI) to be toward next waypoint, with optional pitch/roll/yaw offset. This can then be used by the vehicle's control system to control the vehicle attitude and the attitude of various sensors such as cameras. This command can be sent to a gimbal manager but not to a gimbal device. A gimbal device is not to react to this message. + MAV_CMD_DO_SET_ROI_WPNEXT_OFFSET MAV_CMD = 196 + // Cancels any previous ROI command returning the vehicle/sensors to default flight characteristics. This can then be used by the vehicle's control system to control the vehicle attitude and the attitude of various sensors such as cameras. This command can be sent to a gimbal manager but not to a gimbal device. A gimbal device is not to react to this message. After this command the gimbal manager should go back to manual input if available, and otherwise assume a neutral position. + MAV_CMD_DO_SET_ROI_NONE MAV_CMD = 197 + // Mount tracks system with specified system ID. Determination of target vehicle position may be done with GLOBAL_POSITION_INT or any other means. This command can be sent to a gimbal manager but not to a gimbal device. A gimbal device is not to react to this message. + MAV_CMD_DO_SET_ROI_SYSID MAV_CMD = 198 + // Control onboard camera system. + MAV_CMD_DO_CONTROL_VIDEO MAV_CMD = 200 + // Sets the region of interest (ROI) for a sensor set or the vehicle itself. This can then be used by the vehicle's control system to control the vehicle attitude and the attitude of various sensors such as cameras. + MAV_CMD_DO_SET_ROI MAV_CMD = 201 + // Configure digital camera. This is a fallback message for systems that have not yet implemented PARAM_EXT_XXX messages and camera definition files (see https://mavlink.io/en/services/camera_def.html ). + MAV_CMD_DO_DIGICAM_CONFIGURE MAV_CMD = 202 + // Control digital camera. This is a fallback message for systems that have not yet implemented PARAM_EXT_XXX messages and camera definition files (see https://mavlink.io/en/services/camera_def.html ). + MAV_CMD_DO_DIGICAM_CONTROL MAV_CMD = 203 + // Mission command to configure a camera or antenna mount + MAV_CMD_DO_MOUNT_CONFIGURE MAV_CMD = 204 + // Mission command to control a camera or antenna mount + MAV_CMD_DO_MOUNT_CONTROL MAV_CMD = 205 + // Mission command to set camera trigger distance for this flight. The camera is triggered each time this distance is exceeded. This command can also be used to set the shutter integration time for the camera. + MAV_CMD_DO_SET_CAM_TRIGG_DIST MAV_CMD = 206 + // Mission command to enable the geofence + MAV_CMD_DO_FENCE_ENABLE MAV_CMD = 207 + // Mission item/command to release a parachute or enable/disable auto release. + MAV_CMD_DO_PARACHUTE MAV_CMD = 208 + // Command to perform motor test. + MAV_CMD_DO_MOTOR_TEST MAV_CMD = 209 + // Change to/from inverted flight. + MAV_CMD_DO_INVERTED_FLIGHT MAV_CMD = 210 + // Mission command to operate a gripper. + MAV_CMD_DO_GRIPPER MAV_CMD = 211 + // Enable/disable autotune. + MAV_CMD_DO_AUTOTUNE_ENABLE MAV_CMD = 212 + // Sets a desired vehicle turn angle and speed change. + MAV_CMD_NAV_SET_YAW_SPEED MAV_CMD = 213 + // Mission command to set camera trigger interval for this flight. If triggering is enabled, the camera is triggered each time this interval expires. This command can also be used to set the shutter integration time for the camera. + MAV_CMD_DO_SET_CAM_TRIGG_INTERVAL MAV_CMD = 214 + // Mission command to control a camera or antenna mount, using a quaternion as reference. + MAV_CMD_DO_MOUNT_CONTROL_QUAT MAV_CMD = 220 + // set id of master controller + MAV_CMD_DO_GUIDED_MASTER MAV_CMD = 221 + // Set limits for external control + MAV_CMD_DO_GUIDED_LIMITS MAV_CMD = 222 + // Control vehicle engine. This is interpreted by the vehicles engine controller to change the target engine state. It is intended for vehicles with internal combustion engines + MAV_CMD_DO_ENGINE_CONTROL MAV_CMD = 223 + // Set the mission item with sequence number seq as current item. This means that the MAV will continue to this mission item on the shortest path (not following the mission items in-between). + MAV_CMD_DO_SET_MISSION_CURRENT MAV_CMD = 224 + // NOP - This command is only used to mark the upper limit of the DO commands in the enumeration + MAV_CMD_DO_LAST MAV_CMD = 240 + // Trigger calibration. This command will be only accepted if in pre-flight mode. Except for Temperature Calibration, only one sensor should be set in a single message and all others should be zero. + MAV_CMD_PREFLIGHT_CALIBRATION MAV_CMD = 241 + // Set sensor offsets. This command will be only accepted if in pre-flight mode. + MAV_CMD_PREFLIGHT_SET_SENSOR_OFFSETS MAV_CMD = 242 + // Trigger UAVCAN configuration (actuator ID assignment and direction mapping). Note that this maps to the legacy UAVCAN v0 function UAVCAN_ENUMERATE, which is intended to be executed just once during initial vehicle configuration (it is not a normal pre-flight command and has been poorly named). + MAV_CMD_PREFLIGHT_UAVCAN MAV_CMD = 243 + // Request storage of different parameter values and logs. This command will be only accepted if in pre-flight mode. + MAV_CMD_PREFLIGHT_STORAGE MAV_CMD = 245 + // Request the reboot or shutdown of system components. + MAV_CMD_PREFLIGHT_REBOOT_SHUTDOWN MAV_CMD = 246 + // Override current mission with command to pause mission, pause mission and move to position, continue/resume mission. When param 1 indicates that the mission is paused (MAV_GOTO_DO_HOLD), param 2 defines whether it holds in place or moves to another position. + MAV_CMD_OVERRIDE_GOTO MAV_CMD = 252 + // Mission command to set a Camera Auto Mount Pivoting Oblique Survey (Replaces CAM_TRIGG_DIST for this purpose). The camera is triggered each time this distance is exceeded, then the mount moves to the next position. Params 4~6 set-up the angle limits and number of positions for oblique survey, where mount-enabled vehicles automatically roll the camera between shots to emulate an oblique camera setup (providing an increased HFOV). This command can also be used to set the shutter integration time for the camera. + MAV_CMD_OBLIQUE_SURVEY MAV_CMD = 260 + // start running a mission + MAV_CMD_MISSION_START MAV_CMD = 300 + // Actuator testing command. This is similar to MAV_CMD_DO_MOTOR_TEST but operates on the level of output functions, i.e. it is possible to test Motor1 independent from which output it is configured on. Autopilots typically refuse this command while armed. + MAV_CMD_ACTUATOR_TEST MAV_CMD = 310 + // Actuator configuration command. + MAV_CMD_CONFIGURE_ACTUATOR MAV_CMD = 311 + // Arms / Disarms a component + MAV_CMD_COMPONENT_ARM_DISARM MAV_CMD = 400 + // Instructs system to run pre-arm checks. This command should return MAV_RESULT_TEMPORARILY_REJECTED in the case the system is armed, otherwise MAV_RESULT_ACCEPTED. Note that the return value from executing this command does not indicate whether the vehicle is armable or not, just whether the system has successfully run/is currently running the checks. The result of the checks is reflected in the SYS_STATUS message. + MAV_CMD_RUN_PREARM_CHECKS MAV_CMD = 401 + // Turns illuminators ON/OFF. An illuminator is a light source that is used for lighting up dark areas external to the sytstem: e.g. a torch or searchlight (as opposed to a light source for illuminating the system itself, e.g. an indicator light). + MAV_CMD_ILLUMINATOR_ON_OFF MAV_CMD = 405 + // Request the home position from the vehicle. + MAV_CMD_GET_HOME_POSITION MAV_CMD = 410 + // Inject artificial failure for testing purposes. Note that autopilots should implement an additional protection before accepting this command such as a specific param setting. + MAV_CMD_INJECT_FAILURE MAV_CMD = 420 + // Starts receiver pairing. + MAV_CMD_START_RX_PAIR MAV_CMD = 500 + // Request the interval between messages for a particular MAVLink message ID. The receiver should ACK the command and then emit its response in a MESSAGE_INTERVAL message. + MAV_CMD_GET_MESSAGE_INTERVAL MAV_CMD = 510 + // Set the interval between messages for a particular MAVLink message ID. This interface replaces REQUEST_DATA_STREAM. + MAV_CMD_SET_MESSAGE_INTERVAL MAV_CMD = 511 + // Request the target system(s) emit a single instance of a specified message (i.e. a "one-shot" version of MAV_CMD_SET_MESSAGE_INTERVAL). + MAV_CMD_REQUEST_MESSAGE MAV_CMD = 512 + // Request MAVLink protocol version compatibility. All receivers should ACK the command and then emit their capabilities in an PROTOCOL_VERSION message + MAV_CMD_REQUEST_PROTOCOL_VERSION MAV_CMD = 519 + // Request autopilot capabilities. The receiver should ACK the command and then emit its capabilities in an AUTOPILOT_VERSION message + MAV_CMD_REQUEST_AUTOPILOT_CAPABILITIES MAV_CMD = 520 + // Request camera information (CAMERA_INFORMATION). + MAV_CMD_REQUEST_CAMERA_INFORMATION MAV_CMD = 521 + // Request camera settings (CAMERA_SETTINGS). + MAV_CMD_REQUEST_CAMERA_SETTINGS MAV_CMD = 522 + // Request storage information (STORAGE_INFORMATION). Use the command's target_component to target a specific component's storage. + MAV_CMD_REQUEST_STORAGE_INFORMATION MAV_CMD = 525 + // Format a storage medium. Once format is complete, a STORAGE_INFORMATION message is sent. Use the command's target_component to target a specific component's storage. + MAV_CMD_STORAGE_FORMAT MAV_CMD = 526 + // Request camera capture status (CAMERA_CAPTURE_STATUS) + MAV_CMD_REQUEST_CAMERA_CAPTURE_STATUS MAV_CMD = 527 + // Request flight information (FLIGHT_INFORMATION) + MAV_CMD_REQUEST_FLIGHT_INFORMATION MAV_CMD = 528 + // Reset all camera settings to Factory Default + MAV_CMD_RESET_CAMERA_SETTINGS MAV_CMD = 529 + // Set camera running mode. Use NaN for reserved values. GCS will send a MAV_CMD_REQUEST_VIDEO_STREAM_STATUS command after a mode change if the camera supports video streaming. + MAV_CMD_SET_CAMERA_MODE MAV_CMD = 530 + // Set camera zoom. Camera must respond with a CAMERA_SETTINGS message (on success). + MAV_CMD_SET_CAMERA_ZOOM MAV_CMD = 531 + // Set camera focus. Camera must respond with a CAMERA_SETTINGS message (on success). + MAV_CMD_SET_CAMERA_FOCUS MAV_CMD = 532 + // Set that a particular storage is the preferred location for saving photos, videos, and/or other media (e.g. to set that an SD card is used for storing videos). + // There can only be one preferred save location for each particular media type: setting a media usage flag will clear/reset that same flag if set on any other storage. + // If no flag is set the system should use its default storage. + // A target system can choose to always use default storage, in which case it should ACK the command with MAV_RESULT_UNSUPPORTED. + // A target system can choose to not allow a particular storage to be set as preferred storage, in which case it should ACK the command with MAV_RESULT_DENIED. + MAV_CMD_SET_STORAGE_USAGE MAV_CMD = 533 + // Tagged jump target. Can be jumped to with MAV_CMD_DO_JUMP_TAG. + MAV_CMD_JUMP_TAG MAV_CMD = 600 + // Jump to the matching tag in the mission list. Repeat this action for the specified number of times. A mission should contain a single matching tag for each jump. If this is not the case then a jump to a missing tag should complete the mission, and a jump where there are multiple matching tags should always select the one with the lowest mission sequence number. + MAV_CMD_DO_JUMP_TAG MAV_CMD = 601 + // High level setpoint to be sent to a gimbal manager to set a gimbal attitude. It is possible to set combinations of the values below. E.g. an angle as well as a desired angular rate can be used to get to this angle at a certain angular rate, or an angular rate only will result in continuous turning. NaN is to be used to signal unset. Note: a gimbal is never to react to this command but only the gimbal manager. + MAV_CMD_DO_GIMBAL_MANAGER_PITCHYAW MAV_CMD = 1000 + // Gimbal configuration to set which sysid/compid is in primary and secondary control. + MAV_CMD_DO_GIMBAL_MANAGER_CONFIGURE MAV_CMD = 1001 + // Start image capture sequence. Sends CAMERA_IMAGE_CAPTURED after each capture. Use NaN for reserved values. + MAV_CMD_IMAGE_START_CAPTURE MAV_CMD = 2000 + // Stop image capture sequence Use NaN for reserved values. + MAV_CMD_IMAGE_STOP_CAPTURE MAV_CMD = 2001 + // Re-request a CAMERA_IMAGE_CAPTURED message. + MAV_CMD_REQUEST_CAMERA_IMAGE_CAPTURE MAV_CMD = 2002 + // Enable or disable on-board camera triggering system. + MAV_CMD_DO_TRIGGER_CONTROL MAV_CMD = 2003 + // If the camera supports point visual tracking (CAMERA_CAP_FLAGS_HAS_TRACKING_POINT is set), this command allows to initiate the tracking. + MAV_CMD_CAMERA_TRACK_POINT MAV_CMD = 2004 + // If the camera supports rectangle visual tracking (CAMERA_CAP_FLAGS_HAS_TRACKING_RECTANGLE is set), this command allows to initiate the tracking. + MAV_CMD_CAMERA_TRACK_RECTANGLE MAV_CMD = 2005 + // Stops ongoing tracking. + MAV_CMD_CAMERA_STOP_TRACKING MAV_CMD = 2010 + // Starts video capture (recording). + MAV_CMD_VIDEO_START_CAPTURE MAV_CMD = 2500 + // Stop the current video capture (recording). + MAV_CMD_VIDEO_STOP_CAPTURE MAV_CMD = 2501 + // Start video streaming + MAV_CMD_VIDEO_START_STREAMING MAV_CMD = 2502 + // Stop the given video stream + MAV_CMD_VIDEO_STOP_STREAMING MAV_CMD = 2503 + // Request video stream information (VIDEO_STREAM_INFORMATION) + MAV_CMD_REQUEST_VIDEO_STREAM_INFORMATION MAV_CMD = 2504 + // Request video stream status (VIDEO_STREAM_STATUS) + MAV_CMD_REQUEST_VIDEO_STREAM_STATUS MAV_CMD = 2505 + // Request to start streaming logging data over MAVLink (see also LOGGING_DATA message) + MAV_CMD_LOGGING_START MAV_CMD = 2510 + // Request to stop streaming log data over MAVLink + MAV_CMD_LOGGING_STOP MAV_CMD = 2511 + MAV_CMD_AIRFRAME_CONFIGURATION MAV_CMD = 2520 + // Request to start/stop transmitting over the high latency telemetry + MAV_CMD_CONTROL_HIGH_LATENCY MAV_CMD = 2600 + // Create a panorama at the current position + MAV_CMD_PANORAMA_CREATE MAV_CMD = 2800 + // Request VTOL transition + MAV_CMD_DO_VTOL_TRANSITION MAV_CMD = 3000 + // Request authorization to arm the vehicle to a external entity, the arm authorizer is responsible to request all data that is needs from the vehicle before authorize or deny the request. If approved the progress of command_ack message should be set with period of time that this authorization is valid in seconds or in case it was denied it should be set with one of the reasons in ARM_AUTH_DENIED_REASON. + MAV_CMD_ARM_AUTHORIZATION_REQUEST MAV_CMD = 3001 + // This command sets the submode to standard guided when vehicle is in guided mode. The vehicle holds position and altitude and the user can input the desired velocities along all three axes. + MAV_CMD_SET_GUIDED_SUBMODE_STANDARD MAV_CMD = 4000 + // This command sets submode circle when vehicle is in guided mode. Vehicle flies along a circle facing the center of the circle. The user can input the velocity along the circle and change the radius. If no input is given the vehicle will hold position. + MAV_CMD_SET_GUIDED_SUBMODE_CIRCLE MAV_CMD = 4001 + // Delay mission state machine until gate has been reached. + MAV_CMD_CONDITION_GATE MAV_CMD = 4501 + // Fence return point (there can only be one such point in a geofence definition). If rally points are supported they should be used instead. + MAV_CMD_NAV_FENCE_RETURN_POINT MAV_CMD = 5000 + // Fence vertex for an inclusion polygon (the polygon must not be self-intersecting). The vehicle must stay within this area. Minimum of 3 vertices required. + MAV_CMD_NAV_FENCE_POLYGON_VERTEX_INCLUSION MAV_CMD = 5001 + // Fence vertex for an exclusion polygon (the polygon must not be self-intersecting). The vehicle must stay outside this area. Minimum of 3 vertices required. + MAV_CMD_NAV_FENCE_POLYGON_VERTEX_EXCLUSION MAV_CMD = 5002 + // Circular fence area. The vehicle must stay inside this area. + MAV_CMD_NAV_FENCE_CIRCLE_INCLUSION MAV_CMD = 5003 + // Circular fence area. The vehicle must stay outside this area. + MAV_CMD_NAV_FENCE_CIRCLE_EXCLUSION MAV_CMD = 5004 + // Rally point. You can have multiple rally points defined. + MAV_CMD_NAV_RALLY_POINT MAV_CMD = 5100 + // Commands the vehicle to respond with a sequence of messages UAVCAN_NODE_INFO, one message per every UAVCAN node that is online. Note that some of the response messages can be lost, which the receiver can detect easily by checking whether every received UAVCAN_NODE_STATUS has a matching message UAVCAN_NODE_INFO received earlier; if not, this command should be sent again in order to request re-transmission of the node information messages. + MAV_CMD_UAVCAN_GET_NODE_INFO MAV_CMD = 5200 + // Trigger the start of an ADSB-out IDENT. This should only be used when requested to do so by an Air Traffic Controller in controlled airspace. This starts the IDENT which is then typically held for 18 seconds by the hardware per the Mode A, C, and S transponder spec. + MAV_CMD_DO_ADSB_OUT_IDENT MAV_CMD = 10001 + // Deploy payload on a Lat / Lon / Alt position. This includes the navigation to reach the required release position and velocity. + MAV_CMD_PAYLOAD_PREPARE_DEPLOY MAV_CMD = 30001 + // Control the payload deployment. + MAV_CMD_PAYLOAD_CONTROL_DEPLOY MAV_CMD = 30002 + // Magnetometer calibration based on provided known yaw. This allows for fast calibration using WMM field tables in the vehicle, given only the known yaw of the vehicle. If Latitude and longitude are both zero then use the current vehicle location. + MAV_CMD_FIXED_MAG_CAL_YAW MAV_CMD = 42006 + // Command to operate winch. + MAV_CMD_DO_WINCH MAV_CMD = 42600 + // User defined waypoint item. Ground Station will show the Vehicle as flying through this item. + MAV_CMD_WAYPOINT_USER_1 MAV_CMD = 31000 + // User defined waypoint item. Ground Station will show the Vehicle as flying through this item. + MAV_CMD_WAYPOINT_USER_2 MAV_CMD = 31001 + // User defined waypoint item. Ground Station will show the Vehicle as flying through this item. + MAV_CMD_WAYPOINT_USER_3 MAV_CMD = 31002 + // User defined waypoint item. Ground Station will show the Vehicle as flying through this item. + MAV_CMD_WAYPOINT_USER_4 MAV_CMD = 31003 + // User defined waypoint item. Ground Station will show the Vehicle as flying through this item. + MAV_CMD_WAYPOINT_USER_5 MAV_CMD = 31004 + // User defined spatial item. Ground Station will not show the Vehicle as flying through this item. Example: ROI item. + MAV_CMD_SPATIAL_USER_1 MAV_CMD = 31005 + // User defined spatial item. Ground Station will not show the Vehicle as flying through this item. Example: ROI item. + MAV_CMD_SPATIAL_USER_2 MAV_CMD = 31006 + // User defined spatial item. Ground Station will not show the Vehicle as flying through this item. Example: ROI item. + MAV_CMD_SPATIAL_USER_3 MAV_CMD = 31007 + // User defined spatial item. Ground Station will not show the Vehicle as flying through this item. Example: ROI item. + MAV_CMD_SPATIAL_USER_4 MAV_CMD = 31008 + // User defined spatial item. Ground Station will not show the Vehicle as flying through this item. Example: ROI item. + MAV_CMD_SPATIAL_USER_5 MAV_CMD = 31009 + // User defined command. Ground Station will not show the Vehicle as flying through this item. Example: MAV_CMD_DO_SET_PARAMETER item. + MAV_CMD_USER_1 MAV_CMD = 31010 + // User defined command. Ground Station will not show the Vehicle as flying through this item. Example: MAV_CMD_DO_SET_PARAMETER item. + MAV_CMD_USER_2 MAV_CMD = 31011 + // User defined command. Ground Station will not show the Vehicle as flying through this item. Example: MAV_CMD_DO_SET_PARAMETER item. + MAV_CMD_USER_3 MAV_CMD = 31012 + // User defined command. Ground Station will not show the Vehicle as flying through this item. Example: MAV_CMD_DO_SET_PARAMETER item. + MAV_CMD_USER_4 MAV_CMD = 31013 + // User defined command. Ground Station will not show the Vehicle as flying through this item. Example: MAV_CMD_DO_SET_PARAMETER item. + MAV_CMD_USER_5 MAV_CMD = 31014 + // AVSS defined command. Set PRS arm statuses. + MAV_CMD_PRS_SET_ARM MAV_CMD = 60050 + // AVSS defined command. Gets PRS arm statuses + MAV_CMD_PRS_GET_ARM MAV_CMD = 60051 + // AVSS defined command. Get the PRS battery voltage in millivolts + MAV_CMD_PRS_GET_BATTERY MAV_CMD = 60052 + // AVSS defined command. Get the PRS error statuses. + MAV_CMD_PRS_GET_ERR MAV_CMD = 60053 + // AVSS defined command. Set the ATS arming altitude in meters. + MAV_CMD_PRS_SET_ARM_ALTI MAV_CMD = 60070 + // AVSS defined command. Get the ATS arming altitude in meters. + MAV_CMD_PRS_GET_ARM_ALTI MAV_CMD = 60071 + // AVSS defined command. Shuts down the PRS system. + MAV_CMD_PRS_SHUTDOWN MAV_CMD = 60072 + // AVSS defined command. Set the threshold to charge from outside in millivolts + MAV_CMD_PRS_SET_CHARGE_MV MAV_CMD = 60073 + // AVSS defined command. Get the threshold to charge from outside in millivolts. + MAV_CMD_PRS_GET_CHARGE_MV MAV_CMD = 60074 + // AVSS defined command. Set the timeout between FTS request and deploying the chute. + MAV_CMD_PRS_SET_TIMEOUT MAV_CMD = 60075 + // AVSS defined command. Get the timeout between FTS request and deploying the chute. + MAV_CMD_PRS_GET_TIMEOUT MAV_CMD = 60076 + // AVSS defined command. Set up the PRS to connect to the drone.. + MAV_CMD_PRS_SET_FTS_CONNECT MAV_CMD = 60077 + // AVSS defined command. Get the connection status of PRS and drone. + MAV_CMD_PRS_GET_FTS_CONNECT MAV_CMD = 60078 +) + +var labels_MAV_CMD = map[MAV_CMD]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAV_CMD) MarshalText() ([]byte, error) { + if l, ok := labels_MAV_CMD[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAV_CMD = map[string]MAV_CMD{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAV_CMD) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAV_CMD[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAV_CMD) String() string { + if l, ok := labels_MAV_CMD[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/avssuas/enum_mav_cmd_ack.go b/pkg/dialects/avssuas/enum_mav_cmd_ack.go new file mode 100644 index 000000000..7a6762a79 --- /dev/null +++ b/pkg/dialects/avssuas/enum_mav_cmd_ack.go @@ -0,0 +1,60 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package avssuas + +import ( + "errors" +) + +// ACK / NACK / ERROR values as a result of MAV_CMDs and for mission item transmission. +type MAV_CMD_ACK int + +const ( + // Command / mission item is ok. + MAV_CMD_ACK_OK MAV_CMD_ACK = 0 + // Generic error message if none of the other reasons fails or if no detailed error reporting is implemented. + MAV_CMD_ACK_ERR_FAIL MAV_CMD_ACK = 1 + // The system is refusing to accept this command from this source / communication partner. + MAV_CMD_ACK_ERR_ACCESS_DENIED MAV_CMD_ACK = 2 + // Command or mission item is not supported, other commands would be accepted. + MAV_CMD_ACK_ERR_NOT_SUPPORTED MAV_CMD_ACK = 3 + // The coordinate frame of this command / mission item is not supported. + MAV_CMD_ACK_ERR_COORDINATE_FRAME_NOT_SUPPORTED MAV_CMD_ACK = 4 + // The coordinate frame of this command is ok, but he coordinate values exceed the safety limits of this system. This is a generic error, please use the more specific error messages below if possible. + MAV_CMD_ACK_ERR_COORDINATES_OUT_OF_RANGE MAV_CMD_ACK = 5 + // The X or latitude value is out of range. + MAV_CMD_ACK_ERR_X_LAT_OUT_OF_RANGE MAV_CMD_ACK = 6 + // The Y or longitude value is out of range. + MAV_CMD_ACK_ERR_Y_LON_OUT_OF_RANGE MAV_CMD_ACK = 7 + // The Z or altitude value is out of range. + MAV_CMD_ACK_ERR_Z_ALT_OUT_OF_RANGE MAV_CMD_ACK = 8 +) + +var labels_MAV_CMD_ACK = map[MAV_CMD_ACK]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAV_CMD_ACK) MarshalText() ([]byte, error) { + if l, ok := labels_MAV_CMD_ACK[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAV_CMD_ACK = map[string]MAV_CMD_ACK{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAV_CMD_ACK) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAV_CMD_ACK[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAV_CMD_ACK) String() string { + if l, ok := labels_MAV_CMD_ACK[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/avssuas/enum_mav_collision_action.go b/pkg/dialects/avssuas/enum_mav_collision_action.go new file mode 100644 index 000000000..7b169eeaf --- /dev/null +++ b/pkg/dialects/avssuas/enum_mav_collision_action.go @@ -0,0 +1,56 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package avssuas + +import ( + "errors" +) + +// Possible actions an aircraft can take to avoid a collision. +type MAV_COLLISION_ACTION int + +const ( + // Ignore any potential collisions + MAV_COLLISION_ACTION_NONE MAV_COLLISION_ACTION = 0 + // Report potential collision + MAV_COLLISION_ACTION_REPORT MAV_COLLISION_ACTION = 1 + // Ascend or Descend to avoid threat + MAV_COLLISION_ACTION_ASCEND_OR_DESCEND MAV_COLLISION_ACTION = 2 + // Move horizontally to avoid threat + MAV_COLLISION_ACTION_MOVE_HORIZONTALLY MAV_COLLISION_ACTION = 3 + // Aircraft to move perpendicular to the collision's velocity vector + MAV_COLLISION_ACTION_MOVE_PERPENDICULAR MAV_COLLISION_ACTION = 4 + // Aircraft to fly directly back to its launch point + MAV_COLLISION_ACTION_RTL MAV_COLLISION_ACTION = 5 + // Aircraft to stop in place + MAV_COLLISION_ACTION_HOVER MAV_COLLISION_ACTION = 6 +) + +var labels_MAV_COLLISION_ACTION = map[MAV_COLLISION_ACTION]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAV_COLLISION_ACTION) MarshalText() ([]byte, error) { + if l, ok := labels_MAV_COLLISION_ACTION[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAV_COLLISION_ACTION = map[string]MAV_COLLISION_ACTION{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAV_COLLISION_ACTION) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAV_COLLISION_ACTION[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAV_COLLISION_ACTION) String() string { + if l, ok := labels_MAV_COLLISION_ACTION[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/avssuas/enum_mav_collision_src.go b/pkg/dialects/avssuas/enum_mav_collision_src.go new file mode 100644 index 000000000..9b1976743 --- /dev/null +++ b/pkg/dialects/avssuas/enum_mav_collision_src.go @@ -0,0 +1,46 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package avssuas + +import ( + "errors" +) + +// Source of information about this collision. +type MAV_COLLISION_SRC int + +const ( + // ID field references ADSB_VEHICLE packets + MAV_COLLISION_SRC_ADSB MAV_COLLISION_SRC = 0 + // ID field references MAVLink SRC ID + MAV_COLLISION_SRC_MAVLINK_GPS_GLOBAL_INT MAV_COLLISION_SRC = 1 +) + +var labels_MAV_COLLISION_SRC = map[MAV_COLLISION_SRC]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAV_COLLISION_SRC) MarshalText() ([]byte, error) { + if l, ok := labels_MAV_COLLISION_SRC[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAV_COLLISION_SRC = map[string]MAV_COLLISION_SRC{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAV_COLLISION_SRC) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAV_COLLISION_SRC[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAV_COLLISION_SRC) String() string { + if l, ok := labels_MAV_COLLISION_SRC[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/avssuas/enum_mav_collision_threat_level.go b/pkg/dialects/avssuas/enum_mav_collision_threat_level.go new file mode 100644 index 000000000..8a34228bf --- /dev/null +++ b/pkg/dialects/avssuas/enum_mav_collision_threat_level.go @@ -0,0 +1,48 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package avssuas + +import ( + "errors" +) + +// Aircraft-rated danger from this threat. +type MAV_COLLISION_THREAT_LEVEL int + +const ( + // Not a threat + MAV_COLLISION_THREAT_LEVEL_NONE MAV_COLLISION_THREAT_LEVEL = 0 + // Craft is mildly concerned about this threat + MAV_COLLISION_THREAT_LEVEL_LOW MAV_COLLISION_THREAT_LEVEL = 1 + // Craft is panicking, and may take actions to avoid threat + MAV_COLLISION_THREAT_LEVEL_HIGH MAV_COLLISION_THREAT_LEVEL = 2 +) + +var labels_MAV_COLLISION_THREAT_LEVEL = map[MAV_COLLISION_THREAT_LEVEL]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAV_COLLISION_THREAT_LEVEL) MarshalText() ([]byte, error) { + if l, ok := labels_MAV_COLLISION_THREAT_LEVEL[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAV_COLLISION_THREAT_LEVEL = map[string]MAV_COLLISION_THREAT_LEVEL{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAV_COLLISION_THREAT_LEVEL) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAV_COLLISION_THREAT_LEVEL[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAV_COLLISION_THREAT_LEVEL) String() string { + if l, ok := labels_MAV_COLLISION_THREAT_LEVEL[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/avssuas/enum_mav_component.go b/pkg/dialects/avssuas/enum_mav_component.go new file mode 100644 index 000000000..45a9f245d --- /dev/null +++ b/pkg/dialects/avssuas/enum_mav_component.go @@ -0,0 +1,310 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package avssuas + +import ( + "errors" +) + +// Component ids (values) for the different types and instances of onboard hardware/software that might make up a MAVLink system (autopilot, cameras, servos, GPS systems, avoidance systems etc.). +// Components must use the appropriate ID in their source address when sending messages. Components can also use IDs to determine if they are the intended recipient of an incoming message. The MAV_COMP_ID_ALL value is used to indicate messages that must be processed by all components. +// When creating new entries, components that can have multiple instances (e.g. cameras, servos etc.) should be allocated sequential values. An appropriate number of values should be left free after these components to allow the number of instances to be expanded. +type MAV_COMPONENT int + +const ( + // Target id (target_component) used to broadcast messages to all components of the receiving system. Components should attempt to process messages with this component ID and forward to components on any other interfaces. Note: This is not a valid *source* component id for a message. + MAV_COMP_ID_ALL MAV_COMPONENT = 0 + // System flight controller component ("autopilot"). Only one autopilot is expected in a particular system. + MAV_COMP_ID_AUTOPILOT1 MAV_COMPONENT = 1 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER1 MAV_COMPONENT = 25 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER2 MAV_COMPONENT = 26 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER3 MAV_COMPONENT = 27 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER4 MAV_COMPONENT = 28 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER5 MAV_COMPONENT = 29 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER6 MAV_COMPONENT = 30 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER7 MAV_COMPONENT = 31 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER8 MAV_COMPONENT = 32 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER9 MAV_COMPONENT = 33 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER10 MAV_COMPONENT = 34 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER11 MAV_COMPONENT = 35 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER12 MAV_COMPONENT = 36 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER13 MAV_COMPONENT = 37 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER14 MAV_COMPONENT = 38 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER15 MAV_COMPONENT = 39 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER16 MAV_COMPONENT = 40 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER17 MAV_COMPONENT = 41 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER18 MAV_COMPONENT = 42 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER19 MAV_COMPONENT = 43 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER20 MAV_COMPONENT = 44 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER21 MAV_COMPONENT = 45 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER22 MAV_COMPONENT = 46 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER23 MAV_COMPONENT = 47 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER24 MAV_COMPONENT = 48 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER25 MAV_COMPONENT = 49 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER26 MAV_COMPONENT = 50 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER27 MAV_COMPONENT = 51 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER28 MAV_COMPONENT = 52 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER29 MAV_COMPONENT = 53 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER30 MAV_COMPONENT = 54 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER31 MAV_COMPONENT = 55 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER32 MAV_COMPONENT = 56 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER33 MAV_COMPONENT = 57 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER34 MAV_COMPONENT = 58 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER35 MAV_COMPONENT = 59 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER36 MAV_COMPONENT = 60 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER37 MAV_COMPONENT = 61 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER38 MAV_COMPONENT = 62 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER39 MAV_COMPONENT = 63 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER40 MAV_COMPONENT = 64 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER41 MAV_COMPONENT = 65 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER42 MAV_COMPONENT = 66 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER43 MAV_COMPONENT = 67 + // Telemetry radio (e.g. SiK radio, or other component that emits RADIO_STATUS messages). + MAV_COMP_ID_TELEMETRY_RADIO MAV_COMPONENT = 68 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER45 MAV_COMPONENT = 69 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER46 MAV_COMPONENT = 70 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER47 MAV_COMPONENT = 71 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER48 MAV_COMPONENT = 72 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER49 MAV_COMPONENT = 73 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER50 MAV_COMPONENT = 74 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER51 MAV_COMPONENT = 75 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER52 MAV_COMPONENT = 76 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER53 MAV_COMPONENT = 77 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER54 MAV_COMPONENT = 78 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER55 MAV_COMPONENT = 79 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER56 MAV_COMPONENT = 80 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER57 MAV_COMPONENT = 81 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER58 MAV_COMPONENT = 82 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER59 MAV_COMPONENT = 83 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER60 MAV_COMPONENT = 84 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER61 MAV_COMPONENT = 85 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER62 MAV_COMPONENT = 86 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER63 MAV_COMPONENT = 87 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER64 MAV_COMPONENT = 88 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER65 MAV_COMPONENT = 89 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER66 MAV_COMPONENT = 90 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER67 MAV_COMPONENT = 91 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER68 MAV_COMPONENT = 92 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER69 MAV_COMPONENT = 93 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER70 MAV_COMPONENT = 94 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER71 MAV_COMPONENT = 95 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER72 MAV_COMPONENT = 96 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER73 MAV_COMPONENT = 97 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER74 MAV_COMPONENT = 98 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER75 MAV_COMPONENT = 99 + // Camera #1. + MAV_COMP_ID_CAMERA MAV_COMPONENT = 100 + // Camera #2. + MAV_COMP_ID_CAMERA2 MAV_COMPONENT = 101 + // Camera #3. + MAV_COMP_ID_CAMERA3 MAV_COMPONENT = 102 + // Camera #4. + MAV_COMP_ID_CAMERA4 MAV_COMPONENT = 103 + // Camera #5. + MAV_COMP_ID_CAMERA5 MAV_COMPONENT = 104 + // Camera #6. + MAV_COMP_ID_CAMERA6 MAV_COMPONENT = 105 + // Servo #1. + MAV_COMP_ID_SERVO1 MAV_COMPONENT = 140 + // Servo #2. + MAV_COMP_ID_SERVO2 MAV_COMPONENT = 141 + // Servo #3. + MAV_COMP_ID_SERVO3 MAV_COMPONENT = 142 + // Servo #4. + MAV_COMP_ID_SERVO4 MAV_COMPONENT = 143 + // Servo #5. + MAV_COMP_ID_SERVO5 MAV_COMPONENT = 144 + // Servo #6. + MAV_COMP_ID_SERVO6 MAV_COMPONENT = 145 + // Servo #7. + MAV_COMP_ID_SERVO7 MAV_COMPONENT = 146 + // Servo #8. + MAV_COMP_ID_SERVO8 MAV_COMPONENT = 147 + // Servo #9. + MAV_COMP_ID_SERVO9 MAV_COMPONENT = 148 + // Servo #10. + MAV_COMP_ID_SERVO10 MAV_COMPONENT = 149 + // Servo #11. + MAV_COMP_ID_SERVO11 MAV_COMPONENT = 150 + // Servo #12. + MAV_COMP_ID_SERVO12 MAV_COMPONENT = 151 + // Servo #13. + MAV_COMP_ID_SERVO13 MAV_COMPONENT = 152 + // Servo #14. + MAV_COMP_ID_SERVO14 MAV_COMPONENT = 153 + // Gimbal #1. + MAV_COMP_ID_GIMBAL MAV_COMPONENT = 154 + // Logging component. + MAV_COMP_ID_LOG MAV_COMPONENT = 155 + // Automatic Dependent Surveillance-Broadcast (ADS-B) component. + MAV_COMP_ID_ADSB MAV_COMPONENT = 156 + // On Screen Display (OSD) devices for video links. + MAV_COMP_ID_OSD MAV_COMPONENT = 157 + // Generic autopilot peripheral component ID. Meant for devices that do not implement the parameter microservice. + MAV_COMP_ID_PERIPHERAL MAV_COMPONENT = 158 + // Gimbal ID for QX1. + MAV_COMP_ID_QX1_GIMBAL MAV_COMPONENT = 159 + // FLARM collision alert component. + MAV_COMP_ID_FLARM MAV_COMPONENT = 160 + // Parachute component. + MAV_COMP_ID_PARACHUTE MAV_COMPONENT = 161 + // Gimbal #2. + MAV_COMP_ID_GIMBAL2 MAV_COMPONENT = 171 + // Gimbal #3. + MAV_COMP_ID_GIMBAL3 MAV_COMPONENT = 172 + // Gimbal #4 + MAV_COMP_ID_GIMBAL4 MAV_COMPONENT = 173 + // Gimbal #5. + MAV_COMP_ID_GIMBAL5 MAV_COMPONENT = 174 + // Gimbal #6. + MAV_COMP_ID_GIMBAL6 MAV_COMPONENT = 175 + // Battery #1. + MAV_COMP_ID_BATTERY MAV_COMPONENT = 180 + // Battery #2. + MAV_COMP_ID_BATTERY2 MAV_COMPONENT = 181 + // Component that can generate/supply a mission flight plan (e.g. GCS or developer API). + MAV_COMP_ID_MISSIONPLANNER MAV_COMPONENT = 190 + // Component that lives on the onboard computer (companion computer) and has some generic functionalities, such as settings system parameters and monitoring the status of some processes that don't directly speak mavlink and so on. + MAV_COMP_ID_ONBOARD_COMPUTER MAV_COMPONENT = 191 + // Component that lives on the onboard computer (companion computer) and has some generic functionalities, such as settings system parameters and monitoring the status of some processes that don't directly speak mavlink and so on. + MAV_COMP_ID_ONBOARD_COMPUTER2 MAV_COMPONENT = 192 + // Component that lives on the onboard computer (companion computer) and has some generic functionalities, such as settings system parameters and monitoring the status of some processes that don't directly speak mavlink and so on. + MAV_COMP_ID_ONBOARD_COMPUTER3 MAV_COMPONENT = 193 + // Component that lives on the onboard computer (companion computer) and has some generic functionalities, such as settings system parameters and monitoring the status of some processes that don't directly speak mavlink and so on. + MAV_COMP_ID_ONBOARD_COMPUTER4 MAV_COMPONENT = 194 + // Component that finds an optimal path between points based on a certain constraint (e.g. minimum snap, shortest path, cost, etc.). + MAV_COMP_ID_PATHPLANNER MAV_COMPONENT = 195 + // Component that plans a collision free path between two points. + MAV_COMP_ID_OBSTACLE_AVOIDANCE MAV_COMPONENT = 196 + // Component that provides position estimates using VIO techniques. + MAV_COMP_ID_VISUAL_INERTIAL_ODOMETRY MAV_COMPONENT = 197 + // Component that manages pairing of vehicle and GCS. + MAV_COMP_ID_PAIRING_MANAGER MAV_COMPONENT = 198 + // Inertial Measurement Unit (IMU) #1. + MAV_COMP_ID_IMU MAV_COMPONENT = 200 + // Inertial Measurement Unit (IMU) #2. + MAV_COMP_ID_IMU_2 MAV_COMPONENT = 201 + // Inertial Measurement Unit (IMU) #3. + MAV_COMP_ID_IMU_3 MAV_COMPONENT = 202 + // GPS #1. + MAV_COMP_ID_GPS MAV_COMPONENT = 220 + // GPS #2. + MAV_COMP_ID_GPS2 MAV_COMPONENT = 221 + // Open Drone ID transmitter/receiver (Bluetooth/WiFi/Internet). + MAV_COMP_ID_ODID_TXRX_1 MAV_COMPONENT = 236 + // Open Drone ID transmitter/receiver (Bluetooth/WiFi/Internet). + MAV_COMP_ID_ODID_TXRX_2 MAV_COMPONENT = 237 + // Open Drone ID transmitter/receiver (Bluetooth/WiFi/Internet). + MAV_COMP_ID_ODID_TXRX_3 MAV_COMPONENT = 238 + // Component to bridge MAVLink to UDP (i.e. from a UART). + MAV_COMP_ID_UDP_BRIDGE MAV_COMPONENT = 240 + // Component to bridge to UART (i.e. from UDP). + MAV_COMP_ID_UART_BRIDGE MAV_COMPONENT = 241 + // Component handling TUNNEL messages (e.g. vendor specific GUI of a component). + MAV_COMP_ID_TUNNEL_NODE MAV_COMPONENT = 242 + // Component for handling system messages (e.g. to ARM, takeoff, etc.). + MAV_COMP_ID_SYSTEM_CONTROL MAV_COMPONENT = 250 +) + +var labels_MAV_COMPONENT = map[MAV_COMPONENT]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAV_COMPONENT) MarshalText() ([]byte, error) { + if l, ok := labels_MAV_COMPONENT[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAV_COMPONENT = map[string]MAV_COMPONENT{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAV_COMPONENT) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAV_COMPONENT[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAV_COMPONENT) String() string { + if l, ok := labels_MAV_COMPONENT[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/avssuas/enum_mav_data_stream.go b/pkg/dialects/avssuas/enum_mav_data_stream.go new file mode 100644 index 000000000..40b77d86a --- /dev/null +++ b/pkg/dialects/avssuas/enum_mav_data_stream.go @@ -0,0 +1,62 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package avssuas + +import ( + "errors" +) + +// A data stream is not a fixed set of messages, but rather a +// recommendation to the autopilot software. Individual autopilots may or may not obey +// the recommended messages. +type MAV_DATA_STREAM int + +const ( + // Enable all data streams + MAV_DATA_STREAM_ALL MAV_DATA_STREAM = 0 + // Enable IMU_RAW, GPS_RAW, GPS_STATUS packets. + MAV_DATA_STREAM_RAW_SENSORS MAV_DATA_STREAM = 1 + // Enable GPS_STATUS, CONTROL_STATUS, AUX_STATUS + MAV_DATA_STREAM_EXTENDED_STATUS MAV_DATA_STREAM = 2 + // Enable RC_CHANNELS_SCALED, RC_CHANNELS_RAW, SERVO_OUTPUT_RAW + MAV_DATA_STREAM_RC_CHANNELS MAV_DATA_STREAM = 3 + // Enable ATTITUDE_CONTROLLER_OUTPUT, POSITION_CONTROLLER_OUTPUT, NAV_CONTROLLER_OUTPUT. + MAV_DATA_STREAM_RAW_CONTROLLER MAV_DATA_STREAM = 4 + // Enable LOCAL_POSITION, GLOBAL_POSITION_INT messages. + MAV_DATA_STREAM_POSITION MAV_DATA_STREAM = 6 + // Dependent on the autopilot + MAV_DATA_STREAM_EXTRA1 MAV_DATA_STREAM = 10 + // Dependent on the autopilot + MAV_DATA_STREAM_EXTRA2 MAV_DATA_STREAM = 11 + // Dependent on the autopilot + MAV_DATA_STREAM_EXTRA3 MAV_DATA_STREAM = 12 +) + +var labels_MAV_DATA_STREAM = map[MAV_DATA_STREAM]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAV_DATA_STREAM) MarshalText() ([]byte, error) { + if l, ok := labels_MAV_DATA_STREAM[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAV_DATA_STREAM = map[string]MAV_DATA_STREAM{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAV_DATA_STREAM) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAV_DATA_STREAM[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAV_DATA_STREAM) String() string { + if l, ok := labels_MAV_DATA_STREAM[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/avssuas/enum_mav_distance_sensor.go b/pkg/dialects/avssuas/enum_mav_distance_sensor.go new file mode 100644 index 000000000..26d6622a8 --- /dev/null +++ b/pkg/dialects/avssuas/enum_mav_distance_sensor.go @@ -0,0 +1,52 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package avssuas + +import ( + "errors" +) + +// Enumeration of distance sensor types +type MAV_DISTANCE_SENSOR int + +const ( + // Laser rangefinder, e.g. LightWare SF02/F or PulsedLight units + MAV_DISTANCE_SENSOR_LASER MAV_DISTANCE_SENSOR = 0 + // Ultrasound rangefinder, e.g. MaxBotix units + MAV_DISTANCE_SENSOR_ULTRASOUND MAV_DISTANCE_SENSOR = 1 + // Infrared rangefinder, e.g. Sharp units + MAV_DISTANCE_SENSOR_INFRARED MAV_DISTANCE_SENSOR = 2 + // Radar type, e.g. uLanding units + MAV_DISTANCE_SENSOR_RADAR MAV_DISTANCE_SENSOR = 3 + // Broken or unknown type, e.g. analog units + MAV_DISTANCE_SENSOR_UNKNOWN MAV_DISTANCE_SENSOR = 4 +) + +var labels_MAV_DISTANCE_SENSOR = map[MAV_DISTANCE_SENSOR]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAV_DISTANCE_SENSOR) MarshalText() ([]byte, error) { + if l, ok := labels_MAV_DISTANCE_SENSOR[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAV_DISTANCE_SENSOR = map[string]MAV_DISTANCE_SENSOR{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAV_DISTANCE_SENSOR) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAV_DISTANCE_SENSOR[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAV_DISTANCE_SENSOR) String() string { + if l, ok := labels_MAV_DISTANCE_SENSOR[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/avssuas/enum_mav_do_reposition_flags.go b/pkg/dialects/avssuas/enum_mav_do_reposition_flags.go new file mode 100644 index 000000000..6b1403ab3 --- /dev/null +++ b/pkg/dialects/avssuas/enum_mav_do_reposition_flags.go @@ -0,0 +1,44 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package avssuas + +import ( + "errors" +) + +// Bitmap of options for the MAV_CMD_DO_REPOSITION +type MAV_DO_REPOSITION_FLAGS int + +const ( + // The aircraft should immediately transition into guided. This should not be set for follow me applications + MAV_DO_REPOSITION_FLAGS_CHANGE_MODE MAV_DO_REPOSITION_FLAGS = 1 +) + +var labels_MAV_DO_REPOSITION_FLAGS = map[MAV_DO_REPOSITION_FLAGS]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAV_DO_REPOSITION_FLAGS) MarshalText() ([]byte, error) { + if l, ok := labels_MAV_DO_REPOSITION_FLAGS[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAV_DO_REPOSITION_FLAGS = map[string]MAV_DO_REPOSITION_FLAGS{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAV_DO_REPOSITION_FLAGS) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAV_DO_REPOSITION_FLAGS[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAV_DO_REPOSITION_FLAGS) String() string { + if l, ok := labels_MAV_DO_REPOSITION_FLAGS[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/avssuas/enum_mav_estimator_type.go b/pkg/dialects/avssuas/enum_mav_estimator_type.go new file mode 100644 index 000000000..ec301e754 --- /dev/null +++ b/pkg/dialects/avssuas/enum_mav_estimator_type.go @@ -0,0 +1,60 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package avssuas + +import ( + "errors" +) + +// Enumeration of estimator types +type MAV_ESTIMATOR_TYPE int + +const ( + // Unknown type of the estimator. + MAV_ESTIMATOR_TYPE_UNKNOWN MAV_ESTIMATOR_TYPE = 0 + // This is a naive estimator without any real covariance feedback. + MAV_ESTIMATOR_TYPE_NAIVE MAV_ESTIMATOR_TYPE = 1 + // Computer vision based estimate. Might be up to scale. + MAV_ESTIMATOR_TYPE_VISION MAV_ESTIMATOR_TYPE = 2 + // Visual-inertial estimate. + MAV_ESTIMATOR_TYPE_VIO MAV_ESTIMATOR_TYPE = 3 + // Plain GPS estimate. + MAV_ESTIMATOR_TYPE_GPS MAV_ESTIMATOR_TYPE = 4 + // Estimator integrating GPS and inertial sensing. + MAV_ESTIMATOR_TYPE_GPS_INS MAV_ESTIMATOR_TYPE = 5 + // Estimate from external motion capturing system. + MAV_ESTIMATOR_TYPE_MOCAP MAV_ESTIMATOR_TYPE = 6 + // Estimator based on lidar sensor input. + MAV_ESTIMATOR_TYPE_LIDAR MAV_ESTIMATOR_TYPE = 7 + // Estimator on autopilot. + MAV_ESTIMATOR_TYPE_AUTOPILOT MAV_ESTIMATOR_TYPE = 8 +) + +var labels_MAV_ESTIMATOR_TYPE = map[MAV_ESTIMATOR_TYPE]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAV_ESTIMATOR_TYPE) MarshalText() ([]byte, error) { + if l, ok := labels_MAV_ESTIMATOR_TYPE[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAV_ESTIMATOR_TYPE = map[string]MAV_ESTIMATOR_TYPE{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAV_ESTIMATOR_TYPE) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAV_ESTIMATOR_TYPE[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAV_ESTIMATOR_TYPE) String() string { + if l, ok := labels_MAV_ESTIMATOR_TYPE[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/avssuas/enum_mav_event_current_sequence_flags.go b/pkg/dialects/avssuas/enum_mav_event_current_sequence_flags.go new file mode 100644 index 000000000..0e925cdf1 --- /dev/null +++ b/pkg/dialects/avssuas/enum_mav_event_current_sequence_flags.go @@ -0,0 +1,44 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package avssuas + +import ( + "errors" +) + +// Flags for CURRENT_EVENT_SEQUENCE. +type MAV_EVENT_CURRENT_SEQUENCE_FLAGS int + +const ( + // A sequence reset has happened (e.g. vehicle reboot). + MAV_EVENT_CURRENT_SEQUENCE_FLAGS_RESET MAV_EVENT_CURRENT_SEQUENCE_FLAGS = 1 +) + +var labels_MAV_EVENT_CURRENT_SEQUENCE_FLAGS = map[MAV_EVENT_CURRENT_SEQUENCE_FLAGS]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAV_EVENT_CURRENT_SEQUENCE_FLAGS) MarshalText() ([]byte, error) { + if l, ok := labels_MAV_EVENT_CURRENT_SEQUENCE_FLAGS[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAV_EVENT_CURRENT_SEQUENCE_FLAGS = map[string]MAV_EVENT_CURRENT_SEQUENCE_FLAGS{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAV_EVENT_CURRENT_SEQUENCE_FLAGS) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAV_EVENT_CURRENT_SEQUENCE_FLAGS[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAV_EVENT_CURRENT_SEQUENCE_FLAGS) String() string { + if l, ok := labels_MAV_EVENT_CURRENT_SEQUENCE_FLAGS[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/avssuas/enum_mav_event_error_reason.go b/pkg/dialects/avssuas/enum_mav_event_error_reason.go new file mode 100644 index 000000000..5b75b5dd9 --- /dev/null +++ b/pkg/dialects/avssuas/enum_mav_event_error_reason.go @@ -0,0 +1,44 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package avssuas + +import ( + "errors" +) + +// Reason for an event error response. +type MAV_EVENT_ERROR_REASON int + +const ( + // The requested event is not available (anymore). + MAV_EVENT_ERROR_REASON_UNAVAILABLE MAV_EVENT_ERROR_REASON = 0 +) + +var labels_MAV_EVENT_ERROR_REASON = map[MAV_EVENT_ERROR_REASON]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAV_EVENT_ERROR_REASON) MarshalText() ([]byte, error) { + if l, ok := labels_MAV_EVENT_ERROR_REASON[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAV_EVENT_ERROR_REASON = map[string]MAV_EVENT_ERROR_REASON{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAV_EVENT_ERROR_REASON) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAV_EVENT_ERROR_REASON[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAV_EVENT_ERROR_REASON) String() string { + if l, ok := labels_MAV_EVENT_ERROR_REASON[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/avssuas/enum_mav_frame.go b/pkg/dialects/avssuas/enum_mav_frame.go new file mode 100644 index 000000000..4e9b8384a --- /dev/null +++ b/pkg/dialects/avssuas/enum_mav_frame.go @@ -0,0 +1,100 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package avssuas + +import ( + "errors" +) + +// Co-ordinate frames used by MAVLink. Not all frames are supported by all commands, messages, or vehicles. +// +// Global frames use the following naming conventions: +// - "GLOBAL": Global co-ordinate frame with WGS84 latitude/longitude and altitude positive over mean sea level (MSL) by default. +// The following modifiers may be used with "GLOBAL": +// - "RELATIVE_ALT": Altitude is relative to the vehicle home position rather than MSL. +// - "TERRAIN_ALT": Altitude is relative to ground level rather than MSL. +// - "INT": Latitude/longitude (in degrees) are scaled by multiplying by 1E7. +// +// Local frames use the following naming conventions: +// - "LOCAL": Origin of local frame is fixed relative to earth. Unless otherwise specified this origin is the origin of the vehicle position-estimator ("EKF"). +// - "BODY": Origin of local frame travels with the vehicle. NOTE, "BODY" does NOT indicate alignment of frame axis with vehicle attitude. +// - "OFFSET": Deprecated synonym for "BODY" (origin travels with the vehicle). Not to be used for new frames. +// +// Some deprecated frames do not follow these conventions (e.g. MAV_FRAME_BODY_NED and MAV_FRAME_BODY_OFFSET_NED). +type MAV_FRAME int + +const ( + // Global (WGS84) coordinate frame + MSL altitude. First value / x: latitude, second value / y: longitude, third value / z: positive altitude over mean sea level (MSL). + MAV_FRAME_GLOBAL MAV_FRAME = 0 + // NED local tangent frame (x: North, y: East, z: Down) with origin fixed relative to earth. + MAV_FRAME_LOCAL_NED MAV_FRAME = 1 + // NOT a coordinate frame, indicates a mission command. + MAV_FRAME_MISSION MAV_FRAME = 2 + // Global (WGS84) coordinate frame + altitude relative to the home position. First value / x: latitude, second value / y: longitude, third value / z: positive altitude with 0 being at the altitude of the home location. + MAV_FRAME_GLOBAL_RELATIVE_ALT MAV_FRAME = 3 + // ENU local tangent frame (x: East, y: North, z: Up) with origin fixed relative to earth. + MAV_FRAME_LOCAL_ENU MAV_FRAME = 4 + // Global (WGS84) coordinate frame (scaled) + MSL altitude. First value / x: latitude in degrees*1E7, second value / y: longitude in degrees*1E7, third value / z: positive altitude over mean sea level (MSL). + MAV_FRAME_GLOBAL_INT MAV_FRAME = 5 + // Global (WGS84) coordinate frame (scaled) + altitude relative to the home position. First value / x: latitude in degrees*1E7, second value / y: longitude in degrees*1E7, third value / z: positive altitude with 0 being at the altitude of the home location. + MAV_FRAME_GLOBAL_RELATIVE_ALT_INT MAV_FRAME = 6 + // NED local tangent frame (x: North, y: East, z: Down) with origin that travels with the vehicle. + MAV_FRAME_LOCAL_OFFSET_NED MAV_FRAME = 7 + // Same as MAV_FRAME_LOCAL_NED when used to represent position values. Same as MAV_FRAME_BODY_FRD when used with velocity/accelaration values. + MAV_FRAME_BODY_NED MAV_FRAME = 8 + // This is the same as MAV_FRAME_BODY_FRD. + MAV_FRAME_BODY_OFFSET_NED MAV_FRAME = 9 + // Global (WGS84) coordinate frame with AGL altitude (at the waypoint coordinate). First value / x: latitude in degrees, second value / y: longitude in degrees, third value / z: positive altitude in meters with 0 being at ground level in terrain model. + MAV_FRAME_GLOBAL_TERRAIN_ALT MAV_FRAME = 10 + // Global (WGS84) coordinate frame (scaled) with AGL altitude (at the waypoint coordinate). First value / x: latitude in degrees*1E7, second value / y: longitude in degrees*1E7, third value / z: positive altitude in meters with 0 being at ground level in terrain model. + MAV_FRAME_GLOBAL_TERRAIN_ALT_INT MAV_FRAME = 11 + // FRD local tangent frame (x: Forward, y: Right, z: Down) with origin that travels with vehicle. The forward axis is aligned to the front of the vehicle in the horizontal plane. + MAV_FRAME_BODY_FRD MAV_FRAME = 12 + // MAV_FRAME_BODY_FLU - Body fixed frame of reference, Z-up (x: Forward, y: Left, z: Up). + MAV_FRAME_RESERVED_13 MAV_FRAME = 13 + // MAV_FRAME_MOCAP_NED - Odometry local coordinate frame of data given by a motion capture system, Z-down (x: North, y: East, z: Down). + MAV_FRAME_RESERVED_14 MAV_FRAME = 14 + // MAV_FRAME_MOCAP_ENU - Odometry local coordinate frame of data given by a motion capture system, Z-up (x: East, y: North, z: Up). + MAV_FRAME_RESERVED_15 MAV_FRAME = 15 + // MAV_FRAME_VISION_NED - Odometry local coordinate frame of data given by a vision estimation system, Z-down (x: North, y: East, z: Down). + MAV_FRAME_RESERVED_16 MAV_FRAME = 16 + // MAV_FRAME_VISION_ENU - Odometry local coordinate frame of data given by a vision estimation system, Z-up (x: East, y: North, z: Up). + MAV_FRAME_RESERVED_17 MAV_FRAME = 17 + // MAV_FRAME_ESTIM_NED - Odometry local coordinate frame of data given by an estimator running onboard the vehicle, Z-down (x: North, y: East, z: Down). + MAV_FRAME_RESERVED_18 MAV_FRAME = 18 + // MAV_FRAME_ESTIM_ENU - Odometry local coordinate frame of data given by an estimator running onboard the vehicle, Z-up (x: East, y: North, z: Up). + MAV_FRAME_RESERVED_19 MAV_FRAME = 19 + // FRD local tangent frame (x: Forward, y: Right, z: Down) with origin fixed relative to earth. The forward axis is aligned to the front of the vehicle in the horizontal plane. + MAV_FRAME_LOCAL_FRD MAV_FRAME = 20 + // FLU local tangent frame (x: Forward, y: Left, z: Up) with origin fixed relative to earth. The forward axis is aligned to the front of the vehicle in the horizontal plane. + MAV_FRAME_LOCAL_FLU MAV_FRAME = 21 +) + +var labels_MAV_FRAME = map[MAV_FRAME]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAV_FRAME) MarshalText() ([]byte, error) { + if l, ok := labels_MAV_FRAME[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAV_FRAME = map[string]MAV_FRAME{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAV_FRAME) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAV_FRAME[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAV_FRAME) String() string { + if l, ok := labels_MAV_FRAME[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/avssuas/enum_mav_generator_status_flag.go b/pkg/dialects/avssuas/enum_mav_generator_status_flag.go new file mode 100644 index 000000000..14565585e --- /dev/null +++ b/pkg/dialects/avssuas/enum_mav_generator_status_flag.go @@ -0,0 +1,88 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package avssuas + +import ( + "errors" +) + +// Flags to report status/failure cases for a power generator (used in GENERATOR_STATUS). Note that FAULTS are conditions that cause the generator to fail. Warnings are conditions that require attention before the next use (they indicate the system is not operating properly). +type MAV_GENERATOR_STATUS_FLAG int + +const ( + // Generator is off. + MAV_GENERATOR_STATUS_FLAG_OFF MAV_GENERATOR_STATUS_FLAG = 1 + // Generator is ready to start generating power. + MAV_GENERATOR_STATUS_FLAG_READY MAV_GENERATOR_STATUS_FLAG = 2 + // Generator is generating power. + MAV_GENERATOR_STATUS_FLAG_GENERATING MAV_GENERATOR_STATUS_FLAG = 4 + // Generator is charging the batteries (generating enough power to charge and provide the load). + MAV_GENERATOR_STATUS_FLAG_CHARGING MAV_GENERATOR_STATUS_FLAG = 8 + // Generator is operating at a reduced maximum power. + MAV_GENERATOR_STATUS_FLAG_REDUCED_POWER MAV_GENERATOR_STATUS_FLAG = 16 + // Generator is providing the maximum output. + MAV_GENERATOR_STATUS_FLAG_MAXPOWER MAV_GENERATOR_STATUS_FLAG = 32 + // Generator is near the maximum operating temperature, cooling is insufficient. + MAV_GENERATOR_STATUS_FLAG_OVERTEMP_WARNING MAV_GENERATOR_STATUS_FLAG = 64 + // Generator hit the maximum operating temperature and shutdown. + MAV_GENERATOR_STATUS_FLAG_OVERTEMP_FAULT MAV_GENERATOR_STATUS_FLAG = 128 + // Power electronics are near the maximum operating temperature, cooling is insufficient. + MAV_GENERATOR_STATUS_FLAG_ELECTRONICS_OVERTEMP_WARNING MAV_GENERATOR_STATUS_FLAG = 256 + // Power electronics hit the maximum operating temperature and shutdown. + MAV_GENERATOR_STATUS_FLAG_ELECTRONICS_OVERTEMP_FAULT MAV_GENERATOR_STATUS_FLAG = 512 + // Power electronics experienced a fault and shutdown. + MAV_GENERATOR_STATUS_FLAG_ELECTRONICS_FAULT MAV_GENERATOR_STATUS_FLAG = 1024 + // The power source supplying the generator failed e.g. mechanical generator stopped, tether is no longer providing power, solar cell is in shade, hydrogen reaction no longer happening. + MAV_GENERATOR_STATUS_FLAG_POWERSOURCE_FAULT MAV_GENERATOR_STATUS_FLAG = 2048 + // Generator controller having communication problems. + MAV_GENERATOR_STATUS_FLAG_COMMUNICATION_WARNING MAV_GENERATOR_STATUS_FLAG = 4096 + // Power electronic or generator cooling system error. + MAV_GENERATOR_STATUS_FLAG_COOLING_WARNING MAV_GENERATOR_STATUS_FLAG = 8192 + // Generator controller power rail experienced a fault. + MAV_GENERATOR_STATUS_FLAG_POWER_RAIL_FAULT MAV_GENERATOR_STATUS_FLAG = 16384 + // Generator controller exceeded the overcurrent threshold and shutdown to prevent damage. + MAV_GENERATOR_STATUS_FLAG_OVERCURRENT_FAULT MAV_GENERATOR_STATUS_FLAG = 32768 + // Generator controller detected a high current going into the batteries and shutdown to prevent battery damage. + MAV_GENERATOR_STATUS_FLAG_BATTERY_OVERCHARGE_CURRENT_FAULT MAV_GENERATOR_STATUS_FLAG = 65536 + // Generator controller exceeded it's overvoltage threshold and shutdown to prevent it exceeding the voltage rating. + MAV_GENERATOR_STATUS_FLAG_OVERVOLTAGE_FAULT MAV_GENERATOR_STATUS_FLAG = 131072 + // Batteries are under voltage (generator will not start). + MAV_GENERATOR_STATUS_FLAG_BATTERY_UNDERVOLT_FAULT MAV_GENERATOR_STATUS_FLAG = 262144 + // Generator start is inhibited by e.g. a safety switch. + MAV_GENERATOR_STATUS_FLAG_START_INHIBITED MAV_GENERATOR_STATUS_FLAG = 524288 + // Generator requires maintenance. + MAV_GENERATOR_STATUS_FLAG_MAINTENANCE_REQUIRED MAV_GENERATOR_STATUS_FLAG = 1048576 + // Generator is not ready to generate yet. + MAV_GENERATOR_STATUS_FLAG_WARMING_UP MAV_GENERATOR_STATUS_FLAG = 2097152 + // Generator is idle. + MAV_GENERATOR_STATUS_FLAG_IDLE MAV_GENERATOR_STATUS_FLAG = 4194304 +) + +var labels_MAV_GENERATOR_STATUS_FLAG = map[MAV_GENERATOR_STATUS_FLAG]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAV_GENERATOR_STATUS_FLAG) MarshalText() ([]byte, error) { + if l, ok := labels_MAV_GENERATOR_STATUS_FLAG[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAV_GENERATOR_STATUS_FLAG = map[string]MAV_GENERATOR_STATUS_FLAG{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAV_GENERATOR_STATUS_FLAG) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAV_GENERATOR_STATUS_FLAG[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAV_GENERATOR_STATUS_FLAG) String() string { + if l, ok := labels_MAV_GENERATOR_STATUS_FLAG[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/avssuas/enum_mav_goto.go b/pkg/dialects/avssuas/enum_mav_goto.go new file mode 100644 index 000000000..639406115 --- /dev/null +++ b/pkg/dialects/avssuas/enum_mav_goto.go @@ -0,0 +1,50 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package avssuas + +import ( + "errors" +) + +// Actions that may be specified in MAV_CMD_OVERRIDE_GOTO to override mission execution. +type MAV_GOTO int + +const ( + // Hold at the current position. + MAV_GOTO_DO_HOLD MAV_GOTO = 0 + // Continue with the next item in mission execution. + MAV_GOTO_DO_CONTINUE MAV_GOTO = 1 + // Hold at the current position of the system + MAV_GOTO_HOLD_AT_CURRENT_POSITION MAV_GOTO = 2 + // Hold at the position specified in the parameters of the DO_HOLD action + MAV_GOTO_HOLD_AT_SPECIFIED_POSITION MAV_GOTO = 3 +) + +var labels_MAV_GOTO = map[MAV_GOTO]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAV_GOTO) MarshalText() ([]byte, error) { + if l, ok := labels_MAV_GOTO[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAV_GOTO = map[string]MAV_GOTO{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAV_GOTO) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAV_GOTO[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAV_GOTO) String() string { + if l, ok := labels_MAV_GOTO[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/avssuas/enum_mav_landed_state.go b/pkg/dialects/avssuas/enum_mav_landed_state.go new file mode 100644 index 000000000..8e010acf7 --- /dev/null +++ b/pkg/dialects/avssuas/enum_mav_landed_state.go @@ -0,0 +1,52 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package avssuas + +import ( + "errors" +) + +// Enumeration of landed detector states +type MAV_LANDED_STATE int + +const ( + // MAV landed state is unknown + MAV_LANDED_STATE_UNDEFINED MAV_LANDED_STATE = 0 + // MAV is landed (on ground) + MAV_LANDED_STATE_ON_GROUND MAV_LANDED_STATE = 1 + // MAV is in air + MAV_LANDED_STATE_IN_AIR MAV_LANDED_STATE = 2 + // MAV currently taking off + MAV_LANDED_STATE_TAKEOFF MAV_LANDED_STATE = 3 + // MAV currently landing + MAV_LANDED_STATE_LANDING MAV_LANDED_STATE = 4 +) + +var labels_MAV_LANDED_STATE = map[MAV_LANDED_STATE]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAV_LANDED_STATE) MarshalText() ([]byte, error) { + if l, ok := labels_MAV_LANDED_STATE[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAV_LANDED_STATE = map[string]MAV_LANDED_STATE{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAV_LANDED_STATE) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAV_LANDED_STATE[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAV_LANDED_STATE) String() string { + if l, ok := labels_MAV_LANDED_STATE[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/avssuas/enum_mav_mission_result.go b/pkg/dialects/avssuas/enum_mav_mission_result.go new file mode 100644 index 000000000..dcb7b3ff3 --- /dev/null +++ b/pkg/dialects/avssuas/enum_mav_mission_result.go @@ -0,0 +1,74 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package avssuas + +import ( + "errors" +) + +// Result of mission operation (in a MISSION_ACK message). +type MAV_MISSION_RESULT int + +const ( + // mission accepted OK + MAV_MISSION_ACCEPTED MAV_MISSION_RESULT = 0 + // Generic error / not accepting mission commands at all right now. + MAV_MISSION_ERROR MAV_MISSION_RESULT = 1 + // Coordinate frame is not supported. + MAV_MISSION_UNSUPPORTED_FRAME MAV_MISSION_RESULT = 2 + // Command is not supported. + MAV_MISSION_UNSUPPORTED MAV_MISSION_RESULT = 3 + // Mission items exceed storage space. + MAV_MISSION_NO_SPACE MAV_MISSION_RESULT = 4 + // One of the parameters has an invalid value. + MAV_MISSION_INVALID MAV_MISSION_RESULT = 5 + // param1 has an invalid value. + MAV_MISSION_INVALID_PARAM1 MAV_MISSION_RESULT = 6 + // param2 has an invalid value. + MAV_MISSION_INVALID_PARAM2 MAV_MISSION_RESULT = 7 + // param3 has an invalid value. + MAV_MISSION_INVALID_PARAM3 MAV_MISSION_RESULT = 8 + // param4 has an invalid value. + MAV_MISSION_INVALID_PARAM4 MAV_MISSION_RESULT = 9 + // x / param5 has an invalid value. + MAV_MISSION_INVALID_PARAM5_X MAV_MISSION_RESULT = 10 + // y / param6 has an invalid value. + MAV_MISSION_INVALID_PARAM6_Y MAV_MISSION_RESULT = 11 + // z / param7 has an invalid value. + MAV_MISSION_INVALID_PARAM7 MAV_MISSION_RESULT = 12 + // Mission item received out of sequence + MAV_MISSION_INVALID_SEQUENCE MAV_MISSION_RESULT = 13 + // Not accepting any mission commands from this communication partner. + MAV_MISSION_DENIED MAV_MISSION_RESULT = 14 + // Current mission operation cancelled (e.g. mission upload, mission download). + MAV_MISSION_OPERATION_CANCELLED MAV_MISSION_RESULT = 15 +) + +var labels_MAV_MISSION_RESULT = map[MAV_MISSION_RESULT]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAV_MISSION_RESULT) MarshalText() ([]byte, error) { + if l, ok := labels_MAV_MISSION_RESULT[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAV_MISSION_RESULT = map[string]MAV_MISSION_RESULT{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAV_MISSION_RESULT) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAV_MISSION_RESULT[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAV_MISSION_RESULT) String() string { + if l, ok := labels_MAV_MISSION_RESULT[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/avssuas/enum_mav_mission_type.go b/pkg/dialects/avssuas/enum_mav_mission_type.go new file mode 100644 index 000000000..972b84648 --- /dev/null +++ b/pkg/dialects/avssuas/enum_mav_mission_type.go @@ -0,0 +1,50 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package avssuas + +import ( + "errors" +) + +// Type of mission items being requested/sent in mission protocol. +type MAV_MISSION_TYPE int + +const ( + // Items are mission commands for main mission. + MAV_MISSION_TYPE_MISSION MAV_MISSION_TYPE = 0 + // Specifies GeoFence area(s). Items are MAV_CMD_NAV_FENCE_ GeoFence items. + MAV_MISSION_TYPE_FENCE MAV_MISSION_TYPE = 1 + // Specifies the rally points for the vehicle. Rally points are alternative RTL points. Items are MAV_CMD_NAV_RALLY_POINT rally point items. + MAV_MISSION_TYPE_RALLY MAV_MISSION_TYPE = 2 + // Only used in MISSION_CLEAR_ALL to clear all mission types. + MAV_MISSION_TYPE_ALL MAV_MISSION_TYPE = 255 +) + +var labels_MAV_MISSION_TYPE = map[MAV_MISSION_TYPE]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAV_MISSION_TYPE) MarshalText() ([]byte, error) { + if l, ok := labels_MAV_MISSION_TYPE[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAV_MISSION_TYPE = map[string]MAV_MISSION_TYPE{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAV_MISSION_TYPE) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAV_MISSION_TYPE[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAV_MISSION_TYPE) String() string { + if l, ok := labels_MAV_MISSION_TYPE[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/avssuas/enum_mav_mode.go b/pkg/dialects/avssuas/enum_mav_mode.go new file mode 100644 index 000000000..706f8d527 --- /dev/null +++ b/pkg/dialects/avssuas/enum_mav_mode.go @@ -0,0 +1,65 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package avssuas + +import ( + "errors" +) + +// These defines are predefined OR-combined mode flags. There is no need to use values from this enum, but it +// simplifies the use of the mode flags. Note that manual input is enabled in all modes as a safety override. +type MAV_MODE int + +const ( + // System is not ready to fly, booting, calibrating, etc. No flag is set. + MAV_MODE_PREFLIGHT MAV_MODE = 0 + // System is allowed to be active, under assisted RC control. + MAV_MODE_STABILIZE_DISARMED MAV_MODE = 80 + // System is allowed to be active, under assisted RC control. + MAV_MODE_STABILIZE_ARMED MAV_MODE = 208 + // System is allowed to be active, under manual (RC) control, no stabilization + MAV_MODE_MANUAL_DISARMED MAV_MODE = 64 + // System is allowed to be active, under manual (RC) control, no stabilization + MAV_MODE_MANUAL_ARMED MAV_MODE = 192 + // System is allowed to be active, under autonomous control, manual setpoint + MAV_MODE_GUIDED_DISARMED MAV_MODE = 88 + // System is allowed to be active, under autonomous control, manual setpoint + MAV_MODE_GUIDED_ARMED MAV_MODE = 216 + // System is allowed to be active, under autonomous control and navigation (the trajectory is decided onboard and not pre-programmed by waypoints) + MAV_MODE_AUTO_DISARMED MAV_MODE = 92 + // System is allowed to be active, under autonomous control and navigation (the trajectory is decided onboard and not pre-programmed by waypoints) + MAV_MODE_AUTO_ARMED MAV_MODE = 220 + // UNDEFINED mode. This solely depends on the autopilot - use with caution, intended for developers only. + MAV_MODE_TEST_DISARMED MAV_MODE = 66 + // UNDEFINED mode. This solely depends on the autopilot - use with caution, intended for developers only. + MAV_MODE_TEST_ARMED MAV_MODE = 194 +) + +var labels_MAV_MODE = map[MAV_MODE]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAV_MODE) MarshalText() ([]byte, error) { + if l, ok := labels_MAV_MODE[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAV_MODE = map[string]MAV_MODE{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAV_MODE) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAV_MODE[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAV_MODE) String() string { + if l, ok := labels_MAV_MODE[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/avssuas/enum_mav_mode_flag.go b/pkg/dialects/avssuas/enum_mav_mode_flag.go new file mode 100644 index 000000000..404512528 --- /dev/null +++ b/pkg/dialects/avssuas/enum_mav_mode_flag.go @@ -0,0 +1,58 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package avssuas + +import ( + "errors" +) + +// These flags encode the MAV mode. +type MAV_MODE_FLAG int + +const ( + // 0b10000000 MAV safety set to armed. Motors are enabled / running / can start. Ready to fly. Additional note: this flag is to be ignore when sent in the command MAV_CMD_DO_SET_MODE and MAV_CMD_COMPONENT_ARM_DISARM shall be used instead. The flag can still be used to report the armed state. + MAV_MODE_FLAG_SAFETY_ARMED MAV_MODE_FLAG = 128 + // 0b01000000 remote control input is enabled. + MAV_MODE_FLAG_MANUAL_INPUT_ENABLED MAV_MODE_FLAG = 64 + // 0b00100000 hardware in the loop simulation. All motors / actuators are blocked, but internal software is full operational. + MAV_MODE_FLAG_HIL_ENABLED MAV_MODE_FLAG = 32 + // 0b00010000 system stabilizes electronically its attitude (and optionally position). It needs however further control inputs to move around. + MAV_MODE_FLAG_STABILIZE_ENABLED MAV_MODE_FLAG = 16 + // 0b00001000 guided mode enabled, system flies waypoints / mission items. + MAV_MODE_FLAG_GUIDED_ENABLED MAV_MODE_FLAG = 8 + // 0b00000100 autonomous mode enabled, system finds its own goal positions. Guided flag can be set or not, depends on the actual implementation. + MAV_MODE_FLAG_AUTO_ENABLED MAV_MODE_FLAG = 4 + // 0b00000010 system has a test mode enabled. This flag is intended for temporary system tests and should not be used for stable implementations. + MAV_MODE_FLAG_TEST_ENABLED MAV_MODE_FLAG = 2 + // 0b00000001 Reserved for future use. + MAV_MODE_FLAG_CUSTOM_MODE_ENABLED MAV_MODE_FLAG = 1 +) + +var labels_MAV_MODE_FLAG = map[MAV_MODE_FLAG]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAV_MODE_FLAG) MarshalText() ([]byte, error) { + if l, ok := labels_MAV_MODE_FLAG[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAV_MODE_FLAG = map[string]MAV_MODE_FLAG{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAV_MODE_FLAG) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAV_MODE_FLAG[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAV_MODE_FLAG) String() string { + if l, ok := labels_MAV_MODE_FLAG[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/avssuas/enum_mav_mode_flag_decode_position.go b/pkg/dialects/avssuas/enum_mav_mode_flag_decode_position.go new file mode 100644 index 000000000..673fe395c --- /dev/null +++ b/pkg/dialects/avssuas/enum_mav_mode_flag_decode_position.go @@ -0,0 +1,58 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package avssuas + +import ( + "errors" +) + +// These values encode the bit positions of the decode position. These values can be used to read the value of a flag bit by combining the base_mode variable with AND with the flag position value. The result will be either 0 or 1, depending on if the flag is set or not. +type MAV_MODE_FLAG_DECODE_POSITION int + +const ( + // First bit: 10000000 + MAV_MODE_FLAG_DECODE_POSITION_SAFETY MAV_MODE_FLAG_DECODE_POSITION = 128 + // Second bit: 01000000 + MAV_MODE_FLAG_DECODE_POSITION_MANUAL MAV_MODE_FLAG_DECODE_POSITION = 64 + // Third bit: 00100000 + MAV_MODE_FLAG_DECODE_POSITION_HIL MAV_MODE_FLAG_DECODE_POSITION = 32 + // Fourth bit: 00010000 + MAV_MODE_FLAG_DECODE_POSITION_STABILIZE MAV_MODE_FLAG_DECODE_POSITION = 16 + // Fifth bit: 00001000 + MAV_MODE_FLAG_DECODE_POSITION_GUIDED MAV_MODE_FLAG_DECODE_POSITION = 8 + // Sixth bit: 00000100 + MAV_MODE_FLAG_DECODE_POSITION_AUTO MAV_MODE_FLAG_DECODE_POSITION = 4 + // Seventh bit: 00000010 + MAV_MODE_FLAG_DECODE_POSITION_TEST MAV_MODE_FLAG_DECODE_POSITION = 2 + // Eighth bit: 00000001 + MAV_MODE_FLAG_DECODE_POSITION_CUSTOM_MODE MAV_MODE_FLAG_DECODE_POSITION = 1 +) + +var labels_MAV_MODE_FLAG_DECODE_POSITION = map[MAV_MODE_FLAG_DECODE_POSITION]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAV_MODE_FLAG_DECODE_POSITION) MarshalText() ([]byte, error) { + if l, ok := labels_MAV_MODE_FLAG_DECODE_POSITION[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAV_MODE_FLAG_DECODE_POSITION = map[string]MAV_MODE_FLAG_DECODE_POSITION{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAV_MODE_FLAG_DECODE_POSITION) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAV_MODE_FLAG_DECODE_POSITION[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAV_MODE_FLAG_DECODE_POSITION) String() string { + if l, ok := labels_MAV_MODE_FLAG_DECODE_POSITION[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/avssuas/enum_mav_mount_mode.go b/pkg/dialects/avssuas/enum_mav_mount_mode.go new file mode 100644 index 000000000..42f2f488c --- /dev/null +++ b/pkg/dialects/avssuas/enum_mav_mount_mode.go @@ -0,0 +1,56 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package avssuas + +import ( + "errors" +) + +// Enumeration of possible mount operation modes. This message is used by obsolete/deprecated gimbal messages. +type MAV_MOUNT_MODE int + +const ( + // Load and keep safe position (Roll,Pitch,Yaw) from permant memory and stop stabilization + MAV_MOUNT_MODE_RETRACT MAV_MOUNT_MODE = 0 + // Load and keep neutral position (Roll,Pitch,Yaw) from permanent memory. + MAV_MOUNT_MODE_NEUTRAL MAV_MOUNT_MODE = 1 + // Load neutral position and start MAVLink Roll,Pitch,Yaw control with stabilization + MAV_MOUNT_MODE_MAVLINK_TARGETING MAV_MOUNT_MODE = 2 + // Load neutral position and start RC Roll,Pitch,Yaw control with stabilization + MAV_MOUNT_MODE_RC_TARGETING MAV_MOUNT_MODE = 3 + // Load neutral position and start to point to Lat,Lon,Alt + MAV_MOUNT_MODE_GPS_POINT MAV_MOUNT_MODE = 4 + // Gimbal tracks system with specified system ID + MAV_MOUNT_MODE_SYSID_TARGET MAV_MOUNT_MODE = 5 + // Gimbal tracks home location + MAV_MOUNT_MODE_HOME_LOCATION MAV_MOUNT_MODE = 6 +) + +var labels_MAV_MOUNT_MODE = map[MAV_MOUNT_MODE]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAV_MOUNT_MODE) MarshalText() ([]byte, error) { + if l, ok := labels_MAV_MOUNT_MODE[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAV_MOUNT_MODE = map[string]MAV_MOUNT_MODE{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAV_MOUNT_MODE) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAV_MOUNT_MODE[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAV_MOUNT_MODE) String() string { + if l, ok := labels_MAV_MOUNT_MODE[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/avssuas/enum_mav_odid_auth_type.go b/pkg/dialects/avssuas/enum_mav_odid_auth_type.go new file mode 100644 index 000000000..52b2c59b9 --- /dev/null +++ b/pkg/dialects/avssuas/enum_mav_odid_auth_type.go @@ -0,0 +1,53 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package avssuas + +import ( + "errors" +) + +type MAV_ODID_AUTH_TYPE int + +const ( + // No authentication type is specified. + MAV_ODID_AUTH_TYPE_NONE MAV_ODID_AUTH_TYPE = 0 + // Signature for the UAS (Unmanned Aircraft System) ID. + MAV_ODID_AUTH_TYPE_UAS_ID_SIGNATURE MAV_ODID_AUTH_TYPE = 1 + // Signature for the Operator ID. + MAV_ODID_AUTH_TYPE_OPERATOR_ID_SIGNATURE MAV_ODID_AUTH_TYPE = 2 + // Signature for the entire message set. + MAV_ODID_AUTH_TYPE_MESSAGE_SET_SIGNATURE MAV_ODID_AUTH_TYPE = 3 + // Authentication is provided by Network Remote ID. + MAV_ODID_AUTH_TYPE_NETWORK_REMOTE_ID MAV_ODID_AUTH_TYPE = 4 + // The exact authentication type is indicated by the first byte of authentication_data and these type values are managed by ICAO. + MAV_ODID_AUTH_TYPE_SPECIFIC_AUTHENTICATION MAV_ODID_AUTH_TYPE = 5 +) + +var labels_MAV_ODID_AUTH_TYPE = map[MAV_ODID_AUTH_TYPE]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAV_ODID_AUTH_TYPE) MarshalText() ([]byte, error) { + if l, ok := labels_MAV_ODID_AUTH_TYPE[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAV_ODID_AUTH_TYPE = map[string]MAV_ODID_AUTH_TYPE{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAV_ODID_AUTH_TYPE) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAV_ODID_AUTH_TYPE[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAV_ODID_AUTH_TYPE) String() string { + if l, ok := labels_MAV_ODID_AUTH_TYPE[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/avssuas/enum_mav_odid_category_eu.go b/pkg/dialects/avssuas/enum_mav_odid_category_eu.go new file mode 100644 index 000000000..1b66a373b --- /dev/null +++ b/pkg/dialects/avssuas/enum_mav_odid_category_eu.go @@ -0,0 +1,49 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package avssuas + +import ( + "errors" +) + +type MAV_ODID_CATEGORY_EU int + +const ( + // The category for the UA, according to the EU specification, is undeclared. + MAV_ODID_CATEGORY_EU_UNDECLARED MAV_ODID_CATEGORY_EU = 0 + // The category for the UA, according to the EU specification, is the Open category. + MAV_ODID_CATEGORY_EU_OPEN MAV_ODID_CATEGORY_EU = 1 + // The category for the UA, according to the EU specification, is the Specific category. + MAV_ODID_CATEGORY_EU_SPECIFIC MAV_ODID_CATEGORY_EU = 2 + // The category for the UA, according to the EU specification, is the Certified category. + MAV_ODID_CATEGORY_EU_CERTIFIED MAV_ODID_CATEGORY_EU = 3 +) + +var labels_MAV_ODID_CATEGORY_EU = map[MAV_ODID_CATEGORY_EU]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAV_ODID_CATEGORY_EU) MarshalText() ([]byte, error) { + if l, ok := labels_MAV_ODID_CATEGORY_EU[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAV_ODID_CATEGORY_EU = map[string]MAV_ODID_CATEGORY_EU{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAV_ODID_CATEGORY_EU) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAV_ODID_CATEGORY_EU[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAV_ODID_CATEGORY_EU) String() string { + if l, ok := labels_MAV_ODID_CATEGORY_EU[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/avssuas/enum_mav_odid_class_eu.go b/pkg/dialects/avssuas/enum_mav_odid_class_eu.go new file mode 100644 index 000000000..ae5f053df --- /dev/null +++ b/pkg/dialects/avssuas/enum_mav_odid_class_eu.go @@ -0,0 +1,57 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package avssuas + +import ( + "errors" +) + +type MAV_ODID_CLASS_EU int + +const ( + // The class for the UA, according to the EU specification, is undeclared. + MAV_ODID_CLASS_EU_UNDECLARED MAV_ODID_CLASS_EU = 0 + // The class for the UA, according to the EU specification, is Class 0. + MAV_ODID_CLASS_EU_CLASS_0 MAV_ODID_CLASS_EU = 1 + // The class for the UA, according to the EU specification, is Class 1. + MAV_ODID_CLASS_EU_CLASS_1 MAV_ODID_CLASS_EU = 2 + // The class for the UA, according to the EU specification, is Class 2. + MAV_ODID_CLASS_EU_CLASS_2 MAV_ODID_CLASS_EU = 3 + // The class for the UA, according to the EU specification, is Class 3. + MAV_ODID_CLASS_EU_CLASS_3 MAV_ODID_CLASS_EU = 4 + // The class for the UA, according to the EU specification, is Class 4. + MAV_ODID_CLASS_EU_CLASS_4 MAV_ODID_CLASS_EU = 5 + // The class for the UA, according to the EU specification, is Class 5. + MAV_ODID_CLASS_EU_CLASS_5 MAV_ODID_CLASS_EU = 6 + // The class for the UA, according to the EU specification, is Class 6. + MAV_ODID_CLASS_EU_CLASS_6 MAV_ODID_CLASS_EU = 7 +) + +var labels_MAV_ODID_CLASS_EU = map[MAV_ODID_CLASS_EU]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAV_ODID_CLASS_EU) MarshalText() ([]byte, error) { + if l, ok := labels_MAV_ODID_CLASS_EU[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAV_ODID_CLASS_EU = map[string]MAV_ODID_CLASS_EU{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAV_ODID_CLASS_EU) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAV_ODID_CLASS_EU[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAV_ODID_CLASS_EU) String() string { + if l, ok := labels_MAV_ODID_CLASS_EU[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/avssuas/enum_mav_odid_classification_type.go b/pkg/dialects/avssuas/enum_mav_odid_classification_type.go new file mode 100644 index 000000000..e9ea137f3 --- /dev/null +++ b/pkg/dialects/avssuas/enum_mav_odid_classification_type.go @@ -0,0 +1,45 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package avssuas + +import ( + "errors" +) + +type MAV_ODID_CLASSIFICATION_TYPE int + +const ( + // The classification type for the UA is undeclared. + MAV_ODID_CLASSIFICATION_TYPE_UNDECLARED MAV_ODID_CLASSIFICATION_TYPE = 0 + // The classification type for the UA follows EU (European Union) specifications. + MAV_ODID_CLASSIFICATION_TYPE_EU MAV_ODID_CLASSIFICATION_TYPE = 1 +) + +var labels_MAV_ODID_CLASSIFICATION_TYPE = map[MAV_ODID_CLASSIFICATION_TYPE]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAV_ODID_CLASSIFICATION_TYPE) MarshalText() ([]byte, error) { + if l, ok := labels_MAV_ODID_CLASSIFICATION_TYPE[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAV_ODID_CLASSIFICATION_TYPE = map[string]MAV_ODID_CLASSIFICATION_TYPE{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAV_ODID_CLASSIFICATION_TYPE) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAV_ODID_CLASSIFICATION_TYPE[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAV_ODID_CLASSIFICATION_TYPE) String() string { + if l, ok := labels_MAV_ODID_CLASSIFICATION_TYPE[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/avssuas/enum_mav_odid_desc_type.go b/pkg/dialects/avssuas/enum_mav_odid_desc_type.go new file mode 100644 index 000000000..38653a351 --- /dev/null +++ b/pkg/dialects/avssuas/enum_mav_odid_desc_type.go @@ -0,0 +1,43 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package avssuas + +import ( + "errors" +) + +type MAV_ODID_DESC_TYPE int + +const ( + // Free-form text description of the purpose of the flight. + MAV_ODID_DESC_TYPE_TEXT MAV_ODID_DESC_TYPE = 0 +) + +var labels_MAV_ODID_DESC_TYPE = map[MAV_ODID_DESC_TYPE]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAV_ODID_DESC_TYPE) MarshalText() ([]byte, error) { + if l, ok := labels_MAV_ODID_DESC_TYPE[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAV_ODID_DESC_TYPE = map[string]MAV_ODID_DESC_TYPE{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAV_ODID_DESC_TYPE) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAV_ODID_DESC_TYPE[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAV_ODID_DESC_TYPE) String() string { + if l, ok := labels_MAV_ODID_DESC_TYPE[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/avssuas/enum_mav_odid_height_ref.go b/pkg/dialects/avssuas/enum_mav_odid_height_ref.go new file mode 100644 index 000000000..584dea0df --- /dev/null +++ b/pkg/dialects/avssuas/enum_mav_odid_height_ref.go @@ -0,0 +1,45 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package avssuas + +import ( + "errors" +) + +type MAV_ODID_HEIGHT_REF int + +const ( + // The height field is relative to the take-off location. + MAV_ODID_HEIGHT_REF_OVER_TAKEOFF MAV_ODID_HEIGHT_REF = 0 + // The height field is relative to ground. + MAV_ODID_HEIGHT_REF_OVER_GROUND MAV_ODID_HEIGHT_REF = 1 +) + +var labels_MAV_ODID_HEIGHT_REF = map[MAV_ODID_HEIGHT_REF]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAV_ODID_HEIGHT_REF) MarshalText() ([]byte, error) { + if l, ok := labels_MAV_ODID_HEIGHT_REF[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAV_ODID_HEIGHT_REF = map[string]MAV_ODID_HEIGHT_REF{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAV_ODID_HEIGHT_REF) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAV_ODID_HEIGHT_REF[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAV_ODID_HEIGHT_REF) String() string { + if l, ok := labels_MAV_ODID_HEIGHT_REF[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/avssuas/enum_mav_odid_hor_acc.go b/pkg/dialects/avssuas/enum_mav_odid_hor_acc.go new file mode 100644 index 000000000..1eb9699e8 --- /dev/null +++ b/pkg/dialects/avssuas/enum_mav_odid_hor_acc.go @@ -0,0 +1,67 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package avssuas + +import ( + "errors" +) + +type MAV_ODID_HOR_ACC int + +const ( + // The horizontal accuracy is unknown. + MAV_ODID_HOR_ACC_UNKNOWN MAV_ODID_HOR_ACC = 0 + // The horizontal accuracy is smaller than 10 Nautical Miles. 18.52 km. + MAV_ODID_HOR_ACC_10NM MAV_ODID_HOR_ACC = 1 + // The horizontal accuracy is smaller than 4 Nautical Miles. 7.408 km. + MAV_ODID_HOR_ACC_4NM MAV_ODID_HOR_ACC = 2 + // The horizontal accuracy is smaller than 2 Nautical Miles. 3.704 km. + MAV_ODID_HOR_ACC_2NM MAV_ODID_HOR_ACC = 3 + // The horizontal accuracy is smaller than 1 Nautical Miles. 1.852 km. + MAV_ODID_HOR_ACC_1NM MAV_ODID_HOR_ACC = 4 + // The horizontal accuracy is smaller than 0.5 Nautical Miles. 926 m. + MAV_ODID_HOR_ACC_0_5NM MAV_ODID_HOR_ACC = 5 + // The horizontal accuracy is smaller than 0.3 Nautical Miles. 555.6 m. + MAV_ODID_HOR_ACC_0_3NM MAV_ODID_HOR_ACC = 6 + // The horizontal accuracy is smaller than 0.1 Nautical Miles. 185.2 m. + MAV_ODID_HOR_ACC_0_1NM MAV_ODID_HOR_ACC = 7 + // The horizontal accuracy is smaller than 0.05 Nautical Miles. 92.6 m. + MAV_ODID_HOR_ACC_0_05NM MAV_ODID_HOR_ACC = 8 + // The horizontal accuracy is smaller than 30 meter. + MAV_ODID_HOR_ACC_30_METER MAV_ODID_HOR_ACC = 9 + // The horizontal accuracy is smaller than 10 meter. + MAV_ODID_HOR_ACC_10_METER MAV_ODID_HOR_ACC = 10 + // The horizontal accuracy is smaller than 3 meter. + MAV_ODID_HOR_ACC_3_METER MAV_ODID_HOR_ACC = 11 + // The horizontal accuracy is smaller than 1 meter. + MAV_ODID_HOR_ACC_1_METER MAV_ODID_HOR_ACC = 12 +) + +var labels_MAV_ODID_HOR_ACC = map[MAV_ODID_HOR_ACC]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAV_ODID_HOR_ACC) MarshalText() ([]byte, error) { + if l, ok := labels_MAV_ODID_HOR_ACC[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAV_ODID_HOR_ACC = map[string]MAV_ODID_HOR_ACC{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAV_ODID_HOR_ACC) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAV_ODID_HOR_ACC[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAV_ODID_HOR_ACC) String() string { + if l, ok := labels_MAV_ODID_HOR_ACC[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/avssuas/enum_mav_odid_id_type.go b/pkg/dialects/avssuas/enum_mav_odid_id_type.go new file mode 100644 index 000000000..d8c969054 --- /dev/null +++ b/pkg/dialects/avssuas/enum_mav_odid_id_type.go @@ -0,0 +1,51 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package avssuas + +import ( + "errors" +) + +type MAV_ODID_ID_TYPE int + +const ( + // No type defined. + MAV_ODID_ID_TYPE_NONE MAV_ODID_ID_TYPE = 0 + // Manufacturer Serial Number (ANSI/CTA-2063 format). + MAV_ODID_ID_TYPE_SERIAL_NUMBER MAV_ODID_ID_TYPE = 1 + // CAA (Civil Aviation Authority) registered ID. Format: [ICAO Country Code].[CAA Assigned ID]. + MAV_ODID_ID_TYPE_CAA_REGISTRATION_ID MAV_ODID_ID_TYPE = 2 + // UTM (Unmanned Traffic Management) assigned UUID (RFC4122). + MAV_ODID_ID_TYPE_UTM_ASSIGNED_UUID MAV_ODID_ID_TYPE = 3 + // A 20 byte ID for a specific flight/session. The exact ID type is indicated by the first byte of uas_id and these type values are managed by ICAO. + MAV_ODID_ID_TYPE_SPECIFIC_SESSION_ID MAV_ODID_ID_TYPE = 4 +) + +var labels_MAV_ODID_ID_TYPE = map[MAV_ODID_ID_TYPE]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAV_ODID_ID_TYPE) MarshalText() ([]byte, error) { + if l, ok := labels_MAV_ODID_ID_TYPE[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAV_ODID_ID_TYPE = map[string]MAV_ODID_ID_TYPE{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAV_ODID_ID_TYPE) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAV_ODID_ID_TYPE[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAV_ODID_ID_TYPE) String() string { + if l, ok := labels_MAV_ODID_ID_TYPE[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/avssuas/enum_mav_odid_operator_id_type.go b/pkg/dialects/avssuas/enum_mav_odid_operator_id_type.go new file mode 100644 index 000000000..2a215a7cf --- /dev/null +++ b/pkg/dialects/avssuas/enum_mav_odid_operator_id_type.go @@ -0,0 +1,43 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package avssuas + +import ( + "errors" +) + +type MAV_ODID_OPERATOR_ID_TYPE int + +const ( + // CAA (Civil Aviation Authority) registered operator ID. + MAV_ODID_OPERATOR_ID_TYPE_CAA MAV_ODID_OPERATOR_ID_TYPE = 0 +) + +var labels_MAV_ODID_OPERATOR_ID_TYPE = map[MAV_ODID_OPERATOR_ID_TYPE]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAV_ODID_OPERATOR_ID_TYPE) MarshalText() ([]byte, error) { + if l, ok := labels_MAV_ODID_OPERATOR_ID_TYPE[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAV_ODID_OPERATOR_ID_TYPE = map[string]MAV_ODID_OPERATOR_ID_TYPE{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAV_ODID_OPERATOR_ID_TYPE) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAV_ODID_OPERATOR_ID_TYPE[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAV_ODID_OPERATOR_ID_TYPE) String() string { + if l, ok := labels_MAV_ODID_OPERATOR_ID_TYPE[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/avssuas/enum_mav_odid_operator_location_type.go b/pkg/dialects/avssuas/enum_mav_odid_operator_location_type.go new file mode 100644 index 000000000..b144fece5 --- /dev/null +++ b/pkg/dialects/avssuas/enum_mav_odid_operator_location_type.go @@ -0,0 +1,47 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package avssuas + +import ( + "errors" +) + +type MAV_ODID_OPERATOR_LOCATION_TYPE int + +const ( + // The location of the operator is the same as the take-off location. + MAV_ODID_OPERATOR_LOCATION_TYPE_TAKEOFF MAV_ODID_OPERATOR_LOCATION_TYPE = 0 + // The location of the operator is based on live GNSS data. + MAV_ODID_OPERATOR_LOCATION_TYPE_LIVE_GNSS MAV_ODID_OPERATOR_LOCATION_TYPE = 1 + // The location of the operator is a fixed location. + MAV_ODID_OPERATOR_LOCATION_TYPE_FIXED MAV_ODID_OPERATOR_LOCATION_TYPE = 2 +) + +var labels_MAV_ODID_OPERATOR_LOCATION_TYPE = map[MAV_ODID_OPERATOR_LOCATION_TYPE]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAV_ODID_OPERATOR_LOCATION_TYPE) MarshalText() ([]byte, error) { + if l, ok := labels_MAV_ODID_OPERATOR_LOCATION_TYPE[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAV_ODID_OPERATOR_LOCATION_TYPE = map[string]MAV_ODID_OPERATOR_LOCATION_TYPE{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAV_ODID_OPERATOR_LOCATION_TYPE) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAV_ODID_OPERATOR_LOCATION_TYPE[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAV_ODID_OPERATOR_LOCATION_TYPE) String() string { + if l, ok := labels_MAV_ODID_OPERATOR_LOCATION_TYPE[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/avssuas/enum_mav_odid_speed_acc.go b/pkg/dialects/avssuas/enum_mav_odid_speed_acc.go new file mode 100644 index 000000000..5c5f08bf0 --- /dev/null +++ b/pkg/dialects/avssuas/enum_mav_odid_speed_acc.go @@ -0,0 +1,51 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package avssuas + +import ( + "errors" +) + +type MAV_ODID_SPEED_ACC int + +const ( + // The speed accuracy is unknown. + MAV_ODID_SPEED_ACC_UNKNOWN MAV_ODID_SPEED_ACC = 0 + // The speed accuracy is smaller than 10 meters per second. + MAV_ODID_SPEED_ACC_10_METERS_PER_SECOND MAV_ODID_SPEED_ACC = 1 + // The speed accuracy is smaller than 3 meters per second. + MAV_ODID_SPEED_ACC_3_METERS_PER_SECOND MAV_ODID_SPEED_ACC = 2 + // The speed accuracy is smaller than 1 meters per second. + MAV_ODID_SPEED_ACC_1_METERS_PER_SECOND MAV_ODID_SPEED_ACC = 3 + // The speed accuracy is smaller than 0.3 meters per second. + MAV_ODID_SPEED_ACC_0_3_METERS_PER_SECOND MAV_ODID_SPEED_ACC = 4 +) + +var labels_MAV_ODID_SPEED_ACC = map[MAV_ODID_SPEED_ACC]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAV_ODID_SPEED_ACC) MarshalText() ([]byte, error) { + if l, ok := labels_MAV_ODID_SPEED_ACC[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAV_ODID_SPEED_ACC = map[string]MAV_ODID_SPEED_ACC{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAV_ODID_SPEED_ACC) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAV_ODID_SPEED_ACC[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAV_ODID_SPEED_ACC) String() string { + if l, ok := labels_MAV_ODID_SPEED_ACC[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/avssuas/enum_mav_odid_status.go b/pkg/dialects/avssuas/enum_mav_odid_status.go new file mode 100644 index 000000000..c6b267a64 --- /dev/null +++ b/pkg/dialects/avssuas/enum_mav_odid_status.go @@ -0,0 +1,49 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package avssuas + +import ( + "errors" +) + +type MAV_ODID_STATUS int + +const ( + // The status of the (UA) Unmanned Aircraft is undefined. + MAV_ODID_STATUS_UNDECLARED MAV_ODID_STATUS = 0 + // The UA is on the ground. + MAV_ODID_STATUS_GROUND MAV_ODID_STATUS = 1 + // The UA is in the air. + MAV_ODID_STATUS_AIRBORNE MAV_ODID_STATUS = 2 + // The UA is having an emergency. + MAV_ODID_STATUS_EMERGENCY MAV_ODID_STATUS = 3 +) + +var labels_MAV_ODID_STATUS = map[MAV_ODID_STATUS]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAV_ODID_STATUS) MarshalText() ([]byte, error) { + if l, ok := labels_MAV_ODID_STATUS[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAV_ODID_STATUS = map[string]MAV_ODID_STATUS{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAV_ODID_STATUS) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAV_ODID_STATUS[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAV_ODID_STATUS) String() string { + if l, ok := labels_MAV_ODID_STATUS[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/avssuas/enum_mav_odid_time_acc.go b/pkg/dialects/avssuas/enum_mav_odid_time_acc.go new file mode 100644 index 000000000..21711217f --- /dev/null +++ b/pkg/dialects/avssuas/enum_mav_odid_time_acc.go @@ -0,0 +1,73 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package avssuas + +import ( + "errors" +) + +type MAV_ODID_TIME_ACC int + +const ( + // The timestamp accuracy is unknown. + MAV_ODID_TIME_ACC_UNKNOWN MAV_ODID_TIME_ACC = 0 + // The timestamp accuracy is smaller than or equal to 0.1 second. + MAV_ODID_TIME_ACC_0_1_SECOND MAV_ODID_TIME_ACC = 1 + // The timestamp accuracy is smaller than or equal to 0.2 second. + MAV_ODID_TIME_ACC_0_2_SECOND MAV_ODID_TIME_ACC = 2 + // The timestamp accuracy is smaller than or equal to 0.3 second. + MAV_ODID_TIME_ACC_0_3_SECOND MAV_ODID_TIME_ACC = 3 + // The timestamp accuracy is smaller than or equal to 0.4 second. + MAV_ODID_TIME_ACC_0_4_SECOND MAV_ODID_TIME_ACC = 4 + // The timestamp accuracy is smaller than or equal to 0.5 second. + MAV_ODID_TIME_ACC_0_5_SECOND MAV_ODID_TIME_ACC = 5 + // The timestamp accuracy is smaller than or equal to 0.6 second. + MAV_ODID_TIME_ACC_0_6_SECOND MAV_ODID_TIME_ACC = 6 + // The timestamp accuracy is smaller than or equal to 0.7 second. + MAV_ODID_TIME_ACC_0_7_SECOND MAV_ODID_TIME_ACC = 7 + // The timestamp accuracy is smaller than or equal to 0.8 second. + MAV_ODID_TIME_ACC_0_8_SECOND MAV_ODID_TIME_ACC = 8 + // The timestamp accuracy is smaller than or equal to 0.9 second. + MAV_ODID_TIME_ACC_0_9_SECOND MAV_ODID_TIME_ACC = 9 + // The timestamp accuracy is smaller than or equal to 1.0 second. + MAV_ODID_TIME_ACC_1_0_SECOND MAV_ODID_TIME_ACC = 10 + // The timestamp accuracy is smaller than or equal to 1.1 second. + MAV_ODID_TIME_ACC_1_1_SECOND MAV_ODID_TIME_ACC = 11 + // The timestamp accuracy is smaller than or equal to 1.2 second. + MAV_ODID_TIME_ACC_1_2_SECOND MAV_ODID_TIME_ACC = 12 + // The timestamp accuracy is smaller than or equal to 1.3 second. + MAV_ODID_TIME_ACC_1_3_SECOND MAV_ODID_TIME_ACC = 13 + // The timestamp accuracy is smaller than or equal to 1.4 second. + MAV_ODID_TIME_ACC_1_4_SECOND MAV_ODID_TIME_ACC = 14 + // The timestamp accuracy is smaller than or equal to 1.5 second. + MAV_ODID_TIME_ACC_1_5_SECOND MAV_ODID_TIME_ACC = 15 +) + +var labels_MAV_ODID_TIME_ACC = map[MAV_ODID_TIME_ACC]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAV_ODID_TIME_ACC) MarshalText() ([]byte, error) { + if l, ok := labels_MAV_ODID_TIME_ACC[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAV_ODID_TIME_ACC = map[string]MAV_ODID_TIME_ACC{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAV_ODID_TIME_ACC) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAV_ODID_TIME_ACC[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAV_ODID_TIME_ACC) String() string { + if l, ok := labels_MAV_ODID_TIME_ACC[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/avssuas/enum_mav_odid_ua_type.go b/pkg/dialects/avssuas/enum_mav_odid_ua_type.go new file mode 100644 index 000000000..267bf6cdf --- /dev/null +++ b/pkg/dialects/avssuas/enum_mav_odid_ua_type.go @@ -0,0 +1,73 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package avssuas + +import ( + "errors" +) + +type MAV_ODID_UA_TYPE int + +const ( + // No UA (Unmanned Aircraft) type defined. + MAV_ODID_UA_TYPE_NONE MAV_ODID_UA_TYPE = 0 + // Aeroplane/Airplane. Fixed wing. + MAV_ODID_UA_TYPE_AEROPLANE MAV_ODID_UA_TYPE = 1 + // Helicopter or multirotor. + MAV_ODID_UA_TYPE_HELICOPTER_OR_MULTIROTOR MAV_ODID_UA_TYPE = 2 + // Gyroplane. + MAV_ODID_UA_TYPE_GYROPLANE MAV_ODID_UA_TYPE = 3 + // VTOL (Vertical Take-Off and Landing). Fixed wing aircraft that can take off vertically. + MAV_ODID_UA_TYPE_HYBRID_LIFT MAV_ODID_UA_TYPE = 4 + // Ornithopter. + MAV_ODID_UA_TYPE_ORNITHOPTER MAV_ODID_UA_TYPE = 5 + // Glider. + MAV_ODID_UA_TYPE_GLIDER MAV_ODID_UA_TYPE = 6 + // Kite. + MAV_ODID_UA_TYPE_KITE MAV_ODID_UA_TYPE = 7 + // Free Balloon. + MAV_ODID_UA_TYPE_FREE_BALLOON MAV_ODID_UA_TYPE = 8 + // Captive Balloon. + MAV_ODID_UA_TYPE_CAPTIVE_BALLOON MAV_ODID_UA_TYPE = 9 + // Airship. E.g. a blimp. + MAV_ODID_UA_TYPE_AIRSHIP MAV_ODID_UA_TYPE = 10 + // Free Fall/Parachute (unpowered). + MAV_ODID_UA_TYPE_FREE_FALL_PARACHUTE MAV_ODID_UA_TYPE = 11 + // Rocket. + MAV_ODID_UA_TYPE_ROCKET MAV_ODID_UA_TYPE = 12 + // Tethered powered aircraft. + MAV_ODID_UA_TYPE_TETHERED_POWERED_AIRCRAFT MAV_ODID_UA_TYPE = 13 + // Ground Obstacle. + MAV_ODID_UA_TYPE_GROUND_OBSTACLE MAV_ODID_UA_TYPE = 14 + // Other type of aircraft not listed earlier. + MAV_ODID_UA_TYPE_OTHER MAV_ODID_UA_TYPE = 15 +) + +var labels_MAV_ODID_UA_TYPE = map[MAV_ODID_UA_TYPE]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAV_ODID_UA_TYPE) MarshalText() ([]byte, error) { + if l, ok := labels_MAV_ODID_UA_TYPE[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAV_ODID_UA_TYPE = map[string]MAV_ODID_UA_TYPE{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAV_ODID_UA_TYPE) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAV_ODID_UA_TYPE[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAV_ODID_UA_TYPE) String() string { + if l, ok := labels_MAV_ODID_UA_TYPE[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/avssuas/enum_mav_odid_ver_acc.go b/pkg/dialects/avssuas/enum_mav_odid_ver_acc.go new file mode 100644 index 000000000..0d57a8427 --- /dev/null +++ b/pkg/dialects/avssuas/enum_mav_odid_ver_acc.go @@ -0,0 +1,55 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package avssuas + +import ( + "errors" +) + +type MAV_ODID_VER_ACC int + +const ( + // The vertical accuracy is unknown. + MAV_ODID_VER_ACC_UNKNOWN MAV_ODID_VER_ACC = 0 + // The vertical accuracy is smaller than 150 meter. + MAV_ODID_VER_ACC_150_METER MAV_ODID_VER_ACC = 1 + // The vertical accuracy is smaller than 45 meter. + MAV_ODID_VER_ACC_45_METER MAV_ODID_VER_ACC = 2 + // The vertical accuracy is smaller than 25 meter. + MAV_ODID_VER_ACC_25_METER MAV_ODID_VER_ACC = 3 + // The vertical accuracy is smaller than 10 meter. + MAV_ODID_VER_ACC_10_METER MAV_ODID_VER_ACC = 4 + // The vertical accuracy is smaller than 3 meter. + MAV_ODID_VER_ACC_3_METER MAV_ODID_VER_ACC = 5 + // The vertical accuracy is smaller than 1 meter. + MAV_ODID_VER_ACC_1_METER MAV_ODID_VER_ACC = 6 +) + +var labels_MAV_ODID_VER_ACC = map[MAV_ODID_VER_ACC]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAV_ODID_VER_ACC) MarshalText() ([]byte, error) { + if l, ok := labels_MAV_ODID_VER_ACC[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAV_ODID_VER_ACC = map[string]MAV_ODID_VER_ACC{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAV_ODID_VER_ACC) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAV_ODID_VER_ACC[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAV_ODID_VER_ACC) String() string { + if l, ok := labels_MAV_ODID_VER_ACC[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/avssuas/enum_mav_param_ext_type.go b/pkg/dialects/avssuas/enum_mav_param_ext_type.go new file mode 100644 index 000000000..c705edc4b --- /dev/null +++ b/pkg/dialects/avssuas/enum_mav_param_ext_type.go @@ -0,0 +1,64 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package avssuas + +import ( + "errors" +) + +// Specifies the datatype of a MAVLink extended parameter. +type MAV_PARAM_EXT_TYPE int + +const ( + // 8-bit unsigned integer + MAV_PARAM_EXT_TYPE_UINT8 MAV_PARAM_EXT_TYPE = 1 + // 8-bit signed integer + MAV_PARAM_EXT_TYPE_INT8 MAV_PARAM_EXT_TYPE = 2 + // 16-bit unsigned integer + MAV_PARAM_EXT_TYPE_UINT16 MAV_PARAM_EXT_TYPE = 3 + // 16-bit signed integer + MAV_PARAM_EXT_TYPE_INT16 MAV_PARAM_EXT_TYPE = 4 + // 32-bit unsigned integer + MAV_PARAM_EXT_TYPE_UINT32 MAV_PARAM_EXT_TYPE = 5 + // 32-bit signed integer + MAV_PARAM_EXT_TYPE_INT32 MAV_PARAM_EXT_TYPE = 6 + // 64-bit unsigned integer + MAV_PARAM_EXT_TYPE_UINT64 MAV_PARAM_EXT_TYPE = 7 + // 64-bit signed integer + MAV_PARAM_EXT_TYPE_INT64 MAV_PARAM_EXT_TYPE = 8 + // 32-bit floating-point + MAV_PARAM_EXT_TYPE_REAL32 MAV_PARAM_EXT_TYPE = 9 + // 64-bit floating-point + MAV_PARAM_EXT_TYPE_REAL64 MAV_PARAM_EXT_TYPE = 10 + // Custom Type + MAV_PARAM_EXT_TYPE_CUSTOM MAV_PARAM_EXT_TYPE = 11 +) + +var labels_MAV_PARAM_EXT_TYPE = map[MAV_PARAM_EXT_TYPE]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAV_PARAM_EXT_TYPE) MarshalText() ([]byte, error) { + if l, ok := labels_MAV_PARAM_EXT_TYPE[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAV_PARAM_EXT_TYPE = map[string]MAV_PARAM_EXT_TYPE{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAV_PARAM_EXT_TYPE) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAV_PARAM_EXT_TYPE[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAV_PARAM_EXT_TYPE) String() string { + if l, ok := labels_MAV_PARAM_EXT_TYPE[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/avssuas/enum_mav_param_type.go b/pkg/dialects/avssuas/enum_mav_param_type.go new file mode 100644 index 000000000..35a76f325 --- /dev/null +++ b/pkg/dialects/avssuas/enum_mav_param_type.go @@ -0,0 +1,62 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package avssuas + +import ( + "errors" +) + +// Specifies the datatype of a MAVLink parameter. +type MAV_PARAM_TYPE int + +const ( + // 8-bit unsigned integer + MAV_PARAM_TYPE_UINT8 MAV_PARAM_TYPE = 1 + // 8-bit signed integer + MAV_PARAM_TYPE_INT8 MAV_PARAM_TYPE = 2 + // 16-bit unsigned integer + MAV_PARAM_TYPE_UINT16 MAV_PARAM_TYPE = 3 + // 16-bit signed integer + MAV_PARAM_TYPE_INT16 MAV_PARAM_TYPE = 4 + // 32-bit unsigned integer + MAV_PARAM_TYPE_UINT32 MAV_PARAM_TYPE = 5 + // 32-bit signed integer + MAV_PARAM_TYPE_INT32 MAV_PARAM_TYPE = 6 + // 64-bit unsigned integer + MAV_PARAM_TYPE_UINT64 MAV_PARAM_TYPE = 7 + // 64-bit signed integer + MAV_PARAM_TYPE_INT64 MAV_PARAM_TYPE = 8 + // 32-bit floating-point + MAV_PARAM_TYPE_REAL32 MAV_PARAM_TYPE = 9 + // 64-bit floating-point + MAV_PARAM_TYPE_REAL64 MAV_PARAM_TYPE = 10 +) + +var labels_MAV_PARAM_TYPE = map[MAV_PARAM_TYPE]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAV_PARAM_TYPE) MarshalText() ([]byte, error) { + if l, ok := labels_MAV_PARAM_TYPE[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAV_PARAM_TYPE = map[string]MAV_PARAM_TYPE{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAV_PARAM_TYPE) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAV_PARAM_TYPE[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAV_PARAM_TYPE) String() string { + if l, ok := labels_MAV_PARAM_TYPE[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/avssuas/enum_mav_power_status.go b/pkg/dialects/avssuas/enum_mav_power_status.go new file mode 100644 index 000000000..2034da533 --- /dev/null +++ b/pkg/dialects/avssuas/enum_mav_power_status.go @@ -0,0 +1,54 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package avssuas + +import ( + "errors" +) + +// Power supply status flags (bitmask) +type MAV_POWER_STATUS int + +const ( + // main brick power supply valid + MAV_POWER_STATUS_BRICK_VALID MAV_POWER_STATUS = 1 + // main servo power supply valid for FMU + MAV_POWER_STATUS_SERVO_VALID MAV_POWER_STATUS = 2 + // USB power is connected + MAV_POWER_STATUS_USB_CONNECTED MAV_POWER_STATUS = 4 + // peripheral supply is in over-current state + MAV_POWER_STATUS_PERIPH_OVERCURRENT MAV_POWER_STATUS = 8 + // hi-power peripheral supply is in over-current state + MAV_POWER_STATUS_PERIPH_HIPOWER_OVERCURRENT MAV_POWER_STATUS = 16 + // Power status has changed since boot + MAV_POWER_STATUS_CHANGED MAV_POWER_STATUS = 32 +) + +var labels_MAV_POWER_STATUS = map[MAV_POWER_STATUS]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAV_POWER_STATUS) MarshalText() ([]byte, error) { + if l, ok := labels_MAV_POWER_STATUS[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAV_POWER_STATUS = map[string]MAV_POWER_STATUS{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAV_POWER_STATUS) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAV_POWER_STATUS[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAV_POWER_STATUS) String() string { + if l, ok := labels_MAV_POWER_STATUS[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/avssuas/enum_mav_protocol_capability.go b/pkg/dialects/avssuas/enum_mav_protocol_capability.go new file mode 100644 index 000000000..e0c481e88 --- /dev/null +++ b/pkg/dialects/avssuas/enum_mav_protocol_capability.go @@ -0,0 +1,78 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package avssuas + +import ( + "errors" +) + +// Bitmask of (optional) autopilot capabilities (64 bit). If a bit is set, the autopilot supports this capability. +type MAV_PROTOCOL_CAPABILITY int + +const ( + // Autopilot supports the MISSION_ITEM float message type. + // Note that MISSION_ITEM is deprecated, and autopilots should use MISSION_INT instead. + MAV_PROTOCOL_CAPABILITY_MISSION_FLOAT MAV_PROTOCOL_CAPABILITY = 1 + // Autopilot supports the new param float message type. + MAV_PROTOCOL_CAPABILITY_PARAM_FLOAT MAV_PROTOCOL_CAPABILITY = 2 + // Autopilot supports MISSION_ITEM_INT scaled integer message type. + // Note that this flag must always be set if missions are supported, because missions must always use MISSION_ITEM_INT (rather than MISSION_ITEM, which is deprecated). + MAV_PROTOCOL_CAPABILITY_MISSION_INT MAV_PROTOCOL_CAPABILITY = 4 + // Autopilot supports COMMAND_INT scaled integer message type. + MAV_PROTOCOL_CAPABILITY_COMMAND_INT MAV_PROTOCOL_CAPABILITY = 8 + // Reserved for future use. + MAV_PROTOCOL_CAPABILITY_RESERVED1 MAV_PROTOCOL_CAPABILITY = 16 + // Autopilot supports the new FILE_TRANSFER_PROTOCOL message type. + MAV_PROTOCOL_CAPABILITY_FTP MAV_PROTOCOL_CAPABILITY = 32 + // Autopilot supports commanding attitude offboard. + MAV_PROTOCOL_CAPABILITY_SET_ATTITUDE_TARGET MAV_PROTOCOL_CAPABILITY = 64 + // Autopilot supports commanding position and velocity targets in local NED frame. + MAV_PROTOCOL_CAPABILITY_SET_POSITION_TARGET_LOCAL_NED MAV_PROTOCOL_CAPABILITY = 128 + // Autopilot supports commanding position and velocity targets in global scaled integers. + MAV_PROTOCOL_CAPABILITY_SET_POSITION_TARGET_GLOBAL_INT MAV_PROTOCOL_CAPABILITY = 256 + // Autopilot supports terrain protocol / data handling. + MAV_PROTOCOL_CAPABILITY_TERRAIN MAV_PROTOCOL_CAPABILITY = 512 + // Autopilot supports direct actuator control. + MAV_PROTOCOL_CAPABILITY_SET_ACTUATOR_TARGET MAV_PROTOCOL_CAPABILITY = 1024 + // Autopilot supports the flight termination command. + MAV_PROTOCOL_CAPABILITY_FLIGHT_TERMINATION MAV_PROTOCOL_CAPABILITY = 2048 + // Autopilot supports onboard compass calibration. + MAV_PROTOCOL_CAPABILITY_COMPASS_CALIBRATION MAV_PROTOCOL_CAPABILITY = 4096 + // Autopilot supports MAVLink version 2. + MAV_PROTOCOL_CAPABILITY_MAVLINK2 MAV_PROTOCOL_CAPABILITY = 8192 + // Autopilot supports mission fence protocol. + MAV_PROTOCOL_CAPABILITY_MISSION_FENCE MAV_PROTOCOL_CAPABILITY = 16384 + // Autopilot supports mission rally point protocol. + MAV_PROTOCOL_CAPABILITY_MISSION_RALLY MAV_PROTOCOL_CAPABILITY = 32768 + // Reserved for future use. + MAV_PROTOCOL_CAPABILITY_RESERVED2 MAV_PROTOCOL_CAPABILITY = 65536 +) + +var labels_MAV_PROTOCOL_CAPABILITY = map[MAV_PROTOCOL_CAPABILITY]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAV_PROTOCOL_CAPABILITY) MarshalText() ([]byte, error) { + if l, ok := labels_MAV_PROTOCOL_CAPABILITY[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAV_PROTOCOL_CAPABILITY = map[string]MAV_PROTOCOL_CAPABILITY{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAV_PROTOCOL_CAPABILITY) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAV_PROTOCOL_CAPABILITY[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAV_PROTOCOL_CAPABILITY) String() string { + if l, ok := labels_MAV_PROTOCOL_CAPABILITY[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/avssuas/enum_mav_result.go b/pkg/dialects/avssuas/enum_mav_result.go new file mode 100644 index 000000000..f3672afeb --- /dev/null +++ b/pkg/dialects/avssuas/enum_mav_result.go @@ -0,0 +1,56 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package avssuas + +import ( + "errors" +) + +// Result from a MAVLink command (MAV_CMD) +type MAV_RESULT int + +const ( + // Command is valid (is supported and has valid parameters), and was executed. + MAV_RESULT_ACCEPTED MAV_RESULT = 0 + // Command is valid, but cannot be executed at this time. This is used to indicate a problem that should be fixed just by waiting (e.g. a state machine is busy, can't arm because have not got GPS lock, etc.). Retrying later should work. + MAV_RESULT_TEMPORARILY_REJECTED MAV_RESULT = 1 + // Command is invalid (is supported but has invalid parameters). Retrying same command and parameters will not work. + MAV_RESULT_DENIED MAV_RESULT = 2 + // Command is not supported (unknown). + MAV_RESULT_UNSUPPORTED MAV_RESULT = 3 + // Command is valid, but execution has failed. This is used to indicate any non-temporary or unexpected problem, i.e. any problem that must be fixed before the command can succeed/be retried. For example, attempting to write a file when out of memory, attempting to arm when sensors are not calibrated, etc. + MAV_RESULT_FAILED MAV_RESULT = 4 + // Command is valid and is being executed. This will be followed by further progress updates, i.e. the component may send further COMMAND_ACK messages with result MAV_RESULT_IN_PROGRESS (at a rate decided by the implementation), and must terminate by sending a COMMAND_ACK message with final result of the operation. The COMMAND_ACK.progress field can be used to indicate the progress of the operation. + MAV_RESULT_IN_PROGRESS MAV_RESULT = 5 + // Command has been cancelled (as a result of receiving a COMMAND_CANCEL message). + MAV_RESULT_CANCELLED MAV_RESULT = 6 +) + +var labels_MAV_RESULT = map[MAV_RESULT]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAV_RESULT) MarshalText() ([]byte, error) { + if l, ok := labels_MAV_RESULT[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAV_RESULT = map[string]MAV_RESULT{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAV_RESULT) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAV_RESULT[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAV_RESULT) String() string { + if l, ok := labels_MAV_RESULT[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/avssuas/enum_mav_roi.go b/pkg/dialects/avssuas/enum_mav_roi.go new file mode 100644 index 000000000..56f7bb07e --- /dev/null +++ b/pkg/dialects/avssuas/enum_mav_roi.go @@ -0,0 +1,54 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package avssuas + +import ( + "errors" +) + +// The ROI (region of interest) for the vehicle. This can be +// be used by the vehicle for camera/vehicle attitude alignment (see +// MAV_CMD_NAV_ROI). +type MAV_ROI int + +const ( + // No region of interest. + MAV_ROI_NONE MAV_ROI = 0 + // Point toward next waypoint, with optional pitch/roll/yaw offset. + MAV_ROI_WPNEXT MAV_ROI = 1 + // Point toward given waypoint. + MAV_ROI_WPINDEX MAV_ROI = 2 + // Point toward fixed location. + MAV_ROI_LOCATION MAV_ROI = 3 + // Point toward of given id. + MAV_ROI_TARGET MAV_ROI = 4 +) + +var labels_MAV_ROI = map[MAV_ROI]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAV_ROI) MarshalText() ([]byte, error) { + if l, ok := labels_MAV_ROI[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAV_ROI = map[string]MAV_ROI{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAV_ROI) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAV_ROI[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAV_ROI) String() string { + if l, ok := labels_MAV_ROI[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/avssuas/enum_mav_sensor_orientation.go b/pkg/dialects/avssuas/enum_mav_sensor_orientation.go new file mode 100644 index 000000000..b345c9a43 --- /dev/null +++ b/pkg/dialects/avssuas/enum_mav_sensor_orientation.go @@ -0,0 +1,126 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package avssuas + +import ( + "errors" +) + +// Enumeration of sensor orientation, according to its rotations +type MAV_SENSOR_ORIENTATION int + +const ( + // Roll: 0, Pitch: 0, Yaw: 0 + MAV_SENSOR_ROTATION_NONE MAV_SENSOR_ORIENTATION = 0 + // Roll: 0, Pitch: 0, Yaw: 45 + MAV_SENSOR_ROTATION_YAW_45 MAV_SENSOR_ORIENTATION = 1 + // Roll: 0, Pitch: 0, Yaw: 90 + MAV_SENSOR_ROTATION_YAW_90 MAV_SENSOR_ORIENTATION = 2 + // Roll: 0, Pitch: 0, Yaw: 135 + MAV_SENSOR_ROTATION_YAW_135 MAV_SENSOR_ORIENTATION = 3 + // Roll: 0, Pitch: 0, Yaw: 180 + MAV_SENSOR_ROTATION_YAW_180 MAV_SENSOR_ORIENTATION = 4 + // Roll: 0, Pitch: 0, Yaw: 225 + MAV_SENSOR_ROTATION_YAW_225 MAV_SENSOR_ORIENTATION = 5 + // Roll: 0, Pitch: 0, Yaw: 270 + MAV_SENSOR_ROTATION_YAW_270 MAV_SENSOR_ORIENTATION = 6 + // Roll: 0, Pitch: 0, Yaw: 315 + MAV_SENSOR_ROTATION_YAW_315 MAV_SENSOR_ORIENTATION = 7 + // Roll: 180, Pitch: 0, Yaw: 0 + MAV_SENSOR_ROTATION_ROLL_180 MAV_SENSOR_ORIENTATION = 8 + // Roll: 180, Pitch: 0, Yaw: 45 + MAV_SENSOR_ROTATION_ROLL_180_YAW_45 MAV_SENSOR_ORIENTATION = 9 + // Roll: 180, Pitch: 0, Yaw: 90 + MAV_SENSOR_ROTATION_ROLL_180_YAW_90 MAV_SENSOR_ORIENTATION = 10 + // Roll: 180, Pitch: 0, Yaw: 135 + MAV_SENSOR_ROTATION_ROLL_180_YAW_135 MAV_SENSOR_ORIENTATION = 11 + // Roll: 0, Pitch: 180, Yaw: 0 + MAV_SENSOR_ROTATION_PITCH_180 MAV_SENSOR_ORIENTATION = 12 + // Roll: 180, Pitch: 0, Yaw: 225 + MAV_SENSOR_ROTATION_ROLL_180_YAW_225 MAV_SENSOR_ORIENTATION = 13 + // Roll: 180, Pitch: 0, Yaw: 270 + MAV_SENSOR_ROTATION_ROLL_180_YAW_270 MAV_SENSOR_ORIENTATION = 14 + // Roll: 180, Pitch: 0, Yaw: 315 + MAV_SENSOR_ROTATION_ROLL_180_YAW_315 MAV_SENSOR_ORIENTATION = 15 + // Roll: 90, Pitch: 0, Yaw: 0 + MAV_SENSOR_ROTATION_ROLL_90 MAV_SENSOR_ORIENTATION = 16 + // Roll: 90, Pitch: 0, Yaw: 45 + MAV_SENSOR_ROTATION_ROLL_90_YAW_45 MAV_SENSOR_ORIENTATION = 17 + // Roll: 90, Pitch: 0, Yaw: 90 + MAV_SENSOR_ROTATION_ROLL_90_YAW_90 MAV_SENSOR_ORIENTATION = 18 + // Roll: 90, Pitch: 0, Yaw: 135 + MAV_SENSOR_ROTATION_ROLL_90_YAW_135 MAV_SENSOR_ORIENTATION = 19 + // Roll: 270, Pitch: 0, Yaw: 0 + MAV_SENSOR_ROTATION_ROLL_270 MAV_SENSOR_ORIENTATION = 20 + // Roll: 270, Pitch: 0, Yaw: 45 + MAV_SENSOR_ROTATION_ROLL_270_YAW_45 MAV_SENSOR_ORIENTATION = 21 + // Roll: 270, Pitch: 0, Yaw: 90 + MAV_SENSOR_ROTATION_ROLL_270_YAW_90 MAV_SENSOR_ORIENTATION = 22 + // Roll: 270, Pitch: 0, Yaw: 135 + MAV_SENSOR_ROTATION_ROLL_270_YAW_135 MAV_SENSOR_ORIENTATION = 23 + // Roll: 0, Pitch: 90, Yaw: 0 + MAV_SENSOR_ROTATION_PITCH_90 MAV_SENSOR_ORIENTATION = 24 + // Roll: 0, Pitch: 270, Yaw: 0 + MAV_SENSOR_ROTATION_PITCH_270 MAV_SENSOR_ORIENTATION = 25 + // Roll: 0, Pitch: 180, Yaw: 90 + MAV_SENSOR_ROTATION_PITCH_180_YAW_90 MAV_SENSOR_ORIENTATION = 26 + // Roll: 0, Pitch: 180, Yaw: 270 + MAV_SENSOR_ROTATION_PITCH_180_YAW_270 MAV_SENSOR_ORIENTATION = 27 + // Roll: 90, Pitch: 90, Yaw: 0 + MAV_SENSOR_ROTATION_ROLL_90_PITCH_90 MAV_SENSOR_ORIENTATION = 28 + // Roll: 180, Pitch: 90, Yaw: 0 + MAV_SENSOR_ROTATION_ROLL_180_PITCH_90 MAV_SENSOR_ORIENTATION = 29 + // Roll: 270, Pitch: 90, Yaw: 0 + MAV_SENSOR_ROTATION_ROLL_270_PITCH_90 MAV_SENSOR_ORIENTATION = 30 + // Roll: 90, Pitch: 180, Yaw: 0 + MAV_SENSOR_ROTATION_ROLL_90_PITCH_180 MAV_SENSOR_ORIENTATION = 31 + // Roll: 270, Pitch: 180, Yaw: 0 + MAV_SENSOR_ROTATION_ROLL_270_PITCH_180 MAV_SENSOR_ORIENTATION = 32 + // Roll: 90, Pitch: 270, Yaw: 0 + MAV_SENSOR_ROTATION_ROLL_90_PITCH_270 MAV_SENSOR_ORIENTATION = 33 + // Roll: 180, Pitch: 270, Yaw: 0 + MAV_SENSOR_ROTATION_ROLL_180_PITCH_270 MAV_SENSOR_ORIENTATION = 34 + // Roll: 270, Pitch: 270, Yaw: 0 + MAV_SENSOR_ROTATION_ROLL_270_PITCH_270 MAV_SENSOR_ORIENTATION = 35 + // Roll: 90, Pitch: 180, Yaw: 90 + MAV_SENSOR_ROTATION_ROLL_90_PITCH_180_YAW_90 MAV_SENSOR_ORIENTATION = 36 + // Roll: 90, Pitch: 0, Yaw: 270 + MAV_SENSOR_ROTATION_ROLL_90_YAW_270 MAV_SENSOR_ORIENTATION = 37 + // Roll: 90, Pitch: 68, Yaw: 293 + MAV_SENSOR_ROTATION_ROLL_90_PITCH_68_YAW_293 MAV_SENSOR_ORIENTATION = 38 + // Pitch: 315 + MAV_SENSOR_ROTATION_PITCH_315 MAV_SENSOR_ORIENTATION = 39 + // Roll: 90, Pitch: 315 + MAV_SENSOR_ROTATION_ROLL_90_PITCH_315 MAV_SENSOR_ORIENTATION = 40 + // Custom orientation + MAV_SENSOR_ROTATION_CUSTOM MAV_SENSOR_ORIENTATION = 100 +) + +var labels_MAV_SENSOR_ORIENTATION = map[MAV_SENSOR_ORIENTATION]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAV_SENSOR_ORIENTATION) MarshalText() ([]byte, error) { + if l, ok := labels_MAV_SENSOR_ORIENTATION[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAV_SENSOR_ORIENTATION = map[string]MAV_SENSOR_ORIENTATION{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAV_SENSOR_ORIENTATION) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAV_SENSOR_ORIENTATION[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAV_SENSOR_ORIENTATION) String() string { + if l, ok := labels_MAV_SENSOR_ORIENTATION[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/avssuas/enum_mav_severity.go b/pkg/dialects/avssuas/enum_mav_severity.go new file mode 100644 index 000000000..e42da1676 --- /dev/null +++ b/pkg/dialects/avssuas/enum_mav_severity.go @@ -0,0 +1,58 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package avssuas + +import ( + "errors" +) + +// Indicates the severity level, generally used for status messages to indicate their relative urgency. Based on RFC-5424 using expanded definitions at: http://www.kiwisyslog.com/kb/info:-syslog-message-levels/. +type MAV_SEVERITY int + +const ( + // System is unusable. This is a "panic" condition. + MAV_SEVERITY_EMERGENCY MAV_SEVERITY = 0 + // Action should be taken immediately. Indicates error in non-critical systems. + MAV_SEVERITY_ALERT MAV_SEVERITY = 1 + // Action must be taken immediately. Indicates failure in a primary system. + MAV_SEVERITY_CRITICAL MAV_SEVERITY = 2 + // Indicates an error in secondary/redundant systems. + MAV_SEVERITY_ERROR MAV_SEVERITY = 3 + // Indicates about a possible future error if this is not resolved within a given timeframe. Example would be a low battery warning. + MAV_SEVERITY_WARNING MAV_SEVERITY = 4 + // An unusual event has occurred, though not an error condition. This should be investigated for the root cause. + MAV_SEVERITY_NOTICE MAV_SEVERITY = 5 + // Normal operational messages. Useful for logging. No action is required for these messages. + MAV_SEVERITY_INFO MAV_SEVERITY = 6 + // Useful non-operational messages that can assist in debugging. These should not occur during normal operation. + MAV_SEVERITY_DEBUG MAV_SEVERITY = 7 +) + +var labels_MAV_SEVERITY = map[MAV_SEVERITY]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAV_SEVERITY) MarshalText() ([]byte, error) { + if l, ok := labels_MAV_SEVERITY[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAV_SEVERITY = map[string]MAV_SEVERITY{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAV_SEVERITY) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAV_SEVERITY[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAV_SEVERITY) String() string { + if l, ok := labels_MAV_SEVERITY[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/avssuas/enum_mav_state.go b/pkg/dialects/avssuas/enum_mav_state.go new file mode 100644 index 000000000..ca009887b --- /dev/null +++ b/pkg/dialects/avssuas/enum_mav_state.go @@ -0,0 +1,59 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package avssuas + +import ( + "errors" +) + +type MAV_STATE int + +const ( + // Uninitialized system, state is unknown. + MAV_STATE_UNINIT MAV_STATE = 0 + // System is booting up. + MAV_STATE_BOOT MAV_STATE = 1 + // System is calibrating and not flight-ready. + MAV_STATE_CALIBRATING MAV_STATE = 2 + // System is grounded and on standby. It can be launched any time. + MAV_STATE_STANDBY MAV_STATE = 3 + // System is active and might be already airborne. Motors are engaged. + MAV_STATE_ACTIVE MAV_STATE = 4 + // System is in a non-normal flight mode. It can however still navigate. + MAV_STATE_CRITICAL MAV_STATE = 5 + // System is in a non-normal flight mode. It lost control over parts or over the whole airframe. It is in mayday and going down. + MAV_STATE_EMERGENCY MAV_STATE = 6 + // System just initialized its power-down sequence, will shut down now. + MAV_STATE_POWEROFF MAV_STATE = 7 + // System is terminating itself. + MAV_STATE_FLIGHT_TERMINATION MAV_STATE = 8 +) + +var labels_MAV_STATE = map[MAV_STATE]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAV_STATE) MarshalText() ([]byte, error) { + if l, ok := labels_MAV_STATE[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAV_STATE = map[string]MAV_STATE{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAV_STATE) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAV_STATE[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAV_STATE) String() string { + if l, ok := labels_MAV_STATE[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/avssuas/enum_mav_sys_status_sensor.go b/pkg/dialects/avssuas/enum_mav_sys_status_sensor.go new file mode 100644 index 000000000..88c5f39e0 --- /dev/null +++ b/pkg/dialects/avssuas/enum_mav_sys_status_sensor.go @@ -0,0 +1,106 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package avssuas + +import ( + "errors" +) + +// These encode the sensors whose status is sent as part of the SYS_STATUS message. +type MAV_SYS_STATUS_SENSOR int + +const ( + // 0x01 3D gyro + MAV_SYS_STATUS_SENSOR_3D_GYRO MAV_SYS_STATUS_SENSOR = 1 + // 0x02 3D accelerometer + MAV_SYS_STATUS_SENSOR_3D_ACCEL MAV_SYS_STATUS_SENSOR = 2 + // 0x04 3D magnetometer + MAV_SYS_STATUS_SENSOR_3D_MAG MAV_SYS_STATUS_SENSOR = 4 + // 0x08 absolute pressure + MAV_SYS_STATUS_SENSOR_ABSOLUTE_PRESSURE MAV_SYS_STATUS_SENSOR = 8 + // 0x10 differential pressure + MAV_SYS_STATUS_SENSOR_DIFFERENTIAL_PRESSURE MAV_SYS_STATUS_SENSOR = 16 + // 0x20 GPS + MAV_SYS_STATUS_SENSOR_GPS MAV_SYS_STATUS_SENSOR = 32 + // 0x40 optical flow + MAV_SYS_STATUS_SENSOR_OPTICAL_FLOW MAV_SYS_STATUS_SENSOR = 64 + // 0x80 computer vision position + MAV_SYS_STATUS_SENSOR_VISION_POSITION MAV_SYS_STATUS_SENSOR = 128 + // 0x100 laser based position + MAV_SYS_STATUS_SENSOR_LASER_POSITION MAV_SYS_STATUS_SENSOR = 256 + // 0x200 external ground truth (Vicon or Leica) + MAV_SYS_STATUS_SENSOR_EXTERNAL_GROUND_TRUTH MAV_SYS_STATUS_SENSOR = 512 + // 0x400 3D angular rate control + MAV_SYS_STATUS_SENSOR_ANGULAR_RATE_CONTROL MAV_SYS_STATUS_SENSOR = 1024 + // 0x800 attitude stabilization + MAV_SYS_STATUS_SENSOR_ATTITUDE_STABILIZATION MAV_SYS_STATUS_SENSOR = 2048 + // 0x1000 yaw position + MAV_SYS_STATUS_SENSOR_YAW_POSITION MAV_SYS_STATUS_SENSOR = 4096 + // 0x2000 z/altitude control + MAV_SYS_STATUS_SENSOR_Z_ALTITUDE_CONTROL MAV_SYS_STATUS_SENSOR = 8192 + // 0x4000 x/y position control + MAV_SYS_STATUS_SENSOR_XY_POSITION_CONTROL MAV_SYS_STATUS_SENSOR = 16384 + // 0x8000 motor outputs / control + MAV_SYS_STATUS_SENSOR_MOTOR_OUTPUTS MAV_SYS_STATUS_SENSOR = 32768 + // 0x10000 rc receiver + MAV_SYS_STATUS_SENSOR_RC_RECEIVER MAV_SYS_STATUS_SENSOR = 65536 + // 0x20000 2nd 3D gyro + MAV_SYS_STATUS_SENSOR_3D_GYRO2 MAV_SYS_STATUS_SENSOR = 131072 + // 0x40000 2nd 3D accelerometer + MAV_SYS_STATUS_SENSOR_3D_ACCEL2 MAV_SYS_STATUS_SENSOR = 262144 + // 0x80000 2nd 3D magnetometer + MAV_SYS_STATUS_SENSOR_3D_MAG2 MAV_SYS_STATUS_SENSOR = 524288 + // 0x100000 geofence + MAV_SYS_STATUS_GEOFENCE MAV_SYS_STATUS_SENSOR = 1048576 + // 0x200000 AHRS subsystem health + MAV_SYS_STATUS_AHRS MAV_SYS_STATUS_SENSOR = 2097152 + // 0x400000 Terrain subsystem health + MAV_SYS_STATUS_TERRAIN MAV_SYS_STATUS_SENSOR = 4194304 + // 0x800000 Motors are reversed + MAV_SYS_STATUS_REVERSE_MOTOR MAV_SYS_STATUS_SENSOR = 8388608 + // 0x1000000 Logging + MAV_SYS_STATUS_LOGGING MAV_SYS_STATUS_SENSOR = 16777216 + // 0x2000000 Battery + MAV_SYS_STATUS_SENSOR_BATTERY MAV_SYS_STATUS_SENSOR = 33554432 + // 0x4000000 Proximity + MAV_SYS_STATUS_SENSOR_PROXIMITY MAV_SYS_STATUS_SENSOR = 67108864 + // 0x8000000 Satellite Communication + MAV_SYS_STATUS_SENSOR_SATCOM MAV_SYS_STATUS_SENSOR = 134217728 + // 0x10000000 pre-arm check status. Always healthy when armed + MAV_SYS_STATUS_PREARM_CHECK MAV_SYS_STATUS_SENSOR = 268435456 + // 0x20000000 Avoidance/collision prevention + MAV_SYS_STATUS_OBSTACLE_AVOIDANCE MAV_SYS_STATUS_SENSOR = 536870912 + // 0x40000000 propulsion (actuator, esc, motor or propellor) + MAV_SYS_STATUS_SENSOR_PROPULSION MAV_SYS_STATUS_SENSOR = 1073741824 + // 0x80000000 Extended bit-field are used for further sensor status bits (needs to be set in onboard_control_sensors_present only) + MAV_SYS_STATUS_EXTENSION_USED MAV_SYS_STATUS_SENSOR = 2147483648 +) + +var labels_MAV_SYS_STATUS_SENSOR = map[MAV_SYS_STATUS_SENSOR]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAV_SYS_STATUS_SENSOR) MarshalText() ([]byte, error) { + if l, ok := labels_MAV_SYS_STATUS_SENSOR[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAV_SYS_STATUS_SENSOR = map[string]MAV_SYS_STATUS_SENSOR{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAV_SYS_STATUS_SENSOR) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAV_SYS_STATUS_SENSOR[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAV_SYS_STATUS_SENSOR) String() string { + if l, ok := labels_MAV_SYS_STATUS_SENSOR[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/avssuas/enum_mav_sys_status_sensor_extended.go b/pkg/dialects/avssuas/enum_mav_sys_status_sensor_extended.go new file mode 100644 index 000000000..092827225 --- /dev/null +++ b/pkg/dialects/avssuas/enum_mav_sys_status_sensor_extended.go @@ -0,0 +1,44 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package avssuas + +import ( + "errors" +) + +// These encode the sensors whose status is sent as part of the SYS_STATUS message in the extended fields. +type MAV_SYS_STATUS_SENSOR_EXTENDED int + +const ( + // 0x01 Recovery system (parachute, balloon, retracts etc) + MAV_SYS_STATUS_RECOVERY_SYSTEM MAV_SYS_STATUS_SENSOR_EXTENDED = 1 +) + +var labels_MAV_SYS_STATUS_SENSOR_EXTENDED = map[MAV_SYS_STATUS_SENSOR_EXTENDED]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAV_SYS_STATUS_SENSOR_EXTENDED) MarshalText() ([]byte, error) { + if l, ok := labels_MAV_SYS_STATUS_SENSOR_EXTENDED[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAV_SYS_STATUS_SENSOR_EXTENDED = map[string]MAV_SYS_STATUS_SENSOR_EXTENDED{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAV_SYS_STATUS_SENSOR_EXTENDED) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAV_SYS_STATUS_SENSOR_EXTENDED[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAV_SYS_STATUS_SENSOR_EXTENDED) String() string { + if l, ok := labels_MAV_SYS_STATUS_SENSOR_EXTENDED[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/avssuas/enum_mav_tunnel_payload_type.go b/pkg/dialects/avssuas/enum_mav_tunnel_payload_type.go new file mode 100644 index 000000000..9e60f8ef3 --- /dev/null +++ b/pkg/dialects/avssuas/enum_mav_tunnel_payload_type.go @@ -0,0 +1,63 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package avssuas + +import ( + "errors" +) + +type MAV_TUNNEL_PAYLOAD_TYPE int + +const ( + // Encoding of payload unknown. + MAV_TUNNEL_PAYLOAD_TYPE_UNKNOWN MAV_TUNNEL_PAYLOAD_TYPE = 0 + // Registered for STorM32 gimbal controller. + MAV_TUNNEL_PAYLOAD_TYPE_STORM32_RESERVED0 MAV_TUNNEL_PAYLOAD_TYPE = 200 + // Registered for STorM32 gimbal controller. + MAV_TUNNEL_PAYLOAD_TYPE_STORM32_RESERVED1 MAV_TUNNEL_PAYLOAD_TYPE = 201 + // Registered for STorM32 gimbal controller. + MAV_TUNNEL_PAYLOAD_TYPE_STORM32_RESERVED2 MAV_TUNNEL_PAYLOAD_TYPE = 202 + // Registered for STorM32 gimbal controller. + MAV_TUNNEL_PAYLOAD_TYPE_STORM32_RESERVED3 MAV_TUNNEL_PAYLOAD_TYPE = 203 + // Registered for STorM32 gimbal controller. + MAV_TUNNEL_PAYLOAD_TYPE_STORM32_RESERVED4 MAV_TUNNEL_PAYLOAD_TYPE = 204 + // Registered for STorM32 gimbal controller. + MAV_TUNNEL_PAYLOAD_TYPE_STORM32_RESERVED5 MAV_TUNNEL_PAYLOAD_TYPE = 205 + // Registered for STorM32 gimbal controller. + MAV_TUNNEL_PAYLOAD_TYPE_STORM32_RESERVED6 MAV_TUNNEL_PAYLOAD_TYPE = 206 + // Registered for STorM32 gimbal controller. + MAV_TUNNEL_PAYLOAD_TYPE_STORM32_RESERVED7 MAV_TUNNEL_PAYLOAD_TYPE = 207 + // Registered for STorM32 gimbal controller. + MAV_TUNNEL_PAYLOAD_TYPE_STORM32_RESERVED8 MAV_TUNNEL_PAYLOAD_TYPE = 208 + // Registered for STorM32 gimbal controller. + MAV_TUNNEL_PAYLOAD_TYPE_STORM32_RESERVED9 MAV_TUNNEL_PAYLOAD_TYPE = 209 +) + +var labels_MAV_TUNNEL_PAYLOAD_TYPE = map[MAV_TUNNEL_PAYLOAD_TYPE]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAV_TUNNEL_PAYLOAD_TYPE) MarshalText() ([]byte, error) { + if l, ok := labels_MAV_TUNNEL_PAYLOAD_TYPE[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAV_TUNNEL_PAYLOAD_TYPE = map[string]MAV_TUNNEL_PAYLOAD_TYPE{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAV_TUNNEL_PAYLOAD_TYPE) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAV_TUNNEL_PAYLOAD_TYPE[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAV_TUNNEL_PAYLOAD_TYPE) String() string { + if l, ok := labels_MAV_TUNNEL_PAYLOAD_TYPE[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/avssuas/enum_mav_type.go b/pkg/dialects/avssuas/enum_mav_type.go new file mode 100644 index 000000000..2f7101e93 --- /dev/null +++ b/pkg/dialects/avssuas/enum_mav_type.go @@ -0,0 +1,126 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package avssuas + +import ( + "errors" +) + +// MAVLINK component type reported in HEARTBEAT message. Flight controllers must report the type of the vehicle on which they are mounted (e.g. MAV_TYPE_OCTOROTOR). All other components must report a value appropriate for their type (e.g. a camera must use MAV_TYPE_CAMERA). +type MAV_TYPE int + +const ( + // Generic micro air vehicle + MAV_TYPE_GENERIC MAV_TYPE = 0 + // Fixed wing aircraft. + MAV_TYPE_FIXED_WING MAV_TYPE = 1 + // Quadrotor + MAV_TYPE_QUADROTOR MAV_TYPE = 2 + // Coaxial helicopter + MAV_TYPE_COAXIAL MAV_TYPE = 3 + // Normal helicopter with tail rotor. + MAV_TYPE_HELICOPTER MAV_TYPE = 4 + // Ground installation + MAV_TYPE_ANTENNA_TRACKER MAV_TYPE = 5 + // Operator control unit / ground control station + MAV_TYPE_GCS MAV_TYPE = 6 + // Airship, controlled + MAV_TYPE_AIRSHIP MAV_TYPE = 7 + // Free balloon, uncontrolled + MAV_TYPE_FREE_BALLOON MAV_TYPE = 8 + // Rocket + MAV_TYPE_ROCKET MAV_TYPE = 9 + // Ground rover + MAV_TYPE_GROUND_ROVER MAV_TYPE = 10 + // Surface vessel, boat, ship + MAV_TYPE_SURFACE_BOAT MAV_TYPE = 11 + // Submarine + MAV_TYPE_SUBMARINE MAV_TYPE = 12 + // Hexarotor + MAV_TYPE_HEXAROTOR MAV_TYPE = 13 + // Octorotor + MAV_TYPE_OCTOROTOR MAV_TYPE = 14 + // Tricopter + MAV_TYPE_TRICOPTER MAV_TYPE = 15 + // Flapping wing + MAV_TYPE_FLAPPING_WING MAV_TYPE = 16 + // Kite + MAV_TYPE_KITE MAV_TYPE = 17 + // Onboard companion controller + MAV_TYPE_ONBOARD_CONTROLLER MAV_TYPE = 18 + // Two-rotor VTOL using control surfaces in vertical operation in addition. Tailsitter. + MAV_TYPE_VTOL_DUOROTOR MAV_TYPE = 19 + // Quad-rotor VTOL using a V-shaped quad config in vertical operation. Tailsitter. + MAV_TYPE_VTOL_QUADROTOR MAV_TYPE = 20 + // Tiltrotor VTOL + MAV_TYPE_VTOL_TILTROTOR MAV_TYPE = 21 + // VTOL reserved 2 + MAV_TYPE_VTOL_RESERVED2 MAV_TYPE = 22 + // VTOL reserved 3 + MAV_TYPE_VTOL_RESERVED3 MAV_TYPE = 23 + // VTOL reserved 4 + MAV_TYPE_VTOL_RESERVED4 MAV_TYPE = 24 + // VTOL reserved 5 + MAV_TYPE_VTOL_RESERVED5 MAV_TYPE = 25 + // Gimbal + MAV_TYPE_GIMBAL MAV_TYPE = 26 + // ADSB system + MAV_TYPE_ADSB MAV_TYPE = 27 + // Steerable, nonrigid airfoil + MAV_TYPE_PARAFOIL MAV_TYPE = 28 + // Dodecarotor + MAV_TYPE_DODECAROTOR MAV_TYPE = 29 + // Camera + MAV_TYPE_CAMERA MAV_TYPE = 30 + // Charging station + MAV_TYPE_CHARGING_STATION MAV_TYPE = 31 + // FLARM collision avoidance system + MAV_TYPE_FLARM MAV_TYPE = 32 + // Servo + MAV_TYPE_SERVO MAV_TYPE = 33 + // Open Drone ID. See https://mavlink.io/en/services/opendroneid.html. + MAV_TYPE_ODID MAV_TYPE = 34 + // Decarotor + MAV_TYPE_DECAROTOR MAV_TYPE = 35 + // Battery + MAV_TYPE_BATTERY MAV_TYPE = 36 + // Parachute + MAV_TYPE_PARACHUTE MAV_TYPE = 37 + // Log + MAV_TYPE_LOG MAV_TYPE = 38 + // OSD + MAV_TYPE_OSD MAV_TYPE = 39 + // IMU + MAV_TYPE_IMU MAV_TYPE = 40 + // GPS + MAV_TYPE_GPS MAV_TYPE = 41 +) + +var labels_MAV_TYPE = map[MAV_TYPE]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAV_TYPE) MarshalText() ([]byte, error) { + if l, ok := labels_MAV_TYPE[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAV_TYPE = map[string]MAV_TYPE{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAV_TYPE) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAV_TYPE[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAV_TYPE) String() string { + if l, ok := labels_MAV_TYPE[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/avssuas/enum_mav_vtol_state.go b/pkg/dialects/avssuas/enum_mav_vtol_state.go new file mode 100644 index 000000000..74089da65 --- /dev/null +++ b/pkg/dialects/avssuas/enum_mav_vtol_state.go @@ -0,0 +1,52 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package avssuas + +import ( + "errors" +) + +// Enumeration of VTOL states +type MAV_VTOL_STATE int + +const ( + // MAV is not configured as VTOL + MAV_VTOL_STATE_UNDEFINED MAV_VTOL_STATE = 0 + // VTOL is in transition from multicopter to fixed-wing + MAV_VTOL_STATE_TRANSITION_TO_FW MAV_VTOL_STATE = 1 + // VTOL is in transition from fixed-wing to multicopter + MAV_VTOL_STATE_TRANSITION_TO_MC MAV_VTOL_STATE = 2 + // VTOL is in multicopter state + MAV_VTOL_STATE_MC MAV_VTOL_STATE = 3 + // VTOL is in fixed-wing state + MAV_VTOL_STATE_FW MAV_VTOL_STATE = 4 +) + +var labels_MAV_VTOL_STATE = map[MAV_VTOL_STATE]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAV_VTOL_STATE) MarshalText() ([]byte, error) { + if l, ok := labels_MAV_VTOL_STATE[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAV_VTOL_STATE = map[string]MAV_VTOL_STATE{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAV_VTOL_STATE) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAV_VTOL_STATE[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAV_VTOL_STATE) String() string { + if l, ok := labels_MAV_VTOL_STATE[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/avssuas/enum_mav_winch_status_flag.go b/pkg/dialects/avssuas/enum_mav_winch_status_flag.go new file mode 100644 index 000000000..2e14dc0a6 --- /dev/null +++ b/pkg/dialects/avssuas/enum_mav_winch_status_flag.go @@ -0,0 +1,64 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package avssuas + +import ( + "errors" +) + +// Winch status flags used in WINCH_STATUS +type MAV_WINCH_STATUS_FLAG int + +const ( + // Winch is healthy + MAV_WINCH_STATUS_HEALTHY MAV_WINCH_STATUS_FLAG = 1 + // Winch line is fully retracted + MAV_WINCH_STATUS_FULLY_RETRACTED MAV_WINCH_STATUS_FLAG = 2 + // Winch motor is moving + MAV_WINCH_STATUS_MOVING MAV_WINCH_STATUS_FLAG = 4 + // Winch clutch is engaged allowing motor to move freely. + MAV_WINCH_STATUS_CLUTCH_ENGAGED MAV_WINCH_STATUS_FLAG = 8 + // Winch is locked by locking mechanism. + MAV_WINCH_STATUS_LOCKED MAV_WINCH_STATUS_FLAG = 16 + // Winch is gravity dropping payload. + MAV_WINCH_STATUS_DROPPING MAV_WINCH_STATUS_FLAG = 32 + // Winch is arresting payload descent. + MAV_WINCH_STATUS_ARRESTING MAV_WINCH_STATUS_FLAG = 64 + // Winch is using torque measurements to sense the ground. + MAV_WINCH_STATUS_GROUND_SENSE MAV_WINCH_STATUS_FLAG = 128 + // Winch is returning to the fully retracted position. + MAV_WINCH_STATUS_RETRACTING MAV_WINCH_STATUS_FLAG = 256 + // Winch is redelivering the payload. This is a failover state if the line tension goes above a threshold during RETRACTING. + MAV_WINCH_STATUS_REDELIVER MAV_WINCH_STATUS_FLAG = 512 + // Winch is abandoning the line and possibly payload. Winch unspools the entire calculated line length. This is a failover state from REDELIVER if the number of attemps exceeds a threshold. + MAV_WINCH_STATUS_ABANDON_LINE MAV_WINCH_STATUS_FLAG = 1024 +) + +var labels_MAV_WINCH_STATUS_FLAG = map[MAV_WINCH_STATUS_FLAG]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAV_WINCH_STATUS_FLAG) MarshalText() ([]byte, error) { + if l, ok := labels_MAV_WINCH_STATUS_FLAG[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAV_WINCH_STATUS_FLAG = map[string]MAV_WINCH_STATUS_FLAG{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAV_WINCH_STATUS_FLAG) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAV_WINCH_STATUS_FLAG[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAV_WINCH_STATUS_FLAG) String() string { + if l, ok := labels_MAV_WINCH_STATUS_FLAG[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/avssuas/enum_mavlink_data_stream_type.go b/pkg/dialects/avssuas/enum_mavlink_data_stream_type.go new file mode 100644 index 000000000..e69e2e035 --- /dev/null +++ b/pkg/dialects/avssuas/enum_mavlink_data_stream_type.go @@ -0,0 +1,47 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package avssuas + +import ( + "errors" +) + +type MAVLINK_DATA_STREAM_TYPE int + +const ( + MAVLINK_DATA_STREAM_IMG_JPEG MAVLINK_DATA_STREAM_TYPE = 0 + MAVLINK_DATA_STREAM_IMG_BMP MAVLINK_DATA_STREAM_TYPE = 1 + MAVLINK_DATA_STREAM_IMG_RAW8U MAVLINK_DATA_STREAM_TYPE = 2 + MAVLINK_DATA_STREAM_IMG_RAW32U MAVLINK_DATA_STREAM_TYPE = 3 + MAVLINK_DATA_STREAM_IMG_PGM MAVLINK_DATA_STREAM_TYPE = 4 + MAVLINK_DATA_STREAM_IMG_PNG MAVLINK_DATA_STREAM_TYPE = 5 +) + +var labels_MAVLINK_DATA_STREAM_TYPE = map[MAVLINK_DATA_STREAM_TYPE]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAVLINK_DATA_STREAM_TYPE) MarshalText() ([]byte, error) { + if l, ok := labels_MAVLINK_DATA_STREAM_TYPE[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAVLINK_DATA_STREAM_TYPE = map[string]MAVLINK_DATA_STREAM_TYPE{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAVLINK_DATA_STREAM_TYPE) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAVLINK_DATA_STREAM_TYPE[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAVLINK_DATA_STREAM_TYPE) String() string { + if l, ok := labels_MAVLINK_DATA_STREAM_TYPE[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/avssuas/enum_motor_test_order.go b/pkg/dialects/avssuas/enum_motor_test_order.go new file mode 100644 index 000000000..17fdbf46f --- /dev/null +++ b/pkg/dialects/avssuas/enum_motor_test_order.go @@ -0,0 +1,48 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package avssuas + +import ( + "errors" +) + +// Sequence that motors are tested when using MAV_CMD_DO_MOTOR_TEST. +type MOTOR_TEST_ORDER int + +const ( + // Default autopilot motor test method. + MOTOR_TEST_ORDER_DEFAULT MOTOR_TEST_ORDER = 0 + // Motor numbers are specified as their index in a predefined vehicle-specific sequence. + MOTOR_TEST_ORDER_SEQUENCE MOTOR_TEST_ORDER = 1 + // Motor numbers are specified as the output as labeled on the board. + MOTOR_TEST_ORDER_BOARD MOTOR_TEST_ORDER = 2 +) + +var labels_MOTOR_TEST_ORDER = map[MOTOR_TEST_ORDER]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MOTOR_TEST_ORDER) MarshalText() ([]byte, error) { + if l, ok := labels_MOTOR_TEST_ORDER[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MOTOR_TEST_ORDER = map[string]MOTOR_TEST_ORDER{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MOTOR_TEST_ORDER) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MOTOR_TEST_ORDER[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MOTOR_TEST_ORDER) String() string { + if l, ok := labels_MOTOR_TEST_ORDER[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/avssuas/enum_motor_test_throttle_type.go b/pkg/dialects/avssuas/enum_motor_test_throttle_type.go new file mode 100644 index 000000000..f3381a4ea --- /dev/null +++ b/pkg/dialects/avssuas/enum_motor_test_throttle_type.go @@ -0,0 +1,50 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package avssuas + +import ( + "errors" +) + +// Defines how throttle value is represented in MAV_CMD_DO_MOTOR_TEST. +type MOTOR_TEST_THROTTLE_TYPE int + +const ( + // Throttle as a percentage (0 ~ 100) + MOTOR_TEST_THROTTLE_PERCENT MOTOR_TEST_THROTTLE_TYPE = 0 + // Throttle as an absolute PWM value (normally in range of 1000~2000). + MOTOR_TEST_THROTTLE_PWM MOTOR_TEST_THROTTLE_TYPE = 1 + // Throttle pass-through from pilot's transmitter. + MOTOR_TEST_THROTTLE_PILOT MOTOR_TEST_THROTTLE_TYPE = 2 + // Per-motor compass calibration test. + MOTOR_TEST_COMPASS_CAL MOTOR_TEST_THROTTLE_TYPE = 3 +) + +var labels_MOTOR_TEST_THROTTLE_TYPE = map[MOTOR_TEST_THROTTLE_TYPE]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MOTOR_TEST_THROTTLE_TYPE) MarshalText() ([]byte, error) { + if l, ok := labels_MOTOR_TEST_THROTTLE_TYPE[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MOTOR_TEST_THROTTLE_TYPE = map[string]MOTOR_TEST_THROTTLE_TYPE{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MOTOR_TEST_THROTTLE_TYPE) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MOTOR_TEST_THROTTLE_TYPE[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MOTOR_TEST_THROTTLE_TYPE) String() string { + if l, ok := labels_MOTOR_TEST_THROTTLE_TYPE[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/avssuas/enum_nav_vtol_land_options.go b/pkg/dialects/avssuas/enum_nav_vtol_land_options.go new file mode 100644 index 000000000..c24432f73 --- /dev/null +++ b/pkg/dialects/avssuas/enum_nav_vtol_land_options.go @@ -0,0 +1,48 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package avssuas + +import ( + "errors" +) + +type NAV_VTOL_LAND_OPTIONS int + +const ( + // Default autopilot landing behaviour. + NAV_VTOL_LAND_OPTIONS_DEFAULT NAV_VTOL_LAND_OPTIONS = 0 + // Descend in fixed wing mode, transitioning to multicopter mode for vertical landing when close to the ground. + // The fixed wing descent pattern is at the discretion of the vehicle (e.g. transition altitude, loiter direction, radius, and speed, etc.). + NAV_VTOL_LAND_OPTIONS_FW_DESCENT NAV_VTOL_LAND_OPTIONS = 1 + // Land in multicopter mode on reaching the landing co-ordinates (the whole landing is by "hover descent"). + NAV_VTOL_LAND_OPTIONS_HOVER_DESCENT NAV_VTOL_LAND_OPTIONS = 2 +) + +var labels_NAV_VTOL_LAND_OPTIONS = map[NAV_VTOL_LAND_OPTIONS]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e NAV_VTOL_LAND_OPTIONS) MarshalText() ([]byte, error) { + if l, ok := labels_NAV_VTOL_LAND_OPTIONS[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_NAV_VTOL_LAND_OPTIONS = map[string]NAV_VTOL_LAND_OPTIONS{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *NAV_VTOL_LAND_OPTIONS) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_NAV_VTOL_LAND_OPTIONS[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e NAV_VTOL_LAND_OPTIONS) String() string { + if l, ok := labels_NAV_VTOL_LAND_OPTIONS[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/avssuas/enum_orbit_yaw_behaviour.go b/pkg/dialects/avssuas/enum_orbit_yaw_behaviour.go new file mode 100644 index 000000000..430f6b8a7 --- /dev/null +++ b/pkg/dialects/avssuas/enum_orbit_yaw_behaviour.go @@ -0,0 +1,52 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package avssuas + +import ( + "errors" +) + +// Yaw behaviour during orbit flight. +type ORBIT_YAW_BEHAVIOUR int + +const ( + // Vehicle front points to the center (default). + ORBIT_YAW_BEHAVIOUR_HOLD_FRONT_TO_CIRCLE_CENTER ORBIT_YAW_BEHAVIOUR = 0 + // Vehicle front holds heading when message received. + ORBIT_YAW_BEHAVIOUR_HOLD_INITIAL_HEADING ORBIT_YAW_BEHAVIOUR = 1 + // Yaw uncontrolled. + ORBIT_YAW_BEHAVIOUR_UNCONTROLLED ORBIT_YAW_BEHAVIOUR = 2 + // Vehicle front follows flight path (tangential to circle). + ORBIT_YAW_BEHAVIOUR_HOLD_FRONT_TANGENT_TO_CIRCLE ORBIT_YAW_BEHAVIOUR = 3 + // Yaw controlled by RC input. + ORBIT_YAW_BEHAVIOUR_RC_CONTROLLED ORBIT_YAW_BEHAVIOUR = 4 +) + +var labels_ORBIT_YAW_BEHAVIOUR = map[ORBIT_YAW_BEHAVIOUR]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e ORBIT_YAW_BEHAVIOUR) MarshalText() ([]byte, error) { + if l, ok := labels_ORBIT_YAW_BEHAVIOUR[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_ORBIT_YAW_BEHAVIOUR = map[string]ORBIT_YAW_BEHAVIOUR{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *ORBIT_YAW_BEHAVIOUR) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_ORBIT_YAW_BEHAVIOUR[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e ORBIT_YAW_BEHAVIOUR) String() string { + if l, ok := labels_ORBIT_YAW_BEHAVIOUR[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/avssuas/enum_parachute_action.go b/pkg/dialects/avssuas/enum_parachute_action.go new file mode 100644 index 000000000..c44f7abe7 --- /dev/null +++ b/pkg/dialects/avssuas/enum_parachute_action.go @@ -0,0 +1,48 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package avssuas + +import ( + "errors" +) + +// Parachute actions. Trigger release and enable/disable auto-release. +type PARACHUTE_ACTION int + +const ( + // Disable auto-release of parachute (i.e. release triggered by crash detectors). + PARACHUTE_DISABLE PARACHUTE_ACTION = 0 + // Enable auto-release of parachute. + PARACHUTE_ENABLE PARACHUTE_ACTION = 1 + // Release parachute and kill motors. + PARACHUTE_RELEASE PARACHUTE_ACTION = 2 +) + +var labels_PARACHUTE_ACTION = map[PARACHUTE_ACTION]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e PARACHUTE_ACTION) MarshalText() ([]byte, error) { + if l, ok := labels_PARACHUTE_ACTION[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_PARACHUTE_ACTION = map[string]PARACHUTE_ACTION{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *PARACHUTE_ACTION) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_PARACHUTE_ACTION[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e PARACHUTE_ACTION) String() string { + if l, ok := labels_PARACHUTE_ACTION[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/avssuas/enum_param_ack.go b/pkg/dialects/avssuas/enum_param_ack.go new file mode 100644 index 000000000..60ca12a71 --- /dev/null +++ b/pkg/dialects/avssuas/enum_param_ack.go @@ -0,0 +1,50 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package avssuas + +import ( + "errors" +) + +// Result from PARAM_EXT_SET message (or a PARAM_SET within a transaction). +type PARAM_ACK int + +const ( + // Parameter value ACCEPTED and SET + PARAM_ACK_ACCEPTED PARAM_ACK = 0 + // Parameter value UNKNOWN/UNSUPPORTED + PARAM_ACK_VALUE_UNSUPPORTED PARAM_ACK = 1 + // Parameter failed to set + PARAM_ACK_FAILED PARAM_ACK = 2 + // Parameter value received but not yet set/accepted. A subsequent PARAM_ACK_TRANSACTION or PARAM_EXT_ACK with the final result will follow once operation is completed. This is returned immediately for parameters that take longer to set, indicating taht the the parameter was recieved and does not need to be resent. + PARAM_ACK_IN_PROGRESS PARAM_ACK = 3 +) + +var labels_PARAM_ACK = map[PARAM_ACK]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e PARAM_ACK) MarshalText() ([]byte, error) { + if l, ok := labels_PARAM_ACK[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_PARAM_ACK = map[string]PARAM_ACK{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *PARAM_ACK) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_PARAM_ACK[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e PARAM_ACK) String() string { + if l, ok := labels_PARAM_ACK[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/avssuas/enum_position_target_typemask.go b/pkg/dialects/avssuas/enum_position_target_typemask.go new file mode 100644 index 000000000..40e016012 --- /dev/null +++ b/pkg/dialects/avssuas/enum_position_target_typemask.go @@ -0,0 +1,66 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package avssuas + +import ( + "errors" +) + +// Bitmap to indicate which dimensions should be ignored by the vehicle: a value of 0b0000000000000000 or 0b0000001000000000 indicates that none of the setpoint dimensions should be ignored. If bit 9 is set the floats afx afy afz should be interpreted as force instead of acceleration. +type POSITION_TARGET_TYPEMASK int + +const ( + // Ignore position x + POSITION_TARGET_TYPEMASK_X_IGNORE POSITION_TARGET_TYPEMASK = 1 + // Ignore position y + POSITION_TARGET_TYPEMASK_Y_IGNORE POSITION_TARGET_TYPEMASK = 2 + // Ignore position z + POSITION_TARGET_TYPEMASK_Z_IGNORE POSITION_TARGET_TYPEMASK = 4 + // Ignore velocity x + POSITION_TARGET_TYPEMASK_VX_IGNORE POSITION_TARGET_TYPEMASK = 8 + // Ignore velocity y + POSITION_TARGET_TYPEMASK_VY_IGNORE POSITION_TARGET_TYPEMASK = 16 + // Ignore velocity z + POSITION_TARGET_TYPEMASK_VZ_IGNORE POSITION_TARGET_TYPEMASK = 32 + // Ignore acceleration x + POSITION_TARGET_TYPEMASK_AX_IGNORE POSITION_TARGET_TYPEMASK = 64 + // Ignore acceleration y + POSITION_TARGET_TYPEMASK_AY_IGNORE POSITION_TARGET_TYPEMASK = 128 + // Ignore acceleration z + POSITION_TARGET_TYPEMASK_AZ_IGNORE POSITION_TARGET_TYPEMASK = 256 + // Use force instead of acceleration + POSITION_TARGET_TYPEMASK_FORCE_SET POSITION_TARGET_TYPEMASK = 512 + // Ignore yaw + POSITION_TARGET_TYPEMASK_YAW_IGNORE POSITION_TARGET_TYPEMASK = 1024 + // Ignore yaw rate + POSITION_TARGET_TYPEMASK_YAW_RATE_IGNORE POSITION_TARGET_TYPEMASK = 2048 +) + +var labels_POSITION_TARGET_TYPEMASK = map[POSITION_TARGET_TYPEMASK]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e POSITION_TARGET_TYPEMASK) MarshalText() ([]byte, error) { + if l, ok := labels_POSITION_TARGET_TYPEMASK[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_POSITION_TARGET_TYPEMASK = map[string]POSITION_TARGET_TYPEMASK{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *POSITION_TARGET_TYPEMASK) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_POSITION_TARGET_TYPEMASK[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e POSITION_TARGET_TYPEMASK) String() string { + if l, ok := labels_POSITION_TARGET_TYPEMASK[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/avssuas/enum_precision_land_mode.go b/pkg/dialects/avssuas/enum_precision_land_mode.go new file mode 100644 index 000000000..09bdd6c74 --- /dev/null +++ b/pkg/dialects/avssuas/enum_precision_land_mode.go @@ -0,0 +1,48 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package avssuas + +import ( + "errors" +) + +// Precision land modes (used in MAV_CMD_NAV_LAND). +type PRECISION_LAND_MODE int + +const ( + // Normal (non-precision) landing. + PRECISION_LAND_MODE_DISABLED PRECISION_LAND_MODE = 0 + // Use precision landing if beacon detected when land command accepted, otherwise land normally. + PRECISION_LAND_MODE_OPPORTUNISTIC PRECISION_LAND_MODE = 1 + // Use precision landing, searching for beacon if not found when land command accepted (land normally if beacon cannot be found). + PRECISION_LAND_MODE_REQUIRED PRECISION_LAND_MODE = 2 +) + +var labels_PRECISION_LAND_MODE = map[PRECISION_LAND_MODE]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e PRECISION_LAND_MODE) MarshalText() ([]byte, error) { + if l, ok := labels_PRECISION_LAND_MODE[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_PRECISION_LAND_MODE = map[string]PRECISION_LAND_MODE{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *PRECISION_LAND_MODE) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_PRECISION_LAND_MODE[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e PRECISION_LAND_MODE) String() string { + if l, ok := labels_PRECISION_LAND_MODE[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/avssuas/enum_rc_type.go b/pkg/dialects/avssuas/enum_rc_type.go new file mode 100644 index 000000000..d4cf69ce6 --- /dev/null +++ b/pkg/dialects/avssuas/enum_rc_type.go @@ -0,0 +1,46 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package avssuas + +import ( + "errors" +) + +// RC type +type RC_TYPE int + +const ( + // Spektrum DSM2 + RC_TYPE_SPEKTRUM_DSM2 RC_TYPE = 0 + // Spektrum DSMX + RC_TYPE_SPEKTRUM_DSMX RC_TYPE = 1 +) + +var labels_RC_TYPE = map[RC_TYPE]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e RC_TYPE) MarshalText() ([]byte, error) { + if l, ok := labels_RC_TYPE[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_RC_TYPE = map[string]RC_TYPE{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *RC_TYPE) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_RC_TYPE[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e RC_TYPE) String() string { + if l, ok := labels_RC_TYPE[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/avssuas/enum_rtk_baseline_coordinate_system.go b/pkg/dialects/avssuas/enum_rtk_baseline_coordinate_system.go new file mode 100644 index 000000000..8c3fa6db5 --- /dev/null +++ b/pkg/dialects/avssuas/enum_rtk_baseline_coordinate_system.go @@ -0,0 +1,46 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package avssuas + +import ( + "errors" +) + +// RTK GPS baseline coordinate system, used for RTK corrections +type RTK_BASELINE_COORDINATE_SYSTEM int + +const ( + // Earth-centered, Earth-fixed + RTK_BASELINE_COORDINATE_SYSTEM_ECEF RTK_BASELINE_COORDINATE_SYSTEM = 0 + // RTK basestation centered, north, east, down + RTK_BASELINE_COORDINATE_SYSTEM_NED RTK_BASELINE_COORDINATE_SYSTEM = 1 +) + +var labels_RTK_BASELINE_COORDINATE_SYSTEM = map[RTK_BASELINE_COORDINATE_SYSTEM]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e RTK_BASELINE_COORDINATE_SYSTEM) MarshalText() ([]byte, error) { + if l, ok := labels_RTK_BASELINE_COORDINATE_SYSTEM[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_RTK_BASELINE_COORDINATE_SYSTEM = map[string]RTK_BASELINE_COORDINATE_SYSTEM{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *RTK_BASELINE_COORDINATE_SYSTEM) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_RTK_BASELINE_COORDINATE_SYSTEM[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e RTK_BASELINE_COORDINATE_SYSTEM) String() string { + if l, ok := labels_RTK_BASELINE_COORDINATE_SYSTEM[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/avssuas/enum_serial_control_dev.go b/pkg/dialects/avssuas/enum_serial_control_dev.go new file mode 100644 index 000000000..395aad9a7 --- /dev/null +++ b/pkg/dialects/avssuas/enum_serial_control_dev.go @@ -0,0 +1,72 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package avssuas + +import ( + "errors" +) + +// SERIAL_CONTROL device types +type SERIAL_CONTROL_DEV int + +const ( + // First telemetry port + SERIAL_CONTROL_DEV_TELEM1 SERIAL_CONTROL_DEV = 0 + // Second telemetry port + SERIAL_CONTROL_DEV_TELEM2 SERIAL_CONTROL_DEV = 1 + // First GPS port + SERIAL_CONTROL_DEV_GPS1 SERIAL_CONTROL_DEV = 2 + // Second GPS port + SERIAL_CONTROL_DEV_GPS2 SERIAL_CONTROL_DEV = 3 + // system shell + SERIAL_CONTROL_DEV_SHELL SERIAL_CONTROL_DEV = 10 + // SERIAL0 + SERIAL_CONTROL_SERIAL0 SERIAL_CONTROL_DEV = 100 + // SERIAL1 + SERIAL_CONTROL_SERIAL1 SERIAL_CONTROL_DEV = 101 + // SERIAL2 + SERIAL_CONTROL_SERIAL2 SERIAL_CONTROL_DEV = 102 + // SERIAL3 + SERIAL_CONTROL_SERIAL3 SERIAL_CONTROL_DEV = 103 + // SERIAL4 + SERIAL_CONTROL_SERIAL4 SERIAL_CONTROL_DEV = 104 + // SERIAL5 + SERIAL_CONTROL_SERIAL5 SERIAL_CONTROL_DEV = 105 + // SERIAL6 + SERIAL_CONTROL_SERIAL6 SERIAL_CONTROL_DEV = 106 + // SERIAL7 + SERIAL_CONTROL_SERIAL7 SERIAL_CONTROL_DEV = 107 + // SERIAL8 + SERIAL_CONTROL_SERIAL8 SERIAL_CONTROL_DEV = 108 + // SERIAL9 + SERIAL_CONTROL_SERIAL9 SERIAL_CONTROL_DEV = 109 +) + +var labels_SERIAL_CONTROL_DEV = map[SERIAL_CONTROL_DEV]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e SERIAL_CONTROL_DEV) MarshalText() ([]byte, error) { + if l, ok := labels_SERIAL_CONTROL_DEV[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_SERIAL_CONTROL_DEV = map[string]SERIAL_CONTROL_DEV{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *SERIAL_CONTROL_DEV) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_SERIAL_CONTROL_DEV[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e SERIAL_CONTROL_DEV) String() string { + if l, ok := labels_SERIAL_CONTROL_DEV[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/avssuas/enum_serial_control_flag.go b/pkg/dialects/avssuas/enum_serial_control_flag.go new file mode 100644 index 000000000..3ba02c2de --- /dev/null +++ b/pkg/dialects/avssuas/enum_serial_control_flag.go @@ -0,0 +1,52 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package avssuas + +import ( + "errors" +) + +// SERIAL_CONTROL flags (bitmask) +type SERIAL_CONTROL_FLAG int + +const ( + // Set if this is a reply + SERIAL_CONTROL_FLAG_REPLY SERIAL_CONTROL_FLAG = 1 + // Set if the sender wants the receiver to send a response as another SERIAL_CONTROL message + SERIAL_CONTROL_FLAG_RESPOND SERIAL_CONTROL_FLAG = 2 + // Set if access to the serial port should be removed from whatever driver is currently using it, giving exclusive access to the SERIAL_CONTROL protocol. The port can be handed back by sending a request without this flag set + SERIAL_CONTROL_FLAG_EXCLUSIVE SERIAL_CONTROL_FLAG = 4 + // Block on writes to the serial port + SERIAL_CONTROL_FLAG_BLOCKING SERIAL_CONTROL_FLAG = 8 + // Send multiple replies until port is drained + SERIAL_CONTROL_FLAG_MULTI SERIAL_CONTROL_FLAG = 16 +) + +var labels_SERIAL_CONTROL_FLAG = map[SERIAL_CONTROL_FLAG]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e SERIAL_CONTROL_FLAG) MarshalText() ([]byte, error) { + if l, ok := labels_SERIAL_CONTROL_FLAG[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_SERIAL_CONTROL_FLAG = map[string]SERIAL_CONTROL_FLAG{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *SERIAL_CONTROL_FLAG) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_SERIAL_CONTROL_FLAG[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e SERIAL_CONTROL_FLAG) String() string { + if l, ok := labels_SERIAL_CONTROL_FLAG[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/avssuas/enum_set_focus_type.go b/pkg/dialects/avssuas/enum_set_focus_type.go new file mode 100644 index 000000000..f6fd245dc --- /dev/null +++ b/pkg/dialects/avssuas/enum_set_focus_type.go @@ -0,0 +1,56 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package avssuas + +import ( + "errors" +) + +// Focus types for MAV_CMD_SET_CAMERA_FOCUS +type SET_FOCUS_TYPE int + +const ( + // Focus one step increment (-1 for focusing in, 1 for focusing out towards infinity). + FOCUS_TYPE_STEP SET_FOCUS_TYPE = 0 + // Continuous focus up/down until stopped (-1 for focusing in, 1 for focusing out towards infinity, 0 to stop focusing) + FOCUS_TYPE_CONTINUOUS SET_FOCUS_TYPE = 1 + // Focus value as proportion of full camera focus range (a value between 0.0 and 100.0) + FOCUS_TYPE_RANGE SET_FOCUS_TYPE = 2 + // Focus value in metres. Note that there is no message to get the valid focus range of the camera, so this can type can only be used for cameras where the range is known (implying that this cannot reliably be used in a GCS for an arbitrary camera). + FOCUS_TYPE_METERS SET_FOCUS_TYPE = 3 + // Focus automatically. + FOCUS_TYPE_AUTO SET_FOCUS_TYPE = 4 + // Single auto focus. Mainly used for still pictures. Usually abbreviated as AF-S. + FOCUS_TYPE_AUTO_SINGLE SET_FOCUS_TYPE = 5 + // Continuous auto focus. Mainly used for dynamic scenes. Abbreviated as AF-C. + FOCUS_TYPE_AUTO_CONTINUOUS SET_FOCUS_TYPE = 6 +) + +var labels_SET_FOCUS_TYPE = map[SET_FOCUS_TYPE]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e SET_FOCUS_TYPE) MarshalText() ([]byte, error) { + if l, ok := labels_SET_FOCUS_TYPE[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_SET_FOCUS_TYPE = map[string]SET_FOCUS_TYPE{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *SET_FOCUS_TYPE) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_SET_FOCUS_TYPE[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e SET_FOCUS_TYPE) String() string { + if l, ok := labels_SET_FOCUS_TYPE[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/avssuas/enum_storage_status.go b/pkg/dialects/avssuas/enum_storage_status.go new file mode 100644 index 000000000..306a06c5e --- /dev/null +++ b/pkg/dialects/avssuas/enum_storage_status.go @@ -0,0 +1,50 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package avssuas + +import ( + "errors" +) + +// Flags to indicate the status of camera storage. +type STORAGE_STATUS int + +const ( + // Storage is missing (no microSD card loaded for example.) + STORAGE_STATUS_EMPTY STORAGE_STATUS = 0 + // Storage present but unformatted. + STORAGE_STATUS_UNFORMATTED STORAGE_STATUS = 1 + // Storage present and ready. + STORAGE_STATUS_READY STORAGE_STATUS = 2 + // Camera does not supply storage status information. Capacity information in STORAGE_INFORMATION fields will be ignored. + STORAGE_STATUS_NOT_SUPPORTED STORAGE_STATUS = 3 +) + +var labels_STORAGE_STATUS = map[STORAGE_STATUS]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e STORAGE_STATUS) MarshalText() ([]byte, error) { + if l, ok := labels_STORAGE_STATUS[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_STORAGE_STATUS = map[string]STORAGE_STATUS{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *STORAGE_STATUS) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_STORAGE_STATUS[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e STORAGE_STATUS) String() string { + if l, ok := labels_STORAGE_STATUS[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/avssuas/enum_storage_type.go b/pkg/dialects/avssuas/enum_storage_type.go new file mode 100644 index 000000000..4dbac2d05 --- /dev/null +++ b/pkg/dialects/avssuas/enum_storage_type.go @@ -0,0 +1,60 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package avssuas + +import ( + "errors" +) + +// Flags to indicate the type of storage. +type STORAGE_TYPE int + +const ( + // Storage type is not known. + STORAGE_TYPE_UNKNOWN STORAGE_TYPE = 0 + // Storage type is USB device. + STORAGE_TYPE_USB_STICK STORAGE_TYPE = 1 + // Storage type is SD card. + STORAGE_TYPE_SD STORAGE_TYPE = 2 + // Storage type is microSD card. + STORAGE_TYPE_MICROSD STORAGE_TYPE = 3 + // Storage type is CFast. + STORAGE_TYPE_CF STORAGE_TYPE = 4 + // Storage type is CFexpress. + STORAGE_TYPE_CFE STORAGE_TYPE = 5 + // Storage type is XQD. + STORAGE_TYPE_XQD STORAGE_TYPE = 6 + // Storage type is HD mass storage type. + STORAGE_TYPE_HD STORAGE_TYPE = 7 + // Storage type is other, not listed type. + STORAGE_TYPE_OTHER STORAGE_TYPE = 254 +) + +var labels_STORAGE_TYPE = map[STORAGE_TYPE]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e STORAGE_TYPE) MarshalText() ([]byte, error) { + if l, ok := labels_STORAGE_TYPE[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_STORAGE_TYPE = map[string]STORAGE_TYPE{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *STORAGE_TYPE) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_STORAGE_TYPE[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e STORAGE_TYPE) String() string { + if l, ok := labels_STORAGE_TYPE[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/avssuas/enum_storage_usage_flag.go b/pkg/dialects/avssuas/enum_storage_usage_flag.go new file mode 100644 index 000000000..29ae18c70 --- /dev/null +++ b/pkg/dialects/avssuas/enum_storage_usage_flag.go @@ -0,0 +1,50 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package avssuas + +import ( + "errors" +) + +// Flags to indicate usage for a particular storage (see STORAGE_INFORMATION.storage_usage and MAV_CMD_SET_STORAGE_USAGE). +type STORAGE_USAGE_FLAG int + +const ( + // Always set to 1 (indicates STORAGE_INFORMATION.storage_usage is supported). + STORAGE_USAGE_FLAG_SET STORAGE_USAGE_FLAG = 1 + // Storage for saving photos. + STORAGE_USAGE_FLAG_PHOTO STORAGE_USAGE_FLAG = 2 + // Storage for saving videos. + STORAGE_USAGE_FLAG_VIDEO STORAGE_USAGE_FLAG = 4 + // Storage for saving logs. + STORAGE_USAGE_FLAG_LOGS STORAGE_USAGE_FLAG = 8 +) + +var labels_STORAGE_USAGE_FLAG = map[STORAGE_USAGE_FLAG]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e STORAGE_USAGE_FLAG) MarshalText() ([]byte, error) { + if l, ok := labels_STORAGE_USAGE_FLAG[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_STORAGE_USAGE_FLAG = map[string]STORAGE_USAGE_FLAG{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *STORAGE_USAGE_FLAG) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_STORAGE_USAGE_FLAG[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e STORAGE_USAGE_FLAG) String() string { + if l, ok := labels_STORAGE_USAGE_FLAG[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/avssuas/enum_tune_format.go b/pkg/dialects/avssuas/enum_tune_format.go new file mode 100644 index 000000000..0fdd14e46 --- /dev/null +++ b/pkg/dialects/avssuas/enum_tune_format.go @@ -0,0 +1,46 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package avssuas + +import ( + "errors" +) + +// Tune formats (used for vehicle buzzer/tone generation). +type TUNE_FORMAT int + +const ( + // Format is QBasic 1.1 Play: https://www.qbasic.net/en/reference/qb11/Statement/PLAY-006.htm. + TUNE_FORMAT_QBASIC1_1 TUNE_FORMAT = 1 + // Format is Modern Music Markup Language (MML): https://en.wikipedia.org/wiki/Music_Macro_Language#Modern_MML. + TUNE_FORMAT_MML_MODERN TUNE_FORMAT = 2 +) + +var labels_TUNE_FORMAT = map[TUNE_FORMAT]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e TUNE_FORMAT) MarshalText() ([]byte, error) { + if l, ok := labels_TUNE_FORMAT[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_TUNE_FORMAT = map[string]TUNE_FORMAT{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *TUNE_FORMAT) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_TUNE_FORMAT[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e TUNE_FORMAT) String() string { + if l, ok := labels_TUNE_FORMAT[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/avssuas/enum_uavcan_node_health.go b/pkg/dialects/avssuas/enum_uavcan_node_health.go new file mode 100644 index 000000000..23f32f07d --- /dev/null +++ b/pkg/dialects/avssuas/enum_uavcan_node_health.go @@ -0,0 +1,50 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package avssuas + +import ( + "errors" +) + +// Generalized UAVCAN node health +type UAVCAN_NODE_HEALTH int + +const ( + // The node is functioning properly. + UAVCAN_NODE_HEALTH_OK UAVCAN_NODE_HEALTH = 0 + // A critical parameter went out of range or the node has encountered a minor failure. + UAVCAN_NODE_HEALTH_WARNING UAVCAN_NODE_HEALTH = 1 + // The node has encountered a major failure. + UAVCAN_NODE_HEALTH_ERROR UAVCAN_NODE_HEALTH = 2 + // The node has suffered a fatal malfunction. + UAVCAN_NODE_HEALTH_CRITICAL UAVCAN_NODE_HEALTH = 3 +) + +var labels_UAVCAN_NODE_HEALTH = map[UAVCAN_NODE_HEALTH]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e UAVCAN_NODE_HEALTH) MarshalText() ([]byte, error) { + if l, ok := labels_UAVCAN_NODE_HEALTH[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_UAVCAN_NODE_HEALTH = map[string]UAVCAN_NODE_HEALTH{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *UAVCAN_NODE_HEALTH) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_UAVCAN_NODE_HEALTH[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e UAVCAN_NODE_HEALTH) String() string { + if l, ok := labels_UAVCAN_NODE_HEALTH[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/avssuas/enum_uavcan_node_mode.go b/pkg/dialects/avssuas/enum_uavcan_node_mode.go new file mode 100644 index 000000000..1b979bb71 --- /dev/null +++ b/pkg/dialects/avssuas/enum_uavcan_node_mode.go @@ -0,0 +1,52 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package avssuas + +import ( + "errors" +) + +// Generalized UAVCAN node mode +type UAVCAN_NODE_MODE int + +const ( + // The node is performing its primary functions. + UAVCAN_NODE_MODE_OPERATIONAL UAVCAN_NODE_MODE = 0 + // The node is initializing; this mode is entered immediately after startup. + UAVCAN_NODE_MODE_INITIALIZATION UAVCAN_NODE_MODE = 1 + // The node is under maintenance. + UAVCAN_NODE_MODE_MAINTENANCE UAVCAN_NODE_MODE = 2 + // The node is in the process of updating its software. + UAVCAN_NODE_MODE_SOFTWARE_UPDATE UAVCAN_NODE_MODE = 3 + // The node is no longer available online. + UAVCAN_NODE_MODE_OFFLINE UAVCAN_NODE_MODE = 7 +) + +var labels_UAVCAN_NODE_MODE = map[UAVCAN_NODE_MODE]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e UAVCAN_NODE_MODE) MarshalText() ([]byte, error) { + if l, ok := labels_UAVCAN_NODE_MODE[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_UAVCAN_NODE_MODE = map[string]UAVCAN_NODE_MODE{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *UAVCAN_NODE_MODE) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_UAVCAN_NODE_MODE[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e UAVCAN_NODE_MODE) String() string { + if l, ok := labels_UAVCAN_NODE_MODE[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/avssuas/enum_utm_data_avail_flags.go b/pkg/dialects/avssuas/enum_utm_data_avail_flags.go new file mode 100644 index 000000000..73626e5d3 --- /dev/null +++ b/pkg/dialects/avssuas/enum_utm_data_avail_flags.go @@ -0,0 +1,58 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package avssuas + +import ( + "errors" +) + +// Flags for the global position report. +type UTM_DATA_AVAIL_FLAGS int + +const ( + // The field time contains valid data. + UTM_DATA_AVAIL_FLAGS_TIME_VALID UTM_DATA_AVAIL_FLAGS = 1 + // The field uas_id contains valid data. + UTM_DATA_AVAIL_FLAGS_UAS_ID_AVAILABLE UTM_DATA_AVAIL_FLAGS = 2 + // The fields lat, lon and h_acc contain valid data. + UTM_DATA_AVAIL_FLAGS_POSITION_AVAILABLE UTM_DATA_AVAIL_FLAGS = 4 + // The fields alt and v_acc contain valid data. + UTM_DATA_AVAIL_FLAGS_ALTITUDE_AVAILABLE UTM_DATA_AVAIL_FLAGS = 8 + // The field relative_alt contains valid data. + UTM_DATA_AVAIL_FLAGS_RELATIVE_ALTITUDE_AVAILABLE UTM_DATA_AVAIL_FLAGS = 16 + // The fields vx and vy contain valid data. + UTM_DATA_AVAIL_FLAGS_HORIZONTAL_VELO_AVAILABLE UTM_DATA_AVAIL_FLAGS = 32 + // The field vz contains valid data. + UTM_DATA_AVAIL_FLAGS_VERTICAL_VELO_AVAILABLE UTM_DATA_AVAIL_FLAGS = 64 + // The fields next_lat, next_lon and next_alt contain valid data. + UTM_DATA_AVAIL_FLAGS_NEXT_WAYPOINT_AVAILABLE UTM_DATA_AVAIL_FLAGS = 128 +) + +var labels_UTM_DATA_AVAIL_FLAGS = map[UTM_DATA_AVAIL_FLAGS]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e UTM_DATA_AVAIL_FLAGS) MarshalText() ([]byte, error) { + if l, ok := labels_UTM_DATA_AVAIL_FLAGS[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_UTM_DATA_AVAIL_FLAGS = map[string]UTM_DATA_AVAIL_FLAGS{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *UTM_DATA_AVAIL_FLAGS) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_UTM_DATA_AVAIL_FLAGS[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e UTM_DATA_AVAIL_FLAGS) String() string { + if l, ok := labels_UTM_DATA_AVAIL_FLAGS[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/avssuas/enum_utm_flight_state.go b/pkg/dialects/avssuas/enum_utm_flight_state.go new file mode 100644 index 000000000..956b94027 --- /dev/null +++ b/pkg/dialects/avssuas/enum_utm_flight_state.go @@ -0,0 +1,52 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package avssuas + +import ( + "errors" +) + +// Airborne status of UAS. +type UTM_FLIGHT_STATE int + +const ( + // The flight state can't be determined. + UTM_FLIGHT_STATE_UNKNOWN UTM_FLIGHT_STATE = 1 + // UAS on ground. + UTM_FLIGHT_STATE_GROUND UTM_FLIGHT_STATE = 2 + // UAS airborne. + UTM_FLIGHT_STATE_AIRBORNE UTM_FLIGHT_STATE = 3 + // UAS is in an emergency flight state. + UTM_FLIGHT_STATE_EMERGENCY UTM_FLIGHT_STATE = 16 + // UAS has no active controls. + UTM_FLIGHT_STATE_NOCTRL UTM_FLIGHT_STATE = 32 +) + +var labels_UTM_FLIGHT_STATE = map[UTM_FLIGHT_STATE]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e UTM_FLIGHT_STATE) MarshalText() ([]byte, error) { + if l, ok := labels_UTM_FLIGHT_STATE[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_UTM_FLIGHT_STATE = map[string]UTM_FLIGHT_STATE{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *UTM_FLIGHT_STATE) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_UTM_FLIGHT_STATE[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e UTM_FLIGHT_STATE) String() string { + if l, ok := labels_UTM_FLIGHT_STATE[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/avssuas/enum_video_stream_status_flags.go b/pkg/dialects/avssuas/enum_video_stream_status_flags.go new file mode 100644 index 000000000..c08194649 --- /dev/null +++ b/pkg/dialects/avssuas/enum_video_stream_status_flags.go @@ -0,0 +1,46 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package avssuas + +import ( + "errors" +) + +// Stream status flags (Bitmap) +type VIDEO_STREAM_STATUS_FLAGS int + +const ( + // Stream is active (running) + VIDEO_STREAM_STATUS_FLAGS_RUNNING VIDEO_STREAM_STATUS_FLAGS = 1 + // Stream is thermal imaging + VIDEO_STREAM_STATUS_FLAGS_THERMAL VIDEO_STREAM_STATUS_FLAGS = 2 +) + +var labels_VIDEO_STREAM_STATUS_FLAGS = map[VIDEO_STREAM_STATUS_FLAGS]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e VIDEO_STREAM_STATUS_FLAGS) MarshalText() ([]byte, error) { + if l, ok := labels_VIDEO_STREAM_STATUS_FLAGS[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_VIDEO_STREAM_STATUS_FLAGS = map[string]VIDEO_STREAM_STATUS_FLAGS{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *VIDEO_STREAM_STATUS_FLAGS) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_VIDEO_STREAM_STATUS_FLAGS[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e VIDEO_STREAM_STATUS_FLAGS) String() string { + if l, ok := labels_VIDEO_STREAM_STATUS_FLAGS[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/avssuas/enum_video_stream_type.go b/pkg/dialects/avssuas/enum_video_stream_type.go new file mode 100644 index 000000000..6547ba17e --- /dev/null +++ b/pkg/dialects/avssuas/enum_video_stream_type.go @@ -0,0 +1,50 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package avssuas + +import ( + "errors" +) + +// Video stream types +type VIDEO_STREAM_TYPE int + +const ( + // Stream is RTSP + VIDEO_STREAM_TYPE_RTSP VIDEO_STREAM_TYPE = 0 + // Stream is RTP UDP (URI gives the port number) + VIDEO_STREAM_TYPE_RTPUDP VIDEO_STREAM_TYPE = 1 + // Stream is MPEG on TCP + VIDEO_STREAM_TYPE_TCP_MPEG VIDEO_STREAM_TYPE = 2 + // Stream is h.264 on MPEG TS (URI gives the port number) + VIDEO_STREAM_TYPE_MPEG_TS_H264 VIDEO_STREAM_TYPE = 3 +) + +var labels_VIDEO_STREAM_TYPE = map[VIDEO_STREAM_TYPE]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e VIDEO_STREAM_TYPE) MarshalText() ([]byte, error) { + if l, ok := labels_VIDEO_STREAM_TYPE[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_VIDEO_STREAM_TYPE = map[string]VIDEO_STREAM_TYPE{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *VIDEO_STREAM_TYPE) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_VIDEO_STREAM_TYPE[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e VIDEO_STREAM_TYPE) String() string { + if l, ok := labels_VIDEO_STREAM_TYPE[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/avssuas/enum_vtol_transition_heading.go b/pkg/dialects/avssuas/enum_vtol_transition_heading.go new file mode 100644 index 000000000..ec3400620 --- /dev/null +++ b/pkg/dialects/avssuas/enum_vtol_transition_heading.go @@ -0,0 +1,52 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package avssuas + +import ( + "errors" +) + +// Direction of VTOL transition +type VTOL_TRANSITION_HEADING int + +const ( + // Respect the heading configuration of the vehicle. + VTOL_TRANSITION_HEADING_VEHICLE_DEFAULT VTOL_TRANSITION_HEADING = 0 + // Use the heading pointing towards the next waypoint. + VTOL_TRANSITION_HEADING_NEXT_WAYPOINT VTOL_TRANSITION_HEADING = 1 + // Use the heading on takeoff (while sitting on the ground). + VTOL_TRANSITION_HEADING_TAKEOFF VTOL_TRANSITION_HEADING = 2 + // Use the specified heading in parameter 4. + VTOL_TRANSITION_HEADING_SPECIFIED VTOL_TRANSITION_HEADING = 3 + // Use the current heading when reaching takeoff altitude (potentially facing the wind when weather-vaning is active). + VTOL_TRANSITION_HEADING_ANY VTOL_TRANSITION_HEADING = 4 +) + +var labels_VTOL_TRANSITION_HEADING = map[VTOL_TRANSITION_HEADING]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e VTOL_TRANSITION_HEADING) MarshalText() ([]byte, error) { + if l, ok := labels_VTOL_TRANSITION_HEADING[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_VTOL_TRANSITION_HEADING = map[string]VTOL_TRANSITION_HEADING{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *VTOL_TRANSITION_HEADING) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_VTOL_TRANSITION_HEADING[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e VTOL_TRANSITION_HEADING) String() string { + if l, ok := labels_VTOL_TRANSITION_HEADING[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/avssuas/enum_wifi_config_ap_mode.go b/pkg/dialects/avssuas/enum_wifi_config_ap_mode.go new file mode 100644 index 000000000..6d058efef --- /dev/null +++ b/pkg/dialects/avssuas/enum_wifi_config_ap_mode.go @@ -0,0 +1,50 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package avssuas + +import ( + "errors" +) + +// WiFi Mode. +type WIFI_CONFIG_AP_MODE int + +const ( + // WiFi mode is undefined. + WIFI_CONFIG_AP_MODE_UNDEFINED WIFI_CONFIG_AP_MODE = 0 + // WiFi configured as an access point. + WIFI_CONFIG_AP_MODE_AP WIFI_CONFIG_AP_MODE = 1 + // WiFi configured as a station connected to an existing local WiFi network. + WIFI_CONFIG_AP_MODE_STATION WIFI_CONFIG_AP_MODE = 2 + // WiFi disabled. + WIFI_CONFIG_AP_MODE_DISABLED WIFI_CONFIG_AP_MODE = 3 +) + +var labels_WIFI_CONFIG_AP_MODE = map[WIFI_CONFIG_AP_MODE]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e WIFI_CONFIG_AP_MODE) MarshalText() ([]byte, error) { + if l, ok := labels_WIFI_CONFIG_AP_MODE[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_WIFI_CONFIG_AP_MODE = map[string]WIFI_CONFIG_AP_MODE{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *WIFI_CONFIG_AP_MODE) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_WIFI_CONFIG_AP_MODE[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e WIFI_CONFIG_AP_MODE) String() string { + if l, ok := labels_WIFI_CONFIG_AP_MODE[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/avssuas/enum_wifi_config_ap_response.go b/pkg/dialects/avssuas/enum_wifi_config_ap_response.go new file mode 100644 index 000000000..f995e5e0d --- /dev/null +++ b/pkg/dialects/avssuas/enum_wifi_config_ap_response.go @@ -0,0 +1,54 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package avssuas + +import ( + "errors" +) + +// Possible responses from a WIFI_CONFIG_AP message. +type WIFI_CONFIG_AP_RESPONSE int + +const ( + // Undefined response. Likely an indicative of a system that doesn't support this request. + WIFI_CONFIG_AP_RESPONSE_UNDEFINED WIFI_CONFIG_AP_RESPONSE = 0 + // Changes accepted. + WIFI_CONFIG_AP_RESPONSE_ACCEPTED WIFI_CONFIG_AP_RESPONSE = 1 + // Changes rejected. + WIFI_CONFIG_AP_RESPONSE_REJECTED WIFI_CONFIG_AP_RESPONSE = 2 + // Invalid Mode. + WIFI_CONFIG_AP_RESPONSE_MODE_ERROR WIFI_CONFIG_AP_RESPONSE = 3 + // Invalid SSID. + WIFI_CONFIG_AP_RESPONSE_SSID_ERROR WIFI_CONFIG_AP_RESPONSE = 4 + // Invalid Password. + WIFI_CONFIG_AP_RESPONSE_PASSWORD_ERROR WIFI_CONFIG_AP_RESPONSE = 5 +) + +var labels_WIFI_CONFIG_AP_RESPONSE = map[WIFI_CONFIG_AP_RESPONSE]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e WIFI_CONFIG_AP_RESPONSE) MarshalText() ([]byte, error) { + if l, ok := labels_WIFI_CONFIG_AP_RESPONSE[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_WIFI_CONFIG_AP_RESPONSE = map[string]WIFI_CONFIG_AP_RESPONSE{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *WIFI_CONFIG_AP_RESPONSE) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_WIFI_CONFIG_AP_RESPONSE[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e WIFI_CONFIG_AP_RESPONSE) String() string { + if l, ok := labels_WIFI_CONFIG_AP_RESPONSE[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/avssuas/enum_winch_actions.go b/pkg/dialects/avssuas/enum_winch_actions.go new file mode 100644 index 000000000..9085e6d76 --- /dev/null +++ b/pkg/dialects/avssuas/enum_winch_actions.go @@ -0,0 +1,60 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package avssuas + +import ( + "errors" +) + +// Winch actions. +type WINCH_ACTIONS int + +const ( + // Allow motor to freewheel. + WINCH_RELAXED WINCH_ACTIONS = 0 + // Wind or unwind specified length of line, optionally using specified rate. + WINCH_RELATIVE_LENGTH_CONTROL WINCH_ACTIONS = 1 + // Wind or unwind line at specified rate. + WINCH_RATE_CONTROL WINCH_ACTIONS = 2 + // Perform the locking sequence to relieve motor while in the fully retracted position. Only action and instance command parameters are used, others are ignored. + WINCH_LOCK WINCH_ACTIONS = 3 + // Sequence of drop, slow down, touch down, reel up, lock. Only action and instance command parameters are used, others are ignored. + WINCH_DELIVER WINCH_ACTIONS = 4 + // Engage motor and hold current position. Only action and instance command parameters are used, others are ignored. + WINCH_HOLD WINCH_ACTIONS = 5 + // Return the reel to the fully retracted position. Only action and instance command parameters are used, others are ignored. + WINCH_RETRACT WINCH_ACTIONS = 6 + // Load the reel with line. The winch will calculate the total loaded length and stop when the tension exceeds a threshold. Only action and instance command parameters are used, others are ignored. + WINCH_LOAD_LINE WINCH_ACTIONS = 7 + // Spool out the entire length of the line. Only action and instance command parameters are used, others are ignored. + WINCH_ABANDON_LINE WINCH_ACTIONS = 8 +) + +var labels_WINCH_ACTIONS = map[WINCH_ACTIONS]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e WINCH_ACTIONS) MarshalText() ([]byte, error) { + if l, ok := labels_WINCH_ACTIONS[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_WINCH_ACTIONS = map[string]WINCH_ACTIONS{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *WINCH_ACTIONS) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_WINCH_ACTIONS[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e WINCH_ACTIONS) String() string { + if l, ok := labels_WINCH_ACTIONS[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/avssuas/msg_actuator_control_target.go b/pkg/dialects/avssuas/msg_actuator_control_target.go new file mode 100644 index 000000000..6d4c37e65 --- /dev/null +++ b/pkg/dialects/avssuas/msg_actuator_control_target.go @@ -0,0 +1,18 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package avssuas + +// Set the vehicle attitude and body angular rates. +type MessageActuatorControlTarget struct { + // Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. + TimeUsec uint64 + // Actuator group. The "_mlx" indicates this is a multi-instance message and a MAVLink parser should use this field to difference between instances. + GroupMlx uint8 + // Actuator controls. Normed to -1..+1 where 0 is neutral position. Throttle for single rotation direction motors is 0..1, negative range for reverse direction. Standard mapping for attitude controls (group 0): (index 0-7): roll, pitch, yaw, throttle, flaps, spoilers, airbrakes, landing gear. Load a pass-through mixer to repurpose them as generic outputs. + Controls [8]float32 +} + +// GetID implements the msg.Message interface. +func (*MessageActuatorControlTarget) GetID() uint32 { + return 140 +} diff --git a/pkg/dialects/avssuas/msg_actuator_output_status.go b/pkg/dialects/avssuas/msg_actuator_output_status.go new file mode 100644 index 000000000..80ce01c91 --- /dev/null +++ b/pkg/dialects/avssuas/msg_actuator_output_status.go @@ -0,0 +1,18 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package avssuas + +// The raw values of the actuator outputs (e.g. on Pixhawk, from MAIN, AUX ports). This message supersedes SERVO_OUTPUT_RAW. +type MessageActuatorOutputStatus struct { + // Timestamp (since system boot). + TimeUsec uint64 + // Active outputs + Active uint32 + // Servo / motor output array values. Zero values indicate unused channels. + Actuator [32]float32 +} + +// GetID implements the msg.Message interface. +func (*MessageActuatorOutputStatus) GetID() uint32 { + return 375 +} diff --git a/pkg/dialects/avssuas/msg_adsb_vehicle.go b/pkg/dialects/avssuas/msg_adsb_vehicle.go new file mode 100644 index 000000000..0592e20c5 --- /dev/null +++ b/pkg/dialects/avssuas/msg_adsb_vehicle.go @@ -0,0 +1,38 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package avssuas + +// The location and information of an ADSB vehicle +type MessageAdsbVehicle struct { + // ICAO address + IcaoAddress uint32 `mavname:"ICAO_address"` + // Latitude + Lat int32 + // Longitude + Lon int32 + // ADSB altitude type. + AltitudeType ADSB_ALTITUDE_TYPE `mavenum:"uint8"` + // Altitude(ASL) + Altitude int32 + // Course over ground + Heading uint16 + // The horizontal velocity + HorVelocity uint16 + // The vertical velocity. Positive is up + VerVelocity int16 + // The callsign, 8+null + Callsign string `mavlen:"9"` + // ADSB emitter type. + EmitterType ADSB_EMITTER_TYPE `mavenum:"uint8"` + // Time since last communication in seconds + Tslc uint8 + // Bitmap to indicate various statuses including valid data fields + Flags ADSB_FLAGS `mavenum:"uint16"` + // Squawk code + Squawk uint16 +} + +// GetID implements the msg.Message interface. +func (*MessageAdsbVehicle) GetID() uint32 { + return 246 +} diff --git a/pkg/dialects/avssuas/msg_ais_vessel.go b/pkg/dialects/avssuas/msg_ais_vessel.go new file mode 100644 index 000000000..e540b8f1d --- /dev/null +++ b/pkg/dialects/avssuas/msg_ais_vessel.go @@ -0,0 +1,46 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package avssuas + +// The location and information of an AIS vessel +type MessageAisVessel struct { + // Mobile Marine Service Identifier, 9 decimal digits + Mmsi uint32 `mavname:"MMSI"` + // Latitude + Lat int32 + // Longitude + Lon int32 + // Course over ground + Cog uint16 `mavname:"COG"` + // True heading + Heading uint16 + // Speed over ground + Velocity uint16 + // Turn rate + TurnRate int8 + // Navigational status + NavigationalStatus AIS_NAV_STATUS `mavenum:"uint8"` + // Type of vessels + Type AIS_TYPE `mavenum:"uint8"` + // Distance from lat/lon location to bow + DimensionBow uint16 + // Distance from lat/lon location to stern + DimensionStern uint16 + // Distance from lat/lon location to port side + DimensionPort uint8 + // Distance from lat/lon location to starboard side + DimensionStarboard uint8 + // The vessel callsign + Callsign string `mavlen:"7"` + // The vessel name + Name string `mavlen:"20"` + // Time since last communication in seconds + Tslc uint16 + // Bitmask to indicate various statuses including valid data fields + Flags AIS_FLAGS `mavenum:"uint16"` +} + +// GetID implements the msg.Message interface. +func (*MessageAisVessel) GetID() uint32 { + return 301 +} diff --git a/pkg/dialects/avssuas/msg_altitude.go b/pkg/dialects/avssuas/msg_altitude.go new file mode 100644 index 000000000..da5fbd2b6 --- /dev/null +++ b/pkg/dialects/avssuas/msg_altitude.go @@ -0,0 +1,26 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package avssuas + +// The current system altitude. +type MessageAltitude struct { + // Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. + TimeUsec uint64 + // This altitude measure is initialized on system boot and monotonic (it is never reset, but represents the local altitude change). The only guarantee on this field is that it will never be reset and is consistent within a flight. The recommended value for this field is the uncorrected barometric altitude at boot time. This altitude will also drift and vary between flights. + AltitudeMonotonic float32 + // This altitude measure is strictly above mean sea level and might be non-monotonic (it might reset on events like GPS lock or when a new QNH value is set). It should be the altitude to which global altitude waypoints are compared to. Note that it is *not* the GPS altitude, however, most GPS modules already output MSL by default and not the WGS84 altitude. + AltitudeAmsl float32 + // This is the local altitude in the local coordinate frame. It is not the altitude above home, but in reference to the coordinate origin (0, 0, 0). It is up-positive. + AltitudeLocal float32 + // This is the altitude above the home position. It resets on each change of the current home position. + AltitudeRelative float32 + // This is the altitude above terrain. It might be fed by a terrain database or an altimeter. Values smaller than -1000 should be interpreted as unknown. + AltitudeTerrain float32 + // This is not the altitude, but the clear space below the system according to the fused clearance estimate. It generally should max out at the maximum range of e.g. the laser altimeter. It is generally a moving target. A negative value indicates no measurement available. + BottomClearance float32 +} + +// GetID implements the msg.Message interface. +func (*MessageAltitude) GetID() uint32 { + return 141 +} diff --git a/pkg/dialects/avssuas/msg_att_pos_mocap.go b/pkg/dialects/avssuas/msg_att_pos_mocap.go new file mode 100644 index 000000000..97174c6ca --- /dev/null +++ b/pkg/dialects/avssuas/msg_att_pos_mocap.go @@ -0,0 +1,24 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package avssuas + +// Motion capture attitude and position +type MessageAttPosMocap struct { + // Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. + TimeUsec uint64 + // Attitude quaternion (w, x, y, z order, zero-rotation is 1, 0, 0, 0) + Q [4]float32 + // X position (NED) + X float32 + // Y position (NED) + Y float32 + // Z position (NED) + Z float32 + // Row-major representation of a pose 6x6 cross-covariance matrix upper right triangle (states: x, y, z, roll, pitch, yaw; first six entries are the first ROW, next five entries are the second ROW, etc.). If unknown, assign NaN value to first element in the array. + Covariance [21]float32 `mavext:"true"` +} + +// GetID implements the msg.Message interface. +func (*MessageAttPosMocap) GetID() uint32 { + return 138 +} diff --git a/pkg/dialects/avssuas/msg_attitude.go b/pkg/dialects/avssuas/msg_attitude.go new file mode 100644 index 000000000..82c4537b1 --- /dev/null +++ b/pkg/dialects/avssuas/msg_attitude.go @@ -0,0 +1,26 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package avssuas + +// The attitude in the aeronautical frame (right-handed, Z-down, X-front, Y-right). +type MessageAttitude struct { + // Timestamp (time since system boot). + TimeBootMs uint32 + // Roll angle (-pi..+pi) + Roll float32 + // Pitch angle (-pi..+pi) + Pitch float32 + // Yaw angle (-pi..+pi) + Yaw float32 + // Roll angular speed + Rollspeed float32 + // Pitch angular speed + Pitchspeed float32 + // Yaw angular speed + Yawspeed float32 +} + +// GetID implements the msg.Message interface. +func (*MessageAttitude) GetID() uint32 { + return 30 +} diff --git a/pkg/dialects/avssuas/msg_attitude_quaternion.go b/pkg/dialects/avssuas/msg_attitude_quaternion.go new file mode 100644 index 000000000..579ac4b62 --- /dev/null +++ b/pkg/dialects/avssuas/msg_attitude_quaternion.go @@ -0,0 +1,30 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package avssuas + +// The attitude in the aeronautical frame (right-handed, Z-down, X-front, Y-right), expressed as quaternion. Quaternion order is w, x, y, z and a zero rotation would be expressed as (1 0 0 0). +type MessageAttitudeQuaternion struct { + // Timestamp (time since system boot). + TimeBootMs uint32 + // Quaternion component 1, w (1 in null-rotation) + Q1 float32 + // Quaternion component 2, x (0 in null-rotation) + Q2 float32 + // Quaternion component 3, y (0 in null-rotation) + Q3 float32 + // Quaternion component 4, z (0 in null-rotation) + Q4 float32 + // Roll angular speed + Rollspeed float32 + // Pitch angular speed + Pitchspeed float32 + // Yaw angular speed + Yawspeed float32 + // Rotation offset by which the attitude quaternion and angular speed vector should be rotated for user display (quaternion with [w, x, y, z] order, zero-rotation is [1, 0, 0, 0], send [0, 0, 0, 0] if field not supported). This field is intended for systems in which the reference attitude may change during flight. For example, tailsitters VTOLs rotate their reference attitude by 90 degrees between hover mode and fixed wing mode, thus repr_offset_q is equal to [1, 0, 0, 0] in hover mode and equal to [0.7071, 0, 0.7071, 0] in fixed wing mode. + ReprOffsetQ [4]float32 `mavext:"true"` +} + +// GetID implements the msg.Message interface. +func (*MessageAttitudeQuaternion) GetID() uint32 { + return 31 +} diff --git a/pkg/dialects/avssuas/msg_attitude_quaternion_cov.go b/pkg/dialects/avssuas/msg_attitude_quaternion_cov.go new file mode 100644 index 000000000..87e09f504 --- /dev/null +++ b/pkg/dialects/avssuas/msg_attitude_quaternion_cov.go @@ -0,0 +1,24 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package avssuas + +// The attitude in the aeronautical frame (right-handed, Z-down, X-front, Y-right), expressed as quaternion. Quaternion order is w, x, y, z and a zero rotation would be expressed as (1 0 0 0). +type MessageAttitudeQuaternionCov struct { + // Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. + TimeUsec uint64 + // Quaternion components, w, x, y, z (1 0 0 0 is the null-rotation) + Q [4]float32 + // Roll angular speed + Rollspeed float32 + // Pitch angular speed + Pitchspeed float32 + // Yaw angular speed + Yawspeed float32 + // Row-major representation of a 3x3 attitude covariance matrix (states: roll, pitch, yaw; first three entries are the first ROW, next three entries are the second row, etc.). If unknown, assign NaN value to first element in the array. + Covariance [9]float32 +} + +// GetID implements the msg.Message interface. +func (*MessageAttitudeQuaternionCov) GetID() uint32 { + return 61 +} diff --git a/pkg/dialects/avssuas/msg_attitude_target.go b/pkg/dialects/avssuas/msg_attitude_target.go new file mode 100644 index 000000000..6c57385c7 --- /dev/null +++ b/pkg/dialects/avssuas/msg_attitude_target.go @@ -0,0 +1,26 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package avssuas + +// Reports the current commanded attitude of the vehicle as specified by the autopilot. This should match the commands sent in a SET_ATTITUDE_TARGET message if the vehicle is being controlled this way. +type MessageAttitudeTarget struct { + // Timestamp (time since system boot). + TimeBootMs uint32 + // Bitmap to indicate which dimensions should be ignored by the vehicle. + TypeMask ATTITUDE_TARGET_TYPEMASK `mavenum:"uint8"` + // Attitude quaternion (w, x, y, z order, zero-rotation is 1, 0, 0, 0) + Q [4]float32 + // Body roll rate + BodyRollRate float32 + // Body pitch rate + BodyPitchRate float32 + // Body yaw rate + BodyYawRate float32 + // Collective thrust, normalized to 0 .. 1 (-1 .. 1 for vehicles capable of reverse trust) + Thrust float32 +} + +// GetID implements the msg.Message interface. +func (*MessageAttitudeTarget) GetID() uint32 { + return 83 +} diff --git a/pkg/dialects/avssuas/msg_auth_key.go b/pkg/dialects/avssuas/msg_auth_key.go new file mode 100644 index 000000000..a09d5ffe8 --- /dev/null +++ b/pkg/dialects/avssuas/msg_auth_key.go @@ -0,0 +1,14 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package avssuas + +// Emit an encrypted signature / key identifying this system. PLEASE NOTE: This protocol has been kept simple, so transmitting the key requires an encrypted channel for true safety. +type MessageAuthKey struct { + // key + Key string `mavlen:"32"` +} + +// GetID implements the msg.Message interface. +func (*MessageAuthKey) GetID() uint32 { + return 7 +} diff --git a/pkg/dialects/avssuas/msg_autopilot_state_for_gimbal_device.go b/pkg/dialects/avssuas/msg_autopilot_state_for_gimbal_device.go new file mode 100644 index 000000000..fc256cb8e --- /dev/null +++ b/pkg/dialects/avssuas/msg_autopilot_state_for_gimbal_device.go @@ -0,0 +1,36 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package avssuas + +// Low level message containing autopilot state relevant for a gimbal device. This message is to be sent from the gimbal manager to the gimbal device component. The data of this message server for the gimbal's estimator corrections in particular horizon compensation, as well as the autopilot's control intention e.g. feed forward angular control in z-axis. +type MessageAutopilotStateForGimbalDevice struct { + // System ID + TargetSystem uint8 + // Component ID + TargetComponent uint8 + // Timestamp (time since system boot). + TimeBootUs uint64 + // Quaternion components of autopilot attitude: w, x, y, z (1 0 0 0 is the null-rotation, Hamilton convention). + Q [4]float32 + // Estimated delay of the attitude data. + QEstimatedDelayUs uint32 + // X Speed in NED (North, East, Down). + Vx float32 + // Y Speed in NED (North, East, Down). + Vy float32 + // Z Speed in NED (North, East, Down). + Vz float32 + // Estimated delay of the speed data. + VEstimatedDelayUs uint32 + // Feed forward Z component of angular velocity, positive is yawing to the right, NaN to be ignored. This is to indicate if the autopilot is actively yawing. + FeedForwardAngularVelocityZ float32 + // Bitmap indicating which estimator outputs are valid. + EstimatorStatus ESTIMATOR_STATUS_FLAGS `mavenum:"uint16"` + // The landed state. Is set to MAV_LANDED_STATE_UNDEFINED if landed state is unknown. + LandedState MAV_LANDED_STATE `mavenum:"uint8"` +} + +// GetID implements the msg.Message interface. +func (*MessageAutopilotStateForGimbalDevice) GetID() uint32 { + return 286 +} diff --git a/pkg/dialects/avssuas/msg_autopilot_version.go b/pkg/dialects/avssuas/msg_autopilot_version.go new file mode 100644 index 000000000..cad07dcc3 --- /dev/null +++ b/pkg/dialects/avssuas/msg_autopilot_version.go @@ -0,0 +1,36 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package avssuas + +// Version and capability of autopilot software. This should be emitted in response to a request with MAV_CMD_REQUEST_MESSAGE. +type MessageAutopilotVersion struct { + // Bitmap of capabilities + Capabilities MAV_PROTOCOL_CAPABILITY `mavenum:"uint64"` + // Firmware version number + FlightSwVersion uint32 + // Middleware version number + MiddlewareSwVersion uint32 + // Operating system version number + OsSwVersion uint32 + // HW / board version (last 8 bits should be silicon ID, if any). The first 16 bits of this field specify https://github.com/PX4/PX4-Bootloader/blob/master/board_types.txt + BoardVersion uint32 + // Custom version field, commonly the first 8 bytes of the git hash. This is not an unique identifier, but should allow to identify the commit using the main version number even for very large code bases. + FlightCustomVersion [8]uint8 + // Custom version field, commonly the first 8 bytes of the git hash. This is not an unique identifier, but should allow to identify the commit using the main version number even for very large code bases. + MiddlewareCustomVersion [8]uint8 + // Custom version field, commonly the first 8 bytes of the git hash. This is not an unique identifier, but should allow to identify the commit using the main version number even for very large code bases. + OsCustomVersion [8]uint8 + // ID of the board vendor + VendorId uint16 + // ID of the product + ProductId uint16 + // UID if provided by hardware (see uid2) + Uid uint64 + // UID if provided by hardware (supersedes the uid field. If this is non-zero, use this field, otherwise use uid) + Uid2 [18]uint8 `mavext:"true"` +} + +// GetID implements the msg.Message interface. +func (*MessageAutopilotVersion) GetID() uint32 { + return 148 +} diff --git a/pkg/dialects/avssuas/msg_avss_prs_sys_status.go b/pkg/dialects/avssuas/msg_avss_prs_sys_status.go new file mode 100644 index 000000000..222061dbf --- /dev/null +++ b/pkg/dialects/avssuas/msg_avss_prs_sys_status.go @@ -0,0 +1,22 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package avssuas + +// AVSS PRS system status. +type MessageAvssPrsSysStatus struct { + // PRS arm statuses + ArmStatus uint8 + // Estimated battery run-time without a remote connection and PRS battery voltage + BatteryStatus uint16 + // PRS error statuses + ErrorStatus uint32 + // PRS battery change statuses + ChangeStatus uint8 + // Time since PRS system boot + TimeBootMs uint32 +} + +// GetID implements the msg.Message interface. +func (*MessageAvssPrsSysStatus) GetID() uint32 { + return 60050 +} diff --git a/pkg/dialects/avssuas/msg_battery_status.go b/pkg/dialects/avssuas/msg_battery_status.go new file mode 100644 index 000000000..e467f360f --- /dev/null +++ b/pkg/dialects/avssuas/msg_battery_status.go @@ -0,0 +1,40 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package avssuas + +// Battery information. Updates GCS with flight controller battery status. Smart batteries also use this message, but may additionally send SMART_BATTERY_INFO. +type MessageBatteryStatus struct { + // Battery ID + Id uint8 + // Function of the battery + BatteryFunction MAV_BATTERY_FUNCTION `mavenum:"uint8"` + // Type (chemistry) of the battery + Type MAV_BATTERY_TYPE `mavenum:"uint8"` + // Temperature of the battery. INT16_MAX for unknown temperature. + Temperature int16 + // Battery voltage of cells 1 to 10 (see voltages_ext for cells 11-14). Cells in this field above the valid cell count for this battery should have the UINT16_MAX value. If individual cell voltages are unknown or not measured for this battery, then the overall battery voltage should be filled in cell 0, with all others set to UINT16_MAX. If the voltage of the battery is greater than (UINT16_MAX - 1), then cell 0 should be set to (UINT16_MAX - 1), and cell 1 to the remaining voltage. This can be extended to multiple cells if the total voltage is greater than 2 * (UINT16_MAX - 1). + Voltages [10]uint16 + // Battery current, -1: autopilot does not measure the current + CurrentBattery int16 + // Consumed charge, -1: autopilot does not provide consumption estimate + CurrentConsumed int32 + // Consumed energy, -1: autopilot does not provide energy consumption estimate + EnergyConsumed int32 + // Remaining battery energy. Values: [0-100], -1: autopilot does not estimate the remaining battery. + BatteryRemaining int8 + // Remaining battery time, 0: autopilot does not provide remaining battery time estimate + TimeRemaining int32 `mavext:"true"` + // State for extent of discharge, provided by autopilot for warning or external reactions + ChargeState MAV_BATTERY_CHARGE_STATE `mavenum:"uint8" mavext:"true"` + // Battery voltages for cells 11 to 14. Cells above the valid cell count for this battery should have a value of 0, where zero indicates not supported (note, this is different than for the voltages field and allows empty byte truncation). If the measured value is 0 then 1 should be sent instead. + VoltagesExt [4]uint16 `mavext:"true"` + // Battery mode. Default (0) is that battery mode reporting is not supported or battery is in normal-use mode. + Mode MAV_BATTERY_MODE `mavenum:"uint8" mavext:"true"` + // Fault/health indications. These should be set when charge_state is MAV_BATTERY_CHARGE_STATE_FAILED or MAV_BATTERY_CHARGE_STATE_UNHEALTHY (if not, fault reporting is not supported). + FaultBitmask MAV_BATTERY_FAULT `mavenum:"uint32" mavext:"true"` +} + +// GetID implements the msg.Message interface. +func (*MessageBatteryStatus) GetID() uint32 { + return 147 +} diff --git a/pkg/dialects/avssuas/msg_button_change.go b/pkg/dialects/avssuas/msg_button_change.go new file mode 100644 index 000000000..83f6c9af1 --- /dev/null +++ b/pkg/dialects/avssuas/msg_button_change.go @@ -0,0 +1,18 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package avssuas + +// Report button state change. +type MessageButtonChange struct { + // Timestamp (time since system boot). + TimeBootMs uint32 + // Time of last change of button state. + LastChangeMs uint32 + // Bitmap for state of buttons. + State uint8 +} + +// GetID implements the msg.Message interface. +func (*MessageButtonChange) GetID() uint32 { + return 257 +} diff --git a/pkg/dialects/avssuas/msg_camera_capture_status.go b/pkg/dialects/avssuas/msg_camera_capture_status.go new file mode 100644 index 000000000..c25d3dfbc --- /dev/null +++ b/pkg/dialects/avssuas/msg_camera_capture_status.go @@ -0,0 +1,26 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package avssuas + +// Information about the status of a capture. Can be requested with a MAV_CMD_REQUEST_MESSAGE command. +type MessageCameraCaptureStatus struct { + // Timestamp (time since system boot). + TimeBootMs uint32 + // Current status of image capturing (0: idle, 1: capture in progress, 2: interval set but idle, 3: interval set and capture in progress) + ImageStatus uint8 + // Current status of video capturing (0: idle, 1: capture in progress) + VideoStatus uint8 + // Image capture interval + ImageInterval float32 + // Elapsed time since recording started (0: Not supported/available). A GCS should compute recording time and use non-zero values of this field to correct any discrepancy. + RecordingTimeMs uint32 + // Available storage capacity. + AvailableCapacity float32 + // Total number of images captured ('forever', or until reset using MAV_CMD_STORAGE_FORMAT). + ImageCount int32 `mavext:"true"` +} + +// GetID implements the msg.Message interface. +func (*MessageCameraCaptureStatus) GetID() uint32 { + return 262 +} diff --git a/pkg/dialects/avssuas/msg_camera_fov_status.go b/pkg/dialects/avssuas/msg_camera_fov_status.go new file mode 100644 index 000000000..38b7ddc33 --- /dev/null +++ b/pkg/dialects/avssuas/msg_camera_fov_status.go @@ -0,0 +1,32 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package avssuas + +// Information about the field of view of a camera. Can be requested with a MAV_CMD_REQUEST_MESSAGE command. +type MessageCameraFovStatus struct { + // Timestamp (time since system boot). + TimeBootMs uint32 + // Latitude of camera (INT32_MAX if unknown). + LatCamera int32 + // Longitude of camera (INT32_MAX if unknown). + LonCamera int32 + // Altitude (MSL) of camera (INT32_MAX if unknown). + AltCamera int32 + // Latitude of center of image (INT32_MAX if unknown, INT32_MIN if at infinity, not intersecting with horizon). + LatImage int32 + // Longitude of center of image (INT32_MAX if unknown, INT32_MIN if at infinity, not intersecting with horizon). + LonImage int32 + // Altitude (MSL) of center of image (INT32_MAX if unknown, INT32_MIN if at infinity, not intersecting with horizon). + AltImage int32 + // Quaternion of camera orientation (w, x, y, z order, zero-rotation is 1, 0, 0, 0) + Q [4]float32 + // Horizontal field of view (NaN if unknown). + Hfov float32 + // Vertical field of view (NaN if unknown). + Vfov float32 +} + +// GetID implements the msg.Message interface. +func (*MessageCameraFovStatus) GetID() uint32 { + return 271 +} diff --git a/pkg/dialects/avssuas/msg_camera_image_captured.go b/pkg/dialects/avssuas/msg_camera_image_captured.go new file mode 100644 index 000000000..c9f5bb777 --- /dev/null +++ b/pkg/dialects/avssuas/msg_camera_image_captured.go @@ -0,0 +1,40 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package avssuas + +// Information about a captured image. This is emitted every time a message is captured. +// MAV_CMD_REQUEST_MESSAGE can be used to (re)request this message for a specific sequence number or range of sequence numbers: +// MAV_CMD_REQUEST_MESSAGE.param2 indicates the sequence number the first image to send, or set to -1 to send the message for all sequence numbers. +// MAV_CMD_REQUEST_MESSAGE.param3 is used to specify a range of messages to send: +// set to 0 (default) to send just the the message for the sequence number in param 2, +// set to -1 to send the message for the sequence number in param 2 and all the following sequence numbers, +// set to the sequence number of the final message in the range. +type MessageCameraImageCaptured struct { + // Timestamp (time since system boot). + TimeBootMs uint32 + // Timestamp (time since UNIX epoch) in UTC. 0 for unknown. + TimeUtc uint64 + // Deprecated/unused. Component IDs are used to differentiate multiple cameras. + CameraId uint8 + // Latitude where image was taken + Lat int32 + // Longitude where capture was taken + Lon int32 + // Altitude (MSL) where image was taken + Alt int32 + // Altitude above ground + RelativeAlt int32 + // Quaternion of camera orientation (w, x, y, z order, zero-rotation is 1, 0, 0, 0) + Q [4]float32 + // Zero based index of this image (i.e. a new image will have index CAMERA_CAPTURE_STATUS.image count -1) + ImageIndex int32 + // Boolean indicating success (1) or failure (0) while capturing this image. + CaptureResult int8 + // URL of image taken. Either local storage or http://foo.jpg if camera provides an HTTP interface. + FileUrl string `mavlen:"205"` +} + +// GetID implements the msg.Message interface. +func (*MessageCameraImageCaptured) GetID() uint32 { + return 263 +} diff --git a/pkg/dialects/avssuas/msg_camera_information.go b/pkg/dialects/avssuas/msg_camera_information.go new file mode 100644 index 000000000..b8c22cdcb --- /dev/null +++ b/pkg/dialects/avssuas/msg_camera_information.go @@ -0,0 +1,38 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package avssuas + +// Information about a camera. Can be requested with a MAV_CMD_REQUEST_MESSAGE command. +type MessageCameraInformation struct { + // Timestamp (time since system boot). + TimeBootMs uint32 + // Name of the camera vendor + VendorName [32]uint8 + // Name of the camera model + ModelName [32]uint8 + // Version of the camera firmware, encoded as: (Dev & 0xff) << 24 | (Patch & 0xff) << 16 | (Minor & 0xff) << 8 | (Major & 0xff) + FirmwareVersion uint32 + // Focal length + FocalLength float32 + // Image sensor size horizontal + SensorSizeH float32 + // Image sensor size vertical + SensorSizeV float32 + // Horizontal image resolution + ResolutionH uint16 + // Vertical image resolution + ResolutionV uint16 + // Reserved for a lens ID + LensId uint8 + // Bitmap of camera capability flags. + Flags CAMERA_CAP_FLAGS `mavenum:"uint32"` + // Camera definition version (iteration) + CamDefinitionVersion uint16 + // Camera definition URI (if any, otherwise only basic functions will be available). HTTP- (http://) and MAVLink FTP- (mavlinkftp://) formatted URIs are allowed (and both must be supported by any GCS that implements the Camera Protocol). The definition file may be xz compressed, which will be indicated by the file extension .xml.xz (a GCS that implements the protocol must support decompressing the file). + CamDefinitionUri string `mavlen:"140"` +} + +// GetID implements the msg.Message interface. +func (*MessageCameraInformation) GetID() uint32 { + return 259 +} diff --git a/pkg/dialects/avssuas/msg_camera_settings.go b/pkg/dialects/avssuas/msg_camera_settings.go new file mode 100644 index 000000000..a6eb492cd --- /dev/null +++ b/pkg/dialects/avssuas/msg_camera_settings.go @@ -0,0 +1,20 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package avssuas + +// Settings of a camera. Can be requested with a MAV_CMD_REQUEST_MESSAGE command. +type MessageCameraSettings struct { + // Timestamp (time since system boot). + TimeBootMs uint32 + // Camera mode + ModeId CAMERA_MODE `mavenum:"uint8"` + // Current zoom level (0.0 to 100.0, NaN if not known) + Zoomlevel float32 `mavext:"true" mavname:"zoomLevel"` + // Current focus level (0.0 to 100.0, NaN if not known) + Focuslevel float32 `mavext:"true" mavname:"focusLevel"` +} + +// GetID implements the msg.Message interface. +func (*MessageCameraSettings) GetID() uint32 { + return 260 +} diff --git a/pkg/dialects/avssuas/msg_camera_tracking_geo_status.go b/pkg/dialects/avssuas/msg_camera_tracking_geo_status.go new file mode 100644 index 000000000..bbc7cadfe --- /dev/null +++ b/pkg/dialects/avssuas/msg_camera_tracking_geo_status.go @@ -0,0 +1,38 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package avssuas + +// Camera tracking status, sent while in active tracking. Use MAV_CMD_SET_MESSAGE_INTERVAL to define message interval. +type MessageCameraTrackingGeoStatus struct { + // Current tracking status + TrackingStatus CAMERA_TRACKING_STATUS_FLAGS `mavenum:"uint8"` + // Latitude of tracked object + Lat int32 + // Longitude of tracked object + Lon int32 + // Altitude of tracked object(AMSL, WGS84) + Alt float32 + // Horizontal accuracy. NAN if unknown + HAcc float32 + // Vertical accuracy. NAN if unknown + VAcc float32 + // North velocity of tracked object. NAN if unknown + VelN float32 + // East velocity of tracked object. NAN if unknown + VelE float32 + // Down velocity of tracked object. NAN if unknown + VelD float32 + // Velocity accuracy. NAN if unknown + VelAcc float32 + // Distance between camera and tracked object. NAN if unknown + Dist float32 + // Heading in radians, in NED. NAN if unknown + Hdg float32 + // Accuracy of heading, in NED. NAN if unknown + HdgAcc float32 +} + +// GetID implements the msg.Message interface. +func (*MessageCameraTrackingGeoStatus) GetID() uint32 { + return 276 +} diff --git a/pkg/dialects/avssuas/msg_camera_tracking_image_status.go b/pkg/dialects/avssuas/msg_camera_tracking_image_status.go new file mode 100644 index 000000000..e910e2adf --- /dev/null +++ b/pkg/dialects/avssuas/msg_camera_tracking_image_status.go @@ -0,0 +1,32 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package avssuas + +// Camera tracking status, sent while in active tracking. Use MAV_CMD_SET_MESSAGE_INTERVAL to define message interval. +type MessageCameraTrackingImageStatus struct { + // Current tracking status + TrackingStatus CAMERA_TRACKING_STATUS_FLAGS `mavenum:"uint8"` + // Current tracking mode + TrackingMode CAMERA_TRACKING_MODE `mavenum:"uint8"` + // Defines location of target data + TargetData CAMERA_TRACKING_TARGET_DATA `mavenum:"uint8"` + // Current tracked point x value if CAMERA_TRACKING_MODE_POINT (normalized 0..1, 0 is left, 1 is right), NAN if unknown + PointX float32 + // Current tracked point y value if CAMERA_TRACKING_MODE_POINT (normalized 0..1, 0 is top, 1 is bottom), NAN if unknown + PointY float32 + // Current tracked radius if CAMERA_TRACKING_MODE_POINT (normalized 0..1, 0 is image left, 1 is image right), NAN if unknown + Radius float32 + // Current tracked rectangle top x value if CAMERA_TRACKING_MODE_RECTANGLE (normalized 0..1, 0 is left, 1 is right), NAN if unknown + RecTopX float32 + // Current tracked rectangle top y value if CAMERA_TRACKING_MODE_RECTANGLE (normalized 0..1, 0 is top, 1 is bottom), NAN if unknown + RecTopY float32 + // Current tracked rectangle bottom x value if CAMERA_TRACKING_MODE_RECTANGLE (normalized 0..1, 0 is left, 1 is right), NAN if unknown + RecBottomX float32 + // Current tracked rectangle bottom y value if CAMERA_TRACKING_MODE_RECTANGLE (normalized 0..1, 0 is top, 1 is bottom), NAN if unknown + RecBottomY float32 +} + +// GetID implements the msg.Message interface. +func (*MessageCameraTrackingImageStatus) GetID() uint32 { + return 275 +} diff --git a/pkg/dialects/avssuas/msg_camera_trigger.go b/pkg/dialects/avssuas/msg_camera_trigger.go new file mode 100644 index 000000000..3fc62277b --- /dev/null +++ b/pkg/dialects/avssuas/msg_camera_trigger.go @@ -0,0 +1,16 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package avssuas + +// Camera-IMU triggering and synchronisation message. +type MessageCameraTrigger struct { + // Timestamp for image frame (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. + TimeUsec uint64 + // Image frame sequence + Seq uint32 +} + +// GetID implements the msg.Message interface. +func (*MessageCameraTrigger) GetID() uint32 { + return 112 +} diff --git a/pkg/dialects/avssuas/msg_cellular_config.go b/pkg/dialects/avssuas/msg_cellular_config.go new file mode 100644 index 000000000..c952497b8 --- /dev/null +++ b/pkg/dialects/avssuas/msg_cellular_config.go @@ -0,0 +1,30 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package avssuas + +// Configure cellular modems. +// This message is re-emitted as an acknowledgement by the modem. +// The message may also be explicitly requested using MAV_CMD_REQUEST_MESSAGE. +type MessageCellularConfig struct { + // Enable/disable LTE. 0: setting unchanged, 1: disabled, 2: enabled. Current setting when sent back as a response. + EnableLte uint8 + // Enable/disable PIN on the SIM card. 0: setting unchanged, 1: disabled, 2: enabled. Current setting when sent back as a response. + EnablePin uint8 + // PIN sent to the SIM card. Blank when PIN is disabled. Empty when message is sent back as a response. + Pin string `mavlen:"16"` + // New PIN when changing the PIN. Blank to leave it unchanged. Empty when message is sent back as a response. + NewPin string `mavlen:"16"` + // Name of the cellular APN. Blank to leave it unchanged. Current APN when sent back as a response. + Apn string `mavlen:"32"` + // Required PUK code in case the user failed to authenticate 3 times with the PIN. Empty when message is sent back as a response. + Puk string `mavlen:"16"` + // Enable/disable roaming. 0: setting unchanged, 1: disabled, 2: enabled. Current setting when sent back as a response. + Roaming uint8 + // Message acceptance response (sent back to GS). + Response CELLULAR_CONFIG_RESPONSE `mavenum:"uint8"` +} + +// GetID implements the msg.Message interface. +func (*MessageCellularConfig) GetID() uint32 { + return 336 +} diff --git a/pkg/dialects/avssuas/msg_cellular_status.go b/pkg/dialects/avssuas/msg_cellular_status.go new file mode 100644 index 000000000..b308d7978 --- /dev/null +++ b/pkg/dialects/avssuas/msg_cellular_status.go @@ -0,0 +1,26 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package avssuas + +// Report current used cellular network status +type MessageCellularStatus struct { + // Cellular modem status + Status CELLULAR_STATUS_FLAG `mavenum:"uint8"` + // Failure reason when status in in CELLUAR_STATUS_FAILED + FailureReason CELLULAR_NETWORK_FAILED_REASON `mavenum:"uint8"` + // Cellular network radio type: gsm, cdma, lte... + Type CELLULAR_NETWORK_RADIO_TYPE `mavenum:"uint8"` + // Signal quality in percent. If unknown, set to UINT8_MAX + Quality uint8 + // Mobile country code. If unknown, set to UINT16_MAX + Mcc uint16 + // Mobile network code. If unknown, set to UINT16_MAX + Mnc uint16 + // Location area code. If unknown, set to 0 + Lac uint16 +} + +// GetID implements the msg.Message interface. +func (*MessageCellularStatus) GetID() uint32 { + return 334 +} diff --git a/pkg/dialects/avssuas/msg_change_operator_control.go b/pkg/dialects/avssuas/msg_change_operator_control.go new file mode 100644 index 000000000..bec29ae7e --- /dev/null +++ b/pkg/dialects/avssuas/msg_change_operator_control.go @@ -0,0 +1,20 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package avssuas + +// Request to control this MAV +type MessageChangeOperatorControl struct { + // System the GCS requests control for + TargetSystem uint8 + // 0: request control of this MAV, 1: Release control of this MAV + ControlRequest uint8 + // 0: key as plaintext, 1-255: future, different hashing/encryption variants. The GCS should in general use the safest mode possible initially and then gradually move down the encryption level if it gets a NACK message indicating an encryption mismatch. + Version uint8 + // Password / Key, depending on version plaintext or encrypted. 25 or less characters, NULL terminated. The characters may involve A-Z, a-z, 0-9, and "!?,.-" + Passkey string `mavlen:"25"` +} + +// GetID implements the msg.Message interface. +func (*MessageChangeOperatorControl) GetID() uint32 { + return 5 +} diff --git a/pkg/dialects/avssuas/msg_change_operator_control_ack.go b/pkg/dialects/avssuas/msg_change_operator_control_ack.go new file mode 100644 index 000000000..5c26a0daa --- /dev/null +++ b/pkg/dialects/avssuas/msg_change_operator_control_ack.go @@ -0,0 +1,18 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package avssuas + +// Accept / deny control of this MAV +type MessageChangeOperatorControlAck struct { + // ID of the GCS this message + GcsSystemId uint8 + // 0: request control of this MAV, 1: Release control of this MAV + ControlRequest uint8 + // 0: ACK, 1: NACK: Wrong passkey, 2: NACK: Unsupported passkey encryption method, 3: NACK: Already under control + Ack uint8 +} + +// GetID implements the msg.Message interface. +func (*MessageChangeOperatorControlAck) GetID() uint32 { + return 6 +} diff --git a/pkg/dialects/avssuas/msg_collision.go b/pkg/dialects/avssuas/msg_collision.go new file mode 100644 index 000000000..7e8817a5b --- /dev/null +++ b/pkg/dialects/avssuas/msg_collision.go @@ -0,0 +1,26 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package avssuas + +// Information about a potential collision +type MessageCollision struct { + // Collision data source + Src MAV_COLLISION_SRC `mavenum:"uint8"` + // Unique identifier, domain based on src field + Id uint32 + // Action that is being taken to avoid this collision + Action MAV_COLLISION_ACTION `mavenum:"uint8"` + // How concerned the aircraft is about this collision + ThreatLevel MAV_COLLISION_THREAT_LEVEL `mavenum:"uint8"` + // Estimated time until collision occurs + TimeToMinimumDelta float32 + // Closest vertical distance between vehicle and object + AltitudeMinimumDelta float32 + // Closest horizontal distance between vehicle and object + HorizontalMinimumDelta float32 +} + +// GetID implements the msg.Message interface. +func (*MessageCollision) GetID() uint32 { + return 247 +} diff --git a/pkg/dialects/avssuas/msg_command_ack.go b/pkg/dialects/avssuas/msg_command_ack.go new file mode 100644 index 000000000..aafe8a322 --- /dev/null +++ b/pkg/dialects/avssuas/msg_command_ack.go @@ -0,0 +1,24 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package avssuas + +// Report status of a command. Includes feedback whether the command was executed. The command microservice is documented at https://mavlink.io/en/services/command.html +type MessageCommandAck struct { + // Command ID (of acknowledged command). + Command MAV_CMD `mavenum:"uint16"` + // Result of command. + Result MAV_RESULT `mavenum:"uint8"` + // Also used as result_param1, it can be set with an enum containing the errors reasons of why the command was denied, or the progress percentage when result is MAV_RESULT_IN_PROGRESS (UINT8_MAX if the progress is unknown). + Progress uint8 `mavext:"true"` + // Additional parameter of the result, example: which parameter of MAV_CMD_NAV_WAYPOINT caused it to be denied. + ResultParam2 int32 `mavext:"true"` + // System ID of the target recipient. This is the ID of the system that sent the command for which this COMMAND_ACK is an acknowledgement. + TargetSystem uint8 `mavext:"true"` + // Component ID of the target recipient. This is the ID of the system that sent the command for which this COMMAND_ACK is an acknowledgement. + TargetComponent uint8 `mavext:"true"` +} + +// GetID implements the msg.Message interface. +func (*MessageCommandAck) GetID() uint32 { + return 77 +} diff --git a/pkg/dialects/avssuas/msg_command_cancel.go b/pkg/dialects/avssuas/msg_command_cancel.go new file mode 100644 index 000000000..c5e61fcf9 --- /dev/null +++ b/pkg/dialects/avssuas/msg_command_cancel.go @@ -0,0 +1,18 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package avssuas + +// Cancel a long running command. The target system should respond with a COMMAND_ACK to the original command with result=MAV_RESULT_CANCELLED if the long running process was cancelled. If it has already completed, the cancel action can be ignored. The cancel action can be retried until some sort of acknowledgement to the original command has been received. The command microservice is documented at https://mavlink.io/en/services/command.html +type MessageCommandCancel struct { + // System executing long running command. Should not be broadcast (0). + TargetSystem uint8 + // Component executing long running command. + TargetComponent uint8 + // Command ID (of command to cancel). + Command MAV_CMD `mavenum:"uint16"` +} + +// GetID implements the msg.Message interface. +func (*MessageCommandCancel) GetID() uint32 { + return 80 +} diff --git a/pkg/dialects/avssuas/msg_command_int.go b/pkg/dialects/avssuas/msg_command_int.go new file mode 100644 index 000000000..8d1aa76de --- /dev/null +++ b/pkg/dialects/avssuas/msg_command_int.go @@ -0,0 +1,38 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package avssuas + +// Message encoding a command with parameters as scaled integers. Scaling depends on the actual command value. NaN or INT32_MAX may be used in float/integer params (respectively) to indicate optional/default values (e.g. to use the component's current latitude, yaw rather than a specific value). The command microservice is documented at https://mavlink.io/en/services/command.html +type MessageCommandInt struct { + // System ID + TargetSystem uint8 + // Component ID + TargetComponent uint8 + // The coordinate system of the COMMAND. + Frame MAV_FRAME `mavenum:"uint8"` + // The scheduled action for the mission item. + Command MAV_CMD `mavenum:"uint16"` + // Not used. + Current uint8 + // Not used (set 0). + Autocontinue uint8 + // PARAM1, see MAV_CMD enum + Param1 float32 + // PARAM2, see MAV_CMD enum + Param2 float32 + // PARAM3, see MAV_CMD enum + Param3 float32 + // PARAM4, see MAV_CMD enum + Param4 float32 + // PARAM5 / local: x position in meters * 1e4, global: latitude in degrees * 10^7 + X int32 + // PARAM6 / local: y position in meters * 1e4, global: longitude in degrees * 10^7 + Y int32 + // PARAM7 / z position: global: altitude in meters (relative or absolute, depending on frame). + Z float32 +} + +// GetID implements the msg.Message interface. +func (*MessageCommandInt) GetID() uint32 { + return 75 +} diff --git a/pkg/dialects/avssuas/msg_command_long.go b/pkg/dialects/avssuas/msg_command_long.go new file mode 100644 index 000000000..38d3167d7 --- /dev/null +++ b/pkg/dialects/avssuas/msg_command_long.go @@ -0,0 +1,34 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package avssuas + +// Send a command with up to seven parameters to the MAV. The command microservice is documented at https://mavlink.io/en/services/command.html +type MessageCommandLong struct { + // System which should execute the command + TargetSystem uint8 + // Component which should execute the command, 0 for all components + TargetComponent uint8 + // Command ID (of command to send). + Command MAV_CMD `mavenum:"uint16"` + // 0: First transmission of this command. 1-255: Confirmation transmissions (e.g. for kill command) + Confirmation uint8 + // Parameter 1 (for the specific command). + Param1 float32 + // Parameter 2 (for the specific command). + Param2 float32 + // Parameter 3 (for the specific command). + Param3 float32 + // Parameter 4 (for the specific command). + Param4 float32 + // Parameter 5 (for the specific command). + Param5 float32 + // Parameter 6 (for the specific command). + Param6 float32 + // Parameter 7 (for the specific command). + Param7 float32 +} + +// GetID implements the msg.Message interface. +func (*MessageCommandLong) GetID() uint32 { + return 76 +} diff --git a/pkg/dialects/avssuas/msg_component_information.go b/pkg/dialects/avssuas/msg_component_information.go new file mode 100644 index 000000000..d9e3b806c --- /dev/null +++ b/pkg/dialects/avssuas/msg_component_information.go @@ -0,0 +1,22 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package avssuas + +// Information about a component. For camera components instead use CAMERA_INFORMATION, and for autopilots additionally use AUTOPILOT_VERSION. Components including GCSes should consider supporting requests of this message via MAV_CMD_REQUEST_MESSAGE. +type MessageComponentInformation struct { + // Timestamp (time since system boot). + TimeBootMs uint32 + // CRC32 of the TYPE_GENERAL file (can be used by a GCS for file caching). The general metadata file contains URLs to other files of different type according to COMP_METADATA_TYPE. + GeneralMetadataFileCrc uint32 + // Component definition URI for TYPE_GENERAL. This must be a MAVLink FTP URI and the file might be compressed with xz. + GeneralMetadataUri string `mavlen:"100"` + // CRC32 of the TYPE_PERIPHERALS file (can be used by a GCS for file caching). + PeripheralsMetadataFileCrc uint32 + // (Optional) Component definition URI for TYPE_PERIPHERALS. This must be a MAVLink FTP URI and the file might be compressed with xz. Peripherals are listed as a separate URL and not included in the general metadata file because it will likely be generated at runtime while the general (and other referenced files) might be generated at compile time. + PeripheralsMetadataUri string `mavlen:"100"` +} + +// GetID implements the msg.Message interface. +func (*MessageComponentInformation) GetID() uint32 { + return 395 +} diff --git a/pkg/dialects/avssuas/msg_control_system_state.go b/pkg/dialects/avssuas/msg_control_system_state.go new file mode 100644 index 000000000..c1c06a5c7 --- /dev/null +++ b/pkg/dialects/avssuas/msg_control_system_state.go @@ -0,0 +1,46 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package avssuas + +// The smoothed, monotonic system state used to feed the control loops of the system. +type MessageControlSystemState struct { + // Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. + TimeUsec uint64 + // X acceleration in body frame + XAcc float32 + // Y acceleration in body frame + YAcc float32 + // Z acceleration in body frame + ZAcc float32 + // X velocity in body frame + XVel float32 + // Y velocity in body frame + YVel float32 + // Z velocity in body frame + ZVel float32 + // X position in local frame + XPos float32 + // Y position in local frame + YPos float32 + // Z position in local frame + ZPos float32 + // Airspeed, set to -1 if unknown + Airspeed float32 + // Variance of body velocity estimate + VelVariance [3]float32 + // Variance in local position + PosVariance [3]float32 + // The attitude, represented as Quaternion + Q [4]float32 + // Angular rate in roll axis + RollRate float32 + // Angular rate in pitch axis + PitchRate float32 + // Angular rate in yaw axis + YawRate float32 +} + +// GetID implements the msg.Message interface. +func (*MessageControlSystemState) GetID() uint32 { + return 146 +} diff --git a/pkg/dialects/avssuas/msg_current_event_sequence.go b/pkg/dialects/avssuas/msg_current_event_sequence.go new file mode 100644 index 000000000..0ba33ee0c --- /dev/null +++ b/pkg/dialects/avssuas/msg_current_event_sequence.go @@ -0,0 +1,16 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package avssuas + +// Regular broadcast for the current latest event sequence number for a component. This is used to check for dropped events. +type MessageCurrentEventSequence struct { + // Sequence number. + Sequence uint16 + // Flag bitset. + Flags MAV_EVENT_CURRENT_SEQUENCE_FLAGS `mavenum:"uint8"` +} + +// GetID implements the msg.Message interface. +func (*MessageCurrentEventSequence) GetID() uint32 { + return 411 +} diff --git a/pkg/dialects/avssuas/msg_data_stream.go b/pkg/dialects/avssuas/msg_data_stream.go new file mode 100644 index 000000000..9c95f9553 --- /dev/null +++ b/pkg/dialects/avssuas/msg_data_stream.go @@ -0,0 +1,18 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package avssuas + +// Data stream status information. +type MessageDataStream struct { + // The ID of the requested data stream + StreamId uint8 + // The message rate + MessageRate uint16 + // 1 stream is enabled, 0 stream is stopped. + OnOff uint8 +} + +// GetID implements the msg.Message interface. +func (*MessageDataStream) GetID() uint32 { + return 67 +} diff --git a/pkg/dialects/avssuas/msg_data_transmission_handshake.go b/pkg/dialects/avssuas/msg_data_transmission_handshake.go new file mode 100644 index 000000000..13e5e9d4d --- /dev/null +++ b/pkg/dialects/avssuas/msg_data_transmission_handshake.go @@ -0,0 +1,26 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package avssuas + +// Handshake message to initiate, control and stop image streaming when using the Image Transmission Protocol: https://mavlink.io/en/services/image_transmission.html. +type MessageDataTransmissionHandshake struct { + // Type of requested/acknowledged data. + Type MAVLINK_DATA_STREAM_TYPE `mavenum:"uint8"` + // total data size (set on ACK only). + Size uint32 + // Width of a matrix or image. + Width uint16 + // Height of a matrix or image. + Height uint16 + // Number of packets being sent (set on ACK only). + Packets uint16 + // Payload size per packet (normally 253 byte, see DATA field size in message ENCAPSULATED_DATA) (set on ACK only). + Payload uint8 + // JPEG quality. Values: [1-100]. + JpgQuality uint8 +} + +// GetID implements the msg.Message interface. +func (*MessageDataTransmissionHandshake) GetID() uint32 { + return 130 +} diff --git a/pkg/dialects/avssuas/msg_debug.go b/pkg/dialects/avssuas/msg_debug.go new file mode 100644 index 000000000..a5c564509 --- /dev/null +++ b/pkg/dialects/avssuas/msg_debug.go @@ -0,0 +1,18 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package avssuas + +// Send a debug value. The index is used to discriminate between values. These values show up in the plot of QGroundControl as DEBUG N. +type MessageDebug struct { + // Timestamp (time since system boot). + TimeBootMs uint32 + // index of debug variable + Ind uint8 + // DEBUG value + Value float32 +} + +// GetID implements the msg.Message interface. +func (*MessageDebug) GetID() uint32 { + return 254 +} diff --git a/pkg/dialects/avssuas/msg_debug_float_array.go b/pkg/dialects/avssuas/msg_debug_float_array.go new file mode 100644 index 000000000..9c90f1d3a --- /dev/null +++ b/pkg/dialects/avssuas/msg_debug_float_array.go @@ -0,0 +1,20 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package avssuas + +// Large debug/prototyping array. The message uses the maximum available payload for data. The array_id and name fields are used to discriminate between messages in code and in user interfaces (respectively). Do not use in production code. +type MessageDebugFloatArray struct { + // Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. + TimeUsec uint64 + // Name, for human-friendly display in a Ground Control Station + Name string `mavlen:"10"` + // Unique ID used to discriminate between arrays + ArrayId uint16 + // data + Data [58]float32 `mavext:"true"` +} + +// GetID implements the msg.Message interface. +func (*MessageDebugFloatArray) GetID() uint32 { + return 350 +} diff --git a/pkg/dialects/avssuas/msg_debug_vect.go b/pkg/dialects/avssuas/msg_debug_vect.go new file mode 100644 index 000000000..375da17bf --- /dev/null +++ b/pkg/dialects/avssuas/msg_debug_vect.go @@ -0,0 +1,22 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package avssuas + +// To debug something using a named 3D vector. +type MessageDebugVect struct { + // Name + Name string `mavlen:"10"` + // Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. + TimeUsec uint64 + // x + X float32 + // y + Y float32 + // z + Z float32 +} + +// GetID implements the msg.Message interface. +func (*MessageDebugVect) GetID() uint32 { + return 250 +} diff --git a/pkg/dialects/avssuas/msg_distance_sensor.go b/pkg/dialects/avssuas/msg_distance_sensor.go new file mode 100644 index 000000000..eae3e127b --- /dev/null +++ b/pkg/dialects/avssuas/msg_distance_sensor.go @@ -0,0 +1,36 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package avssuas + +// Distance sensor information for an onboard rangefinder. +type MessageDistanceSensor struct { + // Timestamp (time since system boot). + TimeBootMs uint32 + // Minimum distance the sensor can measure + MinDistance uint16 + // Maximum distance the sensor can measure + MaxDistance uint16 + // Current distance reading + CurrentDistance uint16 + // Type of distance sensor. + Type MAV_DISTANCE_SENSOR `mavenum:"uint8"` + // Onboard ID of the sensor + Id uint8 + // Direction the sensor faces. downward-facing: ROTATION_PITCH_270, upward-facing: ROTATION_PITCH_90, backward-facing: ROTATION_PITCH_180, forward-facing: ROTATION_NONE, left-facing: ROTATION_YAW_90, right-facing: ROTATION_YAW_270 + Orientation MAV_SENSOR_ORIENTATION `mavenum:"uint8"` + // Measurement variance. Max standard deviation is 6cm. UINT8_MAX if unknown. + Covariance uint8 + // Horizontal Field of View (angle) where the distance measurement is valid and the field of view is known. Otherwise this is set to 0. + HorizontalFov float32 `mavext:"true"` + // Vertical Field of View (angle) where the distance measurement is valid and the field of view is known. Otherwise this is set to 0. + VerticalFov float32 `mavext:"true"` + // Quaternion of the sensor orientation in vehicle body frame (w, x, y, z order, zero-rotation is 1, 0, 0, 0). Zero-rotation is along the vehicle body x-axis. This field is required if the orientation is set to MAV_SENSOR_ROTATION_CUSTOM. Set it to 0 if invalid." + Quaternion [4]float32 `mavext:"true"` + // Signal quality of the sensor. Specific to each sensor type, representing the relation of the signal strength with the target reflectivity, distance, size or aspect, but normalised as a percentage. 0 = unknown/unset signal quality, 1 = invalid signal, 100 = perfect signal. + SignalQuality uint8 `mavext:"true"` +} + +// GetID implements the msg.Message interface. +func (*MessageDistanceSensor) GetID() uint32 { + return 132 +} diff --git a/pkg/dialects/avssuas/msg_efi_status.go b/pkg/dialects/avssuas/msg_efi_status.go new file mode 100644 index 000000000..14d19d5f1 --- /dev/null +++ b/pkg/dialects/avssuas/msg_efi_status.go @@ -0,0 +1,46 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package avssuas + +// EFI status output +type MessageEfiStatus struct { + // EFI health status + Health uint8 + // ECU index + EcuIndex float32 + // RPM + Rpm float32 + // Fuel consumed + FuelConsumed float32 + // Fuel flow rate + FuelFlow float32 + // Engine load + EngineLoad float32 + // Throttle position + ThrottlePosition float32 + // Spark dwell time + SparkDwellTime float32 + // Barometric pressure + BarometricPressure float32 + // Intake manifold pressure( + IntakeManifoldPressure float32 + // Intake manifold temperature + IntakeManifoldTemperature float32 + // Cylinder head temperature + CylinderHeadTemperature float32 + // Ignition timing (Crank angle degrees) + IgnitionTiming float32 + // Injection time + InjectionTime float32 + // Exhaust gas temperature + ExhaustGasTemperature float32 + // Output throttle + ThrottleOut float32 + // Pressure/temperature compensation + PtCompensation float32 +} + +// GetID implements the msg.Message interface. +func (*MessageEfiStatus) GetID() uint32 { + return 225 +} diff --git a/pkg/dialects/avssuas/msg_encapsulated_data.go b/pkg/dialects/avssuas/msg_encapsulated_data.go new file mode 100644 index 000000000..e3800f9f2 --- /dev/null +++ b/pkg/dialects/avssuas/msg_encapsulated_data.go @@ -0,0 +1,16 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package avssuas + +// Data packet for images sent using the Image Transmission Protocol: https://mavlink.io/en/services/image_transmission.html. +type MessageEncapsulatedData struct { + // sequence number (starting with 0 on every transmission) + Seqnr uint16 + // image data bytes + Data [253]uint8 +} + +// GetID implements the msg.Message interface. +func (*MessageEncapsulatedData) GetID() uint32 { + return 131 +} diff --git a/pkg/dialects/avssuas/msg_esc_info.go b/pkg/dialects/avssuas/msg_esc_info.go new file mode 100644 index 000000000..b6e7a34e6 --- /dev/null +++ b/pkg/dialects/avssuas/msg_esc_info.go @@ -0,0 +1,30 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package avssuas + +// ESC information for lower rate streaming. Recommended streaming rate 1Hz. See ESC_STATUS for higher-rate ESC data. +type MessageEscInfo struct { + // Index of the first ESC in this message. minValue = 0, maxValue = 60, increment = 4. + Index uint8 + // Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude the number. + TimeUsec uint64 + // Counter of data packets received. + Counter uint16 + // Total number of ESCs in all messages of this type. Message fields with an index higher than this should be ignored because they contain invalid data. + Count uint8 + // Connection type protocol for all ESC. + ConnectionType ESC_CONNECTION_TYPE `mavenum:"uint8"` + // Information regarding online/offline status of each ESC. + Info uint8 + // Bitmap of ESC failure flags. + FailureFlags [4]ESC_FAILURE_FLAGS `mavenum:"uint16"` + // Number of reported errors by each ESC since boot. + ErrorCount [4]uint32 + // Temperature of each ESC. INT16_MAX: if data not supplied by ESC. + Temperature [4]int16 +} + +// GetID implements the msg.Message interface. +func (*MessageEscInfo) GetID() uint32 { + return 290 +} diff --git a/pkg/dialects/avssuas/msg_esc_status.go b/pkg/dialects/avssuas/msg_esc_status.go new file mode 100644 index 000000000..030b56014 --- /dev/null +++ b/pkg/dialects/avssuas/msg_esc_status.go @@ -0,0 +1,22 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package avssuas + +// ESC information for higher rate streaming. Recommended streaming rate is ~10 Hz. Information that changes more slowly is sent in ESC_INFO. It should typically only be streamed on high-bandwidth links (i.e. to a companion computer). +type MessageEscStatus struct { + // Index of the first ESC in this message. minValue = 0, maxValue = 60, increment = 4. + Index uint8 + // Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude the number. + TimeUsec uint64 + // Reported motor RPM from each ESC (negative for reverse rotation). + Rpm [4]int32 + // Voltage measured from each ESC. + Voltage [4]float32 + // Current measured from each ESC. + Current [4]float32 +} + +// GetID implements the msg.Message interface. +func (*MessageEscStatus) GetID() uint32 { + return 291 +} diff --git a/pkg/dialects/avssuas/msg_estimator_status.go b/pkg/dialects/avssuas/msg_estimator_status.go new file mode 100644 index 000000000..2e4c0d181 --- /dev/null +++ b/pkg/dialects/avssuas/msg_estimator_status.go @@ -0,0 +1,32 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package avssuas + +// Estimator status message including flags, innovation test ratios and estimated accuracies. The flags message is an integer bitmask containing information on which EKF outputs are valid. See the ESTIMATOR_STATUS_FLAGS enum definition for further information. The innovation test ratios show the magnitude of the sensor innovation divided by the innovation check threshold. Under normal operation the innovation test ratios should be below 0.5 with occasional values up to 1.0. Values greater than 1.0 should be rare under normal operation and indicate that a measurement has been rejected by the filter. The user should be notified if an innovation test ratio greater than 1.0 is recorded. Notifications for values in the range between 0.5 and 1.0 should be optional and controllable by the user. +type MessageEstimatorStatus struct { + // Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. + TimeUsec uint64 + // Bitmap indicating which EKF outputs are valid. + Flags ESTIMATOR_STATUS_FLAGS `mavenum:"uint16"` + // Velocity innovation test ratio + VelRatio float32 + // Horizontal position innovation test ratio + PosHorizRatio float32 + // Vertical position innovation test ratio + PosVertRatio float32 + // Magnetometer innovation test ratio + MagRatio float32 + // Height above terrain innovation test ratio + HaglRatio float32 + // True airspeed innovation test ratio + TasRatio float32 + // Horizontal position 1-STD accuracy relative to the EKF local origin + PosHorizAccuracy float32 + // Vertical position 1-STD accuracy relative to the EKF local origin + PosVertAccuracy float32 +} + +// GetID implements the msg.Message interface. +func (*MessageEstimatorStatus) GetID() uint32 { + return 230 +} diff --git a/pkg/dialects/avssuas/msg_event.go b/pkg/dialects/avssuas/msg_event.go new file mode 100644 index 000000000..63fa80a29 --- /dev/null +++ b/pkg/dialects/avssuas/msg_event.go @@ -0,0 +1,26 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package avssuas + +// Event message. Each new event from a particular component gets a new sequence number. The same message might be sent multiple times if (re-)requested. Most events are broadcast, some can be specific to a target component (as receivers keep track of the sequence for missed events, all events need to be broadcast. Thus we use destination_component instead of target_component). +type MessageEvent struct { + // Component ID + DestinationComponent uint8 + // System ID + DestinationSystem uint8 + // Event ID (as defined in the component metadata) + Id uint32 + // Timestamp (time since system boot when the event happened). + EventTimeBootMs uint32 + // Sequence number. + Sequence uint16 + // Log levels: 4 bits MSB: internal (for logging purposes), 4 bits LSB: external. Levels: Emergency = 0, Alert = 1, Critical = 2, Error = 3, Warning = 4, Notice = 5, Info = 6, Debug = 7, Protocol = 8, Disabled = 9 + LogLevels uint8 + // Arguments (depend on event ID). + Arguments [40]uint8 +} + +// GetID implements the msg.Message interface. +func (*MessageEvent) GetID() uint32 { + return 410 +} diff --git a/pkg/dialects/avssuas/msg_extended_sys_state.go b/pkg/dialects/avssuas/msg_extended_sys_state.go new file mode 100644 index 000000000..27cda9f50 --- /dev/null +++ b/pkg/dialects/avssuas/msg_extended_sys_state.go @@ -0,0 +1,16 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package avssuas + +// Provides state for additional features +type MessageExtendedSysState struct { + // The VTOL state if applicable. Is set to MAV_VTOL_STATE_UNDEFINED if UAV is not in VTOL configuration. + VtolState MAV_VTOL_STATE `mavenum:"uint8"` + // The landed state. Is set to MAV_LANDED_STATE_UNDEFINED if landed state is unknown. + LandedState MAV_LANDED_STATE `mavenum:"uint8"` +} + +// GetID implements the msg.Message interface. +func (*MessageExtendedSysState) GetID() uint32 { + return 245 +} diff --git a/pkg/dialects/avssuas/msg_fence_status.go b/pkg/dialects/avssuas/msg_fence_status.go new file mode 100644 index 000000000..13fbf36f4 --- /dev/null +++ b/pkg/dialects/avssuas/msg_fence_status.go @@ -0,0 +1,22 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package avssuas + +// Status of geo-fencing. Sent in extended status stream when fencing enabled. +type MessageFenceStatus struct { + // Breach status (0 if currently inside fence, 1 if outside). + BreachStatus uint8 + // Number of fence breaches. + BreachCount uint16 + // Last breach type. + BreachType FENCE_BREACH `mavenum:"uint8"` + // Time (since boot) of last breach. + BreachTime uint32 + // Active action to prevent fence breach + BreachMitigation FENCE_MITIGATE `mavenum:"uint8" mavext:"true"` +} + +// GetID implements the msg.Message interface. +func (*MessageFenceStatus) GetID() uint32 { + return 162 +} diff --git a/pkg/dialects/avssuas/msg_file_transfer_protocol.go b/pkg/dialects/avssuas/msg_file_transfer_protocol.go new file mode 100644 index 000000000..12b5c8575 --- /dev/null +++ b/pkg/dialects/avssuas/msg_file_transfer_protocol.go @@ -0,0 +1,20 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package avssuas + +// File transfer message +type MessageFileTransferProtocol struct { + // Network ID (0 for broadcast) + TargetNetwork uint8 + // System ID (0 for broadcast) + TargetSystem uint8 + // Component ID (0 for broadcast) + TargetComponent uint8 + // Variable length payload. The length is defined by the remaining message length when subtracting the header and other fields. The entire content of this block is opaque unless you understand any the encoding message_type. The particular encoding used can be extension specific and might not always be documented as part of the mavlink specification. + Payload [251]uint8 +} + +// GetID implements the msg.Message interface. +func (*MessageFileTransferProtocol) GetID() uint32 { + return 110 +} diff --git a/pkg/dialects/avssuas/msg_flight_information.go b/pkg/dialects/avssuas/msg_flight_information.go new file mode 100644 index 000000000..b8d57745a --- /dev/null +++ b/pkg/dialects/avssuas/msg_flight_information.go @@ -0,0 +1,21 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package avssuas + +// Information about flight since last arming. +// This can be requested using MAV_CMD_REQUEST_MESSAGE. +type MessageFlightInformation struct { + // Timestamp (time since system boot). + TimeBootMs uint32 + // Timestamp at arming (time since UNIX epoch) in UTC, 0 for unknown + ArmingTimeUtc uint64 + // Timestamp at takeoff (time since UNIX epoch) in UTC, 0 for unknown + TakeoffTimeUtc uint64 + // Universally unique identifier (UUID) of flight, should correspond to name of log files + FlightUuid uint64 +} + +// GetID implements the msg.Message interface. +func (*MessageFlightInformation) GetID() uint32 { + return 264 +} diff --git a/pkg/dialects/avssuas/msg_follow_target.go b/pkg/dialects/avssuas/msg_follow_target.go new file mode 100644 index 000000000..3ffed6dd9 --- /dev/null +++ b/pkg/dialects/avssuas/msg_follow_target.go @@ -0,0 +1,34 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package avssuas + +// Current motion information from a designated system +type MessageFollowTarget struct { + // Timestamp (time since system boot). + Timestamp uint64 + // bit positions for tracker reporting capabilities (POS = 0, VEL = 1, ACCEL = 2, ATT + RATES = 3) + EstCapabilities uint8 + // Latitude (WGS84) + Lat int32 + // Longitude (WGS84) + Lon int32 + // Altitude (MSL) + Alt float32 + // target velocity (0,0,0) for unknown + Vel [3]float32 + // linear target acceleration (0,0,0) for unknown + Acc [3]float32 + // (0 0 0 0 for unknown) + AttitudeQ [4]float32 + // (0 0 0 for unknown) + Rates [3]float32 + // eph epv + PositionCov [3]float32 + // button states or switches of a tracker device + CustomState uint64 +} + +// GetID implements the msg.Message interface. +func (*MessageFollowTarget) GetID() uint32 { + return 144 +} diff --git a/pkg/dialects/avssuas/msg_generator_status.go b/pkg/dialects/avssuas/msg_generator_status.go new file mode 100644 index 000000000..3dc084ac9 --- /dev/null +++ b/pkg/dialects/avssuas/msg_generator_status.go @@ -0,0 +1,34 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package avssuas + +// Telemetry of power generation system. Alternator or mechanical generator. +type MessageGeneratorStatus struct { + // Status flags. + Status MAV_GENERATOR_STATUS_FLAG `mavenum:"uint64"` + // Speed of electrical generator or alternator. UINT16_MAX: field not provided. + GeneratorSpeed uint16 + // Current into/out of battery. Positive for out. Negative for in. NaN: field not provided. + BatteryCurrent float32 + // Current going to the UAV. If battery current not available this is the DC current from the generator. Positive for out. Negative for in. NaN: field not provided + LoadCurrent float32 + // The power being generated. NaN: field not provided + PowerGenerated float32 + // Voltage of the bus seen at the generator, or battery bus if battery bus is controlled by generator and at a different voltage to main bus. + BusVoltage float32 + // The temperature of the rectifier or power converter. INT16_MAX: field not provided. + RectifierTemperature int16 + // The target battery current. Positive for out. Negative for in. NaN: field not provided + BatCurrentSetpoint float32 + // The temperature of the mechanical motor, fuel cell core or generator. INT16_MAX: field not provided. + GeneratorTemperature int16 + // Seconds this generator has run since it was rebooted. UINT32_MAX: field not provided. + Runtime uint32 + // Seconds until this generator requires maintenance. A negative value indicates maintenance is past-due. INT32_MAX: field not provided. + TimeUntilMaintenance int32 +} + +// GetID implements the msg.Message interface. +func (*MessageGeneratorStatus) GetID() uint32 { + return 373 +} diff --git a/pkg/dialects/avssuas/msg_gimbal_device_attitude_status.go b/pkg/dialects/avssuas/msg_gimbal_device_attitude_status.go new file mode 100644 index 000000000..0b15440f8 --- /dev/null +++ b/pkg/dialects/avssuas/msg_gimbal_device_attitude_status.go @@ -0,0 +1,30 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package avssuas + +// Message reporting the status of a gimbal device. This message should be broadcasted by a gimbal device component. The angles encoded in the quaternion are relative to absolute North if the flag GIMBAL_DEVICE_FLAGS_YAW_LOCK is set (roll: positive is rolling to the right, pitch: positive is pitching up, yaw is turn to the right) or relative to the vehicle heading if the flag is not set. This message should be broadcast at a low regular rate (e.g. 10Hz). +type MessageGimbalDeviceAttitudeStatus struct { + // System ID + TargetSystem uint8 + // Component ID + TargetComponent uint8 + // Timestamp (time since system boot). + TimeBootMs uint32 + // Current gimbal flags set. + Flags GIMBAL_DEVICE_FLAGS `mavenum:"uint16"` + // Quaternion components, w, x, y, z (1 0 0 0 is the null-rotation, the frame is depends on whether the flag GIMBAL_DEVICE_FLAGS_YAW_LOCK is set) + Q [4]float32 + // X component of angular velocity (NaN if unknown) + AngularVelocityX float32 + // Y component of angular velocity (NaN if unknown) + AngularVelocityY float32 + // Z component of angular velocity (NaN if unknown) + AngularVelocityZ float32 + // Failure flags (0 for no failure) + FailureFlags GIMBAL_DEVICE_ERROR_FLAGS `mavenum:"uint32"` +} + +// GetID implements the msg.Message interface. +func (*MessageGimbalDeviceAttitudeStatus) GetID() uint32 { + return 285 +} diff --git a/pkg/dialects/avssuas/msg_gimbal_device_information.go b/pkg/dialects/avssuas/msg_gimbal_device_information.go new file mode 100644 index 000000000..ae9752df7 --- /dev/null +++ b/pkg/dialects/avssuas/msg_gimbal_device_information.go @@ -0,0 +1,42 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package avssuas + +// Information about a low level gimbal. This message should be requested by the gimbal manager or a ground station using MAV_CMD_REQUEST_MESSAGE. The maximum angles and rates are the limits by hardware. However, the limits by software used are likely different/smaller and dependent on mode/settings/etc.. +type MessageGimbalDeviceInformation struct { + // Timestamp (time since system boot). + TimeBootMs uint32 + // Name of the gimbal vendor. + VendorName string `mavlen:"32"` + // Name of the gimbal model. + ModelName string `mavlen:"32"` + // Custom name of the gimbal given to it by the user. + CustomName string `mavlen:"32"` + // Version of the gimbal firmware, encoded as: (Dev & 0xff) << 24 | (Patch & 0xff) << 16 | (Minor & 0xff) << 8 | (Major & 0xff). + FirmwareVersion uint32 + // Version of the gimbal hardware, encoded as: (Dev & 0xff) << 24 | (Patch & 0xff) << 16 | (Minor & 0xff) << 8 | (Major & 0xff). + HardwareVersion uint32 + // UID of gimbal hardware (0 if unknown). + Uid uint64 + // Bitmap of gimbal capability flags. + CapFlags GIMBAL_DEVICE_CAP_FLAGS `mavenum:"uint16"` + // Bitmap for use for gimbal-specific capability flags. + CustomCapFlags uint16 + // Minimum hardware roll angle (positive: rolling to the right, negative: rolling to the left) + RollMin float32 + // Maximum hardware roll angle (positive: rolling to the right, negative: rolling to the left) + RollMax float32 + // Minimum hardware pitch angle (positive: up, negative: down) + PitchMin float32 + // Maximum hardware pitch angle (positive: up, negative: down) + PitchMax float32 + // Minimum hardware yaw angle (positive: to the right, negative: to the left) + YawMin float32 + // Maximum hardware yaw angle (positive: to the right, negative: to the left) + YawMax float32 +} + +// GetID implements the msg.Message interface. +func (*MessageGimbalDeviceInformation) GetID() uint32 { + return 283 +} diff --git a/pkg/dialects/avssuas/msg_gimbal_device_set_attitude.go b/pkg/dialects/avssuas/msg_gimbal_device_set_attitude.go new file mode 100644 index 000000000..77d1afabf --- /dev/null +++ b/pkg/dialects/avssuas/msg_gimbal_device_set_attitude.go @@ -0,0 +1,26 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package avssuas + +// Low level message to control a gimbal device's attitude. This message is to be sent from the gimbal manager to the gimbal device component. Angles and rates can be set to NaN according to use case. +type MessageGimbalDeviceSetAttitude struct { + // System ID + TargetSystem uint8 + // Component ID + TargetComponent uint8 + // Low level gimbal flags. + Flags GIMBAL_DEVICE_FLAGS `mavenum:"uint16"` + // Quaternion components, w, x, y, z (1 0 0 0 is the null-rotation, the frame is depends on whether the flag GIMBAL_DEVICE_FLAGS_YAW_LOCK is set, set all fields to NaN if only angular velocity should be used) + Q [4]float32 + // X component of angular velocity, positive is rolling to the right, NaN to be ignored. + AngularVelocityX float32 + // Y component of angular velocity, positive is pitching up, NaN to be ignored. + AngularVelocityY float32 + // Z component of angular velocity, positive is yawing to the right, NaN to be ignored. + AngularVelocityZ float32 +} + +// GetID implements the msg.Message interface. +func (*MessageGimbalDeviceSetAttitude) GetID() uint32 { + return 284 +} diff --git a/pkg/dialects/avssuas/msg_gimbal_manager_information.go b/pkg/dialects/avssuas/msg_gimbal_manager_information.go new file mode 100644 index 000000000..bd41c9ede --- /dev/null +++ b/pkg/dialects/avssuas/msg_gimbal_manager_information.go @@ -0,0 +1,30 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package avssuas + +// Information about a high level gimbal manager. This message should be requested by a ground station using MAV_CMD_REQUEST_MESSAGE. +type MessageGimbalManagerInformation struct { + // Timestamp (time since system boot). + TimeBootMs uint32 + // Bitmap of gimbal capability flags. + CapFlags GIMBAL_MANAGER_CAP_FLAGS `mavenum:"uint32"` + // Gimbal device ID that this gimbal manager is responsible for. + GimbalDeviceId uint8 + // Minimum hardware roll angle (positive: rolling to the right, negative: rolling to the left) + RollMin float32 + // Maximum hardware roll angle (positive: rolling to the right, negative: rolling to the left) + RollMax float32 + // Minimum pitch angle (positive: up, negative: down) + PitchMin float32 + // Maximum pitch angle (positive: up, negative: down) + PitchMax float32 + // Minimum yaw angle (positive: to the right, negative: to the left) + YawMin float32 + // Maximum yaw angle (positive: to the right, negative: to the left) + YawMax float32 +} + +// GetID implements the msg.Message interface. +func (*MessageGimbalManagerInformation) GetID() uint32 { + return 280 +} diff --git a/pkg/dialects/avssuas/msg_gimbal_manager_set_attitude.go b/pkg/dialects/avssuas/msg_gimbal_manager_set_attitude.go new file mode 100644 index 000000000..2d6225e30 --- /dev/null +++ b/pkg/dialects/avssuas/msg_gimbal_manager_set_attitude.go @@ -0,0 +1,28 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package avssuas + +// High level message to control a gimbal's attitude. This message is to be sent to the gimbal manager (e.g. from a ground station). Angles and rates can be set to NaN according to use case. +type MessageGimbalManagerSetAttitude struct { + // System ID + TargetSystem uint8 + // Component ID + TargetComponent uint8 + // High level gimbal manager flags to use. + Flags GIMBAL_MANAGER_FLAGS `mavenum:"uint32"` + // Component ID of gimbal device to address (or 1-6 for non-MAVLink gimbal), 0 for all gimbal device components. Send command multiple times for more than one gimbal (but not all gimbals). + GimbalDeviceId uint8 + // Quaternion components, w, x, y, z (1 0 0 0 is the null-rotation, the frame is depends on whether the flag GIMBAL_MANAGER_FLAGS_YAW_LOCK is set) + Q [4]float32 + // X component of angular velocity, positive is rolling to the right, NaN to be ignored. + AngularVelocityX float32 + // Y component of angular velocity, positive is pitching up, NaN to be ignored. + AngularVelocityY float32 + // Z component of angular velocity, positive is yawing to the right, NaN to be ignored. + AngularVelocityZ float32 +} + +// GetID implements the msg.Message interface. +func (*MessageGimbalManagerSetAttitude) GetID() uint32 { + return 282 +} diff --git a/pkg/dialects/avssuas/msg_gimbal_manager_set_manual_control.go b/pkg/dialects/avssuas/msg_gimbal_manager_set_manual_control.go new file mode 100644 index 000000000..fad6e49dd --- /dev/null +++ b/pkg/dialects/avssuas/msg_gimbal_manager_set_manual_control.go @@ -0,0 +1,28 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package avssuas + +// High level message to control a gimbal manually. The angles or angular rates are unitless; the actual rates will depend on internal gimbal manager settings/configuration (e.g. set by parameters). This message is to be sent to the gimbal manager (e.g. from a ground station). Angles and rates can be set to NaN according to use case. +type MessageGimbalManagerSetManualControl struct { + // System ID + TargetSystem uint8 + // Component ID + TargetComponent uint8 + // High level gimbal manager flags. + Flags GIMBAL_MANAGER_FLAGS `mavenum:"uint32"` + // Component ID of gimbal device to address (or 1-6 for non-MAVLink gimbal), 0 for all gimbal device components. Send command multiple times for more than one gimbal (but not all gimbals). + GimbalDeviceId uint8 + // Pitch angle unitless (-1..1, positive: up, negative: down, NaN to be ignored). + Pitch float32 + // Yaw angle unitless (-1..1, positive: to the right, negative: to the left, NaN to be ignored). + Yaw float32 + // Pitch angular rate unitless (-1..1, positive: up, negative: down, NaN to be ignored). + PitchRate float32 + // Yaw angular rate unitless (-1..1, positive: to the right, negative: to the left, NaN to be ignored). + YawRate float32 +} + +// GetID implements the msg.Message interface. +func (*MessageGimbalManagerSetManualControl) GetID() uint32 { + return 288 +} diff --git a/pkg/dialects/avssuas/msg_gimbal_manager_set_pitchyaw.go b/pkg/dialects/avssuas/msg_gimbal_manager_set_pitchyaw.go new file mode 100644 index 000000000..58845fd04 --- /dev/null +++ b/pkg/dialects/avssuas/msg_gimbal_manager_set_pitchyaw.go @@ -0,0 +1,28 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package avssuas + +// High level message to control a gimbal's pitch and yaw angles. This message is to be sent to the gimbal manager (e.g. from a ground station). Angles and rates can be set to NaN according to use case. +type MessageGimbalManagerSetPitchyaw struct { + // System ID + TargetSystem uint8 + // Component ID + TargetComponent uint8 + // High level gimbal manager flags to use. + Flags GIMBAL_MANAGER_FLAGS `mavenum:"uint32"` + // Component ID of gimbal device to address (or 1-6 for non-MAVLink gimbal), 0 for all gimbal device components. Send command multiple times for more than one gimbal (but not all gimbals). + GimbalDeviceId uint8 + // Pitch angle (positive: up, negative: down, NaN to be ignored). + Pitch float32 + // Yaw angle (positive: to the right, negative: to the left, NaN to be ignored). + Yaw float32 + // Pitch angular rate (positive: up, negative: down, NaN to be ignored). + PitchRate float32 + // Yaw angular rate (positive: to the right, negative: to the left, NaN to be ignored). + YawRate float32 +} + +// GetID implements the msg.Message interface. +func (*MessageGimbalManagerSetPitchyaw) GetID() uint32 { + return 287 +} diff --git a/pkg/dialects/avssuas/msg_gimbal_manager_status.go b/pkg/dialects/avssuas/msg_gimbal_manager_status.go new file mode 100644 index 000000000..67f36c22d --- /dev/null +++ b/pkg/dialects/avssuas/msg_gimbal_manager_status.go @@ -0,0 +1,26 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package avssuas + +// Current status about a high level gimbal manager. This message should be broadcast at a low regular rate (e.g. 5Hz). +type MessageGimbalManagerStatus struct { + // Timestamp (time since system boot). + TimeBootMs uint32 + // High level gimbal manager flags currently applied. + Flags GIMBAL_MANAGER_FLAGS `mavenum:"uint32"` + // Gimbal device ID that this gimbal manager is responsible for. + GimbalDeviceId uint8 + // System ID of MAVLink component with primary control, 0 for none. + PrimaryControlSysid uint8 + // Component ID of MAVLink component with primary control, 0 for none. + PrimaryControlCompid uint8 + // System ID of MAVLink component with secondary control, 0 for none. + SecondaryControlSysid uint8 + // Component ID of MAVLink component with secondary control, 0 for none. + SecondaryControlCompid uint8 +} + +// GetID implements the msg.Message interface. +func (*MessageGimbalManagerStatus) GetID() uint32 { + return 281 +} diff --git a/pkg/dialects/avssuas/msg_global_position_int.go b/pkg/dialects/avssuas/msg_global_position_int.go new file mode 100644 index 000000000..77c50cd6c --- /dev/null +++ b/pkg/dialects/avssuas/msg_global_position_int.go @@ -0,0 +1,31 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package avssuas + +// The filtered global position (e.g. fused GPS and accelerometers). The position is in GPS-frame (right-handed, Z-up). It +// is designed as scaled integer message since the resolution of float is not sufficient. +type MessageGlobalPositionInt struct { + // Timestamp (time since system boot). + TimeBootMs uint32 + // Latitude, expressed + Lat int32 + // Longitude, expressed + Lon int32 + // Altitude (MSL). Note that virtually all GPS modules provide both WGS84 and MSL. + Alt int32 + // Altitude above ground + RelativeAlt int32 + // Ground X Speed (Latitude, positive north) + Vx int16 + // Ground Y Speed (Longitude, positive east) + Vy int16 + // Ground Z Speed (Altitude, positive down) + Vz int16 + // Vehicle heading (yaw angle), 0.0..359.99 degrees. If unknown, set to: UINT16_MAX + Hdg uint16 +} + +// GetID implements the msg.Message interface. +func (*MessageGlobalPositionInt) GetID() uint32 { + return 33 +} diff --git a/pkg/dialects/avssuas/msg_global_position_int_cov.go b/pkg/dialects/avssuas/msg_global_position_int_cov.go new file mode 100644 index 000000000..740dd39d4 --- /dev/null +++ b/pkg/dialects/avssuas/msg_global_position_int_cov.go @@ -0,0 +1,32 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package avssuas + +// The filtered global position (e.g. fused GPS and accelerometers). The position is in GPS-frame (right-handed, Z-up). It is designed as scaled integer message since the resolution of float is not sufficient. NOTE: This message is intended for onboard networks / companion computers and higher-bandwidth links and optimized for accuracy and completeness. Please use the GLOBAL_POSITION_INT message for a minimal subset. +type MessageGlobalPositionIntCov struct { + // Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. + TimeUsec uint64 + // Class id of the estimator this estimate originated from. + EstimatorType MAV_ESTIMATOR_TYPE `mavenum:"uint8"` + // Latitude + Lat int32 + // Longitude + Lon int32 + // Altitude in meters above MSL + Alt int32 + // Altitude above ground + RelativeAlt int32 + // Ground X Speed (Latitude) + Vx float32 + // Ground Y Speed (Longitude) + Vy float32 + // Ground Z Speed (Altitude) + Vz float32 + // Row-major representation of a 6x6 position and velocity 6x6 cross-covariance matrix (states: lat, lon, alt, vx, vy, vz; first six entries are the first ROW, next six entries are the second row, etc.). If unknown, assign NaN value to first element in the array. + Covariance [36]float32 +} + +// GetID implements the msg.Message interface. +func (*MessageGlobalPositionIntCov) GetID() uint32 { + return 63 +} diff --git a/pkg/dialects/avssuas/msg_global_vision_position_estimate.go b/pkg/dialects/avssuas/msg_global_vision_position_estimate.go new file mode 100644 index 000000000..6460d9d0b --- /dev/null +++ b/pkg/dialects/avssuas/msg_global_vision_position_estimate.go @@ -0,0 +1,30 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package avssuas + +// Global position/attitude estimate from a vision source. +type MessageGlobalVisionPositionEstimate struct { + // Timestamp (UNIX time or since system boot) + Usec uint64 + // Global X position + X float32 + // Global Y position + Y float32 + // Global Z position + Z float32 + // Roll angle + Roll float32 + // Pitch angle + Pitch float32 + // Yaw angle + Yaw float32 + // Row-major representation of pose 6x6 cross-covariance matrix upper right triangle (states: x_global, y_global, z_global, roll, pitch, yaw; first six entries are the first ROW, next five entries are the second ROW, etc.). If unknown, assign NaN value to first element in the array. + Covariance [21]float32 `mavext:"true"` + // Estimate reset counter. This should be incremented when the estimate resets in any of the dimensions (position, velocity, attitude, angular speed). This is designed to be used when e.g an external SLAM system detects a loop-closure and the estimate jumps. + ResetCounter uint8 `mavext:"true"` +} + +// GetID implements the msg.Message interface. +func (*MessageGlobalVisionPositionEstimate) GetID() uint32 { + return 101 +} diff --git a/pkg/dialects/avssuas/msg_gps2_raw.go b/pkg/dialects/avssuas/msg_gps2_raw.go new file mode 100644 index 000000000..007556e48 --- /dev/null +++ b/pkg/dialects/avssuas/msg_gps2_raw.go @@ -0,0 +1,48 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package avssuas + +// Second GPS data. +type MessageGps2Raw struct { + // Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. + TimeUsec uint64 + // GPS fix type. + FixType GPS_FIX_TYPE `mavenum:"uint8"` + // Latitude (WGS84) + Lat int32 + // Longitude (WGS84) + Lon int32 + // Altitude (MSL). Positive for up. + Alt int32 + // GPS HDOP horizontal dilution of position (unitless * 100). If unknown, set to: UINT16_MAX + Eph uint16 + // GPS VDOP vertical dilution of position (unitless * 100). If unknown, set to: UINT16_MAX + Epv uint16 + // GPS ground speed. If unknown, set to: UINT16_MAX + Vel uint16 + // Course over ground (NOT heading, but direction of movement): 0.0..359.99 degrees. If unknown, set to: UINT16_MAX + Cog uint16 + // Number of satellites visible. If unknown, set to UINT8_MAX + SatellitesVisible uint8 + // Number of DGPS satellites + DgpsNumch uint8 + // Age of DGPS info + DgpsAge uint32 + // Yaw in earth frame from north. Use 0 if this GPS does not provide yaw. Use UINT16_MAX if this GPS is configured to provide yaw and is currently unable to provide it. Use 36000 for north. + Yaw uint16 `mavext:"true"` + // Altitude (above WGS84, EGM96 ellipsoid). Positive for up. + AltEllipsoid int32 `mavext:"true"` + // Position uncertainty. + HAcc uint32 `mavext:"true"` + // Altitude uncertainty. + VAcc uint32 `mavext:"true"` + // Speed uncertainty. + VelAcc uint32 `mavext:"true"` + // Heading / track uncertainty + HdgAcc uint32 `mavext:"true"` +} + +// GetID implements the msg.Message interface. +func (*MessageGps2Raw) GetID() uint32 { + return 124 +} diff --git a/pkg/dialects/avssuas/msg_gps2_rtk.go b/pkg/dialects/avssuas/msg_gps2_rtk.go new file mode 100644 index 000000000..43f12af3e --- /dev/null +++ b/pkg/dialects/avssuas/msg_gps2_rtk.go @@ -0,0 +1,38 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package avssuas + +// RTK GPS data. Gives information on the relative baseline calculation the GPS is reporting +type MessageGps2Rtk struct { + // Time since boot of last baseline message received. + TimeLastBaselineMs uint32 + // Identification of connected RTK receiver. + RtkReceiverId uint8 + // GPS Week Number of last baseline + Wn uint16 + // GPS Time of Week of last baseline + Tow uint32 + // GPS-specific health report for RTK data. + RtkHealth uint8 + // Rate of baseline messages being received by GPS + RtkRate uint8 + // Current number of sats used for RTK calculation. + Nsats uint8 + // Coordinate system of baseline + BaselineCoordsType RTK_BASELINE_COORDINATE_SYSTEM `mavenum:"uint8"` + // Current baseline in ECEF x or NED north component. + BaselineAMm int32 + // Current baseline in ECEF y or NED east component. + BaselineBMm int32 + // Current baseline in ECEF z or NED down component. + BaselineCMm int32 + // Current estimate of baseline accuracy. + Accuracy uint32 + // Current number of integer ambiguity hypotheses. + IarNumHypotheses int32 +} + +// GetID implements the msg.Message interface. +func (*MessageGps2Rtk) GetID() uint32 { + return 128 +} diff --git a/pkg/dialects/avssuas/msg_gps_global_origin.go b/pkg/dialects/avssuas/msg_gps_global_origin.go new file mode 100644 index 000000000..6ed1ca84d --- /dev/null +++ b/pkg/dialects/avssuas/msg_gps_global_origin.go @@ -0,0 +1,20 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package avssuas + +// Publishes the GPS co-ordinates of the vehicle local origin (0,0,0) position. Emitted whenever a new GPS-Local position mapping is requested or set - e.g. following SET_GPS_GLOBAL_ORIGIN message. +type MessageGpsGlobalOrigin struct { + // Latitude (WGS84) + Latitude int32 + // Longitude (WGS84) + Longitude int32 + // Altitude (MSL). Positive for up. + Altitude int32 + // Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. + TimeUsec uint64 `mavext:"true"` +} + +// GetID implements the msg.Message interface. +func (*MessageGpsGlobalOrigin) GetID() uint32 { + return 49 +} diff --git a/pkg/dialects/avssuas/msg_gps_inject_data.go b/pkg/dialects/avssuas/msg_gps_inject_data.go new file mode 100644 index 000000000..754d47c30 --- /dev/null +++ b/pkg/dialects/avssuas/msg_gps_inject_data.go @@ -0,0 +1,20 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package avssuas + +// Data for injecting into the onboard GPS (used for DGPS) +type MessageGpsInjectData struct { + // System ID + TargetSystem uint8 + // Component ID + TargetComponent uint8 + // Data length + Len uint8 + // Raw data (110 is enough for 12 satellites of RTCMv2) + Data [110]uint8 +} + +// GetID implements the msg.Message interface. +func (*MessageGpsInjectData) GetID() uint32 { + return 123 +} diff --git a/pkg/dialects/avssuas/msg_gps_input.go b/pkg/dialects/avssuas/msg_gps_input.go new file mode 100644 index 000000000..63e25278e --- /dev/null +++ b/pkg/dialects/avssuas/msg_gps_input.go @@ -0,0 +1,50 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package avssuas + +// GPS sensor input message. This is a raw sensor value sent by the GPS. This is NOT the global position estimate of the system. +type MessageGpsInput struct { + // Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. + TimeUsec uint64 + // ID of the GPS for multiple GPS inputs + GpsId uint8 + // Bitmap indicating which GPS input flags fields to ignore. All other fields must be provided. + IgnoreFlags GPS_INPUT_IGNORE_FLAGS `mavenum:"uint16"` + // GPS time (from start of GPS week) + TimeWeekMs uint32 + // GPS week number + TimeWeek uint16 + // 0-1: no fix, 2: 2D fix, 3: 3D fix. 4: 3D with DGPS. 5: 3D with RTK + FixType uint8 + // Latitude (WGS84) + Lat int32 + // Longitude (WGS84) + Lon int32 + // Altitude (MSL). Positive for up. + Alt float32 + // GPS HDOP horizontal dilution of position (unitless). If unknown, set to: UINT16_MAX + Hdop float32 + // GPS VDOP vertical dilution of position (unitless). If unknown, set to: UINT16_MAX + Vdop float32 + // GPS velocity in north direction in earth-fixed NED frame + Vn float32 + // GPS velocity in east direction in earth-fixed NED frame + Ve float32 + // GPS velocity in down direction in earth-fixed NED frame + Vd float32 + // GPS speed accuracy + SpeedAccuracy float32 + // GPS horizontal accuracy + HorizAccuracy float32 + // GPS vertical accuracy + VertAccuracy float32 + // Number of satellites visible. + SatellitesVisible uint8 + // Yaw of vehicle relative to Earth's North, zero means not available, use 36000 for north + Yaw uint16 `mavext:"true"` +} + +// GetID implements the msg.Message interface. +func (*MessageGpsInput) GetID() uint32 { + return 232 +} diff --git a/pkg/dialects/avssuas/msg_gps_raw_int.go b/pkg/dialects/avssuas/msg_gps_raw_int.go new file mode 100644 index 000000000..49725a855 --- /dev/null +++ b/pkg/dialects/avssuas/msg_gps_raw_int.go @@ -0,0 +1,45 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package avssuas + +// The global position, as returned by the Global Positioning System (GPS). This is +// NOT the global position estimate of the system, but rather a RAW sensor value. See message GLOBAL_POSITION_INT for the global position estimate. +type MessageGpsRawInt struct { + // Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. + TimeUsec uint64 + // GPS fix type. + FixType GPS_FIX_TYPE `mavenum:"uint8"` + // Latitude (WGS84, EGM96 ellipsoid) + Lat int32 + // Longitude (WGS84, EGM96 ellipsoid) + Lon int32 + // Altitude (MSL). Positive for up. Note that virtually all GPS modules provide the MSL altitude in addition to the WGS84 altitude. + Alt int32 + // GPS HDOP horizontal dilution of position (unitless * 100). If unknown, set to: UINT16_MAX + Eph uint16 + // GPS VDOP vertical dilution of position (unitless * 100). If unknown, set to: UINT16_MAX + Epv uint16 + // GPS ground speed. If unknown, set to: UINT16_MAX + Vel uint16 + // Course over ground (NOT heading, but direction of movement) in degrees * 100, 0.0..359.99 degrees. If unknown, set to: UINT16_MAX + Cog uint16 + // Number of satellites visible. If unknown, set to UINT8_MAX + SatellitesVisible uint8 + // Altitude (above WGS84, EGM96 ellipsoid). Positive for up. + AltEllipsoid int32 `mavext:"true"` + // Position uncertainty. + HAcc uint32 `mavext:"true"` + // Altitude uncertainty. + VAcc uint32 `mavext:"true"` + // Speed uncertainty. + VelAcc uint32 `mavext:"true"` + // Heading / track uncertainty + HdgAcc uint32 `mavext:"true"` + // Yaw in earth frame from north. Use 0 if this GPS does not provide yaw. Use UINT16_MAX if this GPS is configured to provide yaw and is currently unable to provide it. Use 36000 for north. + Yaw uint16 `mavext:"true"` +} + +// GetID implements the msg.Message interface. +func (*MessageGpsRawInt) GetID() uint32 { + return 24 +} diff --git a/pkg/dialects/avssuas/msg_gps_rtcm_data.go b/pkg/dialects/avssuas/msg_gps_rtcm_data.go new file mode 100644 index 000000000..d7da1cbe4 --- /dev/null +++ b/pkg/dialects/avssuas/msg_gps_rtcm_data.go @@ -0,0 +1,18 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package avssuas + +// RTCM message for injecting into the onboard GPS (used for DGPS) +type MessageGpsRtcmData struct { + // LSB: 1 means message is fragmented, next 2 bits are the fragment ID, the remaining 5 bits are used for the sequence ID. Messages are only to be flushed to the GPS when the entire message has been reconstructed on the autopilot. The fragment ID specifies which order the fragments should be assembled into a buffer, while the sequence ID is used to detect a mismatch between different buffers. The buffer is considered fully reconstructed when either all 4 fragments are present, or all the fragments before the first fragment with a non full payload is received. This management is used to ensure that normal GPS operation doesn't corrupt RTCM data, and to recover from a unreliable transport delivery order. + Flags uint8 + // data length + Len uint8 + // RTCM message (may be fragmented) + Data [180]uint8 +} + +// GetID implements the msg.Message interface. +func (*MessageGpsRtcmData) GetID() uint32 { + return 233 +} diff --git a/pkg/dialects/avssuas/msg_gps_rtk.go b/pkg/dialects/avssuas/msg_gps_rtk.go new file mode 100644 index 000000000..57e744102 --- /dev/null +++ b/pkg/dialects/avssuas/msg_gps_rtk.go @@ -0,0 +1,38 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package avssuas + +// RTK GPS data. Gives information on the relative baseline calculation the GPS is reporting +type MessageGpsRtk struct { + // Time since boot of last baseline message received. + TimeLastBaselineMs uint32 + // Identification of connected RTK receiver. + RtkReceiverId uint8 + // GPS Week Number of last baseline + Wn uint16 + // GPS Time of Week of last baseline + Tow uint32 + // GPS-specific health report for RTK data. + RtkHealth uint8 + // Rate of baseline messages being received by GPS + RtkRate uint8 + // Current number of sats used for RTK calculation. + Nsats uint8 + // Coordinate system of baseline + BaselineCoordsType RTK_BASELINE_COORDINATE_SYSTEM `mavenum:"uint8"` + // Current baseline in ECEF x or NED north component. + BaselineAMm int32 + // Current baseline in ECEF y or NED east component. + BaselineBMm int32 + // Current baseline in ECEF z or NED down component. + BaselineCMm int32 + // Current estimate of baseline accuracy. + Accuracy uint32 + // Current number of integer ambiguity hypotheses. + IarNumHypotheses int32 +} + +// GetID implements the msg.Message interface. +func (*MessageGpsRtk) GetID() uint32 { + return 127 +} diff --git a/pkg/dialects/avssuas/msg_gps_status.go b/pkg/dialects/avssuas/msg_gps_status.go new file mode 100644 index 000000000..818f25465 --- /dev/null +++ b/pkg/dialects/avssuas/msg_gps_status.go @@ -0,0 +1,24 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package avssuas + +// The positioning status, as reported by GPS. This message is intended to display status information about each satellite visible to the receiver. See message GLOBAL_POSITION_INT for the global position estimate. This message can contain information for up to 20 satellites. +type MessageGpsStatus struct { + // Number of satellites visible + SatellitesVisible uint8 + // Global satellite ID + SatellitePrn [20]uint8 + // 0: Satellite not used, 1: used for localization + SatelliteUsed [20]uint8 + // Elevation (0: right on top of receiver, 90: on the horizon) of satellite + SatelliteElevation [20]uint8 + // Direction of satellite, 0: 0 deg, 255: 360 deg. + SatelliteAzimuth [20]uint8 + // Signal to noise ratio of satellite + SatelliteSnr [20]uint8 +} + +// GetID implements the msg.Message interface. +func (*MessageGpsStatus) GetID() uint32 { + return 25 +} diff --git a/pkg/dialects/avssuas/msg_heartbeat.go b/pkg/dialects/avssuas/msg_heartbeat.go new file mode 100644 index 000000000..450f97b57 --- /dev/null +++ b/pkg/dialects/avssuas/msg_heartbeat.go @@ -0,0 +1,24 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package avssuas + +// The heartbeat message shows that a system or component is present and responding. The type and autopilot fields (along with the message component id), allow the receiving system to treat further messages from this system appropriately (e.g. by laying out the user interface based on the autopilot). This microservice is documented at https://mavlink.io/en/services/heartbeat.html +type MessageHeartbeat struct { + // Vehicle or component type. For a flight controller component the vehicle type (quadrotor, helicopter, etc.). For other components the component type (e.g. camera, gimbal, etc.). This should be used in preference to component id for identifying the component type. + Type MAV_TYPE `mavenum:"uint8"` + // Autopilot type / class. Use MAV_AUTOPILOT_INVALID for components that are not flight controllers. + Autopilot MAV_AUTOPILOT `mavenum:"uint8"` + // System mode bitmap. + BaseMode MAV_MODE_FLAG `mavenum:"uint8"` + // A bitfield for use for autopilot-specific flags + CustomMode uint32 + // System status flag. + SystemStatus MAV_STATE `mavenum:"uint8"` + // MAVLink version, not writable by user, gets added by protocol because of magic data type: uint8_t_mavlink_version + MavlinkVersion uint8 +} + +// GetID implements the msg.Message interface. +func (*MessageHeartbeat) GetID() uint32 { + return 0 +} diff --git a/pkg/dialects/avssuas/msg_high_latency.go b/pkg/dialects/avssuas/msg_high_latency.go new file mode 100644 index 000000000..0534b67fc --- /dev/null +++ b/pkg/dialects/avssuas/msg_high_latency.go @@ -0,0 +1,60 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package avssuas + +// Message appropriate for high latency connections like Iridium +type MessageHighLatency struct { + // Bitmap of enabled system modes. + BaseMode MAV_MODE_FLAG `mavenum:"uint8"` + // A bitfield for use for autopilot-specific flags. + CustomMode uint32 + // The landed state. Is set to MAV_LANDED_STATE_UNDEFINED if landed state is unknown. + LandedState MAV_LANDED_STATE `mavenum:"uint8"` + // roll + Roll int16 + // pitch + Pitch int16 + // heading + Heading uint16 + // throttle (percentage) + Throttle int8 + // heading setpoint + HeadingSp int16 + // Latitude + Latitude int32 + // Longitude + Longitude int32 + // Altitude above mean sea level + AltitudeAmsl int16 + // Altitude setpoint relative to the home position + AltitudeSp int16 + // airspeed + Airspeed uint8 + // airspeed setpoint + AirspeedSp uint8 + // groundspeed + Groundspeed uint8 + // climb rate + ClimbRate int8 + // Number of satellites visible. If unknown, set to UINT8_MAX + GpsNsat uint8 + // GPS Fix type. + GpsFixType GPS_FIX_TYPE `mavenum:"uint8"` + // Remaining battery (percentage) + BatteryRemaining uint8 + // Autopilot temperature (degrees C) + Temperature int8 + // Air temperature (degrees C) from airspeed sensor + TemperatureAir int8 + // failsafe (each bit represents a failsafe where 0=ok, 1=failsafe active (bit0:RC, bit1:batt, bit2:GPS, bit3:GCS, bit4:fence) + Failsafe uint8 + // current waypoint number + WpNum uint8 + // distance to target + WpDistance uint16 +} + +// GetID implements the msg.Message interface. +func (*MessageHighLatency) GetID() uint32 { + return 234 +} diff --git a/pkg/dialects/avssuas/msg_high_latency2.go b/pkg/dialects/avssuas/msg_high_latency2.go new file mode 100644 index 000000000..16a3359d1 --- /dev/null +++ b/pkg/dialects/avssuas/msg_high_latency2.go @@ -0,0 +1,66 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package avssuas + +// Message appropriate for high latency connections like Iridium (version 2) +type MessageHighLatency2 struct { + // Timestamp (milliseconds since boot or Unix epoch) + Timestamp uint32 + // Type of the MAV (quadrotor, helicopter, etc.) + Type MAV_TYPE `mavenum:"uint8"` + // Autopilot type / class. Use MAV_AUTOPILOT_INVALID for components that are not flight controllers. + Autopilot MAV_AUTOPILOT `mavenum:"uint8"` + // A bitfield for use for autopilot-specific flags (2 byte version). + CustomMode uint16 + // Latitude + Latitude int32 + // Longitude + Longitude int32 + // Altitude above mean sea level + Altitude int16 + // Altitude setpoint + TargetAltitude int16 + // Heading + Heading uint8 + // Heading setpoint + TargetHeading uint8 + // Distance to target waypoint or position + TargetDistance uint16 + // Throttle + Throttle uint8 + // Airspeed + Airspeed uint8 + // Airspeed setpoint + AirspeedSp uint8 + // Groundspeed + Groundspeed uint8 + // Windspeed + Windspeed uint8 + // Wind heading + WindHeading uint8 + // Maximum error horizontal position since last message + Eph uint8 + // Maximum error vertical position since last message + Epv uint8 + // Air temperature from airspeed sensor + TemperatureAir int8 + // Maximum climb rate magnitude since last message + ClimbRate int8 + // Battery level (-1 if field not provided). + Battery int8 + // Current waypoint number + WpNum uint16 + // Bitmap of failure flags. + FailureFlags HL_FAILURE_FLAG `mavenum:"uint16"` + // Field for custom payload. + Custom0 int8 + // Field for custom payload. + Custom1 int8 + // Field for custom payload. + Custom2 int8 +} + +// GetID implements the msg.Message interface. +func (*MessageHighLatency2) GetID() uint32 { + return 235 +} diff --git a/pkg/dialects/avssuas/msg_highres_imu.go b/pkg/dialects/avssuas/msg_highres_imu.go new file mode 100644 index 000000000..7f6ab39e2 --- /dev/null +++ b/pkg/dialects/avssuas/msg_highres_imu.go @@ -0,0 +1,44 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package avssuas + +// The IMU readings in SI units in NED body frame +type MessageHighresImu struct { + // Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. + TimeUsec uint64 + // X acceleration + Xacc float32 + // Y acceleration + Yacc float32 + // Z acceleration + Zacc float32 + // Angular speed around X axis + Xgyro float32 + // Angular speed around Y axis + Ygyro float32 + // Angular speed around Z axis + Zgyro float32 + // X Magnetic field + Xmag float32 + // Y Magnetic field + Ymag float32 + // Z Magnetic field + Zmag float32 + // Absolute pressure + AbsPressure float32 + // Differential pressure + DiffPressure float32 + // Altitude calculated from pressure + PressureAlt float32 + // Temperature + Temperature float32 + // Bitmap for fields that have updated since last message + FieldsUpdated HIGHRES_IMU_UPDATED_FLAGS `mavenum:"uint16"` + // Id. Ids are numbered from 0 and map to IMUs numbered from 1 (e.g. IMU1 will have a message with id=0) + Id uint8 `mavext:"true"` +} + +// GetID implements the msg.Message interface. +func (*MessageHighresImu) GetID() uint32 { + return 105 +} diff --git a/pkg/dialects/avssuas/msg_hil_actuator_controls.go b/pkg/dialects/avssuas/msg_hil_actuator_controls.go new file mode 100644 index 000000000..7973bacf8 --- /dev/null +++ b/pkg/dialects/avssuas/msg_hil_actuator_controls.go @@ -0,0 +1,20 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package avssuas + +// Sent from autopilot to simulation. Hardware in the loop control outputs (replacement for HIL_CONTROLS) +type MessageHilActuatorControls struct { + // Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. + TimeUsec uint64 + // Control outputs -1 .. 1. Channel assignment depends on the simulated hardware. + Controls [16]float32 + // System mode. Includes arming state. + Mode MAV_MODE_FLAG `mavenum:"uint8"` + // Flags as bitfield, 1: indicate simulation using lockstep. + Flags uint64 +} + +// GetID implements the msg.Message interface. +func (*MessageHilActuatorControls) GetID() uint32 { + return 93 +} diff --git a/pkg/dialects/avssuas/msg_hil_controls.go b/pkg/dialects/avssuas/msg_hil_controls.go new file mode 100644 index 000000000..9f533e6bf --- /dev/null +++ b/pkg/dialects/avssuas/msg_hil_controls.go @@ -0,0 +1,34 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package avssuas + +// Sent from autopilot to simulation. Hardware in the loop control outputs +type MessageHilControls struct { + // Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. + TimeUsec uint64 + // Control output -1 .. 1 + RollAilerons float32 + // Control output -1 .. 1 + PitchElevator float32 + // Control output -1 .. 1 + YawRudder float32 + // Throttle 0 .. 1 + Throttle float32 + // Aux 1, -1 .. 1 + Aux1 float32 + // Aux 2, -1 .. 1 + Aux2 float32 + // Aux 3, -1 .. 1 + Aux3 float32 + // Aux 4, -1 .. 1 + Aux4 float32 + // System mode. + Mode MAV_MODE `mavenum:"uint8"` + // Navigation mode (MAV_NAV_MODE) + NavMode uint8 +} + +// GetID implements the msg.Message interface. +func (*MessageHilControls) GetID() uint32 { + return 91 +} diff --git a/pkg/dialects/avssuas/msg_hil_gps.go b/pkg/dialects/avssuas/msg_hil_gps.go new file mode 100644 index 000000000..aad26d662 --- /dev/null +++ b/pkg/dialects/avssuas/msg_hil_gps.go @@ -0,0 +1,43 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package avssuas + +// The global position, as returned by the Global Positioning System (GPS). This is +// NOT the global position estimate of the sytem, but rather a RAW sensor value. See message GLOBAL_POSITION_INT for the global position estimate. +type MessageHilGps struct { + // Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. + TimeUsec uint64 + // 0-1: no fix, 2: 2D fix, 3: 3D fix. Some applications will not use the value of this field unless it is at least two, so always correctly fill in the fix. + FixType uint8 + // Latitude (WGS84) + Lat int32 + // Longitude (WGS84) + Lon int32 + // Altitude (MSL). Positive for up. + Alt int32 + // GPS HDOP horizontal dilution of position (unitless * 100). If unknown, set to: UINT16_MAX + Eph uint16 + // GPS VDOP vertical dilution of position (unitless * 100). If unknown, set to: UINT16_MAX + Epv uint16 + // GPS ground speed. If unknown, set to: UINT16_MAX + Vel uint16 + // GPS velocity in north direction in earth-fixed NED frame + Vn int16 + // GPS velocity in east direction in earth-fixed NED frame + Ve int16 + // GPS velocity in down direction in earth-fixed NED frame + Vd int16 + // Course over ground (NOT heading, but direction of movement), 0.0..359.99 degrees. If unknown, set to: UINT16_MAX + Cog uint16 + // Number of satellites visible. If unknown, set to UINT8_MAX + SatellitesVisible uint8 + // GPS ID (zero indexed). Used for multiple GPS inputs + Id uint8 `mavext:"true"` + // Yaw of vehicle relative to Earth's North, zero means not available, use 36000 for north + Yaw uint16 `mavext:"true"` +} + +// GetID implements the msg.Message interface. +func (*MessageHilGps) GetID() uint32 { + return 113 +} diff --git a/pkg/dialects/avssuas/msg_hil_optical_flow.go b/pkg/dialects/avssuas/msg_hil_optical_flow.go new file mode 100644 index 000000000..2ea837be8 --- /dev/null +++ b/pkg/dialects/avssuas/msg_hil_optical_flow.go @@ -0,0 +1,36 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package avssuas + +// Simulated optical flow from a flow sensor (e.g. PX4FLOW or optical mouse sensor) +type MessageHilOpticalFlow struct { + // Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. + TimeUsec uint64 + // Sensor ID + SensorId uint8 + // Integration time. Divide integrated_x and integrated_y by the integration time to obtain average flow. The integration time also indicates the. + IntegrationTimeUs uint32 + // Flow in radians around X axis (Sensor RH rotation about the X axis induces a positive flow. Sensor linear motion along the positive Y axis induces a negative flow.) + IntegratedX float32 + // Flow in radians around Y axis (Sensor RH rotation about the Y axis induces a positive flow. Sensor linear motion along the positive X axis induces a positive flow.) + IntegratedY float32 + // RH rotation around X axis + IntegratedXgyro float32 + // RH rotation around Y axis + IntegratedYgyro float32 + // RH rotation around Z axis + IntegratedZgyro float32 + // Temperature + Temperature int16 + // Optical flow quality / confidence. 0: no valid flow, 255: maximum quality + Quality uint8 + // Time since the distance was sampled. + TimeDeltaDistanceUs uint32 + // Distance to the center of the flow field. Positive value (including zero): distance known. Negative value: Unknown distance. + Distance float32 +} + +// GetID implements the msg.Message interface. +func (*MessageHilOpticalFlow) GetID() uint32 { + return 114 +} diff --git a/pkg/dialects/avssuas/msg_hil_rc_inputs_raw.go b/pkg/dialects/avssuas/msg_hil_rc_inputs_raw.go new file mode 100644 index 000000000..0b1531cea --- /dev/null +++ b/pkg/dialects/avssuas/msg_hil_rc_inputs_raw.go @@ -0,0 +1,40 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package avssuas + +// Sent from simulation to autopilot. The RAW values of the RC channels received. The standard PPM modulation is as follows: 1000 microseconds: 0%, 2000 microseconds: 100%. Individual receivers/transmitters might violate this specification. +type MessageHilRcInputsRaw struct { + // Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. + TimeUsec uint64 + // RC channel 1 value + Chan1Raw uint16 + // RC channel 2 value + Chan2Raw uint16 + // RC channel 3 value + Chan3Raw uint16 + // RC channel 4 value + Chan4Raw uint16 + // RC channel 5 value + Chan5Raw uint16 + // RC channel 6 value + Chan6Raw uint16 + // RC channel 7 value + Chan7Raw uint16 + // RC channel 8 value + Chan8Raw uint16 + // RC channel 9 value + Chan9Raw uint16 + // RC channel 10 value + Chan10Raw uint16 + // RC channel 11 value + Chan11Raw uint16 + // RC channel 12 value + Chan12Raw uint16 + // Receive signal strength indicator in device-dependent units/scale. Values: [0-254], UINT8_MAX: invalid/unknown. + Rssi uint8 +} + +// GetID implements the msg.Message interface. +func (*MessageHilRcInputsRaw) GetID() uint32 { + return 92 +} diff --git a/pkg/dialects/avssuas/msg_hil_sensor.go b/pkg/dialects/avssuas/msg_hil_sensor.go new file mode 100644 index 000000000..28556f831 --- /dev/null +++ b/pkg/dialects/avssuas/msg_hil_sensor.go @@ -0,0 +1,44 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package avssuas + +// The IMU readings in SI units in NED body frame +type MessageHilSensor struct { + // Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. + TimeUsec uint64 + // X acceleration + Xacc float32 + // Y acceleration + Yacc float32 + // Z acceleration + Zacc float32 + // Angular speed around X axis in body frame + Xgyro float32 + // Angular speed around Y axis in body frame + Ygyro float32 + // Angular speed around Z axis in body frame + Zgyro float32 + // X Magnetic field + Xmag float32 + // Y Magnetic field + Ymag float32 + // Z Magnetic field + Zmag float32 + // Absolute pressure + AbsPressure float32 + // Differential pressure (airspeed) + DiffPressure float32 + // Altitude calculated from pressure + PressureAlt float32 + // Temperature + Temperature float32 + // Bitmap for fields that have updated since last message + FieldsUpdated HIL_SENSOR_UPDATED_FLAGS `mavenum:"uint32"` + // Sensor ID (zero indexed). Used for multiple sensor inputs + Id uint8 `mavext:"true"` +} + +// GetID implements the msg.Message interface. +func (*MessageHilSensor) GetID() uint32 { + return 107 +} diff --git a/pkg/dialects/avssuas/msg_hil_state.go b/pkg/dialects/avssuas/msg_hil_state.go new file mode 100644 index 000000000..68d5b1eb2 --- /dev/null +++ b/pkg/dialects/avssuas/msg_hil_state.go @@ -0,0 +1,44 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package avssuas + +// Sent from simulation to autopilot. This packet is useful for high throughput applications such as hardware in the loop simulations. +type MessageHilState struct { + // Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. + TimeUsec uint64 + // Roll angle + Roll float32 + // Pitch angle + Pitch float32 + // Yaw angle + Yaw float32 + // Body frame roll / phi angular speed + Rollspeed float32 + // Body frame pitch / theta angular speed + Pitchspeed float32 + // Body frame yaw / psi angular speed + Yawspeed float32 + // Latitude + Lat int32 + // Longitude + Lon int32 + // Altitude + Alt int32 + // Ground X Speed (Latitude) + Vx int16 + // Ground Y Speed (Longitude) + Vy int16 + // Ground Z Speed (Altitude) + Vz int16 + // X acceleration + Xacc int16 + // Y acceleration + Yacc int16 + // Z acceleration + Zacc int16 +} + +// GetID implements the msg.Message interface. +func (*MessageHilState) GetID() uint32 { + return 90 +} diff --git a/pkg/dialects/avssuas/msg_hil_state_quaternion.go b/pkg/dialects/avssuas/msg_hil_state_quaternion.go new file mode 100644 index 000000000..b1b58bc3d --- /dev/null +++ b/pkg/dialects/avssuas/msg_hil_state_quaternion.go @@ -0,0 +1,44 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package avssuas + +// Sent from simulation to autopilot, avoids in contrast to HIL_STATE singularities. This packet is useful for high throughput applications such as hardware in the loop simulations. +type MessageHilStateQuaternion struct { + // Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. + TimeUsec uint64 + // Vehicle attitude expressed as normalized quaternion in w, x, y, z order (with 1 0 0 0 being the null-rotation) + AttitudeQuaternion [4]float32 + // Body frame roll / phi angular speed + Rollspeed float32 + // Body frame pitch / theta angular speed + Pitchspeed float32 + // Body frame yaw / psi angular speed + Yawspeed float32 + // Latitude + Lat int32 + // Longitude + Lon int32 + // Altitude + Alt int32 + // Ground X Speed (Latitude) + Vx int16 + // Ground Y Speed (Longitude) + Vy int16 + // Ground Z Speed (Altitude) + Vz int16 + // Indicated airspeed + IndAirspeed uint16 + // True airspeed + TrueAirspeed uint16 + // X acceleration + Xacc int16 + // Y acceleration + Yacc int16 + // Z acceleration + Zacc int16 +} + +// GetID implements the msg.Message interface. +func (*MessageHilStateQuaternion) GetID() uint32 { + return 115 +} diff --git a/pkg/dialects/avssuas/msg_home_position.go b/pkg/dialects/avssuas/msg_home_position.go new file mode 100644 index 000000000..ca78e0fa9 --- /dev/null +++ b/pkg/dialects/avssuas/msg_home_position.go @@ -0,0 +1,34 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package avssuas + +// This message can be requested by sending the MAV_CMD_GET_HOME_POSITION command. The position the system will return to and land on. The position is set automatically by the system during the takeoff in case it was not explicitly set by the operator before or after. The global and local positions encode the position in the respective coordinate frames, while the q parameter encodes the orientation of the surface. Under normal conditions it describes the heading and terrain slope, which can be used by the aircraft to adjust the approach. The approach 3D vector describes the point to which the system should fly in normal flight mode and then perform a landing sequence along the vector. +type MessageHomePosition struct { + // Latitude (WGS84) + Latitude int32 + // Longitude (WGS84) + Longitude int32 + // Altitude (MSL). Positive for up. + Altitude int32 + // Local X position of this position in the local coordinate frame + X float32 + // Local Y position of this position in the local coordinate frame + Y float32 + // Local Z position of this position in the local coordinate frame + Z float32 + // World to surface normal and heading transformation of the takeoff position. Used to indicate the heading and slope of the ground + Q [4]float32 + // Local X position of the end of the approach vector. Multicopters should set this position based on their takeoff path. Grass-landing fixed wing aircraft should set it the same way as multicopters. Runway-landing fixed wing aircraft should set it to the opposite direction of the takeoff, assuming the takeoff happened from the threshold / touchdown zone. + ApproachX float32 + // Local Y position of the end of the approach vector. Multicopters should set this position based on their takeoff path. Grass-landing fixed wing aircraft should set it the same way as multicopters. Runway-landing fixed wing aircraft should set it to the opposite direction of the takeoff, assuming the takeoff happened from the threshold / touchdown zone. + ApproachY float32 + // Local Z position of the end of the approach vector. Multicopters should set this position based on their takeoff path. Grass-landing fixed wing aircraft should set it the same way as multicopters. Runway-landing fixed wing aircraft should set it to the opposite direction of the takeoff, assuming the takeoff happened from the threshold / touchdown zone. + ApproachZ float32 + // Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. + TimeUsec uint64 `mavext:"true"` +} + +// GetID implements the msg.Message interface. +func (*MessageHomePosition) GetID() uint32 { + return 242 +} diff --git a/pkg/dialects/avssuas/msg_hygrometer_sensor.go b/pkg/dialects/avssuas/msg_hygrometer_sensor.go new file mode 100644 index 000000000..ae4b71cb9 --- /dev/null +++ b/pkg/dialects/avssuas/msg_hygrometer_sensor.go @@ -0,0 +1,18 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package avssuas + +// Temperature and humidity from hygrometer. +type MessageHygrometerSensor struct { + // Hygrometer ID + Id uint8 + // Temperature + Temperature int16 + // Humidity + Humidity uint16 +} + +// GetID implements the msg.Message interface. +func (*MessageHygrometerSensor) GetID() uint32 { + return 12920 +} diff --git a/pkg/dialects/avssuas/msg_isbd_link_status.go b/pkg/dialects/avssuas/msg_isbd_link_status.go new file mode 100644 index 000000000..660147b46 --- /dev/null +++ b/pkg/dialects/avssuas/msg_isbd_link_status.go @@ -0,0 +1,28 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package avssuas + +// Status of the Iridium SBD link. +type MessageIsbdLinkStatus struct { + // Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. + Timestamp uint64 + // Timestamp of the last successful sbd session. The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. + LastHeartbeat uint64 + // Number of failed SBD sessions. + FailedSessions uint16 + // Number of successful SBD sessions. + SuccessfulSessions uint16 + // Signal quality equal to the number of bars displayed on the ISU signal strength indicator. Range is 0 to 5, where 0 indicates no signal and 5 indicates maximum signal strength. + SignalQuality uint8 + // 1: Ring call pending, 0: No call pending. + RingPending uint8 + // 1: Transmission session pending, 0: No transmission session pending. + TxSessionPending uint8 + // 1: Receiving session pending, 0: No receiving session pending. + RxSessionPending uint8 +} + +// GetID implements the msg.Message interface. +func (*MessageIsbdLinkStatus) GetID() uint32 { + return 335 +} diff --git a/pkg/dialects/avssuas/msg_landing_target.go b/pkg/dialects/avssuas/msg_landing_target.go new file mode 100644 index 000000000..b746751dc --- /dev/null +++ b/pkg/dialects/avssuas/msg_landing_target.go @@ -0,0 +1,40 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package avssuas + +// The location of a landing target. See: https://mavlink.io/en/services/landing_target.html +type MessageLandingTarget struct { + // Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. + TimeUsec uint64 + // The ID of the target if multiple targets are present + TargetNum uint8 + // Coordinate frame used for following fields. + Frame MAV_FRAME `mavenum:"uint8"` + // X-axis angular offset of the target from the center of the image + AngleX float32 + // Y-axis angular offset of the target from the center of the image + AngleY float32 + // Distance to the target from the vehicle + Distance float32 + // Size of target along x-axis + SizeX float32 + // Size of target along y-axis + SizeY float32 + // X Position of the landing target in MAV_FRAME + X float32 `mavext:"true"` + // Y Position of the landing target in MAV_FRAME + Y float32 `mavext:"true"` + // Z Position of the landing target in MAV_FRAME + Z float32 `mavext:"true"` + // Quaternion of landing target orientation (w, x, y, z order, zero-rotation is 1, 0, 0, 0) + Q [4]float32 `mavext:"true"` + // Type of landing target + Type LANDING_TARGET_TYPE `mavenum:"uint8" mavext:"true"` + // Boolean indicating whether the position fields (x, y, z, q, type) contain valid target position information (valid: 1, invalid: 0). Default is 0 (invalid). + PositionValid uint8 `mavext:"true"` +} + +// GetID implements the msg.Message interface. +func (*MessageLandingTarget) GetID() uint32 { + return 149 +} diff --git a/pkg/dialects/avssuas/msg_link_node_status.go b/pkg/dialects/avssuas/msg_link_node_status.go new file mode 100644 index 000000000..86b67d114 --- /dev/null +++ b/pkg/dialects/avssuas/msg_link_node_status.go @@ -0,0 +1,34 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package avssuas + +// Status generated in each node in the communication chain and injected into MAVLink stream. +type MessageLinkNodeStatus struct { + // Timestamp (time since system boot). + Timestamp uint64 + // Remaining free transmit buffer space + TxBuf uint8 + // Remaining free receive buffer space + RxBuf uint8 + // Transmit rate + TxRate uint32 + // Receive rate + RxRate uint32 + // Number of bytes that could not be parsed correctly. + RxParseErr uint16 + // Transmit buffer overflows. This number wraps around as it reaches UINT16_MAX + TxOverflows uint16 + // Receive buffer overflows. This number wraps around as it reaches UINT16_MAX + RxOverflows uint16 + // Messages sent + MessagesSent uint32 + // Messages received (estimated from counting seq) + MessagesReceived uint32 + // Messages lost (estimated from counting seq) + MessagesLost uint32 +} + +// GetID implements the msg.Message interface. +func (*MessageLinkNodeStatus) GetID() uint32 { + return 8 +} diff --git a/pkg/dialects/avssuas/msg_local_position_ned.go b/pkg/dialects/avssuas/msg_local_position_ned.go new file mode 100644 index 000000000..d4703bd8e --- /dev/null +++ b/pkg/dialects/avssuas/msg_local_position_ned.go @@ -0,0 +1,26 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package avssuas + +// The filtered local position (e.g. fused computer vision and accelerometers). Coordinate frame is right-handed, Z-axis down (aeronautical frame, NED / north-east-down convention) +type MessageLocalPositionNed struct { + // Timestamp (time since system boot). + TimeBootMs uint32 + // X Position + X float32 + // Y Position + Y float32 + // Z Position + Z float32 + // X Speed + Vx float32 + // Y Speed + Vy float32 + // Z Speed + Vz float32 +} + +// GetID implements the msg.Message interface. +func (*MessageLocalPositionNed) GetID() uint32 { + return 32 +} diff --git a/pkg/dialects/avssuas/msg_local_position_ned_cov.go b/pkg/dialects/avssuas/msg_local_position_ned_cov.go new file mode 100644 index 000000000..701073916 --- /dev/null +++ b/pkg/dialects/avssuas/msg_local_position_ned_cov.go @@ -0,0 +1,36 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package avssuas + +// The filtered local position (e.g. fused computer vision and accelerometers). Coordinate frame is right-handed, Z-axis down (aeronautical frame, NED / north-east-down convention) +type MessageLocalPositionNedCov struct { + // Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. + TimeUsec uint64 + // Class id of the estimator this estimate originated from. + EstimatorType MAV_ESTIMATOR_TYPE `mavenum:"uint8"` + // X Position + X float32 + // Y Position + Y float32 + // Z Position + Z float32 + // X Speed + Vx float32 + // Y Speed + Vy float32 + // Z Speed + Vz float32 + // X Acceleration + Ax float32 + // Y Acceleration + Ay float32 + // Z Acceleration + Az float32 + // Row-major representation of position, velocity and acceleration 9x9 cross-covariance matrix upper right triangle (states: x, y, z, vx, vy, vz, ax, ay, az; first nine entries are the first ROW, next eight entries are the second row, etc.). If unknown, assign NaN value to first element in the array. + Covariance [45]float32 +} + +// GetID implements the msg.Message interface. +func (*MessageLocalPositionNedCov) GetID() uint32 { + return 64 +} diff --git a/pkg/dialects/avssuas/msg_local_position_ned_system_global_offset.go b/pkg/dialects/avssuas/msg_local_position_ned_system_global_offset.go new file mode 100644 index 000000000..93e488b31 --- /dev/null +++ b/pkg/dialects/avssuas/msg_local_position_ned_system_global_offset.go @@ -0,0 +1,26 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package avssuas + +// The offset in X, Y, Z and yaw between the LOCAL_POSITION_NED messages of MAV X and the global coordinate frame in NED coordinates. Coordinate frame is right-handed, Z-axis down (aeronautical frame, NED / north-east-down convention) +type MessageLocalPositionNedSystemGlobalOffset struct { + // Timestamp (time since system boot). + TimeBootMs uint32 + // X Position + X float32 + // Y Position + Y float32 + // Z Position + Z float32 + // Roll + Roll float32 + // Pitch + Pitch float32 + // Yaw + Yaw float32 +} + +// GetID implements the msg.Message interface. +func (*MessageLocalPositionNedSystemGlobalOffset) GetID() uint32 { + return 89 +} diff --git a/pkg/dialects/avssuas/msg_log_data.go b/pkg/dialects/avssuas/msg_log_data.go new file mode 100644 index 000000000..b07c11100 --- /dev/null +++ b/pkg/dialects/avssuas/msg_log_data.go @@ -0,0 +1,20 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package avssuas + +// Reply to LOG_REQUEST_DATA +type MessageLogData struct { + // Log id (from LOG_ENTRY reply) + Id uint16 + // Offset into the log + Ofs uint32 + // Number of bytes (zero for end of log) + Count uint8 + // log data + Data [90]uint8 +} + +// GetID implements the msg.Message interface. +func (*MessageLogData) GetID() uint32 { + return 120 +} diff --git a/pkg/dialects/avssuas/msg_log_entry.go b/pkg/dialects/avssuas/msg_log_entry.go new file mode 100644 index 000000000..b7837c517 --- /dev/null +++ b/pkg/dialects/avssuas/msg_log_entry.go @@ -0,0 +1,22 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package avssuas + +// Reply to LOG_REQUEST_LIST +type MessageLogEntry struct { + // Log id + Id uint16 + // Total number of logs + NumLogs uint16 + // High log number + LastLogNum uint16 + // UTC timestamp of log since 1970, or 0 if not available + TimeUtc uint32 + // Size of the log (may be approximate) + Size uint32 +} + +// GetID implements the msg.Message interface. +func (*MessageLogEntry) GetID() uint32 { + return 118 +} diff --git a/pkg/dialects/avssuas/msg_log_erase.go b/pkg/dialects/avssuas/msg_log_erase.go new file mode 100644 index 000000000..4565ca699 --- /dev/null +++ b/pkg/dialects/avssuas/msg_log_erase.go @@ -0,0 +1,16 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package avssuas + +// Erase all logs +type MessageLogErase struct { + // System ID + TargetSystem uint8 + // Component ID + TargetComponent uint8 +} + +// GetID implements the msg.Message interface. +func (*MessageLogErase) GetID() uint32 { + return 121 +} diff --git a/pkg/dialects/avssuas/msg_log_request_data.go b/pkg/dialects/avssuas/msg_log_request_data.go new file mode 100644 index 000000000..803088fff --- /dev/null +++ b/pkg/dialects/avssuas/msg_log_request_data.go @@ -0,0 +1,22 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package avssuas + +// Request a chunk of a log +type MessageLogRequestData struct { + // System ID + TargetSystem uint8 + // Component ID + TargetComponent uint8 + // Log id (from LOG_ENTRY reply) + Id uint16 + // Offset into the log + Ofs uint32 + // Number of bytes + Count uint32 +} + +// GetID implements the msg.Message interface. +func (*MessageLogRequestData) GetID() uint32 { + return 119 +} diff --git a/pkg/dialects/avssuas/msg_log_request_end.go b/pkg/dialects/avssuas/msg_log_request_end.go new file mode 100644 index 000000000..2fcdafd13 --- /dev/null +++ b/pkg/dialects/avssuas/msg_log_request_end.go @@ -0,0 +1,16 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package avssuas + +// Stop log transfer and resume normal logging +type MessageLogRequestEnd struct { + // System ID + TargetSystem uint8 + // Component ID + TargetComponent uint8 +} + +// GetID implements the msg.Message interface. +func (*MessageLogRequestEnd) GetID() uint32 { + return 122 +} diff --git a/pkg/dialects/avssuas/msg_log_request_list.go b/pkg/dialects/avssuas/msg_log_request_list.go new file mode 100644 index 000000000..350327a85 --- /dev/null +++ b/pkg/dialects/avssuas/msg_log_request_list.go @@ -0,0 +1,20 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package avssuas + +// Request a list of available logs. On some systems calling this may stop on-board logging until LOG_REQUEST_END is called. If there are no log files available this request shall be answered with one LOG_ENTRY message with id = 0 and num_logs = 0. +type MessageLogRequestList struct { + // System ID + TargetSystem uint8 + // Component ID + TargetComponent uint8 + // First log id (0 for first available) + Start uint16 + // Last log id (0xffff for last available) + End uint16 +} + +// GetID implements the msg.Message interface. +func (*MessageLogRequestList) GetID() uint32 { + return 117 +} diff --git a/pkg/dialects/avssuas/msg_logging_ack.go b/pkg/dialects/avssuas/msg_logging_ack.go new file mode 100644 index 000000000..aaff6c5a6 --- /dev/null +++ b/pkg/dialects/avssuas/msg_logging_ack.go @@ -0,0 +1,18 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package avssuas + +// An ack for a LOGGING_DATA_ACKED message +type MessageLoggingAck struct { + // system ID of the target + TargetSystem uint8 + // component ID of the target + TargetComponent uint8 + // sequence number (must match the one in LOGGING_DATA_ACKED) + Sequence uint16 +} + +// GetID implements the msg.Message interface. +func (*MessageLoggingAck) GetID() uint32 { + return 268 +} diff --git a/pkg/dialects/avssuas/msg_logging_data.go b/pkg/dialects/avssuas/msg_logging_data.go new file mode 100644 index 000000000..5cfab2993 --- /dev/null +++ b/pkg/dialects/avssuas/msg_logging_data.go @@ -0,0 +1,24 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package avssuas + +// A message containing logged data (see also MAV_CMD_LOGGING_START) +type MessageLoggingData struct { + // system ID of the target + TargetSystem uint8 + // component ID of the target + TargetComponent uint8 + // sequence number (can wrap) + Sequence uint16 + // data length + Length uint8 + // offset into data where first message starts. This can be used for recovery, when a previous message got lost (set to UINT8_MAX if no start exists). + FirstMessageOffset uint8 + // logged data + Data [249]uint8 +} + +// GetID implements the msg.Message interface. +func (*MessageLoggingData) GetID() uint32 { + return 266 +} diff --git a/pkg/dialects/avssuas/msg_logging_data_acked.go b/pkg/dialects/avssuas/msg_logging_data_acked.go new file mode 100644 index 000000000..9902841e5 --- /dev/null +++ b/pkg/dialects/avssuas/msg_logging_data_acked.go @@ -0,0 +1,24 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package avssuas + +// A message containing logged data which requires a LOGGING_ACK to be sent back +type MessageLoggingDataAcked struct { + // system ID of the target + TargetSystem uint8 + // component ID of the target + TargetComponent uint8 + // sequence number (can wrap) + Sequence uint16 + // data length + Length uint8 + // offset into data where first message starts. This can be used for recovery, when a previous message got lost (set to UINT8_MAX if no start exists). + FirstMessageOffset uint8 + // logged data + Data [249]uint8 +} + +// GetID implements the msg.Message interface. +func (*MessageLoggingDataAcked) GetID() uint32 { + return 267 +} diff --git a/pkg/dialects/avssuas/msg_mag_cal_report.go b/pkg/dialects/avssuas/msg_mag_cal_report.go new file mode 100644 index 000000000..21c405b8d --- /dev/null +++ b/pkg/dialects/avssuas/msg_mag_cal_report.go @@ -0,0 +1,48 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package avssuas + +// Reports results of completed compass calibration. Sent until MAG_CAL_ACK received. +type MessageMagCalReport struct { + // Compass being calibrated. + CompassId uint8 + // Bitmask of compasses being calibrated. + CalMask uint8 + // Calibration Status. + CalStatus MAG_CAL_STATUS `mavenum:"uint8"` + // 0=requires a MAV_CMD_DO_ACCEPT_MAG_CAL, 1=saved to parameters. + Autosaved uint8 + // RMS milligauss residuals. + Fitness float32 + // X offset. + OfsX float32 + // Y offset. + OfsY float32 + // Z offset. + OfsZ float32 + // X diagonal (matrix 11). + DiagX float32 + // Y diagonal (matrix 22). + DiagY float32 + // Z diagonal (matrix 33). + DiagZ float32 + // X off-diagonal (matrix 12 and 21). + OffdiagX float32 + // Y off-diagonal (matrix 13 and 31). + OffdiagY float32 + // Z off-diagonal (matrix 32 and 23). + OffdiagZ float32 + // Confidence in orientation (higher is better). + OrientationConfidence float32 `mavext:"true"` + // orientation before calibration. + OldOrientation MAV_SENSOR_ORIENTATION `mavenum:"uint8" mavext:"true"` + // orientation after calibration. + NewOrientation MAV_SENSOR_ORIENTATION `mavenum:"uint8" mavext:"true"` + // field radius correction factor + ScaleFactor float32 `mavext:"true"` +} + +// GetID implements the msg.Message interface. +func (*MessageMagCalReport) GetID() uint32 { + return 192 +} diff --git a/pkg/dialects/avssuas/msg_manual_control.go b/pkg/dialects/avssuas/msg_manual_control.go new file mode 100644 index 000000000..83a44ca6b --- /dev/null +++ b/pkg/dialects/avssuas/msg_manual_control.go @@ -0,0 +1,32 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package avssuas + +// This message provides an API for manually controlling the vehicle using standard joystick axes nomenclature, along with a joystick-like input device. Unused axes can be disabled and buttons states are transmitted as individual on/off bits of a bitmask +type MessageManualControl struct { + // The system to be controlled. + Target uint8 + // X-axis, normalized to the range [-1000,1000]. A value of INT16_MAX indicates that this axis is invalid. Generally corresponds to forward(1000)-backward(-1000) movement on a joystick and the pitch of a vehicle. + X int16 + // Y-axis, normalized to the range [-1000,1000]. A value of INT16_MAX indicates that this axis is invalid. Generally corresponds to left(-1000)-right(1000) movement on a joystick and the roll of a vehicle. + Y int16 + // Z-axis, normalized to the range [-1000,1000]. A value of INT16_MAX indicates that this axis is invalid. Generally corresponds to a separate slider movement with maximum being 1000 and minimum being -1000 on a joystick and the thrust of a vehicle. Positive values are positive thrust, negative values are negative thrust. + Z int16 + // R-axis, normalized to the range [-1000,1000]. A value of INT16_MAX indicates that this axis is invalid. Generally corresponds to a twisting of the joystick, with counter-clockwise being 1000 and clockwise being -1000, and the yaw of a vehicle. + R int16 + // A bitfield corresponding to the joystick buttons' 0-15 current state, 1 for pressed, 0 for released. The lowest bit corresponds to Button 1. + Buttons uint16 + // A bitfield corresponding to the joystick buttons' 16-31 current state, 1 for pressed, 0 for released. The lowest bit corresponds to Button 16. + Buttons2 uint16 `mavext:"true"` + // Set bits to 1 to indicate which of the following extension fields contain valid data: bit 0: pitch, bit 1: roll. + EnabledExtensions uint8 `mavext:"true"` + // Pitch-only-axis, normalized to the range [-1000,1000]. Generally corresponds to pitch on vehicles with additional degrees of freedom. Valid if bit 0 of enabled_extensions field is set. Set to 0 if invalid. + S int16 `mavext:"true"` + // Roll-only-axis, normalized to the range [-1000,1000]. Generally corresponds to roll on vehicles with additional degrees of freedom. Valid if bit 1 of enabled_extensions field is set. Set to 0 if invalid. + T int16 `mavext:"true"` +} + +// GetID implements the msg.Message interface. +func (*MessageManualControl) GetID() uint32 { + return 69 +} diff --git a/pkg/dialects/avssuas/msg_manual_setpoint.go b/pkg/dialects/avssuas/msg_manual_setpoint.go new file mode 100644 index 000000000..0a9979028 --- /dev/null +++ b/pkg/dialects/avssuas/msg_manual_setpoint.go @@ -0,0 +1,26 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package avssuas + +// Setpoint in roll, pitch, yaw and thrust from the operator +type MessageManualSetpoint struct { + // Timestamp (time since system boot). + TimeBootMs uint32 + // Desired roll rate + Roll float32 + // Desired pitch rate + Pitch float32 + // Desired yaw rate + Yaw float32 + // Collective thrust, normalized to 0 .. 1 + Thrust float32 + // Flight mode switch position, 0.. 255 + ModeSwitch uint8 + // Override mode switch position, 0.. 255 + ManualOverrideSwitch uint8 +} + +// GetID implements the msg.Message interface. +func (*MessageManualSetpoint) GetID() uint32 { + return 81 +} diff --git a/pkg/dialects/avssuas/msg_memory_vect.go b/pkg/dialects/avssuas/msg_memory_vect.go new file mode 100644 index 000000000..35237e6bc --- /dev/null +++ b/pkg/dialects/avssuas/msg_memory_vect.go @@ -0,0 +1,20 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package avssuas + +// Send raw controller memory. The use of this message is discouraged for normal packets, but a quite efficient way for testing new messages and getting experimental debug output. +type MessageMemoryVect struct { + // Starting address of the debug variables + Address uint16 + // Version code of the type variable. 0=unknown, type ignored and assumed int16_t. 1=as below + Ver uint8 + // Type code of the memory variables. for ver = 1: 0=16 x int16_t, 1=16 x uint16_t, 2=16 x Q15, 3=16 x 1Q14 + Type uint8 + // Memory contents at specified address + Value [32]int8 +} + +// GetID implements the msg.Message interface. +func (*MessageMemoryVect) GetID() uint32 { + return 249 +} diff --git a/pkg/dialects/avssuas/msg_message_interval.go b/pkg/dialects/avssuas/msg_message_interval.go new file mode 100644 index 000000000..84f4a5d83 --- /dev/null +++ b/pkg/dialects/avssuas/msg_message_interval.go @@ -0,0 +1,16 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package avssuas + +// The interval between messages for a particular MAVLink message ID. This message is the response to the MAV_CMD_GET_MESSAGE_INTERVAL command. This interface replaces DATA_STREAM. +type MessageMessageInterval struct { + // The ID of the requested MAVLink message. v1.0 is limited to 254 messages. + MessageId uint16 + // The interval between two messages. A value of -1 indicates this stream is disabled, 0 indicates it is not available, > 0 indicates the interval at which it is sent. + IntervalUs int32 +} + +// GetID implements the msg.Message interface. +func (*MessageMessageInterval) GetID() uint32 { + return 244 +} diff --git a/pkg/dialects/avssuas/msg_mission_ack.go b/pkg/dialects/avssuas/msg_mission_ack.go new file mode 100644 index 000000000..d0a4aa601 --- /dev/null +++ b/pkg/dialects/avssuas/msg_mission_ack.go @@ -0,0 +1,20 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package avssuas + +// Acknowledgment message during waypoint handling. The type field states if this message is a positive ack (type=0) or if an error happened (type=non-zero). +type MessageMissionAck struct { + // System ID + TargetSystem uint8 + // Component ID + TargetComponent uint8 + // Mission result. + Type MAV_MISSION_RESULT `mavenum:"uint8"` + // Mission type. + MissionType MAV_MISSION_TYPE `mavenum:"uint8" mavext:"true"` +} + +// GetID implements the msg.Message interface. +func (*MessageMissionAck) GetID() uint32 { + return 47 +} diff --git a/pkg/dialects/avssuas/msg_mission_clear_all.go b/pkg/dialects/avssuas/msg_mission_clear_all.go new file mode 100644 index 000000000..8855ad9b3 --- /dev/null +++ b/pkg/dialects/avssuas/msg_mission_clear_all.go @@ -0,0 +1,18 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package avssuas + +// Delete all mission items at once. +type MessageMissionClearAll struct { + // System ID + TargetSystem uint8 + // Component ID + TargetComponent uint8 + // Mission type. + MissionType MAV_MISSION_TYPE `mavenum:"uint8" mavext:"true"` +} + +// GetID implements the msg.Message interface. +func (*MessageMissionClearAll) GetID() uint32 { + return 45 +} diff --git a/pkg/dialects/avssuas/msg_mission_count.go b/pkg/dialects/avssuas/msg_mission_count.go new file mode 100644 index 000000000..49f06b17e --- /dev/null +++ b/pkg/dialects/avssuas/msg_mission_count.go @@ -0,0 +1,20 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package avssuas + +// This message is emitted as response to MISSION_REQUEST_LIST by the MAV and to initiate a write transaction. The GCS can then request the individual mission item based on the knowledge of the total number of waypoints. +type MessageMissionCount struct { + // System ID + TargetSystem uint8 + // Component ID + TargetComponent uint8 + // Number of mission items in the sequence + Count uint16 + // Mission type. + MissionType MAV_MISSION_TYPE `mavenum:"uint8" mavext:"true"` +} + +// GetID implements the msg.Message interface. +func (*MessageMissionCount) GetID() uint32 { + return 44 +} diff --git a/pkg/dialects/avssuas/msg_mission_current.go b/pkg/dialects/avssuas/msg_mission_current.go new file mode 100644 index 000000000..5bb961315 --- /dev/null +++ b/pkg/dialects/avssuas/msg_mission_current.go @@ -0,0 +1,14 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package avssuas + +// Message that announces the sequence number of the current active mission item. The MAV will fly towards this mission item. +type MessageMissionCurrent struct { + // Sequence + Seq uint16 +} + +// GetID implements the msg.Message interface. +func (*MessageMissionCurrent) GetID() uint32 { + return 42 +} diff --git a/pkg/dialects/avssuas/msg_mission_item.go b/pkg/dialects/avssuas/msg_mission_item.go new file mode 100644 index 000000000..da6b5c402 --- /dev/null +++ b/pkg/dialects/avssuas/msg_mission_item.go @@ -0,0 +1,43 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package avssuas + +// Message encoding a mission item. This message is emitted to announce +// the presence of a mission item and to set a mission item on the system. The mission item can be either in x, y, z meters (type: LOCAL) or x:lat, y:lon, z:altitude. Local frame is Z-down, right handed (NED), global frame is Z-up, right handed (ENU). NaN may be used to indicate an optional/default value (e.g. to use the system's current latitude or yaw rather than a specific value). See also https://mavlink.io/en/services/mission.html. +type MessageMissionItem struct { + // System ID + TargetSystem uint8 + // Component ID + TargetComponent uint8 + // Sequence + Seq uint16 + // The coordinate system of the waypoint. + Frame MAV_FRAME `mavenum:"uint8"` + // The scheduled action for the waypoint. + Command MAV_CMD `mavenum:"uint16"` + // false:0, true:1 + Current uint8 + // Autocontinue to next waypoint + Autocontinue uint8 + // PARAM1, see MAV_CMD enum + Param1 float32 + // PARAM2, see MAV_CMD enum + Param2 float32 + // PARAM3, see MAV_CMD enum + Param3 float32 + // PARAM4, see MAV_CMD enum + Param4 float32 + // PARAM5 / local: X coordinate, global: latitude + X float32 + // PARAM6 / local: Y coordinate, global: longitude + Y float32 + // PARAM7 / local: Z coordinate, global: altitude (relative or absolute, depending on frame). + Z float32 + // Mission type. + MissionType MAV_MISSION_TYPE `mavenum:"uint8" mavext:"true"` +} + +// GetID implements the msg.Message interface. +func (*MessageMissionItem) GetID() uint32 { + return 39 +} diff --git a/pkg/dialects/avssuas/msg_mission_item_int.go b/pkg/dialects/avssuas/msg_mission_item_int.go new file mode 100644 index 000000000..c28e02006 --- /dev/null +++ b/pkg/dialects/avssuas/msg_mission_item_int.go @@ -0,0 +1,43 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package avssuas + +// Message encoding a mission item. This message is emitted to announce +// the presence of a mission item and to set a mission item on the system. The mission item can be either in x, y, z meters (type: LOCAL) or x:lat, y:lon, z:altitude. Local frame is Z-down, right handed (NED), global frame is Z-up, right handed (ENU). NaN or INT32_MAX may be used in float/integer params (respectively) to indicate optional/default values (e.g. to use the component's current latitude, yaw rather than a specific value). See also https://mavlink.io/en/services/mission.html. +type MessageMissionItemInt struct { + // System ID + TargetSystem uint8 + // Component ID + TargetComponent uint8 + // Waypoint ID (sequence number). Starts at zero. Increases monotonically for each waypoint, no gaps in the sequence (0,1,2,3,4). + Seq uint16 + // The coordinate system of the waypoint. + Frame MAV_FRAME `mavenum:"uint8"` + // The scheduled action for the waypoint. + Command MAV_CMD `mavenum:"uint16"` + // false:0, true:1 + Current uint8 + // Autocontinue to next waypoint + Autocontinue uint8 + // PARAM1, see MAV_CMD enum + Param1 float32 + // PARAM2, see MAV_CMD enum + Param2 float32 + // PARAM3, see MAV_CMD enum + Param3 float32 + // PARAM4, see MAV_CMD enum + Param4 float32 + // PARAM5 / local: x position in meters * 1e4, global: latitude in degrees * 10^7 + X int32 + // PARAM6 / y position: local: x position in meters * 1e4, global: longitude in degrees *10^7 + Y int32 + // PARAM7 / z position: global: altitude in meters (relative or absolute, depending on frame. + Z float32 + // Mission type. + MissionType MAV_MISSION_TYPE `mavenum:"uint8" mavext:"true"` +} + +// GetID implements the msg.Message interface. +func (*MessageMissionItemInt) GetID() uint32 { + return 73 +} diff --git a/pkg/dialects/avssuas/msg_mission_item_reached.go b/pkg/dialects/avssuas/msg_mission_item_reached.go new file mode 100644 index 000000000..caa597883 --- /dev/null +++ b/pkg/dialects/avssuas/msg_mission_item_reached.go @@ -0,0 +1,14 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package avssuas + +// A certain mission item has been reached. The system will either hold this position (or circle on the orbit) or (if the autocontinue on the WP was set) continue to the next waypoint. +type MessageMissionItemReached struct { + // Sequence + Seq uint16 +} + +// GetID implements the msg.Message interface. +func (*MessageMissionItemReached) GetID() uint32 { + return 46 +} diff --git a/pkg/dialects/avssuas/msg_mission_request.go b/pkg/dialects/avssuas/msg_mission_request.go new file mode 100644 index 000000000..cb8ff3350 --- /dev/null +++ b/pkg/dialects/avssuas/msg_mission_request.go @@ -0,0 +1,20 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package avssuas + +// Request the information of the mission item with the sequence number seq. The response of the system to this message should be a MISSION_ITEM message. https://mavlink.io/en/services/mission.html +type MessageMissionRequest struct { + // System ID + TargetSystem uint8 + // Component ID + TargetComponent uint8 + // Sequence + Seq uint16 + // Mission type. + MissionType MAV_MISSION_TYPE `mavenum:"uint8" mavext:"true"` +} + +// GetID implements the msg.Message interface. +func (*MessageMissionRequest) GetID() uint32 { + return 40 +} diff --git a/pkg/dialects/avssuas/msg_mission_request_int.go b/pkg/dialects/avssuas/msg_mission_request_int.go new file mode 100644 index 000000000..c33baf2aa --- /dev/null +++ b/pkg/dialects/avssuas/msg_mission_request_int.go @@ -0,0 +1,20 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package avssuas + +// Request the information of the mission item with the sequence number seq. The response of the system to this message should be a MISSION_ITEM_INT message. https://mavlink.io/en/services/mission.html +type MessageMissionRequestInt struct { + // System ID + TargetSystem uint8 + // Component ID + TargetComponent uint8 + // Sequence + Seq uint16 + // Mission type. + MissionType MAV_MISSION_TYPE `mavenum:"uint8" mavext:"true"` +} + +// GetID implements the msg.Message interface. +func (*MessageMissionRequestInt) GetID() uint32 { + return 51 +} diff --git a/pkg/dialects/avssuas/msg_mission_request_list.go b/pkg/dialects/avssuas/msg_mission_request_list.go new file mode 100644 index 000000000..508d19392 --- /dev/null +++ b/pkg/dialects/avssuas/msg_mission_request_list.go @@ -0,0 +1,18 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package avssuas + +// Request the overall list of mission items from the system/component. +type MessageMissionRequestList struct { + // System ID + TargetSystem uint8 + // Component ID + TargetComponent uint8 + // Mission type. + MissionType MAV_MISSION_TYPE `mavenum:"uint8" mavext:"true"` +} + +// GetID implements the msg.Message interface. +func (*MessageMissionRequestList) GetID() uint32 { + return 43 +} diff --git a/pkg/dialects/avssuas/msg_mission_request_partial_list.go b/pkg/dialects/avssuas/msg_mission_request_partial_list.go new file mode 100644 index 000000000..05765d5a2 --- /dev/null +++ b/pkg/dialects/avssuas/msg_mission_request_partial_list.go @@ -0,0 +1,22 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package avssuas + +// Request a partial list of mission items from the system/component. https://mavlink.io/en/services/mission.html. If start and end index are the same, just send one waypoint. +type MessageMissionRequestPartialList struct { + // System ID + TargetSystem uint8 + // Component ID + TargetComponent uint8 + // Start index + StartIndex int16 + // End index, -1 by default (-1: send list to end). Else a valid index of the list + EndIndex int16 + // Mission type. + MissionType MAV_MISSION_TYPE `mavenum:"uint8" mavext:"true"` +} + +// GetID implements the msg.Message interface. +func (*MessageMissionRequestPartialList) GetID() uint32 { + return 37 +} diff --git a/pkg/dialects/avssuas/msg_mission_set_current.go b/pkg/dialects/avssuas/msg_mission_set_current.go new file mode 100644 index 000000000..6fa5a821d --- /dev/null +++ b/pkg/dialects/avssuas/msg_mission_set_current.go @@ -0,0 +1,18 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package avssuas + +// Set the mission item with sequence number seq as current item. This means that the MAV will continue to this mission item on the shortest path (not following the mission items in-between). +type MessageMissionSetCurrent struct { + // System ID + TargetSystem uint8 + // Component ID + TargetComponent uint8 + // Sequence + Seq uint16 +} + +// GetID implements the msg.Message interface. +func (*MessageMissionSetCurrent) GetID() uint32 { + return 41 +} diff --git a/pkg/dialects/avssuas/msg_mission_write_partial_list.go b/pkg/dialects/avssuas/msg_mission_write_partial_list.go new file mode 100644 index 000000000..f04ab61c4 --- /dev/null +++ b/pkg/dialects/avssuas/msg_mission_write_partial_list.go @@ -0,0 +1,22 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package avssuas + +// This message is sent to the MAV to write a partial list. If start index == end index, only one item will be transmitted / updated. If the start index is NOT 0 and above the current list size, this request should be REJECTED! +type MessageMissionWritePartialList struct { + // System ID + TargetSystem uint8 + // Component ID + TargetComponent uint8 + // Start index. Must be smaller / equal to the largest index of the current onboard list. + StartIndex int16 + // End index, equal or greater than start index. + EndIndex int16 + // Mission type. + MissionType MAV_MISSION_TYPE `mavenum:"uint8" mavext:"true"` +} + +// GetID implements the msg.Message interface. +func (*MessageMissionWritePartialList) GetID() uint32 { + return 38 +} diff --git a/pkg/dialects/avssuas/msg_mount_orientation.go b/pkg/dialects/avssuas/msg_mount_orientation.go new file mode 100644 index 000000000..c575ba23d --- /dev/null +++ b/pkg/dialects/avssuas/msg_mount_orientation.go @@ -0,0 +1,22 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package avssuas + +// Orientation of a mount +type MessageMountOrientation struct { + // Timestamp (time since system boot). + TimeBootMs uint32 + // Roll in global frame (set to NaN for invalid). + Roll float32 + // Pitch in global frame (set to NaN for invalid). + Pitch float32 + // Yaw relative to vehicle (set to NaN for invalid). + Yaw float32 + // Yaw in absolute frame relative to Earth's North, north is 0 (set to NaN for invalid). + YawAbsolute float32 `mavext:"true"` +} + +// GetID implements the msg.Message interface. +func (*MessageMountOrientation) GetID() uint32 { + return 265 +} diff --git a/pkg/dialects/avssuas/msg_named_value_float.go b/pkg/dialects/avssuas/msg_named_value_float.go new file mode 100644 index 000000000..9e4656bef --- /dev/null +++ b/pkg/dialects/avssuas/msg_named_value_float.go @@ -0,0 +1,18 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package avssuas + +// Send a key-value pair as float. The use of this message is discouraged for normal packets, but a quite efficient way for testing new messages and getting experimental debug output. +type MessageNamedValueFloat struct { + // Timestamp (time since system boot). + TimeBootMs uint32 + // Name of the debug variable + Name string `mavlen:"10"` + // Floating point value + Value float32 +} + +// GetID implements the msg.Message interface. +func (*MessageNamedValueFloat) GetID() uint32 { + return 251 +} diff --git a/pkg/dialects/avssuas/msg_named_value_int.go b/pkg/dialects/avssuas/msg_named_value_int.go new file mode 100644 index 000000000..8ff926259 --- /dev/null +++ b/pkg/dialects/avssuas/msg_named_value_int.go @@ -0,0 +1,18 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package avssuas + +// Send a key-value pair as integer. The use of this message is discouraged for normal packets, but a quite efficient way for testing new messages and getting experimental debug output. +type MessageNamedValueInt struct { + // Timestamp (time since system boot). + TimeBootMs uint32 + // Name of the debug variable + Name string `mavlen:"10"` + // Signed integer value + Value int32 +} + +// GetID implements the msg.Message interface. +func (*MessageNamedValueInt) GetID() uint32 { + return 252 +} diff --git a/pkg/dialects/avssuas/msg_nav_controller_output.go b/pkg/dialects/avssuas/msg_nav_controller_output.go new file mode 100644 index 000000000..7133d4aa2 --- /dev/null +++ b/pkg/dialects/avssuas/msg_nav_controller_output.go @@ -0,0 +1,28 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package avssuas + +// The state of the navigation and position controller. +type MessageNavControllerOutput struct { + // Current desired roll + NavRoll float32 + // Current desired pitch + NavPitch float32 + // Current desired heading + NavBearing int16 + // Bearing to current waypoint/target + TargetBearing int16 + // Distance to active waypoint + WpDist uint16 + // Current altitude error + AltError float32 + // Current airspeed error + AspdError float32 + // Current crosstrack error on x-y plane + XtrackError float32 +} + +// GetID implements the msg.Message interface. +func (*MessageNavControllerOutput) GetID() uint32 { + return 62 +} diff --git a/pkg/dialects/avssuas/msg_obstacle_distance.go b/pkg/dialects/avssuas/msg_obstacle_distance.go new file mode 100644 index 000000000..9991baf48 --- /dev/null +++ b/pkg/dialects/avssuas/msg_obstacle_distance.go @@ -0,0 +1,30 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package avssuas + +// Obstacle distances in front of the sensor, starting from the left in increment degrees to the right +type MessageObstacleDistance struct { + // Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. + TimeUsec uint64 + // Class id of the distance sensor type. + SensorType MAV_DISTANCE_SENSOR `mavenum:"uint8"` + // Distance of obstacles around the vehicle with index 0 corresponding to north + angle_offset, unless otherwise specified in the frame. A value of 0 is valid and means that the obstacle is practically touching the sensor. A value of max_distance +1 means no obstacle is present. A value of UINT16_MAX for unknown/not used. In a array element, one unit corresponds to 1cm. + Distances [72]uint16 + // Angular width in degrees of each array element. Increment direction is clockwise. This field is ignored if increment_f is non-zero. + Increment uint8 + // Minimum distance the sensor can measure. + MinDistance uint16 + // Maximum distance the sensor can measure. + MaxDistance uint16 + // Angular width in degrees of each array element as a float. If non-zero then this value is used instead of the uint8_t increment field. Positive is clockwise direction, negative is counter-clockwise. + IncrementF float32 `mavext:"true"` + // Relative angle offset of the 0-index element in the distances array. Value of 0 corresponds to forward. Positive is clockwise direction, negative is counter-clockwise. + AngleOffset float32 `mavext:"true"` + // Coordinate frame of reference for the yaw rotation and offset of the sensor data. Defaults to MAV_FRAME_GLOBAL, which is north aligned. For body-mounted sensors use MAV_FRAME_BODY_FRD, which is vehicle front aligned. + Frame MAV_FRAME `mavenum:"uint8" mavext:"true"` +} + +// GetID implements the msg.Message interface. +func (*MessageObstacleDistance) GetID() uint32 { + return 330 +} diff --git a/pkg/dialects/avssuas/msg_odometry.go b/pkg/dialects/avssuas/msg_odometry.go new file mode 100644 index 000000000..7ece5d19b --- /dev/null +++ b/pkg/dialects/avssuas/msg_odometry.go @@ -0,0 +1,46 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package avssuas + +// Odometry message to communicate odometry information with an external interface. Fits ROS REP 147 standard for aerial vehicles (http://www.ros.org/reps/rep-0147.html). +type MessageOdometry struct { + // Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. + TimeUsec uint64 + // Coordinate frame of reference for the pose data. + FrameId MAV_FRAME `mavenum:"uint8"` + // Coordinate frame of reference for the velocity in free space (twist) data. + ChildFrameId MAV_FRAME `mavenum:"uint8"` + // X Position + X float32 + // Y Position + Y float32 + // Z Position + Z float32 + // Quaternion components, w, x, y, z (1 0 0 0 is the null-rotation) + Q [4]float32 + // X linear speed + Vx float32 + // Y linear speed + Vy float32 + // Z linear speed + Vz float32 + // Roll angular speed + Rollspeed float32 + // Pitch angular speed + Pitchspeed float32 + // Yaw angular speed + Yawspeed float32 + // Row-major representation of a 6x6 pose cross-covariance matrix upper right triangle (states: x, y, z, roll, pitch, yaw; first six entries are the first ROW, next five entries are the second ROW, etc.). If unknown, assign NaN value to first element in the array. + PoseCovariance [21]float32 + // Row-major representation of a 6x6 velocity cross-covariance matrix upper right triangle (states: vx, vy, vz, rollspeed, pitchspeed, yawspeed; first six entries are the first ROW, next five entries are the second ROW, etc.). If unknown, assign NaN value to first element in the array. + VelocityCovariance [21]float32 + // Estimate reset counter. This should be incremented when the estimate resets in any of the dimensions (position, velocity, attitude, angular speed). This is designed to be used when e.g an external SLAM system detects a loop-closure and the estimate jumps. + ResetCounter uint8 `mavext:"true"` + // Type of estimator that is providing the odometry. + EstimatorType MAV_ESTIMATOR_TYPE `mavenum:"uint8" mavext:"true"` +} + +// GetID implements the msg.Message interface. +func (*MessageOdometry) GetID() uint32 { + return 331 +} diff --git a/pkg/dialects/avssuas/msg_onboard_computer_status.go b/pkg/dialects/avssuas/msg_onboard_computer_status.go new file mode 100644 index 000000000..32e775865 --- /dev/null +++ b/pkg/dialects/avssuas/msg_onboard_computer_status.go @@ -0,0 +1,52 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package avssuas + +// Hardware status sent by an onboard computer. +type MessageOnboardComputerStatus struct { + // Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. + TimeUsec uint64 + // Time since system boot. + Uptime uint32 + // Type of the onboard computer: 0: Mission computer primary, 1: Mission computer backup 1, 2: Mission computer backup 2, 3: Compute node, 4-5: Compute spares, 6-9: Payload computers. + Type uint8 + // CPU usage on the component in percent (100 - idle). A value of UINT8_MAX implies the field is unused. + CpuCores [8]uint8 + // Combined CPU usage as the last 10 slices of 100 MS (a histogram). This allows to identify spikes in load that max out the system, but only for a short amount of time. A value of UINT8_MAX implies the field is unused. + CpuCombined [10]uint8 + // GPU usage on the component in percent (100 - idle). A value of UINT8_MAX implies the field is unused. + GpuCores [4]uint8 + // Combined GPU usage as the last 10 slices of 100 MS (a histogram). This allows to identify spikes in load that max out the system, but only for a short amount of time. A value of UINT8_MAX implies the field is unused. + GpuCombined [10]uint8 + // Temperature of the board. A value of INT8_MAX implies the field is unused. + TemperatureBoard int8 + // Temperature of the CPU core. A value of INT8_MAX implies the field is unused. + TemperatureCore [8]int8 + // Fan speeds. A value of INT16_MAX implies the field is unused. + FanSpeed [4]int16 + // Amount of used RAM on the component system. A value of UINT32_MAX implies the field is unused. + RamUsage uint32 + // Total amount of RAM on the component system. A value of UINT32_MAX implies the field is unused. + RamTotal uint32 + // Storage type: 0: HDD, 1: SSD, 2: EMMC, 3: SD card (non-removable), 4: SD card (removable). A value of UINT32_MAX implies the field is unused. + StorageType [4]uint32 + // Amount of used storage space on the component system. A value of UINT32_MAX implies the field is unused. + StorageUsage [4]uint32 + // Total amount of storage space on the component system. A value of UINT32_MAX implies the field is unused. + StorageTotal [4]uint32 + // Link type: 0-9: UART, 10-19: Wired network, 20-29: Wifi, 30-39: Point-to-point proprietary, 40-49: Mesh proprietary + LinkType [6]uint32 + // Network traffic from the component system. A value of UINT32_MAX implies the field is unused. + LinkTxRate [6]uint32 + // Network traffic to the component system. A value of UINT32_MAX implies the field is unused. + LinkRxRate [6]uint32 + // Network capacity from the component system. A value of UINT32_MAX implies the field is unused. + LinkTxMax [6]uint32 + // Network capacity to the component system. A value of UINT32_MAX implies the field is unused. + LinkRxMax [6]uint32 +} + +// GetID implements the msg.Message interface. +func (*MessageOnboardComputerStatus) GetID() uint32 { + return 390 +} diff --git a/pkg/dialects/avssuas/msg_open_drone_id_authentication.go b/pkg/dialects/avssuas/msg_open_drone_id_authentication.go new file mode 100644 index 000000000..3a479940c --- /dev/null +++ b/pkg/dialects/avssuas/msg_open_drone_id_authentication.go @@ -0,0 +1,30 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package avssuas + +// Data for filling the OpenDroneID Authentication message. The Authentication Message defines a field that can provide a means of authenticity for the identity of the UAS (Unmanned Aircraft System). The Authentication message can have two different formats. Five data pages are supported. For data page 0, the fields PageCount, Length and TimeStamp are present and AuthData is only 17 bytes. For data page 1 through 15, PageCount, Length and TimeStamp are not present and the size of AuthData is 23 bytes. +type MessageOpenDroneIdAuthentication struct { + // System ID (0 for broadcast). + TargetSystem uint8 + // Component ID (0 for broadcast). + TargetComponent uint8 + // Only used for drone ID data received from other UAs. See detailed description at https://mavlink.io/en/services/opendroneid.html. + IdOrMac [20]uint8 + // Indicates the type of authentication. + AuthenticationType MAV_ODID_AUTH_TYPE `mavenum:"uint8"` + // Allowed range is 0 - 15. + DataPage uint8 + // This field is only present for page 0. Allowed range is 0 - 15. See the description of struct ODID_Auth_data at https://github.com/opendroneid/opendroneid-core-c/blob/master/libopendroneid/opendroneid.h. + LastPageIndex uint8 + // This field is only present for page 0. Total bytes of authentication_data from all data pages. See the description of struct ODID_Auth_data at https://github.com/opendroneid/opendroneid-core-c/blob/master/libopendroneid/opendroneid.h. + Length uint8 + // This field is only present for page 0. 32 bit Unix Timestamp in seconds since 00:00:00 01/01/2019. + Timestamp uint32 + // Opaque authentication data. For page 0, the size is only 17 bytes. For other pages, the size is 23 bytes. Shall be filled with nulls in the unused portion of the field. + AuthenticationData [23]uint8 +} + +// GetID implements the msg.Message interface. +func (*MessageOpenDroneIdAuthentication) GetID() uint32 { + return 12902 +} diff --git a/pkg/dialects/avssuas/msg_open_drone_id_basic_id.go b/pkg/dialects/avssuas/msg_open_drone_id_basic_id.go new file mode 100644 index 000000000..69d71222f --- /dev/null +++ b/pkg/dialects/avssuas/msg_open_drone_id_basic_id.go @@ -0,0 +1,24 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package avssuas + +// Data for filling the OpenDroneID Basic ID message. This and the below messages are primarily meant for feeding data to/from an OpenDroneID implementation. E.g. https://github.com/opendroneid/opendroneid-core-c. These messages are compatible with the ASTM Remote ID standard at https://www.astm.org/Standards/F3411.htm and the ASD-STAN Direct Remote ID standard. The usage of these messages is documented at https://mavlink.io/en/services/opendroneid.html. +type MessageOpenDroneIdBasicId struct { + // System ID (0 for broadcast). + TargetSystem uint8 + // Component ID (0 for broadcast). + TargetComponent uint8 + // Only used for drone ID data received from other UAs. See detailed description at https://mavlink.io/en/services/opendroneid.html. + IdOrMac [20]uint8 + // Indicates the format for the uas_id field of this message. + IdType MAV_ODID_ID_TYPE `mavenum:"uint8"` + // Indicates the type of UA (Unmanned Aircraft). + UaType MAV_ODID_UA_TYPE `mavenum:"uint8"` + // UAS (Unmanned Aircraft System) ID following the format specified by id_type. Shall be filled with nulls in the unused portion of the field. + UasId [20]uint8 +} + +// GetID implements the msg.Message interface. +func (*MessageOpenDroneIdBasicId) GetID() uint32 { + return 12900 +} diff --git a/pkg/dialects/avssuas/msg_open_drone_id_location.go b/pkg/dialects/avssuas/msg_open_drone_id_location.go new file mode 100644 index 000000000..bdc42fe43 --- /dev/null +++ b/pkg/dialects/avssuas/msg_open_drone_id_location.go @@ -0,0 +1,50 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package avssuas + +// Data for filling the OpenDroneID Location message. The float data types are 32-bit IEEE 754. The Location message provides the location, altitude, direction and speed of the aircraft. +type MessageOpenDroneIdLocation struct { + // System ID (0 for broadcast). + TargetSystem uint8 + // Component ID (0 for broadcast). + TargetComponent uint8 + // Only used for drone ID data received from other UAs. See detailed description at https://mavlink.io/en/services/opendroneid.html. + IdOrMac [20]uint8 + // Indicates whether the unmanned aircraft is on the ground or in the air. + Status MAV_ODID_STATUS `mavenum:"uint8"` + // Direction over ground (not heading, but direction of movement) measured clockwise from true North: 0 - 35999 centi-degrees. If unknown: 36100 centi-degrees. + Direction uint16 + // Ground speed. Positive only. If unknown: 25500 cm/s. If speed is larger than 25425 cm/s, use 25425 cm/s. + SpeedHorizontal uint16 + // The vertical speed. Up is positive. If unknown: 6300 cm/s. If speed is larger than 6200 cm/s, use 6200 cm/s. If lower than -6200 cm/s, use -6200 cm/s. + SpeedVertical int16 + // Current latitude of the unmanned aircraft. If unknown: 0 (both Lat/Lon). + Latitude int32 + // Current longitude of the unmanned aircraft. If unknown: 0 (both Lat/Lon). + Longitude int32 + // The altitude calculated from the barometric pressue. Reference is against 29.92inHg or 1013.2mb. If unknown: -1000 m. + AltitudeBarometric float32 + // The geodetic altitude as defined by WGS84. If unknown: -1000 m. + AltitudeGeodetic float32 + // Indicates the reference point for the height field. + HeightReference MAV_ODID_HEIGHT_REF `mavenum:"uint8"` + // The current height of the unmanned aircraft above the take-off location or the ground as indicated by height_reference. If unknown: -1000 m. + Height float32 + // The accuracy of the horizontal position. + HorizontalAccuracy MAV_ODID_HOR_ACC `mavenum:"uint8"` + // The accuracy of the vertical position. + VerticalAccuracy MAV_ODID_VER_ACC `mavenum:"uint8"` + // The accuracy of the barometric altitude. + BarometerAccuracy MAV_ODID_VER_ACC `mavenum:"uint8"` + // The accuracy of the horizontal and vertical speed. + SpeedAccuracy MAV_ODID_SPEED_ACC `mavenum:"uint8"` + // Seconds after the full hour with reference to UTC time. Typically the GPS outputs a time-of-week value in milliseconds. First convert that to UTC and then convert for this field using ((float) (time_week_ms % (60*60*1000))) / 1000. If unknown: 0xFFFF. + Timestamp float32 + // The accuracy of the timestamps. + TimestampAccuracy MAV_ODID_TIME_ACC `mavenum:"uint8"` +} + +// GetID implements the msg.Message interface. +func (*MessageOpenDroneIdLocation) GetID() uint32 { + return 12901 +} diff --git a/pkg/dialects/avssuas/msg_open_drone_id_message_pack.go b/pkg/dialects/avssuas/msg_open_drone_id_message_pack.go new file mode 100644 index 000000000..ecbba186c --- /dev/null +++ b/pkg/dialects/avssuas/msg_open_drone_id_message_pack.go @@ -0,0 +1,24 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package avssuas + +// An OpenDroneID message pack is a container for multiple encoded OpenDroneID messages (i.e. not in the format given for the above messages descriptions but after encoding into the compressed OpenDroneID byte format). Used e.g. when transmitting on Bluetooth 5.0 Long Range/Extended Advertising or on WiFi Neighbor Aware Networking. +type MessageOpenDroneIdMessagePack struct { + // System ID (0 for broadcast). + TargetSystem uint8 + // Component ID (0 for broadcast). + TargetComponent uint8 + // Only used for drone ID data received from other UAs. See detailed description at https://mavlink.io/en/services/opendroneid.html. + IdOrMac [20]uint8 + // This field must currently always be equal to 25 (bytes), since all encoded OpenDroneID messages are specificed to have this length. + SingleMessageSize uint8 + // Number of encoded messages in the pack (not the number of bytes). Allowed range is 1 - 9. + MsgPackSize uint8 + // Concatenation of encoded OpenDroneID messages. Shall be filled with nulls in the unused portion of the field. + Messages [225]uint8 +} + +// GetID implements the msg.Message interface. +func (*MessageOpenDroneIdMessagePack) GetID() uint32 { + return 12915 +} diff --git a/pkg/dialects/avssuas/msg_open_drone_id_operator_id.go b/pkg/dialects/avssuas/msg_open_drone_id_operator_id.go new file mode 100644 index 000000000..64c2b07c6 --- /dev/null +++ b/pkg/dialects/avssuas/msg_open_drone_id_operator_id.go @@ -0,0 +1,22 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package avssuas + +// Data for filling the OpenDroneID Operator ID message, which contains the CAA (Civil Aviation Authority) issued operator ID. +type MessageOpenDroneIdOperatorId struct { + // System ID (0 for broadcast). + TargetSystem uint8 + // Component ID (0 for broadcast). + TargetComponent uint8 + // Only used for drone ID data received from other UAs. See detailed description at https://mavlink.io/en/services/opendroneid.html. + IdOrMac [20]uint8 + // Indicates the type of the operator_id field. + OperatorIdType MAV_ODID_OPERATOR_ID_TYPE `mavenum:"uint8"` + // Text description or numeric value expressed as ASCII characters. Shall be filled with nulls in the unused portion of the field. + OperatorId string `mavlen:"20"` +} + +// GetID implements the msg.Message interface. +func (*MessageOpenDroneIdOperatorId) GetID() uint32 { + return 12905 +} diff --git a/pkg/dialects/avssuas/msg_open_drone_id_self_id.go b/pkg/dialects/avssuas/msg_open_drone_id_self_id.go new file mode 100644 index 000000000..da7cf205d --- /dev/null +++ b/pkg/dialects/avssuas/msg_open_drone_id_self_id.go @@ -0,0 +1,22 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package avssuas + +// Data for filling the OpenDroneID Self ID message. The Self ID Message is an opportunity for the operator to (optionally) declare their identity and purpose of the flight. This message can provide additional information that could reduce the threat profile of a UA (Unmanned Aircraft) flying in a particular area or manner. +type MessageOpenDroneIdSelfId struct { + // System ID (0 for broadcast). + TargetSystem uint8 + // Component ID (0 for broadcast). + TargetComponent uint8 + // Only used for drone ID data received from other UAs. See detailed description at https://mavlink.io/en/services/opendroneid.html. + IdOrMac [20]uint8 + // Indicates the type of the description field. + DescriptionType MAV_ODID_DESC_TYPE `mavenum:"uint8"` + // Text description or numeric value expressed as ASCII characters. Shall be filled with nulls in the unused portion of the field. + Description string `mavlen:"23"` +} + +// GetID implements the msg.Message interface. +func (*MessageOpenDroneIdSelfId) GetID() uint32 { + return 12903 +} diff --git a/pkg/dialects/avssuas/msg_open_drone_id_system.go b/pkg/dialects/avssuas/msg_open_drone_id_system.go new file mode 100644 index 000000000..c19ec790a --- /dev/null +++ b/pkg/dialects/avssuas/msg_open_drone_id_system.go @@ -0,0 +1,40 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package avssuas + +// Data for filling the OpenDroneID System message. The System Message contains general system information including the operator location and possible aircraft group information. +type MessageOpenDroneIdSystem struct { + // System ID (0 for broadcast). + TargetSystem uint8 + // Component ID (0 for broadcast). + TargetComponent uint8 + // Only used for drone ID data received from other UAs. See detailed description at https://mavlink.io/en/services/opendroneid.html. + IdOrMac [20]uint8 + // Specifies the operator location type. + OperatorLocationType MAV_ODID_OPERATOR_LOCATION_TYPE `mavenum:"uint8"` + // Specifies the classification type of the UA. + ClassificationType MAV_ODID_CLASSIFICATION_TYPE `mavenum:"uint8"` + // Latitude of the operator. If unknown: 0 (both Lat/Lon). + OperatorLatitude int32 + // Longitude of the operator. If unknown: 0 (both Lat/Lon). + OperatorLongitude int32 + // Number of aircraft in the area, group or formation (default 1). + AreaCount uint16 + // Radius of the cylindrical area of the group or formation (default 0). + AreaRadius uint16 + // Area Operations Ceiling relative to WGS84. If unknown: -1000 m. + AreaCeiling float32 + // Area Operations Floor relative to WGS84. If unknown: -1000 m. + AreaFloor float32 + // When classification_type is MAV_ODID_CLASSIFICATION_TYPE_EU, specifies the category of the UA. + CategoryEu MAV_ODID_CATEGORY_EU `mavenum:"uint8"` + // When classification_type is MAV_ODID_CLASSIFICATION_TYPE_EU, specifies the class of the UA. + ClassEu MAV_ODID_CLASS_EU `mavenum:"uint8"` + // Geodetic altitude of the operator relative to WGS84. If unknown: -1000 m. + OperatorAltitudeGeo float32 +} + +// GetID implements the msg.Message interface. +func (*MessageOpenDroneIdSystem) GetID() uint32 { + return 12904 +} diff --git a/pkg/dialects/avssuas/msg_optical_flow.go b/pkg/dialects/avssuas/msg_optical_flow.go new file mode 100644 index 000000000..758b8b885 --- /dev/null +++ b/pkg/dialects/avssuas/msg_optical_flow.go @@ -0,0 +1,32 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package avssuas + +// Optical flow from a flow sensor (e.g. optical mouse sensor) +type MessageOpticalFlow struct { + // Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. + TimeUsec uint64 + // Sensor ID + SensorId uint8 + // Flow in x-sensor direction + FlowX int16 + // Flow in y-sensor direction + FlowY int16 + // Flow in x-sensor direction, angular-speed compensated + FlowCompMX float32 + // Flow in y-sensor direction, angular-speed compensated + FlowCompMY float32 + // Optical flow quality / confidence. 0: bad, 255: maximum quality + Quality uint8 + // Ground distance. Positive value: distance known. Negative value: Unknown distance + GroundDistance float32 + // Flow rate about X axis + FlowRateX float32 `mavext:"true"` + // Flow rate about Y axis + FlowRateY float32 `mavext:"true"` +} + +// GetID implements the msg.Message interface. +func (*MessageOpticalFlow) GetID() uint32 { + return 100 +} diff --git a/pkg/dialects/avssuas/msg_optical_flow_rad.go b/pkg/dialects/avssuas/msg_optical_flow_rad.go new file mode 100644 index 000000000..228a11744 --- /dev/null +++ b/pkg/dialects/avssuas/msg_optical_flow_rad.go @@ -0,0 +1,36 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package avssuas + +// Optical flow from an angular rate flow sensor (e.g. PX4FLOW or mouse sensor) +type MessageOpticalFlowRad struct { + // Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. + TimeUsec uint64 + // Sensor ID + SensorId uint8 + // Integration time. Divide integrated_x and integrated_y by the integration time to obtain average flow. The integration time also indicates the. + IntegrationTimeUs uint32 + // Flow around X axis (Sensor RH rotation about the X axis induces a positive flow. Sensor linear motion along the positive Y axis induces a negative flow.) + IntegratedX float32 + // Flow around Y axis (Sensor RH rotation about the Y axis induces a positive flow. Sensor linear motion along the positive X axis induces a positive flow.) + IntegratedY float32 + // RH rotation around X axis + IntegratedXgyro float32 + // RH rotation around Y axis + IntegratedYgyro float32 + // RH rotation around Z axis + IntegratedZgyro float32 + // Temperature + Temperature int16 + // Optical flow quality / confidence. 0: no valid flow, 255: maximum quality + Quality uint8 + // Time since the distance was sampled. + TimeDeltaDistanceUs uint32 + // Distance to the center of the flow field. Positive value (including zero): distance known. Negative value: Unknown distance. + Distance float32 +} + +// GetID implements the msg.Message interface. +func (*MessageOpticalFlowRad) GetID() uint32 { + return 106 +} diff --git a/pkg/dialects/avssuas/msg_orbit_execution_status.go b/pkg/dialects/avssuas/msg_orbit_execution_status.go new file mode 100644 index 000000000..b74c7e198 --- /dev/null +++ b/pkg/dialects/avssuas/msg_orbit_execution_status.go @@ -0,0 +1,24 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package avssuas + +// Vehicle status report that is sent out while orbit execution is in progress (see MAV_CMD_DO_ORBIT). +type MessageOrbitExecutionStatus struct { + // Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. + TimeUsec uint64 + // Radius of the orbit circle. Positive values orbit clockwise, negative values orbit counter-clockwise. + Radius float32 + // The coordinate system of the fields: x, y, z. + Frame MAV_FRAME `mavenum:"uint8"` + // X coordinate of center point. Coordinate system depends on frame field: local = x position in meters * 1e4, global = latitude in degrees * 1e7. + X int32 + // Y coordinate of center point. Coordinate system depends on frame field: local = x position in meters * 1e4, global = latitude in degrees * 1e7. + Y int32 + // Altitude of center point. Coordinate system depends on frame field. + Z float32 +} + +// GetID implements the msg.Message interface. +func (*MessageOrbitExecutionStatus) GetID() uint32 { + return 360 +} diff --git a/pkg/dialects/avssuas/msg_param_ext_ack.go b/pkg/dialects/avssuas/msg_param_ext_ack.go new file mode 100644 index 000000000..f60032e21 --- /dev/null +++ b/pkg/dialects/avssuas/msg_param_ext_ack.go @@ -0,0 +1,20 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package avssuas + +// Response from a PARAM_EXT_SET message. +type MessageParamExtAck struct { + // Parameter id, terminated by NULL if the length is less than 16 human-readable chars and WITHOUT null termination (NULL) byte if the length is exactly 16 chars - applications have to provide 16+1 bytes storage if the ID is stored as string + ParamId string `mavlen:"16"` + // Parameter value (new value if PARAM_ACK_ACCEPTED, current value otherwise) + ParamValue string `mavlen:"128"` + // Parameter type. + ParamType MAV_PARAM_EXT_TYPE `mavenum:"uint8"` + // Result code. + ParamResult PARAM_ACK `mavenum:"uint8"` +} + +// GetID implements the msg.Message interface. +func (*MessageParamExtAck) GetID() uint32 { + return 324 +} diff --git a/pkg/dialects/avssuas/msg_param_ext_request_list.go b/pkg/dialects/avssuas/msg_param_ext_request_list.go new file mode 100644 index 000000000..09d8a38a0 --- /dev/null +++ b/pkg/dialects/avssuas/msg_param_ext_request_list.go @@ -0,0 +1,16 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package avssuas + +// Request all parameters of this component. All parameters should be emitted in response as PARAM_EXT_VALUE. +type MessageParamExtRequestList struct { + // System ID + TargetSystem uint8 + // Component ID + TargetComponent uint8 +} + +// GetID implements the msg.Message interface. +func (*MessageParamExtRequestList) GetID() uint32 { + return 321 +} diff --git a/pkg/dialects/avssuas/msg_param_ext_request_read.go b/pkg/dialects/avssuas/msg_param_ext_request_read.go new file mode 100644 index 000000000..acfc8f4e4 --- /dev/null +++ b/pkg/dialects/avssuas/msg_param_ext_request_read.go @@ -0,0 +1,20 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package avssuas + +// Request to read the value of a parameter with either the param_id string id or param_index. PARAM_EXT_VALUE should be emitted in response. +type MessageParamExtRequestRead struct { + // System ID + TargetSystem uint8 + // Component ID + TargetComponent uint8 + // Parameter id, terminated by NULL if the length is less than 16 human-readable chars and WITHOUT null termination (NULL) byte if the length is exactly 16 chars - applications have to provide 16+1 bytes storage if the ID is stored as string + ParamId string `mavlen:"16"` + // Parameter index. Set to -1 to use the Parameter ID field as identifier (else param_id will be ignored) + ParamIndex int16 +} + +// GetID implements the msg.Message interface. +func (*MessageParamExtRequestRead) GetID() uint32 { + return 320 +} diff --git a/pkg/dialects/avssuas/msg_param_ext_set.go b/pkg/dialects/avssuas/msg_param_ext_set.go new file mode 100644 index 000000000..1fd9a26d4 --- /dev/null +++ b/pkg/dialects/avssuas/msg_param_ext_set.go @@ -0,0 +1,22 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package avssuas + +// Set a parameter value. In order to deal with message loss (and retransmission of PARAM_EXT_SET), when setting a parameter value and the new value is the same as the current value, you will immediately get a PARAM_ACK_ACCEPTED response. If the current state is PARAM_ACK_IN_PROGRESS, you will accordingly receive a PARAM_ACK_IN_PROGRESS in response. +type MessageParamExtSet struct { + // System ID + TargetSystem uint8 + // Component ID + TargetComponent uint8 + // Parameter id, terminated by NULL if the length is less than 16 human-readable chars and WITHOUT null termination (NULL) byte if the length is exactly 16 chars - applications have to provide 16+1 bytes storage if the ID is stored as string + ParamId string `mavlen:"16"` + // Parameter value + ParamValue string `mavlen:"128"` + // Parameter type. + ParamType MAV_PARAM_EXT_TYPE `mavenum:"uint8"` +} + +// GetID implements the msg.Message interface. +func (*MessageParamExtSet) GetID() uint32 { + return 323 +} diff --git a/pkg/dialects/avssuas/msg_param_ext_value.go b/pkg/dialects/avssuas/msg_param_ext_value.go new file mode 100644 index 000000000..a0ce205c7 --- /dev/null +++ b/pkg/dialects/avssuas/msg_param_ext_value.go @@ -0,0 +1,22 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package avssuas + +// Emit the value of a parameter. The inclusion of param_count and param_index in the message allows the recipient to keep track of received parameters and allows them to re-request missing parameters after a loss or timeout. +type MessageParamExtValue struct { + // Parameter id, terminated by NULL if the length is less than 16 human-readable chars and WITHOUT null termination (NULL) byte if the length is exactly 16 chars - applications have to provide 16+1 bytes storage if the ID is stored as string + ParamId string `mavlen:"16"` + // Parameter value + ParamValue string `mavlen:"128"` + // Parameter type. + ParamType MAV_PARAM_EXT_TYPE `mavenum:"uint8"` + // Total number of parameters + ParamCount uint16 + // Index of this parameter + ParamIndex uint16 +} + +// GetID implements the msg.Message interface. +func (*MessageParamExtValue) GetID() uint32 { + return 322 +} diff --git a/pkg/dialects/avssuas/msg_param_map_rc.go b/pkg/dialects/avssuas/msg_param_map_rc.go new file mode 100644 index 000000000..3178ee822 --- /dev/null +++ b/pkg/dialects/avssuas/msg_param_map_rc.go @@ -0,0 +1,30 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package avssuas + +// Bind a RC channel to a parameter. The parameter should change according to the RC channel value. +type MessageParamMapRc struct { + // System ID + TargetSystem uint8 + // Component ID + TargetComponent uint8 + // Onboard parameter id, terminated by NULL if the length is less than 16 human-readable chars and WITHOUT null termination (NULL) byte if the length is exactly 16 chars - applications have to provide 16+1 bytes storage if the ID is stored as string + ParamId string `mavlen:"16"` + // Parameter index. Send -1 to use the param ID field as identifier (else the param id will be ignored), send -2 to disable any existing map for this rc_channel_index. + ParamIndex int16 + // Index of parameter RC channel. Not equal to the RC channel id. Typically corresponds to a potentiometer-knob on the RC. + ParameterRcChannelIndex uint8 + // Initial parameter value + ParamValue0 float32 + // Scale, maps the RC range [-1, 1] to a parameter value + Scale float32 + // Minimum param value. The protocol does not define if this overwrites an onboard minimum value. (Depends on implementation) + ParamValueMin float32 + // Maximum param value. The protocol does not define if this overwrites an onboard maximum value. (Depends on implementation) + ParamValueMax float32 +} + +// GetID implements the msg.Message interface. +func (*MessageParamMapRc) GetID() uint32 { + return 50 +} diff --git a/pkg/dialects/avssuas/msg_param_request_list.go b/pkg/dialects/avssuas/msg_param_request_list.go new file mode 100644 index 000000000..0d0a41463 --- /dev/null +++ b/pkg/dialects/avssuas/msg_param_request_list.go @@ -0,0 +1,16 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package avssuas + +// Request all parameters of this component. After this request, all parameters are emitted. The parameter microservice is documented at https://mavlink.io/en/services/parameter.html +type MessageParamRequestList struct { + // System ID + TargetSystem uint8 + // Component ID + TargetComponent uint8 +} + +// GetID implements the msg.Message interface. +func (*MessageParamRequestList) GetID() uint32 { + return 21 +} diff --git a/pkg/dialects/avssuas/msg_param_request_read.go b/pkg/dialects/avssuas/msg_param_request_read.go new file mode 100644 index 000000000..d2b34b1cc --- /dev/null +++ b/pkg/dialects/avssuas/msg_param_request_read.go @@ -0,0 +1,20 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package avssuas + +// Request to read the onboard parameter with the param_id string id. Onboard parameters are stored as key[const char*] -> value[float]. This allows to send a parameter to any other component (such as the GCS) without the need of previous knowledge of possible parameter names. Thus the same GCS can store different parameters for different autopilots. See also https://mavlink.io/en/services/parameter.html for a full documentation of QGroundControl and IMU code. +type MessageParamRequestRead struct { + // System ID + TargetSystem uint8 + // Component ID + TargetComponent uint8 + // Onboard parameter id, terminated by NULL if the length is less than 16 human-readable chars and WITHOUT null termination (NULL) byte if the length is exactly 16 chars - applications have to provide 16+1 bytes storage if the ID is stored as string + ParamId string `mavlen:"16"` + // Parameter index. Send -1 to use the param ID field as identifier (else the param id will be ignored) + ParamIndex int16 +} + +// GetID implements the msg.Message interface. +func (*MessageParamRequestRead) GetID() uint32 { + return 20 +} diff --git a/pkg/dialects/avssuas/msg_param_set.go b/pkg/dialects/avssuas/msg_param_set.go new file mode 100644 index 000000000..8971aad93 --- /dev/null +++ b/pkg/dialects/avssuas/msg_param_set.go @@ -0,0 +1,24 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package avssuas + +// Set a parameter value (write new value to permanent storage). +// The receiving component should acknowledge the new parameter value by broadcasting a PARAM_VALUE message (broadcasting ensures that multiple GCS all have an up-to-date list of all parameters). If the sending GCS did not receive a PARAM_VALUE within its timeout time, it should re-send the PARAM_SET message. The parameter microservice is documented at https://mavlink.io/en/services/parameter.html. +// PARAM_SET may also be called within the context of a transaction (started with MAV_CMD_PARAM_TRANSACTION). Within a transaction the receiving component should respond with PARAM_ACK_TRANSACTION to the setter component (instead of broadcasting PARAM_VALUE), and PARAM_SET should be re-sent if this is ACK not received. +type MessageParamSet struct { + // System ID + TargetSystem uint8 + // Component ID + TargetComponent uint8 + // Onboard parameter id, terminated by NULL if the length is less than 16 human-readable chars and WITHOUT null termination (NULL) byte if the length is exactly 16 chars - applications have to provide 16+1 bytes storage if the ID is stored as string + ParamId string `mavlen:"16"` + // Onboard parameter value + ParamValue float32 + // Onboard parameter type. + ParamType MAV_PARAM_TYPE `mavenum:"uint8"` +} + +// GetID implements the msg.Message interface. +func (*MessageParamSet) GetID() uint32 { + return 23 +} diff --git a/pkg/dialects/avssuas/msg_param_value.go b/pkg/dialects/avssuas/msg_param_value.go new file mode 100644 index 000000000..40709618b --- /dev/null +++ b/pkg/dialects/avssuas/msg_param_value.go @@ -0,0 +1,22 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package avssuas + +// Emit the value of a onboard parameter. The inclusion of param_count and param_index in the message allows the recipient to keep track of received parameters and allows him to re-request missing parameters after a loss or timeout. The parameter microservice is documented at https://mavlink.io/en/services/parameter.html +type MessageParamValue struct { + // Onboard parameter id, terminated by NULL if the length is less than 16 human-readable chars and WITHOUT null termination (NULL) byte if the length is exactly 16 chars - applications have to provide 16+1 bytes storage if the ID is stored as string + ParamId string `mavlen:"16"` + // Onboard parameter value + ParamValue float32 + // Onboard parameter type. + ParamType MAV_PARAM_TYPE `mavenum:"uint8"` + // Total number of onboard parameters + ParamCount uint16 + // Index of this onboard parameter + ParamIndex uint16 +} + +// GetID implements the msg.Message interface. +func (*MessageParamValue) GetID() uint32 { + return 22 +} diff --git a/pkg/dialects/avssuas/msg_ping.go b/pkg/dialects/avssuas/msg_ping.go new file mode 100644 index 000000000..f09dc4eb9 --- /dev/null +++ b/pkg/dialects/avssuas/msg_ping.go @@ -0,0 +1,20 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package avssuas + +// A ping message either requesting or responding to a ping. This allows to measure the system latencies, including serial port, radio modem and UDP connections. The ping microservice is documented at https://mavlink.io/en/services/ping.html +type MessagePing struct { + // Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. + TimeUsec uint64 + // PING sequence + Seq uint32 + // 0: request ping from all receiving systems. If greater than 0: message is a ping response and number is the system id of the requesting system + TargetSystem uint8 + // 0: request ping from all receiving components. If greater than 0: message is a ping response and number is the component id of the requesting component. + TargetComponent uint8 +} + +// GetID implements the msg.Message interface. +func (*MessagePing) GetID() uint32 { + return 4 +} diff --git a/pkg/dialects/avssuas/msg_play_tune.go b/pkg/dialects/avssuas/msg_play_tune.go new file mode 100644 index 000000000..417f335e3 --- /dev/null +++ b/pkg/dialects/avssuas/msg_play_tune.go @@ -0,0 +1,20 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package avssuas + +// Control vehicle tone generation (buzzer). +type MessagePlayTune struct { + // System ID + TargetSystem uint8 + // Component ID + TargetComponent uint8 + // tune in board specific format + Tune string `mavlen:"30"` + // tune extension (appended to tune) + Tune2 string `mavext:"true" mavlen:"200"` +} + +// GetID implements the msg.Message interface. +func (*MessagePlayTune) GetID() uint32 { + return 258 +} diff --git a/pkg/dialects/avssuas/msg_play_tune_v2.go b/pkg/dialects/avssuas/msg_play_tune_v2.go new file mode 100644 index 000000000..490a62d4b --- /dev/null +++ b/pkg/dialects/avssuas/msg_play_tune_v2.go @@ -0,0 +1,20 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package avssuas + +// Play vehicle tone/tune (buzzer). Supersedes message PLAY_TUNE. +type MessagePlayTuneV2 struct { + // System ID + TargetSystem uint8 + // Component ID + TargetComponent uint8 + // Tune format + Format TUNE_FORMAT `mavenum:"uint32"` + // Tune definition as a NULL-terminated string. + Tune string `mavlen:"248"` +} + +// GetID implements the msg.Message interface. +func (*MessagePlayTuneV2) GetID() uint32 { + return 400 +} diff --git a/pkg/dialects/avssuas/msg_position_target_global_int.go b/pkg/dialects/avssuas/msg_position_target_global_int.go new file mode 100644 index 000000000..e84d3cf34 --- /dev/null +++ b/pkg/dialects/avssuas/msg_position_target_global_int.go @@ -0,0 +1,40 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package avssuas + +// Reports the current commanded vehicle position, velocity, and acceleration as specified by the autopilot. This should match the commands sent in SET_POSITION_TARGET_GLOBAL_INT if the vehicle is being controlled this way. +type MessagePositionTargetGlobalInt struct { + // Timestamp (time since system boot). The rationale for the timestamp in the setpoint is to allow the system to compensate for the transport delay of the setpoint. This allows the system to compensate processing latency. + TimeBootMs uint32 + // Valid options are: MAV_FRAME_GLOBAL_INT = 5, MAV_FRAME_GLOBAL_RELATIVE_ALT_INT = 6, MAV_FRAME_GLOBAL_TERRAIN_ALT_INT = 11 + CoordinateFrame MAV_FRAME `mavenum:"uint8"` + // Bitmap to indicate which dimensions should be ignored by the vehicle. + TypeMask POSITION_TARGET_TYPEMASK `mavenum:"uint16"` + // X Position in WGS84 frame + LatInt int32 + // Y Position in WGS84 frame + LonInt int32 + // Altitude (MSL, AGL or relative to home altitude, depending on frame) + Alt float32 + // X velocity in NED frame + Vx float32 + // Y velocity in NED frame + Vy float32 + // Z velocity in NED frame + Vz float32 + // X acceleration or force (if bit 10 of type_mask is set) in NED frame in meter / s^2 or N + Afx float32 + // Y acceleration or force (if bit 10 of type_mask is set) in NED frame in meter / s^2 or N + Afy float32 + // Z acceleration or force (if bit 10 of type_mask is set) in NED frame in meter / s^2 or N + Afz float32 + // yaw setpoint + Yaw float32 + // yaw rate setpoint + YawRate float32 +} + +// GetID implements the msg.Message interface. +func (*MessagePositionTargetGlobalInt) GetID() uint32 { + return 87 +} diff --git a/pkg/dialects/avssuas/msg_position_target_local_ned.go b/pkg/dialects/avssuas/msg_position_target_local_ned.go new file mode 100644 index 000000000..b18ff526a --- /dev/null +++ b/pkg/dialects/avssuas/msg_position_target_local_ned.go @@ -0,0 +1,40 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package avssuas + +// Reports the current commanded vehicle position, velocity, and acceleration as specified by the autopilot. This should match the commands sent in SET_POSITION_TARGET_LOCAL_NED if the vehicle is being controlled this way. +type MessagePositionTargetLocalNed struct { + // Timestamp (time since system boot). + TimeBootMs uint32 + // Valid options are: MAV_FRAME_LOCAL_NED = 1, MAV_FRAME_LOCAL_OFFSET_NED = 7, MAV_FRAME_BODY_NED = 8, MAV_FRAME_BODY_OFFSET_NED = 9 + CoordinateFrame MAV_FRAME `mavenum:"uint8"` + // Bitmap to indicate which dimensions should be ignored by the vehicle. + TypeMask POSITION_TARGET_TYPEMASK `mavenum:"uint16"` + // X Position in NED frame + X float32 + // Y Position in NED frame + Y float32 + // Z Position in NED frame (note, altitude is negative in NED) + Z float32 + // X velocity in NED frame + Vx float32 + // Y velocity in NED frame + Vy float32 + // Z velocity in NED frame + Vz float32 + // X acceleration or force (if bit 10 of type_mask is set) in NED frame in meter / s^2 or N + Afx float32 + // Y acceleration or force (if bit 10 of type_mask is set) in NED frame in meter / s^2 or N + Afy float32 + // Z acceleration or force (if bit 10 of type_mask is set) in NED frame in meter / s^2 or N + Afz float32 + // yaw setpoint + Yaw float32 + // yaw rate setpoint + YawRate float32 +} + +// GetID implements the msg.Message interface. +func (*MessagePositionTargetLocalNed) GetID() uint32 { + return 85 +} diff --git a/pkg/dialects/avssuas/msg_power_status.go b/pkg/dialects/avssuas/msg_power_status.go new file mode 100644 index 000000000..b1e4872dd --- /dev/null +++ b/pkg/dialects/avssuas/msg_power_status.go @@ -0,0 +1,18 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package avssuas + +// Power supply status +type MessagePowerStatus struct { + // 5V rail voltage. + Vcc uint16 `mavname:"Vcc"` + // Servo rail voltage. + Vservo uint16 `mavname:"Vservo"` + // Bitmap of power supply status flags. + Flags MAV_POWER_STATUS `mavenum:"uint16"` +} + +// GetID implements the msg.Message interface. +func (*MessagePowerStatus) GetID() uint32 { + return 125 +} diff --git a/pkg/dialects/avssuas/msg_protocol_version.go b/pkg/dialects/avssuas/msg_protocol_version.go new file mode 100644 index 000000000..11b8d2a41 --- /dev/null +++ b/pkg/dialects/avssuas/msg_protocol_version.go @@ -0,0 +1,22 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package avssuas + +// Version and capability of protocol version. This message can be requested with MAV_CMD_REQUEST_MESSAGE and is used as part of the handshaking to establish which MAVLink version should be used on the network. Every node should respond to a request for PROTOCOL_VERSION to enable the handshaking. Library implementers should consider adding this into the default decoding state machine to allow the protocol core to respond directly. +type MessageProtocolVersion struct { + // Currently active MAVLink version number * 100: v1.0 is 100, v2.0 is 200, etc. + Version uint16 + // Minimum MAVLink version supported + MinVersion uint16 + // Maximum MAVLink version supported (set to the same value as version by default) + MaxVersion uint16 + // The first 8 bytes (not characters printed in hex!) of the git hash. + SpecVersionHash [8]uint8 + // The first 8 bytes (not characters printed in hex!) of the git hash. + LibraryVersionHash [8]uint8 +} + +// GetID implements the msg.Message interface. +func (*MessageProtocolVersion) GetID() uint32 { + return 300 +} diff --git a/pkg/dialects/avssuas/msg_radio_status.go b/pkg/dialects/avssuas/msg_radio_status.go new file mode 100644 index 000000000..a3c9cf11f --- /dev/null +++ b/pkg/dialects/avssuas/msg_radio_status.go @@ -0,0 +1,26 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package avssuas + +// Status generated by radio and injected into MAVLink stream. +type MessageRadioStatus struct { + // Local (message sender) recieved signal strength indication in device-dependent units/scale. Values: [0-254], UINT8_MAX: invalid/unknown. + Rssi uint8 + // Remote (message receiver) signal strength indication in device-dependent units/scale. Values: [0-254], UINT8_MAX: invalid/unknown. + Remrssi uint8 + // Remaining free transmitter buffer space. + Txbuf uint8 + // Local background noise level. These are device dependent RSSI values (scale as approx 2x dB on SiK radios). Values: [0-254], UINT8_MAX: invalid/unknown. + Noise uint8 + // Remote background noise level. These are device dependent RSSI values (scale as approx 2x dB on SiK radios). Values: [0-254], UINT8_MAX: invalid/unknown. + Remnoise uint8 + // Count of radio packet receive errors (since boot). + Rxerrors uint16 + // Count of error corrected radio packets (since boot). + Fixed uint16 +} + +// GetID implements the msg.Message interface. +func (*MessageRadioStatus) GetID() uint32 { + return 109 +} diff --git a/pkg/dialects/avssuas/msg_raw_imu.go b/pkg/dialects/avssuas/msg_raw_imu.go new file mode 100644 index 000000000..e10cc2910 --- /dev/null +++ b/pkg/dialects/avssuas/msg_raw_imu.go @@ -0,0 +1,36 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package avssuas + +// The RAW IMU readings for a 9DOF sensor, which is identified by the id (default IMU1). This message should always contain the true raw values without any scaling to allow data capture and system debugging. +type MessageRawImu struct { + // Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. + TimeUsec uint64 + // X acceleration (raw) + Xacc int16 + // Y acceleration (raw) + Yacc int16 + // Z acceleration (raw) + Zacc int16 + // Angular speed around X axis (raw) + Xgyro int16 + // Angular speed around Y axis (raw) + Ygyro int16 + // Angular speed around Z axis (raw) + Zgyro int16 + // X Magnetic field (raw) + Xmag int16 + // Y Magnetic field (raw) + Ymag int16 + // Z Magnetic field (raw) + Zmag int16 + // Id. Ids are numbered from 0 and map to IMUs numbered from 1 (e.g. IMU1 will have a message with id=0) + Id uint8 `mavext:"true"` + // Temperature, 0: IMU does not provide temperature values. If the IMU is at 0C it must send 1 (0.01C). + Temperature int16 `mavext:"true"` +} + +// GetID implements the msg.Message interface. +func (*MessageRawImu) GetID() uint32 { + return 27 +} diff --git a/pkg/dialects/avssuas/msg_raw_pressure.go b/pkg/dialects/avssuas/msg_raw_pressure.go new file mode 100644 index 000000000..399230727 --- /dev/null +++ b/pkg/dialects/avssuas/msg_raw_pressure.go @@ -0,0 +1,22 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package avssuas + +// The RAW pressure readings for the typical setup of one absolute pressure and one differential pressure sensor. The sensor values should be the raw, UNSCALED ADC values. +type MessageRawPressure struct { + // Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. + TimeUsec uint64 + // Absolute pressure (raw) + PressAbs int16 + // Differential pressure 1 (raw, 0 if nonexistent) + PressDiff1 int16 + // Differential pressure 2 (raw, 0 if nonexistent) + PressDiff2 int16 + // Raw Temperature measurement (raw) + Temperature int16 +} + +// GetID implements the msg.Message interface. +func (*MessageRawPressure) GetID() uint32 { + return 28 +} diff --git a/pkg/dialects/avssuas/msg_raw_rpm.go b/pkg/dialects/avssuas/msg_raw_rpm.go new file mode 100644 index 000000000..0d735f6b7 --- /dev/null +++ b/pkg/dialects/avssuas/msg_raw_rpm.go @@ -0,0 +1,16 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package avssuas + +// RPM sensor data message. +type MessageRawRpm struct { + // Index of this RPM sensor (0-indexed) + Index uint8 + // Indicated rate + Frequency float32 +} + +// GetID implements the msg.Message interface. +func (*MessageRawRpm) GetID() uint32 { + return 339 +} diff --git a/pkg/dialects/avssuas/msg_rc_channels.go b/pkg/dialects/avssuas/msg_rc_channels.go new file mode 100644 index 000000000..7f123db72 --- /dev/null +++ b/pkg/dialects/avssuas/msg_rc_channels.go @@ -0,0 +1,54 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package avssuas + +// The PPM values of the RC channels received. The standard PPM modulation is as follows: 1000 microseconds: 0%, 2000 microseconds: 100%. A value of UINT16_MAX implies the channel is unused. Individual receivers/transmitters might violate this specification. +type MessageRcChannels struct { + // Timestamp (time since system boot). + TimeBootMs uint32 + // Total number of RC channels being received. This can be larger than 18, indicating that more channels are available but not given in this message. This value should be 0 when no RC channels are available. + Chancount uint8 + // RC channel 1 value. + Chan1Raw uint16 + // RC channel 2 value. + Chan2Raw uint16 + // RC channel 3 value. + Chan3Raw uint16 + // RC channel 4 value. + Chan4Raw uint16 + // RC channel 5 value. + Chan5Raw uint16 + // RC channel 6 value. + Chan6Raw uint16 + // RC channel 7 value. + Chan7Raw uint16 + // RC channel 8 value. + Chan8Raw uint16 + // RC channel 9 value. + Chan9Raw uint16 + // RC channel 10 value. + Chan10Raw uint16 + // RC channel 11 value. + Chan11Raw uint16 + // RC channel 12 value. + Chan12Raw uint16 + // RC channel 13 value. + Chan13Raw uint16 + // RC channel 14 value. + Chan14Raw uint16 + // RC channel 15 value. + Chan15Raw uint16 + // RC channel 16 value. + Chan16Raw uint16 + // RC channel 17 value. + Chan17Raw uint16 + // RC channel 18 value. + Chan18Raw uint16 + // Receive signal strength indicator in device-dependent units/scale. Values: [0-254], UINT8_MAX: invalid/unknown. + Rssi uint8 +} + +// GetID implements the msg.Message interface. +func (*MessageRcChannels) GetID() uint32 { + return 65 +} diff --git a/pkg/dialects/avssuas/msg_rc_channels_override.go b/pkg/dialects/avssuas/msg_rc_channels_override.go new file mode 100644 index 000000000..5ac870d25 --- /dev/null +++ b/pkg/dialects/avssuas/msg_rc_channels_override.go @@ -0,0 +1,52 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package avssuas + +// The RAW values of the RC channels sent to the MAV to override info received from the RC radio. The standard PPM modulation is as follows: 1000 microseconds: 0%, 2000 microseconds: 100%. Individual receivers/transmitters might violate this specification. Note carefully the semantic differences between the first 8 channels and the subsequent channels +type MessageRcChannelsOverride struct { + // System ID + TargetSystem uint8 + // Component ID + TargetComponent uint8 + // RC channel 1 value. A value of UINT16_MAX means to ignore this field. A value of 0 means to release this channel back to the RC radio. + Chan1Raw uint16 + // RC channel 2 value. A value of UINT16_MAX means to ignore this field. A value of 0 means to release this channel back to the RC radio. + Chan2Raw uint16 + // RC channel 3 value. A value of UINT16_MAX means to ignore this field. A value of 0 means to release this channel back to the RC radio. + Chan3Raw uint16 + // RC channel 4 value. A value of UINT16_MAX means to ignore this field. A value of 0 means to release this channel back to the RC radio. + Chan4Raw uint16 + // RC channel 5 value. A value of UINT16_MAX means to ignore this field. A value of 0 means to release this channel back to the RC radio. + Chan5Raw uint16 + // RC channel 6 value. A value of UINT16_MAX means to ignore this field. A value of 0 means to release this channel back to the RC radio. + Chan6Raw uint16 + // RC channel 7 value. A value of UINT16_MAX means to ignore this field. A value of 0 means to release this channel back to the RC radio. + Chan7Raw uint16 + // RC channel 8 value. A value of UINT16_MAX means to ignore this field. A value of 0 means to release this channel back to the RC radio. + Chan8Raw uint16 + // RC channel 9 value. A value of 0 or UINT16_MAX means to ignore this field. A value of UINT16_MAX-1 means to release this channel back to the RC radio. + Chan9Raw uint16 `mavext:"true"` + // RC channel 10 value. A value of 0 or UINT16_MAX means to ignore this field. A value of UINT16_MAX-1 means to release this channel back to the RC radio. + Chan10Raw uint16 `mavext:"true"` + // RC channel 11 value. A value of 0 or UINT16_MAX means to ignore this field. A value of UINT16_MAX-1 means to release this channel back to the RC radio. + Chan11Raw uint16 `mavext:"true"` + // RC channel 12 value. A value of 0 or UINT16_MAX means to ignore this field. A value of UINT16_MAX-1 means to release this channel back to the RC radio. + Chan12Raw uint16 `mavext:"true"` + // RC channel 13 value. A value of 0 or UINT16_MAX means to ignore this field. A value of UINT16_MAX-1 means to release this channel back to the RC radio. + Chan13Raw uint16 `mavext:"true"` + // RC channel 14 value. A value of 0 or UINT16_MAX means to ignore this field. A value of UINT16_MAX-1 means to release this channel back to the RC radio. + Chan14Raw uint16 `mavext:"true"` + // RC channel 15 value. A value of 0 or UINT16_MAX means to ignore this field. A value of UINT16_MAX-1 means to release this channel back to the RC radio. + Chan15Raw uint16 `mavext:"true"` + // RC channel 16 value. A value of 0 or UINT16_MAX means to ignore this field. A value of UINT16_MAX-1 means to release this channel back to the RC radio. + Chan16Raw uint16 `mavext:"true"` + // RC channel 17 value. A value of 0 or UINT16_MAX means to ignore this field. A value of UINT16_MAX-1 means to release this channel back to the RC radio. + Chan17Raw uint16 `mavext:"true"` + // RC channel 18 value. A value of 0 or UINT16_MAX means to ignore this field. A value of UINT16_MAX-1 means to release this channel back to the RC radio. + Chan18Raw uint16 `mavext:"true"` +} + +// GetID implements the msg.Message interface. +func (*MessageRcChannelsOverride) GetID() uint32 { + return 70 +} diff --git a/pkg/dialects/avssuas/msg_rc_channels_raw.go b/pkg/dialects/avssuas/msg_rc_channels_raw.go new file mode 100644 index 000000000..df246eace --- /dev/null +++ b/pkg/dialects/avssuas/msg_rc_channels_raw.go @@ -0,0 +1,34 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package avssuas + +// The RAW values of the RC channels received. The standard PPM modulation is as follows: 1000 microseconds: 0%, 2000 microseconds: 100%. A value of UINT16_MAX implies the channel is unused. Individual receivers/transmitters might violate this specification. +type MessageRcChannelsRaw struct { + // Timestamp (time since system boot). + TimeBootMs uint32 + // Servo output port (set of 8 outputs = 1 port). Flight stacks running on Pixhawk should use: 0 = MAIN, 1 = AUX. + Port uint8 + // RC channel 1 value. + Chan1Raw uint16 + // RC channel 2 value. + Chan2Raw uint16 + // RC channel 3 value. + Chan3Raw uint16 + // RC channel 4 value. + Chan4Raw uint16 + // RC channel 5 value. + Chan5Raw uint16 + // RC channel 6 value. + Chan6Raw uint16 + // RC channel 7 value. + Chan7Raw uint16 + // RC channel 8 value. + Chan8Raw uint16 + // Receive signal strength indicator in device-dependent units/scale. Values: [0-254], UINT8_MAX: invalid/unknown. + Rssi uint8 +} + +// GetID implements the msg.Message interface. +func (*MessageRcChannelsRaw) GetID() uint32 { + return 35 +} diff --git a/pkg/dialects/avssuas/msg_rc_channels_scaled.go b/pkg/dialects/avssuas/msg_rc_channels_scaled.go new file mode 100644 index 000000000..2c933f15e --- /dev/null +++ b/pkg/dialects/avssuas/msg_rc_channels_scaled.go @@ -0,0 +1,34 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package avssuas + +// The scaled values of the RC channels received: (-100%) -10000, (0%) 0, (100%) 10000. Channels that are inactive should be set to UINT16_MAX. +type MessageRcChannelsScaled struct { + // Timestamp (time since system boot). + TimeBootMs uint32 + // Servo output port (set of 8 outputs = 1 port). Flight stacks running on Pixhawk should use: 0 = MAIN, 1 = AUX. + Port uint8 + // RC channel 1 value scaled. + Chan1Scaled int16 + // RC channel 2 value scaled. + Chan2Scaled int16 + // RC channel 3 value scaled. + Chan3Scaled int16 + // RC channel 4 value scaled. + Chan4Scaled int16 + // RC channel 5 value scaled. + Chan5Scaled int16 + // RC channel 6 value scaled. + Chan6Scaled int16 + // RC channel 7 value scaled. + Chan7Scaled int16 + // RC channel 8 value scaled. + Chan8Scaled int16 + // Receive signal strength indicator in device-dependent units/scale. Values: [0-254], UINT8_MAX: invalid/unknown. + Rssi uint8 +} + +// GetID implements the msg.Message interface. +func (*MessageRcChannelsScaled) GetID() uint32 { + return 34 +} diff --git a/pkg/dialects/avssuas/msg_request_data_stream.go b/pkg/dialects/avssuas/msg_request_data_stream.go new file mode 100644 index 000000000..e8c73fd42 --- /dev/null +++ b/pkg/dialects/avssuas/msg_request_data_stream.go @@ -0,0 +1,22 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package avssuas + +// Request a data stream. +type MessageRequestDataStream struct { + // The target requested to send the message stream. + TargetSystem uint8 + // The target requested to send the message stream. + TargetComponent uint8 + // The ID of the requested data stream + ReqStreamId uint8 + // The requested message rate + ReqMessageRate uint16 + // 1 to start sending, 0 to stop sending. + StartStop uint8 +} + +// GetID implements the msg.Message interface. +func (*MessageRequestDataStream) GetID() uint32 { + return 66 +} diff --git a/pkg/dialects/avssuas/msg_request_event.go b/pkg/dialects/avssuas/msg_request_event.go new file mode 100644 index 000000000..cccb0e7be --- /dev/null +++ b/pkg/dialects/avssuas/msg_request_event.go @@ -0,0 +1,20 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package avssuas + +// Request one or more events to be (re-)sent. If first_sequence==last_sequence, only a single event is requested. Note that first_sequence can be larger than last_sequence (because the sequence number can wrap). Each sequence will trigger an EVENT or EVENT_ERROR response. +type MessageRequestEvent struct { + // System ID + TargetSystem uint8 + // Component ID + TargetComponent uint8 + // First sequence number of the requested event. + FirstSequence uint16 + // Last sequence number of the requested event. + LastSequence uint16 +} + +// GetID implements the msg.Message interface. +func (*MessageRequestEvent) GetID() uint32 { + return 412 +} diff --git a/pkg/dialects/avssuas/msg_resource_request.go b/pkg/dialects/avssuas/msg_resource_request.go new file mode 100644 index 000000000..b9c378f7b --- /dev/null +++ b/pkg/dialects/avssuas/msg_resource_request.go @@ -0,0 +1,22 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package avssuas + +// The autopilot is requesting a resource (file, binary, other type of data) +type MessageResourceRequest struct { + // Request ID. This ID should be re-used when sending back URI contents + RequestId uint8 + // The type of requested URI. 0 = a file via URL. 1 = a UAVCAN binary + UriType uint8 + // The requested unique resource identifier (URI). It is not necessarily a straight domain name (depends on the URI type enum) + Uri [120]uint8 + // The way the autopilot wants to receive the URI. 0 = MAVLink FTP. 1 = binary stream. + TransferType uint8 + // The storage path the autopilot wants the URI to be stored in. Will only be valid if the transfer_type has a storage associated (e.g. MAVLink FTP). + Storage [120]uint8 +} + +// GetID implements the msg.Message interface. +func (*MessageResourceRequest) GetID() uint32 { + return 142 +} diff --git a/pkg/dialects/avssuas/msg_response_event_error.go b/pkg/dialects/avssuas/msg_response_event_error.go new file mode 100644 index 000000000..ab8ab6a9b --- /dev/null +++ b/pkg/dialects/avssuas/msg_response_event_error.go @@ -0,0 +1,22 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package avssuas + +// Response to a REQUEST_EVENT in case of an error (e.g. the event is not available anymore). +type MessageResponseEventError struct { + // System ID + TargetSystem uint8 + // Component ID + TargetComponent uint8 + // Sequence number. + Sequence uint16 + // Oldest Sequence number that is still available after the sequence set in REQUEST_EVENT. + SequenceOldestAvailable uint16 + // Error reason. + Reason MAV_EVENT_ERROR_REASON `mavenum:"uint8"` +} + +// GetID implements the msg.Message interface. +func (*MessageResponseEventError) GetID() uint32 { + return 413 +} diff --git a/pkg/dialects/avssuas/msg_safety_allowed_area.go b/pkg/dialects/avssuas/msg_safety_allowed_area.go new file mode 100644 index 000000000..5b541a347 --- /dev/null +++ b/pkg/dialects/avssuas/msg_safety_allowed_area.go @@ -0,0 +1,26 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package avssuas + +// Read out the safety zone the MAV currently assumes. +type MessageSafetyAllowedArea struct { + // Coordinate frame. Can be either global, GPS, right-handed with Z axis up or local, right handed, Z axis down. + Frame MAV_FRAME `mavenum:"uint8"` + // x position 1 / Latitude 1 + P1x float32 + // y position 1 / Longitude 1 + P1y float32 + // z position 1 / Altitude 1 + P1z float32 + // x position 2 / Latitude 2 + P2x float32 + // y position 2 / Longitude 2 + P2y float32 + // z position 2 / Altitude 2 + P2z float32 +} + +// GetID implements the msg.Message interface. +func (*MessageSafetyAllowedArea) GetID() uint32 { + return 55 +} diff --git a/pkg/dialects/avssuas/msg_safety_set_allowed_area.go b/pkg/dialects/avssuas/msg_safety_set_allowed_area.go new file mode 100644 index 000000000..7128d972f --- /dev/null +++ b/pkg/dialects/avssuas/msg_safety_set_allowed_area.go @@ -0,0 +1,30 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package avssuas + +// Set a safety zone (volume), which is defined by two corners of a cube. This message can be used to tell the MAV which setpoints/waypoints to accept and which to reject. Safety areas are often enforced by national or competition regulations. +type MessageSafetySetAllowedArea struct { + // System ID + TargetSystem uint8 + // Component ID + TargetComponent uint8 + // Coordinate frame. Can be either global, GPS, right-handed with Z axis up or local, right handed, Z axis down. + Frame MAV_FRAME `mavenum:"uint8"` + // x position 1 / Latitude 1 + P1x float32 + // y position 1 / Longitude 1 + P1y float32 + // z position 1 / Altitude 1 + P1z float32 + // x position 2 / Latitude 2 + P2x float32 + // y position 2 / Longitude 2 + P2y float32 + // z position 2 / Altitude 2 + P2z float32 +} + +// GetID implements the msg.Message interface. +func (*MessageSafetySetAllowedArea) GetID() uint32 { + return 54 +} diff --git a/pkg/dialects/avssuas/msg_scaled_imu.go b/pkg/dialects/avssuas/msg_scaled_imu.go new file mode 100644 index 000000000..9d7da8a35 --- /dev/null +++ b/pkg/dialects/avssuas/msg_scaled_imu.go @@ -0,0 +1,34 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package avssuas + +// The RAW IMU readings for the usual 9DOF sensor setup. This message should contain the scaled values to the described units +type MessageScaledImu struct { + // Timestamp (time since system boot). + TimeBootMs uint32 + // X acceleration + Xacc int16 + // Y acceleration + Yacc int16 + // Z acceleration + Zacc int16 + // Angular speed around X axis + Xgyro int16 + // Angular speed around Y axis + Ygyro int16 + // Angular speed around Z axis + Zgyro int16 + // X Magnetic field + Xmag int16 + // Y Magnetic field + Ymag int16 + // Z Magnetic field + Zmag int16 + // Temperature, 0: IMU does not provide temperature values. If the IMU is at 0C it must send 1 (0.01C). + Temperature int16 `mavext:"true"` +} + +// GetID implements the msg.Message interface. +func (*MessageScaledImu) GetID() uint32 { + return 26 +} diff --git a/pkg/dialects/avssuas/msg_scaled_imu2.go b/pkg/dialects/avssuas/msg_scaled_imu2.go new file mode 100644 index 000000000..47880d583 --- /dev/null +++ b/pkg/dialects/avssuas/msg_scaled_imu2.go @@ -0,0 +1,34 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package avssuas + +// The RAW IMU readings for secondary 9DOF sensor setup. This message should contain the scaled values to the described units +type MessageScaledImu2 struct { + // Timestamp (time since system boot). + TimeBootMs uint32 + // X acceleration + Xacc int16 + // Y acceleration + Yacc int16 + // Z acceleration + Zacc int16 + // Angular speed around X axis + Xgyro int16 + // Angular speed around Y axis + Ygyro int16 + // Angular speed around Z axis + Zgyro int16 + // X Magnetic field + Xmag int16 + // Y Magnetic field + Ymag int16 + // Z Magnetic field + Zmag int16 + // Temperature, 0: IMU does not provide temperature values. If the IMU is at 0C it must send 1 (0.01C). + Temperature int16 `mavext:"true"` +} + +// GetID implements the msg.Message interface. +func (*MessageScaledImu2) GetID() uint32 { + return 116 +} diff --git a/pkg/dialects/avssuas/msg_scaled_imu3.go b/pkg/dialects/avssuas/msg_scaled_imu3.go new file mode 100644 index 000000000..fc4620ba5 --- /dev/null +++ b/pkg/dialects/avssuas/msg_scaled_imu3.go @@ -0,0 +1,34 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package avssuas + +// The RAW IMU readings for 3rd 9DOF sensor setup. This message should contain the scaled values to the described units +type MessageScaledImu3 struct { + // Timestamp (time since system boot). + TimeBootMs uint32 + // X acceleration + Xacc int16 + // Y acceleration + Yacc int16 + // Z acceleration + Zacc int16 + // Angular speed around X axis + Xgyro int16 + // Angular speed around Y axis + Ygyro int16 + // Angular speed around Z axis + Zgyro int16 + // X Magnetic field + Xmag int16 + // Y Magnetic field + Ymag int16 + // Z Magnetic field + Zmag int16 + // Temperature, 0: IMU does not provide temperature values. If the IMU is at 0C it must send 1 (0.01C). + Temperature int16 `mavext:"true"` +} + +// GetID implements the msg.Message interface. +func (*MessageScaledImu3) GetID() uint32 { + return 129 +} diff --git a/pkg/dialects/avssuas/msg_scaled_pressure.go b/pkg/dialects/avssuas/msg_scaled_pressure.go new file mode 100644 index 000000000..ed798c3e3 --- /dev/null +++ b/pkg/dialects/avssuas/msg_scaled_pressure.go @@ -0,0 +1,22 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package avssuas + +// The pressure readings for the typical setup of one absolute and differential pressure sensor. The units are as specified in each field. +type MessageScaledPressure struct { + // Timestamp (time since system boot). + TimeBootMs uint32 + // Absolute pressure + PressAbs float32 + // Differential pressure 1 + PressDiff float32 + // Absolute pressure temperature + Temperature int16 + // Differential pressure temperature (0, if not available). Report values of 0 (or 1) as 1 cdegC. + TemperaturePressDiff int16 `mavext:"true"` +} + +// GetID implements the msg.Message interface. +func (*MessageScaledPressure) GetID() uint32 { + return 29 +} diff --git a/pkg/dialects/avssuas/msg_scaled_pressure2.go b/pkg/dialects/avssuas/msg_scaled_pressure2.go new file mode 100644 index 000000000..5998489e6 --- /dev/null +++ b/pkg/dialects/avssuas/msg_scaled_pressure2.go @@ -0,0 +1,22 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package avssuas + +// Barometer readings for 2nd barometer +type MessageScaledPressure2 struct { + // Timestamp (time since system boot). + TimeBootMs uint32 + // Absolute pressure + PressAbs float32 + // Differential pressure + PressDiff float32 + // Absolute pressure temperature + Temperature int16 + // Differential pressure temperature (0, if not available). Report values of 0 (or 1) as 1 cdegC. + TemperaturePressDiff int16 `mavext:"true"` +} + +// GetID implements the msg.Message interface. +func (*MessageScaledPressure2) GetID() uint32 { + return 137 +} diff --git a/pkg/dialects/avssuas/msg_scaled_pressure3.go b/pkg/dialects/avssuas/msg_scaled_pressure3.go new file mode 100644 index 000000000..2eb32a8aa --- /dev/null +++ b/pkg/dialects/avssuas/msg_scaled_pressure3.go @@ -0,0 +1,22 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package avssuas + +// Barometer readings for 3rd barometer +type MessageScaledPressure3 struct { + // Timestamp (time since system boot). + TimeBootMs uint32 + // Absolute pressure + PressAbs float32 + // Differential pressure + PressDiff float32 + // Absolute pressure temperature + Temperature int16 + // Differential pressure temperature (0, if not available). Report values of 0 (or 1) as 1 cdegC. + TemperaturePressDiff int16 `mavext:"true"` +} + +// GetID implements the msg.Message interface. +func (*MessageScaledPressure3) GetID() uint32 { + return 143 +} diff --git a/pkg/dialects/avssuas/msg_serial_control.go b/pkg/dialects/avssuas/msg_serial_control.go new file mode 100644 index 000000000..7a051442e --- /dev/null +++ b/pkg/dialects/avssuas/msg_serial_control.go @@ -0,0 +1,28 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package avssuas + +// Control a serial port. This can be used for raw access to an onboard serial peripheral such as a GPS or telemetry radio. It is designed to make it possible to update the devices firmware via MAVLink messages or change the devices settings. A message with zero bytes can be used to change just the baudrate. +type MessageSerialControl struct { + // Serial control device type. + Device SERIAL_CONTROL_DEV `mavenum:"uint8"` + // Bitmap of serial control flags. + Flags SERIAL_CONTROL_FLAG `mavenum:"uint8"` + // Timeout for reply data + Timeout uint16 + // Baudrate of transfer. Zero means no change. + Baudrate uint32 + // how many bytes in this transfer + Count uint8 + // serial data + Data [70]uint8 + // System ID + TargetSystem uint8 `mavext:"true"` + // Component ID + TargetComponent uint8 `mavext:"true"` +} + +// GetID implements the msg.Message interface. +func (*MessageSerialControl) GetID() uint32 { + return 126 +} diff --git a/pkg/dialects/avssuas/msg_servo_output_raw.go b/pkg/dialects/avssuas/msg_servo_output_raw.go new file mode 100644 index 000000000..d9caefcc6 --- /dev/null +++ b/pkg/dialects/avssuas/msg_servo_output_raw.go @@ -0,0 +1,48 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package avssuas + +// Superseded by ACTUATOR_OUTPUT_STATUS. The RAW values of the servo outputs (for RC input from the remote, use the RC_CHANNELS messages). The standard PPM modulation is as follows: 1000 microseconds: 0%, 2000 microseconds: 100%. +type MessageServoOutputRaw struct { + // Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. + TimeUsec uint32 + // Servo output port (set of 8 outputs = 1 port). Flight stacks running on Pixhawk should use: 0 = MAIN, 1 = AUX. + Port uint8 + // Servo output 1 value + Servo1Raw uint16 + // Servo output 2 value + Servo2Raw uint16 + // Servo output 3 value + Servo3Raw uint16 + // Servo output 4 value + Servo4Raw uint16 + // Servo output 5 value + Servo5Raw uint16 + // Servo output 6 value + Servo6Raw uint16 + // Servo output 7 value + Servo7Raw uint16 + // Servo output 8 value + Servo8Raw uint16 + // Servo output 9 value + Servo9Raw uint16 `mavext:"true"` + // Servo output 10 value + Servo10Raw uint16 `mavext:"true"` + // Servo output 11 value + Servo11Raw uint16 `mavext:"true"` + // Servo output 12 value + Servo12Raw uint16 `mavext:"true"` + // Servo output 13 value + Servo13Raw uint16 `mavext:"true"` + // Servo output 14 value + Servo14Raw uint16 `mavext:"true"` + // Servo output 15 value + Servo15Raw uint16 `mavext:"true"` + // Servo output 16 value + Servo16Raw uint16 `mavext:"true"` +} + +// GetID implements the msg.Message interface. +func (*MessageServoOutputRaw) GetID() uint32 { + return 36 +} diff --git a/pkg/dialects/avssuas/msg_set_actuator_control_target.go b/pkg/dialects/avssuas/msg_set_actuator_control_target.go new file mode 100644 index 000000000..3b485757c --- /dev/null +++ b/pkg/dialects/avssuas/msg_set_actuator_control_target.go @@ -0,0 +1,22 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package avssuas + +// Set the vehicle attitude and body angular rates. +type MessageSetActuatorControlTarget struct { + // Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. + TimeUsec uint64 + // Actuator group. The "_mlx" indicates this is a multi-instance message and a MAVLink parser should use this field to difference between instances. + GroupMlx uint8 + // System ID + TargetSystem uint8 + // Component ID + TargetComponent uint8 + // Actuator controls. Normed to -1..+1 where 0 is neutral position. Throttle for single rotation direction motors is 0..1, negative range for reverse direction. Standard mapping for attitude controls (group 0): (index 0-7): roll, pitch, yaw, throttle, flaps, spoilers, airbrakes, landing gear. Load a pass-through mixer to repurpose them as generic outputs. + Controls [8]float32 +} + +// GetID implements the msg.Message interface. +func (*MessageSetActuatorControlTarget) GetID() uint32 { + return 139 +} diff --git a/pkg/dialects/avssuas/msg_set_attitude_target.go b/pkg/dialects/avssuas/msg_set_attitude_target.go new file mode 100644 index 000000000..9bb013f21 --- /dev/null +++ b/pkg/dialects/avssuas/msg_set_attitude_target.go @@ -0,0 +1,32 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package avssuas + +// Sets a desired vehicle attitude. Used by an external controller to command the vehicle (manual controller or other system). +type MessageSetAttitudeTarget struct { + // Timestamp (time since system boot). + TimeBootMs uint32 + // System ID + TargetSystem uint8 + // Component ID + TargetComponent uint8 + // Bitmap to indicate which dimensions should be ignored by the vehicle. + TypeMask ATTITUDE_TARGET_TYPEMASK `mavenum:"uint8"` + // Attitude quaternion (w, x, y, z order, zero-rotation is 1, 0, 0, 0) + Q [4]float32 + // Body roll rate + BodyRollRate float32 + // Body pitch rate + BodyPitchRate float32 + // Body yaw rate + BodyYawRate float32 + // Collective thrust, normalized to 0 .. 1 (-1 .. 1 for vehicles capable of reverse trust) + Thrust float32 + // 3D thrust setpoint in the body NED frame, normalized to -1 .. 1 + ThrustBody [3]float32 `mavext:"true"` +} + +// GetID implements the msg.Message interface. +func (*MessageSetAttitudeTarget) GetID() uint32 { + return 82 +} diff --git a/pkg/dialects/avssuas/msg_set_gps_global_origin.go b/pkg/dialects/avssuas/msg_set_gps_global_origin.go new file mode 100644 index 000000000..ad2235ffe --- /dev/null +++ b/pkg/dialects/avssuas/msg_set_gps_global_origin.go @@ -0,0 +1,22 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package avssuas + +// Sets the GPS co-ordinates of the vehicle local origin (0,0,0) position. Vehicle should emit GPS_GLOBAL_ORIGIN irrespective of whether the origin is changed. This enables transform between the local coordinate frame and the global (GPS) coordinate frame, which may be necessary when (for example) indoor and outdoor settings are connected and the MAV should move from in- to outdoor. +type MessageSetGpsGlobalOrigin struct { + // System ID + TargetSystem uint8 + // Latitude (WGS84) + Latitude int32 + // Longitude (WGS84) + Longitude int32 + // Altitude (MSL). Positive for up. + Altitude int32 + // Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. + TimeUsec uint64 `mavext:"true"` +} + +// GetID implements the msg.Message interface. +func (*MessageSetGpsGlobalOrigin) GetID() uint32 { + return 48 +} diff --git a/pkg/dialects/avssuas/msg_set_home_position.go b/pkg/dialects/avssuas/msg_set_home_position.go new file mode 100644 index 000000000..26335a308 --- /dev/null +++ b/pkg/dialects/avssuas/msg_set_home_position.go @@ -0,0 +1,36 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package avssuas + +// The position the system will return to and land on. The position is set automatically by the system during the takeoff in case it was not explicitly set by the operator before or after. The global and local positions encode the position in the respective coordinate frames, while the q parameter encodes the orientation of the surface. Under normal conditions it describes the heading and terrain slope, which can be used by the aircraft to adjust the approach. The approach 3D vector describes the point to which the system should fly in normal flight mode and then perform a landing sequence along the vector. +type MessageSetHomePosition struct { + // System ID. + TargetSystem uint8 + // Latitude (WGS84) + Latitude int32 + // Longitude (WGS84) + Longitude int32 + // Altitude (MSL). Positive for up. + Altitude int32 + // Local X position of this position in the local coordinate frame + X float32 + // Local Y position of this position in the local coordinate frame + Y float32 + // Local Z position of this position in the local coordinate frame + Z float32 + // World to surface normal and heading transformation of the takeoff position. Used to indicate the heading and slope of the ground + Q [4]float32 + // Local X position of the end of the approach vector. Multicopters should set this position based on their takeoff path. Grass-landing fixed wing aircraft should set it the same way as multicopters. Runway-landing fixed wing aircraft should set it to the opposite direction of the takeoff, assuming the takeoff happened from the threshold / touchdown zone. + ApproachX float32 + // Local Y position of the end of the approach vector. Multicopters should set this position based on their takeoff path. Grass-landing fixed wing aircraft should set it the same way as multicopters. Runway-landing fixed wing aircraft should set it to the opposite direction of the takeoff, assuming the takeoff happened from the threshold / touchdown zone. + ApproachY float32 + // Local Z position of the end of the approach vector. Multicopters should set this position based on their takeoff path. Grass-landing fixed wing aircraft should set it the same way as multicopters. Runway-landing fixed wing aircraft should set it to the opposite direction of the takeoff, assuming the takeoff happened from the threshold / touchdown zone. + ApproachZ float32 + // Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. + TimeUsec uint64 `mavext:"true"` +} + +// GetID implements the msg.Message interface. +func (*MessageSetHomePosition) GetID() uint32 { + return 243 +} diff --git a/pkg/dialects/avssuas/msg_set_mode.go b/pkg/dialects/avssuas/msg_set_mode.go new file mode 100644 index 000000000..93c0ec7a7 --- /dev/null +++ b/pkg/dialects/avssuas/msg_set_mode.go @@ -0,0 +1,18 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package avssuas + +// Set the system mode, as defined by enum MAV_MODE. There is no target component id as the mode is by definition for the overall aircraft, not only for one component. +type MessageSetMode struct { + // The system setting the mode + TargetSystem uint8 + // The new base mode. + BaseMode MAV_MODE `mavenum:"uint8"` + // The new autopilot-specific mode. This field can be ignored by an autopilot. + CustomMode uint32 +} + +// GetID implements the msg.Message interface. +func (*MessageSetMode) GetID() uint32 { + return 11 +} diff --git a/pkg/dialects/avssuas/msg_set_position_target_global_int.go b/pkg/dialects/avssuas/msg_set_position_target_global_int.go new file mode 100644 index 000000000..8f55b7a52 --- /dev/null +++ b/pkg/dialects/avssuas/msg_set_position_target_global_int.go @@ -0,0 +1,44 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package avssuas + +// Sets a desired vehicle position, velocity, and/or acceleration in a global coordinate system (WGS84). Used by an external controller to command the vehicle (manual controller or other system). +type MessageSetPositionTargetGlobalInt struct { + // Timestamp (time since system boot). The rationale for the timestamp in the setpoint is to allow the system to compensate for the transport delay of the setpoint. This allows the system to compensate processing latency. + TimeBootMs uint32 + // System ID + TargetSystem uint8 + // Component ID + TargetComponent uint8 + // Valid options are: MAV_FRAME_GLOBAL_INT = 5, MAV_FRAME_GLOBAL_RELATIVE_ALT_INT = 6, MAV_FRAME_GLOBAL_TERRAIN_ALT_INT = 11 + CoordinateFrame MAV_FRAME `mavenum:"uint8"` + // Bitmap to indicate which dimensions should be ignored by the vehicle. + TypeMask POSITION_TARGET_TYPEMASK `mavenum:"uint16"` + // X Position in WGS84 frame + LatInt int32 + // Y Position in WGS84 frame + LonInt int32 + // Altitude (MSL, Relative to home, or AGL - depending on frame) + Alt float32 + // X velocity in NED frame + Vx float32 + // Y velocity in NED frame + Vy float32 + // Z velocity in NED frame + Vz float32 + // X acceleration or force (if bit 10 of type_mask is set) in NED frame in meter / s^2 or N + Afx float32 + // Y acceleration or force (if bit 10 of type_mask is set) in NED frame in meter / s^2 or N + Afy float32 + // Z acceleration or force (if bit 10 of type_mask is set) in NED frame in meter / s^2 or N + Afz float32 + // yaw setpoint + Yaw float32 + // yaw rate setpoint + YawRate float32 +} + +// GetID implements the msg.Message interface. +func (*MessageSetPositionTargetGlobalInt) GetID() uint32 { + return 86 +} diff --git a/pkg/dialects/avssuas/msg_set_position_target_local_ned.go b/pkg/dialects/avssuas/msg_set_position_target_local_ned.go new file mode 100644 index 000000000..80fbd914d --- /dev/null +++ b/pkg/dialects/avssuas/msg_set_position_target_local_ned.go @@ -0,0 +1,44 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package avssuas + +// Sets a desired vehicle position in a local north-east-down coordinate frame. Used by an external controller to command the vehicle (manual controller or other system). +type MessageSetPositionTargetLocalNed struct { + // Timestamp (time since system boot). + TimeBootMs uint32 + // System ID + TargetSystem uint8 + // Component ID + TargetComponent uint8 + // Valid options are: MAV_FRAME_LOCAL_NED = 1, MAV_FRAME_LOCAL_OFFSET_NED = 7, MAV_FRAME_BODY_NED = 8, MAV_FRAME_BODY_OFFSET_NED = 9 + CoordinateFrame MAV_FRAME `mavenum:"uint8"` + // Bitmap to indicate which dimensions should be ignored by the vehicle. + TypeMask POSITION_TARGET_TYPEMASK `mavenum:"uint16"` + // X Position in NED frame + X float32 + // Y Position in NED frame + Y float32 + // Z Position in NED frame (note, altitude is negative in NED) + Z float32 + // X velocity in NED frame + Vx float32 + // Y velocity in NED frame + Vy float32 + // Z velocity in NED frame + Vz float32 + // X acceleration or force (if bit 10 of type_mask is set) in NED frame in meter / s^2 or N + Afx float32 + // Y acceleration or force (if bit 10 of type_mask is set) in NED frame in meter / s^2 or N + Afy float32 + // Z acceleration or force (if bit 10 of type_mask is set) in NED frame in meter / s^2 or N + Afz float32 + // yaw setpoint + Yaw float32 + // yaw rate setpoint + YawRate float32 +} + +// GetID implements the msg.Message interface. +func (*MessageSetPositionTargetLocalNed) GetID() uint32 { + return 84 +} diff --git a/pkg/dialects/avssuas/msg_setup_signing.go b/pkg/dialects/avssuas/msg_setup_signing.go new file mode 100644 index 000000000..72454e721 --- /dev/null +++ b/pkg/dialects/avssuas/msg_setup_signing.go @@ -0,0 +1,20 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package avssuas + +// Setup a MAVLink2 signing key. If called with secret_key of all zero and zero initial_timestamp will disable signing +type MessageSetupSigning struct { + // system id of the target + TargetSystem uint8 + // component ID of the target + TargetComponent uint8 + // signing key + SecretKey [32]uint8 + // initial timestamp + InitialTimestamp uint64 +} + +// GetID implements the msg.Message interface. +func (*MessageSetupSigning) GetID() uint32 { + return 256 +} diff --git a/pkg/dialects/avssuas/msg_sim_state.go b/pkg/dialects/avssuas/msg_sim_state.go new file mode 100644 index 000000000..71fc1e442 --- /dev/null +++ b/pkg/dialects/avssuas/msg_sim_state.go @@ -0,0 +1,54 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package avssuas + +// Status of simulation environment, if used +type MessageSimState struct { + // True attitude quaternion component 1, w (1 in null-rotation) + Q1 float32 + // True attitude quaternion component 2, x (0 in null-rotation) + Q2 float32 + // True attitude quaternion component 3, y (0 in null-rotation) + Q3 float32 + // True attitude quaternion component 4, z (0 in null-rotation) + Q4 float32 + // Attitude roll expressed as Euler angles, not recommended except for human-readable outputs + Roll float32 + // Attitude pitch expressed as Euler angles, not recommended except for human-readable outputs + Pitch float32 + // Attitude yaw expressed as Euler angles, not recommended except for human-readable outputs + Yaw float32 + // X acceleration + Xacc float32 + // Y acceleration + Yacc float32 + // Z acceleration + Zacc float32 + // Angular speed around X axis + Xgyro float32 + // Angular speed around Y axis + Ygyro float32 + // Angular speed around Z axis + Zgyro float32 + // Latitude + Lat float32 + // Longitude + Lon float32 + // Altitude + Alt float32 + // Horizontal position standard deviation + StdDevHorz float32 + // Vertical position standard deviation + StdDevVert float32 + // True velocity in north direction in earth-fixed NED frame + Vn float32 + // True velocity in east direction in earth-fixed NED frame + Ve float32 + // True velocity in down direction in earth-fixed NED frame + Vd float32 +} + +// GetID implements the msg.Message interface. +func (*MessageSimState) GetID() uint32 { + return 108 +} diff --git a/pkg/dialects/avssuas/msg_smart_battery_info.go b/pkg/dialects/avssuas/msg_smart_battery_info.go new file mode 100644 index 000000000..cf918b94f --- /dev/null +++ b/pkg/dialects/avssuas/msg_smart_battery_info.go @@ -0,0 +1,46 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package avssuas + +// Smart Battery information (static/infrequent update). Use for updates from: smart battery to flight stack, flight stack to GCS. Use BATTERY_STATUS for smart battery frequent updates. +type MessageSmartBatteryInfo struct { + // Battery ID + Id uint8 + // Function of the battery + BatteryFunction MAV_BATTERY_FUNCTION `mavenum:"uint8"` + // Type (chemistry) of the battery + Type MAV_BATTERY_TYPE `mavenum:"uint8"` + // Capacity when full according to manufacturer, -1: field not provided. + CapacityFullSpecification int32 + // Capacity when full (accounting for battery degradation), -1: field not provided. + CapacityFull int32 + // Charge/discharge cycle count. UINT16_MAX: field not provided. + CycleCount uint16 + // Serial number in ASCII characters, 0 terminated. All 0: field not provided. + SerialNumber string `mavlen:"16"` + // Static device name in ASCII characters, 0 terminated. All 0: field not provided. Encode as manufacturer name then product name separated using an underscore. + DeviceName string `mavlen:"50"` + // Battery weight. 0: field not provided. + Weight uint16 + // Minimum per-cell voltage when discharging. If not supplied set to UINT16_MAX value. + DischargeMinimumVoltage uint16 + // Minimum per-cell voltage when charging. If not supplied set to UINT16_MAX value. + ChargingMinimumVoltage uint16 + // Minimum per-cell voltage when resting. If not supplied set to UINT16_MAX value. + RestingMinimumVoltage uint16 + // Maximum per-cell voltage when charged. 0: field not provided. + ChargingMaximumVoltage uint16 `mavext:"true"` + // Number of battery cells in series. 0: field not provided. + CellsInSeries uint8 `mavext:"true"` + // Maximum pack discharge current. 0: field not provided. + DischargeMaximumCurrent uint32 `mavext:"true"` + // Maximum pack discharge burst current. 0: field not provided. + DischargeMaximumBurstCurrent uint32 `mavext:"true"` + // Manufacture date (DD/MM/YYYY) in ASCII characters, 0 terminated. All 0: field not provided. + ManufactureDate string `mavext:"true" mavlen:"11"` +} + +// GetID implements the msg.Message interface. +func (*MessageSmartBatteryInfo) GetID() uint32 { + return 370 +} diff --git a/pkg/dialects/avssuas/msg_statustext.go b/pkg/dialects/avssuas/msg_statustext.go new file mode 100644 index 000000000..a8582b41b --- /dev/null +++ b/pkg/dialects/avssuas/msg_statustext.go @@ -0,0 +1,20 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package avssuas + +// Status text message. These messages are printed in yellow in the COMM console of QGroundControl. WARNING: They consume quite some bandwidth, so use only for important status and error messages. If implemented wisely, these messages are buffered on the MCU and sent only at a limited rate (e.g. 10 Hz). +type MessageStatustext struct { + // Severity of status. Relies on the definitions within RFC-5424. + Severity MAV_SEVERITY `mavenum:"uint8"` + // Status text message, without null termination character + Text string `mavlen:"50"` + // Unique (opaque) identifier for this statustext message. May be used to reassemble a logical long-statustext message from a sequence of chunks. A value of zero indicates this is the only chunk in the sequence and the message can be emitted immediately. + Id uint16 `mavext:"true"` + // This chunk's sequence number; indexing is from zero. Any null character in the text field is taken to mean this was the last chunk. + ChunkSeq uint8 `mavext:"true"` +} + +// GetID implements the msg.Message interface. +func (*MessageStatustext) GetID() uint32 { + return 253 +} diff --git a/pkg/dialects/avssuas/msg_storage_information.go b/pkg/dialects/avssuas/msg_storage_information.go new file mode 100644 index 000000000..76e9fb5f0 --- /dev/null +++ b/pkg/dialects/avssuas/msg_storage_information.go @@ -0,0 +1,39 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package avssuas + +// Information about a storage medium. This message is sent in response to a request with MAV_CMD_REQUEST_MESSAGE and whenever the status of the storage changes (STORAGE_STATUS). Use MAV_CMD_REQUEST_MESSAGE.param2 to indicate the index/id of requested storage: 0 for all, 1 for first, 2 for second, etc. +type MessageStorageInformation struct { + // Timestamp (time since system boot). + TimeBootMs uint32 + // Storage ID (1 for first, 2 for second, etc.) + StorageId uint8 + // Number of storage devices + StorageCount uint8 + // Status of storage + Status STORAGE_STATUS `mavenum:"uint8"` + // Total capacity. If storage is not ready (STORAGE_STATUS_READY) value will be ignored. + TotalCapacity float32 + // Used capacity. If storage is not ready (STORAGE_STATUS_READY) value will be ignored. + UsedCapacity float32 + // Available storage capacity. If storage is not ready (STORAGE_STATUS_READY) value will be ignored. + AvailableCapacity float32 + // Read speed. + ReadSpeed float32 + // Write speed. + WriteSpeed float32 + // Type of storage + Type STORAGE_TYPE `mavenum:"uint8" mavext:"true"` + // Textual storage name to be used in UI (microSD 1, Internal Memory, etc.) This is a NULL terminated string. If it is exactly 32 characters long, add a terminating NULL. If this string is empty, the generic type is shown to the user. + Name string `mavext:"true" mavlen:"32"` + // Flags indicating whether this instance is preferred storage for photos, videos, etc. + // Note: Implementations should initially set the flags on the system-default storage id used for saving media (if possible/supported). + // This setting can then be overridden using MAV_CMD_SET_STORAGE_USAGE. + // If the media usage flags are not set, a GCS may assume storage ID 1 is the default storage for all media types. + StorageUsage STORAGE_USAGE_FLAG `mavenum:"uint8" mavext:"true"` +} + +// GetID implements the msg.Message interface. +func (*MessageStorageInformation) GetID() uint32 { + return 261 +} diff --git a/pkg/dialects/avssuas/msg_supported_tunes.go b/pkg/dialects/avssuas/msg_supported_tunes.go new file mode 100644 index 000000000..e0fdbdf48 --- /dev/null +++ b/pkg/dialects/avssuas/msg_supported_tunes.go @@ -0,0 +1,18 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package avssuas + +// Tune formats supported by vehicle. This should be emitted as response to MAV_CMD_REQUEST_MESSAGE. +type MessageSupportedTunes struct { + // System ID + TargetSystem uint8 + // Component ID + TargetComponent uint8 + // Bitfield of supported tune formats. + Format TUNE_FORMAT `mavenum:"uint32"` +} + +// GetID implements the msg.Message interface. +func (*MessageSupportedTunes) GetID() uint32 { + return 401 +} diff --git a/pkg/dialects/avssuas/msg_sys_status.go b/pkg/dialects/avssuas/msg_sys_status.go new file mode 100644 index 000000000..dd5047147 --- /dev/null +++ b/pkg/dialects/avssuas/msg_sys_status.go @@ -0,0 +1,44 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package avssuas + +// The general system state. If the system is following the MAVLink standard, the system state is mainly defined by three orthogonal states/modes: The system mode, which is either LOCKED (motors shut down and locked), MANUAL (system under RC control), GUIDED (system with autonomous position control, position setpoint controlled manually) or AUTO (system guided by path/waypoint planner). The NAV_MODE defined the current flight state: LIFTOFF (often an open-loop maneuver), LANDING, WAYPOINTS or VECTOR. This represents the internal navigation state machine. The system status shows whether the system is currently active or not and if an emergency occurred. During the CRITICAL and EMERGENCY states the MAV is still considered to be active, but should start emergency procedures autonomously. After a failure occurred it should first move from active to critical to allow manual intervention and then move to emergency after a certain timeout. +type MessageSysStatus struct { + // Bitmap showing which onboard controllers and sensors are present. Value of 0: not present. Value of 1: present. + OnboardControlSensorsPresent MAV_SYS_STATUS_SENSOR `mavenum:"uint32"` + // Bitmap showing which onboard controllers and sensors are enabled: Value of 0: not enabled. Value of 1: enabled. + OnboardControlSensorsEnabled MAV_SYS_STATUS_SENSOR `mavenum:"uint32"` + // Bitmap showing which onboard controllers and sensors have an error (or are operational). Value of 0: error. Value of 1: healthy. + OnboardControlSensorsHealth MAV_SYS_STATUS_SENSOR `mavenum:"uint32"` + // Maximum usage in percent of the mainloop time. Values: [0-1000] - should always be below 1000 + Load uint16 + // Battery voltage, UINT16_MAX: Voltage not sent by autopilot + VoltageBattery uint16 + // Battery current, -1: Current not sent by autopilot + CurrentBattery int16 + // Battery energy remaining, -1: Battery remaining energy not sent by autopilot + BatteryRemaining int8 + // Communication drop rate, (UART, I2C, SPI, CAN), dropped packets on all links (packets that were corrupted on reception on the MAV) + DropRateComm uint16 + // Communication errors (UART, I2C, SPI, CAN), dropped packets on all links (packets that were corrupted on reception on the MAV) + ErrorsComm uint16 + // Autopilot-specific errors + ErrorsCount1 uint16 + // Autopilot-specific errors + ErrorsCount2 uint16 + // Autopilot-specific errors + ErrorsCount3 uint16 + // Autopilot-specific errors + ErrorsCount4 uint16 + // Bitmap showing which onboard controllers and sensors are present. Value of 0: not present. Value of 1: present. + OnboardControlSensorsPresentExtended MAV_SYS_STATUS_SENSOR_EXTENDED `mavenum:"uint32" mavext:"true"` + // Bitmap showing which onboard controllers and sensors are enabled: Value of 0: not enabled. Value of 1: enabled. + OnboardControlSensorsEnabledExtended MAV_SYS_STATUS_SENSOR_EXTENDED `mavenum:"uint32" mavext:"true"` + // Bitmap showing which onboard controllers and sensors have an error (or are operational). Value of 0: error. Value of 1: healthy. + OnboardControlSensorsHealthExtended MAV_SYS_STATUS_SENSOR_EXTENDED `mavenum:"uint32" mavext:"true"` +} + +// GetID implements the msg.Message interface. +func (*MessageSysStatus) GetID() uint32 { + return 1 +} diff --git a/pkg/dialects/avssuas/msg_system_time.go b/pkg/dialects/avssuas/msg_system_time.go new file mode 100644 index 000000000..4bfdfa58e --- /dev/null +++ b/pkg/dialects/avssuas/msg_system_time.go @@ -0,0 +1,16 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package avssuas + +// The system time is the time of the master clock, typically the computer clock of the main onboard computer. +type MessageSystemTime struct { + // Timestamp (UNIX epoch time). + TimeUnixUsec uint64 + // Timestamp (time since system boot). + TimeBootMs uint32 +} + +// GetID implements the msg.Message interface. +func (*MessageSystemTime) GetID() uint32 { + return 2 +} diff --git a/pkg/dialects/avssuas/msg_terrain_check.go b/pkg/dialects/avssuas/msg_terrain_check.go new file mode 100644 index 000000000..9bce6755e --- /dev/null +++ b/pkg/dialects/avssuas/msg_terrain_check.go @@ -0,0 +1,16 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package avssuas + +// Request that the vehicle report terrain height at the given location (expected response is a TERRAIN_REPORT). Used by GCS to check if vehicle has all terrain data needed for a mission. +type MessageTerrainCheck struct { + // Latitude + Lat int32 + // Longitude + Lon int32 +} + +// GetID implements the msg.Message interface. +func (*MessageTerrainCheck) GetID() uint32 { + return 135 +} diff --git a/pkg/dialects/avssuas/msg_terrain_data.go b/pkg/dialects/avssuas/msg_terrain_data.go new file mode 100644 index 000000000..49d983d13 --- /dev/null +++ b/pkg/dialects/avssuas/msg_terrain_data.go @@ -0,0 +1,22 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package avssuas + +// Terrain data sent from GCS. The lat/lon and grid_spacing must be the same as a lat/lon from a TERRAIN_REQUEST. See terrain protocol docs: https://mavlink.io/en/services/terrain.html +type MessageTerrainData struct { + // Latitude of SW corner of first grid + Lat int32 + // Longitude of SW corner of first grid + Lon int32 + // Grid spacing + GridSpacing uint16 + // bit within the terrain request mask + Gridbit uint8 + // Terrain data MSL + Data [16]int16 +} + +// GetID implements the msg.Message interface. +func (*MessageTerrainData) GetID() uint32 { + return 134 +} diff --git a/pkg/dialects/avssuas/msg_terrain_report.go b/pkg/dialects/avssuas/msg_terrain_report.go new file mode 100644 index 000000000..955ca2042 --- /dev/null +++ b/pkg/dialects/avssuas/msg_terrain_report.go @@ -0,0 +1,26 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package avssuas + +// Streamed from drone to report progress of terrain map download (initiated by TERRAIN_REQUEST), or sent as a response to a TERRAIN_CHECK request. See terrain protocol docs: https://mavlink.io/en/services/terrain.html +type MessageTerrainReport struct { + // Latitude + Lat int32 + // Longitude + Lon int32 + // grid spacing (zero if terrain at this location unavailable) + Spacing uint16 + // Terrain height MSL + TerrainHeight float32 + // Current vehicle height above lat/lon terrain height + CurrentHeight float32 + // Number of 4x4 terrain blocks waiting to be received or read from disk + Pending uint16 + // Number of 4x4 terrain blocks in memory + Loaded uint16 +} + +// GetID implements the msg.Message interface. +func (*MessageTerrainReport) GetID() uint32 { + return 136 +} diff --git a/pkg/dialects/avssuas/msg_terrain_request.go b/pkg/dialects/avssuas/msg_terrain_request.go new file mode 100644 index 000000000..1aa2030c2 --- /dev/null +++ b/pkg/dialects/avssuas/msg_terrain_request.go @@ -0,0 +1,20 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package avssuas + +// Request for terrain data and terrain status. See terrain protocol docs: https://mavlink.io/en/services/terrain.html +type MessageTerrainRequest struct { + // Latitude of SW corner of first grid + Lat int32 + // Longitude of SW corner of first grid + Lon int32 + // Grid spacing + GridSpacing uint16 + // Bitmask of requested 4x4 grids (row major 8x7 array of grids, 56 bits) + Mask uint64 +} + +// GetID implements the msg.Message interface. +func (*MessageTerrainRequest) GetID() uint32 { + return 133 +} diff --git a/pkg/dialects/avssuas/msg_time_estimate_to_target.go b/pkg/dialects/avssuas/msg_time_estimate_to_target.go new file mode 100644 index 000000000..818069f34 --- /dev/null +++ b/pkg/dialects/avssuas/msg_time_estimate_to_target.go @@ -0,0 +1,22 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package avssuas + +// Time/duration estimates for various events and actions given the current vehicle state and position. +type MessageTimeEstimateToTarget struct { + // Estimated time to complete the vehicle's configured "safe return" action from its current position (e.g. RTL, Smart RTL, etc.). -1 indicates that the vehicle is landed, or that no time estimate available. + SafeReturn int32 + // Estimated time for vehicle to complete the LAND action from its current position. -1 indicates that the vehicle is landed, or that no time estimate available. + Land int32 + // Estimated time for reaching/completing the currently active mission item. -1 means no time estimate available. + MissionNextItem int32 + // Estimated time for completing the current mission. -1 means no mission active and/or no estimate available. + MissionEnd int32 + // Estimated time for completing the current commanded action (i.e. Go To, Takeoff, Land, etc.). -1 means no action active and/or no estimate available. + CommandedAction int32 +} + +// GetID implements the msg.Message interface. +func (*MessageTimeEstimateToTarget) GetID() uint32 { + return 380 +} diff --git a/pkg/dialects/avssuas/msg_timesync.go b/pkg/dialects/avssuas/msg_timesync.go new file mode 100644 index 000000000..2db174725 --- /dev/null +++ b/pkg/dialects/avssuas/msg_timesync.go @@ -0,0 +1,16 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package avssuas + +// Time synchronization message. +type MessageTimesync struct { + // Time sync timestamp 1 + Tc1 int64 + // Time sync timestamp 2 + Ts1 int64 +} + +// GetID implements the msg.Message interface. +func (*MessageTimesync) GetID() uint32 { + return 111 +} diff --git a/pkg/dialects/avssuas/msg_trajectory_representation_bezier.go b/pkg/dialects/avssuas/msg_trajectory_representation_bezier.go new file mode 100644 index 000000000..a01a270e5 --- /dev/null +++ b/pkg/dialects/avssuas/msg_trajectory_representation_bezier.go @@ -0,0 +1,26 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package avssuas + +// Describe a trajectory using an array of up-to 5 bezier control points in the local frame (MAV_FRAME_LOCAL_NED). +type MessageTrajectoryRepresentationBezier struct { + // Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. + TimeUsec uint64 + // Number of valid control points (up-to 5 points are possible) + ValidPoints uint8 + // X-coordinate of bezier control points. Set to NaN if not being used + PosX [5]float32 + // Y-coordinate of bezier control points. Set to NaN if not being used + PosY [5]float32 + // Z-coordinate of bezier control points. Set to NaN if not being used + PosZ [5]float32 + // Bezier time horizon. Set to NaN if velocity/acceleration should not be incorporated + Delta [5]float32 + // Yaw. Set to NaN for unchanged + PosYaw [5]float32 +} + +// GetID implements the msg.Message interface. +func (*MessageTrajectoryRepresentationBezier) GetID() uint32 { + return 333 +} diff --git a/pkg/dialects/avssuas/msg_trajectory_representation_waypoints.go b/pkg/dialects/avssuas/msg_trajectory_representation_waypoints.go new file mode 100644 index 000000000..6e88ff96b --- /dev/null +++ b/pkg/dialects/avssuas/msg_trajectory_representation_waypoints.go @@ -0,0 +1,40 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package avssuas + +// Describe a trajectory using an array of up-to 5 waypoints in the local frame (MAV_FRAME_LOCAL_NED). +type MessageTrajectoryRepresentationWaypoints struct { + // Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. + TimeUsec uint64 + // Number of valid points (up-to 5 waypoints are possible) + ValidPoints uint8 + // X-coordinate of waypoint, set to NaN if not being used + PosX [5]float32 + // Y-coordinate of waypoint, set to NaN if not being used + PosY [5]float32 + // Z-coordinate of waypoint, set to NaN if not being used + PosZ [5]float32 + // X-velocity of waypoint, set to NaN if not being used + VelX [5]float32 + // Y-velocity of waypoint, set to NaN if not being used + VelY [5]float32 + // Z-velocity of waypoint, set to NaN if not being used + VelZ [5]float32 + // X-acceleration of waypoint, set to NaN if not being used + AccX [5]float32 + // Y-acceleration of waypoint, set to NaN if not being used + AccY [5]float32 + // Z-acceleration of waypoint, set to NaN if not being used + AccZ [5]float32 + // Yaw angle, set to NaN if not being used + PosYaw [5]float32 + // Yaw rate, set to NaN if not being used + VelYaw [5]float32 + // MAV_CMD command id of waypoint, set to UINT16_MAX if not being used. + Command [5]MAV_CMD `mavenum:"uint16"` +} + +// GetID implements the msg.Message interface. +func (*MessageTrajectoryRepresentationWaypoints) GetID() uint32 { + return 332 +} diff --git a/pkg/dialects/avssuas/msg_tunnel.go b/pkg/dialects/avssuas/msg_tunnel.go new file mode 100644 index 000000000..329fcbbce --- /dev/null +++ b/pkg/dialects/avssuas/msg_tunnel.go @@ -0,0 +1,22 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package avssuas + +// Message for transporting "arbitrary" variable-length data from one component to another (broadcast is not forbidden, but discouraged). The encoding of the data is usually extension specific, i.e. determined by the source, and is usually not documented as part of the MAVLink specification. +type MessageTunnel struct { + // System ID (can be 0 for broadcast, but this is discouraged) + TargetSystem uint8 + // Component ID (can be 0 for broadcast, but this is discouraged) + TargetComponent uint8 + // A code that identifies the content of the payload (0 for unknown, which is the default). If this code is less than 32768, it is a 'registered' payload type and the corresponding code should be added to the MAV_TUNNEL_PAYLOAD_TYPE enum. Software creators can register blocks of types as needed. Codes greater than 32767 are considered local experiments and should not be checked in to any widely distributed codebase. + PayloadType MAV_TUNNEL_PAYLOAD_TYPE `mavenum:"uint16"` + // Length of the data transported in payload + PayloadLength uint8 + // Variable length payload. The payload length is defined by payload_length. The entire content of this block is opaque unless you understand the encoding specified by payload_type. + Payload [128]uint8 +} + +// GetID implements the msg.Message interface. +func (*MessageTunnel) GetID() uint32 { + return 385 +} diff --git a/pkg/dialects/avssuas/msg_uavcan_node_info.go b/pkg/dialects/avssuas/msg_uavcan_node_info.go new file mode 100644 index 000000000..4900ac3ee --- /dev/null +++ b/pkg/dialects/avssuas/msg_uavcan_node_info.go @@ -0,0 +1,30 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package avssuas + +// General information describing a particular UAVCAN node. Please refer to the definition of the UAVCAN service "uavcan.protocol.GetNodeInfo" for the background information. This message should be emitted by the system whenever a new node appears online, or an existing node reboots. Additionally, it can be emitted upon request from the other end of the MAVLink channel (see MAV_CMD_UAVCAN_GET_NODE_INFO). It is also not prohibited to emit this message unconditionally at a low frequency. The UAVCAN specification is available at http://uavcan.org. +type MessageUavcanNodeInfo struct { + // Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. + TimeUsec uint64 + // Time since the start-up of the node. + UptimeSec uint32 + // Node name string. For example, "sapog.px4.io". + Name string `mavlen:"80"` + // Hardware major version number. + HwVersionMajor uint8 + // Hardware minor version number. + HwVersionMinor uint8 + // Hardware unique 128-bit ID. + HwUniqueId [16]uint8 + // Software major version number. + SwVersionMajor uint8 + // Software minor version number. + SwVersionMinor uint8 + // Version control system (VCS) revision identifier (e.g. git short commit hash). 0 if unknown. + SwVcsCommit uint32 +} + +// GetID implements the msg.Message interface. +func (*MessageUavcanNodeInfo) GetID() uint32 { + return 311 +} diff --git a/pkg/dialects/avssuas/msg_uavcan_node_status.go b/pkg/dialects/avssuas/msg_uavcan_node_status.go new file mode 100644 index 000000000..cb5eb0aa5 --- /dev/null +++ b/pkg/dialects/avssuas/msg_uavcan_node_status.go @@ -0,0 +1,24 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package avssuas + +// General status information of an UAVCAN node. Please refer to the definition of the UAVCAN message "uavcan.protocol.NodeStatus" for the background information. The UAVCAN specification is available at http://uavcan.org. +type MessageUavcanNodeStatus struct { + // Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. + TimeUsec uint64 + // Time since the start-up of the node. + UptimeSec uint32 + // Generalized node health status. + Health UAVCAN_NODE_HEALTH `mavenum:"uint8"` + // Generalized operating mode. + Mode UAVCAN_NODE_MODE `mavenum:"uint8"` + // Not used currently. + SubMode uint8 + // Vendor-specific status information. + VendorSpecificStatusCode uint16 +} + +// GetID implements the msg.Message interface. +func (*MessageUavcanNodeStatus) GetID() uint32 { + return 310 +} diff --git a/pkg/dialects/avssuas/msg_utm_global_position.go b/pkg/dialects/avssuas/msg_utm_global_position.go new file mode 100644 index 000000000..302cbec36 --- /dev/null +++ b/pkg/dialects/avssuas/msg_utm_global_position.go @@ -0,0 +1,48 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package avssuas + +// The global position resulting from GPS and sensor fusion. +type MessageUtmGlobalPosition struct { + // Time of applicability of position (microseconds since UNIX epoch). + Time uint64 + // Unique UAS ID. + UasId [18]uint8 + // Latitude (WGS84) + Lat int32 + // Longitude (WGS84) + Lon int32 + // Altitude (WGS84) + Alt int32 + // Altitude above ground + RelativeAlt int32 + // Ground X speed (latitude, positive north) + Vx int16 + // Ground Y speed (longitude, positive east) + Vy int16 + // Ground Z speed (altitude, positive down) + Vz int16 + // Horizontal position uncertainty (standard deviation) + HAcc uint16 + // Altitude uncertainty (standard deviation) + VAcc uint16 + // Speed uncertainty (standard deviation) + VelAcc uint16 + // Next waypoint, latitude (WGS84) + NextLat int32 + // Next waypoint, longitude (WGS84) + NextLon int32 + // Next waypoint, altitude (WGS84) + NextAlt int32 + // Time until next update. Set to 0 if unknown or in data driven mode. + UpdateRate uint16 + // Flight state + FlightState UTM_FLIGHT_STATE `mavenum:"uint8"` + // Bitwise OR combination of the data available flags. + Flags UTM_DATA_AVAIL_FLAGS `mavenum:"uint8"` +} + +// GetID implements the msg.Message interface. +func (*MessageUtmGlobalPosition) GetID() uint32 { + return 340 +} diff --git a/pkg/dialects/avssuas/msg_v2_extension.go b/pkg/dialects/avssuas/msg_v2_extension.go new file mode 100644 index 000000000..3d1711b40 --- /dev/null +++ b/pkg/dialects/avssuas/msg_v2_extension.go @@ -0,0 +1,22 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package avssuas + +// Message implementing parts of the V2 payload specs in V1 frames for transitional support. +type MessageV2Extension struct { + // Network ID (0 for broadcast) + TargetNetwork uint8 + // System ID (0 for broadcast) + TargetSystem uint8 + // Component ID (0 for broadcast) + TargetComponent uint8 + // A code that identifies the software component that understands this message (analogous to USB device classes or mime type strings). If this code is less than 32768, it is considered a 'registered' protocol extension and the corresponding entry should be added to https://github.com/mavlink/mavlink/definition_files/extension_message_ids.xml. Software creators can register blocks of message IDs as needed (useful for GCS specific metadata, etc...). Message_types greater than 32767 are considered local experiments and should not be checked in to any widely distributed codebase. + MessageType uint16 + // Variable length payload. The length must be encoded in the payload as part of the message_type protocol, e.g. by including the length as payload data, or by terminating the payload data with a non-zero marker. This is required in order to reconstruct zero-terminated payloads that are (or otherwise would be) trimmed by MAVLink 2 empty-byte truncation. The entire content of the payload block is opaque unless you understand the encoding message_type. The particular encoding used can be extension specific and might not always be documented as part of the MAVLink specification. + Payload [249]uint8 +} + +// GetID implements the msg.Message interface. +func (*MessageV2Extension) GetID() uint32 { + return 248 +} diff --git a/pkg/dialects/avssuas/msg_vfr_hud.go b/pkg/dialects/avssuas/msg_vfr_hud.go new file mode 100644 index 000000000..e0e19aa35 --- /dev/null +++ b/pkg/dialects/avssuas/msg_vfr_hud.go @@ -0,0 +1,24 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package avssuas + +// Metrics typically displayed on a HUD for fixed wing aircraft. +type MessageVfrHud struct { + // Vehicle speed in form appropriate for vehicle type. For standard aircraft this is typically calibrated airspeed (CAS) or indicated airspeed (IAS) - either of which can be used by a pilot to estimate stall speed. + Airspeed float32 + // Current ground speed. + Groundspeed float32 + // Current heading in compass units (0-360, 0=north). + Heading int16 + // Current throttle setting (0 to 100). + Throttle uint16 + // Current altitude (MSL). + Alt float32 + // Current climb rate. + Climb float32 +} + +// GetID implements the msg.Message interface. +func (*MessageVfrHud) GetID() uint32 { + return 74 +} diff --git a/pkg/dialects/avssuas/msg_vibration.go b/pkg/dialects/avssuas/msg_vibration.go new file mode 100644 index 000000000..1a32e06f1 --- /dev/null +++ b/pkg/dialects/avssuas/msg_vibration.go @@ -0,0 +1,26 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package avssuas + +// Vibration levels and accelerometer clipping +type MessageVibration struct { + // Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. + TimeUsec uint64 + // Vibration levels on X-axis + VibrationX float32 + // Vibration levels on Y-axis + VibrationY float32 + // Vibration levels on Z-axis + VibrationZ float32 + // first accelerometer clipping count + Clipping_0 uint32 + // second accelerometer clipping count + Clipping_1 uint32 + // third accelerometer clipping count + Clipping_2 uint32 +} + +// GetID implements the msg.Message interface. +func (*MessageVibration) GetID() uint32 { + return 241 +} diff --git a/pkg/dialects/avssuas/msg_vicon_position_estimate.go b/pkg/dialects/avssuas/msg_vicon_position_estimate.go new file mode 100644 index 000000000..10c9abbe6 --- /dev/null +++ b/pkg/dialects/avssuas/msg_vicon_position_estimate.go @@ -0,0 +1,28 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package avssuas + +// Global position estimate from a Vicon motion system source. +type MessageViconPositionEstimate struct { + // Timestamp (UNIX time or time since system boot) + Usec uint64 + // Global X position + X float32 + // Global Y position + Y float32 + // Global Z position + Z float32 + // Roll angle + Roll float32 + // Pitch angle + Pitch float32 + // Yaw angle + Yaw float32 + // Row-major representation of 6x6 pose cross-covariance matrix upper right triangle (states: x, y, z, roll, pitch, yaw; first six entries are the first ROW, next five entries are the second ROW, etc.). If unknown, assign NaN value to first element in the array. + Covariance [21]float32 `mavext:"true"` +} + +// GetID implements the msg.Message interface. +func (*MessageViconPositionEstimate) GetID() uint32 { + return 104 +} diff --git a/pkg/dialects/avssuas/msg_video_stream_information.go b/pkg/dialects/avssuas/msg_video_stream_information.go new file mode 100644 index 000000000..23a868eda --- /dev/null +++ b/pkg/dialects/avssuas/msg_video_stream_information.go @@ -0,0 +1,36 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package avssuas + +// Information about video stream. It may be requested using MAV_CMD_REQUEST_MESSAGE, where param2 indicates the video stream id: 0 for all streams, 1 for first, 2 for second, etc. +type MessageVideoStreamInformation struct { + // Video Stream ID (1 for first, 2 for second, etc.) + StreamId uint8 + // Number of streams available. + Count uint8 + // Type of stream. + Type VIDEO_STREAM_TYPE `mavenum:"uint8"` + // Bitmap of stream status flags. + Flags VIDEO_STREAM_STATUS_FLAGS `mavenum:"uint16"` + // Frame rate. + Framerate float32 + // Horizontal resolution. + ResolutionH uint16 + // Vertical resolution. + ResolutionV uint16 + // Bit rate. + Bitrate uint32 + // Video image rotation clockwise. + Rotation uint16 + // Horizontal Field of view. + Hfov uint16 + // Stream name. + Name string `mavlen:"32"` + // Video stream URI (TCP or RTSP URI ground station should connect to) or port number (UDP port ground station should listen to). + Uri string `mavlen:"160"` +} + +// GetID implements the msg.Message interface. +func (*MessageVideoStreamInformation) GetID() uint32 { + return 269 +} diff --git a/pkg/dialects/avssuas/msg_video_stream_status.go b/pkg/dialects/avssuas/msg_video_stream_status.go new file mode 100644 index 000000000..7600a322e --- /dev/null +++ b/pkg/dialects/avssuas/msg_video_stream_status.go @@ -0,0 +1,28 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package avssuas + +// Information about the status of a video stream. It may be requested using MAV_CMD_REQUEST_MESSAGE. +type MessageVideoStreamStatus struct { + // Video Stream ID (1 for first, 2 for second, etc.) + StreamId uint8 + // Bitmap of stream status flags + Flags VIDEO_STREAM_STATUS_FLAGS `mavenum:"uint16"` + // Frame rate + Framerate float32 + // Horizontal resolution + ResolutionH uint16 + // Vertical resolution + ResolutionV uint16 + // Bit rate + Bitrate uint32 + // Video image rotation clockwise + Rotation uint16 + // Horizontal Field of view + Hfov uint16 +} + +// GetID implements the msg.Message interface. +func (*MessageVideoStreamStatus) GetID() uint32 { + return 270 +} diff --git a/pkg/dialects/avssuas/msg_vision_position_estimate.go b/pkg/dialects/avssuas/msg_vision_position_estimate.go new file mode 100644 index 000000000..4da4589fc --- /dev/null +++ b/pkg/dialects/avssuas/msg_vision_position_estimate.go @@ -0,0 +1,30 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package avssuas + +// Local position/attitude estimate from a vision source. +type MessageVisionPositionEstimate struct { + // Timestamp (UNIX time or time since system boot) + Usec uint64 + // Local X position + X float32 + // Local Y position + Y float32 + // Local Z position + Z float32 + // Roll angle + Roll float32 + // Pitch angle + Pitch float32 + // Yaw angle + Yaw float32 + // Row-major representation of pose 6x6 cross-covariance matrix upper right triangle (states: x, y, z, roll, pitch, yaw; first six entries are the first ROW, next five entries are the second ROW, etc.). If unknown, assign NaN value to first element in the array. + Covariance [21]float32 `mavext:"true"` + // Estimate reset counter. This should be incremented when the estimate resets in any of the dimensions (position, velocity, attitude, angular speed). This is designed to be used when e.g an external SLAM system detects a loop-closure and the estimate jumps. + ResetCounter uint8 `mavext:"true"` +} + +// GetID implements the msg.Message interface. +func (*MessageVisionPositionEstimate) GetID() uint32 { + return 102 +} diff --git a/pkg/dialects/avssuas/msg_vision_speed_estimate.go b/pkg/dialects/avssuas/msg_vision_speed_estimate.go new file mode 100644 index 000000000..2940c4936 --- /dev/null +++ b/pkg/dialects/avssuas/msg_vision_speed_estimate.go @@ -0,0 +1,24 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package avssuas + +// Speed estimate from a vision source. +type MessageVisionSpeedEstimate struct { + // Timestamp (UNIX time or time since system boot) + Usec uint64 + // Global X speed + X float32 + // Global Y speed + Y float32 + // Global Z speed + Z float32 + // Row-major representation of 3x3 linear velocity covariance matrix (states: vx, vy, vz; 1st three entries - 1st row, etc.). If unknown, assign NaN value to first element in the array. + Covariance [9]float32 `mavext:"true"` + // Estimate reset counter. This should be incremented when the estimate resets in any of the dimensions (position, velocity, attitude, angular speed). This is designed to be used when e.g an external SLAM system detects a loop-closure and the estimate jumps. + ResetCounter uint8 `mavext:"true"` +} + +// GetID implements the msg.Message interface. +func (*MessageVisionSpeedEstimate) GetID() uint32 { + return 103 +} diff --git a/pkg/dialects/avssuas/msg_wheel_distance.go b/pkg/dialects/avssuas/msg_wheel_distance.go new file mode 100644 index 000000000..b08c49361 --- /dev/null +++ b/pkg/dialects/avssuas/msg_wheel_distance.go @@ -0,0 +1,18 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package avssuas + +// Cumulative distance traveled for each reported wheel. +type MessageWheelDistance struct { + // Timestamp (synced to UNIX time or since system boot). + TimeUsec uint64 + // Number of wheels reported. + Count uint8 + // Distance reported by individual wheel encoders. Forward rotations increase values, reverse rotations decrease them. Not all wheels will necessarily have wheel encoders; the mapping of encoders to wheel positions must be agreed/understood by the endpoints. + Distance [16]float64 +} + +// GetID implements the msg.Message interface. +func (*MessageWheelDistance) GetID() uint32 { + return 9000 +} diff --git a/pkg/dialects/avssuas/msg_wifi_config_ap.go b/pkg/dialects/avssuas/msg_wifi_config_ap.go new file mode 100644 index 000000000..62e19f6ea --- /dev/null +++ b/pkg/dialects/avssuas/msg_wifi_config_ap.go @@ -0,0 +1,20 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package avssuas + +// Configure WiFi AP SSID, password, and mode. This message is re-emitted as an acknowledgement by the AP. The message may also be explicitly requested using MAV_CMD_REQUEST_MESSAGE +type MessageWifiConfigAp struct { + // Name of Wi-Fi network (SSID). Blank to leave it unchanged when setting. Current SSID when sent back as a response. + Ssid string `mavlen:"32"` + // Password. Blank for an open AP. MD5 hash when message is sent back as a response. + Password string `mavlen:"64"` + // WiFi Mode. + Mode WIFI_CONFIG_AP_MODE `mavenum:"int8" mavext:"true"` + // Message acceptance response (sent back to GS). + Response WIFI_CONFIG_AP_RESPONSE `mavenum:"int8" mavext:"true"` +} + +// GetID implements the msg.Message interface. +func (*MessageWifiConfigAp) GetID() uint32 { + return 299 +} diff --git a/pkg/dialects/avssuas/msg_winch_status.go b/pkg/dialects/avssuas/msg_winch_status.go new file mode 100644 index 000000000..8e34375e8 --- /dev/null +++ b/pkg/dialects/avssuas/msg_winch_status.go @@ -0,0 +1,28 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package avssuas + +// Winch status. +type MessageWinchStatus struct { + // Timestamp (synced to UNIX time or since system boot). + TimeUsec uint64 + // Length of line released. NaN if unknown + LineLength float32 + // Speed line is being released or retracted. Positive values if being released, negative values if being retracted, NaN if unknown + Speed float32 + // Tension on the line. NaN if unknown + Tension float32 + // Voltage of the battery supplying the winch. NaN if unknown + Voltage float32 + // Current draw from the winch. NaN if unknown + Current float32 + // Temperature of the motor. INT16_MAX if unknown + Temperature int16 + // Status flags + Status MAV_WINCH_STATUS_FLAG `mavenum:"uint32"` +} + +// GetID implements the msg.Message interface. +func (*MessageWinchStatus) GetID() uint32 { + return 9005 +} diff --git a/pkg/dialects/avssuas/msg_wind_cov.go b/pkg/dialects/avssuas/msg_wind_cov.go new file mode 100644 index 000000000..07c83aa36 --- /dev/null +++ b/pkg/dialects/avssuas/msg_wind_cov.go @@ -0,0 +1,30 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package avssuas + +// Wind covariance estimate from vehicle. +type MessageWindCov struct { + // Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. + TimeUsec uint64 + // Wind in X (NED) direction + WindX float32 + // Wind in Y (NED) direction + WindY float32 + // Wind in Z (NED) direction + WindZ float32 + // Variability of the wind in XY. RMS of a 1 Hz lowpassed wind estimate. + VarHoriz float32 + // Variability of the wind in Z. RMS of a 1 Hz lowpassed wind estimate. + VarVert float32 + // Altitude (MSL) that this measurement was taken at + WindAlt float32 + // Horizontal speed 1-STD accuracy + HorizAccuracy float32 + // Vertical speed 1-STD accuracy + VertAccuracy float32 +} + +// GetID implements the msg.Message interface. +func (*MessageWindCov) GetID() uint32 { + return 231 +} diff --git a/pkg/dialects/common/enum_mav_protocol_capability.go b/pkg/dialects/common/enum_mav_protocol_capability.go index 70f73ee50..21f9ec0a0 100644 --- a/pkg/dialects/common/enum_mav_protocol_capability.go +++ b/pkg/dialects/common/enum_mav_protocol_capability.go @@ -10,16 +10,18 @@ import ( type MAV_PROTOCOL_CAPABILITY int const ( - // Autopilot supports MISSION float message type. + // Autopilot supports the MISSION_ITEM float message type. + // Note that MISSION_ITEM is deprecated, and autopilots should use MISSION_INT instead. MAV_PROTOCOL_CAPABILITY_MISSION_FLOAT MAV_PROTOCOL_CAPABILITY = 1 // Autopilot supports the new param float message type. MAV_PROTOCOL_CAPABILITY_PARAM_FLOAT MAV_PROTOCOL_CAPABILITY = 2 // Autopilot supports MISSION_ITEM_INT scaled integer message type. + // Note that this flag must always be set if missions are supported, because missions must always use MISSION_ITEM_INT (rather than MISSION_ITEM, which is deprecated). MAV_PROTOCOL_CAPABILITY_MISSION_INT MAV_PROTOCOL_CAPABILITY = 4 // Autopilot supports COMMAND_INT scaled integer message type. MAV_PROTOCOL_CAPABILITY_COMMAND_INT MAV_PROTOCOL_CAPABILITY = 8 - // Autopilot supports the new param union message type. - MAV_PROTOCOL_CAPABILITY_PARAM_UNION MAV_PROTOCOL_CAPABILITY = 16 + // Reserved for future use. + MAV_PROTOCOL_CAPABILITY_RESERVED1 MAV_PROTOCOL_CAPABILITY = 16 // Autopilot supports the new FILE_TRANSFER_PROTOCOL message type. MAV_PROTOCOL_CAPABILITY_FTP MAV_PROTOCOL_CAPABILITY = 32 // Autopilot supports commanding attitude offboard. @@ -42,8 +44,8 @@ const ( MAV_PROTOCOL_CAPABILITY_MISSION_FENCE MAV_PROTOCOL_CAPABILITY = 16384 // Autopilot supports mission rally point protocol. MAV_PROTOCOL_CAPABILITY_MISSION_RALLY MAV_PROTOCOL_CAPABILITY = 32768 - // Autopilot supports the flight information protocol. - MAV_PROTOCOL_CAPABILITY_FLIGHT_INFORMATION MAV_PROTOCOL_CAPABILITY = 65536 + // Reserved for future use. + MAV_PROTOCOL_CAPABILITY_RESERVED2 MAV_PROTOCOL_CAPABILITY = 65536 ) var labels_MAV_PROTOCOL_CAPABILITY = map[MAV_PROTOCOL_CAPABILITY]string{} diff --git a/pkg/dialects/common/msg_component_information.go b/pkg/dialects/common/msg_component_information.go index 87e3517bb..eb7ba8366 100644 --- a/pkg/dialects/common/msg_component_information.go +++ b/pkg/dialects/common/msg_component_information.go @@ -6,13 +6,13 @@ package common type MessageComponentInformation struct { // Timestamp (time since system boot). TimeBootMs uint32 - // CRC32 of the TYPE_GENERAL file (can be used by a GCS for file caching). + // CRC32 of the TYPE_GENERAL file (can be used by a GCS for file caching). The general metadata file contains URLs to other files of different type according to COMP_METADATA_TYPE. GeneralMetadataFileCrc uint32 // Component definition URI for TYPE_GENERAL. This must be a MAVLink FTP URI and the file might be compressed with xz. GeneralMetadataUri string `mavlen:"100"` // CRC32 of the TYPE_PERIPHERALS file (can be used by a GCS for file caching). PeripheralsMetadataFileCrc uint32 - // (Optional) Component definition URI for TYPE_PERIPHERALS. This must be a MAVLink FTP URI and the file might be compressed with xz. + // (Optional) Component definition URI for TYPE_PERIPHERALS. This must be a MAVLink FTP URI and the file might be compressed with xz. Peripherals are listed as a separate URL and not included in the general metadata file because it will likely be generated at runtime while the general (and other referenced files) might be generated at compile time. PeripheralsMetadataUri string `mavlen:"100"` } diff --git a/pkg/dialects/common/msg_flight_information.go b/pkg/dialects/common/msg_flight_information.go index 3547f2146..bfe57d712 100644 --- a/pkg/dialects/common/msg_flight_information.go +++ b/pkg/dialects/common/msg_flight_information.go @@ -3,6 +3,7 @@ package common // Information about flight since last arming. +// This can be requested using MAV_CMD_REQUEST_MESSAGE. type MessageFlightInformation struct { // Timestamp (time since system boot). TimeBootMs uint32 diff --git a/pkg/dialects/development/dialect.go b/pkg/dialects/development/dialect.go new file mode 100644 index 000000000..33d6595bf --- /dev/null +++ b/pkg/dialects/development/dialect.go @@ -0,0 +1,245 @@ +//autogenerated:yes +// Package development contains the development dialect. +package development + +import ( + "github.com/aler9/gomavlib/pkg/dialect" + "github.com/aler9/gomavlib/pkg/msg" +) + +// Dialect contains the dialect definition. +var Dialect = dial + +// dial is not exposed directly in order not to display it in godoc. +var dial = &dialect.Dialect{ + Version: 0, + Messages: []msg.Message{ + // minimal.xml + &MessageHeartbeat{}, + &MessageProtocolVersion{}, + // common.xml + &MessageSysStatus{}, + &MessageSystemTime{}, + &MessagePing{}, + &MessageChangeOperatorControl{}, + &MessageChangeOperatorControlAck{}, + &MessageAuthKey{}, + &MessageLinkNodeStatus{}, + &MessageSetMode{}, + &MessageParamRequestRead{}, + &MessageParamRequestList{}, + &MessageParamValue{}, + &MessageParamSet{}, + &MessageGpsRawInt{}, + &MessageGpsStatus{}, + &MessageScaledImu{}, + &MessageRawImu{}, + &MessageRawPressure{}, + &MessageScaledPressure{}, + &MessageAttitude{}, + &MessageAttitudeQuaternion{}, + &MessageLocalPositionNed{}, + &MessageGlobalPositionInt{}, + &MessageRcChannelsScaled{}, + &MessageRcChannelsRaw{}, + &MessageServoOutputRaw{}, + &MessageMissionRequestPartialList{}, + &MessageMissionWritePartialList{}, + &MessageMissionItem{}, + &MessageMissionRequest{}, + &MessageMissionSetCurrent{}, + &MessageMissionCurrent{}, + &MessageMissionRequestList{}, + &MessageMissionCount{}, + &MessageMissionClearAll{}, + &MessageMissionItemReached{}, + &MessageMissionAck{}, + &MessageSetGpsGlobalOrigin{}, + &MessageGpsGlobalOrigin{}, + &MessageParamMapRc{}, + &MessageMissionRequestInt{}, + &MessageSafetySetAllowedArea{}, + &MessageSafetyAllowedArea{}, + &MessageAttitudeQuaternionCov{}, + &MessageNavControllerOutput{}, + &MessageGlobalPositionIntCov{}, + &MessageLocalPositionNedCov{}, + &MessageRcChannels{}, + &MessageRequestDataStream{}, + &MessageDataStream{}, + &MessageManualControl{}, + &MessageRcChannelsOverride{}, + &MessageMissionItemInt{}, + &MessageVfrHud{}, + &MessageCommandInt{}, + &MessageCommandLong{}, + &MessageCommandAck{}, + &MessageCommandCancel{}, + &MessageManualSetpoint{}, + &MessageSetAttitudeTarget{}, + &MessageAttitudeTarget{}, + &MessageSetPositionTargetLocalNed{}, + &MessagePositionTargetLocalNed{}, + &MessageSetPositionTargetGlobalInt{}, + &MessagePositionTargetGlobalInt{}, + &MessageLocalPositionNedSystemGlobalOffset{}, + &MessageHilState{}, + &MessageHilControls{}, + &MessageHilRcInputsRaw{}, + &MessageHilActuatorControls{}, + &MessageOpticalFlow{}, + &MessageGlobalVisionPositionEstimate{}, + &MessageVisionPositionEstimate{}, + &MessageVisionSpeedEstimate{}, + &MessageViconPositionEstimate{}, + &MessageHighresImu{}, + &MessageOpticalFlowRad{}, + &MessageHilSensor{}, + &MessageSimState{}, + &MessageRadioStatus{}, + &MessageFileTransferProtocol{}, + &MessageTimesync{}, + &MessageCameraTrigger{}, + &MessageHilGps{}, + &MessageHilOpticalFlow{}, + &MessageHilStateQuaternion{}, + &MessageScaledImu2{}, + &MessageLogRequestList{}, + &MessageLogEntry{}, + &MessageLogRequestData{}, + &MessageLogData{}, + &MessageLogErase{}, + &MessageLogRequestEnd{}, + &MessageGpsInjectData{}, + &MessageGps2Raw{}, + &MessagePowerStatus{}, + &MessageSerialControl{}, + &MessageGpsRtk{}, + &MessageGps2Rtk{}, + &MessageScaledImu3{}, + &MessageDataTransmissionHandshake{}, + &MessageEncapsulatedData{}, + &MessageDistanceSensor{}, + &MessageTerrainRequest{}, + &MessageTerrainData{}, + &MessageTerrainCheck{}, + &MessageTerrainReport{}, + &MessageScaledPressure2{}, + &MessageAttPosMocap{}, + &MessageSetActuatorControlTarget{}, + &MessageActuatorControlTarget{}, + &MessageAltitude{}, + &MessageResourceRequest{}, + &MessageScaledPressure3{}, + &MessageFollowTarget{}, + &MessageControlSystemState{}, + &MessageBatteryStatus{}, + &MessageAutopilotVersion{}, + &MessageLandingTarget{}, + &MessageFenceStatus{}, + &MessageMagCalReport{}, + &MessageEfiStatus{}, + &MessageEstimatorStatus{}, + &MessageWindCov{}, + &MessageGpsInput{}, + &MessageGpsRtcmData{}, + &MessageHighLatency{}, + &MessageHighLatency2{}, + &MessageVibration{}, + &MessageHomePosition{}, + &MessageSetHomePosition{}, + &MessageMessageInterval{}, + &MessageExtendedSysState{}, + &MessageAdsbVehicle{}, + &MessageCollision{}, + &MessageV2Extension{}, + &MessageMemoryVect{}, + &MessageDebugVect{}, + &MessageNamedValueFloat{}, + &MessageNamedValueInt{}, + &MessageStatustext{}, + &MessageDebug{}, + &MessageSetupSigning{}, + &MessageButtonChange{}, + &MessagePlayTune{}, + &MessageCameraInformation{}, + &MessageCameraSettings{}, + &MessageStorageInformation{}, + &MessageCameraCaptureStatus{}, + &MessageCameraImageCaptured{}, + &MessageFlightInformation{}, + &MessageMountOrientation{}, + &MessageLoggingData{}, + &MessageLoggingDataAcked{}, + &MessageLoggingAck{}, + &MessageVideoStreamInformation{}, + &MessageVideoStreamStatus{}, + &MessageCameraFovStatus{}, + &MessageCameraTrackingImageStatus{}, + &MessageCameraTrackingGeoStatus{}, + &MessageGimbalManagerInformation{}, + &MessageGimbalManagerStatus{}, + &MessageGimbalManagerSetAttitude{}, + &MessageGimbalDeviceInformation{}, + &MessageGimbalDeviceSetAttitude{}, + &MessageGimbalDeviceAttitudeStatus{}, + &MessageAutopilotStateForGimbalDevice{}, + &MessageGimbalManagerSetPitchyaw{}, + &MessageGimbalManagerSetManualControl{}, + &MessageEscInfo{}, + &MessageEscStatus{}, + &MessageWifiConfigAp{}, + &MessageAisVessel{}, + &MessageUavcanNodeStatus{}, + &MessageUavcanNodeInfo{}, + &MessageParamExtRequestRead{}, + &MessageParamExtRequestList{}, + &MessageParamExtValue{}, + &MessageParamExtSet{}, + &MessageParamExtAck{}, + &MessageObstacleDistance{}, + &MessageOdometry{}, + &MessageTrajectoryRepresentationWaypoints{}, + &MessageTrajectoryRepresentationBezier{}, + &MessageCellularStatus{}, + &MessageIsbdLinkStatus{}, + &MessageCellularConfig{}, + &MessageRawRpm{}, + &MessageUtmGlobalPosition{}, + &MessageDebugFloatArray{}, + &MessageOrbitExecutionStatus{}, + &MessageSmartBatteryInfo{}, + &MessageGeneratorStatus{}, + &MessageActuatorOutputStatus{}, + &MessageTimeEstimateToTarget{}, + &MessageTunnel{}, + &MessageOnboardComputerStatus{}, + &MessageComponentInformation{}, + &MessagePlayTuneV2{}, + &MessageSupportedTunes{}, + &MessageEvent{}, + &MessageCurrentEventSequence{}, + &MessageRequestEvent{}, + &MessageResponseEventError{}, + &MessageWheelDistance{}, + &MessageWinchStatus{}, + &MessageOpenDroneIdBasicId{}, + &MessageOpenDroneIdLocation{}, + &MessageOpenDroneIdAuthentication{}, + &MessageOpenDroneIdSelfId{}, + &MessageOpenDroneIdSystem{}, + &MessageOpenDroneIdOperatorId{}, + &MessageOpenDroneIdMessagePack{}, + &MessageHygrometerSensor{}, + // standard.xml + // development.xml + &MessageParamAckTransaction{}, + &MessageMissionChanged{}, + &MessageMissionChecksum{}, + &MessageAirspeed{}, + &MessageWifiNetworkInfo{}, + &MessageComponentInformationBasic{}, + &MessageGroupStart{}, + &MessageGroupEnd{}, + }, +} diff --git a/pkg/dialects/development/enum_actuator_configuration.go b/pkg/dialects/development/enum_actuator_configuration.go new file mode 100644 index 000000000..b60c7c2e6 --- /dev/null +++ b/pkg/dialects/development/enum_actuator_configuration.go @@ -0,0 +1,54 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package development + +import ( + "errors" +) + +// Actuator configuration, used to change a setting on an actuator. Component information metadata can be used to know which outputs support which commands. +type ACTUATOR_CONFIGURATION int + +const ( + // Do nothing. + ACTUATOR_CONFIGURATION_NONE ACTUATOR_CONFIGURATION = 0 + // Command the actuator to beep now. + ACTUATOR_CONFIGURATION_BEEP ACTUATOR_CONFIGURATION = 1 + // Permanently set the actuator (ESC) to 3D mode (reversible thrust). + ACTUATOR_CONFIGURATION_3D_MODE_ON ACTUATOR_CONFIGURATION = 2 + // Permanently set the actuator (ESC) to non 3D mode (non-reversible thrust). + ACTUATOR_CONFIGURATION_3D_MODE_OFF ACTUATOR_CONFIGURATION = 3 + // Permanently set the actuator (ESC) to spin direction 1 (which can be clockwise or counter-clockwise). + ACTUATOR_CONFIGURATION_SPIN_DIRECTION1 ACTUATOR_CONFIGURATION = 4 + // Permanently set the actuator (ESC) to spin direction 2 (opposite of direction 1). + ACTUATOR_CONFIGURATION_SPIN_DIRECTION2 ACTUATOR_CONFIGURATION = 5 +) + +var labels_ACTUATOR_CONFIGURATION = map[ACTUATOR_CONFIGURATION]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e ACTUATOR_CONFIGURATION) MarshalText() ([]byte, error) { + if l, ok := labels_ACTUATOR_CONFIGURATION[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_ACTUATOR_CONFIGURATION = map[string]ACTUATOR_CONFIGURATION{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *ACTUATOR_CONFIGURATION) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_ACTUATOR_CONFIGURATION[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e ACTUATOR_CONFIGURATION) String() string { + if l, ok := labels_ACTUATOR_CONFIGURATION[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/development/enum_actuator_output_function.go b/pkg/dialects/development/enum_actuator_output_function.go new file mode 100644 index 000000000..157f6e344 --- /dev/null +++ b/pkg/dialects/development/enum_actuator_output_function.go @@ -0,0 +1,108 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package development + +import ( + "errors" +) + +// Actuator output function. Values greater or equal to 1000 are autopilot-specific. +type ACTUATOR_OUTPUT_FUNCTION int + +const ( + // No function (disabled). + ACTUATOR_OUTPUT_FUNCTION_NONE ACTUATOR_OUTPUT_FUNCTION = 0 + // Motor 1 + ACTUATOR_OUTPUT_FUNCTION_MOTOR1 ACTUATOR_OUTPUT_FUNCTION = 1 + // Motor 2 + ACTUATOR_OUTPUT_FUNCTION_MOTOR2 ACTUATOR_OUTPUT_FUNCTION = 2 + // Motor 3 + ACTUATOR_OUTPUT_FUNCTION_MOTOR3 ACTUATOR_OUTPUT_FUNCTION = 3 + // Motor 4 + ACTUATOR_OUTPUT_FUNCTION_MOTOR4 ACTUATOR_OUTPUT_FUNCTION = 4 + // Motor 5 + ACTUATOR_OUTPUT_FUNCTION_MOTOR5 ACTUATOR_OUTPUT_FUNCTION = 5 + // Motor 6 + ACTUATOR_OUTPUT_FUNCTION_MOTOR6 ACTUATOR_OUTPUT_FUNCTION = 6 + // Motor 7 + ACTUATOR_OUTPUT_FUNCTION_MOTOR7 ACTUATOR_OUTPUT_FUNCTION = 7 + // Motor 8 + ACTUATOR_OUTPUT_FUNCTION_MOTOR8 ACTUATOR_OUTPUT_FUNCTION = 8 + // Motor 9 + ACTUATOR_OUTPUT_FUNCTION_MOTOR9 ACTUATOR_OUTPUT_FUNCTION = 9 + // Motor 10 + ACTUATOR_OUTPUT_FUNCTION_MOTOR10 ACTUATOR_OUTPUT_FUNCTION = 10 + // Motor 11 + ACTUATOR_OUTPUT_FUNCTION_MOTOR11 ACTUATOR_OUTPUT_FUNCTION = 11 + // Motor 12 + ACTUATOR_OUTPUT_FUNCTION_MOTOR12 ACTUATOR_OUTPUT_FUNCTION = 12 + // Motor 13 + ACTUATOR_OUTPUT_FUNCTION_MOTOR13 ACTUATOR_OUTPUT_FUNCTION = 13 + // Motor 14 + ACTUATOR_OUTPUT_FUNCTION_MOTOR14 ACTUATOR_OUTPUT_FUNCTION = 14 + // Motor 15 + ACTUATOR_OUTPUT_FUNCTION_MOTOR15 ACTUATOR_OUTPUT_FUNCTION = 15 + // Motor 16 + ACTUATOR_OUTPUT_FUNCTION_MOTOR16 ACTUATOR_OUTPUT_FUNCTION = 16 + // Servo 1 + ACTUATOR_OUTPUT_FUNCTION_SERVO1 ACTUATOR_OUTPUT_FUNCTION = 33 + // Servo 2 + ACTUATOR_OUTPUT_FUNCTION_SERVO2 ACTUATOR_OUTPUT_FUNCTION = 34 + // Servo 3 + ACTUATOR_OUTPUT_FUNCTION_SERVO3 ACTUATOR_OUTPUT_FUNCTION = 35 + // Servo 4 + ACTUATOR_OUTPUT_FUNCTION_SERVO4 ACTUATOR_OUTPUT_FUNCTION = 36 + // Servo 5 + ACTUATOR_OUTPUT_FUNCTION_SERVO5 ACTUATOR_OUTPUT_FUNCTION = 37 + // Servo 6 + ACTUATOR_OUTPUT_FUNCTION_SERVO6 ACTUATOR_OUTPUT_FUNCTION = 38 + // Servo 7 + ACTUATOR_OUTPUT_FUNCTION_SERVO7 ACTUATOR_OUTPUT_FUNCTION = 39 + // Servo 8 + ACTUATOR_OUTPUT_FUNCTION_SERVO8 ACTUATOR_OUTPUT_FUNCTION = 40 + // Servo 9 + ACTUATOR_OUTPUT_FUNCTION_SERVO9 ACTUATOR_OUTPUT_FUNCTION = 41 + // Servo 10 + ACTUATOR_OUTPUT_FUNCTION_SERVO10 ACTUATOR_OUTPUT_FUNCTION = 42 + // Servo 11 + ACTUATOR_OUTPUT_FUNCTION_SERVO11 ACTUATOR_OUTPUT_FUNCTION = 43 + // Servo 12 + ACTUATOR_OUTPUT_FUNCTION_SERVO12 ACTUATOR_OUTPUT_FUNCTION = 44 + // Servo 13 + ACTUATOR_OUTPUT_FUNCTION_SERVO13 ACTUATOR_OUTPUT_FUNCTION = 45 + // Servo 14 + ACTUATOR_OUTPUT_FUNCTION_SERVO14 ACTUATOR_OUTPUT_FUNCTION = 46 + // Servo 15 + ACTUATOR_OUTPUT_FUNCTION_SERVO15 ACTUATOR_OUTPUT_FUNCTION = 47 + // Servo 16 + ACTUATOR_OUTPUT_FUNCTION_SERVO16 ACTUATOR_OUTPUT_FUNCTION = 48 +) + +var labels_ACTUATOR_OUTPUT_FUNCTION = map[ACTUATOR_OUTPUT_FUNCTION]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e ACTUATOR_OUTPUT_FUNCTION) MarshalText() ([]byte, error) { + if l, ok := labels_ACTUATOR_OUTPUT_FUNCTION[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_ACTUATOR_OUTPUT_FUNCTION = map[string]ACTUATOR_OUTPUT_FUNCTION{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *ACTUATOR_OUTPUT_FUNCTION) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_ACTUATOR_OUTPUT_FUNCTION[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e ACTUATOR_OUTPUT_FUNCTION) String() string { + if l, ok := labels_ACTUATOR_OUTPUT_FUNCTION[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/development/enum_adsb_altitude_type.go b/pkg/dialects/development/enum_adsb_altitude_type.go new file mode 100644 index 000000000..b67bef103 --- /dev/null +++ b/pkg/dialects/development/enum_adsb_altitude_type.go @@ -0,0 +1,46 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package development + +import ( + "errors" +) + +// Enumeration of the ADSB altimeter types +type ADSB_ALTITUDE_TYPE int + +const ( + // Altitude reported from a Baro source using QNH reference + ADSB_ALTITUDE_TYPE_PRESSURE_QNH ADSB_ALTITUDE_TYPE = 0 + // Altitude reported from a GNSS source + ADSB_ALTITUDE_TYPE_GEOMETRIC ADSB_ALTITUDE_TYPE = 1 +) + +var labels_ADSB_ALTITUDE_TYPE = map[ADSB_ALTITUDE_TYPE]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e ADSB_ALTITUDE_TYPE) MarshalText() ([]byte, error) { + if l, ok := labels_ADSB_ALTITUDE_TYPE[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_ADSB_ALTITUDE_TYPE = map[string]ADSB_ALTITUDE_TYPE{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *ADSB_ALTITUDE_TYPE) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_ADSB_ALTITUDE_TYPE[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e ADSB_ALTITUDE_TYPE) String() string { + if l, ok := labels_ADSB_ALTITUDE_TYPE[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/development/enum_adsb_emitter_type.go b/pkg/dialects/development/enum_adsb_emitter_type.go new file mode 100644 index 000000000..106292705 --- /dev/null +++ b/pkg/dialects/development/enum_adsb_emitter_type.go @@ -0,0 +1,62 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package development + +import ( + "errors" +) + +// ADSB classification for the type of vehicle emitting the transponder signal +type ADSB_EMITTER_TYPE int + +const ( + ADSB_EMITTER_TYPE_NO_INFO ADSB_EMITTER_TYPE = 0 + ADSB_EMITTER_TYPE_LIGHT ADSB_EMITTER_TYPE = 1 + ADSB_EMITTER_TYPE_SMALL ADSB_EMITTER_TYPE = 2 + ADSB_EMITTER_TYPE_LARGE ADSB_EMITTER_TYPE = 3 + ADSB_EMITTER_TYPE_HIGH_VORTEX_LARGE ADSB_EMITTER_TYPE = 4 + ADSB_EMITTER_TYPE_HEAVY ADSB_EMITTER_TYPE = 5 + ADSB_EMITTER_TYPE_HIGHLY_MANUV ADSB_EMITTER_TYPE = 6 + ADSB_EMITTER_TYPE_ROTOCRAFT ADSB_EMITTER_TYPE = 7 + ADSB_EMITTER_TYPE_UNASSIGNED ADSB_EMITTER_TYPE = 8 + ADSB_EMITTER_TYPE_GLIDER ADSB_EMITTER_TYPE = 9 + ADSB_EMITTER_TYPE_LIGHTER_AIR ADSB_EMITTER_TYPE = 10 + ADSB_EMITTER_TYPE_PARACHUTE ADSB_EMITTER_TYPE = 11 + ADSB_EMITTER_TYPE_ULTRA_LIGHT ADSB_EMITTER_TYPE = 12 + ADSB_EMITTER_TYPE_UNASSIGNED2 ADSB_EMITTER_TYPE = 13 + ADSB_EMITTER_TYPE_UAV ADSB_EMITTER_TYPE = 14 + ADSB_EMITTER_TYPE_SPACE ADSB_EMITTER_TYPE = 15 + ADSB_EMITTER_TYPE_UNASSGINED3 ADSB_EMITTER_TYPE = 16 + ADSB_EMITTER_TYPE_EMERGENCY_SURFACE ADSB_EMITTER_TYPE = 17 + ADSB_EMITTER_TYPE_SERVICE_SURFACE ADSB_EMITTER_TYPE = 18 + ADSB_EMITTER_TYPE_POINT_OBSTACLE ADSB_EMITTER_TYPE = 19 +) + +var labels_ADSB_EMITTER_TYPE = map[ADSB_EMITTER_TYPE]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e ADSB_EMITTER_TYPE) MarshalText() ([]byte, error) { + if l, ok := labels_ADSB_EMITTER_TYPE[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_ADSB_EMITTER_TYPE = map[string]ADSB_EMITTER_TYPE{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *ADSB_EMITTER_TYPE) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_ADSB_EMITTER_TYPE[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e ADSB_EMITTER_TYPE) String() string { + if l, ok := labels_ADSB_EMITTER_TYPE[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/development/enum_adsb_flags.go b/pkg/dialects/development/enum_adsb_flags.go new file mode 100644 index 000000000..62b57ffd4 --- /dev/null +++ b/pkg/dialects/development/enum_adsb_flags.go @@ -0,0 +1,52 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package development + +import ( + "errors" +) + +// These flags indicate status such as data validity of each data source. Set = data valid +type ADSB_FLAGS int + +const ( + ADSB_FLAGS_VALID_COORDS ADSB_FLAGS = 1 + ADSB_FLAGS_VALID_ALTITUDE ADSB_FLAGS = 2 + ADSB_FLAGS_VALID_HEADING ADSB_FLAGS = 4 + ADSB_FLAGS_VALID_VELOCITY ADSB_FLAGS = 8 + ADSB_FLAGS_VALID_CALLSIGN ADSB_FLAGS = 16 + ADSB_FLAGS_VALID_SQUAWK ADSB_FLAGS = 32 + ADSB_FLAGS_SIMULATED ADSB_FLAGS = 64 + ADSB_FLAGS_VERTICAL_VELOCITY_VALID ADSB_FLAGS = 128 + ADSB_FLAGS_BARO_VALID ADSB_FLAGS = 256 + ADSB_FLAGS_SOURCE_UAT ADSB_FLAGS = 32768 +) + +var labels_ADSB_FLAGS = map[ADSB_FLAGS]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e ADSB_FLAGS) MarshalText() ([]byte, error) { + if l, ok := labels_ADSB_FLAGS[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_ADSB_FLAGS = map[string]ADSB_FLAGS{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *ADSB_FLAGS) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_ADSB_FLAGS[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e ADSB_FLAGS) String() string { + if l, ok := labels_ADSB_FLAGS[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/development/enum_airspeed_sensor_type.go b/pkg/dialects/development/enum_airspeed_sensor_type.go new file mode 100644 index 000000000..37ba3334f --- /dev/null +++ b/pkg/dialects/development/enum_airspeed_sensor_type.go @@ -0,0 +1,52 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package development + +import ( + "errors" +) + +// Types of airspeed sensor/data. May be be used in AIRSPEED message to estimate accuracy of indicated speed. +type AIRSPEED_SENSOR_TYPE int + +const ( + // Airspeed sensor type unknown/not supplied. + AIRSPEED_SENSOR_TYPE_UNKNOWN AIRSPEED_SENSOR_TYPE = 0 + // Differential airspeed sensor + AIRSPEED_SENSOR_TYPE_DIFFERENTIAL AIRSPEED_SENSOR_TYPE = 1 + // Mass-flow airspeed sensor. + AIRSPEED_SENSOR_TYPE_MASS_FLOW AIRSPEED_SENSOR_TYPE = 2 + // Windvane airspeed sensor. + AIRSPEED_SENSOR_TYPE_WINDVANE AIRSPEED_SENSOR_TYPE = 3 + // Synthetic/calculated airspeed. + AIRSPEED_SENSOR_TYPE_SYNTHETIC AIRSPEED_SENSOR_TYPE = 4 +) + +var labels_AIRSPEED_SENSOR_TYPE = map[AIRSPEED_SENSOR_TYPE]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e AIRSPEED_SENSOR_TYPE) MarshalText() ([]byte, error) { + if l, ok := labels_AIRSPEED_SENSOR_TYPE[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_AIRSPEED_SENSOR_TYPE = map[string]AIRSPEED_SENSOR_TYPE{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *AIRSPEED_SENSOR_TYPE) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_AIRSPEED_SENSOR_TYPE[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e AIRSPEED_SENSOR_TYPE) String() string { + if l, ok := labels_AIRSPEED_SENSOR_TYPE[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/development/enum_ais_flags.go b/pkg/dialects/development/enum_ais_flags.go new file mode 100644 index 000000000..594bfd51c --- /dev/null +++ b/pkg/dialects/development/enum_ais_flags.go @@ -0,0 +1,62 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package development + +import ( + "errors" +) + +// These flags are used in the AIS_VESSEL.fields bitmask to indicate validity of data in the other message fields. When set, the data is valid. +type AIS_FLAGS int + +const ( + // 1 = Position accuracy less than 10m, 0 = position accuracy greater than 10m. + AIS_FLAGS_POSITION_ACCURACY AIS_FLAGS = 1 + AIS_FLAGS_VALID_COG AIS_FLAGS = 2 + AIS_FLAGS_VALID_VELOCITY AIS_FLAGS = 4 + // 1 = Velocity over 52.5765m/s (102.2 knots) + AIS_FLAGS_HIGH_VELOCITY AIS_FLAGS = 8 + AIS_FLAGS_VALID_TURN_RATE AIS_FLAGS = 16 + // Only the sign of the returned turn rate value is valid, either greater than 5deg/30s or less than -5deg/30s + AIS_FLAGS_TURN_RATE_SIGN_ONLY AIS_FLAGS = 32 + AIS_FLAGS_VALID_DIMENSIONS AIS_FLAGS = 64 + // Distance to bow is larger than 511m + AIS_FLAGS_LARGE_BOW_DIMENSION AIS_FLAGS = 128 + // Distance to stern is larger than 511m + AIS_FLAGS_LARGE_STERN_DIMENSION AIS_FLAGS = 256 + // Distance to port side is larger than 63m + AIS_FLAGS_LARGE_PORT_DIMENSION AIS_FLAGS = 512 + // Distance to starboard side is larger than 63m + AIS_FLAGS_LARGE_STARBOARD_DIMENSION AIS_FLAGS = 1024 + AIS_FLAGS_VALID_CALLSIGN AIS_FLAGS = 2048 + AIS_FLAGS_VALID_NAME AIS_FLAGS = 4096 +) + +var labels_AIS_FLAGS = map[AIS_FLAGS]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e AIS_FLAGS) MarshalText() ([]byte, error) { + if l, ok := labels_AIS_FLAGS[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_AIS_FLAGS = map[string]AIS_FLAGS{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *AIS_FLAGS) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_AIS_FLAGS[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e AIS_FLAGS) String() string { + if l, ok := labels_AIS_FLAGS[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/development/enum_ais_nav_status.go b/pkg/dialects/development/enum_ais_nav_status.go new file mode 100644 index 000000000..3c81c36c1 --- /dev/null +++ b/pkg/dialects/development/enum_ais_nav_status.go @@ -0,0 +1,61 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package development + +import ( + "errors" +) + +// Navigational status of AIS vessel, enum duplicated from AIS standard, https://gpsd.gitlab.io/gpsd/AIVDM.html +type AIS_NAV_STATUS int + +const ( + // Under way using engine. + UNDER_WAY AIS_NAV_STATUS = 0 + AIS_NAV_ANCHORED AIS_NAV_STATUS = 1 + AIS_NAV_UN_COMMANDED AIS_NAV_STATUS = 2 + AIS_NAV_RESTRICTED_MANOEUVERABILITY AIS_NAV_STATUS = 3 + AIS_NAV_DRAUGHT_CONSTRAINED AIS_NAV_STATUS = 4 + AIS_NAV_MOORED AIS_NAV_STATUS = 5 + AIS_NAV_AGROUND AIS_NAV_STATUS = 6 + AIS_NAV_FISHING AIS_NAV_STATUS = 7 + AIS_NAV_SAILING AIS_NAV_STATUS = 8 + AIS_NAV_RESERVED_HSC AIS_NAV_STATUS = 9 + AIS_NAV_RESERVED_WIG AIS_NAV_STATUS = 10 + AIS_NAV_RESERVED_1 AIS_NAV_STATUS = 11 + AIS_NAV_RESERVED_2 AIS_NAV_STATUS = 12 + AIS_NAV_RESERVED_3 AIS_NAV_STATUS = 13 + // Search And Rescue Transponder. + AIS_NAV_AIS_SART AIS_NAV_STATUS = 14 + // Not available (default). + AIS_NAV_UNKNOWN AIS_NAV_STATUS = 15 +) + +var labels_AIS_NAV_STATUS = map[AIS_NAV_STATUS]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e AIS_NAV_STATUS) MarshalText() ([]byte, error) { + if l, ok := labels_AIS_NAV_STATUS[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_AIS_NAV_STATUS = map[string]AIS_NAV_STATUS{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *AIS_NAV_STATUS) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_AIS_NAV_STATUS[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e AIS_NAV_STATUS) String() string { + if l, ok := labels_AIS_NAV_STATUS[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/development/enum_ais_type.go b/pkg/dialects/development/enum_ais_type.go new file mode 100644 index 000000000..054e0442f --- /dev/null +++ b/pkg/dialects/development/enum_ais_type.go @@ -0,0 +1,150 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package development + +import ( + "errors" +) + +// Type of AIS vessel, enum duplicated from AIS standard, https://gpsd.gitlab.io/gpsd/AIVDM.html +type AIS_TYPE int + +const ( + // Not available (default). + AIS_TYPE_UNKNOWN AIS_TYPE = 0 + AIS_TYPE_RESERVED_1 AIS_TYPE = 1 + AIS_TYPE_RESERVED_2 AIS_TYPE = 2 + AIS_TYPE_RESERVED_3 AIS_TYPE = 3 + AIS_TYPE_RESERVED_4 AIS_TYPE = 4 + AIS_TYPE_RESERVED_5 AIS_TYPE = 5 + AIS_TYPE_RESERVED_6 AIS_TYPE = 6 + AIS_TYPE_RESERVED_7 AIS_TYPE = 7 + AIS_TYPE_RESERVED_8 AIS_TYPE = 8 + AIS_TYPE_RESERVED_9 AIS_TYPE = 9 + AIS_TYPE_RESERVED_10 AIS_TYPE = 10 + AIS_TYPE_RESERVED_11 AIS_TYPE = 11 + AIS_TYPE_RESERVED_12 AIS_TYPE = 12 + AIS_TYPE_RESERVED_13 AIS_TYPE = 13 + AIS_TYPE_RESERVED_14 AIS_TYPE = 14 + AIS_TYPE_RESERVED_15 AIS_TYPE = 15 + AIS_TYPE_RESERVED_16 AIS_TYPE = 16 + AIS_TYPE_RESERVED_17 AIS_TYPE = 17 + AIS_TYPE_RESERVED_18 AIS_TYPE = 18 + AIS_TYPE_RESERVED_19 AIS_TYPE = 19 + // Wing In Ground effect. + AIS_TYPE_WIG AIS_TYPE = 20 + AIS_TYPE_WIG_HAZARDOUS_A AIS_TYPE = 21 + AIS_TYPE_WIG_HAZARDOUS_B AIS_TYPE = 22 + AIS_TYPE_WIG_HAZARDOUS_C AIS_TYPE = 23 + AIS_TYPE_WIG_HAZARDOUS_D AIS_TYPE = 24 + AIS_TYPE_WIG_RESERVED_1 AIS_TYPE = 25 + AIS_TYPE_WIG_RESERVED_2 AIS_TYPE = 26 + AIS_TYPE_WIG_RESERVED_3 AIS_TYPE = 27 + AIS_TYPE_WIG_RESERVED_4 AIS_TYPE = 28 + AIS_TYPE_WIG_RESERVED_5 AIS_TYPE = 29 + AIS_TYPE_FISHING AIS_TYPE = 30 + AIS_TYPE_TOWING AIS_TYPE = 31 + // Towing: length exceeds 200m or breadth exceeds 25m. + AIS_TYPE_TOWING_LARGE AIS_TYPE = 32 + // Dredging or other underwater ops. + AIS_TYPE_DREDGING AIS_TYPE = 33 + AIS_TYPE_DIVING AIS_TYPE = 34 + AIS_TYPE_MILITARY AIS_TYPE = 35 + AIS_TYPE_SAILING AIS_TYPE = 36 + AIS_TYPE_PLEASURE AIS_TYPE = 37 + AIS_TYPE_RESERVED_20 AIS_TYPE = 38 + AIS_TYPE_RESERVED_21 AIS_TYPE = 39 + // High Speed Craft. + AIS_TYPE_HSC AIS_TYPE = 40 + AIS_TYPE_HSC_HAZARDOUS_A AIS_TYPE = 41 + AIS_TYPE_HSC_HAZARDOUS_B AIS_TYPE = 42 + AIS_TYPE_HSC_HAZARDOUS_C AIS_TYPE = 43 + AIS_TYPE_HSC_HAZARDOUS_D AIS_TYPE = 44 + AIS_TYPE_HSC_RESERVED_1 AIS_TYPE = 45 + AIS_TYPE_HSC_RESERVED_2 AIS_TYPE = 46 + AIS_TYPE_HSC_RESERVED_3 AIS_TYPE = 47 + AIS_TYPE_HSC_RESERVED_4 AIS_TYPE = 48 + AIS_TYPE_HSC_UNKNOWN AIS_TYPE = 49 + AIS_TYPE_PILOT AIS_TYPE = 50 + // Search And Rescue vessel. + AIS_TYPE_SAR AIS_TYPE = 51 + AIS_TYPE_TUG AIS_TYPE = 52 + AIS_TYPE_PORT_TENDER AIS_TYPE = 53 + // Anti-pollution equipment. + AIS_TYPE_ANTI_POLLUTION AIS_TYPE = 54 + AIS_TYPE_LAW_ENFORCEMENT AIS_TYPE = 55 + AIS_TYPE_SPARE_LOCAL_1 AIS_TYPE = 56 + AIS_TYPE_SPARE_LOCAL_2 AIS_TYPE = 57 + AIS_TYPE_MEDICAL_TRANSPORT AIS_TYPE = 58 + // Noncombatant ship according to RR Resolution No. 18. + AIS_TYPE_NONECOMBATANT AIS_TYPE = 59 + AIS_TYPE_PASSENGER AIS_TYPE = 60 + AIS_TYPE_PASSENGER_HAZARDOUS_A AIS_TYPE = 61 + AIS_TYPE_PASSENGER_HAZARDOUS_B AIS_TYPE = 62 + AIS_TYPE_AIS_TYPE_PASSENGER_HAZARDOUS_C AIS_TYPE = 63 + AIS_TYPE_PASSENGER_HAZARDOUS_D AIS_TYPE = 64 + AIS_TYPE_PASSENGER_RESERVED_1 AIS_TYPE = 65 + AIS_TYPE_PASSENGER_RESERVED_2 AIS_TYPE = 66 + AIS_TYPE_PASSENGER_RESERVED_3 AIS_TYPE = 67 + AIS_TYPE_AIS_TYPE_PASSENGER_RESERVED_4 AIS_TYPE = 68 + AIS_TYPE_PASSENGER_UNKNOWN AIS_TYPE = 69 + AIS_TYPE_CARGO AIS_TYPE = 70 + AIS_TYPE_CARGO_HAZARDOUS_A AIS_TYPE = 71 + AIS_TYPE_CARGO_HAZARDOUS_B AIS_TYPE = 72 + AIS_TYPE_CARGO_HAZARDOUS_C AIS_TYPE = 73 + AIS_TYPE_CARGO_HAZARDOUS_D AIS_TYPE = 74 + AIS_TYPE_CARGO_RESERVED_1 AIS_TYPE = 75 + AIS_TYPE_CARGO_RESERVED_2 AIS_TYPE = 76 + AIS_TYPE_CARGO_RESERVED_3 AIS_TYPE = 77 + AIS_TYPE_CARGO_RESERVED_4 AIS_TYPE = 78 + AIS_TYPE_CARGO_UNKNOWN AIS_TYPE = 79 + AIS_TYPE_TANKER AIS_TYPE = 80 + AIS_TYPE_TANKER_HAZARDOUS_A AIS_TYPE = 81 + AIS_TYPE_TANKER_HAZARDOUS_B AIS_TYPE = 82 + AIS_TYPE_TANKER_HAZARDOUS_C AIS_TYPE = 83 + AIS_TYPE_TANKER_HAZARDOUS_D AIS_TYPE = 84 + AIS_TYPE_TANKER_RESERVED_1 AIS_TYPE = 85 + AIS_TYPE_TANKER_RESERVED_2 AIS_TYPE = 86 + AIS_TYPE_TANKER_RESERVED_3 AIS_TYPE = 87 + AIS_TYPE_TANKER_RESERVED_4 AIS_TYPE = 88 + AIS_TYPE_TANKER_UNKNOWN AIS_TYPE = 89 + AIS_TYPE_OTHER AIS_TYPE = 90 + AIS_TYPE_OTHER_HAZARDOUS_A AIS_TYPE = 91 + AIS_TYPE_OTHER_HAZARDOUS_B AIS_TYPE = 92 + AIS_TYPE_OTHER_HAZARDOUS_C AIS_TYPE = 93 + AIS_TYPE_OTHER_HAZARDOUS_D AIS_TYPE = 94 + AIS_TYPE_OTHER_RESERVED_1 AIS_TYPE = 95 + AIS_TYPE_OTHER_RESERVED_2 AIS_TYPE = 96 + AIS_TYPE_OTHER_RESERVED_3 AIS_TYPE = 97 + AIS_TYPE_OTHER_RESERVED_4 AIS_TYPE = 98 + AIS_TYPE_OTHER_UNKNOWN AIS_TYPE = 99 +) + +var labels_AIS_TYPE = map[AIS_TYPE]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e AIS_TYPE) MarshalText() ([]byte, error) { + if l, ok := labels_AIS_TYPE[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_AIS_TYPE = map[string]AIS_TYPE{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *AIS_TYPE) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_AIS_TYPE[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e AIS_TYPE) String() string { + if l, ok := labels_AIS_TYPE[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/development/enum_attitude_target_typemask.go b/pkg/dialects/development/enum_attitude_target_typemask.go new file mode 100644 index 000000000..bf1e91624 --- /dev/null +++ b/pkg/dialects/development/enum_attitude_target_typemask.go @@ -0,0 +1,54 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package development + +import ( + "errors" +) + +// Bitmap to indicate which dimensions should be ignored by the vehicle: a value of 0b00000000 indicates that none of the setpoint dimensions should be ignored. +type ATTITUDE_TARGET_TYPEMASK int + +const ( + // Ignore body roll rate + ATTITUDE_TARGET_TYPEMASK_BODY_ROLL_RATE_IGNORE ATTITUDE_TARGET_TYPEMASK = 1 + // Ignore body pitch rate + ATTITUDE_TARGET_TYPEMASK_BODY_PITCH_RATE_IGNORE ATTITUDE_TARGET_TYPEMASK = 2 + // Ignore body yaw rate + ATTITUDE_TARGET_TYPEMASK_BODY_YAW_RATE_IGNORE ATTITUDE_TARGET_TYPEMASK = 4 + // Use 3D body thrust setpoint instead of throttle + ATTITUDE_TARGET_TYPEMASK_THRUST_BODY_SET ATTITUDE_TARGET_TYPEMASK = 32 + // Ignore throttle + ATTITUDE_TARGET_TYPEMASK_THROTTLE_IGNORE ATTITUDE_TARGET_TYPEMASK = 64 + // Ignore attitude + ATTITUDE_TARGET_TYPEMASK_ATTITUDE_IGNORE ATTITUDE_TARGET_TYPEMASK = 128 +) + +var labels_ATTITUDE_TARGET_TYPEMASK = map[ATTITUDE_TARGET_TYPEMASK]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e ATTITUDE_TARGET_TYPEMASK) MarshalText() ([]byte, error) { + if l, ok := labels_ATTITUDE_TARGET_TYPEMASK[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_ATTITUDE_TARGET_TYPEMASK = map[string]ATTITUDE_TARGET_TYPEMASK{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *ATTITUDE_TARGET_TYPEMASK) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_ATTITUDE_TARGET_TYPEMASK[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e ATTITUDE_TARGET_TYPEMASK) String() string { + if l, ok := labels_ATTITUDE_TARGET_TYPEMASK[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/development/enum_autotune_axis.go b/pkg/dialects/development/enum_autotune_axis.go new file mode 100644 index 000000000..055487426 --- /dev/null +++ b/pkg/dialects/development/enum_autotune_axis.go @@ -0,0 +1,50 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package development + +import ( + "errors" +) + +// Enable axes that will be tuned via autotuning. Used in MAV_CMD_DO_AUTOTUNE_ENABLE. +type AUTOTUNE_AXIS int + +const ( + // Flight stack tunes axis according to its default settings. + AUTOTUNE_AXIS_DEFAULT AUTOTUNE_AXIS = 0 + // Autotune roll axis. + AUTOTUNE_AXIS_ROLL AUTOTUNE_AXIS = 1 + // Autotune pitch axis. + AUTOTUNE_AXIS_PITCH AUTOTUNE_AXIS = 2 + // Autotune yaw axis. + AUTOTUNE_AXIS_YAW AUTOTUNE_AXIS = 4 +) + +var labels_AUTOTUNE_AXIS = map[AUTOTUNE_AXIS]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e AUTOTUNE_AXIS) MarshalText() ([]byte, error) { + if l, ok := labels_AUTOTUNE_AXIS[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_AUTOTUNE_AXIS = map[string]AUTOTUNE_AXIS{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *AUTOTUNE_AXIS) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_AUTOTUNE_AXIS[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e AUTOTUNE_AXIS) String() string { + if l, ok := labels_AUTOTUNE_AXIS[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/development/enum_camera_cap_flags.go b/pkg/dialects/development/enum_camera_cap_flags.go new file mode 100644 index 000000000..3b7e213e6 --- /dev/null +++ b/pkg/dialects/development/enum_camera_cap_flags.go @@ -0,0 +1,66 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package development + +import ( + "errors" +) + +// Camera capability flags (Bitmap) +type CAMERA_CAP_FLAGS int + +const ( + // Camera is able to record video + CAMERA_CAP_FLAGS_CAPTURE_VIDEO CAMERA_CAP_FLAGS = 1 + // Camera is able to capture images + CAMERA_CAP_FLAGS_CAPTURE_IMAGE CAMERA_CAP_FLAGS = 2 + // Camera has separate Video and Image/Photo modes (MAV_CMD_SET_CAMERA_MODE) + CAMERA_CAP_FLAGS_HAS_MODES CAMERA_CAP_FLAGS = 4 + // Camera can capture images while in video mode + CAMERA_CAP_FLAGS_CAN_CAPTURE_IMAGE_IN_VIDEO_MODE CAMERA_CAP_FLAGS = 8 + // Camera can capture videos while in Photo/Image mode + CAMERA_CAP_FLAGS_CAN_CAPTURE_VIDEO_IN_IMAGE_MODE CAMERA_CAP_FLAGS = 16 + // Camera has image survey mode (MAV_CMD_SET_CAMERA_MODE) + CAMERA_CAP_FLAGS_HAS_IMAGE_SURVEY_MODE CAMERA_CAP_FLAGS = 32 + // Camera has basic zoom control (MAV_CMD_SET_CAMERA_ZOOM) + CAMERA_CAP_FLAGS_HAS_BASIC_ZOOM CAMERA_CAP_FLAGS = 64 + // Camera has basic focus control (MAV_CMD_SET_CAMERA_FOCUS) + CAMERA_CAP_FLAGS_HAS_BASIC_FOCUS CAMERA_CAP_FLAGS = 128 + // Camera has video streaming capabilities (request VIDEO_STREAM_INFORMATION with MAV_CMD_REQUEST_MESSAGE for video streaming info) + CAMERA_CAP_FLAGS_HAS_VIDEO_STREAM CAMERA_CAP_FLAGS = 256 + // Camera supports tracking of a point on the camera view. + CAMERA_CAP_FLAGS_HAS_TRACKING_POINT CAMERA_CAP_FLAGS = 512 + // Camera supports tracking of a selection rectangle on the camera view. + CAMERA_CAP_FLAGS_HAS_TRACKING_RECTANGLE CAMERA_CAP_FLAGS = 1024 + // Camera supports tracking geo status (CAMERA_TRACKING_GEO_STATUS). + CAMERA_CAP_FLAGS_HAS_TRACKING_GEO_STATUS CAMERA_CAP_FLAGS = 2048 +) + +var labels_CAMERA_CAP_FLAGS = map[CAMERA_CAP_FLAGS]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e CAMERA_CAP_FLAGS) MarshalText() ([]byte, error) { + if l, ok := labels_CAMERA_CAP_FLAGS[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_CAMERA_CAP_FLAGS = map[string]CAMERA_CAP_FLAGS{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *CAMERA_CAP_FLAGS) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_CAMERA_CAP_FLAGS[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e CAMERA_CAP_FLAGS) String() string { + if l, ok := labels_CAMERA_CAP_FLAGS[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/development/enum_camera_mode.go b/pkg/dialects/development/enum_camera_mode.go new file mode 100644 index 000000000..7c18616d7 --- /dev/null +++ b/pkg/dialects/development/enum_camera_mode.go @@ -0,0 +1,48 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package development + +import ( + "errors" +) + +// Camera Modes. +type CAMERA_MODE int + +const ( + // Camera is in image/photo capture mode. + CAMERA_MODE_IMAGE CAMERA_MODE = 0 + // Camera is in video capture mode. + CAMERA_MODE_VIDEO CAMERA_MODE = 1 + // Camera is in image survey capture mode. It allows for camera controller to do specific settings for surveys. + CAMERA_MODE_IMAGE_SURVEY CAMERA_MODE = 2 +) + +var labels_CAMERA_MODE = map[CAMERA_MODE]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e CAMERA_MODE) MarshalText() ([]byte, error) { + if l, ok := labels_CAMERA_MODE[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_CAMERA_MODE = map[string]CAMERA_MODE{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *CAMERA_MODE) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_CAMERA_MODE[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e CAMERA_MODE) String() string { + if l, ok := labels_CAMERA_MODE[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/development/enum_camera_tracking_mode.go b/pkg/dialects/development/enum_camera_tracking_mode.go new file mode 100644 index 000000000..4d475bf5d --- /dev/null +++ b/pkg/dialects/development/enum_camera_tracking_mode.go @@ -0,0 +1,48 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package development + +import ( + "errors" +) + +// Camera tracking modes +type CAMERA_TRACKING_MODE int + +const ( + // Not tracking + CAMERA_TRACKING_MODE_NONE CAMERA_TRACKING_MODE = 0 + // Target is a point + CAMERA_TRACKING_MODE_POINT CAMERA_TRACKING_MODE = 1 + // Target is a rectangle + CAMERA_TRACKING_MODE_RECTANGLE CAMERA_TRACKING_MODE = 2 +) + +var labels_CAMERA_TRACKING_MODE = map[CAMERA_TRACKING_MODE]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e CAMERA_TRACKING_MODE) MarshalText() ([]byte, error) { + if l, ok := labels_CAMERA_TRACKING_MODE[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_CAMERA_TRACKING_MODE = map[string]CAMERA_TRACKING_MODE{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *CAMERA_TRACKING_MODE) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_CAMERA_TRACKING_MODE[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e CAMERA_TRACKING_MODE) String() string { + if l, ok := labels_CAMERA_TRACKING_MODE[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/development/enum_camera_tracking_status_flags.go b/pkg/dialects/development/enum_camera_tracking_status_flags.go new file mode 100644 index 000000000..ac0046cad --- /dev/null +++ b/pkg/dialects/development/enum_camera_tracking_status_flags.go @@ -0,0 +1,48 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package development + +import ( + "errors" +) + +// Camera tracking status flags +type CAMERA_TRACKING_STATUS_FLAGS int + +const ( + // Camera is not tracking + CAMERA_TRACKING_STATUS_FLAGS_IDLE CAMERA_TRACKING_STATUS_FLAGS = 0 + // Camera is tracking + CAMERA_TRACKING_STATUS_FLAGS_ACTIVE CAMERA_TRACKING_STATUS_FLAGS = 1 + // Camera tracking in error state + CAMERA_TRACKING_STATUS_FLAGS_ERROR CAMERA_TRACKING_STATUS_FLAGS = 2 +) + +var labels_CAMERA_TRACKING_STATUS_FLAGS = map[CAMERA_TRACKING_STATUS_FLAGS]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e CAMERA_TRACKING_STATUS_FLAGS) MarshalText() ([]byte, error) { + if l, ok := labels_CAMERA_TRACKING_STATUS_FLAGS[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_CAMERA_TRACKING_STATUS_FLAGS = map[string]CAMERA_TRACKING_STATUS_FLAGS{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *CAMERA_TRACKING_STATUS_FLAGS) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_CAMERA_TRACKING_STATUS_FLAGS[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e CAMERA_TRACKING_STATUS_FLAGS) String() string { + if l, ok := labels_CAMERA_TRACKING_STATUS_FLAGS[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/development/enum_camera_tracking_target_data.go b/pkg/dialects/development/enum_camera_tracking_target_data.go new file mode 100644 index 000000000..bf2cc4b7a --- /dev/null +++ b/pkg/dialects/development/enum_camera_tracking_target_data.go @@ -0,0 +1,50 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package development + +import ( + "errors" +) + +// Camera tracking target data (shows where tracked target is within image) +type CAMERA_TRACKING_TARGET_DATA int + +const ( + // No target data + CAMERA_TRACKING_TARGET_DATA_NONE CAMERA_TRACKING_TARGET_DATA = 0 + // Target data embedded in image data (proprietary) + CAMERA_TRACKING_TARGET_DATA_EMBEDDED CAMERA_TRACKING_TARGET_DATA = 1 + // Target data rendered in image + CAMERA_TRACKING_TARGET_DATA_RENDERED CAMERA_TRACKING_TARGET_DATA = 2 + // Target data within status message (Point or Rectangle) + CAMERA_TRACKING_TARGET_DATA_IN_STATUS CAMERA_TRACKING_TARGET_DATA = 4 +) + +var labels_CAMERA_TRACKING_TARGET_DATA = map[CAMERA_TRACKING_TARGET_DATA]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e CAMERA_TRACKING_TARGET_DATA) MarshalText() ([]byte, error) { + if l, ok := labels_CAMERA_TRACKING_TARGET_DATA[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_CAMERA_TRACKING_TARGET_DATA = map[string]CAMERA_TRACKING_TARGET_DATA{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *CAMERA_TRACKING_TARGET_DATA) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_CAMERA_TRACKING_TARGET_DATA[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e CAMERA_TRACKING_TARGET_DATA) String() string { + if l, ok := labels_CAMERA_TRACKING_TARGET_DATA[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/development/enum_camera_zoom_type.go b/pkg/dialects/development/enum_camera_zoom_type.go new file mode 100644 index 000000000..e781cf774 --- /dev/null +++ b/pkg/dialects/development/enum_camera_zoom_type.go @@ -0,0 +1,50 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package development + +import ( + "errors" +) + +// Zoom types for MAV_CMD_SET_CAMERA_ZOOM +type CAMERA_ZOOM_TYPE int + +const ( + // Zoom one step increment (-1 for wide, 1 for tele) + ZOOM_TYPE_STEP CAMERA_ZOOM_TYPE = 0 + // Continuous zoom up/down until stopped (-1 for wide, 1 for tele, 0 to stop zooming) + ZOOM_TYPE_CONTINUOUS CAMERA_ZOOM_TYPE = 1 + // Zoom value as proportion of full camera range (a value between 0.0 and 100.0) + ZOOM_TYPE_RANGE CAMERA_ZOOM_TYPE = 2 + // Zoom value/variable focal length in milimetres. Note that there is no message to get the valid zoom range of the camera, so this can type can only be used for cameras where the zoom range is known (implying that this cannot reliably be used in a GCS for an arbitrary camera) + ZOOM_TYPE_FOCAL_LENGTH CAMERA_ZOOM_TYPE = 3 +) + +var labels_CAMERA_ZOOM_TYPE = map[CAMERA_ZOOM_TYPE]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e CAMERA_ZOOM_TYPE) MarshalText() ([]byte, error) { + if l, ok := labels_CAMERA_ZOOM_TYPE[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_CAMERA_ZOOM_TYPE = map[string]CAMERA_ZOOM_TYPE{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *CAMERA_ZOOM_TYPE) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_CAMERA_ZOOM_TYPE[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e CAMERA_ZOOM_TYPE) String() string { + if l, ok := labels_CAMERA_ZOOM_TYPE[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/development/enum_cellular_config_response.go b/pkg/dialects/development/enum_cellular_config_response.go new file mode 100644 index 000000000..2e071a652 --- /dev/null +++ b/pkg/dialects/development/enum_cellular_config_response.go @@ -0,0 +1,52 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package development + +import ( + "errors" +) + +// Possible responses from a CELLULAR_CONFIG message. +type CELLULAR_CONFIG_RESPONSE int + +const ( + // Changes accepted. + CELLULAR_CONFIG_RESPONSE_ACCEPTED CELLULAR_CONFIG_RESPONSE = 0 + // Invalid APN. + CELLULAR_CONFIG_RESPONSE_APN_ERROR CELLULAR_CONFIG_RESPONSE = 1 + // Invalid PIN. + CELLULAR_CONFIG_RESPONSE_PIN_ERROR CELLULAR_CONFIG_RESPONSE = 2 + // Changes rejected. + CELLULAR_CONFIG_RESPONSE_REJECTED CELLULAR_CONFIG_RESPONSE = 3 + // PUK is required to unblock SIM card. + CELLULAR_CONFIG_BLOCKED_PUK_REQUIRED CELLULAR_CONFIG_RESPONSE = 4 +) + +var labels_CELLULAR_CONFIG_RESPONSE = map[CELLULAR_CONFIG_RESPONSE]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e CELLULAR_CONFIG_RESPONSE) MarshalText() ([]byte, error) { + if l, ok := labels_CELLULAR_CONFIG_RESPONSE[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_CELLULAR_CONFIG_RESPONSE = map[string]CELLULAR_CONFIG_RESPONSE{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *CELLULAR_CONFIG_RESPONSE) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_CELLULAR_CONFIG_RESPONSE[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e CELLULAR_CONFIG_RESPONSE) String() string { + if l, ok := labels_CELLULAR_CONFIG_RESPONSE[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/development/enum_cellular_network_failed_reason.go b/pkg/dialects/development/enum_cellular_network_failed_reason.go new file mode 100644 index 000000000..e6081160a --- /dev/null +++ b/pkg/dialects/development/enum_cellular_network_failed_reason.go @@ -0,0 +1,50 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package development + +import ( + "errors" +) + +// These flags are used to diagnose the failure state of CELLULAR_STATUS +type CELLULAR_NETWORK_FAILED_REASON int + +const ( + // No error + CELLULAR_NETWORK_FAILED_REASON_NONE CELLULAR_NETWORK_FAILED_REASON = 0 + // Error state is unknown + CELLULAR_NETWORK_FAILED_REASON_UNKNOWN CELLULAR_NETWORK_FAILED_REASON = 1 + // SIM is required for the modem but missing + CELLULAR_NETWORK_FAILED_REASON_SIM_MISSING CELLULAR_NETWORK_FAILED_REASON = 2 + // SIM is available, but not usuable for connection + CELLULAR_NETWORK_FAILED_REASON_SIM_ERROR CELLULAR_NETWORK_FAILED_REASON = 3 +) + +var labels_CELLULAR_NETWORK_FAILED_REASON = map[CELLULAR_NETWORK_FAILED_REASON]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e CELLULAR_NETWORK_FAILED_REASON) MarshalText() ([]byte, error) { + if l, ok := labels_CELLULAR_NETWORK_FAILED_REASON[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_CELLULAR_NETWORK_FAILED_REASON = map[string]CELLULAR_NETWORK_FAILED_REASON{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *CELLULAR_NETWORK_FAILED_REASON) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_CELLULAR_NETWORK_FAILED_REASON[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e CELLULAR_NETWORK_FAILED_REASON) String() string { + if l, ok := labels_CELLULAR_NETWORK_FAILED_REASON[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/development/enum_cellular_network_radio_type.go b/pkg/dialects/development/enum_cellular_network_radio_type.go new file mode 100644 index 000000000..119dd690a --- /dev/null +++ b/pkg/dialects/development/enum_cellular_network_radio_type.go @@ -0,0 +1,47 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package development + +import ( + "errors" +) + +// Cellular network radio type +type CELLULAR_NETWORK_RADIO_TYPE int + +const ( + CELLULAR_NETWORK_RADIO_TYPE_NONE CELLULAR_NETWORK_RADIO_TYPE = 0 + CELLULAR_NETWORK_RADIO_TYPE_GSM CELLULAR_NETWORK_RADIO_TYPE = 1 + CELLULAR_NETWORK_RADIO_TYPE_CDMA CELLULAR_NETWORK_RADIO_TYPE = 2 + CELLULAR_NETWORK_RADIO_TYPE_WCDMA CELLULAR_NETWORK_RADIO_TYPE = 3 + CELLULAR_NETWORK_RADIO_TYPE_LTE CELLULAR_NETWORK_RADIO_TYPE = 4 +) + +var labels_CELLULAR_NETWORK_RADIO_TYPE = map[CELLULAR_NETWORK_RADIO_TYPE]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e CELLULAR_NETWORK_RADIO_TYPE) MarshalText() ([]byte, error) { + if l, ok := labels_CELLULAR_NETWORK_RADIO_TYPE[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_CELLULAR_NETWORK_RADIO_TYPE = map[string]CELLULAR_NETWORK_RADIO_TYPE{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *CELLULAR_NETWORK_RADIO_TYPE) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_CELLULAR_NETWORK_RADIO_TYPE[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e CELLULAR_NETWORK_RADIO_TYPE) String() string { + if l, ok := labels_CELLULAR_NETWORK_RADIO_TYPE[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/development/enum_cellular_status_flag.go b/pkg/dialects/development/enum_cellular_status_flag.go new file mode 100644 index 000000000..60a7ba55b --- /dev/null +++ b/pkg/dialects/development/enum_cellular_status_flag.go @@ -0,0 +1,68 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package development + +import ( + "errors" +) + +// These flags encode the cellular network status +type CELLULAR_STATUS_FLAG int + +const ( + // State unknown or not reportable. + CELLULAR_STATUS_FLAG_UNKNOWN CELLULAR_STATUS_FLAG = 0 + // Modem is unusable + CELLULAR_STATUS_FLAG_FAILED CELLULAR_STATUS_FLAG = 1 + // Modem is being initialized + CELLULAR_STATUS_FLAG_INITIALIZING CELLULAR_STATUS_FLAG = 2 + // Modem is locked + CELLULAR_STATUS_FLAG_LOCKED CELLULAR_STATUS_FLAG = 3 + // Modem is not enabled and is powered down + CELLULAR_STATUS_FLAG_DISABLED CELLULAR_STATUS_FLAG = 4 + // Modem is currently transitioning to the CELLULAR_STATUS_FLAG_DISABLED state + CELLULAR_STATUS_FLAG_DISABLING CELLULAR_STATUS_FLAG = 5 + // Modem is currently transitioning to the CELLULAR_STATUS_FLAG_ENABLED state + CELLULAR_STATUS_FLAG_ENABLING CELLULAR_STATUS_FLAG = 6 + // Modem is enabled and powered on but not registered with a network provider and not available for data connections + CELLULAR_STATUS_FLAG_ENABLED CELLULAR_STATUS_FLAG = 7 + // Modem is searching for a network provider to register + CELLULAR_STATUS_FLAG_SEARCHING CELLULAR_STATUS_FLAG = 8 + // Modem is registered with a network provider, and data connections and messaging may be available for use + CELLULAR_STATUS_FLAG_REGISTERED CELLULAR_STATUS_FLAG = 9 + // Modem is disconnecting and deactivating the last active packet data bearer. This state will not be entered if more than one packet data bearer is active and one of the active bearers is deactivated + CELLULAR_STATUS_FLAG_DISCONNECTING CELLULAR_STATUS_FLAG = 10 + // Modem is activating and connecting the first packet data bearer. Subsequent bearer activations when another bearer is already active do not cause this state to be entered + CELLULAR_STATUS_FLAG_CONNECTING CELLULAR_STATUS_FLAG = 11 + // One or more packet data bearers is active and connected + CELLULAR_STATUS_FLAG_CONNECTED CELLULAR_STATUS_FLAG = 12 +) + +var labels_CELLULAR_STATUS_FLAG = map[CELLULAR_STATUS_FLAG]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e CELLULAR_STATUS_FLAG) MarshalText() ([]byte, error) { + if l, ok := labels_CELLULAR_STATUS_FLAG[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_CELLULAR_STATUS_FLAG = map[string]CELLULAR_STATUS_FLAG{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *CELLULAR_STATUS_FLAG) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_CELLULAR_STATUS_FLAG[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e CELLULAR_STATUS_FLAG) String() string { + if l, ok := labels_CELLULAR_STATUS_FLAG[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/development/enum_comp_metadata_type.go b/pkg/dialects/development/enum_comp_metadata_type.go new file mode 100644 index 000000000..13b444d0b --- /dev/null +++ b/pkg/dialects/development/enum_comp_metadata_type.go @@ -0,0 +1,54 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package development + +import ( + "errors" +) + +// Supported component metadata types. These are used in the "general" metadata file returned by COMPONENT_INFORMATION to provide information about supported metadata types. The types are not used directly in MAVLink messages. +type COMP_METADATA_TYPE int + +const ( + // General information about the component. General metadata includes information about other COMP_METADATA_TYPEs supported by the component. This type must be supported and must be downloadable from vehicle. + COMP_METADATA_TYPE_GENERAL COMP_METADATA_TYPE = 0 + // Parameter meta data. + COMP_METADATA_TYPE_PARAMETER COMP_METADATA_TYPE = 1 + // Meta data that specifies which commands and command parameters the vehicle supports. (WIP) + COMP_METADATA_TYPE_COMMANDS COMP_METADATA_TYPE = 2 + // Meta data that specifies external non-MAVLink peripherals. + COMP_METADATA_TYPE_PERIPHERALS COMP_METADATA_TYPE = 3 + // Meta data for the events interface. + COMP_METADATA_TYPE_EVENTS COMP_METADATA_TYPE = 4 + // Meta data for actuator configuration (motors, servos and vehicle geometry) and testing. + COMP_METADATA_TYPE_ACTUATORS COMP_METADATA_TYPE = 5 +) + +var labels_COMP_METADATA_TYPE = map[COMP_METADATA_TYPE]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e COMP_METADATA_TYPE) MarshalText() ([]byte, error) { + if l, ok := labels_COMP_METADATA_TYPE[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_COMP_METADATA_TYPE = map[string]COMP_METADATA_TYPE{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *COMP_METADATA_TYPE) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_COMP_METADATA_TYPE[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e COMP_METADATA_TYPE) String() string { + if l, ok := labels_COMP_METADATA_TYPE[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/development/enum_esc_connection_type.go b/pkg/dialects/development/enum_esc_connection_type.go new file mode 100644 index 000000000..4dcfdfed2 --- /dev/null +++ b/pkg/dialects/development/enum_esc_connection_type.go @@ -0,0 +1,54 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package development + +import ( + "errors" +) + +// Indicates the ESC connection type. +type ESC_CONNECTION_TYPE int + +const ( + // Traditional PPM ESC. + ESC_CONNECTION_TYPE_PPM ESC_CONNECTION_TYPE = 0 + // Serial Bus connected ESC. + ESC_CONNECTION_TYPE_SERIAL ESC_CONNECTION_TYPE = 1 + // One Shot PPM ESC. + ESC_CONNECTION_TYPE_ONESHOT ESC_CONNECTION_TYPE = 2 + // I2C ESC. + ESC_CONNECTION_TYPE_I2C ESC_CONNECTION_TYPE = 3 + // CAN-Bus ESC. + ESC_CONNECTION_TYPE_CAN ESC_CONNECTION_TYPE = 4 + // DShot ESC. + ESC_CONNECTION_TYPE_DSHOT ESC_CONNECTION_TYPE = 5 +) + +var labels_ESC_CONNECTION_TYPE = map[ESC_CONNECTION_TYPE]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e ESC_CONNECTION_TYPE) MarshalText() ([]byte, error) { + if l, ok := labels_ESC_CONNECTION_TYPE[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_ESC_CONNECTION_TYPE = map[string]ESC_CONNECTION_TYPE{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *ESC_CONNECTION_TYPE) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_ESC_CONNECTION_TYPE[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e ESC_CONNECTION_TYPE) String() string { + if l, ok := labels_ESC_CONNECTION_TYPE[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/development/enum_esc_failure_flags.go b/pkg/dialects/development/enum_esc_failure_flags.go new file mode 100644 index 000000000..0c43cab9d --- /dev/null +++ b/pkg/dialects/development/enum_esc_failure_flags.go @@ -0,0 +1,58 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package development + +import ( + "errors" +) + +// Flags to report ESC failures. +type ESC_FAILURE_FLAGS int + +const ( + // No ESC failure. + ESC_FAILURE_NONE ESC_FAILURE_FLAGS = 0 + // Over current failure. + ESC_FAILURE_OVER_CURRENT ESC_FAILURE_FLAGS = 1 + // Over voltage failure. + ESC_FAILURE_OVER_VOLTAGE ESC_FAILURE_FLAGS = 2 + // Over temperature failure. + ESC_FAILURE_OVER_TEMPERATURE ESC_FAILURE_FLAGS = 4 + // Over RPM failure. + ESC_FAILURE_OVER_RPM ESC_FAILURE_FLAGS = 8 + // Inconsistent command failure i.e. out of bounds. + ESC_FAILURE_INCONSISTENT_CMD ESC_FAILURE_FLAGS = 16 + // Motor stuck failure. + ESC_FAILURE_MOTOR_STUCK ESC_FAILURE_FLAGS = 32 + // Generic ESC failure. + ESC_FAILURE_GENERIC ESC_FAILURE_FLAGS = 64 +) + +var labels_ESC_FAILURE_FLAGS = map[ESC_FAILURE_FLAGS]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e ESC_FAILURE_FLAGS) MarshalText() ([]byte, error) { + if l, ok := labels_ESC_FAILURE_FLAGS[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_ESC_FAILURE_FLAGS = map[string]ESC_FAILURE_FLAGS{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *ESC_FAILURE_FLAGS) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_ESC_FAILURE_FLAGS[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e ESC_FAILURE_FLAGS) String() string { + if l, ok := labels_ESC_FAILURE_FLAGS[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/development/enum_estimator_status_flags.go b/pkg/dialects/development/enum_estimator_status_flags.go new file mode 100644 index 000000000..bb12dd759 --- /dev/null +++ b/pkg/dialects/development/enum_estimator_status_flags.go @@ -0,0 +1,66 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package development + +import ( + "errors" +) + +// Flags in ESTIMATOR_STATUS message +type ESTIMATOR_STATUS_FLAGS int + +const ( + // True if the attitude estimate is good + ESTIMATOR_ATTITUDE ESTIMATOR_STATUS_FLAGS = 1 + // True if the horizontal velocity estimate is good + ESTIMATOR_VELOCITY_HORIZ ESTIMATOR_STATUS_FLAGS = 2 + // True if the vertical velocity estimate is good + ESTIMATOR_VELOCITY_VERT ESTIMATOR_STATUS_FLAGS = 4 + // True if the horizontal position (relative) estimate is good + ESTIMATOR_POS_HORIZ_REL ESTIMATOR_STATUS_FLAGS = 8 + // True if the horizontal position (absolute) estimate is good + ESTIMATOR_POS_HORIZ_ABS ESTIMATOR_STATUS_FLAGS = 16 + // True if the vertical position (absolute) estimate is good + ESTIMATOR_POS_VERT_ABS ESTIMATOR_STATUS_FLAGS = 32 + // True if the vertical position (above ground) estimate is good + ESTIMATOR_POS_VERT_AGL ESTIMATOR_STATUS_FLAGS = 64 + // True if the EKF is in a constant position mode and is not using external measurements (eg GPS or optical flow) + ESTIMATOR_CONST_POS_MODE ESTIMATOR_STATUS_FLAGS = 128 + // True if the EKF has sufficient data to enter a mode that will provide a (relative) position estimate + ESTIMATOR_PRED_POS_HORIZ_REL ESTIMATOR_STATUS_FLAGS = 256 + // True if the EKF has sufficient data to enter a mode that will provide a (absolute) position estimate + ESTIMATOR_PRED_POS_HORIZ_ABS ESTIMATOR_STATUS_FLAGS = 512 + // True if the EKF has detected a GPS glitch + ESTIMATOR_GPS_GLITCH ESTIMATOR_STATUS_FLAGS = 1024 + // True if the EKF has detected bad accelerometer data + ESTIMATOR_ACCEL_ERROR ESTIMATOR_STATUS_FLAGS = 2048 +) + +var labels_ESTIMATOR_STATUS_FLAGS = map[ESTIMATOR_STATUS_FLAGS]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e ESTIMATOR_STATUS_FLAGS) MarshalText() ([]byte, error) { + if l, ok := labels_ESTIMATOR_STATUS_FLAGS[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_ESTIMATOR_STATUS_FLAGS = map[string]ESTIMATOR_STATUS_FLAGS{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *ESTIMATOR_STATUS_FLAGS) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_ESTIMATOR_STATUS_FLAGS[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e ESTIMATOR_STATUS_FLAGS) String() string { + if l, ok := labels_ESTIMATOR_STATUS_FLAGS[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/development/enum_failure_type.go b/pkg/dialects/development/enum_failure_type.go new file mode 100644 index 000000000..109e1042c --- /dev/null +++ b/pkg/dialects/development/enum_failure_type.go @@ -0,0 +1,58 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package development + +import ( + "errors" +) + +// List of possible failure type to inject. +type FAILURE_TYPE int + +const ( + // No failure injected, used to reset a previous failure. + FAILURE_TYPE_OK FAILURE_TYPE = 0 + // Sets unit off, so completely non-responsive. + FAILURE_TYPE_OFF FAILURE_TYPE = 1 + // Unit is stuck e.g. keeps reporting the same value. + FAILURE_TYPE_STUCK FAILURE_TYPE = 2 + // Unit is reporting complete garbage. + FAILURE_TYPE_GARBAGE FAILURE_TYPE = 3 + // Unit is consistently wrong. + FAILURE_TYPE_WRONG FAILURE_TYPE = 4 + // Unit is slow, so e.g. reporting at slower than expected rate. + FAILURE_TYPE_SLOW FAILURE_TYPE = 5 + // Data of unit is delayed in time. + FAILURE_TYPE_DELAYED FAILURE_TYPE = 6 + // Unit is sometimes working, sometimes not. + FAILURE_TYPE_INTERMITTENT FAILURE_TYPE = 7 +) + +var labels_FAILURE_TYPE = map[FAILURE_TYPE]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e FAILURE_TYPE) MarshalText() ([]byte, error) { + if l, ok := labels_FAILURE_TYPE[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_FAILURE_TYPE = map[string]FAILURE_TYPE{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *FAILURE_TYPE) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_FAILURE_TYPE[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e FAILURE_TYPE) String() string { + if l, ok := labels_FAILURE_TYPE[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/development/enum_failure_unit.go b/pkg/dialects/development/enum_failure_unit.go new file mode 100644 index 000000000..b5a5c74cd --- /dev/null +++ b/pkg/dialects/development/enum_failure_unit.go @@ -0,0 +1,57 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package development + +import ( + "errors" +) + +// List of possible units where failures can be injected. +type FAILURE_UNIT int + +const ( + FAILURE_UNIT_SENSOR_GYRO FAILURE_UNIT = 0 + FAILURE_UNIT_SENSOR_ACCEL FAILURE_UNIT = 1 + FAILURE_UNIT_SENSOR_MAG FAILURE_UNIT = 2 + FAILURE_UNIT_SENSOR_BARO FAILURE_UNIT = 3 + FAILURE_UNIT_SENSOR_GPS FAILURE_UNIT = 4 + FAILURE_UNIT_SENSOR_OPTICAL_FLOW FAILURE_UNIT = 5 + FAILURE_UNIT_SENSOR_VIO FAILURE_UNIT = 6 + FAILURE_UNIT_SENSOR_DISTANCE_SENSOR FAILURE_UNIT = 7 + FAILURE_UNIT_SENSOR_AIRSPEED FAILURE_UNIT = 8 + FAILURE_UNIT_SYSTEM_BATTERY FAILURE_UNIT = 100 + FAILURE_UNIT_SYSTEM_MOTOR FAILURE_UNIT = 101 + FAILURE_UNIT_SYSTEM_SERVO FAILURE_UNIT = 102 + FAILURE_UNIT_SYSTEM_AVOIDANCE FAILURE_UNIT = 103 + FAILURE_UNIT_SYSTEM_RC_SIGNAL FAILURE_UNIT = 104 + FAILURE_UNIT_SYSTEM_MAVLINK_SIGNAL FAILURE_UNIT = 105 +) + +var labels_FAILURE_UNIT = map[FAILURE_UNIT]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e FAILURE_UNIT) MarshalText() ([]byte, error) { + if l, ok := labels_FAILURE_UNIT[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_FAILURE_UNIT = map[string]FAILURE_UNIT{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *FAILURE_UNIT) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_FAILURE_UNIT[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e FAILURE_UNIT) String() string { + if l, ok := labels_FAILURE_UNIT[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/development/enum_fence_action.go b/pkg/dialects/development/enum_fence_action.go new file mode 100644 index 000000000..a2495b3f9 --- /dev/null +++ b/pkg/dialects/development/enum_fence_action.go @@ -0,0 +1,58 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package development + +import ( + "errors" +) + +// Actions following geofence breach. +type FENCE_ACTION int + +const ( + // Disable fenced mode. If used in a plan this would mean the next fence is disabled. + FENCE_ACTION_NONE FENCE_ACTION = 0 + // Fly to geofence MAV_CMD_NAV_FENCE_RETURN_POINT in GUIDED mode. Note: This action is only supported by ArduPlane, and may not be supported in all versions. + FENCE_ACTION_GUIDED FENCE_ACTION = 1 + // Report fence breach, but don't take action + FENCE_ACTION_REPORT FENCE_ACTION = 2 + // Fly to geofence MAV_CMD_NAV_FENCE_RETURN_POINT with manual throttle control in GUIDED mode. Note: This action is only supported by ArduPlane, and may not be supported in all versions. + FENCE_ACTION_GUIDED_THR_PASS FENCE_ACTION = 3 + // Return/RTL mode. + FENCE_ACTION_RTL FENCE_ACTION = 4 + // Hold at current location. + FENCE_ACTION_HOLD FENCE_ACTION = 5 + // Termination failsafe. Motors are shut down (some flight stacks may trigger other failsafe actions). + FENCE_ACTION_TERMINATE FENCE_ACTION = 6 + // Land at current location. + FENCE_ACTION_LAND FENCE_ACTION = 7 +) + +var labels_FENCE_ACTION = map[FENCE_ACTION]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e FENCE_ACTION) MarshalText() ([]byte, error) { + if l, ok := labels_FENCE_ACTION[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_FENCE_ACTION = map[string]FENCE_ACTION{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *FENCE_ACTION) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_FENCE_ACTION[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e FENCE_ACTION) String() string { + if l, ok := labels_FENCE_ACTION[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/development/enum_fence_breach.go b/pkg/dialects/development/enum_fence_breach.go new file mode 100644 index 000000000..6b5995bfd --- /dev/null +++ b/pkg/dialects/development/enum_fence_breach.go @@ -0,0 +1,49 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package development + +import ( + "errors" +) + +type FENCE_BREACH int + +const ( + // No last fence breach + FENCE_BREACH_NONE FENCE_BREACH = 0 + // Breached minimum altitude + FENCE_BREACH_MINALT FENCE_BREACH = 1 + // Breached maximum altitude + FENCE_BREACH_MAXALT FENCE_BREACH = 2 + // Breached fence boundary + FENCE_BREACH_BOUNDARY FENCE_BREACH = 3 +) + +var labels_FENCE_BREACH = map[FENCE_BREACH]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e FENCE_BREACH) MarshalText() ([]byte, error) { + if l, ok := labels_FENCE_BREACH[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_FENCE_BREACH = map[string]FENCE_BREACH{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *FENCE_BREACH) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_FENCE_BREACH[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e FENCE_BREACH) String() string { + if l, ok := labels_FENCE_BREACH[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/development/enum_fence_mitigate.go b/pkg/dialects/development/enum_fence_mitigate.go new file mode 100644 index 000000000..93543ba68 --- /dev/null +++ b/pkg/dialects/development/enum_fence_mitigate.go @@ -0,0 +1,48 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package development + +import ( + "errors" +) + +// Actions being taken to mitigate/prevent fence breach +type FENCE_MITIGATE int + +const ( + // Unknown + FENCE_MITIGATE_UNKNOWN FENCE_MITIGATE = 0 + // No actions being taken + FENCE_MITIGATE_NONE FENCE_MITIGATE = 1 + // Velocity limiting active to prevent breach + FENCE_MITIGATE_VEL_LIMIT FENCE_MITIGATE = 2 +) + +var labels_FENCE_MITIGATE = map[FENCE_MITIGATE]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e FENCE_MITIGATE) MarshalText() ([]byte, error) { + if l, ok := labels_FENCE_MITIGATE[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_FENCE_MITIGATE = map[string]FENCE_MITIGATE{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *FENCE_MITIGATE) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_FENCE_MITIGATE[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e FENCE_MITIGATE) String() string { + if l, ok := labels_FENCE_MITIGATE[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/development/enum_firmware_version_type.go b/pkg/dialects/development/enum_firmware_version_type.go new file mode 100644 index 000000000..04f43872f --- /dev/null +++ b/pkg/dialects/development/enum_firmware_version_type.go @@ -0,0 +1,52 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package development + +import ( + "errors" +) + +// These values define the type of firmware release. These values indicate the first version or release of this type. For example the first alpha release would be 64, the second would be 65. +type FIRMWARE_VERSION_TYPE int + +const ( + // development release + FIRMWARE_VERSION_TYPE_DEV FIRMWARE_VERSION_TYPE = 0 + // alpha release + FIRMWARE_VERSION_TYPE_ALPHA FIRMWARE_VERSION_TYPE = 64 + // beta release + FIRMWARE_VERSION_TYPE_BETA FIRMWARE_VERSION_TYPE = 128 + // release candidate + FIRMWARE_VERSION_TYPE_RC FIRMWARE_VERSION_TYPE = 192 + // official stable release + FIRMWARE_VERSION_TYPE_OFFICIAL FIRMWARE_VERSION_TYPE = 255 +) + +var labels_FIRMWARE_VERSION_TYPE = map[FIRMWARE_VERSION_TYPE]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e FIRMWARE_VERSION_TYPE) MarshalText() ([]byte, error) { + if l, ok := labels_FIRMWARE_VERSION_TYPE[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_FIRMWARE_VERSION_TYPE = map[string]FIRMWARE_VERSION_TYPE{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *FIRMWARE_VERSION_TYPE) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_FIRMWARE_VERSION_TYPE[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e FIRMWARE_VERSION_TYPE) String() string { + if l, ok := labels_FIRMWARE_VERSION_TYPE[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/development/enum_gimbal_device_cap_flags.go b/pkg/dialects/development/enum_gimbal_device_cap_flags.go new file mode 100644 index 000000000..5d8e39129 --- /dev/null +++ b/pkg/dialects/development/enum_gimbal_device_cap_flags.go @@ -0,0 +1,66 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package development + +import ( + "errors" +) + +// Gimbal device (low level) capability flags (bitmap) +type GIMBAL_DEVICE_CAP_FLAGS int + +const ( + // Gimbal device supports a retracted position + GIMBAL_DEVICE_CAP_FLAGS_HAS_RETRACT GIMBAL_DEVICE_CAP_FLAGS = 1 + // Gimbal device supports a horizontal, forward looking position, stabilized + GIMBAL_DEVICE_CAP_FLAGS_HAS_NEUTRAL GIMBAL_DEVICE_CAP_FLAGS = 2 + // Gimbal device supports rotating around roll axis. + GIMBAL_DEVICE_CAP_FLAGS_HAS_ROLL_AXIS GIMBAL_DEVICE_CAP_FLAGS = 4 + // Gimbal device supports to follow a roll angle relative to the vehicle + GIMBAL_DEVICE_CAP_FLAGS_HAS_ROLL_FOLLOW GIMBAL_DEVICE_CAP_FLAGS = 8 + // Gimbal device supports locking to an roll angle (generally that's the default with roll stabilized) + GIMBAL_DEVICE_CAP_FLAGS_HAS_ROLL_LOCK GIMBAL_DEVICE_CAP_FLAGS = 16 + // Gimbal device supports rotating around pitch axis. + GIMBAL_DEVICE_CAP_FLAGS_HAS_PITCH_AXIS GIMBAL_DEVICE_CAP_FLAGS = 32 + // Gimbal device supports to follow a pitch angle relative to the vehicle + GIMBAL_DEVICE_CAP_FLAGS_HAS_PITCH_FOLLOW GIMBAL_DEVICE_CAP_FLAGS = 64 + // Gimbal device supports locking to an pitch angle (generally that's the default with pitch stabilized) + GIMBAL_DEVICE_CAP_FLAGS_HAS_PITCH_LOCK GIMBAL_DEVICE_CAP_FLAGS = 128 + // Gimbal device supports rotating around yaw axis. + GIMBAL_DEVICE_CAP_FLAGS_HAS_YAW_AXIS GIMBAL_DEVICE_CAP_FLAGS = 256 + // Gimbal device supports to follow a yaw angle relative to the vehicle (generally that's the default) + GIMBAL_DEVICE_CAP_FLAGS_HAS_YAW_FOLLOW GIMBAL_DEVICE_CAP_FLAGS = 512 + // Gimbal device supports locking to an absolute heading (often this is an option available) + GIMBAL_DEVICE_CAP_FLAGS_HAS_YAW_LOCK GIMBAL_DEVICE_CAP_FLAGS = 1024 + // Gimbal device supports yawing/panning infinetely (e.g. using slip disk). + GIMBAL_DEVICE_CAP_FLAGS_SUPPORTS_INFINITE_YAW GIMBAL_DEVICE_CAP_FLAGS = 2048 +) + +var labels_GIMBAL_DEVICE_CAP_FLAGS = map[GIMBAL_DEVICE_CAP_FLAGS]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e GIMBAL_DEVICE_CAP_FLAGS) MarshalText() ([]byte, error) { + if l, ok := labels_GIMBAL_DEVICE_CAP_FLAGS[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_GIMBAL_DEVICE_CAP_FLAGS = map[string]GIMBAL_DEVICE_CAP_FLAGS{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *GIMBAL_DEVICE_CAP_FLAGS) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_GIMBAL_DEVICE_CAP_FLAGS[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e GIMBAL_DEVICE_CAP_FLAGS) String() string { + if l, ok := labels_GIMBAL_DEVICE_CAP_FLAGS[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/development/enum_gimbal_device_error_flags.go b/pkg/dialects/development/enum_gimbal_device_error_flags.go new file mode 100644 index 000000000..9a602ad56 --- /dev/null +++ b/pkg/dialects/development/enum_gimbal_device_error_flags.go @@ -0,0 +1,60 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package development + +import ( + "errors" +) + +// Gimbal device (low level) error flags (bitmap, 0 means no error) +type GIMBAL_DEVICE_ERROR_FLAGS int + +const ( + // Gimbal device is limited by hardware roll limit. + GIMBAL_DEVICE_ERROR_FLAGS_AT_ROLL_LIMIT GIMBAL_DEVICE_ERROR_FLAGS = 1 + // Gimbal device is limited by hardware pitch limit. + GIMBAL_DEVICE_ERROR_FLAGS_AT_PITCH_LIMIT GIMBAL_DEVICE_ERROR_FLAGS = 2 + // Gimbal device is limited by hardware yaw limit. + GIMBAL_DEVICE_ERROR_FLAGS_AT_YAW_LIMIT GIMBAL_DEVICE_ERROR_FLAGS = 4 + // There is an error with the gimbal encoders. + GIMBAL_DEVICE_ERROR_FLAGS_ENCODER_ERROR GIMBAL_DEVICE_ERROR_FLAGS = 8 + // There is an error with the gimbal power source. + GIMBAL_DEVICE_ERROR_FLAGS_POWER_ERROR GIMBAL_DEVICE_ERROR_FLAGS = 16 + // There is an error with the gimbal motor's. + GIMBAL_DEVICE_ERROR_FLAGS_MOTOR_ERROR GIMBAL_DEVICE_ERROR_FLAGS = 32 + // There is an error with the gimbal's software. + GIMBAL_DEVICE_ERROR_FLAGS_SOFTWARE_ERROR GIMBAL_DEVICE_ERROR_FLAGS = 64 + // There is an error with the gimbal's communication. + GIMBAL_DEVICE_ERROR_FLAGS_COMMS_ERROR GIMBAL_DEVICE_ERROR_FLAGS = 128 + // Gimbal is currently calibrating. + GIMBAL_DEVICE_ERROR_FLAGS_CALIBRATION_RUNNING GIMBAL_DEVICE_ERROR_FLAGS = 256 +) + +var labels_GIMBAL_DEVICE_ERROR_FLAGS = map[GIMBAL_DEVICE_ERROR_FLAGS]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e GIMBAL_DEVICE_ERROR_FLAGS) MarshalText() ([]byte, error) { + if l, ok := labels_GIMBAL_DEVICE_ERROR_FLAGS[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_GIMBAL_DEVICE_ERROR_FLAGS = map[string]GIMBAL_DEVICE_ERROR_FLAGS{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *GIMBAL_DEVICE_ERROR_FLAGS) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_GIMBAL_DEVICE_ERROR_FLAGS[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e GIMBAL_DEVICE_ERROR_FLAGS) String() string { + if l, ok := labels_GIMBAL_DEVICE_ERROR_FLAGS[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/development/enum_gimbal_device_flags.go b/pkg/dialects/development/enum_gimbal_device_flags.go new file mode 100644 index 000000000..568eb2eff --- /dev/null +++ b/pkg/dialects/development/enum_gimbal_device_flags.go @@ -0,0 +1,52 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package development + +import ( + "errors" +) + +// Flags for gimbal device (lower level) operation. +type GIMBAL_DEVICE_FLAGS int + +const ( + // Set to retracted safe position (no stabilization), takes presedence over all other flags. + GIMBAL_DEVICE_FLAGS_RETRACT GIMBAL_DEVICE_FLAGS = 1 + // Set to neutral/default position, taking precedence over all other flags except RETRACT. Neutral is commonly forward-facing and horizontal (pitch=yaw=0) but may be any orientation. + GIMBAL_DEVICE_FLAGS_NEUTRAL GIMBAL_DEVICE_FLAGS = 2 + // Lock roll angle to absolute angle relative to horizon (not relative to drone). This is generally the default with a stabilizing gimbal. + GIMBAL_DEVICE_FLAGS_ROLL_LOCK GIMBAL_DEVICE_FLAGS = 4 + // Lock pitch angle to absolute angle relative to horizon (not relative to drone). This is generally the default. + GIMBAL_DEVICE_FLAGS_PITCH_LOCK GIMBAL_DEVICE_FLAGS = 8 + // Lock yaw angle to absolute angle relative to North (not relative to drone). If this flag is set, the quaternion is in the Earth frame with the x-axis pointing North (yaw absolute). If this flag is not set, the quaternion frame is in the Earth frame rotated so that the x-axis is pointing forward (yaw relative to vehicle). + GIMBAL_DEVICE_FLAGS_YAW_LOCK GIMBAL_DEVICE_FLAGS = 16 +) + +var labels_GIMBAL_DEVICE_FLAGS = map[GIMBAL_DEVICE_FLAGS]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e GIMBAL_DEVICE_FLAGS) MarshalText() ([]byte, error) { + if l, ok := labels_GIMBAL_DEVICE_FLAGS[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_GIMBAL_DEVICE_FLAGS = map[string]GIMBAL_DEVICE_FLAGS{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *GIMBAL_DEVICE_FLAGS) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_GIMBAL_DEVICE_FLAGS[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e GIMBAL_DEVICE_FLAGS) String() string { + if l, ok := labels_GIMBAL_DEVICE_FLAGS[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/development/enum_gimbal_manager_cap_flags.go b/pkg/dialects/development/enum_gimbal_manager_cap_flags.go new file mode 100644 index 000000000..873049643 --- /dev/null +++ b/pkg/dialects/development/enum_gimbal_manager_cap_flags.go @@ -0,0 +1,70 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package development + +import ( + "errors" +) + +// Gimbal manager high level capability flags (bitmap). The first 16 bits are identical to the GIMBAL_DEVICE_CAP_FLAGS. However, the gimbal manager does not need to copy the flags from the gimbal but can also enhance the capabilities and thus add flags. +type GIMBAL_MANAGER_CAP_FLAGS int + +const ( + // Based on GIMBAL_DEVICE_CAP_FLAGS_HAS_RETRACT. + GIMBAL_MANAGER_CAP_FLAGS_HAS_RETRACT GIMBAL_MANAGER_CAP_FLAGS = 1 + // Based on GIMBAL_DEVICE_CAP_FLAGS_HAS_NEUTRAL. + GIMBAL_MANAGER_CAP_FLAGS_HAS_NEUTRAL GIMBAL_MANAGER_CAP_FLAGS = 2 + // Based on GIMBAL_DEVICE_CAP_FLAGS_HAS_ROLL_AXIS. + GIMBAL_MANAGER_CAP_FLAGS_HAS_ROLL_AXIS GIMBAL_MANAGER_CAP_FLAGS = 4 + // Based on GIMBAL_DEVICE_CAP_FLAGS_HAS_ROLL_FOLLOW. + GIMBAL_MANAGER_CAP_FLAGS_HAS_ROLL_FOLLOW GIMBAL_MANAGER_CAP_FLAGS = 8 + // Based on GIMBAL_DEVICE_CAP_FLAGS_HAS_ROLL_LOCK. + GIMBAL_MANAGER_CAP_FLAGS_HAS_ROLL_LOCK GIMBAL_MANAGER_CAP_FLAGS = 16 + // Based on GIMBAL_DEVICE_CAP_FLAGS_HAS_PITCH_AXIS. + GIMBAL_MANAGER_CAP_FLAGS_HAS_PITCH_AXIS GIMBAL_MANAGER_CAP_FLAGS = 32 + // Based on GIMBAL_DEVICE_CAP_FLAGS_HAS_PITCH_FOLLOW. + GIMBAL_MANAGER_CAP_FLAGS_HAS_PITCH_FOLLOW GIMBAL_MANAGER_CAP_FLAGS = 64 + // Based on GIMBAL_DEVICE_CAP_FLAGS_HAS_PITCH_LOCK. + GIMBAL_MANAGER_CAP_FLAGS_HAS_PITCH_LOCK GIMBAL_MANAGER_CAP_FLAGS = 128 + // Based on GIMBAL_DEVICE_CAP_FLAGS_HAS_YAW_AXIS. + GIMBAL_MANAGER_CAP_FLAGS_HAS_YAW_AXIS GIMBAL_MANAGER_CAP_FLAGS = 256 + // Based on GIMBAL_DEVICE_CAP_FLAGS_HAS_YAW_FOLLOW. + GIMBAL_MANAGER_CAP_FLAGS_HAS_YAW_FOLLOW GIMBAL_MANAGER_CAP_FLAGS = 512 + // Based on GIMBAL_DEVICE_CAP_FLAGS_HAS_YAW_LOCK. + GIMBAL_MANAGER_CAP_FLAGS_HAS_YAW_LOCK GIMBAL_MANAGER_CAP_FLAGS = 1024 + // Based on GIMBAL_DEVICE_CAP_FLAGS_SUPPORTS_INFINITE_YAW. + GIMBAL_MANAGER_CAP_FLAGS_SUPPORTS_INFINITE_YAW GIMBAL_MANAGER_CAP_FLAGS = 2048 + // Gimbal manager supports to point to a local position. + GIMBAL_MANAGER_CAP_FLAGS_CAN_POINT_LOCATION_LOCAL GIMBAL_MANAGER_CAP_FLAGS = 65536 + // Gimbal manager supports to point to a global latitude, longitude, altitude position. + GIMBAL_MANAGER_CAP_FLAGS_CAN_POINT_LOCATION_GLOBAL GIMBAL_MANAGER_CAP_FLAGS = 131072 +) + +var labels_GIMBAL_MANAGER_CAP_FLAGS = map[GIMBAL_MANAGER_CAP_FLAGS]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e GIMBAL_MANAGER_CAP_FLAGS) MarshalText() ([]byte, error) { + if l, ok := labels_GIMBAL_MANAGER_CAP_FLAGS[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_GIMBAL_MANAGER_CAP_FLAGS = map[string]GIMBAL_MANAGER_CAP_FLAGS{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *GIMBAL_MANAGER_CAP_FLAGS) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_GIMBAL_MANAGER_CAP_FLAGS[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e GIMBAL_MANAGER_CAP_FLAGS) String() string { + if l, ok := labels_GIMBAL_MANAGER_CAP_FLAGS[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/development/enum_gimbal_manager_flags.go b/pkg/dialects/development/enum_gimbal_manager_flags.go new file mode 100644 index 000000000..1552476dd --- /dev/null +++ b/pkg/dialects/development/enum_gimbal_manager_flags.go @@ -0,0 +1,52 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package development + +import ( + "errors" +) + +// Flags for high level gimbal manager operation The first 16 bits are identical to the GIMBAL_DEVICE_FLAGS. +type GIMBAL_MANAGER_FLAGS int + +const ( + // Based on GIMBAL_DEVICE_FLAGS_RETRACT + GIMBAL_MANAGER_FLAGS_RETRACT GIMBAL_MANAGER_FLAGS = 1 + // Based on GIMBAL_DEVICE_FLAGS_NEUTRAL + GIMBAL_MANAGER_FLAGS_NEUTRAL GIMBAL_MANAGER_FLAGS = 2 + // Based on GIMBAL_DEVICE_FLAGS_ROLL_LOCK + GIMBAL_MANAGER_FLAGS_ROLL_LOCK GIMBAL_MANAGER_FLAGS = 4 + // Based on GIMBAL_DEVICE_FLAGS_PITCH_LOCK + GIMBAL_MANAGER_FLAGS_PITCH_LOCK GIMBAL_MANAGER_FLAGS = 8 + // Based on GIMBAL_DEVICE_FLAGS_YAW_LOCK + GIMBAL_MANAGER_FLAGS_YAW_LOCK GIMBAL_MANAGER_FLAGS = 16 +) + +var labels_GIMBAL_MANAGER_FLAGS = map[GIMBAL_MANAGER_FLAGS]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e GIMBAL_MANAGER_FLAGS) MarshalText() ([]byte, error) { + if l, ok := labels_GIMBAL_MANAGER_FLAGS[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_GIMBAL_MANAGER_FLAGS = map[string]GIMBAL_MANAGER_FLAGS{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *GIMBAL_MANAGER_FLAGS) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_GIMBAL_MANAGER_FLAGS[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e GIMBAL_MANAGER_FLAGS) String() string { + if l, ok := labels_GIMBAL_MANAGER_FLAGS[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/development/enum_gps_fix_type.go b/pkg/dialects/development/enum_gps_fix_type.go new file mode 100644 index 000000000..90b766b65 --- /dev/null +++ b/pkg/dialects/development/enum_gps_fix_type.go @@ -0,0 +1,60 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package development + +import ( + "errors" +) + +// Type of GPS fix +type GPS_FIX_TYPE int + +const ( + // No GPS connected + GPS_FIX_TYPE_NO_GPS GPS_FIX_TYPE = 0 + // No position information, GPS is connected + GPS_FIX_TYPE_NO_FIX GPS_FIX_TYPE = 1 + // 2D position + GPS_FIX_TYPE_2D_FIX GPS_FIX_TYPE = 2 + // 3D position + GPS_FIX_TYPE_3D_FIX GPS_FIX_TYPE = 3 + // DGPS/SBAS aided 3D position + GPS_FIX_TYPE_DGPS GPS_FIX_TYPE = 4 + // RTK float, 3D position + GPS_FIX_TYPE_RTK_FLOAT GPS_FIX_TYPE = 5 + // RTK Fixed, 3D position + GPS_FIX_TYPE_RTK_FIXED GPS_FIX_TYPE = 6 + // Static fixed, typically used for base stations + GPS_FIX_TYPE_STATIC GPS_FIX_TYPE = 7 + // PPP, 3D position. + GPS_FIX_TYPE_PPP GPS_FIX_TYPE = 8 +) + +var labels_GPS_FIX_TYPE = map[GPS_FIX_TYPE]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e GPS_FIX_TYPE) MarshalText() ([]byte, error) { + if l, ok := labels_GPS_FIX_TYPE[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_GPS_FIX_TYPE = map[string]GPS_FIX_TYPE{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *GPS_FIX_TYPE) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_GPS_FIX_TYPE[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e GPS_FIX_TYPE) String() string { + if l, ok := labels_GPS_FIX_TYPE[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/development/enum_gps_input_ignore_flags.go b/pkg/dialects/development/enum_gps_input_ignore_flags.go new file mode 100644 index 000000000..04b9d65d8 --- /dev/null +++ b/pkg/dialects/development/enum_gps_input_ignore_flags.go @@ -0,0 +1,57 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package development + +import ( + "errors" +) + +type GPS_INPUT_IGNORE_FLAGS int + +const ( + // ignore altitude field + GPS_INPUT_IGNORE_FLAG_ALT GPS_INPUT_IGNORE_FLAGS = 1 + // ignore hdop field + GPS_INPUT_IGNORE_FLAG_HDOP GPS_INPUT_IGNORE_FLAGS = 2 + // ignore vdop field + GPS_INPUT_IGNORE_FLAG_VDOP GPS_INPUT_IGNORE_FLAGS = 4 + // ignore horizontal velocity field (vn and ve) + GPS_INPUT_IGNORE_FLAG_VEL_HORIZ GPS_INPUT_IGNORE_FLAGS = 8 + // ignore vertical velocity field (vd) + GPS_INPUT_IGNORE_FLAG_VEL_VERT GPS_INPUT_IGNORE_FLAGS = 16 + // ignore speed accuracy field + GPS_INPUT_IGNORE_FLAG_SPEED_ACCURACY GPS_INPUT_IGNORE_FLAGS = 32 + // ignore horizontal accuracy field + GPS_INPUT_IGNORE_FLAG_HORIZONTAL_ACCURACY GPS_INPUT_IGNORE_FLAGS = 64 + // ignore vertical accuracy field + GPS_INPUT_IGNORE_FLAG_VERTICAL_ACCURACY GPS_INPUT_IGNORE_FLAGS = 128 +) + +var labels_GPS_INPUT_IGNORE_FLAGS = map[GPS_INPUT_IGNORE_FLAGS]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e GPS_INPUT_IGNORE_FLAGS) MarshalText() ([]byte, error) { + if l, ok := labels_GPS_INPUT_IGNORE_FLAGS[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_GPS_INPUT_IGNORE_FLAGS = map[string]GPS_INPUT_IGNORE_FLAGS{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *GPS_INPUT_IGNORE_FLAGS) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_GPS_INPUT_IGNORE_FLAGS[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e GPS_INPUT_IGNORE_FLAGS) String() string { + if l, ok := labels_GPS_INPUT_IGNORE_FLAGS[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/development/enum_gripper_actions.go b/pkg/dialects/development/enum_gripper_actions.go new file mode 100644 index 000000000..b657ae6bf --- /dev/null +++ b/pkg/dialects/development/enum_gripper_actions.go @@ -0,0 +1,46 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package development + +import ( + "errors" +) + +// Gripper actions. +type GRIPPER_ACTIONS int + +const ( + // Gripper release cargo. + GRIPPER_ACTION_RELEASE GRIPPER_ACTIONS = 0 + // Gripper grab onto cargo. + GRIPPER_ACTION_GRAB GRIPPER_ACTIONS = 1 +) + +var labels_GRIPPER_ACTIONS = map[GRIPPER_ACTIONS]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e GRIPPER_ACTIONS) MarshalText() ([]byte, error) { + if l, ok := labels_GRIPPER_ACTIONS[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_GRIPPER_ACTIONS = map[string]GRIPPER_ACTIONS{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *GRIPPER_ACTIONS) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_GRIPPER_ACTIONS[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e GRIPPER_ACTIONS) String() string { + if l, ok := labels_GRIPPER_ACTIONS[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/development/enum_highres_imu_updated_flags.go b/pkg/dialects/development/enum_highres_imu_updated_flags.go new file mode 100644 index 000000000..0b32b80cf --- /dev/null +++ b/pkg/dialects/development/enum_highres_imu_updated_flags.go @@ -0,0 +1,72 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package development + +import ( + "errors" +) + +// Flags in the HIGHRES_IMU message indicate which fields have updated since the last message +type HIGHRES_IMU_UPDATED_FLAGS int + +const ( + // None of the fields in HIGHRES_IMU have been updated + HIGHRES_IMU_UPDATED_NONE HIGHRES_IMU_UPDATED_FLAGS = 0 + // The value in the xacc field has been updated + HIGHRES_IMU_UPDATED_XACC HIGHRES_IMU_UPDATED_FLAGS = 1 + // The value in the yacc field has been updated + HIGHRES_IMU_UPDATED_YACC HIGHRES_IMU_UPDATED_FLAGS = 2 + // The value in the zacc field has been updated since + HIGHRES_IMU_UPDATED_ZACC HIGHRES_IMU_UPDATED_FLAGS = 4 + // The value in the xgyro field has been updated + HIGHRES_IMU_UPDATED_XGYRO HIGHRES_IMU_UPDATED_FLAGS = 8 + // The value in the ygyro field has been updated + HIGHRES_IMU_UPDATED_YGYRO HIGHRES_IMU_UPDATED_FLAGS = 16 + // The value in the zgyro field has been updated + HIGHRES_IMU_UPDATED_ZGYRO HIGHRES_IMU_UPDATED_FLAGS = 32 + // The value in the xmag field has been updated + HIGHRES_IMU_UPDATED_XMAG HIGHRES_IMU_UPDATED_FLAGS = 64 + // The value in the ymag field has been updated + HIGHRES_IMU_UPDATED_YMAG HIGHRES_IMU_UPDATED_FLAGS = 128 + // The value in the zmag field has been updated + HIGHRES_IMU_UPDATED_ZMAG HIGHRES_IMU_UPDATED_FLAGS = 256 + // The value in the abs_pressure field has been updated + HIGHRES_IMU_UPDATED_ABS_PRESSURE HIGHRES_IMU_UPDATED_FLAGS = 512 + // The value in the diff_pressure field has been updated + HIGHRES_IMU_UPDATED_DIFF_PRESSURE HIGHRES_IMU_UPDATED_FLAGS = 1024 + // The value in the pressure_alt field has been updated + HIGHRES_IMU_UPDATED_PRESSURE_ALT HIGHRES_IMU_UPDATED_FLAGS = 2048 + // The value in the temperature field has been updated + HIGHRES_IMU_UPDATED_TEMPERATURE HIGHRES_IMU_UPDATED_FLAGS = 4096 + // All fields in HIGHRES_IMU have been updated. + HIGHRES_IMU_UPDATED_ALL HIGHRES_IMU_UPDATED_FLAGS = 65535 +) + +var labels_HIGHRES_IMU_UPDATED_FLAGS = map[HIGHRES_IMU_UPDATED_FLAGS]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e HIGHRES_IMU_UPDATED_FLAGS) MarshalText() ([]byte, error) { + if l, ok := labels_HIGHRES_IMU_UPDATED_FLAGS[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_HIGHRES_IMU_UPDATED_FLAGS = map[string]HIGHRES_IMU_UPDATED_FLAGS{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *HIGHRES_IMU_UPDATED_FLAGS) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_HIGHRES_IMU_UPDATED_FLAGS[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e HIGHRES_IMU_UPDATED_FLAGS) String() string { + if l, ok := labels_HIGHRES_IMU_UPDATED_FLAGS[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/development/enum_hil_sensor_updated_flags.go b/pkg/dialects/development/enum_hil_sensor_updated_flags.go new file mode 100644 index 000000000..79f0df964 --- /dev/null +++ b/pkg/dialects/development/enum_hil_sensor_updated_flags.go @@ -0,0 +1,72 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package development + +import ( + "errors" +) + +// Flags in the HIL_SENSOR message indicate which fields have updated since the last message +type HIL_SENSOR_UPDATED_FLAGS int + +const ( + // None of the fields in HIL_SENSOR have been updated + HIL_SENSOR_UPDATED_NONE HIL_SENSOR_UPDATED_FLAGS = 0 + // The value in the xacc field has been updated + HIL_SENSOR_UPDATED_XACC HIL_SENSOR_UPDATED_FLAGS = 1 + // The value in the yacc field has been updated + HIL_SENSOR_UPDATED_YACC HIL_SENSOR_UPDATED_FLAGS = 2 + // The value in the zacc field has been updated + HIL_SENSOR_UPDATED_ZACC HIL_SENSOR_UPDATED_FLAGS = 4 + // The value in the xgyro field has been updated + HIL_SENSOR_UPDATED_XGYRO HIL_SENSOR_UPDATED_FLAGS = 8 + // The value in the ygyro field has been updated + HIL_SENSOR_UPDATED_YGYRO HIL_SENSOR_UPDATED_FLAGS = 16 + // The value in the zgyro field has been updated + HIL_SENSOR_UPDATED_ZGYRO HIL_SENSOR_UPDATED_FLAGS = 32 + // The value in the xmag field has been updated + HIL_SENSOR_UPDATED_XMAG HIL_SENSOR_UPDATED_FLAGS = 64 + // The value in the ymag field has been updated + HIL_SENSOR_UPDATED_YMAG HIL_SENSOR_UPDATED_FLAGS = 128 + // The value in the zmag field has been updated + HIL_SENSOR_UPDATED_ZMAG HIL_SENSOR_UPDATED_FLAGS = 256 + // The value in the abs_pressure field has been updated + HIL_SENSOR_UPDATED_ABS_PRESSURE HIL_SENSOR_UPDATED_FLAGS = 512 + // The value in the diff_pressure field has been updated + HIL_SENSOR_UPDATED_DIFF_PRESSURE HIL_SENSOR_UPDATED_FLAGS = 1024 + // The value in the pressure_alt field has been updated + HIL_SENSOR_UPDATED_PRESSURE_ALT HIL_SENSOR_UPDATED_FLAGS = 2048 + // The value in the temperature field has been updated + HIL_SENSOR_UPDATED_TEMPERATURE HIL_SENSOR_UPDATED_FLAGS = 4096 + // Full reset of attitude/position/velocities/etc was performed in sim (Bit 31). + HIL_SENSOR_UPDATED_RESET HIL_SENSOR_UPDATED_FLAGS = 2147483648 +) + +var labels_HIL_SENSOR_UPDATED_FLAGS = map[HIL_SENSOR_UPDATED_FLAGS]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e HIL_SENSOR_UPDATED_FLAGS) MarshalText() ([]byte, error) { + if l, ok := labels_HIL_SENSOR_UPDATED_FLAGS[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_HIL_SENSOR_UPDATED_FLAGS = map[string]HIL_SENSOR_UPDATED_FLAGS{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *HIL_SENSOR_UPDATED_FLAGS) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_HIL_SENSOR_UPDATED_FLAGS[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e HIL_SENSOR_UPDATED_FLAGS) String() string { + if l, ok := labels_HIL_SENSOR_UPDATED_FLAGS[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/development/enum_hl_failure_flag.go b/pkg/dialects/development/enum_hl_failure_flag.go new file mode 100644 index 000000000..4493d3832 --- /dev/null +++ b/pkg/dialects/development/enum_hl_failure_flag.go @@ -0,0 +1,70 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package development + +import ( + "errors" +) + +// Flags to report failure cases over the high latency telemtry. +type HL_FAILURE_FLAG int + +const ( + // GPS failure. + HL_FAILURE_FLAG_GPS HL_FAILURE_FLAG = 1 + // Differential pressure sensor failure. + HL_FAILURE_FLAG_DIFFERENTIAL_PRESSURE HL_FAILURE_FLAG = 2 + // Absolute pressure sensor failure. + HL_FAILURE_FLAG_ABSOLUTE_PRESSURE HL_FAILURE_FLAG = 4 + // Accelerometer sensor failure. + HL_FAILURE_FLAG_3D_ACCEL HL_FAILURE_FLAG = 8 + // Gyroscope sensor failure. + HL_FAILURE_FLAG_3D_GYRO HL_FAILURE_FLAG = 16 + // Magnetometer sensor failure. + HL_FAILURE_FLAG_3D_MAG HL_FAILURE_FLAG = 32 + // Terrain subsystem failure. + HL_FAILURE_FLAG_TERRAIN HL_FAILURE_FLAG = 64 + // Battery failure/critical low battery. + HL_FAILURE_FLAG_BATTERY HL_FAILURE_FLAG = 128 + // RC receiver failure/no rc connection. + HL_FAILURE_FLAG_RC_RECEIVER HL_FAILURE_FLAG = 256 + // Offboard link failure. + HL_FAILURE_FLAG_OFFBOARD_LINK HL_FAILURE_FLAG = 512 + // Engine failure. + HL_FAILURE_FLAG_ENGINE HL_FAILURE_FLAG = 1024 + // Geofence violation. + HL_FAILURE_FLAG_GEOFENCE HL_FAILURE_FLAG = 2048 + // Estimator failure, for example measurement rejection or large variances. + HL_FAILURE_FLAG_ESTIMATOR HL_FAILURE_FLAG = 4096 + // Mission failure. + HL_FAILURE_FLAG_MISSION HL_FAILURE_FLAG = 8192 +) + +var labels_HL_FAILURE_FLAG = map[HL_FAILURE_FLAG]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e HL_FAILURE_FLAG) MarshalText() ([]byte, error) { + if l, ok := labels_HL_FAILURE_FLAG[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_HL_FAILURE_FLAG = map[string]HL_FAILURE_FLAG{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *HL_FAILURE_FLAG) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_HL_FAILURE_FLAG[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e HL_FAILURE_FLAG) String() string { + if l, ok := labels_HL_FAILURE_FLAG[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/development/enum_landing_target_type.go b/pkg/dialects/development/enum_landing_target_type.go new file mode 100644 index 000000000..7a238b9d0 --- /dev/null +++ b/pkg/dialects/development/enum_landing_target_type.go @@ -0,0 +1,50 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package development + +import ( + "errors" +) + +// Type of landing target +type LANDING_TARGET_TYPE int + +const ( + // Landing target signaled by light beacon (ex: IR-LOCK) + LANDING_TARGET_TYPE_LIGHT_BEACON LANDING_TARGET_TYPE = 0 + // Landing target signaled by radio beacon (ex: ILS, NDB) + LANDING_TARGET_TYPE_RADIO_BEACON LANDING_TARGET_TYPE = 1 + // Landing target represented by a fiducial marker (ex: ARTag) + LANDING_TARGET_TYPE_VISION_FIDUCIAL LANDING_TARGET_TYPE = 2 + // Landing target represented by a pre-defined visual shape/feature (ex: X-marker, H-marker, square) + LANDING_TARGET_TYPE_VISION_OTHER LANDING_TARGET_TYPE = 3 +) + +var labels_LANDING_TARGET_TYPE = map[LANDING_TARGET_TYPE]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e LANDING_TARGET_TYPE) MarshalText() ([]byte, error) { + if l, ok := labels_LANDING_TARGET_TYPE[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_LANDING_TARGET_TYPE = map[string]LANDING_TARGET_TYPE{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *LANDING_TARGET_TYPE) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_LANDING_TARGET_TYPE[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e LANDING_TARGET_TYPE) String() string { + if l, ok := labels_LANDING_TARGET_TYPE[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/development/enum_mag_cal_status.go b/pkg/dialects/development/enum_mag_cal_status.go new file mode 100644 index 000000000..847e17976 --- /dev/null +++ b/pkg/dialects/development/enum_mag_cal_status.go @@ -0,0 +1,49 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package development + +import ( + "errors" +) + +type MAG_CAL_STATUS int + +const ( + MAG_CAL_NOT_STARTED MAG_CAL_STATUS = 0 + MAG_CAL_WAITING_TO_START MAG_CAL_STATUS = 1 + MAG_CAL_RUNNING_STEP_ONE MAG_CAL_STATUS = 2 + MAG_CAL_RUNNING_STEP_TWO MAG_CAL_STATUS = 3 + MAG_CAL_SUCCESS MAG_CAL_STATUS = 4 + MAG_CAL_FAILED MAG_CAL_STATUS = 5 + MAG_CAL_BAD_ORIENTATION MAG_CAL_STATUS = 6 + MAG_CAL_BAD_RADIUS MAG_CAL_STATUS = 7 +) + +var labels_MAG_CAL_STATUS = map[MAG_CAL_STATUS]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAG_CAL_STATUS) MarshalText() ([]byte, error) { + if l, ok := labels_MAG_CAL_STATUS[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAG_CAL_STATUS = map[string]MAG_CAL_STATUS{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAG_CAL_STATUS) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAG_CAL_STATUS[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAG_CAL_STATUS) String() string { + if l, ok := labels_MAG_CAL_STATUS[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/development/enum_mav_arm_auth_denied_reason.go b/pkg/dialects/development/enum_mav_arm_auth_denied_reason.go new file mode 100644 index 000000000..454e11f13 --- /dev/null +++ b/pkg/dialects/development/enum_mav_arm_auth_denied_reason.go @@ -0,0 +1,53 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package development + +import ( + "errors" +) + +type MAV_ARM_AUTH_DENIED_REASON int + +const ( + // Not a specific reason + MAV_ARM_AUTH_DENIED_REASON_GENERIC MAV_ARM_AUTH_DENIED_REASON = 0 + // Authorizer will send the error as string to GCS + MAV_ARM_AUTH_DENIED_REASON_NONE MAV_ARM_AUTH_DENIED_REASON = 1 + // At least one waypoint have a invalid value + MAV_ARM_AUTH_DENIED_REASON_INVALID_WAYPOINT MAV_ARM_AUTH_DENIED_REASON = 2 + // Timeout in the authorizer process(in case it depends on network) + MAV_ARM_AUTH_DENIED_REASON_TIMEOUT MAV_ARM_AUTH_DENIED_REASON = 3 + // Airspace of the mission in use by another vehicle, second result parameter can have the waypoint id that caused it to be denied. + MAV_ARM_AUTH_DENIED_REASON_AIRSPACE_IN_USE MAV_ARM_AUTH_DENIED_REASON = 4 + // Weather is not good to fly + MAV_ARM_AUTH_DENIED_REASON_BAD_WEATHER MAV_ARM_AUTH_DENIED_REASON = 5 +) + +var labels_MAV_ARM_AUTH_DENIED_REASON = map[MAV_ARM_AUTH_DENIED_REASON]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAV_ARM_AUTH_DENIED_REASON) MarshalText() ([]byte, error) { + if l, ok := labels_MAV_ARM_AUTH_DENIED_REASON[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAV_ARM_AUTH_DENIED_REASON = map[string]MAV_ARM_AUTH_DENIED_REASON{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAV_ARM_AUTH_DENIED_REASON) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAV_ARM_AUTH_DENIED_REASON[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAV_ARM_AUTH_DENIED_REASON) String() string { + if l, ok := labels_MAV_ARM_AUTH_DENIED_REASON[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/development/enum_mav_autopilot.go b/pkg/dialects/development/enum_mav_autopilot.go new file mode 100644 index 000000000..5a61f5b12 --- /dev/null +++ b/pkg/dialects/development/enum_mav_autopilot.go @@ -0,0 +1,84 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package development + +import ( + "errors" +) + +// Micro air vehicle / autopilot classes. This identifies the individual model. +type MAV_AUTOPILOT int + +const ( + // Generic autopilot, full support for everything + MAV_AUTOPILOT_GENERIC MAV_AUTOPILOT = 0 + // Reserved for future use. + MAV_AUTOPILOT_RESERVED MAV_AUTOPILOT = 1 + // SLUGS autopilot, http://slugsuav.soe.ucsc.edu + MAV_AUTOPILOT_SLUGS MAV_AUTOPILOT = 2 + // ArduPilot - Plane/Copter/Rover/Sub/Tracker, https://ardupilot.org + MAV_AUTOPILOT_ARDUPILOTMEGA MAV_AUTOPILOT = 3 + // OpenPilot, http://openpilot.org + MAV_AUTOPILOT_OPENPILOT MAV_AUTOPILOT = 4 + // Generic autopilot only supporting simple waypoints + MAV_AUTOPILOT_GENERIC_WAYPOINTS_ONLY MAV_AUTOPILOT = 5 + // Generic autopilot supporting waypoints and other simple navigation commands + MAV_AUTOPILOT_GENERIC_WAYPOINTS_AND_SIMPLE_NAVIGATION_ONLY MAV_AUTOPILOT = 6 + // Generic autopilot supporting the full mission command set + MAV_AUTOPILOT_GENERIC_MISSION_FULL MAV_AUTOPILOT = 7 + // No valid autopilot, e.g. a GCS or other MAVLink component + MAV_AUTOPILOT_INVALID MAV_AUTOPILOT = 8 + // PPZ UAV - http://nongnu.org/paparazzi + MAV_AUTOPILOT_PPZ MAV_AUTOPILOT = 9 + // UAV Dev Board + MAV_AUTOPILOT_UDB MAV_AUTOPILOT = 10 + // FlexiPilot + MAV_AUTOPILOT_FP MAV_AUTOPILOT = 11 + // PX4 Autopilot - http://px4.io/ + MAV_AUTOPILOT_PX4 MAV_AUTOPILOT = 12 + // SMACCMPilot - http://smaccmpilot.org + MAV_AUTOPILOT_SMACCMPILOT MAV_AUTOPILOT = 13 + // AutoQuad -- http://autoquad.org + MAV_AUTOPILOT_AUTOQUAD MAV_AUTOPILOT = 14 + // Armazila -- http://armazila.com + MAV_AUTOPILOT_ARMAZILA MAV_AUTOPILOT = 15 + // Aerob -- http://aerob.ru + MAV_AUTOPILOT_AEROB MAV_AUTOPILOT = 16 + // ASLUAV autopilot -- http://www.asl.ethz.ch + MAV_AUTOPILOT_ASLUAV MAV_AUTOPILOT = 17 + // SmartAP Autopilot - http://sky-drones.com + MAV_AUTOPILOT_SMARTAP MAV_AUTOPILOT = 18 + // AirRails - http://uaventure.com + MAV_AUTOPILOT_AIRRAILS MAV_AUTOPILOT = 19 + // Fusion Reflex - https://fusion.engineering + MAV_AUTOPILOT_REFLEX MAV_AUTOPILOT = 20 +) + +var labels_MAV_AUTOPILOT = map[MAV_AUTOPILOT]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAV_AUTOPILOT) MarshalText() ([]byte, error) { + if l, ok := labels_MAV_AUTOPILOT[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAV_AUTOPILOT = map[string]MAV_AUTOPILOT{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAV_AUTOPILOT) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAV_AUTOPILOT[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAV_AUTOPILOT) String() string { + if l, ok := labels_MAV_AUTOPILOT[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/development/enum_mav_battery_charge_state.go b/pkg/dialects/development/enum_mav_battery_charge_state.go new file mode 100644 index 000000000..5b2831cb4 --- /dev/null +++ b/pkg/dialects/development/enum_mav_battery_charge_state.go @@ -0,0 +1,58 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package development + +import ( + "errors" +) + +// Enumeration for battery charge states. +type MAV_BATTERY_CHARGE_STATE int + +const ( + // Low battery state is not provided + MAV_BATTERY_CHARGE_STATE_UNDEFINED MAV_BATTERY_CHARGE_STATE = 0 + // Battery is not in low state. Normal operation. + MAV_BATTERY_CHARGE_STATE_OK MAV_BATTERY_CHARGE_STATE = 1 + // Battery state is low, warn and monitor close. + MAV_BATTERY_CHARGE_STATE_LOW MAV_BATTERY_CHARGE_STATE = 2 + // Battery state is critical, return or abort immediately. + MAV_BATTERY_CHARGE_STATE_CRITICAL MAV_BATTERY_CHARGE_STATE = 3 + // Battery state is too low for ordinary abort sequence. Perform fastest possible emergency stop to prevent damage. + MAV_BATTERY_CHARGE_STATE_EMERGENCY MAV_BATTERY_CHARGE_STATE = 4 + // Battery failed, damage unavoidable. Possible causes (faults) are listed in MAV_BATTERY_FAULT. + MAV_BATTERY_CHARGE_STATE_FAILED MAV_BATTERY_CHARGE_STATE = 5 + // Battery is diagnosed to be defective or an error occurred, usage is discouraged / prohibited. Possible causes (faults) are listed in MAV_BATTERY_FAULT. + MAV_BATTERY_CHARGE_STATE_UNHEALTHY MAV_BATTERY_CHARGE_STATE = 6 + // Battery is charging. + MAV_BATTERY_CHARGE_STATE_CHARGING MAV_BATTERY_CHARGE_STATE = 7 +) + +var labels_MAV_BATTERY_CHARGE_STATE = map[MAV_BATTERY_CHARGE_STATE]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAV_BATTERY_CHARGE_STATE) MarshalText() ([]byte, error) { + if l, ok := labels_MAV_BATTERY_CHARGE_STATE[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAV_BATTERY_CHARGE_STATE = map[string]MAV_BATTERY_CHARGE_STATE{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAV_BATTERY_CHARGE_STATE) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAV_BATTERY_CHARGE_STATE[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAV_BATTERY_CHARGE_STATE) String() string { + if l, ok := labels_MAV_BATTERY_CHARGE_STATE[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/development/enum_mav_battery_fault.go b/pkg/dialects/development/enum_mav_battery_fault.go new file mode 100644 index 000000000..4954f72ac --- /dev/null +++ b/pkg/dialects/development/enum_mav_battery_fault.go @@ -0,0 +1,60 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package development + +import ( + "errors" +) + +// Smart battery supply status/fault flags (bitmask) for health indication. The battery must also report either MAV_BATTERY_CHARGE_STATE_FAILED or MAV_BATTERY_CHARGE_STATE_UNHEALTHY if any of these are set. +type MAV_BATTERY_FAULT int + +const ( + // Battery has deep discharged. + MAV_BATTERY_FAULT_DEEP_DISCHARGE MAV_BATTERY_FAULT = 1 + // Voltage spikes. + MAV_BATTERY_FAULT_SPIKES MAV_BATTERY_FAULT = 2 + // One or more cells have failed. Battery should also report MAV_BATTERY_CHARGE_STATE_FAILE (and should not be used). + MAV_BATTERY_FAULT_CELL_FAIL MAV_BATTERY_FAULT = 4 + // Over-current fault. + MAV_BATTERY_FAULT_OVER_CURRENT MAV_BATTERY_FAULT = 8 + // Over-temperature fault. + MAV_BATTERY_FAULT_OVER_TEMPERATURE MAV_BATTERY_FAULT = 16 + // Under-temperature fault. + MAV_BATTERY_FAULT_UNDER_TEMPERATURE MAV_BATTERY_FAULT = 32 + // Vehicle voltage is not compatible with this battery (batteries on same power rail should have similar voltage). + MAV_BATTERY_FAULT_INCOMPATIBLE_VOLTAGE MAV_BATTERY_FAULT = 64 + // Battery firmware is not compatible with current autopilot firmware. + MAV_BATTERY_FAULT_INCOMPATIBLE_FIRMWARE MAV_BATTERY_FAULT = 128 + // Battery is not compatible due to cell configuration (e.g. 5s1p when vehicle requires 6s). + BATTERY_FAULT_INCOMPATIBLE_CELLS_CONFIGURATION MAV_BATTERY_FAULT = 256 +) + +var labels_MAV_BATTERY_FAULT = map[MAV_BATTERY_FAULT]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAV_BATTERY_FAULT) MarshalText() ([]byte, error) { + if l, ok := labels_MAV_BATTERY_FAULT[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAV_BATTERY_FAULT = map[string]MAV_BATTERY_FAULT{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAV_BATTERY_FAULT) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAV_BATTERY_FAULT[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAV_BATTERY_FAULT) String() string { + if l, ok := labels_MAV_BATTERY_FAULT[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/development/enum_mav_battery_function.go b/pkg/dialects/development/enum_mav_battery_function.go new file mode 100644 index 000000000..d8fa2240f --- /dev/null +++ b/pkg/dialects/development/enum_mav_battery_function.go @@ -0,0 +1,52 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package development + +import ( + "errors" +) + +// Enumeration of battery functions +type MAV_BATTERY_FUNCTION int + +const ( + // Battery function is unknown + MAV_BATTERY_FUNCTION_UNKNOWN MAV_BATTERY_FUNCTION = 0 + // Battery supports all flight systems + MAV_BATTERY_FUNCTION_ALL MAV_BATTERY_FUNCTION = 1 + // Battery for the propulsion system + MAV_BATTERY_FUNCTION_PROPULSION MAV_BATTERY_FUNCTION = 2 + // Avionics battery + MAV_BATTERY_FUNCTION_AVIONICS MAV_BATTERY_FUNCTION = 3 + // Payload battery + MAV_BATTERY_TYPE_PAYLOAD MAV_BATTERY_FUNCTION = 4 +) + +var labels_MAV_BATTERY_FUNCTION = map[MAV_BATTERY_FUNCTION]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAV_BATTERY_FUNCTION) MarshalText() ([]byte, error) { + if l, ok := labels_MAV_BATTERY_FUNCTION[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAV_BATTERY_FUNCTION = map[string]MAV_BATTERY_FUNCTION{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAV_BATTERY_FUNCTION) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAV_BATTERY_FUNCTION[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAV_BATTERY_FUNCTION) String() string { + if l, ok := labels_MAV_BATTERY_FUNCTION[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/development/enum_mav_battery_mode.go b/pkg/dialects/development/enum_mav_battery_mode.go new file mode 100644 index 000000000..83a31f8d9 --- /dev/null +++ b/pkg/dialects/development/enum_mav_battery_mode.go @@ -0,0 +1,48 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package development + +import ( + "errors" +) + +// Battery mode. Note, the normal operation mode (i.e. when flying) should be reported as MAV_BATTERY_MODE_UNKNOWN to allow message trimming in normal flight. +type MAV_BATTERY_MODE int + +const ( + // Battery mode not supported/unknown battery mode/normal operation. + MAV_BATTERY_MODE_UNKNOWN MAV_BATTERY_MODE = 0 + // Battery is auto discharging (towards storage level). + MAV_BATTERY_MODE_AUTO_DISCHARGING MAV_BATTERY_MODE = 1 + // Battery in hot-swap mode (current limited to prevent spikes that might damage sensitive electrical circuits). + MAV_BATTERY_MODE_HOT_SWAP MAV_BATTERY_MODE = 2 +) + +var labels_MAV_BATTERY_MODE = map[MAV_BATTERY_MODE]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAV_BATTERY_MODE) MarshalText() ([]byte, error) { + if l, ok := labels_MAV_BATTERY_MODE[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAV_BATTERY_MODE = map[string]MAV_BATTERY_MODE{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAV_BATTERY_MODE) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAV_BATTERY_MODE[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAV_BATTERY_MODE) String() string { + if l, ok := labels_MAV_BATTERY_MODE[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/development/enum_mav_battery_type.go b/pkg/dialects/development/enum_mav_battery_type.go new file mode 100644 index 000000000..62cd18b7c --- /dev/null +++ b/pkg/dialects/development/enum_mav_battery_type.go @@ -0,0 +1,52 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package development + +import ( + "errors" +) + +// Enumeration of battery types +type MAV_BATTERY_TYPE int + +const ( + // Not specified. + MAV_BATTERY_TYPE_UNKNOWN MAV_BATTERY_TYPE = 0 + // Lithium polymer battery + MAV_BATTERY_TYPE_LIPO MAV_BATTERY_TYPE = 1 + // Lithium-iron-phosphate battery + MAV_BATTERY_TYPE_LIFE MAV_BATTERY_TYPE = 2 + // Lithium-ION battery + MAV_BATTERY_TYPE_LION MAV_BATTERY_TYPE = 3 + // Nickel metal hydride battery + MAV_BATTERY_TYPE_NIMH MAV_BATTERY_TYPE = 4 +) + +var labels_MAV_BATTERY_TYPE = map[MAV_BATTERY_TYPE]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAV_BATTERY_TYPE) MarshalText() ([]byte, error) { + if l, ok := labels_MAV_BATTERY_TYPE[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAV_BATTERY_TYPE = map[string]MAV_BATTERY_TYPE{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAV_BATTERY_TYPE) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAV_BATTERY_TYPE[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAV_BATTERY_TYPE) String() string { + if l, ok := labels_MAV_BATTERY_TYPE[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/development/enum_mav_cmd.go b/pkg/dialects/development/enum_mav_cmd.go new file mode 100644 index 000000000..6096db6a1 --- /dev/null +++ b/pkg/dialects/development/enum_mav_cmd.go @@ -0,0 +1,385 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package development + +import ( + "errors" +) + +// Commands to be executed by the MAV. They can be executed on user request, or as part of a mission script. If the action is used in a mission, the parameter mapping to the waypoint/mission message is as follows: Param 1, Param 2, Param 3, Param 4, X: Param 5, Y:Param 6, Z:Param 7. This command list is similar what ARINC 424 is for commercial aircraft: A data format how to interpret waypoint/mission data. NaN and INT32_MAX may be used in float/integer params (respectively) to indicate optional/default values (e.g. to use the component's current yaw or latitude rather than a specific value). See https://mavlink.io/en/guide/xml_schema.html#MAV_CMD for information about the structure of the MAV_CMD entries +type MAV_CMD int + +const ( + // Navigate to waypoint. + MAV_CMD_NAV_WAYPOINT MAV_CMD = 16 + // Loiter around this waypoint an unlimited amount of time + MAV_CMD_NAV_LOITER_UNLIM MAV_CMD = 17 + // Loiter around this waypoint for X turns + MAV_CMD_NAV_LOITER_TURNS MAV_CMD = 18 + // Loiter at the specified latitude, longitude and altitude for a certain amount of time. Multicopter vehicles stop at the point (within a vehicle-specific acceptance radius). Forward-only moving vehicles (e.g. fixed-wing) circle the point with the specified radius/direction. If the Heading Required parameter (2) is non-zero forward moving aircraft will only leave the loiter circle once heading towards the next waypoint. + MAV_CMD_NAV_LOITER_TIME MAV_CMD = 19 + // Return to launch location + MAV_CMD_NAV_RETURN_TO_LAUNCH MAV_CMD = 20 + // Land at location. + MAV_CMD_NAV_LAND MAV_CMD = 21 + // Takeoff from ground / hand. Vehicles that support multiple takeoff modes (e.g. VTOL quadplane) should take off using the currently configured mode. + MAV_CMD_NAV_TAKEOFF MAV_CMD = 22 + // Land at local position (local frame only) + MAV_CMD_NAV_LAND_LOCAL MAV_CMD = 23 + // Takeoff from local position (local frame only) + MAV_CMD_NAV_TAKEOFF_LOCAL MAV_CMD = 24 + // Vehicle following, i.e. this waypoint represents the position of a moving vehicle + MAV_CMD_NAV_FOLLOW MAV_CMD = 25 + // Continue on the current course and climb/descend to specified altitude. When the altitude is reached continue to the next command (i.e., don't proceed to the next command until the desired altitude is reached. + MAV_CMD_NAV_CONTINUE_AND_CHANGE_ALT MAV_CMD = 30 + // Begin loiter at the specified Latitude and Longitude. If Lat=Lon=0, then loiter at the current position. Don't consider the navigation command complete (don't leave loiter) until the altitude has been reached. Additionally, if the Heading Required parameter is non-zero the aircraft will not leave the loiter until heading toward the next waypoint. + MAV_CMD_NAV_LOITER_TO_ALT MAV_CMD = 31 + // Begin following a target + MAV_CMD_DO_FOLLOW MAV_CMD = 32 + // Reposition the MAV after a follow target command has been sent + MAV_CMD_DO_FOLLOW_REPOSITION MAV_CMD = 33 + // Start orbiting on the circumference of a circle defined by the parameters. Setting values to NaN/INT32_MAX (as appropriate) results in using defaults. + MAV_CMD_DO_ORBIT MAV_CMD = 34 + // Sets the region of interest (ROI) for a sensor set or the vehicle itself. This can then be used by the vehicle's control system to control the vehicle attitude and the attitude of various sensors such as cameras. + MAV_CMD_NAV_ROI MAV_CMD = 80 + // Control autonomous path planning on the MAV. + MAV_CMD_NAV_PATHPLANNING MAV_CMD = 81 + // Navigate to waypoint using a spline path. + MAV_CMD_NAV_SPLINE_WAYPOINT MAV_CMD = 82 + // Takeoff from ground using VTOL mode, and transition to forward flight with specified heading. The command should be ignored by vehicles that dont support both VTOL and fixed-wing flight (multicopters, boats,etc.). + MAV_CMD_NAV_VTOL_TAKEOFF MAV_CMD = 84 + // Land using VTOL mode + MAV_CMD_NAV_VTOL_LAND MAV_CMD = 85 + // hand control over to an external controller + MAV_CMD_NAV_GUIDED_ENABLE MAV_CMD = 92 + // Delay the next navigation command a number of seconds or until a specified time + MAV_CMD_NAV_DELAY MAV_CMD = 93 + // Descend and place payload. Vehicle moves to specified location, descends until it detects a hanging payload has reached the ground, and then releases the payload. If ground is not detected before the reaching the maximum descent value (param1), the command will complete without releasing the payload. + MAV_CMD_NAV_PAYLOAD_PLACE MAV_CMD = 94 + // NOP - This command is only used to mark the upper limit of the NAV/ACTION commands in the enumeration + MAV_CMD_NAV_LAST MAV_CMD = 95 + // Delay mission state machine. + MAV_CMD_CONDITION_DELAY MAV_CMD = 112 + // Ascend/descend to target altitude at specified rate. Delay mission state machine until desired altitude reached. + MAV_CMD_CONDITION_CHANGE_ALT MAV_CMD = 113 + // Delay mission state machine until within desired distance of next NAV point. + MAV_CMD_CONDITION_DISTANCE MAV_CMD = 114 + // Reach a certain target angle. + MAV_CMD_CONDITION_YAW MAV_CMD = 115 + // NOP - This command is only used to mark the upper limit of the CONDITION commands in the enumeration + MAV_CMD_CONDITION_LAST MAV_CMD = 159 + // Set system mode. + MAV_CMD_DO_SET_MODE MAV_CMD = 176 + // Jump to the desired command in the mission list. Repeat this action only the specified number of times + MAV_CMD_DO_JUMP MAV_CMD = 177 + // Change speed and/or throttle set points. + MAV_CMD_DO_CHANGE_SPEED MAV_CMD = 178 + // Changes the home location either to the current location or a specified location. + MAV_CMD_DO_SET_HOME MAV_CMD = 179 + // Set a system parameter. Caution! Use of this command requires knowledge of the numeric enumeration value of the parameter. + MAV_CMD_DO_SET_PARAMETER MAV_CMD = 180 + // Set a relay to a condition. + MAV_CMD_DO_SET_RELAY MAV_CMD = 181 + // Cycle a relay on and off for a desired number of cycles with a desired period. + MAV_CMD_DO_REPEAT_RELAY MAV_CMD = 182 + // Set a servo to a desired PWM value. + MAV_CMD_DO_SET_SERVO MAV_CMD = 183 + // Cycle a between its nominal setting and a desired PWM for a desired number of cycles with a desired period. + MAV_CMD_DO_REPEAT_SERVO MAV_CMD = 184 + // Terminate flight immediately + MAV_CMD_DO_FLIGHTTERMINATION MAV_CMD = 185 + // Change altitude set point. + MAV_CMD_DO_CHANGE_ALTITUDE MAV_CMD = 186 + // Sets actuators (e.g. servos) to a desired value. The actuator numbers are mapped to specific outputs (e.g. on any MAIN or AUX PWM or UAVCAN) using a flight-stack specific mechanism (i.e. a parameter). + MAV_CMD_DO_SET_ACTUATOR MAV_CMD = 187 + // Mission command to perform a landing. This is used as a marker in a mission to tell the autopilot where a sequence of mission items that represents a landing starts. It may also be sent via a COMMAND_LONG to trigger a landing, in which case the nearest (geographically) landing sequence in the mission will be used. The Latitude/Longitude is optional, and may be set to 0 if not needed. If specified then it will be used to help find the closest landing sequence. + MAV_CMD_DO_LAND_START MAV_CMD = 189 + // Mission command to perform a landing from a rally point. + MAV_CMD_DO_RALLY_LAND MAV_CMD = 190 + // Mission command to safely abort an autonomous landing. + MAV_CMD_DO_GO_AROUND MAV_CMD = 191 + // Reposition the vehicle to a specific WGS84 global position. + MAV_CMD_DO_REPOSITION MAV_CMD = 192 + // If in a GPS controlled position mode, hold the current position or continue. + MAV_CMD_DO_PAUSE_CONTINUE MAV_CMD = 193 + // Set moving direction to forward or reverse. + MAV_CMD_DO_SET_REVERSE MAV_CMD = 194 + // Sets the region of interest (ROI) to a location. This can then be used by the vehicle's control system to control the vehicle attitude and the attitude of various sensors such as cameras. This command can be sent to a gimbal manager but not to a gimbal device. A gimbal is not to react to this message. + MAV_CMD_DO_SET_ROI_LOCATION MAV_CMD = 195 + // Sets the region of interest (ROI) to be toward next waypoint, with optional pitch/roll/yaw offset. This can then be used by the vehicle's control system to control the vehicle attitude and the attitude of various sensors such as cameras. This command can be sent to a gimbal manager but not to a gimbal device. A gimbal device is not to react to this message. + MAV_CMD_DO_SET_ROI_WPNEXT_OFFSET MAV_CMD = 196 + // Cancels any previous ROI command returning the vehicle/sensors to default flight characteristics. This can then be used by the vehicle's control system to control the vehicle attitude and the attitude of various sensors such as cameras. This command can be sent to a gimbal manager but not to a gimbal device. A gimbal device is not to react to this message. After this command the gimbal manager should go back to manual input if available, and otherwise assume a neutral position. + MAV_CMD_DO_SET_ROI_NONE MAV_CMD = 197 + // Mount tracks system with specified system ID. Determination of target vehicle position may be done with GLOBAL_POSITION_INT or any other means. This command can be sent to a gimbal manager but not to a gimbal device. A gimbal device is not to react to this message. + MAV_CMD_DO_SET_ROI_SYSID MAV_CMD = 198 + // Control onboard camera system. + MAV_CMD_DO_CONTROL_VIDEO MAV_CMD = 200 + // Sets the region of interest (ROI) for a sensor set or the vehicle itself. This can then be used by the vehicle's control system to control the vehicle attitude and the attitude of various sensors such as cameras. + MAV_CMD_DO_SET_ROI MAV_CMD = 201 + // Configure digital camera. This is a fallback message for systems that have not yet implemented PARAM_EXT_XXX messages and camera definition files (see https://mavlink.io/en/services/camera_def.html ). + MAV_CMD_DO_DIGICAM_CONFIGURE MAV_CMD = 202 + // Control digital camera. This is a fallback message for systems that have not yet implemented PARAM_EXT_XXX messages and camera definition files (see https://mavlink.io/en/services/camera_def.html ). + MAV_CMD_DO_DIGICAM_CONTROL MAV_CMD = 203 + // Mission command to configure a camera or antenna mount + MAV_CMD_DO_MOUNT_CONFIGURE MAV_CMD = 204 + // Mission command to control a camera or antenna mount + MAV_CMD_DO_MOUNT_CONTROL MAV_CMD = 205 + // Mission command to set camera trigger distance for this flight. The camera is triggered each time this distance is exceeded. This command can also be used to set the shutter integration time for the camera. + MAV_CMD_DO_SET_CAM_TRIGG_DIST MAV_CMD = 206 + // Mission command to enable the geofence + MAV_CMD_DO_FENCE_ENABLE MAV_CMD = 207 + // Mission item/command to release a parachute or enable/disable auto release. + MAV_CMD_DO_PARACHUTE MAV_CMD = 208 + // Command to perform motor test. + MAV_CMD_DO_MOTOR_TEST MAV_CMD = 209 + // Change to/from inverted flight. + MAV_CMD_DO_INVERTED_FLIGHT MAV_CMD = 210 + // Mission command to operate a gripper. + MAV_CMD_DO_GRIPPER MAV_CMD = 211 + // Enable/disable autotune. + MAV_CMD_DO_AUTOTUNE_ENABLE MAV_CMD = 212 + // Sets a desired vehicle turn angle and speed change. + MAV_CMD_NAV_SET_YAW_SPEED MAV_CMD = 213 + // Mission command to set camera trigger interval for this flight. If triggering is enabled, the camera is triggered each time this interval expires. This command can also be used to set the shutter integration time for the camera. + MAV_CMD_DO_SET_CAM_TRIGG_INTERVAL MAV_CMD = 214 + // Mission command to control a camera or antenna mount, using a quaternion as reference. + MAV_CMD_DO_MOUNT_CONTROL_QUAT MAV_CMD = 220 + // set id of master controller + MAV_CMD_DO_GUIDED_MASTER MAV_CMD = 221 + // Set limits for external control + MAV_CMD_DO_GUIDED_LIMITS MAV_CMD = 222 + // Control vehicle engine. This is interpreted by the vehicles engine controller to change the target engine state. It is intended for vehicles with internal combustion engines + MAV_CMD_DO_ENGINE_CONTROL MAV_CMD = 223 + // Set the mission item with sequence number seq as current item. This means that the MAV will continue to this mission item on the shortest path (not following the mission items in-between). + MAV_CMD_DO_SET_MISSION_CURRENT MAV_CMD = 224 + // NOP - This command is only used to mark the upper limit of the DO commands in the enumeration + MAV_CMD_DO_LAST MAV_CMD = 240 + // Trigger calibration. This command will be only accepted if in pre-flight mode. Except for Temperature Calibration, only one sensor should be set in a single message and all others should be zero. + MAV_CMD_PREFLIGHT_CALIBRATION MAV_CMD = 241 + // Set sensor offsets. This command will be only accepted if in pre-flight mode. + MAV_CMD_PREFLIGHT_SET_SENSOR_OFFSETS MAV_CMD = 242 + // Trigger UAVCAN configuration (actuator ID assignment and direction mapping). Note that this maps to the legacy UAVCAN v0 function UAVCAN_ENUMERATE, which is intended to be executed just once during initial vehicle configuration (it is not a normal pre-flight command and has been poorly named). + MAV_CMD_PREFLIGHT_UAVCAN MAV_CMD = 243 + // Request storage of different parameter values and logs. This command will be only accepted if in pre-flight mode. + MAV_CMD_PREFLIGHT_STORAGE MAV_CMD = 245 + // Request the reboot or shutdown of system components. + MAV_CMD_PREFLIGHT_REBOOT_SHUTDOWN MAV_CMD = 246 + // Override current mission with command to pause mission, pause mission and move to position, continue/resume mission. When param 1 indicates that the mission is paused (MAV_GOTO_DO_HOLD), param 2 defines whether it holds in place or moves to another position. + MAV_CMD_OVERRIDE_GOTO MAV_CMD = 252 + // Mission command to set a Camera Auto Mount Pivoting Oblique Survey (Replaces CAM_TRIGG_DIST for this purpose). The camera is triggered each time this distance is exceeded, then the mount moves to the next position. Params 4~6 set-up the angle limits and number of positions for oblique survey, where mount-enabled vehicles automatically roll the camera between shots to emulate an oblique camera setup (providing an increased HFOV). This command can also be used to set the shutter integration time for the camera. + MAV_CMD_OBLIQUE_SURVEY MAV_CMD = 260 + // start running a mission + MAV_CMD_MISSION_START MAV_CMD = 300 + // Actuator testing command. This is similar to MAV_CMD_DO_MOTOR_TEST but operates on the level of output functions, i.e. it is possible to test Motor1 independent from which output it is configured on. Autopilots typically refuse this command while armed. + MAV_CMD_ACTUATOR_TEST MAV_CMD = 310 + // Actuator configuration command. + MAV_CMD_CONFIGURE_ACTUATOR MAV_CMD = 311 + // Arms / Disarms a component + MAV_CMD_COMPONENT_ARM_DISARM MAV_CMD = 400 + // Instructs system to run pre-arm checks. This command should return MAV_RESULT_TEMPORARILY_REJECTED in the case the system is armed, otherwise MAV_RESULT_ACCEPTED. Note that the return value from executing this command does not indicate whether the vehicle is armable or not, just whether the system has successfully run/is currently running the checks. The result of the checks is reflected in the SYS_STATUS message. + MAV_CMD_RUN_PREARM_CHECKS MAV_CMD = 401 + // Turns illuminators ON/OFF. An illuminator is a light source that is used for lighting up dark areas external to the sytstem: e.g. a torch or searchlight (as opposed to a light source for illuminating the system itself, e.g. an indicator light). + MAV_CMD_ILLUMINATOR_ON_OFF MAV_CMD = 405 + // Request the home position from the vehicle. + MAV_CMD_GET_HOME_POSITION MAV_CMD = 410 + // Inject artificial failure for testing purposes. Note that autopilots should implement an additional protection before accepting this command such as a specific param setting. + MAV_CMD_INJECT_FAILURE MAV_CMD = 420 + // Starts receiver pairing. + MAV_CMD_START_RX_PAIR MAV_CMD = 500 + // Request the interval between messages for a particular MAVLink message ID. The receiver should ACK the command and then emit its response in a MESSAGE_INTERVAL message. + MAV_CMD_GET_MESSAGE_INTERVAL MAV_CMD = 510 + // Set the interval between messages for a particular MAVLink message ID. This interface replaces REQUEST_DATA_STREAM. + MAV_CMD_SET_MESSAGE_INTERVAL MAV_CMD = 511 + // Request the target system(s) emit a single instance of a specified message (i.e. a "one-shot" version of MAV_CMD_SET_MESSAGE_INTERVAL). + MAV_CMD_REQUEST_MESSAGE MAV_CMD = 512 + // Request MAVLink protocol version compatibility. All receivers should ACK the command and then emit their capabilities in an PROTOCOL_VERSION message + MAV_CMD_REQUEST_PROTOCOL_VERSION MAV_CMD = 519 + // Request autopilot capabilities. The receiver should ACK the command and then emit its capabilities in an AUTOPILOT_VERSION message + MAV_CMD_REQUEST_AUTOPILOT_CAPABILITIES MAV_CMD = 520 + // Request camera information (CAMERA_INFORMATION). + MAV_CMD_REQUEST_CAMERA_INFORMATION MAV_CMD = 521 + // Request camera settings (CAMERA_SETTINGS). + MAV_CMD_REQUEST_CAMERA_SETTINGS MAV_CMD = 522 + // Request storage information (STORAGE_INFORMATION). Use the command's target_component to target a specific component's storage. + MAV_CMD_REQUEST_STORAGE_INFORMATION MAV_CMD = 525 + // Format a storage medium. Once format is complete, a STORAGE_INFORMATION message is sent. Use the command's target_component to target a specific component's storage. + MAV_CMD_STORAGE_FORMAT MAV_CMD = 526 + // Request camera capture status (CAMERA_CAPTURE_STATUS) + MAV_CMD_REQUEST_CAMERA_CAPTURE_STATUS MAV_CMD = 527 + // Request flight information (FLIGHT_INFORMATION) + MAV_CMD_REQUEST_FLIGHT_INFORMATION MAV_CMD = 528 + // Reset all camera settings to Factory Default + MAV_CMD_RESET_CAMERA_SETTINGS MAV_CMD = 529 + // Set camera running mode. Use NaN for reserved values. GCS will send a MAV_CMD_REQUEST_VIDEO_STREAM_STATUS command after a mode change if the camera supports video streaming. + MAV_CMD_SET_CAMERA_MODE MAV_CMD = 530 + // Set camera zoom. Camera must respond with a CAMERA_SETTINGS message (on success). + MAV_CMD_SET_CAMERA_ZOOM MAV_CMD = 531 + // Set camera focus. Camera must respond with a CAMERA_SETTINGS message (on success). + MAV_CMD_SET_CAMERA_FOCUS MAV_CMD = 532 + // Set that a particular storage is the preferred location for saving photos, videos, and/or other media (e.g. to set that an SD card is used for storing videos). + // There can only be one preferred save location for each particular media type: setting a media usage flag will clear/reset that same flag if set on any other storage. + // If no flag is set the system should use its default storage. + // A target system can choose to always use default storage, in which case it should ACK the command with MAV_RESULT_UNSUPPORTED. + // A target system can choose to not allow a particular storage to be set as preferred storage, in which case it should ACK the command with MAV_RESULT_DENIED. + MAV_CMD_SET_STORAGE_USAGE MAV_CMD = 533 + // Tagged jump target. Can be jumped to with MAV_CMD_DO_JUMP_TAG. + MAV_CMD_JUMP_TAG MAV_CMD = 600 + // Jump to the matching tag in the mission list. Repeat this action for the specified number of times. A mission should contain a single matching tag for each jump. If this is not the case then a jump to a missing tag should complete the mission, and a jump where there are multiple matching tags should always select the one with the lowest mission sequence number. + MAV_CMD_DO_JUMP_TAG MAV_CMD = 601 + // High level setpoint to be sent to a gimbal manager to set a gimbal attitude. It is possible to set combinations of the values below. E.g. an angle as well as a desired angular rate can be used to get to this angle at a certain angular rate, or an angular rate only will result in continuous turning. NaN is to be used to signal unset. Note: a gimbal is never to react to this command but only the gimbal manager. + MAV_CMD_DO_GIMBAL_MANAGER_PITCHYAW MAV_CMD = 1000 + // Gimbal configuration to set which sysid/compid is in primary and secondary control. + MAV_CMD_DO_GIMBAL_MANAGER_CONFIGURE MAV_CMD = 1001 + // Start image capture sequence. Sends CAMERA_IMAGE_CAPTURED after each capture. Use NaN for reserved values. + MAV_CMD_IMAGE_START_CAPTURE MAV_CMD = 2000 + // Stop image capture sequence Use NaN for reserved values. + MAV_CMD_IMAGE_STOP_CAPTURE MAV_CMD = 2001 + // Re-request a CAMERA_IMAGE_CAPTURED message. + MAV_CMD_REQUEST_CAMERA_IMAGE_CAPTURE MAV_CMD = 2002 + // Enable or disable on-board camera triggering system. + MAV_CMD_DO_TRIGGER_CONTROL MAV_CMD = 2003 + // If the camera supports point visual tracking (CAMERA_CAP_FLAGS_HAS_TRACKING_POINT is set), this command allows to initiate the tracking. + MAV_CMD_CAMERA_TRACK_POINT MAV_CMD = 2004 + // If the camera supports rectangle visual tracking (CAMERA_CAP_FLAGS_HAS_TRACKING_RECTANGLE is set), this command allows to initiate the tracking. + MAV_CMD_CAMERA_TRACK_RECTANGLE MAV_CMD = 2005 + // Stops ongoing tracking. + MAV_CMD_CAMERA_STOP_TRACKING MAV_CMD = 2010 + // Starts video capture (recording). + MAV_CMD_VIDEO_START_CAPTURE MAV_CMD = 2500 + // Stop the current video capture (recording). + MAV_CMD_VIDEO_STOP_CAPTURE MAV_CMD = 2501 + // Start video streaming + MAV_CMD_VIDEO_START_STREAMING MAV_CMD = 2502 + // Stop the given video stream + MAV_CMD_VIDEO_STOP_STREAMING MAV_CMD = 2503 + // Request video stream information (VIDEO_STREAM_INFORMATION) + MAV_CMD_REQUEST_VIDEO_STREAM_INFORMATION MAV_CMD = 2504 + // Request video stream status (VIDEO_STREAM_STATUS) + MAV_CMD_REQUEST_VIDEO_STREAM_STATUS MAV_CMD = 2505 + // Request to start streaming logging data over MAVLink (see also LOGGING_DATA message) + MAV_CMD_LOGGING_START MAV_CMD = 2510 + // Request to stop streaming log data over MAVLink + MAV_CMD_LOGGING_STOP MAV_CMD = 2511 + MAV_CMD_AIRFRAME_CONFIGURATION MAV_CMD = 2520 + // Request to start/stop transmitting over the high latency telemetry + MAV_CMD_CONTROL_HIGH_LATENCY MAV_CMD = 2600 + // Create a panorama at the current position + MAV_CMD_PANORAMA_CREATE MAV_CMD = 2800 + // Request VTOL transition + MAV_CMD_DO_VTOL_TRANSITION MAV_CMD = 3000 + // Request authorization to arm the vehicle to a external entity, the arm authorizer is responsible to request all data that is needs from the vehicle before authorize or deny the request. If approved the progress of command_ack message should be set with period of time that this authorization is valid in seconds or in case it was denied it should be set with one of the reasons in ARM_AUTH_DENIED_REASON. + MAV_CMD_ARM_AUTHORIZATION_REQUEST MAV_CMD = 3001 + // This command sets the submode to standard guided when vehicle is in guided mode. The vehicle holds position and altitude and the user can input the desired velocities along all three axes. + MAV_CMD_SET_GUIDED_SUBMODE_STANDARD MAV_CMD = 4000 + // This command sets submode circle when vehicle is in guided mode. Vehicle flies along a circle facing the center of the circle. The user can input the velocity along the circle and change the radius. If no input is given the vehicle will hold position. + MAV_CMD_SET_GUIDED_SUBMODE_CIRCLE MAV_CMD = 4001 + // Delay mission state machine until gate has been reached. + MAV_CMD_CONDITION_GATE MAV_CMD = 4501 + // Fence return point (there can only be one such point in a geofence definition). If rally points are supported they should be used instead. + MAV_CMD_NAV_FENCE_RETURN_POINT MAV_CMD = 5000 + // Fence vertex for an inclusion polygon (the polygon must not be self-intersecting). The vehicle must stay within this area. Minimum of 3 vertices required. + MAV_CMD_NAV_FENCE_POLYGON_VERTEX_INCLUSION MAV_CMD = 5001 + // Fence vertex for an exclusion polygon (the polygon must not be self-intersecting). The vehicle must stay outside this area. Minimum of 3 vertices required. + MAV_CMD_NAV_FENCE_POLYGON_VERTEX_EXCLUSION MAV_CMD = 5002 + // Circular fence area. The vehicle must stay inside this area. + MAV_CMD_NAV_FENCE_CIRCLE_INCLUSION MAV_CMD = 5003 + // Circular fence area. The vehicle must stay outside this area. + MAV_CMD_NAV_FENCE_CIRCLE_EXCLUSION MAV_CMD = 5004 + // Rally point. You can have multiple rally points defined. + MAV_CMD_NAV_RALLY_POINT MAV_CMD = 5100 + // Commands the vehicle to respond with a sequence of messages UAVCAN_NODE_INFO, one message per every UAVCAN node that is online. Note that some of the response messages can be lost, which the receiver can detect easily by checking whether every received UAVCAN_NODE_STATUS has a matching message UAVCAN_NODE_INFO received earlier; if not, this command should be sent again in order to request re-transmission of the node information messages. + MAV_CMD_UAVCAN_GET_NODE_INFO MAV_CMD = 5200 + // Trigger the start of an ADSB-out IDENT. This should only be used when requested to do so by an Air Traffic Controller in controlled airspace. This starts the IDENT which is then typically held for 18 seconds by the hardware per the Mode A, C, and S transponder spec. + MAV_CMD_DO_ADSB_OUT_IDENT MAV_CMD = 10001 + // Deploy payload on a Lat / Lon / Alt position. This includes the navigation to reach the required release position and velocity. + MAV_CMD_PAYLOAD_PREPARE_DEPLOY MAV_CMD = 30001 + // Control the payload deployment. + MAV_CMD_PAYLOAD_CONTROL_DEPLOY MAV_CMD = 30002 + // Magnetometer calibration based on provided known yaw. This allows for fast calibration using WMM field tables in the vehicle, given only the known yaw of the vehicle. If Latitude and longitude are both zero then use the current vehicle location. + MAV_CMD_FIXED_MAG_CAL_YAW MAV_CMD = 42006 + // Command to operate winch. + MAV_CMD_DO_WINCH MAV_CMD = 42600 + // User defined waypoint item. Ground Station will show the Vehicle as flying through this item. + MAV_CMD_WAYPOINT_USER_1 MAV_CMD = 31000 + // User defined waypoint item. Ground Station will show the Vehicle as flying through this item. + MAV_CMD_WAYPOINT_USER_2 MAV_CMD = 31001 + // User defined waypoint item. Ground Station will show the Vehicle as flying through this item. + MAV_CMD_WAYPOINT_USER_3 MAV_CMD = 31002 + // User defined waypoint item. Ground Station will show the Vehicle as flying through this item. + MAV_CMD_WAYPOINT_USER_4 MAV_CMD = 31003 + // User defined waypoint item. Ground Station will show the Vehicle as flying through this item. + MAV_CMD_WAYPOINT_USER_5 MAV_CMD = 31004 + // User defined spatial item. Ground Station will not show the Vehicle as flying through this item. Example: ROI item. + MAV_CMD_SPATIAL_USER_1 MAV_CMD = 31005 + // User defined spatial item. Ground Station will not show the Vehicle as flying through this item. Example: ROI item. + MAV_CMD_SPATIAL_USER_2 MAV_CMD = 31006 + // User defined spatial item. Ground Station will not show the Vehicle as flying through this item. Example: ROI item. + MAV_CMD_SPATIAL_USER_3 MAV_CMD = 31007 + // User defined spatial item. Ground Station will not show the Vehicle as flying through this item. Example: ROI item. + MAV_CMD_SPATIAL_USER_4 MAV_CMD = 31008 + // User defined spatial item. Ground Station will not show the Vehicle as flying through this item. Example: ROI item. + MAV_CMD_SPATIAL_USER_5 MAV_CMD = 31009 + // User defined command. Ground Station will not show the Vehicle as flying through this item. Example: MAV_CMD_DO_SET_PARAMETER item. + MAV_CMD_USER_1 MAV_CMD = 31010 + // User defined command. Ground Station will not show the Vehicle as flying through this item. Example: MAV_CMD_DO_SET_PARAMETER item. + MAV_CMD_USER_2 MAV_CMD = 31011 + // User defined command. Ground Station will not show the Vehicle as flying through this item. Example: MAV_CMD_DO_SET_PARAMETER item. + MAV_CMD_USER_3 MAV_CMD = 31012 + // User defined command. Ground Station will not show the Vehicle as flying through this item. Example: MAV_CMD_DO_SET_PARAMETER item. + MAV_CMD_USER_4 MAV_CMD = 31013 + // User defined command. Ground Station will not show the Vehicle as flying through this item. Example: MAV_CMD_DO_SET_PARAMETER item. + MAV_CMD_USER_5 MAV_CMD = 31014 + // Request to start or end a parameter transaction. Multiple kinds of transport layers can be used to exchange parameters in the transaction (param, param_ext and mavftp). The command response can either be a success/failure or an in progress in case the receiving side takes some time to apply the parameters. + MAV_CMD_PARAM_TRANSACTION MAV_CMD = 900 + // Sets the action on geofence breach. + // If sent using the command protocol this sets the system-default geofence action. + // As part of a mission protocol plan it sets the fence action for the next complete geofence definition *after* the command. + // Note: A fence action defined in a plan will override the default system setting (even if the system-default is `FENCE_ACTION_NONE`). + // Note: Every geofence in a plan can have its own action; if no fence action is defined for a particular fence the system-default will be used. + // Note: The flight stack should reject a plan or command that uses a geofence action that it does not support and send a STATUSTEXT with the reason. + MAV_CMD_SET_FENCE_BREACH_ACTION MAV_CMD = 5010 + // Request a target system to start an upgrade of one (or all) of its components. + // For example, the command might be sent to a companion computer to cause it to upgrade a connected flight controller. + // The system doing the upgrade will report progress using the normal command protocol sequence for a long running operation. + // Command protocol information: https://mavlink.io/en/services/command.html. + MAV_CMD_DO_UPGRADE MAV_CMD = 247 + // Define start of a group of mission items. When control reaches this command a GROUP_START message is emitted. + // The end of a group is marked using MAV_CMD_GROUP_END with the same group id. + // Group ids are expected, but not required, to iterate sequentially. + // Groups can be nested. + MAV_CMD_GROUP_START MAV_CMD = 301 + // Define end of a group of mission items. When control reaches this command a GROUP_END message is emitted. + // The start of the group is marked is marked using MAV_CMD_GROUP_START with the same group id. + // Group ids are expected, but not required, to iterate sequentially. + // Groups can be nested. + MAV_CMD_GROUP_END MAV_CMD = 302 +) + +var labels_MAV_CMD = map[MAV_CMD]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAV_CMD) MarshalText() ([]byte, error) { + if l, ok := labels_MAV_CMD[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAV_CMD = map[string]MAV_CMD{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAV_CMD) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAV_CMD[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAV_CMD) String() string { + if l, ok := labels_MAV_CMD[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/development/enum_mav_cmd_ack.go b/pkg/dialects/development/enum_mav_cmd_ack.go new file mode 100644 index 000000000..70b0e09bf --- /dev/null +++ b/pkg/dialects/development/enum_mav_cmd_ack.go @@ -0,0 +1,60 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package development + +import ( + "errors" +) + +// ACK / NACK / ERROR values as a result of MAV_CMDs and for mission item transmission. +type MAV_CMD_ACK int + +const ( + // Command / mission item is ok. + MAV_CMD_ACK_OK MAV_CMD_ACK = 0 + // Generic error message if none of the other reasons fails or if no detailed error reporting is implemented. + MAV_CMD_ACK_ERR_FAIL MAV_CMD_ACK = 1 + // The system is refusing to accept this command from this source / communication partner. + MAV_CMD_ACK_ERR_ACCESS_DENIED MAV_CMD_ACK = 2 + // Command or mission item is not supported, other commands would be accepted. + MAV_CMD_ACK_ERR_NOT_SUPPORTED MAV_CMD_ACK = 3 + // The coordinate frame of this command / mission item is not supported. + MAV_CMD_ACK_ERR_COORDINATE_FRAME_NOT_SUPPORTED MAV_CMD_ACK = 4 + // The coordinate frame of this command is ok, but he coordinate values exceed the safety limits of this system. This is a generic error, please use the more specific error messages below if possible. + MAV_CMD_ACK_ERR_COORDINATES_OUT_OF_RANGE MAV_CMD_ACK = 5 + // The X or latitude value is out of range. + MAV_CMD_ACK_ERR_X_LAT_OUT_OF_RANGE MAV_CMD_ACK = 6 + // The Y or longitude value is out of range. + MAV_CMD_ACK_ERR_Y_LON_OUT_OF_RANGE MAV_CMD_ACK = 7 + // The Z or altitude value is out of range. + MAV_CMD_ACK_ERR_Z_ALT_OUT_OF_RANGE MAV_CMD_ACK = 8 +) + +var labels_MAV_CMD_ACK = map[MAV_CMD_ACK]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAV_CMD_ACK) MarshalText() ([]byte, error) { + if l, ok := labels_MAV_CMD_ACK[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAV_CMD_ACK = map[string]MAV_CMD_ACK{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAV_CMD_ACK) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAV_CMD_ACK[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAV_CMD_ACK) String() string { + if l, ok := labels_MAV_CMD_ACK[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/development/enum_mav_collision_action.go b/pkg/dialects/development/enum_mav_collision_action.go new file mode 100644 index 000000000..69f66f24e --- /dev/null +++ b/pkg/dialects/development/enum_mav_collision_action.go @@ -0,0 +1,56 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package development + +import ( + "errors" +) + +// Possible actions an aircraft can take to avoid a collision. +type MAV_COLLISION_ACTION int + +const ( + // Ignore any potential collisions + MAV_COLLISION_ACTION_NONE MAV_COLLISION_ACTION = 0 + // Report potential collision + MAV_COLLISION_ACTION_REPORT MAV_COLLISION_ACTION = 1 + // Ascend or Descend to avoid threat + MAV_COLLISION_ACTION_ASCEND_OR_DESCEND MAV_COLLISION_ACTION = 2 + // Move horizontally to avoid threat + MAV_COLLISION_ACTION_MOVE_HORIZONTALLY MAV_COLLISION_ACTION = 3 + // Aircraft to move perpendicular to the collision's velocity vector + MAV_COLLISION_ACTION_MOVE_PERPENDICULAR MAV_COLLISION_ACTION = 4 + // Aircraft to fly directly back to its launch point + MAV_COLLISION_ACTION_RTL MAV_COLLISION_ACTION = 5 + // Aircraft to stop in place + MAV_COLLISION_ACTION_HOVER MAV_COLLISION_ACTION = 6 +) + +var labels_MAV_COLLISION_ACTION = map[MAV_COLLISION_ACTION]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAV_COLLISION_ACTION) MarshalText() ([]byte, error) { + if l, ok := labels_MAV_COLLISION_ACTION[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAV_COLLISION_ACTION = map[string]MAV_COLLISION_ACTION{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAV_COLLISION_ACTION) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAV_COLLISION_ACTION[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAV_COLLISION_ACTION) String() string { + if l, ok := labels_MAV_COLLISION_ACTION[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/development/enum_mav_collision_src.go b/pkg/dialects/development/enum_mav_collision_src.go new file mode 100644 index 000000000..a8beebf98 --- /dev/null +++ b/pkg/dialects/development/enum_mav_collision_src.go @@ -0,0 +1,46 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package development + +import ( + "errors" +) + +// Source of information about this collision. +type MAV_COLLISION_SRC int + +const ( + // ID field references ADSB_VEHICLE packets + MAV_COLLISION_SRC_ADSB MAV_COLLISION_SRC = 0 + // ID field references MAVLink SRC ID + MAV_COLLISION_SRC_MAVLINK_GPS_GLOBAL_INT MAV_COLLISION_SRC = 1 +) + +var labels_MAV_COLLISION_SRC = map[MAV_COLLISION_SRC]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAV_COLLISION_SRC) MarshalText() ([]byte, error) { + if l, ok := labels_MAV_COLLISION_SRC[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAV_COLLISION_SRC = map[string]MAV_COLLISION_SRC{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAV_COLLISION_SRC) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAV_COLLISION_SRC[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAV_COLLISION_SRC) String() string { + if l, ok := labels_MAV_COLLISION_SRC[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/development/enum_mav_collision_threat_level.go b/pkg/dialects/development/enum_mav_collision_threat_level.go new file mode 100644 index 000000000..02c2959fa --- /dev/null +++ b/pkg/dialects/development/enum_mav_collision_threat_level.go @@ -0,0 +1,48 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package development + +import ( + "errors" +) + +// Aircraft-rated danger from this threat. +type MAV_COLLISION_THREAT_LEVEL int + +const ( + // Not a threat + MAV_COLLISION_THREAT_LEVEL_NONE MAV_COLLISION_THREAT_LEVEL = 0 + // Craft is mildly concerned about this threat + MAV_COLLISION_THREAT_LEVEL_LOW MAV_COLLISION_THREAT_LEVEL = 1 + // Craft is panicking, and may take actions to avoid threat + MAV_COLLISION_THREAT_LEVEL_HIGH MAV_COLLISION_THREAT_LEVEL = 2 +) + +var labels_MAV_COLLISION_THREAT_LEVEL = map[MAV_COLLISION_THREAT_LEVEL]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAV_COLLISION_THREAT_LEVEL) MarshalText() ([]byte, error) { + if l, ok := labels_MAV_COLLISION_THREAT_LEVEL[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAV_COLLISION_THREAT_LEVEL = map[string]MAV_COLLISION_THREAT_LEVEL{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAV_COLLISION_THREAT_LEVEL) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAV_COLLISION_THREAT_LEVEL[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAV_COLLISION_THREAT_LEVEL) String() string { + if l, ok := labels_MAV_COLLISION_THREAT_LEVEL[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/development/enum_mav_component.go b/pkg/dialects/development/enum_mav_component.go new file mode 100644 index 000000000..ede44a8a9 --- /dev/null +++ b/pkg/dialects/development/enum_mav_component.go @@ -0,0 +1,310 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package development + +import ( + "errors" +) + +// Component ids (values) for the different types and instances of onboard hardware/software that might make up a MAVLink system (autopilot, cameras, servos, GPS systems, avoidance systems etc.). +// Components must use the appropriate ID in their source address when sending messages. Components can also use IDs to determine if they are the intended recipient of an incoming message. The MAV_COMP_ID_ALL value is used to indicate messages that must be processed by all components. +// When creating new entries, components that can have multiple instances (e.g. cameras, servos etc.) should be allocated sequential values. An appropriate number of values should be left free after these components to allow the number of instances to be expanded. +type MAV_COMPONENT int + +const ( + // Target id (target_component) used to broadcast messages to all components of the receiving system. Components should attempt to process messages with this component ID and forward to components on any other interfaces. Note: This is not a valid *source* component id for a message. + MAV_COMP_ID_ALL MAV_COMPONENT = 0 + // System flight controller component ("autopilot"). Only one autopilot is expected in a particular system. + MAV_COMP_ID_AUTOPILOT1 MAV_COMPONENT = 1 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER1 MAV_COMPONENT = 25 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER2 MAV_COMPONENT = 26 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER3 MAV_COMPONENT = 27 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER4 MAV_COMPONENT = 28 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER5 MAV_COMPONENT = 29 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER6 MAV_COMPONENT = 30 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER7 MAV_COMPONENT = 31 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER8 MAV_COMPONENT = 32 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER9 MAV_COMPONENT = 33 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER10 MAV_COMPONENT = 34 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER11 MAV_COMPONENT = 35 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER12 MAV_COMPONENT = 36 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER13 MAV_COMPONENT = 37 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER14 MAV_COMPONENT = 38 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER15 MAV_COMPONENT = 39 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER16 MAV_COMPONENT = 40 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER17 MAV_COMPONENT = 41 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER18 MAV_COMPONENT = 42 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER19 MAV_COMPONENT = 43 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER20 MAV_COMPONENT = 44 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER21 MAV_COMPONENT = 45 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER22 MAV_COMPONENT = 46 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER23 MAV_COMPONENT = 47 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER24 MAV_COMPONENT = 48 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER25 MAV_COMPONENT = 49 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER26 MAV_COMPONENT = 50 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER27 MAV_COMPONENT = 51 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER28 MAV_COMPONENT = 52 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER29 MAV_COMPONENT = 53 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER30 MAV_COMPONENT = 54 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER31 MAV_COMPONENT = 55 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER32 MAV_COMPONENT = 56 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER33 MAV_COMPONENT = 57 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER34 MAV_COMPONENT = 58 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER35 MAV_COMPONENT = 59 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER36 MAV_COMPONENT = 60 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER37 MAV_COMPONENT = 61 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER38 MAV_COMPONENT = 62 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER39 MAV_COMPONENT = 63 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER40 MAV_COMPONENT = 64 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER41 MAV_COMPONENT = 65 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER42 MAV_COMPONENT = 66 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER43 MAV_COMPONENT = 67 + // Telemetry radio (e.g. SiK radio, or other component that emits RADIO_STATUS messages). + MAV_COMP_ID_TELEMETRY_RADIO MAV_COMPONENT = 68 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER45 MAV_COMPONENT = 69 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER46 MAV_COMPONENT = 70 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER47 MAV_COMPONENT = 71 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER48 MAV_COMPONENT = 72 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER49 MAV_COMPONENT = 73 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER50 MAV_COMPONENT = 74 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER51 MAV_COMPONENT = 75 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER52 MAV_COMPONENT = 76 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER53 MAV_COMPONENT = 77 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER54 MAV_COMPONENT = 78 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER55 MAV_COMPONENT = 79 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER56 MAV_COMPONENT = 80 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER57 MAV_COMPONENT = 81 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER58 MAV_COMPONENT = 82 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER59 MAV_COMPONENT = 83 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER60 MAV_COMPONENT = 84 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER61 MAV_COMPONENT = 85 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER62 MAV_COMPONENT = 86 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER63 MAV_COMPONENT = 87 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER64 MAV_COMPONENT = 88 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER65 MAV_COMPONENT = 89 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER66 MAV_COMPONENT = 90 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER67 MAV_COMPONENT = 91 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER68 MAV_COMPONENT = 92 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER69 MAV_COMPONENT = 93 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER70 MAV_COMPONENT = 94 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER71 MAV_COMPONENT = 95 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER72 MAV_COMPONENT = 96 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER73 MAV_COMPONENT = 97 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER74 MAV_COMPONENT = 98 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER75 MAV_COMPONENT = 99 + // Camera #1. + MAV_COMP_ID_CAMERA MAV_COMPONENT = 100 + // Camera #2. + MAV_COMP_ID_CAMERA2 MAV_COMPONENT = 101 + // Camera #3. + MAV_COMP_ID_CAMERA3 MAV_COMPONENT = 102 + // Camera #4. + MAV_COMP_ID_CAMERA4 MAV_COMPONENT = 103 + // Camera #5. + MAV_COMP_ID_CAMERA5 MAV_COMPONENT = 104 + // Camera #6. + MAV_COMP_ID_CAMERA6 MAV_COMPONENT = 105 + // Servo #1. + MAV_COMP_ID_SERVO1 MAV_COMPONENT = 140 + // Servo #2. + MAV_COMP_ID_SERVO2 MAV_COMPONENT = 141 + // Servo #3. + MAV_COMP_ID_SERVO3 MAV_COMPONENT = 142 + // Servo #4. + MAV_COMP_ID_SERVO4 MAV_COMPONENT = 143 + // Servo #5. + MAV_COMP_ID_SERVO5 MAV_COMPONENT = 144 + // Servo #6. + MAV_COMP_ID_SERVO6 MAV_COMPONENT = 145 + // Servo #7. + MAV_COMP_ID_SERVO7 MAV_COMPONENT = 146 + // Servo #8. + MAV_COMP_ID_SERVO8 MAV_COMPONENT = 147 + // Servo #9. + MAV_COMP_ID_SERVO9 MAV_COMPONENT = 148 + // Servo #10. + MAV_COMP_ID_SERVO10 MAV_COMPONENT = 149 + // Servo #11. + MAV_COMP_ID_SERVO11 MAV_COMPONENT = 150 + // Servo #12. + MAV_COMP_ID_SERVO12 MAV_COMPONENT = 151 + // Servo #13. + MAV_COMP_ID_SERVO13 MAV_COMPONENT = 152 + // Servo #14. + MAV_COMP_ID_SERVO14 MAV_COMPONENT = 153 + // Gimbal #1. + MAV_COMP_ID_GIMBAL MAV_COMPONENT = 154 + // Logging component. + MAV_COMP_ID_LOG MAV_COMPONENT = 155 + // Automatic Dependent Surveillance-Broadcast (ADS-B) component. + MAV_COMP_ID_ADSB MAV_COMPONENT = 156 + // On Screen Display (OSD) devices for video links. + MAV_COMP_ID_OSD MAV_COMPONENT = 157 + // Generic autopilot peripheral component ID. Meant for devices that do not implement the parameter microservice. + MAV_COMP_ID_PERIPHERAL MAV_COMPONENT = 158 + // Gimbal ID for QX1. + MAV_COMP_ID_QX1_GIMBAL MAV_COMPONENT = 159 + // FLARM collision alert component. + MAV_COMP_ID_FLARM MAV_COMPONENT = 160 + // Parachute component. + MAV_COMP_ID_PARACHUTE MAV_COMPONENT = 161 + // Gimbal #2. + MAV_COMP_ID_GIMBAL2 MAV_COMPONENT = 171 + // Gimbal #3. + MAV_COMP_ID_GIMBAL3 MAV_COMPONENT = 172 + // Gimbal #4 + MAV_COMP_ID_GIMBAL4 MAV_COMPONENT = 173 + // Gimbal #5. + MAV_COMP_ID_GIMBAL5 MAV_COMPONENT = 174 + // Gimbal #6. + MAV_COMP_ID_GIMBAL6 MAV_COMPONENT = 175 + // Battery #1. + MAV_COMP_ID_BATTERY MAV_COMPONENT = 180 + // Battery #2. + MAV_COMP_ID_BATTERY2 MAV_COMPONENT = 181 + // Component that can generate/supply a mission flight plan (e.g. GCS or developer API). + MAV_COMP_ID_MISSIONPLANNER MAV_COMPONENT = 190 + // Component that lives on the onboard computer (companion computer) and has some generic functionalities, such as settings system parameters and monitoring the status of some processes that don't directly speak mavlink and so on. + MAV_COMP_ID_ONBOARD_COMPUTER MAV_COMPONENT = 191 + // Component that lives on the onboard computer (companion computer) and has some generic functionalities, such as settings system parameters and monitoring the status of some processes that don't directly speak mavlink and so on. + MAV_COMP_ID_ONBOARD_COMPUTER2 MAV_COMPONENT = 192 + // Component that lives on the onboard computer (companion computer) and has some generic functionalities, such as settings system parameters and monitoring the status of some processes that don't directly speak mavlink and so on. + MAV_COMP_ID_ONBOARD_COMPUTER3 MAV_COMPONENT = 193 + // Component that lives on the onboard computer (companion computer) and has some generic functionalities, such as settings system parameters and monitoring the status of some processes that don't directly speak mavlink and so on. + MAV_COMP_ID_ONBOARD_COMPUTER4 MAV_COMPONENT = 194 + // Component that finds an optimal path between points based on a certain constraint (e.g. minimum snap, shortest path, cost, etc.). + MAV_COMP_ID_PATHPLANNER MAV_COMPONENT = 195 + // Component that plans a collision free path between two points. + MAV_COMP_ID_OBSTACLE_AVOIDANCE MAV_COMPONENT = 196 + // Component that provides position estimates using VIO techniques. + MAV_COMP_ID_VISUAL_INERTIAL_ODOMETRY MAV_COMPONENT = 197 + // Component that manages pairing of vehicle and GCS. + MAV_COMP_ID_PAIRING_MANAGER MAV_COMPONENT = 198 + // Inertial Measurement Unit (IMU) #1. + MAV_COMP_ID_IMU MAV_COMPONENT = 200 + // Inertial Measurement Unit (IMU) #2. + MAV_COMP_ID_IMU_2 MAV_COMPONENT = 201 + // Inertial Measurement Unit (IMU) #3. + MAV_COMP_ID_IMU_3 MAV_COMPONENT = 202 + // GPS #1. + MAV_COMP_ID_GPS MAV_COMPONENT = 220 + // GPS #2. + MAV_COMP_ID_GPS2 MAV_COMPONENT = 221 + // Open Drone ID transmitter/receiver (Bluetooth/WiFi/Internet). + MAV_COMP_ID_ODID_TXRX_1 MAV_COMPONENT = 236 + // Open Drone ID transmitter/receiver (Bluetooth/WiFi/Internet). + MAV_COMP_ID_ODID_TXRX_2 MAV_COMPONENT = 237 + // Open Drone ID transmitter/receiver (Bluetooth/WiFi/Internet). + MAV_COMP_ID_ODID_TXRX_3 MAV_COMPONENT = 238 + // Component to bridge MAVLink to UDP (i.e. from a UART). + MAV_COMP_ID_UDP_BRIDGE MAV_COMPONENT = 240 + // Component to bridge to UART (i.e. from UDP). + MAV_COMP_ID_UART_BRIDGE MAV_COMPONENT = 241 + // Component handling TUNNEL messages (e.g. vendor specific GUI of a component). + MAV_COMP_ID_TUNNEL_NODE MAV_COMPONENT = 242 + // Component for handling system messages (e.g. to ARM, takeoff, etc.). + MAV_COMP_ID_SYSTEM_CONTROL MAV_COMPONENT = 250 +) + +var labels_MAV_COMPONENT = map[MAV_COMPONENT]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAV_COMPONENT) MarshalText() ([]byte, error) { + if l, ok := labels_MAV_COMPONENT[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAV_COMPONENT = map[string]MAV_COMPONENT{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAV_COMPONENT) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAV_COMPONENT[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAV_COMPONENT) String() string { + if l, ok := labels_MAV_COMPONENT[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/development/enum_mav_data_stream.go b/pkg/dialects/development/enum_mav_data_stream.go new file mode 100644 index 000000000..82287cff9 --- /dev/null +++ b/pkg/dialects/development/enum_mav_data_stream.go @@ -0,0 +1,62 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package development + +import ( + "errors" +) + +// A data stream is not a fixed set of messages, but rather a +// recommendation to the autopilot software. Individual autopilots may or may not obey +// the recommended messages. +type MAV_DATA_STREAM int + +const ( + // Enable all data streams + MAV_DATA_STREAM_ALL MAV_DATA_STREAM = 0 + // Enable IMU_RAW, GPS_RAW, GPS_STATUS packets. + MAV_DATA_STREAM_RAW_SENSORS MAV_DATA_STREAM = 1 + // Enable GPS_STATUS, CONTROL_STATUS, AUX_STATUS + MAV_DATA_STREAM_EXTENDED_STATUS MAV_DATA_STREAM = 2 + // Enable RC_CHANNELS_SCALED, RC_CHANNELS_RAW, SERVO_OUTPUT_RAW + MAV_DATA_STREAM_RC_CHANNELS MAV_DATA_STREAM = 3 + // Enable ATTITUDE_CONTROLLER_OUTPUT, POSITION_CONTROLLER_OUTPUT, NAV_CONTROLLER_OUTPUT. + MAV_DATA_STREAM_RAW_CONTROLLER MAV_DATA_STREAM = 4 + // Enable LOCAL_POSITION, GLOBAL_POSITION_INT messages. + MAV_DATA_STREAM_POSITION MAV_DATA_STREAM = 6 + // Dependent on the autopilot + MAV_DATA_STREAM_EXTRA1 MAV_DATA_STREAM = 10 + // Dependent on the autopilot + MAV_DATA_STREAM_EXTRA2 MAV_DATA_STREAM = 11 + // Dependent on the autopilot + MAV_DATA_STREAM_EXTRA3 MAV_DATA_STREAM = 12 +) + +var labels_MAV_DATA_STREAM = map[MAV_DATA_STREAM]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAV_DATA_STREAM) MarshalText() ([]byte, error) { + if l, ok := labels_MAV_DATA_STREAM[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAV_DATA_STREAM = map[string]MAV_DATA_STREAM{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAV_DATA_STREAM) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAV_DATA_STREAM[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAV_DATA_STREAM) String() string { + if l, ok := labels_MAV_DATA_STREAM[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/development/enum_mav_distance_sensor.go b/pkg/dialects/development/enum_mav_distance_sensor.go new file mode 100644 index 000000000..d99083fc6 --- /dev/null +++ b/pkg/dialects/development/enum_mav_distance_sensor.go @@ -0,0 +1,52 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package development + +import ( + "errors" +) + +// Enumeration of distance sensor types +type MAV_DISTANCE_SENSOR int + +const ( + // Laser rangefinder, e.g. LightWare SF02/F or PulsedLight units + MAV_DISTANCE_SENSOR_LASER MAV_DISTANCE_SENSOR = 0 + // Ultrasound rangefinder, e.g. MaxBotix units + MAV_DISTANCE_SENSOR_ULTRASOUND MAV_DISTANCE_SENSOR = 1 + // Infrared rangefinder, e.g. Sharp units + MAV_DISTANCE_SENSOR_INFRARED MAV_DISTANCE_SENSOR = 2 + // Radar type, e.g. uLanding units + MAV_DISTANCE_SENSOR_RADAR MAV_DISTANCE_SENSOR = 3 + // Broken or unknown type, e.g. analog units + MAV_DISTANCE_SENSOR_UNKNOWN MAV_DISTANCE_SENSOR = 4 +) + +var labels_MAV_DISTANCE_SENSOR = map[MAV_DISTANCE_SENSOR]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAV_DISTANCE_SENSOR) MarshalText() ([]byte, error) { + if l, ok := labels_MAV_DISTANCE_SENSOR[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAV_DISTANCE_SENSOR = map[string]MAV_DISTANCE_SENSOR{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAV_DISTANCE_SENSOR) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAV_DISTANCE_SENSOR[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAV_DISTANCE_SENSOR) String() string { + if l, ok := labels_MAV_DISTANCE_SENSOR[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/development/enum_mav_do_reposition_flags.go b/pkg/dialects/development/enum_mav_do_reposition_flags.go new file mode 100644 index 000000000..13eb936b4 --- /dev/null +++ b/pkg/dialects/development/enum_mav_do_reposition_flags.go @@ -0,0 +1,44 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package development + +import ( + "errors" +) + +// Bitmap of options for the MAV_CMD_DO_REPOSITION +type MAV_DO_REPOSITION_FLAGS int + +const ( + // The aircraft should immediately transition into guided. This should not be set for follow me applications + MAV_DO_REPOSITION_FLAGS_CHANGE_MODE MAV_DO_REPOSITION_FLAGS = 1 +) + +var labels_MAV_DO_REPOSITION_FLAGS = map[MAV_DO_REPOSITION_FLAGS]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAV_DO_REPOSITION_FLAGS) MarshalText() ([]byte, error) { + if l, ok := labels_MAV_DO_REPOSITION_FLAGS[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAV_DO_REPOSITION_FLAGS = map[string]MAV_DO_REPOSITION_FLAGS{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAV_DO_REPOSITION_FLAGS) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAV_DO_REPOSITION_FLAGS[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAV_DO_REPOSITION_FLAGS) String() string { + if l, ok := labels_MAV_DO_REPOSITION_FLAGS[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/development/enum_mav_estimator_type.go b/pkg/dialects/development/enum_mav_estimator_type.go new file mode 100644 index 000000000..b2d846037 --- /dev/null +++ b/pkg/dialects/development/enum_mav_estimator_type.go @@ -0,0 +1,60 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package development + +import ( + "errors" +) + +// Enumeration of estimator types +type MAV_ESTIMATOR_TYPE int + +const ( + // Unknown type of the estimator. + MAV_ESTIMATOR_TYPE_UNKNOWN MAV_ESTIMATOR_TYPE = 0 + // This is a naive estimator without any real covariance feedback. + MAV_ESTIMATOR_TYPE_NAIVE MAV_ESTIMATOR_TYPE = 1 + // Computer vision based estimate. Might be up to scale. + MAV_ESTIMATOR_TYPE_VISION MAV_ESTIMATOR_TYPE = 2 + // Visual-inertial estimate. + MAV_ESTIMATOR_TYPE_VIO MAV_ESTIMATOR_TYPE = 3 + // Plain GPS estimate. + MAV_ESTIMATOR_TYPE_GPS MAV_ESTIMATOR_TYPE = 4 + // Estimator integrating GPS and inertial sensing. + MAV_ESTIMATOR_TYPE_GPS_INS MAV_ESTIMATOR_TYPE = 5 + // Estimate from external motion capturing system. + MAV_ESTIMATOR_TYPE_MOCAP MAV_ESTIMATOR_TYPE = 6 + // Estimator based on lidar sensor input. + MAV_ESTIMATOR_TYPE_LIDAR MAV_ESTIMATOR_TYPE = 7 + // Estimator on autopilot. + MAV_ESTIMATOR_TYPE_AUTOPILOT MAV_ESTIMATOR_TYPE = 8 +) + +var labels_MAV_ESTIMATOR_TYPE = map[MAV_ESTIMATOR_TYPE]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAV_ESTIMATOR_TYPE) MarshalText() ([]byte, error) { + if l, ok := labels_MAV_ESTIMATOR_TYPE[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAV_ESTIMATOR_TYPE = map[string]MAV_ESTIMATOR_TYPE{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAV_ESTIMATOR_TYPE) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAV_ESTIMATOR_TYPE[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAV_ESTIMATOR_TYPE) String() string { + if l, ok := labels_MAV_ESTIMATOR_TYPE[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/development/enum_mav_event_current_sequence_flags.go b/pkg/dialects/development/enum_mav_event_current_sequence_flags.go new file mode 100644 index 000000000..fff224805 --- /dev/null +++ b/pkg/dialects/development/enum_mav_event_current_sequence_flags.go @@ -0,0 +1,44 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package development + +import ( + "errors" +) + +// Flags for CURRENT_EVENT_SEQUENCE. +type MAV_EVENT_CURRENT_SEQUENCE_FLAGS int + +const ( + // A sequence reset has happened (e.g. vehicle reboot). + MAV_EVENT_CURRENT_SEQUENCE_FLAGS_RESET MAV_EVENT_CURRENT_SEQUENCE_FLAGS = 1 +) + +var labels_MAV_EVENT_CURRENT_SEQUENCE_FLAGS = map[MAV_EVENT_CURRENT_SEQUENCE_FLAGS]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAV_EVENT_CURRENT_SEQUENCE_FLAGS) MarshalText() ([]byte, error) { + if l, ok := labels_MAV_EVENT_CURRENT_SEQUENCE_FLAGS[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAV_EVENT_CURRENT_SEQUENCE_FLAGS = map[string]MAV_EVENT_CURRENT_SEQUENCE_FLAGS{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAV_EVENT_CURRENT_SEQUENCE_FLAGS) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAV_EVENT_CURRENT_SEQUENCE_FLAGS[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAV_EVENT_CURRENT_SEQUENCE_FLAGS) String() string { + if l, ok := labels_MAV_EVENT_CURRENT_SEQUENCE_FLAGS[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/development/enum_mav_event_error_reason.go b/pkg/dialects/development/enum_mav_event_error_reason.go new file mode 100644 index 000000000..0dcd35625 --- /dev/null +++ b/pkg/dialects/development/enum_mav_event_error_reason.go @@ -0,0 +1,44 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package development + +import ( + "errors" +) + +// Reason for an event error response. +type MAV_EVENT_ERROR_REASON int + +const ( + // The requested event is not available (anymore). + MAV_EVENT_ERROR_REASON_UNAVAILABLE MAV_EVENT_ERROR_REASON = 0 +) + +var labels_MAV_EVENT_ERROR_REASON = map[MAV_EVENT_ERROR_REASON]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAV_EVENT_ERROR_REASON) MarshalText() ([]byte, error) { + if l, ok := labels_MAV_EVENT_ERROR_REASON[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAV_EVENT_ERROR_REASON = map[string]MAV_EVENT_ERROR_REASON{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAV_EVENT_ERROR_REASON) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAV_EVENT_ERROR_REASON[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAV_EVENT_ERROR_REASON) String() string { + if l, ok := labels_MAV_EVENT_ERROR_REASON[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/development/enum_mav_frame.go b/pkg/dialects/development/enum_mav_frame.go new file mode 100644 index 000000000..f8cde6bb5 --- /dev/null +++ b/pkg/dialects/development/enum_mav_frame.go @@ -0,0 +1,100 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package development + +import ( + "errors" +) + +// Co-ordinate frames used by MAVLink. Not all frames are supported by all commands, messages, or vehicles. +// +// Global frames use the following naming conventions: +// - "GLOBAL": Global co-ordinate frame with WGS84 latitude/longitude and altitude positive over mean sea level (MSL) by default. +// The following modifiers may be used with "GLOBAL": +// - "RELATIVE_ALT": Altitude is relative to the vehicle home position rather than MSL. +// - "TERRAIN_ALT": Altitude is relative to ground level rather than MSL. +// - "INT": Latitude/longitude (in degrees) are scaled by multiplying by 1E7. +// +// Local frames use the following naming conventions: +// - "LOCAL": Origin of local frame is fixed relative to earth. Unless otherwise specified this origin is the origin of the vehicle position-estimator ("EKF"). +// - "BODY": Origin of local frame travels with the vehicle. NOTE, "BODY" does NOT indicate alignment of frame axis with vehicle attitude. +// - "OFFSET": Deprecated synonym for "BODY" (origin travels with the vehicle). Not to be used for new frames. +// +// Some deprecated frames do not follow these conventions (e.g. MAV_FRAME_BODY_NED and MAV_FRAME_BODY_OFFSET_NED). +type MAV_FRAME int + +const ( + // Global (WGS84) coordinate frame + MSL altitude. First value / x: latitude, second value / y: longitude, third value / z: positive altitude over mean sea level (MSL). + MAV_FRAME_GLOBAL MAV_FRAME = 0 + // NED local tangent frame (x: North, y: East, z: Down) with origin fixed relative to earth. + MAV_FRAME_LOCAL_NED MAV_FRAME = 1 + // NOT a coordinate frame, indicates a mission command. + MAV_FRAME_MISSION MAV_FRAME = 2 + // Global (WGS84) coordinate frame + altitude relative to the home position. First value / x: latitude, second value / y: longitude, third value / z: positive altitude with 0 being at the altitude of the home location. + MAV_FRAME_GLOBAL_RELATIVE_ALT MAV_FRAME = 3 + // ENU local tangent frame (x: East, y: North, z: Up) with origin fixed relative to earth. + MAV_FRAME_LOCAL_ENU MAV_FRAME = 4 + // Global (WGS84) coordinate frame (scaled) + MSL altitude. First value / x: latitude in degrees*1E7, second value / y: longitude in degrees*1E7, third value / z: positive altitude over mean sea level (MSL). + MAV_FRAME_GLOBAL_INT MAV_FRAME = 5 + // Global (WGS84) coordinate frame (scaled) + altitude relative to the home position. First value / x: latitude in degrees*1E7, second value / y: longitude in degrees*1E7, third value / z: positive altitude with 0 being at the altitude of the home location. + MAV_FRAME_GLOBAL_RELATIVE_ALT_INT MAV_FRAME = 6 + // NED local tangent frame (x: North, y: East, z: Down) with origin that travels with the vehicle. + MAV_FRAME_LOCAL_OFFSET_NED MAV_FRAME = 7 + // Same as MAV_FRAME_LOCAL_NED when used to represent position values. Same as MAV_FRAME_BODY_FRD when used with velocity/accelaration values. + MAV_FRAME_BODY_NED MAV_FRAME = 8 + // This is the same as MAV_FRAME_BODY_FRD. + MAV_FRAME_BODY_OFFSET_NED MAV_FRAME = 9 + // Global (WGS84) coordinate frame with AGL altitude (at the waypoint coordinate). First value / x: latitude in degrees, second value / y: longitude in degrees, third value / z: positive altitude in meters with 0 being at ground level in terrain model. + MAV_FRAME_GLOBAL_TERRAIN_ALT MAV_FRAME = 10 + // Global (WGS84) coordinate frame (scaled) with AGL altitude (at the waypoint coordinate). First value / x: latitude in degrees*1E7, second value / y: longitude in degrees*1E7, third value / z: positive altitude in meters with 0 being at ground level in terrain model. + MAV_FRAME_GLOBAL_TERRAIN_ALT_INT MAV_FRAME = 11 + // FRD local tangent frame (x: Forward, y: Right, z: Down) with origin that travels with vehicle. The forward axis is aligned to the front of the vehicle in the horizontal plane. + MAV_FRAME_BODY_FRD MAV_FRAME = 12 + // MAV_FRAME_BODY_FLU - Body fixed frame of reference, Z-up (x: Forward, y: Left, z: Up). + MAV_FRAME_RESERVED_13 MAV_FRAME = 13 + // MAV_FRAME_MOCAP_NED - Odometry local coordinate frame of data given by a motion capture system, Z-down (x: North, y: East, z: Down). + MAV_FRAME_RESERVED_14 MAV_FRAME = 14 + // MAV_FRAME_MOCAP_ENU - Odometry local coordinate frame of data given by a motion capture system, Z-up (x: East, y: North, z: Up). + MAV_FRAME_RESERVED_15 MAV_FRAME = 15 + // MAV_FRAME_VISION_NED - Odometry local coordinate frame of data given by a vision estimation system, Z-down (x: North, y: East, z: Down). + MAV_FRAME_RESERVED_16 MAV_FRAME = 16 + // MAV_FRAME_VISION_ENU - Odometry local coordinate frame of data given by a vision estimation system, Z-up (x: East, y: North, z: Up). + MAV_FRAME_RESERVED_17 MAV_FRAME = 17 + // MAV_FRAME_ESTIM_NED - Odometry local coordinate frame of data given by an estimator running onboard the vehicle, Z-down (x: North, y: East, z: Down). + MAV_FRAME_RESERVED_18 MAV_FRAME = 18 + // MAV_FRAME_ESTIM_ENU - Odometry local coordinate frame of data given by an estimator running onboard the vehicle, Z-up (x: East, y: North, z: Up). + MAV_FRAME_RESERVED_19 MAV_FRAME = 19 + // FRD local tangent frame (x: Forward, y: Right, z: Down) with origin fixed relative to earth. The forward axis is aligned to the front of the vehicle in the horizontal plane. + MAV_FRAME_LOCAL_FRD MAV_FRAME = 20 + // FLU local tangent frame (x: Forward, y: Left, z: Up) with origin fixed relative to earth. The forward axis is aligned to the front of the vehicle in the horizontal plane. + MAV_FRAME_LOCAL_FLU MAV_FRAME = 21 +) + +var labels_MAV_FRAME = map[MAV_FRAME]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAV_FRAME) MarshalText() ([]byte, error) { + if l, ok := labels_MAV_FRAME[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAV_FRAME = map[string]MAV_FRAME{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAV_FRAME) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAV_FRAME[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAV_FRAME) String() string { + if l, ok := labels_MAV_FRAME[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/development/enum_mav_generator_status_flag.go b/pkg/dialects/development/enum_mav_generator_status_flag.go new file mode 100644 index 000000000..e76497582 --- /dev/null +++ b/pkg/dialects/development/enum_mav_generator_status_flag.go @@ -0,0 +1,88 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package development + +import ( + "errors" +) + +// Flags to report status/failure cases for a power generator (used in GENERATOR_STATUS). Note that FAULTS are conditions that cause the generator to fail. Warnings are conditions that require attention before the next use (they indicate the system is not operating properly). +type MAV_GENERATOR_STATUS_FLAG int + +const ( + // Generator is off. + MAV_GENERATOR_STATUS_FLAG_OFF MAV_GENERATOR_STATUS_FLAG = 1 + // Generator is ready to start generating power. + MAV_GENERATOR_STATUS_FLAG_READY MAV_GENERATOR_STATUS_FLAG = 2 + // Generator is generating power. + MAV_GENERATOR_STATUS_FLAG_GENERATING MAV_GENERATOR_STATUS_FLAG = 4 + // Generator is charging the batteries (generating enough power to charge and provide the load). + MAV_GENERATOR_STATUS_FLAG_CHARGING MAV_GENERATOR_STATUS_FLAG = 8 + // Generator is operating at a reduced maximum power. + MAV_GENERATOR_STATUS_FLAG_REDUCED_POWER MAV_GENERATOR_STATUS_FLAG = 16 + // Generator is providing the maximum output. + MAV_GENERATOR_STATUS_FLAG_MAXPOWER MAV_GENERATOR_STATUS_FLAG = 32 + // Generator is near the maximum operating temperature, cooling is insufficient. + MAV_GENERATOR_STATUS_FLAG_OVERTEMP_WARNING MAV_GENERATOR_STATUS_FLAG = 64 + // Generator hit the maximum operating temperature and shutdown. + MAV_GENERATOR_STATUS_FLAG_OVERTEMP_FAULT MAV_GENERATOR_STATUS_FLAG = 128 + // Power electronics are near the maximum operating temperature, cooling is insufficient. + MAV_GENERATOR_STATUS_FLAG_ELECTRONICS_OVERTEMP_WARNING MAV_GENERATOR_STATUS_FLAG = 256 + // Power electronics hit the maximum operating temperature and shutdown. + MAV_GENERATOR_STATUS_FLAG_ELECTRONICS_OVERTEMP_FAULT MAV_GENERATOR_STATUS_FLAG = 512 + // Power electronics experienced a fault and shutdown. + MAV_GENERATOR_STATUS_FLAG_ELECTRONICS_FAULT MAV_GENERATOR_STATUS_FLAG = 1024 + // The power source supplying the generator failed e.g. mechanical generator stopped, tether is no longer providing power, solar cell is in shade, hydrogen reaction no longer happening. + MAV_GENERATOR_STATUS_FLAG_POWERSOURCE_FAULT MAV_GENERATOR_STATUS_FLAG = 2048 + // Generator controller having communication problems. + MAV_GENERATOR_STATUS_FLAG_COMMUNICATION_WARNING MAV_GENERATOR_STATUS_FLAG = 4096 + // Power electronic or generator cooling system error. + MAV_GENERATOR_STATUS_FLAG_COOLING_WARNING MAV_GENERATOR_STATUS_FLAG = 8192 + // Generator controller power rail experienced a fault. + MAV_GENERATOR_STATUS_FLAG_POWER_RAIL_FAULT MAV_GENERATOR_STATUS_FLAG = 16384 + // Generator controller exceeded the overcurrent threshold and shutdown to prevent damage. + MAV_GENERATOR_STATUS_FLAG_OVERCURRENT_FAULT MAV_GENERATOR_STATUS_FLAG = 32768 + // Generator controller detected a high current going into the batteries and shutdown to prevent battery damage. + MAV_GENERATOR_STATUS_FLAG_BATTERY_OVERCHARGE_CURRENT_FAULT MAV_GENERATOR_STATUS_FLAG = 65536 + // Generator controller exceeded it's overvoltage threshold and shutdown to prevent it exceeding the voltage rating. + MAV_GENERATOR_STATUS_FLAG_OVERVOLTAGE_FAULT MAV_GENERATOR_STATUS_FLAG = 131072 + // Batteries are under voltage (generator will not start). + MAV_GENERATOR_STATUS_FLAG_BATTERY_UNDERVOLT_FAULT MAV_GENERATOR_STATUS_FLAG = 262144 + // Generator start is inhibited by e.g. a safety switch. + MAV_GENERATOR_STATUS_FLAG_START_INHIBITED MAV_GENERATOR_STATUS_FLAG = 524288 + // Generator requires maintenance. + MAV_GENERATOR_STATUS_FLAG_MAINTENANCE_REQUIRED MAV_GENERATOR_STATUS_FLAG = 1048576 + // Generator is not ready to generate yet. + MAV_GENERATOR_STATUS_FLAG_WARMING_UP MAV_GENERATOR_STATUS_FLAG = 2097152 + // Generator is idle. + MAV_GENERATOR_STATUS_FLAG_IDLE MAV_GENERATOR_STATUS_FLAG = 4194304 +) + +var labels_MAV_GENERATOR_STATUS_FLAG = map[MAV_GENERATOR_STATUS_FLAG]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAV_GENERATOR_STATUS_FLAG) MarshalText() ([]byte, error) { + if l, ok := labels_MAV_GENERATOR_STATUS_FLAG[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAV_GENERATOR_STATUS_FLAG = map[string]MAV_GENERATOR_STATUS_FLAG{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAV_GENERATOR_STATUS_FLAG) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAV_GENERATOR_STATUS_FLAG[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAV_GENERATOR_STATUS_FLAG) String() string { + if l, ok := labels_MAV_GENERATOR_STATUS_FLAG[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/development/enum_mav_goto.go b/pkg/dialects/development/enum_mav_goto.go new file mode 100644 index 000000000..157a1561e --- /dev/null +++ b/pkg/dialects/development/enum_mav_goto.go @@ -0,0 +1,50 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package development + +import ( + "errors" +) + +// Actions that may be specified in MAV_CMD_OVERRIDE_GOTO to override mission execution. +type MAV_GOTO int + +const ( + // Hold at the current position. + MAV_GOTO_DO_HOLD MAV_GOTO = 0 + // Continue with the next item in mission execution. + MAV_GOTO_DO_CONTINUE MAV_GOTO = 1 + // Hold at the current position of the system + MAV_GOTO_HOLD_AT_CURRENT_POSITION MAV_GOTO = 2 + // Hold at the position specified in the parameters of the DO_HOLD action + MAV_GOTO_HOLD_AT_SPECIFIED_POSITION MAV_GOTO = 3 +) + +var labels_MAV_GOTO = map[MAV_GOTO]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAV_GOTO) MarshalText() ([]byte, error) { + if l, ok := labels_MAV_GOTO[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAV_GOTO = map[string]MAV_GOTO{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAV_GOTO) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAV_GOTO[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAV_GOTO) String() string { + if l, ok := labels_MAV_GOTO[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/development/enum_mav_landed_state.go b/pkg/dialects/development/enum_mav_landed_state.go new file mode 100644 index 000000000..e3c49a8d2 --- /dev/null +++ b/pkg/dialects/development/enum_mav_landed_state.go @@ -0,0 +1,52 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package development + +import ( + "errors" +) + +// Enumeration of landed detector states +type MAV_LANDED_STATE int + +const ( + // MAV landed state is unknown + MAV_LANDED_STATE_UNDEFINED MAV_LANDED_STATE = 0 + // MAV is landed (on ground) + MAV_LANDED_STATE_ON_GROUND MAV_LANDED_STATE = 1 + // MAV is in air + MAV_LANDED_STATE_IN_AIR MAV_LANDED_STATE = 2 + // MAV currently taking off + MAV_LANDED_STATE_TAKEOFF MAV_LANDED_STATE = 3 + // MAV currently landing + MAV_LANDED_STATE_LANDING MAV_LANDED_STATE = 4 +) + +var labels_MAV_LANDED_STATE = map[MAV_LANDED_STATE]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAV_LANDED_STATE) MarshalText() ([]byte, error) { + if l, ok := labels_MAV_LANDED_STATE[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAV_LANDED_STATE = map[string]MAV_LANDED_STATE{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAV_LANDED_STATE) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAV_LANDED_STATE[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAV_LANDED_STATE) String() string { + if l, ok := labels_MAV_LANDED_STATE[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/development/enum_mav_mission_result.go b/pkg/dialects/development/enum_mav_mission_result.go new file mode 100644 index 000000000..dd53f5abd --- /dev/null +++ b/pkg/dialects/development/enum_mav_mission_result.go @@ -0,0 +1,74 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package development + +import ( + "errors" +) + +// Result of mission operation (in a MISSION_ACK message). +type MAV_MISSION_RESULT int + +const ( + // mission accepted OK + MAV_MISSION_ACCEPTED MAV_MISSION_RESULT = 0 + // Generic error / not accepting mission commands at all right now. + MAV_MISSION_ERROR MAV_MISSION_RESULT = 1 + // Coordinate frame is not supported. + MAV_MISSION_UNSUPPORTED_FRAME MAV_MISSION_RESULT = 2 + // Command is not supported. + MAV_MISSION_UNSUPPORTED MAV_MISSION_RESULT = 3 + // Mission items exceed storage space. + MAV_MISSION_NO_SPACE MAV_MISSION_RESULT = 4 + // One of the parameters has an invalid value. + MAV_MISSION_INVALID MAV_MISSION_RESULT = 5 + // param1 has an invalid value. + MAV_MISSION_INVALID_PARAM1 MAV_MISSION_RESULT = 6 + // param2 has an invalid value. + MAV_MISSION_INVALID_PARAM2 MAV_MISSION_RESULT = 7 + // param3 has an invalid value. + MAV_MISSION_INVALID_PARAM3 MAV_MISSION_RESULT = 8 + // param4 has an invalid value. + MAV_MISSION_INVALID_PARAM4 MAV_MISSION_RESULT = 9 + // x / param5 has an invalid value. + MAV_MISSION_INVALID_PARAM5_X MAV_MISSION_RESULT = 10 + // y / param6 has an invalid value. + MAV_MISSION_INVALID_PARAM6_Y MAV_MISSION_RESULT = 11 + // z / param7 has an invalid value. + MAV_MISSION_INVALID_PARAM7 MAV_MISSION_RESULT = 12 + // Mission item received out of sequence + MAV_MISSION_INVALID_SEQUENCE MAV_MISSION_RESULT = 13 + // Not accepting any mission commands from this communication partner. + MAV_MISSION_DENIED MAV_MISSION_RESULT = 14 + // Current mission operation cancelled (e.g. mission upload, mission download). + MAV_MISSION_OPERATION_CANCELLED MAV_MISSION_RESULT = 15 +) + +var labels_MAV_MISSION_RESULT = map[MAV_MISSION_RESULT]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAV_MISSION_RESULT) MarshalText() ([]byte, error) { + if l, ok := labels_MAV_MISSION_RESULT[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAV_MISSION_RESULT = map[string]MAV_MISSION_RESULT{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAV_MISSION_RESULT) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAV_MISSION_RESULT[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAV_MISSION_RESULT) String() string { + if l, ok := labels_MAV_MISSION_RESULT[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/development/enum_mav_mission_type.go b/pkg/dialects/development/enum_mav_mission_type.go new file mode 100644 index 000000000..01637117b --- /dev/null +++ b/pkg/dialects/development/enum_mav_mission_type.go @@ -0,0 +1,50 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package development + +import ( + "errors" +) + +// Type of mission items being requested/sent in mission protocol. +type MAV_MISSION_TYPE int + +const ( + // Items are mission commands for main mission. + MAV_MISSION_TYPE_MISSION MAV_MISSION_TYPE = 0 + // Specifies GeoFence area(s). Items are MAV_CMD_NAV_FENCE_ GeoFence items. + MAV_MISSION_TYPE_FENCE MAV_MISSION_TYPE = 1 + // Specifies the rally points for the vehicle. Rally points are alternative RTL points. Items are MAV_CMD_NAV_RALLY_POINT rally point items. + MAV_MISSION_TYPE_RALLY MAV_MISSION_TYPE = 2 + // Only used in MISSION_CLEAR_ALL to clear all mission types. + MAV_MISSION_TYPE_ALL MAV_MISSION_TYPE = 255 +) + +var labels_MAV_MISSION_TYPE = map[MAV_MISSION_TYPE]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAV_MISSION_TYPE) MarshalText() ([]byte, error) { + if l, ok := labels_MAV_MISSION_TYPE[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAV_MISSION_TYPE = map[string]MAV_MISSION_TYPE{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAV_MISSION_TYPE) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAV_MISSION_TYPE[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAV_MISSION_TYPE) String() string { + if l, ok := labels_MAV_MISSION_TYPE[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/development/enum_mav_mode.go b/pkg/dialects/development/enum_mav_mode.go new file mode 100644 index 000000000..7bf05bbf2 --- /dev/null +++ b/pkg/dialects/development/enum_mav_mode.go @@ -0,0 +1,65 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package development + +import ( + "errors" +) + +// These defines are predefined OR-combined mode flags. There is no need to use values from this enum, but it +// simplifies the use of the mode flags. Note that manual input is enabled in all modes as a safety override. +type MAV_MODE int + +const ( + // System is not ready to fly, booting, calibrating, etc. No flag is set. + MAV_MODE_PREFLIGHT MAV_MODE = 0 + // System is allowed to be active, under assisted RC control. + MAV_MODE_STABILIZE_DISARMED MAV_MODE = 80 + // System is allowed to be active, under assisted RC control. + MAV_MODE_STABILIZE_ARMED MAV_MODE = 208 + // System is allowed to be active, under manual (RC) control, no stabilization + MAV_MODE_MANUAL_DISARMED MAV_MODE = 64 + // System is allowed to be active, under manual (RC) control, no stabilization + MAV_MODE_MANUAL_ARMED MAV_MODE = 192 + // System is allowed to be active, under autonomous control, manual setpoint + MAV_MODE_GUIDED_DISARMED MAV_MODE = 88 + // System is allowed to be active, under autonomous control, manual setpoint + MAV_MODE_GUIDED_ARMED MAV_MODE = 216 + // System is allowed to be active, under autonomous control and navigation (the trajectory is decided onboard and not pre-programmed by waypoints) + MAV_MODE_AUTO_DISARMED MAV_MODE = 92 + // System is allowed to be active, under autonomous control and navigation (the trajectory is decided onboard and not pre-programmed by waypoints) + MAV_MODE_AUTO_ARMED MAV_MODE = 220 + // UNDEFINED mode. This solely depends on the autopilot - use with caution, intended for developers only. + MAV_MODE_TEST_DISARMED MAV_MODE = 66 + // UNDEFINED mode. This solely depends on the autopilot - use with caution, intended for developers only. + MAV_MODE_TEST_ARMED MAV_MODE = 194 +) + +var labels_MAV_MODE = map[MAV_MODE]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAV_MODE) MarshalText() ([]byte, error) { + if l, ok := labels_MAV_MODE[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAV_MODE = map[string]MAV_MODE{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAV_MODE) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAV_MODE[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAV_MODE) String() string { + if l, ok := labels_MAV_MODE[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/development/enum_mav_mode_flag.go b/pkg/dialects/development/enum_mav_mode_flag.go new file mode 100644 index 000000000..851a4826e --- /dev/null +++ b/pkg/dialects/development/enum_mav_mode_flag.go @@ -0,0 +1,58 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package development + +import ( + "errors" +) + +// These flags encode the MAV mode. +type MAV_MODE_FLAG int + +const ( + // 0b10000000 MAV safety set to armed. Motors are enabled / running / can start. Ready to fly. Additional note: this flag is to be ignore when sent in the command MAV_CMD_DO_SET_MODE and MAV_CMD_COMPONENT_ARM_DISARM shall be used instead. The flag can still be used to report the armed state. + MAV_MODE_FLAG_SAFETY_ARMED MAV_MODE_FLAG = 128 + // 0b01000000 remote control input is enabled. + MAV_MODE_FLAG_MANUAL_INPUT_ENABLED MAV_MODE_FLAG = 64 + // 0b00100000 hardware in the loop simulation. All motors / actuators are blocked, but internal software is full operational. + MAV_MODE_FLAG_HIL_ENABLED MAV_MODE_FLAG = 32 + // 0b00010000 system stabilizes electronically its attitude (and optionally position). It needs however further control inputs to move around. + MAV_MODE_FLAG_STABILIZE_ENABLED MAV_MODE_FLAG = 16 + // 0b00001000 guided mode enabled, system flies waypoints / mission items. + MAV_MODE_FLAG_GUIDED_ENABLED MAV_MODE_FLAG = 8 + // 0b00000100 autonomous mode enabled, system finds its own goal positions. Guided flag can be set or not, depends on the actual implementation. + MAV_MODE_FLAG_AUTO_ENABLED MAV_MODE_FLAG = 4 + // 0b00000010 system has a test mode enabled. This flag is intended for temporary system tests and should not be used for stable implementations. + MAV_MODE_FLAG_TEST_ENABLED MAV_MODE_FLAG = 2 + // 0b00000001 Reserved for future use. + MAV_MODE_FLAG_CUSTOM_MODE_ENABLED MAV_MODE_FLAG = 1 +) + +var labels_MAV_MODE_FLAG = map[MAV_MODE_FLAG]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAV_MODE_FLAG) MarshalText() ([]byte, error) { + if l, ok := labels_MAV_MODE_FLAG[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAV_MODE_FLAG = map[string]MAV_MODE_FLAG{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAV_MODE_FLAG) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAV_MODE_FLAG[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAV_MODE_FLAG) String() string { + if l, ok := labels_MAV_MODE_FLAG[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/development/enum_mav_mode_flag_decode_position.go b/pkg/dialects/development/enum_mav_mode_flag_decode_position.go new file mode 100644 index 000000000..81c09fbf8 --- /dev/null +++ b/pkg/dialects/development/enum_mav_mode_flag_decode_position.go @@ -0,0 +1,58 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package development + +import ( + "errors" +) + +// These values encode the bit positions of the decode position. These values can be used to read the value of a flag bit by combining the base_mode variable with AND with the flag position value. The result will be either 0 or 1, depending on if the flag is set or not. +type MAV_MODE_FLAG_DECODE_POSITION int + +const ( + // First bit: 10000000 + MAV_MODE_FLAG_DECODE_POSITION_SAFETY MAV_MODE_FLAG_DECODE_POSITION = 128 + // Second bit: 01000000 + MAV_MODE_FLAG_DECODE_POSITION_MANUAL MAV_MODE_FLAG_DECODE_POSITION = 64 + // Third bit: 00100000 + MAV_MODE_FLAG_DECODE_POSITION_HIL MAV_MODE_FLAG_DECODE_POSITION = 32 + // Fourth bit: 00010000 + MAV_MODE_FLAG_DECODE_POSITION_STABILIZE MAV_MODE_FLAG_DECODE_POSITION = 16 + // Fifth bit: 00001000 + MAV_MODE_FLAG_DECODE_POSITION_GUIDED MAV_MODE_FLAG_DECODE_POSITION = 8 + // Sixth bit: 00000100 + MAV_MODE_FLAG_DECODE_POSITION_AUTO MAV_MODE_FLAG_DECODE_POSITION = 4 + // Seventh bit: 00000010 + MAV_MODE_FLAG_DECODE_POSITION_TEST MAV_MODE_FLAG_DECODE_POSITION = 2 + // Eighth bit: 00000001 + MAV_MODE_FLAG_DECODE_POSITION_CUSTOM_MODE MAV_MODE_FLAG_DECODE_POSITION = 1 +) + +var labels_MAV_MODE_FLAG_DECODE_POSITION = map[MAV_MODE_FLAG_DECODE_POSITION]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAV_MODE_FLAG_DECODE_POSITION) MarshalText() ([]byte, error) { + if l, ok := labels_MAV_MODE_FLAG_DECODE_POSITION[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAV_MODE_FLAG_DECODE_POSITION = map[string]MAV_MODE_FLAG_DECODE_POSITION{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAV_MODE_FLAG_DECODE_POSITION) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAV_MODE_FLAG_DECODE_POSITION[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAV_MODE_FLAG_DECODE_POSITION) String() string { + if l, ok := labels_MAV_MODE_FLAG_DECODE_POSITION[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/development/enum_mav_mount_mode.go b/pkg/dialects/development/enum_mav_mount_mode.go new file mode 100644 index 000000000..d408b4cd0 --- /dev/null +++ b/pkg/dialects/development/enum_mav_mount_mode.go @@ -0,0 +1,56 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package development + +import ( + "errors" +) + +// Enumeration of possible mount operation modes. This message is used by obsolete/deprecated gimbal messages. +type MAV_MOUNT_MODE int + +const ( + // Load and keep safe position (Roll,Pitch,Yaw) from permant memory and stop stabilization + MAV_MOUNT_MODE_RETRACT MAV_MOUNT_MODE = 0 + // Load and keep neutral position (Roll,Pitch,Yaw) from permanent memory. + MAV_MOUNT_MODE_NEUTRAL MAV_MOUNT_MODE = 1 + // Load neutral position and start MAVLink Roll,Pitch,Yaw control with stabilization + MAV_MOUNT_MODE_MAVLINK_TARGETING MAV_MOUNT_MODE = 2 + // Load neutral position and start RC Roll,Pitch,Yaw control with stabilization + MAV_MOUNT_MODE_RC_TARGETING MAV_MOUNT_MODE = 3 + // Load neutral position and start to point to Lat,Lon,Alt + MAV_MOUNT_MODE_GPS_POINT MAV_MOUNT_MODE = 4 + // Gimbal tracks system with specified system ID + MAV_MOUNT_MODE_SYSID_TARGET MAV_MOUNT_MODE = 5 + // Gimbal tracks home location + MAV_MOUNT_MODE_HOME_LOCATION MAV_MOUNT_MODE = 6 +) + +var labels_MAV_MOUNT_MODE = map[MAV_MOUNT_MODE]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAV_MOUNT_MODE) MarshalText() ([]byte, error) { + if l, ok := labels_MAV_MOUNT_MODE[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAV_MOUNT_MODE = map[string]MAV_MOUNT_MODE{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAV_MOUNT_MODE) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAV_MOUNT_MODE[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAV_MOUNT_MODE) String() string { + if l, ok := labels_MAV_MOUNT_MODE[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/development/enum_mav_odid_auth_type.go b/pkg/dialects/development/enum_mav_odid_auth_type.go new file mode 100644 index 000000000..4a0771fd7 --- /dev/null +++ b/pkg/dialects/development/enum_mav_odid_auth_type.go @@ -0,0 +1,53 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package development + +import ( + "errors" +) + +type MAV_ODID_AUTH_TYPE int + +const ( + // No authentication type is specified. + MAV_ODID_AUTH_TYPE_NONE MAV_ODID_AUTH_TYPE = 0 + // Signature for the UAS (Unmanned Aircraft System) ID. + MAV_ODID_AUTH_TYPE_UAS_ID_SIGNATURE MAV_ODID_AUTH_TYPE = 1 + // Signature for the Operator ID. + MAV_ODID_AUTH_TYPE_OPERATOR_ID_SIGNATURE MAV_ODID_AUTH_TYPE = 2 + // Signature for the entire message set. + MAV_ODID_AUTH_TYPE_MESSAGE_SET_SIGNATURE MAV_ODID_AUTH_TYPE = 3 + // Authentication is provided by Network Remote ID. + MAV_ODID_AUTH_TYPE_NETWORK_REMOTE_ID MAV_ODID_AUTH_TYPE = 4 + // The exact authentication type is indicated by the first byte of authentication_data and these type values are managed by ICAO. + MAV_ODID_AUTH_TYPE_SPECIFIC_AUTHENTICATION MAV_ODID_AUTH_TYPE = 5 +) + +var labels_MAV_ODID_AUTH_TYPE = map[MAV_ODID_AUTH_TYPE]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAV_ODID_AUTH_TYPE) MarshalText() ([]byte, error) { + if l, ok := labels_MAV_ODID_AUTH_TYPE[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAV_ODID_AUTH_TYPE = map[string]MAV_ODID_AUTH_TYPE{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAV_ODID_AUTH_TYPE) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAV_ODID_AUTH_TYPE[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAV_ODID_AUTH_TYPE) String() string { + if l, ok := labels_MAV_ODID_AUTH_TYPE[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/development/enum_mav_odid_category_eu.go b/pkg/dialects/development/enum_mav_odid_category_eu.go new file mode 100644 index 000000000..d72529a9f --- /dev/null +++ b/pkg/dialects/development/enum_mav_odid_category_eu.go @@ -0,0 +1,49 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package development + +import ( + "errors" +) + +type MAV_ODID_CATEGORY_EU int + +const ( + // The category for the UA, according to the EU specification, is undeclared. + MAV_ODID_CATEGORY_EU_UNDECLARED MAV_ODID_CATEGORY_EU = 0 + // The category for the UA, according to the EU specification, is the Open category. + MAV_ODID_CATEGORY_EU_OPEN MAV_ODID_CATEGORY_EU = 1 + // The category for the UA, according to the EU specification, is the Specific category. + MAV_ODID_CATEGORY_EU_SPECIFIC MAV_ODID_CATEGORY_EU = 2 + // The category for the UA, according to the EU specification, is the Certified category. + MAV_ODID_CATEGORY_EU_CERTIFIED MAV_ODID_CATEGORY_EU = 3 +) + +var labels_MAV_ODID_CATEGORY_EU = map[MAV_ODID_CATEGORY_EU]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAV_ODID_CATEGORY_EU) MarshalText() ([]byte, error) { + if l, ok := labels_MAV_ODID_CATEGORY_EU[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAV_ODID_CATEGORY_EU = map[string]MAV_ODID_CATEGORY_EU{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAV_ODID_CATEGORY_EU) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAV_ODID_CATEGORY_EU[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAV_ODID_CATEGORY_EU) String() string { + if l, ok := labels_MAV_ODID_CATEGORY_EU[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/development/enum_mav_odid_class_eu.go b/pkg/dialects/development/enum_mav_odid_class_eu.go new file mode 100644 index 000000000..a30435fcd --- /dev/null +++ b/pkg/dialects/development/enum_mav_odid_class_eu.go @@ -0,0 +1,57 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package development + +import ( + "errors" +) + +type MAV_ODID_CLASS_EU int + +const ( + // The class for the UA, according to the EU specification, is undeclared. + MAV_ODID_CLASS_EU_UNDECLARED MAV_ODID_CLASS_EU = 0 + // The class for the UA, according to the EU specification, is Class 0. + MAV_ODID_CLASS_EU_CLASS_0 MAV_ODID_CLASS_EU = 1 + // The class for the UA, according to the EU specification, is Class 1. + MAV_ODID_CLASS_EU_CLASS_1 MAV_ODID_CLASS_EU = 2 + // The class for the UA, according to the EU specification, is Class 2. + MAV_ODID_CLASS_EU_CLASS_2 MAV_ODID_CLASS_EU = 3 + // The class for the UA, according to the EU specification, is Class 3. + MAV_ODID_CLASS_EU_CLASS_3 MAV_ODID_CLASS_EU = 4 + // The class for the UA, according to the EU specification, is Class 4. + MAV_ODID_CLASS_EU_CLASS_4 MAV_ODID_CLASS_EU = 5 + // The class for the UA, according to the EU specification, is Class 5. + MAV_ODID_CLASS_EU_CLASS_5 MAV_ODID_CLASS_EU = 6 + // The class for the UA, according to the EU specification, is Class 6. + MAV_ODID_CLASS_EU_CLASS_6 MAV_ODID_CLASS_EU = 7 +) + +var labels_MAV_ODID_CLASS_EU = map[MAV_ODID_CLASS_EU]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAV_ODID_CLASS_EU) MarshalText() ([]byte, error) { + if l, ok := labels_MAV_ODID_CLASS_EU[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAV_ODID_CLASS_EU = map[string]MAV_ODID_CLASS_EU{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAV_ODID_CLASS_EU) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAV_ODID_CLASS_EU[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAV_ODID_CLASS_EU) String() string { + if l, ok := labels_MAV_ODID_CLASS_EU[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/development/enum_mav_odid_classification_type.go b/pkg/dialects/development/enum_mav_odid_classification_type.go new file mode 100644 index 000000000..1b49ee8ba --- /dev/null +++ b/pkg/dialects/development/enum_mav_odid_classification_type.go @@ -0,0 +1,45 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package development + +import ( + "errors" +) + +type MAV_ODID_CLASSIFICATION_TYPE int + +const ( + // The classification type for the UA is undeclared. + MAV_ODID_CLASSIFICATION_TYPE_UNDECLARED MAV_ODID_CLASSIFICATION_TYPE = 0 + // The classification type for the UA follows EU (European Union) specifications. + MAV_ODID_CLASSIFICATION_TYPE_EU MAV_ODID_CLASSIFICATION_TYPE = 1 +) + +var labels_MAV_ODID_CLASSIFICATION_TYPE = map[MAV_ODID_CLASSIFICATION_TYPE]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAV_ODID_CLASSIFICATION_TYPE) MarshalText() ([]byte, error) { + if l, ok := labels_MAV_ODID_CLASSIFICATION_TYPE[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAV_ODID_CLASSIFICATION_TYPE = map[string]MAV_ODID_CLASSIFICATION_TYPE{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAV_ODID_CLASSIFICATION_TYPE) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAV_ODID_CLASSIFICATION_TYPE[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAV_ODID_CLASSIFICATION_TYPE) String() string { + if l, ok := labels_MAV_ODID_CLASSIFICATION_TYPE[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/development/enum_mav_odid_desc_type.go b/pkg/dialects/development/enum_mav_odid_desc_type.go new file mode 100644 index 000000000..0429196f5 --- /dev/null +++ b/pkg/dialects/development/enum_mav_odid_desc_type.go @@ -0,0 +1,43 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package development + +import ( + "errors" +) + +type MAV_ODID_DESC_TYPE int + +const ( + // Free-form text description of the purpose of the flight. + MAV_ODID_DESC_TYPE_TEXT MAV_ODID_DESC_TYPE = 0 +) + +var labels_MAV_ODID_DESC_TYPE = map[MAV_ODID_DESC_TYPE]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAV_ODID_DESC_TYPE) MarshalText() ([]byte, error) { + if l, ok := labels_MAV_ODID_DESC_TYPE[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAV_ODID_DESC_TYPE = map[string]MAV_ODID_DESC_TYPE{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAV_ODID_DESC_TYPE) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAV_ODID_DESC_TYPE[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAV_ODID_DESC_TYPE) String() string { + if l, ok := labels_MAV_ODID_DESC_TYPE[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/development/enum_mav_odid_height_ref.go b/pkg/dialects/development/enum_mav_odid_height_ref.go new file mode 100644 index 000000000..043eb1d9f --- /dev/null +++ b/pkg/dialects/development/enum_mav_odid_height_ref.go @@ -0,0 +1,45 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package development + +import ( + "errors" +) + +type MAV_ODID_HEIGHT_REF int + +const ( + // The height field is relative to the take-off location. + MAV_ODID_HEIGHT_REF_OVER_TAKEOFF MAV_ODID_HEIGHT_REF = 0 + // The height field is relative to ground. + MAV_ODID_HEIGHT_REF_OVER_GROUND MAV_ODID_HEIGHT_REF = 1 +) + +var labels_MAV_ODID_HEIGHT_REF = map[MAV_ODID_HEIGHT_REF]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAV_ODID_HEIGHT_REF) MarshalText() ([]byte, error) { + if l, ok := labels_MAV_ODID_HEIGHT_REF[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAV_ODID_HEIGHT_REF = map[string]MAV_ODID_HEIGHT_REF{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAV_ODID_HEIGHT_REF) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAV_ODID_HEIGHT_REF[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAV_ODID_HEIGHT_REF) String() string { + if l, ok := labels_MAV_ODID_HEIGHT_REF[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/development/enum_mav_odid_hor_acc.go b/pkg/dialects/development/enum_mav_odid_hor_acc.go new file mode 100644 index 000000000..e6ec732b3 --- /dev/null +++ b/pkg/dialects/development/enum_mav_odid_hor_acc.go @@ -0,0 +1,67 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package development + +import ( + "errors" +) + +type MAV_ODID_HOR_ACC int + +const ( + // The horizontal accuracy is unknown. + MAV_ODID_HOR_ACC_UNKNOWN MAV_ODID_HOR_ACC = 0 + // The horizontal accuracy is smaller than 10 Nautical Miles. 18.52 km. + MAV_ODID_HOR_ACC_10NM MAV_ODID_HOR_ACC = 1 + // The horizontal accuracy is smaller than 4 Nautical Miles. 7.408 km. + MAV_ODID_HOR_ACC_4NM MAV_ODID_HOR_ACC = 2 + // The horizontal accuracy is smaller than 2 Nautical Miles. 3.704 km. + MAV_ODID_HOR_ACC_2NM MAV_ODID_HOR_ACC = 3 + // The horizontal accuracy is smaller than 1 Nautical Miles. 1.852 km. + MAV_ODID_HOR_ACC_1NM MAV_ODID_HOR_ACC = 4 + // The horizontal accuracy is smaller than 0.5 Nautical Miles. 926 m. + MAV_ODID_HOR_ACC_0_5NM MAV_ODID_HOR_ACC = 5 + // The horizontal accuracy is smaller than 0.3 Nautical Miles. 555.6 m. + MAV_ODID_HOR_ACC_0_3NM MAV_ODID_HOR_ACC = 6 + // The horizontal accuracy is smaller than 0.1 Nautical Miles. 185.2 m. + MAV_ODID_HOR_ACC_0_1NM MAV_ODID_HOR_ACC = 7 + // The horizontal accuracy is smaller than 0.05 Nautical Miles. 92.6 m. + MAV_ODID_HOR_ACC_0_05NM MAV_ODID_HOR_ACC = 8 + // The horizontal accuracy is smaller than 30 meter. + MAV_ODID_HOR_ACC_30_METER MAV_ODID_HOR_ACC = 9 + // The horizontal accuracy is smaller than 10 meter. + MAV_ODID_HOR_ACC_10_METER MAV_ODID_HOR_ACC = 10 + // The horizontal accuracy is smaller than 3 meter. + MAV_ODID_HOR_ACC_3_METER MAV_ODID_HOR_ACC = 11 + // The horizontal accuracy is smaller than 1 meter. + MAV_ODID_HOR_ACC_1_METER MAV_ODID_HOR_ACC = 12 +) + +var labels_MAV_ODID_HOR_ACC = map[MAV_ODID_HOR_ACC]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAV_ODID_HOR_ACC) MarshalText() ([]byte, error) { + if l, ok := labels_MAV_ODID_HOR_ACC[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAV_ODID_HOR_ACC = map[string]MAV_ODID_HOR_ACC{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAV_ODID_HOR_ACC) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAV_ODID_HOR_ACC[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAV_ODID_HOR_ACC) String() string { + if l, ok := labels_MAV_ODID_HOR_ACC[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/development/enum_mav_odid_id_type.go b/pkg/dialects/development/enum_mav_odid_id_type.go new file mode 100644 index 000000000..b48fea6e4 --- /dev/null +++ b/pkg/dialects/development/enum_mav_odid_id_type.go @@ -0,0 +1,51 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package development + +import ( + "errors" +) + +type MAV_ODID_ID_TYPE int + +const ( + // No type defined. + MAV_ODID_ID_TYPE_NONE MAV_ODID_ID_TYPE = 0 + // Manufacturer Serial Number (ANSI/CTA-2063 format). + MAV_ODID_ID_TYPE_SERIAL_NUMBER MAV_ODID_ID_TYPE = 1 + // CAA (Civil Aviation Authority) registered ID. Format: [ICAO Country Code].[CAA Assigned ID]. + MAV_ODID_ID_TYPE_CAA_REGISTRATION_ID MAV_ODID_ID_TYPE = 2 + // UTM (Unmanned Traffic Management) assigned UUID (RFC4122). + MAV_ODID_ID_TYPE_UTM_ASSIGNED_UUID MAV_ODID_ID_TYPE = 3 + // A 20 byte ID for a specific flight/session. The exact ID type is indicated by the first byte of uas_id and these type values are managed by ICAO. + MAV_ODID_ID_TYPE_SPECIFIC_SESSION_ID MAV_ODID_ID_TYPE = 4 +) + +var labels_MAV_ODID_ID_TYPE = map[MAV_ODID_ID_TYPE]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAV_ODID_ID_TYPE) MarshalText() ([]byte, error) { + if l, ok := labels_MAV_ODID_ID_TYPE[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAV_ODID_ID_TYPE = map[string]MAV_ODID_ID_TYPE{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAV_ODID_ID_TYPE) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAV_ODID_ID_TYPE[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAV_ODID_ID_TYPE) String() string { + if l, ok := labels_MAV_ODID_ID_TYPE[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/development/enum_mav_odid_operator_id_type.go b/pkg/dialects/development/enum_mav_odid_operator_id_type.go new file mode 100644 index 000000000..babfc94bd --- /dev/null +++ b/pkg/dialects/development/enum_mav_odid_operator_id_type.go @@ -0,0 +1,43 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package development + +import ( + "errors" +) + +type MAV_ODID_OPERATOR_ID_TYPE int + +const ( + // CAA (Civil Aviation Authority) registered operator ID. + MAV_ODID_OPERATOR_ID_TYPE_CAA MAV_ODID_OPERATOR_ID_TYPE = 0 +) + +var labels_MAV_ODID_OPERATOR_ID_TYPE = map[MAV_ODID_OPERATOR_ID_TYPE]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAV_ODID_OPERATOR_ID_TYPE) MarshalText() ([]byte, error) { + if l, ok := labels_MAV_ODID_OPERATOR_ID_TYPE[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAV_ODID_OPERATOR_ID_TYPE = map[string]MAV_ODID_OPERATOR_ID_TYPE{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAV_ODID_OPERATOR_ID_TYPE) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAV_ODID_OPERATOR_ID_TYPE[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAV_ODID_OPERATOR_ID_TYPE) String() string { + if l, ok := labels_MAV_ODID_OPERATOR_ID_TYPE[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/development/enum_mav_odid_operator_location_type.go b/pkg/dialects/development/enum_mav_odid_operator_location_type.go new file mode 100644 index 000000000..eb651f432 --- /dev/null +++ b/pkg/dialects/development/enum_mav_odid_operator_location_type.go @@ -0,0 +1,47 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package development + +import ( + "errors" +) + +type MAV_ODID_OPERATOR_LOCATION_TYPE int + +const ( + // The location of the operator is the same as the take-off location. + MAV_ODID_OPERATOR_LOCATION_TYPE_TAKEOFF MAV_ODID_OPERATOR_LOCATION_TYPE = 0 + // The location of the operator is based on live GNSS data. + MAV_ODID_OPERATOR_LOCATION_TYPE_LIVE_GNSS MAV_ODID_OPERATOR_LOCATION_TYPE = 1 + // The location of the operator is a fixed location. + MAV_ODID_OPERATOR_LOCATION_TYPE_FIXED MAV_ODID_OPERATOR_LOCATION_TYPE = 2 +) + +var labels_MAV_ODID_OPERATOR_LOCATION_TYPE = map[MAV_ODID_OPERATOR_LOCATION_TYPE]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAV_ODID_OPERATOR_LOCATION_TYPE) MarshalText() ([]byte, error) { + if l, ok := labels_MAV_ODID_OPERATOR_LOCATION_TYPE[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAV_ODID_OPERATOR_LOCATION_TYPE = map[string]MAV_ODID_OPERATOR_LOCATION_TYPE{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAV_ODID_OPERATOR_LOCATION_TYPE) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAV_ODID_OPERATOR_LOCATION_TYPE[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAV_ODID_OPERATOR_LOCATION_TYPE) String() string { + if l, ok := labels_MAV_ODID_OPERATOR_LOCATION_TYPE[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/development/enum_mav_odid_speed_acc.go b/pkg/dialects/development/enum_mav_odid_speed_acc.go new file mode 100644 index 000000000..2e020a092 --- /dev/null +++ b/pkg/dialects/development/enum_mav_odid_speed_acc.go @@ -0,0 +1,51 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package development + +import ( + "errors" +) + +type MAV_ODID_SPEED_ACC int + +const ( + // The speed accuracy is unknown. + MAV_ODID_SPEED_ACC_UNKNOWN MAV_ODID_SPEED_ACC = 0 + // The speed accuracy is smaller than 10 meters per second. + MAV_ODID_SPEED_ACC_10_METERS_PER_SECOND MAV_ODID_SPEED_ACC = 1 + // The speed accuracy is smaller than 3 meters per second. + MAV_ODID_SPEED_ACC_3_METERS_PER_SECOND MAV_ODID_SPEED_ACC = 2 + // The speed accuracy is smaller than 1 meters per second. + MAV_ODID_SPEED_ACC_1_METERS_PER_SECOND MAV_ODID_SPEED_ACC = 3 + // The speed accuracy is smaller than 0.3 meters per second. + MAV_ODID_SPEED_ACC_0_3_METERS_PER_SECOND MAV_ODID_SPEED_ACC = 4 +) + +var labels_MAV_ODID_SPEED_ACC = map[MAV_ODID_SPEED_ACC]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAV_ODID_SPEED_ACC) MarshalText() ([]byte, error) { + if l, ok := labels_MAV_ODID_SPEED_ACC[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAV_ODID_SPEED_ACC = map[string]MAV_ODID_SPEED_ACC{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAV_ODID_SPEED_ACC) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAV_ODID_SPEED_ACC[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAV_ODID_SPEED_ACC) String() string { + if l, ok := labels_MAV_ODID_SPEED_ACC[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/development/enum_mav_odid_status.go b/pkg/dialects/development/enum_mav_odid_status.go new file mode 100644 index 000000000..408b74b94 --- /dev/null +++ b/pkg/dialects/development/enum_mav_odid_status.go @@ -0,0 +1,49 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package development + +import ( + "errors" +) + +type MAV_ODID_STATUS int + +const ( + // The status of the (UA) Unmanned Aircraft is undefined. + MAV_ODID_STATUS_UNDECLARED MAV_ODID_STATUS = 0 + // The UA is on the ground. + MAV_ODID_STATUS_GROUND MAV_ODID_STATUS = 1 + // The UA is in the air. + MAV_ODID_STATUS_AIRBORNE MAV_ODID_STATUS = 2 + // The UA is having an emergency. + MAV_ODID_STATUS_EMERGENCY MAV_ODID_STATUS = 3 +) + +var labels_MAV_ODID_STATUS = map[MAV_ODID_STATUS]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAV_ODID_STATUS) MarshalText() ([]byte, error) { + if l, ok := labels_MAV_ODID_STATUS[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAV_ODID_STATUS = map[string]MAV_ODID_STATUS{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAV_ODID_STATUS) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAV_ODID_STATUS[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAV_ODID_STATUS) String() string { + if l, ok := labels_MAV_ODID_STATUS[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/development/enum_mav_odid_time_acc.go b/pkg/dialects/development/enum_mav_odid_time_acc.go new file mode 100644 index 000000000..420a072ca --- /dev/null +++ b/pkg/dialects/development/enum_mav_odid_time_acc.go @@ -0,0 +1,73 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package development + +import ( + "errors" +) + +type MAV_ODID_TIME_ACC int + +const ( + // The timestamp accuracy is unknown. + MAV_ODID_TIME_ACC_UNKNOWN MAV_ODID_TIME_ACC = 0 + // The timestamp accuracy is smaller than or equal to 0.1 second. + MAV_ODID_TIME_ACC_0_1_SECOND MAV_ODID_TIME_ACC = 1 + // The timestamp accuracy is smaller than or equal to 0.2 second. + MAV_ODID_TIME_ACC_0_2_SECOND MAV_ODID_TIME_ACC = 2 + // The timestamp accuracy is smaller than or equal to 0.3 second. + MAV_ODID_TIME_ACC_0_3_SECOND MAV_ODID_TIME_ACC = 3 + // The timestamp accuracy is smaller than or equal to 0.4 second. + MAV_ODID_TIME_ACC_0_4_SECOND MAV_ODID_TIME_ACC = 4 + // The timestamp accuracy is smaller than or equal to 0.5 second. + MAV_ODID_TIME_ACC_0_5_SECOND MAV_ODID_TIME_ACC = 5 + // The timestamp accuracy is smaller than or equal to 0.6 second. + MAV_ODID_TIME_ACC_0_6_SECOND MAV_ODID_TIME_ACC = 6 + // The timestamp accuracy is smaller than or equal to 0.7 second. + MAV_ODID_TIME_ACC_0_7_SECOND MAV_ODID_TIME_ACC = 7 + // The timestamp accuracy is smaller than or equal to 0.8 second. + MAV_ODID_TIME_ACC_0_8_SECOND MAV_ODID_TIME_ACC = 8 + // The timestamp accuracy is smaller than or equal to 0.9 second. + MAV_ODID_TIME_ACC_0_9_SECOND MAV_ODID_TIME_ACC = 9 + // The timestamp accuracy is smaller than or equal to 1.0 second. + MAV_ODID_TIME_ACC_1_0_SECOND MAV_ODID_TIME_ACC = 10 + // The timestamp accuracy is smaller than or equal to 1.1 second. + MAV_ODID_TIME_ACC_1_1_SECOND MAV_ODID_TIME_ACC = 11 + // The timestamp accuracy is smaller than or equal to 1.2 second. + MAV_ODID_TIME_ACC_1_2_SECOND MAV_ODID_TIME_ACC = 12 + // The timestamp accuracy is smaller than or equal to 1.3 second. + MAV_ODID_TIME_ACC_1_3_SECOND MAV_ODID_TIME_ACC = 13 + // The timestamp accuracy is smaller than or equal to 1.4 second. + MAV_ODID_TIME_ACC_1_4_SECOND MAV_ODID_TIME_ACC = 14 + // The timestamp accuracy is smaller than or equal to 1.5 second. + MAV_ODID_TIME_ACC_1_5_SECOND MAV_ODID_TIME_ACC = 15 +) + +var labels_MAV_ODID_TIME_ACC = map[MAV_ODID_TIME_ACC]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAV_ODID_TIME_ACC) MarshalText() ([]byte, error) { + if l, ok := labels_MAV_ODID_TIME_ACC[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAV_ODID_TIME_ACC = map[string]MAV_ODID_TIME_ACC{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAV_ODID_TIME_ACC) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAV_ODID_TIME_ACC[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAV_ODID_TIME_ACC) String() string { + if l, ok := labels_MAV_ODID_TIME_ACC[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/development/enum_mav_odid_ua_type.go b/pkg/dialects/development/enum_mav_odid_ua_type.go new file mode 100644 index 000000000..cbdf8c19d --- /dev/null +++ b/pkg/dialects/development/enum_mav_odid_ua_type.go @@ -0,0 +1,73 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package development + +import ( + "errors" +) + +type MAV_ODID_UA_TYPE int + +const ( + // No UA (Unmanned Aircraft) type defined. + MAV_ODID_UA_TYPE_NONE MAV_ODID_UA_TYPE = 0 + // Aeroplane/Airplane. Fixed wing. + MAV_ODID_UA_TYPE_AEROPLANE MAV_ODID_UA_TYPE = 1 + // Helicopter or multirotor. + MAV_ODID_UA_TYPE_HELICOPTER_OR_MULTIROTOR MAV_ODID_UA_TYPE = 2 + // Gyroplane. + MAV_ODID_UA_TYPE_GYROPLANE MAV_ODID_UA_TYPE = 3 + // VTOL (Vertical Take-Off and Landing). Fixed wing aircraft that can take off vertically. + MAV_ODID_UA_TYPE_HYBRID_LIFT MAV_ODID_UA_TYPE = 4 + // Ornithopter. + MAV_ODID_UA_TYPE_ORNITHOPTER MAV_ODID_UA_TYPE = 5 + // Glider. + MAV_ODID_UA_TYPE_GLIDER MAV_ODID_UA_TYPE = 6 + // Kite. + MAV_ODID_UA_TYPE_KITE MAV_ODID_UA_TYPE = 7 + // Free Balloon. + MAV_ODID_UA_TYPE_FREE_BALLOON MAV_ODID_UA_TYPE = 8 + // Captive Balloon. + MAV_ODID_UA_TYPE_CAPTIVE_BALLOON MAV_ODID_UA_TYPE = 9 + // Airship. E.g. a blimp. + MAV_ODID_UA_TYPE_AIRSHIP MAV_ODID_UA_TYPE = 10 + // Free Fall/Parachute (unpowered). + MAV_ODID_UA_TYPE_FREE_FALL_PARACHUTE MAV_ODID_UA_TYPE = 11 + // Rocket. + MAV_ODID_UA_TYPE_ROCKET MAV_ODID_UA_TYPE = 12 + // Tethered powered aircraft. + MAV_ODID_UA_TYPE_TETHERED_POWERED_AIRCRAFT MAV_ODID_UA_TYPE = 13 + // Ground Obstacle. + MAV_ODID_UA_TYPE_GROUND_OBSTACLE MAV_ODID_UA_TYPE = 14 + // Other type of aircraft not listed earlier. + MAV_ODID_UA_TYPE_OTHER MAV_ODID_UA_TYPE = 15 +) + +var labels_MAV_ODID_UA_TYPE = map[MAV_ODID_UA_TYPE]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAV_ODID_UA_TYPE) MarshalText() ([]byte, error) { + if l, ok := labels_MAV_ODID_UA_TYPE[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAV_ODID_UA_TYPE = map[string]MAV_ODID_UA_TYPE{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAV_ODID_UA_TYPE) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAV_ODID_UA_TYPE[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAV_ODID_UA_TYPE) String() string { + if l, ok := labels_MAV_ODID_UA_TYPE[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/development/enum_mav_odid_ver_acc.go b/pkg/dialects/development/enum_mav_odid_ver_acc.go new file mode 100644 index 000000000..f7fb637ce --- /dev/null +++ b/pkg/dialects/development/enum_mav_odid_ver_acc.go @@ -0,0 +1,55 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package development + +import ( + "errors" +) + +type MAV_ODID_VER_ACC int + +const ( + // The vertical accuracy is unknown. + MAV_ODID_VER_ACC_UNKNOWN MAV_ODID_VER_ACC = 0 + // The vertical accuracy is smaller than 150 meter. + MAV_ODID_VER_ACC_150_METER MAV_ODID_VER_ACC = 1 + // The vertical accuracy is smaller than 45 meter. + MAV_ODID_VER_ACC_45_METER MAV_ODID_VER_ACC = 2 + // The vertical accuracy is smaller than 25 meter. + MAV_ODID_VER_ACC_25_METER MAV_ODID_VER_ACC = 3 + // The vertical accuracy is smaller than 10 meter. + MAV_ODID_VER_ACC_10_METER MAV_ODID_VER_ACC = 4 + // The vertical accuracy is smaller than 3 meter. + MAV_ODID_VER_ACC_3_METER MAV_ODID_VER_ACC = 5 + // The vertical accuracy is smaller than 1 meter. + MAV_ODID_VER_ACC_1_METER MAV_ODID_VER_ACC = 6 +) + +var labels_MAV_ODID_VER_ACC = map[MAV_ODID_VER_ACC]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAV_ODID_VER_ACC) MarshalText() ([]byte, error) { + if l, ok := labels_MAV_ODID_VER_ACC[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAV_ODID_VER_ACC = map[string]MAV_ODID_VER_ACC{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAV_ODID_VER_ACC) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAV_ODID_VER_ACC[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAV_ODID_VER_ACC) String() string { + if l, ok := labels_MAV_ODID_VER_ACC[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/development/enum_mav_param_ext_type.go b/pkg/dialects/development/enum_mav_param_ext_type.go new file mode 100644 index 000000000..d3634ccee --- /dev/null +++ b/pkg/dialects/development/enum_mav_param_ext_type.go @@ -0,0 +1,64 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package development + +import ( + "errors" +) + +// Specifies the datatype of a MAVLink extended parameter. +type MAV_PARAM_EXT_TYPE int + +const ( + // 8-bit unsigned integer + MAV_PARAM_EXT_TYPE_UINT8 MAV_PARAM_EXT_TYPE = 1 + // 8-bit signed integer + MAV_PARAM_EXT_TYPE_INT8 MAV_PARAM_EXT_TYPE = 2 + // 16-bit unsigned integer + MAV_PARAM_EXT_TYPE_UINT16 MAV_PARAM_EXT_TYPE = 3 + // 16-bit signed integer + MAV_PARAM_EXT_TYPE_INT16 MAV_PARAM_EXT_TYPE = 4 + // 32-bit unsigned integer + MAV_PARAM_EXT_TYPE_UINT32 MAV_PARAM_EXT_TYPE = 5 + // 32-bit signed integer + MAV_PARAM_EXT_TYPE_INT32 MAV_PARAM_EXT_TYPE = 6 + // 64-bit unsigned integer + MAV_PARAM_EXT_TYPE_UINT64 MAV_PARAM_EXT_TYPE = 7 + // 64-bit signed integer + MAV_PARAM_EXT_TYPE_INT64 MAV_PARAM_EXT_TYPE = 8 + // 32-bit floating-point + MAV_PARAM_EXT_TYPE_REAL32 MAV_PARAM_EXT_TYPE = 9 + // 64-bit floating-point + MAV_PARAM_EXT_TYPE_REAL64 MAV_PARAM_EXT_TYPE = 10 + // Custom Type + MAV_PARAM_EXT_TYPE_CUSTOM MAV_PARAM_EXT_TYPE = 11 +) + +var labels_MAV_PARAM_EXT_TYPE = map[MAV_PARAM_EXT_TYPE]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAV_PARAM_EXT_TYPE) MarshalText() ([]byte, error) { + if l, ok := labels_MAV_PARAM_EXT_TYPE[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAV_PARAM_EXT_TYPE = map[string]MAV_PARAM_EXT_TYPE{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAV_PARAM_EXT_TYPE) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAV_PARAM_EXT_TYPE[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAV_PARAM_EXT_TYPE) String() string { + if l, ok := labels_MAV_PARAM_EXT_TYPE[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/development/enum_mav_param_type.go b/pkg/dialects/development/enum_mav_param_type.go new file mode 100644 index 000000000..299a46ce6 --- /dev/null +++ b/pkg/dialects/development/enum_mav_param_type.go @@ -0,0 +1,62 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package development + +import ( + "errors" +) + +// Specifies the datatype of a MAVLink parameter. +type MAV_PARAM_TYPE int + +const ( + // 8-bit unsigned integer + MAV_PARAM_TYPE_UINT8 MAV_PARAM_TYPE = 1 + // 8-bit signed integer + MAV_PARAM_TYPE_INT8 MAV_PARAM_TYPE = 2 + // 16-bit unsigned integer + MAV_PARAM_TYPE_UINT16 MAV_PARAM_TYPE = 3 + // 16-bit signed integer + MAV_PARAM_TYPE_INT16 MAV_PARAM_TYPE = 4 + // 32-bit unsigned integer + MAV_PARAM_TYPE_UINT32 MAV_PARAM_TYPE = 5 + // 32-bit signed integer + MAV_PARAM_TYPE_INT32 MAV_PARAM_TYPE = 6 + // 64-bit unsigned integer + MAV_PARAM_TYPE_UINT64 MAV_PARAM_TYPE = 7 + // 64-bit signed integer + MAV_PARAM_TYPE_INT64 MAV_PARAM_TYPE = 8 + // 32-bit floating-point + MAV_PARAM_TYPE_REAL32 MAV_PARAM_TYPE = 9 + // 64-bit floating-point + MAV_PARAM_TYPE_REAL64 MAV_PARAM_TYPE = 10 +) + +var labels_MAV_PARAM_TYPE = map[MAV_PARAM_TYPE]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAV_PARAM_TYPE) MarshalText() ([]byte, error) { + if l, ok := labels_MAV_PARAM_TYPE[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAV_PARAM_TYPE = map[string]MAV_PARAM_TYPE{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAV_PARAM_TYPE) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAV_PARAM_TYPE[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAV_PARAM_TYPE) String() string { + if l, ok := labels_MAV_PARAM_TYPE[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/development/enum_mav_power_status.go b/pkg/dialects/development/enum_mav_power_status.go new file mode 100644 index 000000000..4cd448042 --- /dev/null +++ b/pkg/dialects/development/enum_mav_power_status.go @@ -0,0 +1,54 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package development + +import ( + "errors" +) + +// Power supply status flags (bitmask) +type MAV_POWER_STATUS int + +const ( + // main brick power supply valid + MAV_POWER_STATUS_BRICK_VALID MAV_POWER_STATUS = 1 + // main servo power supply valid for FMU + MAV_POWER_STATUS_SERVO_VALID MAV_POWER_STATUS = 2 + // USB power is connected + MAV_POWER_STATUS_USB_CONNECTED MAV_POWER_STATUS = 4 + // peripheral supply is in over-current state + MAV_POWER_STATUS_PERIPH_OVERCURRENT MAV_POWER_STATUS = 8 + // hi-power peripheral supply is in over-current state + MAV_POWER_STATUS_PERIPH_HIPOWER_OVERCURRENT MAV_POWER_STATUS = 16 + // Power status has changed since boot + MAV_POWER_STATUS_CHANGED MAV_POWER_STATUS = 32 +) + +var labels_MAV_POWER_STATUS = map[MAV_POWER_STATUS]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAV_POWER_STATUS) MarshalText() ([]byte, error) { + if l, ok := labels_MAV_POWER_STATUS[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAV_POWER_STATUS = map[string]MAV_POWER_STATUS{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAV_POWER_STATUS) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAV_POWER_STATUS[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAV_POWER_STATUS) String() string { + if l, ok := labels_MAV_POWER_STATUS[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/development/enum_mav_protocol_capability.go b/pkg/dialects/development/enum_mav_protocol_capability.go new file mode 100644 index 000000000..585c67c34 --- /dev/null +++ b/pkg/dialects/development/enum_mav_protocol_capability.go @@ -0,0 +1,78 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package development + +import ( + "errors" +) + +// Bitmask of (optional) autopilot capabilities (64 bit). If a bit is set, the autopilot supports this capability. +type MAV_PROTOCOL_CAPABILITY int + +const ( + // Autopilot supports the MISSION_ITEM float message type. + // Note that MISSION_ITEM is deprecated, and autopilots should use MISSION_INT instead. + MAV_PROTOCOL_CAPABILITY_MISSION_FLOAT MAV_PROTOCOL_CAPABILITY = 1 + // Autopilot supports the new param float message type. + MAV_PROTOCOL_CAPABILITY_PARAM_FLOAT MAV_PROTOCOL_CAPABILITY = 2 + // Autopilot supports MISSION_ITEM_INT scaled integer message type. + // Note that this flag must always be set if missions are supported, because missions must always use MISSION_ITEM_INT (rather than MISSION_ITEM, which is deprecated). + MAV_PROTOCOL_CAPABILITY_MISSION_INT MAV_PROTOCOL_CAPABILITY = 4 + // Autopilot supports COMMAND_INT scaled integer message type. + MAV_PROTOCOL_CAPABILITY_COMMAND_INT MAV_PROTOCOL_CAPABILITY = 8 + // Reserved for future use. + MAV_PROTOCOL_CAPABILITY_RESERVED1 MAV_PROTOCOL_CAPABILITY = 16 + // Autopilot supports the new FILE_TRANSFER_PROTOCOL message type. + MAV_PROTOCOL_CAPABILITY_FTP MAV_PROTOCOL_CAPABILITY = 32 + // Autopilot supports commanding attitude offboard. + MAV_PROTOCOL_CAPABILITY_SET_ATTITUDE_TARGET MAV_PROTOCOL_CAPABILITY = 64 + // Autopilot supports commanding position and velocity targets in local NED frame. + MAV_PROTOCOL_CAPABILITY_SET_POSITION_TARGET_LOCAL_NED MAV_PROTOCOL_CAPABILITY = 128 + // Autopilot supports commanding position and velocity targets in global scaled integers. + MAV_PROTOCOL_CAPABILITY_SET_POSITION_TARGET_GLOBAL_INT MAV_PROTOCOL_CAPABILITY = 256 + // Autopilot supports terrain protocol / data handling. + MAV_PROTOCOL_CAPABILITY_TERRAIN MAV_PROTOCOL_CAPABILITY = 512 + // Autopilot supports direct actuator control. + MAV_PROTOCOL_CAPABILITY_SET_ACTUATOR_TARGET MAV_PROTOCOL_CAPABILITY = 1024 + // Autopilot supports the flight termination command. + MAV_PROTOCOL_CAPABILITY_FLIGHT_TERMINATION MAV_PROTOCOL_CAPABILITY = 2048 + // Autopilot supports onboard compass calibration. + MAV_PROTOCOL_CAPABILITY_COMPASS_CALIBRATION MAV_PROTOCOL_CAPABILITY = 4096 + // Autopilot supports MAVLink version 2. + MAV_PROTOCOL_CAPABILITY_MAVLINK2 MAV_PROTOCOL_CAPABILITY = 8192 + // Autopilot supports mission fence protocol. + MAV_PROTOCOL_CAPABILITY_MISSION_FENCE MAV_PROTOCOL_CAPABILITY = 16384 + // Autopilot supports mission rally point protocol. + MAV_PROTOCOL_CAPABILITY_MISSION_RALLY MAV_PROTOCOL_CAPABILITY = 32768 + // Reserved for future use. + MAV_PROTOCOL_CAPABILITY_RESERVED2 MAV_PROTOCOL_CAPABILITY = 65536 +) + +var labels_MAV_PROTOCOL_CAPABILITY = map[MAV_PROTOCOL_CAPABILITY]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAV_PROTOCOL_CAPABILITY) MarshalText() ([]byte, error) { + if l, ok := labels_MAV_PROTOCOL_CAPABILITY[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAV_PROTOCOL_CAPABILITY = map[string]MAV_PROTOCOL_CAPABILITY{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAV_PROTOCOL_CAPABILITY) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAV_PROTOCOL_CAPABILITY[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAV_PROTOCOL_CAPABILITY) String() string { + if l, ok := labels_MAV_PROTOCOL_CAPABILITY[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/development/enum_mav_result.go b/pkg/dialects/development/enum_mav_result.go new file mode 100644 index 000000000..c699d7700 --- /dev/null +++ b/pkg/dialects/development/enum_mav_result.go @@ -0,0 +1,56 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package development + +import ( + "errors" +) + +// Result from a MAVLink command (MAV_CMD) +type MAV_RESULT int + +const ( + // Command is valid (is supported and has valid parameters), and was executed. + MAV_RESULT_ACCEPTED MAV_RESULT = 0 + // Command is valid, but cannot be executed at this time. This is used to indicate a problem that should be fixed just by waiting (e.g. a state machine is busy, can't arm because have not got GPS lock, etc.). Retrying later should work. + MAV_RESULT_TEMPORARILY_REJECTED MAV_RESULT = 1 + // Command is invalid (is supported but has invalid parameters). Retrying same command and parameters will not work. + MAV_RESULT_DENIED MAV_RESULT = 2 + // Command is not supported (unknown). + MAV_RESULT_UNSUPPORTED MAV_RESULT = 3 + // Command is valid, but execution has failed. This is used to indicate any non-temporary or unexpected problem, i.e. any problem that must be fixed before the command can succeed/be retried. For example, attempting to write a file when out of memory, attempting to arm when sensors are not calibrated, etc. + MAV_RESULT_FAILED MAV_RESULT = 4 + // Command is valid and is being executed. This will be followed by further progress updates, i.e. the component may send further COMMAND_ACK messages with result MAV_RESULT_IN_PROGRESS (at a rate decided by the implementation), and must terminate by sending a COMMAND_ACK message with final result of the operation. The COMMAND_ACK.progress field can be used to indicate the progress of the operation. + MAV_RESULT_IN_PROGRESS MAV_RESULT = 5 + // Command has been cancelled (as a result of receiving a COMMAND_CANCEL message). + MAV_RESULT_CANCELLED MAV_RESULT = 6 +) + +var labels_MAV_RESULT = map[MAV_RESULT]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAV_RESULT) MarshalText() ([]byte, error) { + if l, ok := labels_MAV_RESULT[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAV_RESULT = map[string]MAV_RESULT{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAV_RESULT) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAV_RESULT[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAV_RESULT) String() string { + if l, ok := labels_MAV_RESULT[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/development/enum_mav_roi.go b/pkg/dialects/development/enum_mav_roi.go new file mode 100644 index 000000000..af84195e1 --- /dev/null +++ b/pkg/dialects/development/enum_mav_roi.go @@ -0,0 +1,54 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package development + +import ( + "errors" +) + +// The ROI (region of interest) for the vehicle. This can be +// be used by the vehicle for camera/vehicle attitude alignment (see +// MAV_CMD_NAV_ROI). +type MAV_ROI int + +const ( + // No region of interest. + MAV_ROI_NONE MAV_ROI = 0 + // Point toward next waypoint, with optional pitch/roll/yaw offset. + MAV_ROI_WPNEXT MAV_ROI = 1 + // Point toward given waypoint. + MAV_ROI_WPINDEX MAV_ROI = 2 + // Point toward fixed location. + MAV_ROI_LOCATION MAV_ROI = 3 + // Point toward of given id. + MAV_ROI_TARGET MAV_ROI = 4 +) + +var labels_MAV_ROI = map[MAV_ROI]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAV_ROI) MarshalText() ([]byte, error) { + if l, ok := labels_MAV_ROI[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAV_ROI = map[string]MAV_ROI{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAV_ROI) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAV_ROI[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAV_ROI) String() string { + if l, ok := labels_MAV_ROI[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/development/enum_mav_sensor_orientation.go b/pkg/dialects/development/enum_mav_sensor_orientation.go new file mode 100644 index 000000000..63df62bd3 --- /dev/null +++ b/pkg/dialects/development/enum_mav_sensor_orientation.go @@ -0,0 +1,126 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package development + +import ( + "errors" +) + +// Enumeration of sensor orientation, according to its rotations +type MAV_SENSOR_ORIENTATION int + +const ( + // Roll: 0, Pitch: 0, Yaw: 0 + MAV_SENSOR_ROTATION_NONE MAV_SENSOR_ORIENTATION = 0 + // Roll: 0, Pitch: 0, Yaw: 45 + MAV_SENSOR_ROTATION_YAW_45 MAV_SENSOR_ORIENTATION = 1 + // Roll: 0, Pitch: 0, Yaw: 90 + MAV_SENSOR_ROTATION_YAW_90 MAV_SENSOR_ORIENTATION = 2 + // Roll: 0, Pitch: 0, Yaw: 135 + MAV_SENSOR_ROTATION_YAW_135 MAV_SENSOR_ORIENTATION = 3 + // Roll: 0, Pitch: 0, Yaw: 180 + MAV_SENSOR_ROTATION_YAW_180 MAV_SENSOR_ORIENTATION = 4 + // Roll: 0, Pitch: 0, Yaw: 225 + MAV_SENSOR_ROTATION_YAW_225 MAV_SENSOR_ORIENTATION = 5 + // Roll: 0, Pitch: 0, Yaw: 270 + MAV_SENSOR_ROTATION_YAW_270 MAV_SENSOR_ORIENTATION = 6 + // Roll: 0, Pitch: 0, Yaw: 315 + MAV_SENSOR_ROTATION_YAW_315 MAV_SENSOR_ORIENTATION = 7 + // Roll: 180, Pitch: 0, Yaw: 0 + MAV_SENSOR_ROTATION_ROLL_180 MAV_SENSOR_ORIENTATION = 8 + // Roll: 180, Pitch: 0, Yaw: 45 + MAV_SENSOR_ROTATION_ROLL_180_YAW_45 MAV_SENSOR_ORIENTATION = 9 + // Roll: 180, Pitch: 0, Yaw: 90 + MAV_SENSOR_ROTATION_ROLL_180_YAW_90 MAV_SENSOR_ORIENTATION = 10 + // Roll: 180, Pitch: 0, Yaw: 135 + MAV_SENSOR_ROTATION_ROLL_180_YAW_135 MAV_SENSOR_ORIENTATION = 11 + // Roll: 0, Pitch: 180, Yaw: 0 + MAV_SENSOR_ROTATION_PITCH_180 MAV_SENSOR_ORIENTATION = 12 + // Roll: 180, Pitch: 0, Yaw: 225 + MAV_SENSOR_ROTATION_ROLL_180_YAW_225 MAV_SENSOR_ORIENTATION = 13 + // Roll: 180, Pitch: 0, Yaw: 270 + MAV_SENSOR_ROTATION_ROLL_180_YAW_270 MAV_SENSOR_ORIENTATION = 14 + // Roll: 180, Pitch: 0, Yaw: 315 + MAV_SENSOR_ROTATION_ROLL_180_YAW_315 MAV_SENSOR_ORIENTATION = 15 + // Roll: 90, Pitch: 0, Yaw: 0 + MAV_SENSOR_ROTATION_ROLL_90 MAV_SENSOR_ORIENTATION = 16 + // Roll: 90, Pitch: 0, Yaw: 45 + MAV_SENSOR_ROTATION_ROLL_90_YAW_45 MAV_SENSOR_ORIENTATION = 17 + // Roll: 90, Pitch: 0, Yaw: 90 + MAV_SENSOR_ROTATION_ROLL_90_YAW_90 MAV_SENSOR_ORIENTATION = 18 + // Roll: 90, Pitch: 0, Yaw: 135 + MAV_SENSOR_ROTATION_ROLL_90_YAW_135 MAV_SENSOR_ORIENTATION = 19 + // Roll: 270, Pitch: 0, Yaw: 0 + MAV_SENSOR_ROTATION_ROLL_270 MAV_SENSOR_ORIENTATION = 20 + // Roll: 270, Pitch: 0, Yaw: 45 + MAV_SENSOR_ROTATION_ROLL_270_YAW_45 MAV_SENSOR_ORIENTATION = 21 + // Roll: 270, Pitch: 0, Yaw: 90 + MAV_SENSOR_ROTATION_ROLL_270_YAW_90 MAV_SENSOR_ORIENTATION = 22 + // Roll: 270, Pitch: 0, Yaw: 135 + MAV_SENSOR_ROTATION_ROLL_270_YAW_135 MAV_SENSOR_ORIENTATION = 23 + // Roll: 0, Pitch: 90, Yaw: 0 + MAV_SENSOR_ROTATION_PITCH_90 MAV_SENSOR_ORIENTATION = 24 + // Roll: 0, Pitch: 270, Yaw: 0 + MAV_SENSOR_ROTATION_PITCH_270 MAV_SENSOR_ORIENTATION = 25 + // Roll: 0, Pitch: 180, Yaw: 90 + MAV_SENSOR_ROTATION_PITCH_180_YAW_90 MAV_SENSOR_ORIENTATION = 26 + // Roll: 0, Pitch: 180, Yaw: 270 + MAV_SENSOR_ROTATION_PITCH_180_YAW_270 MAV_SENSOR_ORIENTATION = 27 + // Roll: 90, Pitch: 90, Yaw: 0 + MAV_SENSOR_ROTATION_ROLL_90_PITCH_90 MAV_SENSOR_ORIENTATION = 28 + // Roll: 180, Pitch: 90, Yaw: 0 + MAV_SENSOR_ROTATION_ROLL_180_PITCH_90 MAV_SENSOR_ORIENTATION = 29 + // Roll: 270, Pitch: 90, Yaw: 0 + MAV_SENSOR_ROTATION_ROLL_270_PITCH_90 MAV_SENSOR_ORIENTATION = 30 + // Roll: 90, Pitch: 180, Yaw: 0 + MAV_SENSOR_ROTATION_ROLL_90_PITCH_180 MAV_SENSOR_ORIENTATION = 31 + // Roll: 270, Pitch: 180, Yaw: 0 + MAV_SENSOR_ROTATION_ROLL_270_PITCH_180 MAV_SENSOR_ORIENTATION = 32 + // Roll: 90, Pitch: 270, Yaw: 0 + MAV_SENSOR_ROTATION_ROLL_90_PITCH_270 MAV_SENSOR_ORIENTATION = 33 + // Roll: 180, Pitch: 270, Yaw: 0 + MAV_SENSOR_ROTATION_ROLL_180_PITCH_270 MAV_SENSOR_ORIENTATION = 34 + // Roll: 270, Pitch: 270, Yaw: 0 + MAV_SENSOR_ROTATION_ROLL_270_PITCH_270 MAV_SENSOR_ORIENTATION = 35 + // Roll: 90, Pitch: 180, Yaw: 90 + MAV_SENSOR_ROTATION_ROLL_90_PITCH_180_YAW_90 MAV_SENSOR_ORIENTATION = 36 + // Roll: 90, Pitch: 0, Yaw: 270 + MAV_SENSOR_ROTATION_ROLL_90_YAW_270 MAV_SENSOR_ORIENTATION = 37 + // Roll: 90, Pitch: 68, Yaw: 293 + MAV_SENSOR_ROTATION_ROLL_90_PITCH_68_YAW_293 MAV_SENSOR_ORIENTATION = 38 + // Pitch: 315 + MAV_SENSOR_ROTATION_PITCH_315 MAV_SENSOR_ORIENTATION = 39 + // Roll: 90, Pitch: 315 + MAV_SENSOR_ROTATION_ROLL_90_PITCH_315 MAV_SENSOR_ORIENTATION = 40 + // Custom orientation + MAV_SENSOR_ROTATION_CUSTOM MAV_SENSOR_ORIENTATION = 100 +) + +var labels_MAV_SENSOR_ORIENTATION = map[MAV_SENSOR_ORIENTATION]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAV_SENSOR_ORIENTATION) MarshalText() ([]byte, error) { + if l, ok := labels_MAV_SENSOR_ORIENTATION[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAV_SENSOR_ORIENTATION = map[string]MAV_SENSOR_ORIENTATION{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAV_SENSOR_ORIENTATION) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAV_SENSOR_ORIENTATION[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAV_SENSOR_ORIENTATION) String() string { + if l, ok := labels_MAV_SENSOR_ORIENTATION[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/development/enum_mav_severity.go b/pkg/dialects/development/enum_mav_severity.go new file mode 100644 index 000000000..9f396d841 --- /dev/null +++ b/pkg/dialects/development/enum_mav_severity.go @@ -0,0 +1,58 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package development + +import ( + "errors" +) + +// Indicates the severity level, generally used for status messages to indicate their relative urgency. Based on RFC-5424 using expanded definitions at: http://www.kiwisyslog.com/kb/info:-syslog-message-levels/. +type MAV_SEVERITY int + +const ( + // System is unusable. This is a "panic" condition. + MAV_SEVERITY_EMERGENCY MAV_SEVERITY = 0 + // Action should be taken immediately. Indicates error in non-critical systems. + MAV_SEVERITY_ALERT MAV_SEVERITY = 1 + // Action must be taken immediately. Indicates failure in a primary system. + MAV_SEVERITY_CRITICAL MAV_SEVERITY = 2 + // Indicates an error in secondary/redundant systems. + MAV_SEVERITY_ERROR MAV_SEVERITY = 3 + // Indicates about a possible future error if this is not resolved within a given timeframe. Example would be a low battery warning. + MAV_SEVERITY_WARNING MAV_SEVERITY = 4 + // An unusual event has occurred, though not an error condition. This should be investigated for the root cause. + MAV_SEVERITY_NOTICE MAV_SEVERITY = 5 + // Normal operational messages. Useful for logging. No action is required for these messages. + MAV_SEVERITY_INFO MAV_SEVERITY = 6 + // Useful non-operational messages that can assist in debugging. These should not occur during normal operation. + MAV_SEVERITY_DEBUG MAV_SEVERITY = 7 +) + +var labels_MAV_SEVERITY = map[MAV_SEVERITY]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAV_SEVERITY) MarshalText() ([]byte, error) { + if l, ok := labels_MAV_SEVERITY[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAV_SEVERITY = map[string]MAV_SEVERITY{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAV_SEVERITY) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAV_SEVERITY[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAV_SEVERITY) String() string { + if l, ok := labels_MAV_SEVERITY[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/development/enum_mav_state.go b/pkg/dialects/development/enum_mav_state.go new file mode 100644 index 000000000..f2ae7b38b --- /dev/null +++ b/pkg/dialects/development/enum_mav_state.go @@ -0,0 +1,59 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package development + +import ( + "errors" +) + +type MAV_STATE int + +const ( + // Uninitialized system, state is unknown. + MAV_STATE_UNINIT MAV_STATE = 0 + // System is booting up. + MAV_STATE_BOOT MAV_STATE = 1 + // System is calibrating and not flight-ready. + MAV_STATE_CALIBRATING MAV_STATE = 2 + // System is grounded and on standby. It can be launched any time. + MAV_STATE_STANDBY MAV_STATE = 3 + // System is active and might be already airborne. Motors are engaged. + MAV_STATE_ACTIVE MAV_STATE = 4 + // System is in a non-normal flight mode. It can however still navigate. + MAV_STATE_CRITICAL MAV_STATE = 5 + // System is in a non-normal flight mode. It lost control over parts or over the whole airframe. It is in mayday and going down. + MAV_STATE_EMERGENCY MAV_STATE = 6 + // System just initialized its power-down sequence, will shut down now. + MAV_STATE_POWEROFF MAV_STATE = 7 + // System is terminating itself. + MAV_STATE_FLIGHT_TERMINATION MAV_STATE = 8 +) + +var labels_MAV_STATE = map[MAV_STATE]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAV_STATE) MarshalText() ([]byte, error) { + if l, ok := labels_MAV_STATE[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAV_STATE = map[string]MAV_STATE{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAV_STATE) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAV_STATE[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAV_STATE) String() string { + if l, ok := labels_MAV_STATE[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/development/enum_mav_sys_status_sensor.go b/pkg/dialects/development/enum_mav_sys_status_sensor.go new file mode 100644 index 000000000..331f16ae3 --- /dev/null +++ b/pkg/dialects/development/enum_mav_sys_status_sensor.go @@ -0,0 +1,106 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package development + +import ( + "errors" +) + +// These encode the sensors whose status is sent as part of the SYS_STATUS message. +type MAV_SYS_STATUS_SENSOR int + +const ( + // 0x01 3D gyro + MAV_SYS_STATUS_SENSOR_3D_GYRO MAV_SYS_STATUS_SENSOR = 1 + // 0x02 3D accelerometer + MAV_SYS_STATUS_SENSOR_3D_ACCEL MAV_SYS_STATUS_SENSOR = 2 + // 0x04 3D magnetometer + MAV_SYS_STATUS_SENSOR_3D_MAG MAV_SYS_STATUS_SENSOR = 4 + // 0x08 absolute pressure + MAV_SYS_STATUS_SENSOR_ABSOLUTE_PRESSURE MAV_SYS_STATUS_SENSOR = 8 + // 0x10 differential pressure + MAV_SYS_STATUS_SENSOR_DIFFERENTIAL_PRESSURE MAV_SYS_STATUS_SENSOR = 16 + // 0x20 GPS + MAV_SYS_STATUS_SENSOR_GPS MAV_SYS_STATUS_SENSOR = 32 + // 0x40 optical flow + MAV_SYS_STATUS_SENSOR_OPTICAL_FLOW MAV_SYS_STATUS_SENSOR = 64 + // 0x80 computer vision position + MAV_SYS_STATUS_SENSOR_VISION_POSITION MAV_SYS_STATUS_SENSOR = 128 + // 0x100 laser based position + MAV_SYS_STATUS_SENSOR_LASER_POSITION MAV_SYS_STATUS_SENSOR = 256 + // 0x200 external ground truth (Vicon or Leica) + MAV_SYS_STATUS_SENSOR_EXTERNAL_GROUND_TRUTH MAV_SYS_STATUS_SENSOR = 512 + // 0x400 3D angular rate control + MAV_SYS_STATUS_SENSOR_ANGULAR_RATE_CONTROL MAV_SYS_STATUS_SENSOR = 1024 + // 0x800 attitude stabilization + MAV_SYS_STATUS_SENSOR_ATTITUDE_STABILIZATION MAV_SYS_STATUS_SENSOR = 2048 + // 0x1000 yaw position + MAV_SYS_STATUS_SENSOR_YAW_POSITION MAV_SYS_STATUS_SENSOR = 4096 + // 0x2000 z/altitude control + MAV_SYS_STATUS_SENSOR_Z_ALTITUDE_CONTROL MAV_SYS_STATUS_SENSOR = 8192 + // 0x4000 x/y position control + MAV_SYS_STATUS_SENSOR_XY_POSITION_CONTROL MAV_SYS_STATUS_SENSOR = 16384 + // 0x8000 motor outputs / control + MAV_SYS_STATUS_SENSOR_MOTOR_OUTPUTS MAV_SYS_STATUS_SENSOR = 32768 + // 0x10000 rc receiver + MAV_SYS_STATUS_SENSOR_RC_RECEIVER MAV_SYS_STATUS_SENSOR = 65536 + // 0x20000 2nd 3D gyro + MAV_SYS_STATUS_SENSOR_3D_GYRO2 MAV_SYS_STATUS_SENSOR = 131072 + // 0x40000 2nd 3D accelerometer + MAV_SYS_STATUS_SENSOR_3D_ACCEL2 MAV_SYS_STATUS_SENSOR = 262144 + // 0x80000 2nd 3D magnetometer + MAV_SYS_STATUS_SENSOR_3D_MAG2 MAV_SYS_STATUS_SENSOR = 524288 + // 0x100000 geofence + MAV_SYS_STATUS_GEOFENCE MAV_SYS_STATUS_SENSOR = 1048576 + // 0x200000 AHRS subsystem health + MAV_SYS_STATUS_AHRS MAV_SYS_STATUS_SENSOR = 2097152 + // 0x400000 Terrain subsystem health + MAV_SYS_STATUS_TERRAIN MAV_SYS_STATUS_SENSOR = 4194304 + // 0x800000 Motors are reversed + MAV_SYS_STATUS_REVERSE_MOTOR MAV_SYS_STATUS_SENSOR = 8388608 + // 0x1000000 Logging + MAV_SYS_STATUS_LOGGING MAV_SYS_STATUS_SENSOR = 16777216 + // 0x2000000 Battery + MAV_SYS_STATUS_SENSOR_BATTERY MAV_SYS_STATUS_SENSOR = 33554432 + // 0x4000000 Proximity + MAV_SYS_STATUS_SENSOR_PROXIMITY MAV_SYS_STATUS_SENSOR = 67108864 + // 0x8000000 Satellite Communication + MAV_SYS_STATUS_SENSOR_SATCOM MAV_SYS_STATUS_SENSOR = 134217728 + // 0x10000000 pre-arm check status. Always healthy when armed + MAV_SYS_STATUS_PREARM_CHECK MAV_SYS_STATUS_SENSOR = 268435456 + // 0x20000000 Avoidance/collision prevention + MAV_SYS_STATUS_OBSTACLE_AVOIDANCE MAV_SYS_STATUS_SENSOR = 536870912 + // 0x40000000 propulsion (actuator, esc, motor or propellor) + MAV_SYS_STATUS_SENSOR_PROPULSION MAV_SYS_STATUS_SENSOR = 1073741824 + // 0x80000000 Extended bit-field are used for further sensor status bits (needs to be set in onboard_control_sensors_present only) + MAV_SYS_STATUS_EXTENSION_USED MAV_SYS_STATUS_SENSOR = 2147483648 +) + +var labels_MAV_SYS_STATUS_SENSOR = map[MAV_SYS_STATUS_SENSOR]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAV_SYS_STATUS_SENSOR) MarshalText() ([]byte, error) { + if l, ok := labels_MAV_SYS_STATUS_SENSOR[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAV_SYS_STATUS_SENSOR = map[string]MAV_SYS_STATUS_SENSOR{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAV_SYS_STATUS_SENSOR) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAV_SYS_STATUS_SENSOR[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAV_SYS_STATUS_SENSOR) String() string { + if l, ok := labels_MAV_SYS_STATUS_SENSOR[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/development/enum_mav_sys_status_sensor_extended.go b/pkg/dialects/development/enum_mav_sys_status_sensor_extended.go new file mode 100644 index 000000000..5af5efa63 --- /dev/null +++ b/pkg/dialects/development/enum_mav_sys_status_sensor_extended.go @@ -0,0 +1,44 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package development + +import ( + "errors" +) + +// These encode the sensors whose status is sent as part of the SYS_STATUS message in the extended fields. +type MAV_SYS_STATUS_SENSOR_EXTENDED int + +const ( + // 0x01 Recovery system (parachute, balloon, retracts etc) + MAV_SYS_STATUS_RECOVERY_SYSTEM MAV_SYS_STATUS_SENSOR_EXTENDED = 1 +) + +var labels_MAV_SYS_STATUS_SENSOR_EXTENDED = map[MAV_SYS_STATUS_SENSOR_EXTENDED]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAV_SYS_STATUS_SENSOR_EXTENDED) MarshalText() ([]byte, error) { + if l, ok := labels_MAV_SYS_STATUS_SENSOR_EXTENDED[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAV_SYS_STATUS_SENSOR_EXTENDED = map[string]MAV_SYS_STATUS_SENSOR_EXTENDED{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAV_SYS_STATUS_SENSOR_EXTENDED) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAV_SYS_STATUS_SENSOR_EXTENDED[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAV_SYS_STATUS_SENSOR_EXTENDED) String() string { + if l, ok := labels_MAV_SYS_STATUS_SENSOR_EXTENDED[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/development/enum_mav_tunnel_payload_type.go b/pkg/dialects/development/enum_mav_tunnel_payload_type.go new file mode 100644 index 000000000..ac4c49bbd --- /dev/null +++ b/pkg/dialects/development/enum_mav_tunnel_payload_type.go @@ -0,0 +1,63 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package development + +import ( + "errors" +) + +type MAV_TUNNEL_PAYLOAD_TYPE int + +const ( + // Encoding of payload unknown. + MAV_TUNNEL_PAYLOAD_TYPE_UNKNOWN MAV_TUNNEL_PAYLOAD_TYPE = 0 + // Registered for STorM32 gimbal controller. + MAV_TUNNEL_PAYLOAD_TYPE_STORM32_RESERVED0 MAV_TUNNEL_PAYLOAD_TYPE = 200 + // Registered for STorM32 gimbal controller. + MAV_TUNNEL_PAYLOAD_TYPE_STORM32_RESERVED1 MAV_TUNNEL_PAYLOAD_TYPE = 201 + // Registered for STorM32 gimbal controller. + MAV_TUNNEL_PAYLOAD_TYPE_STORM32_RESERVED2 MAV_TUNNEL_PAYLOAD_TYPE = 202 + // Registered for STorM32 gimbal controller. + MAV_TUNNEL_PAYLOAD_TYPE_STORM32_RESERVED3 MAV_TUNNEL_PAYLOAD_TYPE = 203 + // Registered for STorM32 gimbal controller. + MAV_TUNNEL_PAYLOAD_TYPE_STORM32_RESERVED4 MAV_TUNNEL_PAYLOAD_TYPE = 204 + // Registered for STorM32 gimbal controller. + MAV_TUNNEL_PAYLOAD_TYPE_STORM32_RESERVED5 MAV_TUNNEL_PAYLOAD_TYPE = 205 + // Registered for STorM32 gimbal controller. + MAV_TUNNEL_PAYLOAD_TYPE_STORM32_RESERVED6 MAV_TUNNEL_PAYLOAD_TYPE = 206 + // Registered for STorM32 gimbal controller. + MAV_TUNNEL_PAYLOAD_TYPE_STORM32_RESERVED7 MAV_TUNNEL_PAYLOAD_TYPE = 207 + // Registered for STorM32 gimbal controller. + MAV_TUNNEL_PAYLOAD_TYPE_STORM32_RESERVED8 MAV_TUNNEL_PAYLOAD_TYPE = 208 + // Registered for STorM32 gimbal controller. + MAV_TUNNEL_PAYLOAD_TYPE_STORM32_RESERVED9 MAV_TUNNEL_PAYLOAD_TYPE = 209 +) + +var labels_MAV_TUNNEL_PAYLOAD_TYPE = map[MAV_TUNNEL_PAYLOAD_TYPE]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAV_TUNNEL_PAYLOAD_TYPE) MarshalText() ([]byte, error) { + if l, ok := labels_MAV_TUNNEL_PAYLOAD_TYPE[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAV_TUNNEL_PAYLOAD_TYPE = map[string]MAV_TUNNEL_PAYLOAD_TYPE{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAV_TUNNEL_PAYLOAD_TYPE) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAV_TUNNEL_PAYLOAD_TYPE[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAV_TUNNEL_PAYLOAD_TYPE) String() string { + if l, ok := labels_MAV_TUNNEL_PAYLOAD_TYPE[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/development/enum_mav_type.go b/pkg/dialects/development/enum_mav_type.go new file mode 100644 index 000000000..789bcdaa5 --- /dev/null +++ b/pkg/dialects/development/enum_mav_type.go @@ -0,0 +1,126 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package development + +import ( + "errors" +) + +// MAVLINK component type reported in HEARTBEAT message. Flight controllers must report the type of the vehicle on which they are mounted (e.g. MAV_TYPE_OCTOROTOR). All other components must report a value appropriate for their type (e.g. a camera must use MAV_TYPE_CAMERA). +type MAV_TYPE int + +const ( + // Generic micro air vehicle + MAV_TYPE_GENERIC MAV_TYPE = 0 + // Fixed wing aircraft. + MAV_TYPE_FIXED_WING MAV_TYPE = 1 + // Quadrotor + MAV_TYPE_QUADROTOR MAV_TYPE = 2 + // Coaxial helicopter + MAV_TYPE_COAXIAL MAV_TYPE = 3 + // Normal helicopter with tail rotor. + MAV_TYPE_HELICOPTER MAV_TYPE = 4 + // Ground installation + MAV_TYPE_ANTENNA_TRACKER MAV_TYPE = 5 + // Operator control unit / ground control station + MAV_TYPE_GCS MAV_TYPE = 6 + // Airship, controlled + MAV_TYPE_AIRSHIP MAV_TYPE = 7 + // Free balloon, uncontrolled + MAV_TYPE_FREE_BALLOON MAV_TYPE = 8 + // Rocket + MAV_TYPE_ROCKET MAV_TYPE = 9 + // Ground rover + MAV_TYPE_GROUND_ROVER MAV_TYPE = 10 + // Surface vessel, boat, ship + MAV_TYPE_SURFACE_BOAT MAV_TYPE = 11 + // Submarine + MAV_TYPE_SUBMARINE MAV_TYPE = 12 + // Hexarotor + MAV_TYPE_HEXAROTOR MAV_TYPE = 13 + // Octorotor + MAV_TYPE_OCTOROTOR MAV_TYPE = 14 + // Tricopter + MAV_TYPE_TRICOPTER MAV_TYPE = 15 + // Flapping wing + MAV_TYPE_FLAPPING_WING MAV_TYPE = 16 + // Kite + MAV_TYPE_KITE MAV_TYPE = 17 + // Onboard companion controller + MAV_TYPE_ONBOARD_CONTROLLER MAV_TYPE = 18 + // Two-rotor VTOL using control surfaces in vertical operation in addition. Tailsitter. + MAV_TYPE_VTOL_DUOROTOR MAV_TYPE = 19 + // Quad-rotor VTOL using a V-shaped quad config in vertical operation. Tailsitter. + MAV_TYPE_VTOL_QUADROTOR MAV_TYPE = 20 + // Tiltrotor VTOL + MAV_TYPE_VTOL_TILTROTOR MAV_TYPE = 21 + // VTOL reserved 2 + MAV_TYPE_VTOL_RESERVED2 MAV_TYPE = 22 + // VTOL reserved 3 + MAV_TYPE_VTOL_RESERVED3 MAV_TYPE = 23 + // VTOL reserved 4 + MAV_TYPE_VTOL_RESERVED4 MAV_TYPE = 24 + // VTOL reserved 5 + MAV_TYPE_VTOL_RESERVED5 MAV_TYPE = 25 + // Gimbal + MAV_TYPE_GIMBAL MAV_TYPE = 26 + // ADSB system + MAV_TYPE_ADSB MAV_TYPE = 27 + // Steerable, nonrigid airfoil + MAV_TYPE_PARAFOIL MAV_TYPE = 28 + // Dodecarotor + MAV_TYPE_DODECAROTOR MAV_TYPE = 29 + // Camera + MAV_TYPE_CAMERA MAV_TYPE = 30 + // Charging station + MAV_TYPE_CHARGING_STATION MAV_TYPE = 31 + // FLARM collision avoidance system + MAV_TYPE_FLARM MAV_TYPE = 32 + // Servo + MAV_TYPE_SERVO MAV_TYPE = 33 + // Open Drone ID. See https://mavlink.io/en/services/opendroneid.html. + MAV_TYPE_ODID MAV_TYPE = 34 + // Decarotor + MAV_TYPE_DECAROTOR MAV_TYPE = 35 + // Battery + MAV_TYPE_BATTERY MAV_TYPE = 36 + // Parachute + MAV_TYPE_PARACHUTE MAV_TYPE = 37 + // Log + MAV_TYPE_LOG MAV_TYPE = 38 + // OSD + MAV_TYPE_OSD MAV_TYPE = 39 + // IMU + MAV_TYPE_IMU MAV_TYPE = 40 + // GPS + MAV_TYPE_GPS MAV_TYPE = 41 +) + +var labels_MAV_TYPE = map[MAV_TYPE]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAV_TYPE) MarshalText() ([]byte, error) { + if l, ok := labels_MAV_TYPE[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAV_TYPE = map[string]MAV_TYPE{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAV_TYPE) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAV_TYPE[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAV_TYPE) String() string { + if l, ok := labels_MAV_TYPE[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/development/enum_mav_vtol_state.go b/pkg/dialects/development/enum_mav_vtol_state.go new file mode 100644 index 000000000..fa40b8d56 --- /dev/null +++ b/pkg/dialects/development/enum_mav_vtol_state.go @@ -0,0 +1,52 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package development + +import ( + "errors" +) + +// Enumeration of VTOL states +type MAV_VTOL_STATE int + +const ( + // MAV is not configured as VTOL + MAV_VTOL_STATE_UNDEFINED MAV_VTOL_STATE = 0 + // VTOL is in transition from multicopter to fixed-wing + MAV_VTOL_STATE_TRANSITION_TO_FW MAV_VTOL_STATE = 1 + // VTOL is in transition from fixed-wing to multicopter + MAV_VTOL_STATE_TRANSITION_TO_MC MAV_VTOL_STATE = 2 + // VTOL is in multicopter state + MAV_VTOL_STATE_MC MAV_VTOL_STATE = 3 + // VTOL is in fixed-wing state + MAV_VTOL_STATE_FW MAV_VTOL_STATE = 4 +) + +var labels_MAV_VTOL_STATE = map[MAV_VTOL_STATE]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAV_VTOL_STATE) MarshalText() ([]byte, error) { + if l, ok := labels_MAV_VTOL_STATE[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAV_VTOL_STATE = map[string]MAV_VTOL_STATE{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAV_VTOL_STATE) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAV_VTOL_STATE[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAV_VTOL_STATE) String() string { + if l, ok := labels_MAV_VTOL_STATE[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/development/enum_mav_winch_status_flag.go b/pkg/dialects/development/enum_mav_winch_status_flag.go new file mode 100644 index 000000000..b897dc8fa --- /dev/null +++ b/pkg/dialects/development/enum_mav_winch_status_flag.go @@ -0,0 +1,64 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package development + +import ( + "errors" +) + +// Winch status flags used in WINCH_STATUS +type MAV_WINCH_STATUS_FLAG int + +const ( + // Winch is healthy + MAV_WINCH_STATUS_HEALTHY MAV_WINCH_STATUS_FLAG = 1 + // Winch line is fully retracted + MAV_WINCH_STATUS_FULLY_RETRACTED MAV_WINCH_STATUS_FLAG = 2 + // Winch motor is moving + MAV_WINCH_STATUS_MOVING MAV_WINCH_STATUS_FLAG = 4 + // Winch clutch is engaged allowing motor to move freely. + MAV_WINCH_STATUS_CLUTCH_ENGAGED MAV_WINCH_STATUS_FLAG = 8 + // Winch is locked by locking mechanism. + MAV_WINCH_STATUS_LOCKED MAV_WINCH_STATUS_FLAG = 16 + // Winch is gravity dropping payload. + MAV_WINCH_STATUS_DROPPING MAV_WINCH_STATUS_FLAG = 32 + // Winch is arresting payload descent. + MAV_WINCH_STATUS_ARRESTING MAV_WINCH_STATUS_FLAG = 64 + // Winch is using torque measurements to sense the ground. + MAV_WINCH_STATUS_GROUND_SENSE MAV_WINCH_STATUS_FLAG = 128 + // Winch is returning to the fully retracted position. + MAV_WINCH_STATUS_RETRACTING MAV_WINCH_STATUS_FLAG = 256 + // Winch is redelivering the payload. This is a failover state if the line tension goes above a threshold during RETRACTING. + MAV_WINCH_STATUS_REDELIVER MAV_WINCH_STATUS_FLAG = 512 + // Winch is abandoning the line and possibly payload. Winch unspools the entire calculated line length. This is a failover state from REDELIVER if the number of attemps exceeds a threshold. + MAV_WINCH_STATUS_ABANDON_LINE MAV_WINCH_STATUS_FLAG = 1024 +) + +var labels_MAV_WINCH_STATUS_FLAG = map[MAV_WINCH_STATUS_FLAG]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAV_WINCH_STATUS_FLAG) MarshalText() ([]byte, error) { + if l, ok := labels_MAV_WINCH_STATUS_FLAG[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAV_WINCH_STATUS_FLAG = map[string]MAV_WINCH_STATUS_FLAG{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAV_WINCH_STATUS_FLAG) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAV_WINCH_STATUS_FLAG[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAV_WINCH_STATUS_FLAG) String() string { + if l, ok := labels_MAV_WINCH_STATUS_FLAG[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/development/enum_mavlink_data_stream_type.go b/pkg/dialects/development/enum_mavlink_data_stream_type.go new file mode 100644 index 000000000..820d11c71 --- /dev/null +++ b/pkg/dialects/development/enum_mavlink_data_stream_type.go @@ -0,0 +1,47 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package development + +import ( + "errors" +) + +type MAVLINK_DATA_STREAM_TYPE int + +const ( + MAVLINK_DATA_STREAM_IMG_JPEG MAVLINK_DATA_STREAM_TYPE = 0 + MAVLINK_DATA_STREAM_IMG_BMP MAVLINK_DATA_STREAM_TYPE = 1 + MAVLINK_DATA_STREAM_IMG_RAW8U MAVLINK_DATA_STREAM_TYPE = 2 + MAVLINK_DATA_STREAM_IMG_RAW32U MAVLINK_DATA_STREAM_TYPE = 3 + MAVLINK_DATA_STREAM_IMG_PGM MAVLINK_DATA_STREAM_TYPE = 4 + MAVLINK_DATA_STREAM_IMG_PNG MAVLINK_DATA_STREAM_TYPE = 5 +) + +var labels_MAVLINK_DATA_STREAM_TYPE = map[MAVLINK_DATA_STREAM_TYPE]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAVLINK_DATA_STREAM_TYPE) MarshalText() ([]byte, error) { + if l, ok := labels_MAVLINK_DATA_STREAM_TYPE[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAVLINK_DATA_STREAM_TYPE = map[string]MAVLINK_DATA_STREAM_TYPE{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAVLINK_DATA_STREAM_TYPE) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAVLINK_DATA_STREAM_TYPE[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAVLINK_DATA_STREAM_TYPE) String() string { + if l, ok := labels_MAVLINK_DATA_STREAM_TYPE[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/development/enum_motor_test_order.go b/pkg/dialects/development/enum_motor_test_order.go new file mode 100644 index 000000000..867ca7df6 --- /dev/null +++ b/pkg/dialects/development/enum_motor_test_order.go @@ -0,0 +1,48 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package development + +import ( + "errors" +) + +// Sequence that motors are tested when using MAV_CMD_DO_MOTOR_TEST. +type MOTOR_TEST_ORDER int + +const ( + // Default autopilot motor test method. + MOTOR_TEST_ORDER_DEFAULT MOTOR_TEST_ORDER = 0 + // Motor numbers are specified as their index in a predefined vehicle-specific sequence. + MOTOR_TEST_ORDER_SEQUENCE MOTOR_TEST_ORDER = 1 + // Motor numbers are specified as the output as labeled on the board. + MOTOR_TEST_ORDER_BOARD MOTOR_TEST_ORDER = 2 +) + +var labels_MOTOR_TEST_ORDER = map[MOTOR_TEST_ORDER]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MOTOR_TEST_ORDER) MarshalText() ([]byte, error) { + if l, ok := labels_MOTOR_TEST_ORDER[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MOTOR_TEST_ORDER = map[string]MOTOR_TEST_ORDER{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MOTOR_TEST_ORDER) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MOTOR_TEST_ORDER[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MOTOR_TEST_ORDER) String() string { + if l, ok := labels_MOTOR_TEST_ORDER[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/development/enum_motor_test_throttle_type.go b/pkg/dialects/development/enum_motor_test_throttle_type.go new file mode 100644 index 000000000..6e70467b7 --- /dev/null +++ b/pkg/dialects/development/enum_motor_test_throttle_type.go @@ -0,0 +1,50 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package development + +import ( + "errors" +) + +// Defines how throttle value is represented in MAV_CMD_DO_MOTOR_TEST. +type MOTOR_TEST_THROTTLE_TYPE int + +const ( + // Throttle as a percentage (0 ~ 100) + MOTOR_TEST_THROTTLE_PERCENT MOTOR_TEST_THROTTLE_TYPE = 0 + // Throttle as an absolute PWM value (normally in range of 1000~2000). + MOTOR_TEST_THROTTLE_PWM MOTOR_TEST_THROTTLE_TYPE = 1 + // Throttle pass-through from pilot's transmitter. + MOTOR_TEST_THROTTLE_PILOT MOTOR_TEST_THROTTLE_TYPE = 2 + // Per-motor compass calibration test. + MOTOR_TEST_COMPASS_CAL MOTOR_TEST_THROTTLE_TYPE = 3 +) + +var labels_MOTOR_TEST_THROTTLE_TYPE = map[MOTOR_TEST_THROTTLE_TYPE]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MOTOR_TEST_THROTTLE_TYPE) MarshalText() ([]byte, error) { + if l, ok := labels_MOTOR_TEST_THROTTLE_TYPE[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MOTOR_TEST_THROTTLE_TYPE = map[string]MOTOR_TEST_THROTTLE_TYPE{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MOTOR_TEST_THROTTLE_TYPE) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MOTOR_TEST_THROTTLE_TYPE[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MOTOR_TEST_THROTTLE_TYPE) String() string { + if l, ok := labels_MOTOR_TEST_THROTTLE_TYPE[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/development/enum_nav_vtol_land_options.go b/pkg/dialects/development/enum_nav_vtol_land_options.go new file mode 100644 index 000000000..9e5308191 --- /dev/null +++ b/pkg/dialects/development/enum_nav_vtol_land_options.go @@ -0,0 +1,48 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package development + +import ( + "errors" +) + +type NAV_VTOL_LAND_OPTIONS int + +const ( + // Default autopilot landing behaviour. + NAV_VTOL_LAND_OPTIONS_DEFAULT NAV_VTOL_LAND_OPTIONS = 0 + // Descend in fixed wing mode, transitioning to multicopter mode for vertical landing when close to the ground. + // The fixed wing descent pattern is at the discretion of the vehicle (e.g. transition altitude, loiter direction, radius, and speed, etc.). + NAV_VTOL_LAND_OPTIONS_FW_DESCENT NAV_VTOL_LAND_OPTIONS = 1 + // Land in multicopter mode on reaching the landing co-ordinates (the whole landing is by "hover descent"). + NAV_VTOL_LAND_OPTIONS_HOVER_DESCENT NAV_VTOL_LAND_OPTIONS = 2 +) + +var labels_NAV_VTOL_LAND_OPTIONS = map[NAV_VTOL_LAND_OPTIONS]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e NAV_VTOL_LAND_OPTIONS) MarshalText() ([]byte, error) { + if l, ok := labels_NAV_VTOL_LAND_OPTIONS[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_NAV_VTOL_LAND_OPTIONS = map[string]NAV_VTOL_LAND_OPTIONS{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *NAV_VTOL_LAND_OPTIONS) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_NAV_VTOL_LAND_OPTIONS[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e NAV_VTOL_LAND_OPTIONS) String() string { + if l, ok := labels_NAV_VTOL_LAND_OPTIONS[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/development/enum_orbit_yaw_behaviour.go b/pkg/dialects/development/enum_orbit_yaw_behaviour.go new file mode 100644 index 000000000..5c9450d4b --- /dev/null +++ b/pkg/dialects/development/enum_orbit_yaw_behaviour.go @@ -0,0 +1,52 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package development + +import ( + "errors" +) + +// Yaw behaviour during orbit flight. +type ORBIT_YAW_BEHAVIOUR int + +const ( + // Vehicle front points to the center (default). + ORBIT_YAW_BEHAVIOUR_HOLD_FRONT_TO_CIRCLE_CENTER ORBIT_YAW_BEHAVIOUR = 0 + // Vehicle front holds heading when message received. + ORBIT_YAW_BEHAVIOUR_HOLD_INITIAL_HEADING ORBIT_YAW_BEHAVIOUR = 1 + // Yaw uncontrolled. + ORBIT_YAW_BEHAVIOUR_UNCONTROLLED ORBIT_YAW_BEHAVIOUR = 2 + // Vehicle front follows flight path (tangential to circle). + ORBIT_YAW_BEHAVIOUR_HOLD_FRONT_TANGENT_TO_CIRCLE ORBIT_YAW_BEHAVIOUR = 3 + // Yaw controlled by RC input. + ORBIT_YAW_BEHAVIOUR_RC_CONTROLLED ORBIT_YAW_BEHAVIOUR = 4 +) + +var labels_ORBIT_YAW_BEHAVIOUR = map[ORBIT_YAW_BEHAVIOUR]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e ORBIT_YAW_BEHAVIOUR) MarshalText() ([]byte, error) { + if l, ok := labels_ORBIT_YAW_BEHAVIOUR[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_ORBIT_YAW_BEHAVIOUR = map[string]ORBIT_YAW_BEHAVIOUR{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *ORBIT_YAW_BEHAVIOUR) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_ORBIT_YAW_BEHAVIOUR[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e ORBIT_YAW_BEHAVIOUR) String() string { + if l, ok := labels_ORBIT_YAW_BEHAVIOUR[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/development/enum_parachute_action.go b/pkg/dialects/development/enum_parachute_action.go new file mode 100644 index 000000000..58b54972d --- /dev/null +++ b/pkg/dialects/development/enum_parachute_action.go @@ -0,0 +1,48 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package development + +import ( + "errors" +) + +// Parachute actions. Trigger release and enable/disable auto-release. +type PARACHUTE_ACTION int + +const ( + // Disable auto-release of parachute (i.e. release triggered by crash detectors). + PARACHUTE_DISABLE PARACHUTE_ACTION = 0 + // Enable auto-release of parachute. + PARACHUTE_ENABLE PARACHUTE_ACTION = 1 + // Release parachute and kill motors. + PARACHUTE_RELEASE PARACHUTE_ACTION = 2 +) + +var labels_PARACHUTE_ACTION = map[PARACHUTE_ACTION]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e PARACHUTE_ACTION) MarshalText() ([]byte, error) { + if l, ok := labels_PARACHUTE_ACTION[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_PARACHUTE_ACTION = map[string]PARACHUTE_ACTION{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *PARACHUTE_ACTION) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_PARACHUTE_ACTION[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e PARACHUTE_ACTION) String() string { + if l, ok := labels_PARACHUTE_ACTION[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/development/enum_param_ack.go b/pkg/dialects/development/enum_param_ack.go new file mode 100644 index 000000000..0fc38e180 --- /dev/null +++ b/pkg/dialects/development/enum_param_ack.go @@ -0,0 +1,50 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package development + +import ( + "errors" +) + +// Result from PARAM_EXT_SET message (or a PARAM_SET within a transaction). +type PARAM_ACK int + +const ( + // Parameter value ACCEPTED and SET + PARAM_ACK_ACCEPTED PARAM_ACK = 0 + // Parameter value UNKNOWN/UNSUPPORTED + PARAM_ACK_VALUE_UNSUPPORTED PARAM_ACK = 1 + // Parameter failed to set + PARAM_ACK_FAILED PARAM_ACK = 2 + // Parameter value received but not yet set/accepted. A subsequent PARAM_ACK_TRANSACTION or PARAM_EXT_ACK with the final result will follow once operation is completed. This is returned immediately for parameters that take longer to set, indicating taht the the parameter was recieved and does not need to be resent. + PARAM_ACK_IN_PROGRESS PARAM_ACK = 3 +) + +var labels_PARAM_ACK = map[PARAM_ACK]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e PARAM_ACK) MarshalText() ([]byte, error) { + if l, ok := labels_PARAM_ACK[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_PARAM_ACK = map[string]PARAM_ACK{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *PARAM_ACK) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_PARAM_ACK[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e PARAM_ACK) String() string { + if l, ok := labels_PARAM_ACK[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/development/enum_param_transaction_action.go b/pkg/dialects/development/enum_param_transaction_action.go new file mode 100644 index 000000000..77a926500 --- /dev/null +++ b/pkg/dialects/development/enum_param_transaction_action.go @@ -0,0 +1,48 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package development + +import ( + "errors" +) + +// Possible parameter transaction actions. +type PARAM_TRANSACTION_ACTION int + +const ( + // Commit the current parameter transaction. + PARAM_TRANSACTION_ACTION_START PARAM_TRANSACTION_ACTION = 0 + // Commit the current parameter transaction. + PARAM_TRANSACTION_ACTION_COMMIT PARAM_TRANSACTION_ACTION = 1 + // Cancel the current parameter transaction. + PARAM_TRANSACTION_ACTION_CANCEL PARAM_TRANSACTION_ACTION = 2 +) + +var labels_PARAM_TRANSACTION_ACTION = map[PARAM_TRANSACTION_ACTION]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e PARAM_TRANSACTION_ACTION) MarshalText() ([]byte, error) { + if l, ok := labels_PARAM_TRANSACTION_ACTION[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_PARAM_TRANSACTION_ACTION = map[string]PARAM_TRANSACTION_ACTION{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *PARAM_TRANSACTION_ACTION) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_PARAM_TRANSACTION_ACTION[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e PARAM_TRANSACTION_ACTION) String() string { + if l, ok := labels_PARAM_TRANSACTION_ACTION[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/development/enum_param_transaction_transport.go b/pkg/dialects/development/enum_param_transaction_transport.go new file mode 100644 index 000000000..7afcc4c19 --- /dev/null +++ b/pkg/dialects/development/enum_param_transaction_transport.go @@ -0,0 +1,46 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package development + +import ( + "errors" +) + +// Possible transport layers to set and get parameters via mavlink during a parameter transaction. +type PARAM_TRANSACTION_TRANSPORT int + +const ( + // Transaction over param transport. + PARAM_TRANSACTION_TRANSPORT_PARAM PARAM_TRANSACTION_TRANSPORT = 0 + // Transaction over param_ext transport. + PARAM_TRANSACTION_TRANSPORT_PARAM_EXT PARAM_TRANSACTION_TRANSPORT = 1 +) + +var labels_PARAM_TRANSACTION_TRANSPORT = map[PARAM_TRANSACTION_TRANSPORT]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e PARAM_TRANSACTION_TRANSPORT) MarshalText() ([]byte, error) { + if l, ok := labels_PARAM_TRANSACTION_TRANSPORT[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_PARAM_TRANSACTION_TRANSPORT = map[string]PARAM_TRANSACTION_TRANSPORT{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *PARAM_TRANSACTION_TRANSPORT) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_PARAM_TRANSACTION_TRANSPORT[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e PARAM_TRANSACTION_TRANSPORT) String() string { + if l, ok := labels_PARAM_TRANSACTION_TRANSPORT[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/development/enum_position_target_typemask.go b/pkg/dialects/development/enum_position_target_typemask.go new file mode 100644 index 000000000..1a2419e75 --- /dev/null +++ b/pkg/dialects/development/enum_position_target_typemask.go @@ -0,0 +1,66 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package development + +import ( + "errors" +) + +// Bitmap to indicate which dimensions should be ignored by the vehicle: a value of 0b0000000000000000 or 0b0000001000000000 indicates that none of the setpoint dimensions should be ignored. If bit 9 is set the floats afx afy afz should be interpreted as force instead of acceleration. +type POSITION_TARGET_TYPEMASK int + +const ( + // Ignore position x + POSITION_TARGET_TYPEMASK_X_IGNORE POSITION_TARGET_TYPEMASK = 1 + // Ignore position y + POSITION_TARGET_TYPEMASK_Y_IGNORE POSITION_TARGET_TYPEMASK = 2 + // Ignore position z + POSITION_TARGET_TYPEMASK_Z_IGNORE POSITION_TARGET_TYPEMASK = 4 + // Ignore velocity x + POSITION_TARGET_TYPEMASK_VX_IGNORE POSITION_TARGET_TYPEMASK = 8 + // Ignore velocity y + POSITION_TARGET_TYPEMASK_VY_IGNORE POSITION_TARGET_TYPEMASK = 16 + // Ignore velocity z + POSITION_TARGET_TYPEMASK_VZ_IGNORE POSITION_TARGET_TYPEMASK = 32 + // Ignore acceleration x + POSITION_TARGET_TYPEMASK_AX_IGNORE POSITION_TARGET_TYPEMASK = 64 + // Ignore acceleration y + POSITION_TARGET_TYPEMASK_AY_IGNORE POSITION_TARGET_TYPEMASK = 128 + // Ignore acceleration z + POSITION_TARGET_TYPEMASK_AZ_IGNORE POSITION_TARGET_TYPEMASK = 256 + // Use force instead of acceleration + POSITION_TARGET_TYPEMASK_FORCE_SET POSITION_TARGET_TYPEMASK = 512 + // Ignore yaw + POSITION_TARGET_TYPEMASK_YAW_IGNORE POSITION_TARGET_TYPEMASK = 1024 + // Ignore yaw rate + POSITION_TARGET_TYPEMASK_YAW_RATE_IGNORE POSITION_TARGET_TYPEMASK = 2048 +) + +var labels_POSITION_TARGET_TYPEMASK = map[POSITION_TARGET_TYPEMASK]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e POSITION_TARGET_TYPEMASK) MarshalText() ([]byte, error) { + if l, ok := labels_POSITION_TARGET_TYPEMASK[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_POSITION_TARGET_TYPEMASK = map[string]POSITION_TARGET_TYPEMASK{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *POSITION_TARGET_TYPEMASK) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_POSITION_TARGET_TYPEMASK[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e POSITION_TARGET_TYPEMASK) String() string { + if l, ok := labels_POSITION_TARGET_TYPEMASK[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/development/enum_precision_land_mode.go b/pkg/dialects/development/enum_precision_land_mode.go new file mode 100644 index 000000000..9cadd0e97 --- /dev/null +++ b/pkg/dialects/development/enum_precision_land_mode.go @@ -0,0 +1,48 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package development + +import ( + "errors" +) + +// Precision land modes (used in MAV_CMD_NAV_LAND). +type PRECISION_LAND_MODE int + +const ( + // Normal (non-precision) landing. + PRECISION_LAND_MODE_DISABLED PRECISION_LAND_MODE = 0 + // Use precision landing if beacon detected when land command accepted, otherwise land normally. + PRECISION_LAND_MODE_OPPORTUNISTIC PRECISION_LAND_MODE = 1 + // Use precision landing, searching for beacon if not found when land command accepted (land normally if beacon cannot be found). + PRECISION_LAND_MODE_REQUIRED PRECISION_LAND_MODE = 2 +) + +var labels_PRECISION_LAND_MODE = map[PRECISION_LAND_MODE]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e PRECISION_LAND_MODE) MarshalText() ([]byte, error) { + if l, ok := labels_PRECISION_LAND_MODE[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_PRECISION_LAND_MODE = map[string]PRECISION_LAND_MODE{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *PRECISION_LAND_MODE) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_PRECISION_LAND_MODE[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e PRECISION_LAND_MODE) String() string { + if l, ok := labels_PRECISION_LAND_MODE[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/development/enum_rc_type.go b/pkg/dialects/development/enum_rc_type.go new file mode 100644 index 000000000..e17e197c2 --- /dev/null +++ b/pkg/dialects/development/enum_rc_type.go @@ -0,0 +1,46 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package development + +import ( + "errors" +) + +// RC type +type RC_TYPE int + +const ( + // Spektrum DSM2 + RC_TYPE_SPEKTRUM_DSM2 RC_TYPE = 0 + // Spektrum DSMX + RC_TYPE_SPEKTRUM_DSMX RC_TYPE = 1 +) + +var labels_RC_TYPE = map[RC_TYPE]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e RC_TYPE) MarshalText() ([]byte, error) { + if l, ok := labels_RC_TYPE[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_RC_TYPE = map[string]RC_TYPE{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *RC_TYPE) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_RC_TYPE[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e RC_TYPE) String() string { + if l, ok := labels_RC_TYPE[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/development/enum_rtk_baseline_coordinate_system.go b/pkg/dialects/development/enum_rtk_baseline_coordinate_system.go new file mode 100644 index 000000000..db84b6f29 --- /dev/null +++ b/pkg/dialects/development/enum_rtk_baseline_coordinate_system.go @@ -0,0 +1,46 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package development + +import ( + "errors" +) + +// RTK GPS baseline coordinate system, used for RTK corrections +type RTK_BASELINE_COORDINATE_SYSTEM int + +const ( + // Earth-centered, Earth-fixed + RTK_BASELINE_COORDINATE_SYSTEM_ECEF RTK_BASELINE_COORDINATE_SYSTEM = 0 + // RTK basestation centered, north, east, down + RTK_BASELINE_COORDINATE_SYSTEM_NED RTK_BASELINE_COORDINATE_SYSTEM = 1 +) + +var labels_RTK_BASELINE_COORDINATE_SYSTEM = map[RTK_BASELINE_COORDINATE_SYSTEM]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e RTK_BASELINE_COORDINATE_SYSTEM) MarshalText() ([]byte, error) { + if l, ok := labels_RTK_BASELINE_COORDINATE_SYSTEM[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_RTK_BASELINE_COORDINATE_SYSTEM = map[string]RTK_BASELINE_COORDINATE_SYSTEM{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *RTK_BASELINE_COORDINATE_SYSTEM) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_RTK_BASELINE_COORDINATE_SYSTEM[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e RTK_BASELINE_COORDINATE_SYSTEM) String() string { + if l, ok := labels_RTK_BASELINE_COORDINATE_SYSTEM[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/development/enum_serial_control_dev.go b/pkg/dialects/development/enum_serial_control_dev.go new file mode 100644 index 000000000..70140f465 --- /dev/null +++ b/pkg/dialects/development/enum_serial_control_dev.go @@ -0,0 +1,72 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package development + +import ( + "errors" +) + +// SERIAL_CONTROL device types +type SERIAL_CONTROL_DEV int + +const ( + // First telemetry port + SERIAL_CONTROL_DEV_TELEM1 SERIAL_CONTROL_DEV = 0 + // Second telemetry port + SERIAL_CONTROL_DEV_TELEM2 SERIAL_CONTROL_DEV = 1 + // First GPS port + SERIAL_CONTROL_DEV_GPS1 SERIAL_CONTROL_DEV = 2 + // Second GPS port + SERIAL_CONTROL_DEV_GPS2 SERIAL_CONTROL_DEV = 3 + // system shell + SERIAL_CONTROL_DEV_SHELL SERIAL_CONTROL_DEV = 10 + // SERIAL0 + SERIAL_CONTROL_SERIAL0 SERIAL_CONTROL_DEV = 100 + // SERIAL1 + SERIAL_CONTROL_SERIAL1 SERIAL_CONTROL_DEV = 101 + // SERIAL2 + SERIAL_CONTROL_SERIAL2 SERIAL_CONTROL_DEV = 102 + // SERIAL3 + SERIAL_CONTROL_SERIAL3 SERIAL_CONTROL_DEV = 103 + // SERIAL4 + SERIAL_CONTROL_SERIAL4 SERIAL_CONTROL_DEV = 104 + // SERIAL5 + SERIAL_CONTROL_SERIAL5 SERIAL_CONTROL_DEV = 105 + // SERIAL6 + SERIAL_CONTROL_SERIAL6 SERIAL_CONTROL_DEV = 106 + // SERIAL7 + SERIAL_CONTROL_SERIAL7 SERIAL_CONTROL_DEV = 107 + // SERIAL8 + SERIAL_CONTROL_SERIAL8 SERIAL_CONTROL_DEV = 108 + // SERIAL9 + SERIAL_CONTROL_SERIAL9 SERIAL_CONTROL_DEV = 109 +) + +var labels_SERIAL_CONTROL_DEV = map[SERIAL_CONTROL_DEV]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e SERIAL_CONTROL_DEV) MarshalText() ([]byte, error) { + if l, ok := labels_SERIAL_CONTROL_DEV[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_SERIAL_CONTROL_DEV = map[string]SERIAL_CONTROL_DEV{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *SERIAL_CONTROL_DEV) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_SERIAL_CONTROL_DEV[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e SERIAL_CONTROL_DEV) String() string { + if l, ok := labels_SERIAL_CONTROL_DEV[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/development/enum_serial_control_flag.go b/pkg/dialects/development/enum_serial_control_flag.go new file mode 100644 index 000000000..30be6971f --- /dev/null +++ b/pkg/dialects/development/enum_serial_control_flag.go @@ -0,0 +1,52 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package development + +import ( + "errors" +) + +// SERIAL_CONTROL flags (bitmask) +type SERIAL_CONTROL_FLAG int + +const ( + // Set if this is a reply + SERIAL_CONTROL_FLAG_REPLY SERIAL_CONTROL_FLAG = 1 + // Set if the sender wants the receiver to send a response as another SERIAL_CONTROL message + SERIAL_CONTROL_FLAG_RESPOND SERIAL_CONTROL_FLAG = 2 + // Set if access to the serial port should be removed from whatever driver is currently using it, giving exclusive access to the SERIAL_CONTROL protocol. The port can be handed back by sending a request without this flag set + SERIAL_CONTROL_FLAG_EXCLUSIVE SERIAL_CONTROL_FLAG = 4 + // Block on writes to the serial port + SERIAL_CONTROL_FLAG_BLOCKING SERIAL_CONTROL_FLAG = 8 + // Send multiple replies until port is drained + SERIAL_CONTROL_FLAG_MULTI SERIAL_CONTROL_FLAG = 16 +) + +var labels_SERIAL_CONTROL_FLAG = map[SERIAL_CONTROL_FLAG]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e SERIAL_CONTROL_FLAG) MarshalText() ([]byte, error) { + if l, ok := labels_SERIAL_CONTROL_FLAG[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_SERIAL_CONTROL_FLAG = map[string]SERIAL_CONTROL_FLAG{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *SERIAL_CONTROL_FLAG) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_SERIAL_CONTROL_FLAG[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e SERIAL_CONTROL_FLAG) String() string { + if l, ok := labels_SERIAL_CONTROL_FLAG[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/development/enum_set_focus_type.go b/pkg/dialects/development/enum_set_focus_type.go new file mode 100644 index 000000000..2bf3f8f1c --- /dev/null +++ b/pkg/dialects/development/enum_set_focus_type.go @@ -0,0 +1,56 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package development + +import ( + "errors" +) + +// Focus types for MAV_CMD_SET_CAMERA_FOCUS +type SET_FOCUS_TYPE int + +const ( + // Focus one step increment (-1 for focusing in, 1 for focusing out towards infinity). + FOCUS_TYPE_STEP SET_FOCUS_TYPE = 0 + // Continuous focus up/down until stopped (-1 for focusing in, 1 for focusing out towards infinity, 0 to stop focusing) + FOCUS_TYPE_CONTINUOUS SET_FOCUS_TYPE = 1 + // Focus value as proportion of full camera focus range (a value between 0.0 and 100.0) + FOCUS_TYPE_RANGE SET_FOCUS_TYPE = 2 + // Focus value in metres. Note that there is no message to get the valid focus range of the camera, so this can type can only be used for cameras where the range is known (implying that this cannot reliably be used in a GCS for an arbitrary camera). + FOCUS_TYPE_METERS SET_FOCUS_TYPE = 3 + // Focus automatically. + FOCUS_TYPE_AUTO SET_FOCUS_TYPE = 4 + // Single auto focus. Mainly used for still pictures. Usually abbreviated as AF-S. + FOCUS_TYPE_AUTO_SINGLE SET_FOCUS_TYPE = 5 + // Continuous auto focus. Mainly used for dynamic scenes. Abbreviated as AF-C. + FOCUS_TYPE_AUTO_CONTINUOUS SET_FOCUS_TYPE = 6 +) + +var labels_SET_FOCUS_TYPE = map[SET_FOCUS_TYPE]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e SET_FOCUS_TYPE) MarshalText() ([]byte, error) { + if l, ok := labels_SET_FOCUS_TYPE[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_SET_FOCUS_TYPE = map[string]SET_FOCUS_TYPE{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *SET_FOCUS_TYPE) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_SET_FOCUS_TYPE[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e SET_FOCUS_TYPE) String() string { + if l, ok := labels_SET_FOCUS_TYPE[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/development/enum_storage_status.go b/pkg/dialects/development/enum_storage_status.go new file mode 100644 index 000000000..577b12d2a --- /dev/null +++ b/pkg/dialects/development/enum_storage_status.go @@ -0,0 +1,50 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package development + +import ( + "errors" +) + +// Flags to indicate the status of camera storage. +type STORAGE_STATUS int + +const ( + // Storage is missing (no microSD card loaded for example.) + STORAGE_STATUS_EMPTY STORAGE_STATUS = 0 + // Storage present but unformatted. + STORAGE_STATUS_UNFORMATTED STORAGE_STATUS = 1 + // Storage present and ready. + STORAGE_STATUS_READY STORAGE_STATUS = 2 + // Camera does not supply storage status information. Capacity information in STORAGE_INFORMATION fields will be ignored. + STORAGE_STATUS_NOT_SUPPORTED STORAGE_STATUS = 3 +) + +var labels_STORAGE_STATUS = map[STORAGE_STATUS]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e STORAGE_STATUS) MarshalText() ([]byte, error) { + if l, ok := labels_STORAGE_STATUS[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_STORAGE_STATUS = map[string]STORAGE_STATUS{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *STORAGE_STATUS) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_STORAGE_STATUS[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e STORAGE_STATUS) String() string { + if l, ok := labels_STORAGE_STATUS[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/development/enum_storage_type.go b/pkg/dialects/development/enum_storage_type.go new file mode 100644 index 000000000..2ce706929 --- /dev/null +++ b/pkg/dialects/development/enum_storage_type.go @@ -0,0 +1,60 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package development + +import ( + "errors" +) + +// Flags to indicate the type of storage. +type STORAGE_TYPE int + +const ( + // Storage type is not known. + STORAGE_TYPE_UNKNOWN STORAGE_TYPE = 0 + // Storage type is USB device. + STORAGE_TYPE_USB_STICK STORAGE_TYPE = 1 + // Storage type is SD card. + STORAGE_TYPE_SD STORAGE_TYPE = 2 + // Storage type is microSD card. + STORAGE_TYPE_MICROSD STORAGE_TYPE = 3 + // Storage type is CFast. + STORAGE_TYPE_CF STORAGE_TYPE = 4 + // Storage type is CFexpress. + STORAGE_TYPE_CFE STORAGE_TYPE = 5 + // Storage type is XQD. + STORAGE_TYPE_XQD STORAGE_TYPE = 6 + // Storage type is HD mass storage type. + STORAGE_TYPE_HD STORAGE_TYPE = 7 + // Storage type is other, not listed type. + STORAGE_TYPE_OTHER STORAGE_TYPE = 254 +) + +var labels_STORAGE_TYPE = map[STORAGE_TYPE]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e STORAGE_TYPE) MarshalText() ([]byte, error) { + if l, ok := labels_STORAGE_TYPE[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_STORAGE_TYPE = map[string]STORAGE_TYPE{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *STORAGE_TYPE) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_STORAGE_TYPE[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e STORAGE_TYPE) String() string { + if l, ok := labels_STORAGE_TYPE[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/development/enum_storage_usage_flag.go b/pkg/dialects/development/enum_storage_usage_flag.go new file mode 100644 index 000000000..d09600926 --- /dev/null +++ b/pkg/dialects/development/enum_storage_usage_flag.go @@ -0,0 +1,50 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package development + +import ( + "errors" +) + +// Flags to indicate usage for a particular storage (see STORAGE_INFORMATION.storage_usage and MAV_CMD_SET_STORAGE_USAGE). +type STORAGE_USAGE_FLAG int + +const ( + // Always set to 1 (indicates STORAGE_INFORMATION.storage_usage is supported). + STORAGE_USAGE_FLAG_SET STORAGE_USAGE_FLAG = 1 + // Storage for saving photos. + STORAGE_USAGE_FLAG_PHOTO STORAGE_USAGE_FLAG = 2 + // Storage for saving videos. + STORAGE_USAGE_FLAG_VIDEO STORAGE_USAGE_FLAG = 4 + // Storage for saving logs. + STORAGE_USAGE_FLAG_LOGS STORAGE_USAGE_FLAG = 8 +) + +var labels_STORAGE_USAGE_FLAG = map[STORAGE_USAGE_FLAG]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e STORAGE_USAGE_FLAG) MarshalText() ([]byte, error) { + if l, ok := labels_STORAGE_USAGE_FLAG[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_STORAGE_USAGE_FLAG = map[string]STORAGE_USAGE_FLAG{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *STORAGE_USAGE_FLAG) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_STORAGE_USAGE_FLAG[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e STORAGE_USAGE_FLAG) String() string { + if l, ok := labels_STORAGE_USAGE_FLAG[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/development/enum_tune_format.go b/pkg/dialects/development/enum_tune_format.go new file mode 100644 index 000000000..40cf0b0ba --- /dev/null +++ b/pkg/dialects/development/enum_tune_format.go @@ -0,0 +1,46 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package development + +import ( + "errors" +) + +// Tune formats (used for vehicle buzzer/tone generation). +type TUNE_FORMAT int + +const ( + // Format is QBasic 1.1 Play: https://www.qbasic.net/en/reference/qb11/Statement/PLAY-006.htm. + TUNE_FORMAT_QBASIC1_1 TUNE_FORMAT = 1 + // Format is Modern Music Markup Language (MML): https://en.wikipedia.org/wiki/Music_Macro_Language#Modern_MML. + TUNE_FORMAT_MML_MODERN TUNE_FORMAT = 2 +) + +var labels_TUNE_FORMAT = map[TUNE_FORMAT]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e TUNE_FORMAT) MarshalText() ([]byte, error) { + if l, ok := labels_TUNE_FORMAT[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_TUNE_FORMAT = map[string]TUNE_FORMAT{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *TUNE_FORMAT) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_TUNE_FORMAT[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e TUNE_FORMAT) String() string { + if l, ok := labels_TUNE_FORMAT[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/development/enum_uavcan_node_health.go b/pkg/dialects/development/enum_uavcan_node_health.go new file mode 100644 index 000000000..8b4c27aa1 --- /dev/null +++ b/pkg/dialects/development/enum_uavcan_node_health.go @@ -0,0 +1,50 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package development + +import ( + "errors" +) + +// Generalized UAVCAN node health +type UAVCAN_NODE_HEALTH int + +const ( + // The node is functioning properly. + UAVCAN_NODE_HEALTH_OK UAVCAN_NODE_HEALTH = 0 + // A critical parameter went out of range or the node has encountered a minor failure. + UAVCAN_NODE_HEALTH_WARNING UAVCAN_NODE_HEALTH = 1 + // The node has encountered a major failure. + UAVCAN_NODE_HEALTH_ERROR UAVCAN_NODE_HEALTH = 2 + // The node has suffered a fatal malfunction. + UAVCAN_NODE_HEALTH_CRITICAL UAVCAN_NODE_HEALTH = 3 +) + +var labels_UAVCAN_NODE_HEALTH = map[UAVCAN_NODE_HEALTH]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e UAVCAN_NODE_HEALTH) MarshalText() ([]byte, error) { + if l, ok := labels_UAVCAN_NODE_HEALTH[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_UAVCAN_NODE_HEALTH = map[string]UAVCAN_NODE_HEALTH{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *UAVCAN_NODE_HEALTH) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_UAVCAN_NODE_HEALTH[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e UAVCAN_NODE_HEALTH) String() string { + if l, ok := labels_UAVCAN_NODE_HEALTH[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/development/enum_uavcan_node_mode.go b/pkg/dialects/development/enum_uavcan_node_mode.go new file mode 100644 index 000000000..444befc5f --- /dev/null +++ b/pkg/dialects/development/enum_uavcan_node_mode.go @@ -0,0 +1,52 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package development + +import ( + "errors" +) + +// Generalized UAVCAN node mode +type UAVCAN_NODE_MODE int + +const ( + // The node is performing its primary functions. + UAVCAN_NODE_MODE_OPERATIONAL UAVCAN_NODE_MODE = 0 + // The node is initializing; this mode is entered immediately after startup. + UAVCAN_NODE_MODE_INITIALIZATION UAVCAN_NODE_MODE = 1 + // The node is under maintenance. + UAVCAN_NODE_MODE_MAINTENANCE UAVCAN_NODE_MODE = 2 + // The node is in the process of updating its software. + UAVCAN_NODE_MODE_SOFTWARE_UPDATE UAVCAN_NODE_MODE = 3 + // The node is no longer available online. + UAVCAN_NODE_MODE_OFFLINE UAVCAN_NODE_MODE = 7 +) + +var labels_UAVCAN_NODE_MODE = map[UAVCAN_NODE_MODE]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e UAVCAN_NODE_MODE) MarshalText() ([]byte, error) { + if l, ok := labels_UAVCAN_NODE_MODE[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_UAVCAN_NODE_MODE = map[string]UAVCAN_NODE_MODE{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *UAVCAN_NODE_MODE) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_UAVCAN_NODE_MODE[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e UAVCAN_NODE_MODE) String() string { + if l, ok := labels_UAVCAN_NODE_MODE[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/development/enum_utm_data_avail_flags.go b/pkg/dialects/development/enum_utm_data_avail_flags.go new file mode 100644 index 000000000..26286ab29 --- /dev/null +++ b/pkg/dialects/development/enum_utm_data_avail_flags.go @@ -0,0 +1,58 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package development + +import ( + "errors" +) + +// Flags for the global position report. +type UTM_DATA_AVAIL_FLAGS int + +const ( + // The field time contains valid data. + UTM_DATA_AVAIL_FLAGS_TIME_VALID UTM_DATA_AVAIL_FLAGS = 1 + // The field uas_id contains valid data. + UTM_DATA_AVAIL_FLAGS_UAS_ID_AVAILABLE UTM_DATA_AVAIL_FLAGS = 2 + // The fields lat, lon and h_acc contain valid data. + UTM_DATA_AVAIL_FLAGS_POSITION_AVAILABLE UTM_DATA_AVAIL_FLAGS = 4 + // The fields alt and v_acc contain valid data. + UTM_DATA_AVAIL_FLAGS_ALTITUDE_AVAILABLE UTM_DATA_AVAIL_FLAGS = 8 + // The field relative_alt contains valid data. + UTM_DATA_AVAIL_FLAGS_RELATIVE_ALTITUDE_AVAILABLE UTM_DATA_AVAIL_FLAGS = 16 + // The fields vx and vy contain valid data. + UTM_DATA_AVAIL_FLAGS_HORIZONTAL_VELO_AVAILABLE UTM_DATA_AVAIL_FLAGS = 32 + // The field vz contains valid data. + UTM_DATA_AVAIL_FLAGS_VERTICAL_VELO_AVAILABLE UTM_DATA_AVAIL_FLAGS = 64 + // The fields next_lat, next_lon and next_alt contain valid data. + UTM_DATA_AVAIL_FLAGS_NEXT_WAYPOINT_AVAILABLE UTM_DATA_AVAIL_FLAGS = 128 +) + +var labels_UTM_DATA_AVAIL_FLAGS = map[UTM_DATA_AVAIL_FLAGS]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e UTM_DATA_AVAIL_FLAGS) MarshalText() ([]byte, error) { + if l, ok := labels_UTM_DATA_AVAIL_FLAGS[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_UTM_DATA_AVAIL_FLAGS = map[string]UTM_DATA_AVAIL_FLAGS{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *UTM_DATA_AVAIL_FLAGS) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_UTM_DATA_AVAIL_FLAGS[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e UTM_DATA_AVAIL_FLAGS) String() string { + if l, ok := labels_UTM_DATA_AVAIL_FLAGS[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/development/enum_utm_flight_state.go b/pkg/dialects/development/enum_utm_flight_state.go new file mode 100644 index 000000000..36716a316 --- /dev/null +++ b/pkg/dialects/development/enum_utm_flight_state.go @@ -0,0 +1,52 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package development + +import ( + "errors" +) + +// Airborne status of UAS. +type UTM_FLIGHT_STATE int + +const ( + // The flight state can't be determined. + UTM_FLIGHT_STATE_UNKNOWN UTM_FLIGHT_STATE = 1 + // UAS on ground. + UTM_FLIGHT_STATE_GROUND UTM_FLIGHT_STATE = 2 + // UAS airborne. + UTM_FLIGHT_STATE_AIRBORNE UTM_FLIGHT_STATE = 3 + // UAS is in an emergency flight state. + UTM_FLIGHT_STATE_EMERGENCY UTM_FLIGHT_STATE = 16 + // UAS has no active controls. + UTM_FLIGHT_STATE_NOCTRL UTM_FLIGHT_STATE = 32 +) + +var labels_UTM_FLIGHT_STATE = map[UTM_FLIGHT_STATE]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e UTM_FLIGHT_STATE) MarshalText() ([]byte, error) { + if l, ok := labels_UTM_FLIGHT_STATE[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_UTM_FLIGHT_STATE = map[string]UTM_FLIGHT_STATE{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *UTM_FLIGHT_STATE) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_UTM_FLIGHT_STATE[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e UTM_FLIGHT_STATE) String() string { + if l, ok := labels_UTM_FLIGHT_STATE[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/development/enum_video_stream_status_flags.go b/pkg/dialects/development/enum_video_stream_status_flags.go new file mode 100644 index 000000000..6bc56b7c0 --- /dev/null +++ b/pkg/dialects/development/enum_video_stream_status_flags.go @@ -0,0 +1,46 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package development + +import ( + "errors" +) + +// Stream status flags (Bitmap) +type VIDEO_STREAM_STATUS_FLAGS int + +const ( + // Stream is active (running) + VIDEO_STREAM_STATUS_FLAGS_RUNNING VIDEO_STREAM_STATUS_FLAGS = 1 + // Stream is thermal imaging + VIDEO_STREAM_STATUS_FLAGS_THERMAL VIDEO_STREAM_STATUS_FLAGS = 2 +) + +var labels_VIDEO_STREAM_STATUS_FLAGS = map[VIDEO_STREAM_STATUS_FLAGS]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e VIDEO_STREAM_STATUS_FLAGS) MarshalText() ([]byte, error) { + if l, ok := labels_VIDEO_STREAM_STATUS_FLAGS[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_VIDEO_STREAM_STATUS_FLAGS = map[string]VIDEO_STREAM_STATUS_FLAGS{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *VIDEO_STREAM_STATUS_FLAGS) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_VIDEO_STREAM_STATUS_FLAGS[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e VIDEO_STREAM_STATUS_FLAGS) String() string { + if l, ok := labels_VIDEO_STREAM_STATUS_FLAGS[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/development/enum_video_stream_type.go b/pkg/dialects/development/enum_video_stream_type.go new file mode 100644 index 000000000..fe96a8650 --- /dev/null +++ b/pkg/dialects/development/enum_video_stream_type.go @@ -0,0 +1,50 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package development + +import ( + "errors" +) + +// Video stream types +type VIDEO_STREAM_TYPE int + +const ( + // Stream is RTSP + VIDEO_STREAM_TYPE_RTSP VIDEO_STREAM_TYPE = 0 + // Stream is RTP UDP (URI gives the port number) + VIDEO_STREAM_TYPE_RTPUDP VIDEO_STREAM_TYPE = 1 + // Stream is MPEG on TCP + VIDEO_STREAM_TYPE_TCP_MPEG VIDEO_STREAM_TYPE = 2 + // Stream is h.264 on MPEG TS (URI gives the port number) + VIDEO_STREAM_TYPE_MPEG_TS_H264 VIDEO_STREAM_TYPE = 3 +) + +var labels_VIDEO_STREAM_TYPE = map[VIDEO_STREAM_TYPE]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e VIDEO_STREAM_TYPE) MarshalText() ([]byte, error) { + if l, ok := labels_VIDEO_STREAM_TYPE[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_VIDEO_STREAM_TYPE = map[string]VIDEO_STREAM_TYPE{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *VIDEO_STREAM_TYPE) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_VIDEO_STREAM_TYPE[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e VIDEO_STREAM_TYPE) String() string { + if l, ok := labels_VIDEO_STREAM_TYPE[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/development/enum_vtol_transition_heading.go b/pkg/dialects/development/enum_vtol_transition_heading.go new file mode 100644 index 000000000..ace0503b6 --- /dev/null +++ b/pkg/dialects/development/enum_vtol_transition_heading.go @@ -0,0 +1,52 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package development + +import ( + "errors" +) + +// Direction of VTOL transition +type VTOL_TRANSITION_HEADING int + +const ( + // Respect the heading configuration of the vehicle. + VTOL_TRANSITION_HEADING_VEHICLE_DEFAULT VTOL_TRANSITION_HEADING = 0 + // Use the heading pointing towards the next waypoint. + VTOL_TRANSITION_HEADING_NEXT_WAYPOINT VTOL_TRANSITION_HEADING = 1 + // Use the heading on takeoff (while sitting on the ground). + VTOL_TRANSITION_HEADING_TAKEOFF VTOL_TRANSITION_HEADING = 2 + // Use the specified heading in parameter 4. + VTOL_TRANSITION_HEADING_SPECIFIED VTOL_TRANSITION_HEADING = 3 + // Use the current heading when reaching takeoff altitude (potentially facing the wind when weather-vaning is active). + VTOL_TRANSITION_HEADING_ANY VTOL_TRANSITION_HEADING = 4 +) + +var labels_VTOL_TRANSITION_HEADING = map[VTOL_TRANSITION_HEADING]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e VTOL_TRANSITION_HEADING) MarshalText() ([]byte, error) { + if l, ok := labels_VTOL_TRANSITION_HEADING[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_VTOL_TRANSITION_HEADING = map[string]VTOL_TRANSITION_HEADING{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *VTOL_TRANSITION_HEADING) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_VTOL_TRANSITION_HEADING[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e VTOL_TRANSITION_HEADING) String() string { + if l, ok := labels_VTOL_TRANSITION_HEADING[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/development/enum_wifi_config_ap_mode.go b/pkg/dialects/development/enum_wifi_config_ap_mode.go new file mode 100644 index 000000000..0954bc328 --- /dev/null +++ b/pkg/dialects/development/enum_wifi_config_ap_mode.go @@ -0,0 +1,50 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package development + +import ( + "errors" +) + +// WiFi Mode. +type WIFI_CONFIG_AP_MODE int + +const ( + // WiFi mode is undefined. + WIFI_CONFIG_AP_MODE_UNDEFINED WIFI_CONFIG_AP_MODE = 0 + // WiFi configured as an access point. + WIFI_CONFIG_AP_MODE_AP WIFI_CONFIG_AP_MODE = 1 + // WiFi configured as a station connected to an existing local WiFi network. + WIFI_CONFIG_AP_MODE_STATION WIFI_CONFIG_AP_MODE = 2 + // WiFi disabled. + WIFI_CONFIG_AP_MODE_DISABLED WIFI_CONFIG_AP_MODE = 3 +) + +var labels_WIFI_CONFIG_AP_MODE = map[WIFI_CONFIG_AP_MODE]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e WIFI_CONFIG_AP_MODE) MarshalText() ([]byte, error) { + if l, ok := labels_WIFI_CONFIG_AP_MODE[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_WIFI_CONFIG_AP_MODE = map[string]WIFI_CONFIG_AP_MODE{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *WIFI_CONFIG_AP_MODE) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_WIFI_CONFIG_AP_MODE[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e WIFI_CONFIG_AP_MODE) String() string { + if l, ok := labels_WIFI_CONFIG_AP_MODE[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/development/enum_wifi_config_ap_response.go b/pkg/dialects/development/enum_wifi_config_ap_response.go new file mode 100644 index 000000000..4c1a40dad --- /dev/null +++ b/pkg/dialects/development/enum_wifi_config_ap_response.go @@ -0,0 +1,54 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package development + +import ( + "errors" +) + +// Possible responses from a WIFI_CONFIG_AP message. +type WIFI_CONFIG_AP_RESPONSE int + +const ( + // Undefined response. Likely an indicative of a system that doesn't support this request. + WIFI_CONFIG_AP_RESPONSE_UNDEFINED WIFI_CONFIG_AP_RESPONSE = 0 + // Changes accepted. + WIFI_CONFIG_AP_RESPONSE_ACCEPTED WIFI_CONFIG_AP_RESPONSE = 1 + // Changes rejected. + WIFI_CONFIG_AP_RESPONSE_REJECTED WIFI_CONFIG_AP_RESPONSE = 2 + // Invalid Mode. + WIFI_CONFIG_AP_RESPONSE_MODE_ERROR WIFI_CONFIG_AP_RESPONSE = 3 + // Invalid SSID. + WIFI_CONFIG_AP_RESPONSE_SSID_ERROR WIFI_CONFIG_AP_RESPONSE = 4 + // Invalid Password. + WIFI_CONFIG_AP_RESPONSE_PASSWORD_ERROR WIFI_CONFIG_AP_RESPONSE = 5 +) + +var labels_WIFI_CONFIG_AP_RESPONSE = map[WIFI_CONFIG_AP_RESPONSE]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e WIFI_CONFIG_AP_RESPONSE) MarshalText() ([]byte, error) { + if l, ok := labels_WIFI_CONFIG_AP_RESPONSE[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_WIFI_CONFIG_AP_RESPONSE = map[string]WIFI_CONFIG_AP_RESPONSE{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *WIFI_CONFIG_AP_RESPONSE) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_WIFI_CONFIG_AP_RESPONSE[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e WIFI_CONFIG_AP_RESPONSE) String() string { + if l, ok := labels_WIFI_CONFIG_AP_RESPONSE[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/development/enum_wifi_network_security.go b/pkg/dialects/development/enum_wifi_network_security.go new file mode 100644 index 000000000..92842a05e --- /dev/null +++ b/pkg/dialects/development/enum_wifi_network_security.go @@ -0,0 +1,54 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package development + +import ( + "errors" +) + +// WiFi wireless security protocols. +type WIFI_NETWORK_SECURITY int + +const ( + // Undefined or unknown security protocol. + WIFI_NETWORK_SECURITY_UNDEFINED WIFI_NETWORK_SECURITY = 0 + // Open network, no security. + WIFI_NETWORK_SECURITY_OPEN WIFI_NETWORK_SECURITY = 1 + // WEP. + WIFI_NETWORK_SECURITY_WEP WIFI_NETWORK_SECURITY = 2 + // WPA1. + WIFI_NETWORK_SECURITY_WPA1 WIFI_NETWORK_SECURITY = 3 + // WPA2. + WIFI_NETWORK_SECURITY_WPA2 WIFI_NETWORK_SECURITY = 4 + // WPA3. + WIFI_NETWORK_SECURITY_WPA3 WIFI_NETWORK_SECURITY = 5 +) + +var labels_WIFI_NETWORK_SECURITY = map[WIFI_NETWORK_SECURITY]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e WIFI_NETWORK_SECURITY) MarshalText() ([]byte, error) { + if l, ok := labels_WIFI_NETWORK_SECURITY[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_WIFI_NETWORK_SECURITY = map[string]WIFI_NETWORK_SECURITY{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *WIFI_NETWORK_SECURITY) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_WIFI_NETWORK_SECURITY[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e WIFI_NETWORK_SECURITY) String() string { + if l, ok := labels_WIFI_NETWORK_SECURITY[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/development/enum_winch_actions.go b/pkg/dialects/development/enum_winch_actions.go new file mode 100644 index 000000000..8f5f31c4b --- /dev/null +++ b/pkg/dialects/development/enum_winch_actions.go @@ -0,0 +1,60 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package development + +import ( + "errors" +) + +// Winch actions. +type WINCH_ACTIONS int + +const ( + // Allow motor to freewheel. + WINCH_RELAXED WINCH_ACTIONS = 0 + // Wind or unwind specified length of line, optionally using specified rate. + WINCH_RELATIVE_LENGTH_CONTROL WINCH_ACTIONS = 1 + // Wind or unwind line at specified rate. + WINCH_RATE_CONTROL WINCH_ACTIONS = 2 + // Perform the locking sequence to relieve motor while in the fully retracted position. Only action and instance command parameters are used, others are ignored. + WINCH_LOCK WINCH_ACTIONS = 3 + // Sequence of drop, slow down, touch down, reel up, lock. Only action and instance command parameters are used, others are ignored. + WINCH_DELIVER WINCH_ACTIONS = 4 + // Engage motor and hold current position. Only action and instance command parameters are used, others are ignored. + WINCH_HOLD WINCH_ACTIONS = 5 + // Return the reel to the fully retracted position. Only action and instance command parameters are used, others are ignored. + WINCH_RETRACT WINCH_ACTIONS = 6 + // Load the reel with line. The winch will calculate the total loaded length and stop when the tension exceeds a threshold. Only action and instance command parameters are used, others are ignored. + WINCH_LOAD_LINE WINCH_ACTIONS = 7 + // Spool out the entire length of the line. Only action and instance command parameters are used, others are ignored. + WINCH_ABANDON_LINE WINCH_ACTIONS = 8 +) + +var labels_WINCH_ACTIONS = map[WINCH_ACTIONS]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e WINCH_ACTIONS) MarshalText() ([]byte, error) { + if l, ok := labels_WINCH_ACTIONS[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_WINCH_ACTIONS = map[string]WINCH_ACTIONS{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *WINCH_ACTIONS) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_WINCH_ACTIONS[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e WINCH_ACTIONS) String() string { + if l, ok := labels_WINCH_ACTIONS[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/development/msg_actuator_control_target.go b/pkg/dialects/development/msg_actuator_control_target.go new file mode 100644 index 000000000..791743921 --- /dev/null +++ b/pkg/dialects/development/msg_actuator_control_target.go @@ -0,0 +1,18 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package development + +// Set the vehicle attitude and body angular rates. +type MessageActuatorControlTarget struct { + // Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. + TimeUsec uint64 + // Actuator group. The "_mlx" indicates this is a multi-instance message and a MAVLink parser should use this field to difference between instances. + GroupMlx uint8 + // Actuator controls. Normed to -1..+1 where 0 is neutral position. Throttle for single rotation direction motors is 0..1, negative range for reverse direction. Standard mapping for attitude controls (group 0): (index 0-7): roll, pitch, yaw, throttle, flaps, spoilers, airbrakes, landing gear. Load a pass-through mixer to repurpose them as generic outputs. + Controls [8]float32 +} + +// GetID implements the msg.Message interface. +func (*MessageActuatorControlTarget) GetID() uint32 { + return 140 +} diff --git a/pkg/dialects/development/msg_actuator_output_status.go b/pkg/dialects/development/msg_actuator_output_status.go new file mode 100644 index 000000000..8670fe63d --- /dev/null +++ b/pkg/dialects/development/msg_actuator_output_status.go @@ -0,0 +1,18 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package development + +// The raw values of the actuator outputs (e.g. on Pixhawk, from MAIN, AUX ports). This message supersedes SERVO_OUTPUT_RAW. +type MessageActuatorOutputStatus struct { + // Timestamp (since system boot). + TimeUsec uint64 + // Active outputs + Active uint32 + // Servo / motor output array values. Zero values indicate unused channels. + Actuator [32]float32 +} + +// GetID implements the msg.Message interface. +func (*MessageActuatorOutputStatus) GetID() uint32 { + return 375 +} diff --git a/pkg/dialects/development/msg_adsb_vehicle.go b/pkg/dialects/development/msg_adsb_vehicle.go new file mode 100644 index 000000000..9aa6bf972 --- /dev/null +++ b/pkg/dialects/development/msg_adsb_vehicle.go @@ -0,0 +1,38 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package development + +// The location and information of an ADSB vehicle +type MessageAdsbVehicle struct { + // ICAO address + IcaoAddress uint32 `mavname:"ICAO_address"` + // Latitude + Lat int32 + // Longitude + Lon int32 + // ADSB altitude type. + AltitudeType ADSB_ALTITUDE_TYPE `mavenum:"uint8"` + // Altitude(ASL) + Altitude int32 + // Course over ground + Heading uint16 + // The horizontal velocity + HorVelocity uint16 + // The vertical velocity. Positive is up + VerVelocity int16 + // The callsign, 8+null + Callsign string `mavlen:"9"` + // ADSB emitter type. + EmitterType ADSB_EMITTER_TYPE `mavenum:"uint8"` + // Time since last communication in seconds + Tslc uint8 + // Bitmap to indicate various statuses including valid data fields + Flags ADSB_FLAGS `mavenum:"uint16"` + // Squawk code + Squawk uint16 +} + +// GetID implements the msg.Message interface. +func (*MessageAdsbVehicle) GetID() uint32 { + return 246 +} diff --git a/pkg/dialects/development/msg_airspeed.go b/pkg/dialects/development/msg_airspeed.go new file mode 100644 index 000000000..149dec415 --- /dev/null +++ b/pkg/dialects/development/msg_airspeed.go @@ -0,0 +1,26 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package development + +// Airspeed information from a sensor. +type MessageAirspeed struct { + // Sensor ID. + Id uint8 + // Calibrated airspeed (CAS) if available, otherwise indicated airspeed (IAS). + Airspeed float32 + // Temperature. INT16_MAX for value unknown/not supplied. + Temperature int16 + // Differential pressure. NaN for value unknown/not supplied. + PressDiff float32 + // Static pressure. NaN for value unknown/not supplied. + PressStatic float32 + // Error/accuracy. NaN for value unknown/not supplied. + Error float32 + // Airspeed sensor type. NaN for value unknown/not supplied. Used to estimate accuracy (i.e. as an alternative to using the error field). + Type AIRSPEED_SENSOR_TYPE `mavenum:"uint8"` +} + +// GetID implements the msg.Message interface. +func (*MessageAirspeed) GetID() uint32 { + return 295 +} diff --git a/pkg/dialects/development/msg_ais_vessel.go b/pkg/dialects/development/msg_ais_vessel.go new file mode 100644 index 000000000..7b133c816 --- /dev/null +++ b/pkg/dialects/development/msg_ais_vessel.go @@ -0,0 +1,46 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package development + +// The location and information of an AIS vessel +type MessageAisVessel struct { + // Mobile Marine Service Identifier, 9 decimal digits + Mmsi uint32 `mavname:"MMSI"` + // Latitude + Lat int32 + // Longitude + Lon int32 + // Course over ground + Cog uint16 `mavname:"COG"` + // True heading + Heading uint16 + // Speed over ground + Velocity uint16 + // Turn rate + TurnRate int8 + // Navigational status + NavigationalStatus AIS_NAV_STATUS `mavenum:"uint8"` + // Type of vessels + Type AIS_TYPE `mavenum:"uint8"` + // Distance from lat/lon location to bow + DimensionBow uint16 + // Distance from lat/lon location to stern + DimensionStern uint16 + // Distance from lat/lon location to port side + DimensionPort uint8 + // Distance from lat/lon location to starboard side + DimensionStarboard uint8 + // The vessel callsign + Callsign string `mavlen:"7"` + // The vessel name + Name string `mavlen:"20"` + // Time since last communication in seconds + Tslc uint16 + // Bitmask to indicate various statuses including valid data fields + Flags AIS_FLAGS `mavenum:"uint16"` +} + +// GetID implements the msg.Message interface. +func (*MessageAisVessel) GetID() uint32 { + return 301 +} diff --git a/pkg/dialects/development/msg_altitude.go b/pkg/dialects/development/msg_altitude.go new file mode 100644 index 000000000..fe568ac76 --- /dev/null +++ b/pkg/dialects/development/msg_altitude.go @@ -0,0 +1,26 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package development + +// The current system altitude. +type MessageAltitude struct { + // Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. + TimeUsec uint64 + // This altitude measure is initialized on system boot and monotonic (it is never reset, but represents the local altitude change). The only guarantee on this field is that it will never be reset and is consistent within a flight. The recommended value for this field is the uncorrected barometric altitude at boot time. This altitude will also drift and vary between flights. + AltitudeMonotonic float32 + // This altitude measure is strictly above mean sea level and might be non-monotonic (it might reset on events like GPS lock or when a new QNH value is set). It should be the altitude to which global altitude waypoints are compared to. Note that it is *not* the GPS altitude, however, most GPS modules already output MSL by default and not the WGS84 altitude. + AltitudeAmsl float32 + // This is the local altitude in the local coordinate frame. It is not the altitude above home, but in reference to the coordinate origin (0, 0, 0). It is up-positive. + AltitudeLocal float32 + // This is the altitude above the home position. It resets on each change of the current home position. + AltitudeRelative float32 + // This is the altitude above terrain. It might be fed by a terrain database or an altimeter. Values smaller than -1000 should be interpreted as unknown. + AltitudeTerrain float32 + // This is not the altitude, but the clear space below the system according to the fused clearance estimate. It generally should max out at the maximum range of e.g. the laser altimeter. It is generally a moving target. A negative value indicates no measurement available. + BottomClearance float32 +} + +// GetID implements the msg.Message interface. +func (*MessageAltitude) GetID() uint32 { + return 141 +} diff --git a/pkg/dialects/development/msg_att_pos_mocap.go b/pkg/dialects/development/msg_att_pos_mocap.go new file mode 100644 index 000000000..c246818b5 --- /dev/null +++ b/pkg/dialects/development/msg_att_pos_mocap.go @@ -0,0 +1,24 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package development + +// Motion capture attitude and position +type MessageAttPosMocap struct { + // Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. + TimeUsec uint64 + // Attitude quaternion (w, x, y, z order, zero-rotation is 1, 0, 0, 0) + Q [4]float32 + // X position (NED) + X float32 + // Y position (NED) + Y float32 + // Z position (NED) + Z float32 + // Row-major representation of a pose 6x6 cross-covariance matrix upper right triangle (states: x, y, z, roll, pitch, yaw; first six entries are the first ROW, next five entries are the second ROW, etc.). If unknown, assign NaN value to first element in the array. + Covariance [21]float32 `mavext:"true"` +} + +// GetID implements the msg.Message interface. +func (*MessageAttPosMocap) GetID() uint32 { + return 138 +} diff --git a/pkg/dialects/development/msg_attitude.go b/pkg/dialects/development/msg_attitude.go new file mode 100644 index 000000000..b2a31cea6 --- /dev/null +++ b/pkg/dialects/development/msg_attitude.go @@ -0,0 +1,26 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package development + +// The attitude in the aeronautical frame (right-handed, Z-down, X-front, Y-right). +type MessageAttitude struct { + // Timestamp (time since system boot). + TimeBootMs uint32 + // Roll angle (-pi..+pi) + Roll float32 + // Pitch angle (-pi..+pi) + Pitch float32 + // Yaw angle (-pi..+pi) + Yaw float32 + // Roll angular speed + Rollspeed float32 + // Pitch angular speed + Pitchspeed float32 + // Yaw angular speed + Yawspeed float32 +} + +// GetID implements the msg.Message interface. +func (*MessageAttitude) GetID() uint32 { + return 30 +} diff --git a/pkg/dialects/development/msg_attitude_quaternion.go b/pkg/dialects/development/msg_attitude_quaternion.go new file mode 100644 index 000000000..36985a401 --- /dev/null +++ b/pkg/dialects/development/msg_attitude_quaternion.go @@ -0,0 +1,30 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package development + +// The attitude in the aeronautical frame (right-handed, Z-down, X-front, Y-right), expressed as quaternion. Quaternion order is w, x, y, z and a zero rotation would be expressed as (1 0 0 0). +type MessageAttitudeQuaternion struct { + // Timestamp (time since system boot). + TimeBootMs uint32 + // Quaternion component 1, w (1 in null-rotation) + Q1 float32 + // Quaternion component 2, x (0 in null-rotation) + Q2 float32 + // Quaternion component 3, y (0 in null-rotation) + Q3 float32 + // Quaternion component 4, z (0 in null-rotation) + Q4 float32 + // Roll angular speed + Rollspeed float32 + // Pitch angular speed + Pitchspeed float32 + // Yaw angular speed + Yawspeed float32 + // Rotation offset by which the attitude quaternion and angular speed vector should be rotated for user display (quaternion with [w, x, y, z] order, zero-rotation is [1, 0, 0, 0], send [0, 0, 0, 0] if field not supported). This field is intended for systems in which the reference attitude may change during flight. For example, tailsitters VTOLs rotate their reference attitude by 90 degrees between hover mode and fixed wing mode, thus repr_offset_q is equal to [1, 0, 0, 0] in hover mode and equal to [0.7071, 0, 0.7071, 0] in fixed wing mode. + ReprOffsetQ [4]float32 `mavext:"true"` +} + +// GetID implements the msg.Message interface. +func (*MessageAttitudeQuaternion) GetID() uint32 { + return 31 +} diff --git a/pkg/dialects/development/msg_attitude_quaternion_cov.go b/pkg/dialects/development/msg_attitude_quaternion_cov.go new file mode 100644 index 000000000..7dcb75bba --- /dev/null +++ b/pkg/dialects/development/msg_attitude_quaternion_cov.go @@ -0,0 +1,24 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package development + +// The attitude in the aeronautical frame (right-handed, Z-down, X-front, Y-right), expressed as quaternion. Quaternion order is w, x, y, z and a zero rotation would be expressed as (1 0 0 0). +type MessageAttitudeQuaternionCov struct { + // Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. + TimeUsec uint64 + // Quaternion components, w, x, y, z (1 0 0 0 is the null-rotation) + Q [4]float32 + // Roll angular speed + Rollspeed float32 + // Pitch angular speed + Pitchspeed float32 + // Yaw angular speed + Yawspeed float32 + // Row-major representation of a 3x3 attitude covariance matrix (states: roll, pitch, yaw; first three entries are the first ROW, next three entries are the second row, etc.). If unknown, assign NaN value to first element in the array. + Covariance [9]float32 +} + +// GetID implements the msg.Message interface. +func (*MessageAttitudeQuaternionCov) GetID() uint32 { + return 61 +} diff --git a/pkg/dialects/development/msg_attitude_target.go b/pkg/dialects/development/msg_attitude_target.go new file mode 100644 index 000000000..fa366c155 --- /dev/null +++ b/pkg/dialects/development/msg_attitude_target.go @@ -0,0 +1,26 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package development + +// Reports the current commanded attitude of the vehicle as specified by the autopilot. This should match the commands sent in a SET_ATTITUDE_TARGET message if the vehicle is being controlled this way. +type MessageAttitudeTarget struct { + // Timestamp (time since system boot). + TimeBootMs uint32 + // Bitmap to indicate which dimensions should be ignored by the vehicle. + TypeMask ATTITUDE_TARGET_TYPEMASK `mavenum:"uint8"` + // Attitude quaternion (w, x, y, z order, zero-rotation is 1, 0, 0, 0) + Q [4]float32 + // Body roll rate + BodyRollRate float32 + // Body pitch rate + BodyPitchRate float32 + // Body yaw rate + BodyYawRate float32 + // Collective thrust, normalized to 0 .. 1 (-1 .. 1 for vehicles capable of reverse trust) + Thrust float32 +} + +// GetID implements the msg.Message interface. +func (*MessageAttitudeTarget) GetID() uint32 { + return 83 +} diff --git a/pkg/dialects/development/msg_auth_key.go b/pkg/dialects/development/msg_auth_key.go new file mode 100644 index 000000000..ad6658646 --- /dev/null +++ b/pkg/dialects/development/msg_auth_key.go @@ -0,0 +1,14 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package development + +// Emit an encrypted signature / key identifying this system. PLEASE NOTE: This protocol has been kept simple, so transmitting the key requires an encrypted channel for true safety. +type MessageAuthKey struct { + // key + Key string `mavlen:"32"` +} + +// GetID implements the msg.Message interface. +func (*MessageAuthKey) GetID() uint32 { + return 7 +} diff --git a/pkg/dialects/development/msg_autopilot_state_for_gimbal_device.go b/pkg/dialects/development/msg_autopilot_state_for_gimbal_device.go new file mode 100644 index 000000000..4fe5b8f74 --- /dev/null +++ b/pkg/dialects/development/msg_autopilot_state_for_gimbal_device.go @@ -0,0 +1,36 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package development + +// Low level message containing autopilot state relevant for a gimbal device. This message is to be sent from the gimbal manager to the gimbal device component. The data of this message server for the gimbal's estimator corrections in particular horizon compensation, as well as the autopilot's control intention e.g. feed forward angular control in z-axis. +type MessageAutopilotStateForGimbalDevice struct { + // System ID + TargetSystem uint8 + // Component ID + TargetComponent uint8 + // Timestamp (time since system boot). + TimeBootUs uint64 + // Quaternion components of autopilot attitude: w, x, y, z (1 0 0 0 is the null-rotation, Hamilton convention). + Q [4]float32 + // Estimated delay of the attitude data. + QEstimatedDelayUs uint32 + // X Speed in NED (North, East, Down). + Vx float32 + // Y Speed in NED (North, East, Down). + Vy float32 + // Z Speed in NED (North, East, Down). + Vz float32 + // Estimated delay of the speed data. + VEstimatedDelayUs uint32 + // Feed forward Z component of angular velocity, positive is yawing to the right, NaN to be ignored. This is to indicate if the autopilot is actively yawing. + FeedForwardAngularVelocityZ float32 + // Bitmap indicating which estimator outputs are valid. + EstimatorStatus ESTIMATOR_STATUS_FLAGS `mavenum:"uint16"` + // The landed state. Is set to MAV_LANDED_STATE_UNDEFINED if landed state is unknown. + LandedState MAV_LANDED_STATE `mavenum:"uint8"` +} + +// GetID implements the msg.Message interface. +func (*MessageAutopilotStateForGimbalDevice) GetID() uint32 { + return 286 +} diff --git a/pkg/dialects/development/msg_autopilot_version.go b/pkg/dialects/development/msg_autopilot_version.go new file mode 100644 index 000000000..b4fae8c4d --- /dev/null +++ b/pkg/dialects/development/msg_autopilot_version.go @@ -0,0 +1,36 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package development + +// Version and capability of autopilot software. This should be emitted in response to a request with MAV_CMD_REQUEST_MESSAGE. +type MessageAutopilotVersion struct { + // Bitmap of capabilities + Capabilities MAV_PROTOCOL_CAPABILITY `mavenum:"uint64"` + // Firmware version number + FlightSwVersion uint32 + // Middleware version number + MiddlewareSwVersion uint32 + // Operating system version number + OsSwVersion uint32 + // HW / board version (last 8 bits should be silicon ID, if any). The first 16 bits of this field specify https://github.com/PX4/PX4-Bootloader/blob/master/board_types.txt + BoardVersion uint32 + // Custom version field, commonly the first 8 bytes of the git hash. This is not an unique identifier, but should allow to identify the commit using the main version number even for very large code bases. + FlightCustomVersion [8]uint8 + // Custom version field, commonly the first 8 bytes of the git hash. This is not an unique identifier, but should allow to identify the commit using the main version number even for very large code bases. + MiddlewareCustomVersion [8]uint8 + // Custom version field, commonly the first 8 bytes of the git hash. This is not an unique identifier, but should allow to identify the commit using the main version number even for very large code bases. + OsCustomVersion [8]uint8 + // ID of the board vendor + VendorId uint16 + // ID of the product + ProductId uint16 + // UID if provided by hardware (see uid2) + Uid uint64 + // UID if provided by hardware (supersedes the uid field. If this is non-zero, use this field, otherwise use uid) + Uid2 [18]uint8 `mavext:"true"` +} + +// GetID implements the msg.Message interface. +func (*MessageAutopilotVersion) GetID() uint32 { + return 148 +} diff --git a/pkg/dialects/development/msg_battery_status.go b/pkg/dialects/development/msg_battery_status.go new file mode 100644 index 000000000..4a8f135a0 --- /dev/null +++ b/pkg/dialects/development/msg_battery_status.go @@ -0,0 +1,40 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package development + +// Battery information. Updates GCS with flight controller battery status. Smart batteries also use this message, but may additionally send SMART_BATTERY_INFO. +type MessageBatteryStatus struct { + // Battery ID + Id uint8 + // Function of the battery + BatteryFunction MAV_BATTERY_FUNCTION `mavenum:"uint8"` + // Type (chemistry) of the battery + Type MAV_BATTERY_TYPE `mavenum:"uint8"` + // Temperature of the battery. INT16_MAX for unknown temperature. + Temperature int16 + // Battery voltage of cells 1 to 10 (see voltages_ext for cells 11-14). Cells in this field above the valid cell count for this battery should have the UINT16_MAX value. If individual cell voltages are unknown or not measured for this battery, then the overall battery voltage should be filled in cell 0, with all others set to UINT16_MAX. If the voltage of the battery is greater than (UINT16_MAX - 1), then cell 0 should be set to (UINT16_MAX - 1), and cell 1 to the remaining voltage. This can be extended to multiple cells if the total voltage is greater than 2 * (UINT16_MAX - 1). + Voltages [10]uint16 + // Battery current, -1: autopilot does not measure the current + CurrentBattery int16 + // Consumed charge, -1: autopilot does not provide consumption estimate + CurrentConsumed int32 + // Consumed energy, -1: autopilot does not provide energy consumption estimate + EnergyConsumed int32 + // Remaining battery energy. Values: [0-100], -1: autopilot does not estimate the remaining battery. + BatteryRemaining int8 + // Remaining battery time, 0: autopilot does not provide remaining battery time estimate + TimeRemaining int32 `mavext:"true"` + // State for extent of discharge, provided by autopilot for warning or external reactions + ChargeState MAV_BATTERY_CHARGE_STATE `mavenum:"uint8" mavext:"true"` + // Battery voltages for cells 11 to 14. Cells above the valid cell count for this battery should have a value of 0, where zero indicates not supported (note, this is different than for the voltages field and allows empty byte truncation). If the measured value is 0 then 1 should be sent instead. + VoltagesExt [4]uint16 `mavext:"true"` + // Battery mode. Default (0) is that battery mode reporting is not supported or battery is in normal-use mode. + Mode MAV_BATTERY_MODE `mavenum:"uint8" mavext:"true"` + // Fault/health indications. These should be set when charge_state is MAV_BATTERY_CHARGE_STATE_FAILED or MAV_BATTERY_CHARGE_STATE_UNHEALTHY (if not, fault reporting is not supported). + FaultBitmask MAV_BATTERY_FAULT `mavenum:"uint32" mavext:"true"` +} + +// GetID implements the msg.Message interface. +func (*MessageBatteryStatus) GetID() uint32 { + return 147 +} diff --git a/pkg/dialects/development/msg_button_change.go b/pkg/dialects/development/msg_button_change.go new file mode 100644 index 000000000..8228a32c9 --- /dev/null +++ b/pkg/dialects/development/msg_button_change.go @@ -0,0 +1,18 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package development + +// Report button state change. +type MessageButtonChange struct { + // Timestamp (time since system boot). + TimeBootMs uint32 + // Time of last change of button state. + LastChangeMs uint32 + // Bitmap for state of buttons. + State uint8 +} + +// GetID implements the msg.Message interface. +func (*MessageButtonChange) GetID() uint32 { + return 257 +} diff --git a/pkg/dialects/development/msg_camera_capture_status.go b/pkg/dialects/development/msg_camera_capture_status.go new file mode 100644 index 000000000..70680db6f --- /dev/null +++ b/pkg/dialects/development/msg_camera_capture_status.go @@ -0,0 +1,26 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package development + +// Information about the status of a capture. Can be requested with a MAV_CMD_REQUEST_MESSAGE command. +type MessageCameraCaptureStatus struct { + // Timestamp (time since system boot). + TimeBootMs uint32 + // Current status of image capturing (0: idle, 1: capture in progress, 2: interval set but idle, 3: interval set and capture in progress) + ImageStatus uint8 + // Current status of video capturing (0: idle, 1: capture in progress) + VideoStatus uint8 + // Image capture interval + ImageInterval float32 + // Elapsed time since recording started (0: Not supported/available). A GCS should compute recording time and use non-zero values of this field to correct any discrepancy. + RecordingTimeMs uint32 + // Available storage capacity. + AvailableCapacity float32 + // Total number of images captured ('forever', or until reset using MAV_CMD_STORAGE_FORMAT). + ImageCount int32 `mavext:"true"` +} + +// GetID implements the msg.Message interface. +func (*MessageCameraCaptureStatus) GetID() uint32 { + return 262 +} diff --git a/pkg/dialects/development/msg_camera_fov_status.go b/pkg/dialects/development/msg_camera_fov_status.go new file mode 100644 index 000000000..68b3c10b0 --- /dev/null +++ b/pkg/dialects/development/msg_camera_fov_status.go @@ -0,0 +1,32 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package development + +// Information about the field of view of a camera. Can be requested with a MAV_CMD_REQUEST_MESSAGE command. +type MessageCameraFovStatus struct { + // Timestamp (time since system boot). + TimeBootMs uint32 + // Latitude of camera (INT32_MAX if unknown). + LatCamera int32 + // Longitude of camera (INT32_MAX if unknown). + LonCamera int32 + // Altitude (MSL) of camera (INT32_MAX if unknown). + AltCamera int32 + // Latitude of center of image (INT32_MAX if unknown, INT32_MIN if at infinity, not intersecting with horizon). + LatImage int32 + // Longitude of center of image (INT32_MAX if unknown, INT32_MIN if at infinity, not intersecting with horizon). + LonImage int32 + // Altitude (MSL) of center of image (INT32_MAX if unknown, INT32_MIN if at infinity, not intersecting with horizon). + AltImage int32 + // Quaternion of camera orientation (w, x, y, z order, zero-rotation is 1, 0, 0, 0) + Q [4]float32 + // Horizontal field of view (NaN if unknown). + Hfov float32 + // Vertical field of view (NaN if unknown). + Vfov float32 +} + +// GetID implements the msg.Message interface. +func (*MessageCameraFovStatus) GetID() uint32 { + return 271 +} diff --git a/pkg/dialects/development/msg_camera_image_captured.go b/pkg/dialects/development/msg_camera_image_captured.go new file mode 100644 index 000000000..356b168fe --- /dev/null +++ b/pkg/dialects/development/msg_camera_image_captured.go @@ -0,0 +1,40 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package development + +// Information about a captured image. This is emitted every time a message is captured. +// MAV_CMD_REQUEST_MESSAGE can be used to (re)request this message for a specific sequence number or range of sequence numbers: +// MAV_CMD_REQUEST_MESSAGE.param2 indicates the sequence number the first image to send, or set to -1 to send the message for all sequence numbers. +// MAV_CMD_REQUEST_MESSAGE.param3 is used to specify a range of messages to send: +// set to 0 (default) to send just the the message for the sequence number in param 2, +// set to -1 to send the message for the sequence number in param 2 and all the following sequence numbers, +// set to the sequence number of the final message in the range. +type MessageCameraImageCaptured struct { + // Timestamp (time since system boot). + TimeBootMs uint32 + // Timestamp (time since UNIX epoch) in UTC. 0 for unknown. + TimeUtc uint64 + // Deprecated/unused. Component IDs are used to differentiate multiple cameras. + CameraId uint8 + // Latitude where image was taken + Lat int32 + // Longitude where capture was taken + Lon int32 + // Altitude (MSL) where image was taken + Alt int32 + // Altitude above ground + RelativeAlt int32 + // Quaternion of camera orientation (w, x, y, z order, zero-rotation is 1, 0, 0, 0) + Q [4]float32 + // Zero based index of this image (i.e. a new image will have index CAMERA_CAPTURE_STATUS.image count -1) + ImageIndex int32 + // Boolean indicating success (1) or failure (0) while capturing this image. + CaptureResult int8 + // URL of image taken. Either local storage or http://foo.jpg if camera provides an HTTP interface. + FileUrl string `mavlen:"205"` +} + +// GetID implements the msg.Message interface. +func (*MessageCameraImageCaptured) GetID() uint32 { + return 263 +} diff --git a/pkg/dialects/development/msg_camera_information.go b/pkg/dialects/development/msg_camera_information.go new file mode 100644 index 000000000..59b842ee2 --- /dev/null +++ b/pkg/dialects/development/msg_camera_information.go @@ -0,0 +1,38 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package development + +// Information about a camera. Can be requested with a MAV_CMD_REQUEST_MESSAGE command. +type MessageCameraInformation struct { + // Timestamp (time since system boot). + TimeBootMs uint32 + // Name of the camera vendor + VendorName [32]uint8 + // Name of the camera model + ModelName [32]uint8 + // Version of the camera firmware, encoded as: (Dev & 0xff) << 24 | (Patch & 0xff) << 16 | (Minor & 0xff) << 8 | (Major & 0xff) + FirmwareVersion uint32 + // Focal length + FocalLength float32 + // Image sensor size horizontal + SensorSizeH float32 + // Image sensor size vertical + SensorSizeV float32 + // Horizontal image resolution + ResolutionH uint16 + // Vertical image resolution + ResolutionV uint16 + // Reserved for a lens ID + LensId uint8 + // Bitmap of camera capability flags. + Flags CAMERA_CAP_FLAGS `mavenum:"uint32"` + // Camera definition version (iteration) + CamDefinitionVersion uint16 + // Camera definition URI (if any, otherwise only basic functions will be available). HTTP- (http://) and MAVLink FTP- (mavlinkftp://) formatted URIs are allowed (and both must be supported by any GCS that implements the Camera Protocol). The definition file may be xz compressed, which will be indicated by the file extension .xml.xz (a GCS that implements the protocol must support decompressing the file). + CamDefinitionUri string `mavlen:"140"` +} + +// GetID implements the msg.Message interface. +func (*MessageCameraInformation) GetID() uint32 { + return 259 +} diff --git a/pkg/dialects/development/msg_camera_settings.go b/pkg/dialects/development/msg_camera_settings.go new file mode 100644 index 000000000..054a99b2c --- /dev/null +++ b/pkg/dialects/development/msg_camera_settings.go @@ -0,0 +1,20 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package development + +// Settings of a camera. Can be requested with a MAV_CMD_REQUEST_MESSAGE command. +type MessageCameraSettings struct { + // Timestamp (time since system boot). + TimeBootMs uint32 + // Camera mode + ModeId CAMERA_MODE `mavenum:"uint8"` + // Current zoom level (0.0 to 100.0, NaN if not known) + Zoomlevel float32 `mavext:"true" mavname:"zoomLevel"` + // Current focus level (0.0 to 100.0, NaN if not known) + Focuslevel float32 `mavext:"true" mavname:"focusLevel"` +} + +// GetID implements the msg.Message interface. +func (*MessageCameraSettings) GetID() uint32 { + return 260 +} diff --git a/pkg/dialects/development/msg_camera_tracking_geo_status.go b/pkg/dialects/development/msg_camera_tracking_geo_status.go new file mode 100644 index 000000000..0ee2deee6 --- /dev/null +++ b/pkg/dialects/development/msg_camera_tracking_geo_status.go @@ -0,0 +1,38 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package development + +// Camera tracking status, sent while in active tracking. Use MAV_CMD_SET_MESSAGE_INTERVAL to define message interval. +type MessageCameraTrackingGeoStatus struct { + // Current tracking status + TrackingStatus CAMERA_TRACKING_STATUS_FLAGS `mavenum:"uint8"` + // Latitude of tracked object + Lat int32 + // Longitude of tracked object + Lon int32 + // Altitude of tracked object(AMSL, WGS84) + Alt float32 + // Horizontal accuracy. NAN if unknown + HAcc float32 + // Vertical accuracy. NAN if unknown + VAcc float32 + // North velocity of tracked object. NAN if unknown + VelN float32 + // East velocity of tracked object. NAN if unknown + VelE float32 + // Down velocity of tracked object. NAN if unknown + VelD float32 + // Velocity accuracy. NAN if unknown + VelAcc float32 + // Distance between camera and tracked object. NAN if unknown + Dist float32 + // Heading in radians, in NED. NAN if unknown + Hdg float32 + // Accuracy of heading, in NED. NAN if unknown + HdgAcc float32 +} + +// GetID implements the msg.Message interface. +func (*MessageCameraTrackingGeoStatus) GetID() uint32 { + return 276 +} diff --git a/pkg/dialects/development/msg_camera_tracking_image_status.go b/pkg/dialects/development/msg_camera_tracking_image_status.go new file mode 100644 index 000000000..a56d02b0c --- /dev/null +++ b/pkg/dialects/development/msg_camera_tracking_image_status.go @@ -0,0 +1,32 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package development + +// Camera tracking status, sent while in active tracking. Use MAV_CMD_SET_MESSAGE_INTERVAL to define message interval. +type MessageCameraTrackingImageStatus struct { + // Current tracking status + TrackingStatus CAMERA_TRACKING_STATUS_FLAGS `mavenum:"uint8"` + // Current tracking mode + TrackingMode CAMERA_TRACKING_MODE `mavenum:"uint8"` + // Defines location of target data + TargetData CAMERA_TRACKING_TARGET_DATA `mavenum:"uint8"` + // Current tracked point x value if CAMERA_TRACKING_MODE_POINT (normalized 0..1, 0 is left, 1 is right), NAN if unknown + PointX float32 + // Current tracked point y value if CAMERA_TRACKING_MODE_POINT (normalized 0..1, 0 is top, 1 is bottom), NAN if unknown + PointY float32 + // Current tracked radius if CAMERA_TRACKING_MODE_POINT (normalized 0..1, 0 is image left, 1 is image right), NAN if unknown + Radius float32 + // Current tracked rectangle top x value if CAMERA_TRACKING_MODE_RECTANGLE (normalized 0..1, 0 is left, 1 is right), NAN if unknown + RecTopX float32 + // Current tracked rectangle top y value if CAMERA_TRACKING_MODE_RECTANGLE (normalized 0..1, 0 is top, 1 is bottom), NAN if unknown + RecTopY float32 + // Current tracked rectangle bottom x value if CAMERA_TRACKING_MODE_RECTANGLE (normalized 0..1, 0 is left, 1 is right), NAN if unknown + RecBottomX float32 + // Current tracked rectangle bottom y value if CAMERA_TRACKING_MODE_RECTANGLE (normalized 0..1, 0 is top, 1 is bottom), NAN if unknown + RecBottomY float32 +} + +// GetID implements the msg.Message interface. +func (*MessageCameraTrackingImageStatus) GetID() uint32 { + return 275 +} diff --git a/pkg/dialects/development/msg_camera_trigger.go b/pkg/dialects/development/msg_camera_trigger.go new file mode 100644 index 000000000..216ce893a --- /dev/null +++ b/pkg/dialects/development/msg_camera_trigger.go @@ -0,0 +1,16 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package development + +// Camera-IMU triggering and synchronisation message. +type MessageCameraTrigger struct { + // Timestamp for image frame (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. + TimeUsec uint64 + // Image frame sequence + Seq uint32 +} + +// GetID implements the msg.Message interface. +func (*MessageCameraTrigger) GetID() uint32 { + return 112 +} diff --git a/pkg/dialects/development/msg_cellular_config.go b/pkg/dialects/development/msg_cellular_config.go new file mode 100644 index 000000000..32eaeb303 --- /dev/null +++ b/pkg/dialects/development/msg_cellular_config.go @@ -0,0 +1,30 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package development + +// Configure cellular modems. +// This message is re-emitted as an acknowledgement by the modem. +// The message may also be explicitly requested using MAV_CMD_REQUEST_MESSAGE. +type MessageCellularConfig struct { + // Enable/disable LTE. 0: setting unchanged, 1: disabled, 2: enabled. Current setting when sent back as a response. + EnableLte uint8 + // Enable/disable PIN on the SIM card. 0: setting unchanged, 1: disabled, 2: enabled. Current setting when sent back as a response. + EnablePin uint8 + // PIN sent to the SIM card. Blank when PIN is disabled. Empty when message is sent back as a response. + Pin string `mavlen:"16"` + // New PIN when changing the PIN. Blank to leave it unchanged. Empty when message is sent back as a response. + NewPin string `mavlen:"16"` + // Name of the cellular APN. Blank to leave it unchanged. Current APN when sent back as a response. + Apn string `mavlen:"32"` + // Required PUK code in case the user failed to authenticate 3 times with the PIN. Empty when message is sent back as a response. + Puk string `mavlen:"16"` + // Enable/disable roaming. 0: setting unchanged, 1: disabled, 2: enabled. Current setting when sent back as a response. + Roaming uint8 + // Message acceptance response (sent back to GS). + Response CELLULAR_CONFIG_RESPONSE `mavenum:"uint8"` +} + +// GetID implements the msg.Message interface. +func (*MessageCellularConfig) GetID() uint32 { + return 336 +} diff --git a/pkg/dialects/development/msg_cellular_status.go b/pkg/dialects/development/msg_cellular_status.go new file mode 100644 index 000000000..7d08369f0 --- /dev/null +++ b/pkg/dialects/development/msg_cellular_status.go @@ -0,0 +1,26 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package development + +// Report current used cellular network status +type MessageCellularStatus struct { + // Cellular modem status + Status CELLULAR_STATUS_FLAG `mavenum:"uint8"` + // Failure reason when status in in CELLUAR_STATUS_FAILED + FailureReason CELLULAR_NETWORK_FAILED_REASON `mavenum:"uint8"` + // Cellular network radio type: gsm, cdma, lte... + Type CELLULAR_NETWORK_RADIO_TYPE `mavenum:"uint8"` + // Signal quality in percent. If unknown, set to UINT8_MAX + Quality uint8 + // Mobile country code. If unknown, set to UINT16_MAX + Mcc uint16 + // Mobile network code. If unknown, set to UINT16_MAX + Mnc uint16 + // Location area code. If unknown, set to 0 + Lac uint16 +} + +// GetID implements the msg.Message interface. +func (*MessageCellularStatus) GetID() uint32 { + return 334 +} diff --git a/pkg/dialects/development/msg_change_operator_control.go b/pkg/dialects/development/msg_change_operator_control.go new file mode 100644 index 000000000..91709c948 --- /dev/null +++ b/pkg/dialects/development/msg_change_operator_control.go @@ -0,0 +1,20 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package development + +// Request to control this MAV +type MessageChangeOperatorControl struct { + // System the GCS requests control for + TargetSystem uint8 + // 0: request control of this MAV, 1: Release control of this MAV + ControlRequest uint8 + // 0: key as plaintext, 1-255: future, different hashing/encryption variants. The GCS should in general use the safest mode possible initially and then gradually move down the encryption level if it gets a NACK message indicating an encryption mismatch. + Version uint8 + // Password / Key, depending on version plaintext or encrypted. 25 or less characters, NULL terminated. The characters may involve A-Z, a-z, 0-9, and "!?,.-" + Passkey string `mavlen:"25"` +} + +// GetID implements the msg.Message interface. +func (*MessageChangeOperatorControl) GetID() uint32 { + return 5 +} diff --git a/pkg/dialects/development/msg_change_operator_control_ack.go b/pkg/dialects/development/msg_change_operator_control_ack.go new file mode 100644 index 000000000..8c1e619fd --- /dev/null +++ b/pkg/dialects/development/msg_change_operator_control_ack.go @@ -0,0 +1,18 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package development + +// Accept / deny control of this MAV +type MessageChangeOperatorControlAck struct { + // ID of the GCS this message + GcsSystemId uint8 + // 0: request control of this MAV, 1: Release control of this MAV + ControlRequest uint8 + // 0: ACK, 1: NACK: Wrong passkey, 2: NACK: Unsupported passkey encryption method, 3: NACK: Already under control + Ack uint8 +} + +// GetID implements the msg.Message interface. +func (*MessageChangeOperatorControlAck) GetID() uint32 { + return 6 +} diff --git a/pkg/dialects/development/msg_collision.go b/pkg/dialects/development/msg_collision.go new file mode 100644 index 000000000..5a4b00905 --- /dev/null +++ b/pkg/dialects/development/msg_collision.go @@ -0,0 +1,26 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package development + +// Information about a potential collision +type MessageCollision struct { + // Collision data source + Src MAV_COLLISION_SRC `mavenum:"uint8"` + // Unique identifier, domain based on src field + Id uint32 + // Action that is being taken to avoid this collision + Action MAV_COLLISION_ACTION `mavenum:"uint8"` + // How concerned the aircraft is about this collision + ThreatLevel MAV_COLLISION_THREAT_LEVEL `mavenum:"uint8"` + // Estimated time until collision occurs + TimeToMinimumDelta float32 + // Closest vertical distance between vehicle and object + AltitudeMinimumDelta float32 + // Closest horizontal distance between vehicle and object + HorizontalMinimumDelta float32 +} + +// GetID implements the msg.Message interface. +func (*MessageCollision) GetID() uint32 { + return 247 +} diff --git a/pkg/dialects/development/msg_command_ack.go b/pkg/dialects/development/msg_command_ack.go new file mode 100644 index 000000000..e7a8fb07e --- /dev/null +++ b/pkg/dialects/development/msg_command_ack.go @@ -0,0 +1,24 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package development + +// Report status of a command. Includes feedback whether the command was executed. The command microservice is documented at https://mavlink.io/en/services/command.html +type MessageCommandAck struct { + // Command ID (of acknowledged command). + Command MAV_CMD `mavenum:"uint16"` + // Result of command. + Result MAV_RESULT `mavenum:"uint8"` + // Also used as result_param1, it can be set with an enum containing the errors reasons of why the command was denied, or the progress percentage when result is MAV_RESULT_IN_PROGRESS (UINT8_MAX if the progress is unknown). + Progress uint8 `mavext:"true"` + // Additional parameter of the result, example: which parameter of MAV_CMD_NAV_WAYPOINT caused it to be denied. + ResultParam2 int32 `mavext:"true"` + // System ID of the target recipient. This is the ID of the system that sent the command for which this COMMAND_ACK is an acknowledgement. + TargetSystem uint8 `mavext:"true"` + // Component ID of the target recipient. This is the ID of the system that sent the command for which this COMMAND_ACK is an acknowledgement. + TargetComponent uint8 `mavext:"true"` +} + +// GetID implements the msg.Message interface. +func (*MessageCommandAck) GetID() uint32 { + return 77 +} diff --git a/pkg/dialects/development/msg_command_cancel.go b/pkg/dialects/development/msg_command_cancel.go new file mode 100644 index 000000000..079554391 --- /dev/null +++ b/pkg/dialects/development/msg_command_cancel.go @@ -0,0 +1,18 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package development + +// Cancel a long running command. The target system should respond with a COMMAND_ACK to the original command with result=MAV_RESULT_CANCELLED if the long running process was cancelled. If it has already completed, the cancel action can be ignored. The cancel action can be retried until some sort of acknowledgement to the original command has been received. The command microservice is documented at https://mavlink.io/en/services/command.html +type MessageCommandCancel struct { + // System executing long running command. Should not be broadcast (0). + TargetSystem uint8 + // Component executing long running command. + TargetComponent uint8 + // Command ID (of command to cancel). + Command MAV_CMD `mavenum:"uint16"` +} + +// GetID implements the msg.Message interface. +func (*MessageCommandCancel) GetID() uint32 { + return 80 +} diff --git a/pkg/dialects/development/msg_command_int.go b/pkg/dialects/development/msg_command_int.go new file mode 100644 index 000000000..e379c3d01 --- /dev/null +++ b/pkg/dialects/development/msg_command_int.go @@ -0,0 +1,38 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package development + +// Message encoding a command with parameters as scaled integers. Scaling depends on the actual command value. NaN or INT32_MAX may be used in float/integer params (respectively) to indicate optional/default values (e.g. to use the component's current latitude, yaw rather than a specific value). The command microservice is documented at https://mavlink.io/en/services/command.html +type MessageCommandInt struct { + // System ID + TargetSystem uint8 + // Component ID + TargetComponent uint8 + // The coordinate system of the COMMAND. + Frame MAV_FRAME `mavenum:"uint8"` + // The scheduled action for the mission item. + Command MAV_CMD `mavenum:"uint16"` + // Not used. + Current uint8 + // Not used (set 0). + Autocontinue uint8 + // PARAM1, see MAV_CMD enum + Param1 float32 + // PARAM2, see MAV_CMD enum + Param2 float32 + // PARAM3, see MAV_CMD enum + Param3 float32 + // PARAM4, see MAV_CMD enum + Param4 float32 + // PARAM5 / local: x position in meters * 1e4, global: latitude in degrees * 10^7 + X int32 + // PARAM6 / local: y position in meters * 1e4, global: longitude in degrees * 10^7 + Y int32 + // PARAM7 / z position: global: altitude in meters (relative or absolute, depending on frame). + Z float32 +} + +// GetID implements the msg.Message interface. +func (*MessageCommandInt) GetID() uint32 { + return 75 +} diff --git a/pkg/dialects/development/msg_command_long.go b/pkg/dialects/development/msg_command_long.go new file mode 100644 index 000000000..a2b105a6a --- /dev/null +++ b/pkg/dialects/development/msg_command_long.go @@ -0,0 +1,34 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package development + +// Send a command with up to seven parameters to the MAV. The command microservice is documented at https://mavlink.io/en/services/command.html +type MessageCommandLong struct { + // System which should execute the command + TargetSystem uint8 + // Component which should execute the command, 0 for all components + TargetComponent uint8 + // Command ID (of command to send). + Command MAV_CMD `mavenum:"uint16"` + // 0: First transmission of this command. 1-255: Confirmation transmissions (e.g. for kill command) + Confirmation uint8 + // Parameter 1 (for the specific command). + Param1 float32 + // Parameter 2 (for the specific command). + Param2 float32 + // Parameter 3 (for the specific command). + Param3 float32 + // Parameter 4 (for the specific command). + Param4 float32 + // Parameter 5 (for the specific command). + Param5 float32 + // Parameter 6 (for the specific command). + Param6 float32 + // Parameter 7 (for the specific command). + Param7 float32 +} + +// GetID implements the msg.Message interface. +func (*MessageCommandLong) GetID() uint32 { + return 76 +} diff --git a/pkg/dialects/development/msg_component_information.go b/pkg/dialects/development/msg_component_information.go new file mode 100644 index 000000000..21e7b382a --- /dev/null +++ b/pkg/dialects/development/msg_component_information.go @@ -0,0 +1,22 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package development + +// Information about a component. For camera components instead use CAMERA_INFORMATION, and for autopilots additionally use AUTOPILOT_VERSION. Components including GCSes should consider supporting requests of this message via MAV_CMD_REQUEST_MESSAGE. +type MessageComponentInformation struct { + // Timestamp (time since system boot). + TimeBootMs uint32 + // CRC32 of the TYPE_GENERAL file (can be used by a GCS for file caching). The general metadata file contains URLs to other files of different type according to COMP_METADATA_TYPE. + GeneralMetadataFileCrc uint32 + // Component definition URI for TYPE_GENERAL. This must be a MAVLink FTP URI and the file might be compressed with xz. + GeneralMetadataUri string `mavlen:"100"` + // CRC32 of the TYPE_PERIPHERALS file (can be used by a GCS for file caching). + PeripheralsMetadataFileCrc uint32 + // (Optional) Component definition URI for TYPE_PERIPHERALS. This must be a MAVLink FTP URI and the file might be compressed with xz. Peripherals are listed as a separate URL and not included in the general metadata file because it will likely be generated at runtime while the general (and other referenced files) might be generated at compile time. + PeripheralsMetadataUri string `mavlen:"100"` +} + +// GetID implements the msg.Message interface. +func (*MessageComponentInformation) GetID() uint32 { + return 395 +} diff --git a/pkg/dialects/development/msg_component_information_basic.go b/pkg/dialects/development/msg_component_information_basic.go new file mode 100644 index 000000000..16d194aa9 --- /dev/null +++ b/pkg/dialects/development/msg_component_information_basic.go @@ -0,0 +1,24 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package development + +// Basic component information data. +type MessageComponentInformationBasic struct { + // Timestamp (time since system boot). + TimeBootMs uint32 + // Name of the component vendor + VendorName [32]uint8 + // Name of the component model + ModelName [32]uint8 + // Sofware version. The version format can be custom, recommended is SEMVER 'major.minor.patch'. + SoftwareVersion string `mavlen:"24"` + // Hardware version. The version format can be custom, recommended is SEMVER 'major.minor.patch'. + HardwareVersion string `mavlen:"24"` + // Component capability flags + Capabilities MAV_PROTOCOL_CAPABILITY `mavenum:"uint64"` +} + +// GetID implements the msg.Message interface. +func (*MessageComponentInformationBasic) GetID() uint32 { + return 396 +} diff --git a/pkg/dialects/development/msg_control_system_state.go b/pkg/dialects/development/msg_control_system_state.go new file mode 100644 index 000000000..155e18af7 --- /dev/null +++ b/pkg/dialects/development/msg_control_system_state.go @@ -0,0 +1,46 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package development + +// The smoothed, monotonic system state used to feed the control loops of the system. +type MessageControlSystemState struct { + // Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. + TimeUsec uint64 + // X acceleration in body frame + XAcc float32 + // Y acceleration in body frame + YAcc float32 + // Z acceleration in body frame + ZAcc float32 + // X velocity in body frame + XVel float32 + // Y velocity in body frame + YVel float32 + // Z velocity in body frame + ZVel float32 + // X position in local frame + XPos float32 + // Y position in local frame + YPos float32 + // Z position in local frame + ZPos float32 + // Airspeed, set to -1 if unknown + Airspeed float32 + // Variance of body velocity estimate + VelVariance [3]float32 + // Variance in local position + PosVariance [3]float32 + // The attitude, represented as Quaternion + Q [4]float32 + // Angular rate in roll axis + RollRate float32 + // Angular rate in pitch axis + PitchRate float32 + // Angular rate in yaw axis + YawRate float32 +} + +// GetID implements the msg.Message interface. +func (*MessageControlSystemState) GetID() uint32 { + return 146 +} diff --git a/pkg/dialects/development/msg_current_event_sequence.go b/pkg/dialects/development/msg_current_event_sequence.go new file mode 100644 index 000000000..6cb236cd2 --- /dev/null +++ b/pkg/dialects/development/msg_current_event_sequence.go @@ -0,0 +1,16 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package development + +// Regular broadcast for the current latest event sequence number for a component. This is used to check for dropped events. +type MessageCurrentEventSequence struct { + // Sequence number. + Sequence uint16 + // Flag bitset. + Flags MAV_EVENT_CURRENT_SEQUENCE_FLAGS `mavenum:"uint8"` +} + +// GetID implements the msg.Message interface. +func (*MessageCurrentEventSequence) GetID() uint32 { + return 411 +} diff --git a/pkg/dialects/development/msg_data_stream.go b/pkg/dialects/development/msg_data_stream.go new file mode 100644 index 000000000..b4c3342cc --- /dev/null +++ b/pkg/dialects/development/msg_data_stream.go @@ -0,0 +1,18 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package development + +// Data stream status information. +type MessageDataStream struct { + // The ID of the requested data stream + StreamId uint8 + // The message rate + MessageRate uint16 + // 1 stream is enabled, 0 stream is stopped. + OnOff uint8 +} + +// GetID implements the msg.Message interface. +func (*MessageDataStream) GetID() uint32 { + return 67 +} diff --git a/pkg/dialects/development/msg_data_transmission_handshake.go b/pkg/dialects/development/msg_data_transmission_handshake.go new file mode 100644 index 000000000..489f97a3f --- /dev/null +++ b/pkg/dialects/development/msg_data_transmission_handshake.go @@ -0,0 +1,26 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package development + +// Handshake message to initiate, control and stop image streaming when using the Image Transmission Protocol: https://mavlink.io/en/services/image_transmission.html. +type MessageDataTransmissionHandshake struct { + // Type of requested/acknowledged data. + Type MAVLINK_DATA_STREAM_TYPE `mavenum:"uint8"` + // total data size (set on ACK only). + Size uint32 + // Width of a matrix or image. + Width uint16 + // Height of a matrix or image. + Height uint16 + // Number of packets being sent (set on ACK only). + Packets uint16 + // Payload size per packet (normally 253 byte, see DATA field size in message ENCAPSULATED_DATA) (set on ACK only). + Payload uint8 + // JPEG quality. Values: [1-100]. + JpgQuality uint8 +} + +// GetID implements the msg.Message interface. +func (*MessageDataTransmissionHandshake) GetID() uint32 { + return 130 +} diff --git a/pkg/dialects/development/msg_debug.go b/pkg/dialects/development/msg_debug.go new file mode 100644 index 000000000..d814d0aa2 --- /dev/null +++ b/pkg/dialects/development/msg_debug.go @@ -0,0 +1,18 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package development + +// Send a debug value. The index is used to discriminate between values. These values show up in the plot of QGroundControl as DEBUG N. +type MessageDebug struct { + // Timestamp (time since system boot). + TimeBootMs uint32 + // index of debug variable + Ind uint8 + // DEBUG value + Value float32 +} + +// GetID implements the msg.Message interface. +func (*MessageDebug) GetID() uint32 { + return 254 +} diff --git a/pkg/dialects/development/msg_debug_float_array.go b/pkg/dialects/development/msg_debug_float_array.go new file mode 100644 index 000000000..454366373 --- /dev/null +++ b/pkg/dialects/development/msg_debug_float_array.go @@ -0,0 +1,20 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package development + +// Large debug/prototyping array. The message uses the maximum available payload for data. The array_id and name fields are used to discriminate between messages in code and in user interfaces (respectively). Do not use in production code. +type MessageDebugFloatArray struct { + // Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. + TimeUsec uint64 + // Name, for human-friendly display in a Ground Control Station + Name string `mavlen:"10"` + // Unique ID used to discriminate between arrays + ArrayId uint16 + // data + Data [58]float32 `mavext:"true"` +} + +// GetID implements the msg.Message interface. +func (*MessageDebugFloatArray) GetID() uint32 { + return 350 +} diff --git a/pkg/dialects/development/msg_debug_vect.go b/pkg/dialects/development/msg_debug_vect.go new file mode 100644 index 000000000..5a5c1a994 --- /dev/null +++ b/pkg/dialects/development/msg_debug_vect.go @@ -0,0 +1,22 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package development + +// To debug something using a named 3D vector. +type MessageDebugVect struct { + // Name + Name string `mavlen:"10"` + // Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. + TimeUsec uint64 + // x + X float32 + // y + Y float32 + // z + Z float32 +} + +// GetID implements the msg.Message interface. +func (*MessageDebugVect) GetID() uint32 { + return 250 +} diff --git a/pkg/dialects/development/msg_distance_sensor.go b/pkg/dialects/development/msg_distance_sensor.go new file mode 100644 index 000000000..1b376fde7 --- /dev/null +++ b/pkg/dialects/development/msg_distance_sensor.go @@ -0,0 +1,36 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package development + +// Distance sensor information for an onboard rangefinder. +type MessageDistanceSensor struct { + // Timestamp (time since system boot). + TimeBootMs uint32 + // Minimum distance the sensor can measure + MinDistance uint16 + // Maximum distance the sensor can measure + MaxDistance uint16 + // Current distance reading + CurrentDistance uint16 + // Type of distance sensor. + Type MAV_DISTANCE_SENSOR `mavenum:"uint8"` + // Onboard ID of the sensor + Id uint8 + // Direction the sensor faces. downward-facing: ROTATION_PITCH_270, upward-facing: ROTATION_PITCH_90, backward-facing: ROTATION_PITCH_180, forward-facing: ROTATION_NONE, left-facing: ROTATION_YAW_90, right-facing: ROTATION_YAW_270 + Orientation MAV_SENSOR_ORIENTATION `mavenum:"uint8"` + // Measurement variance. Max standard deviation is 6cm. UINT8_MAX if unknown. + Covariance uint8 + // Horizontal Field of View (angle) where the distance measurement is valid and the field of view is known. Otherwise this is set to 0. + HorizontalFov float32 `mavext:"true"` + // Vertical Field of View (angle) where the distance measurement is valid and the field of view is known. Otherwise this is set to 0. + VerticalFov float32 `mavext:"true"` + // Quaternion of the sensor orientation in vehicle body frame (w, x, y, z order, zero-rotation is 1, 0, 0, 0). Zero-rotation is along the vehicle body x-axis. This field is required if the orientation is set to MAV_SENSOR_ROTATION_CUSTOM. Set it to 0 if invalid." + Quaternion [4]float32 `mavext:"true"` + // Signal quality of the sensor. Specific to each sensor type, representing the relation of the signal strength with the target reflectivity, distance, size or aspect, but normalised as a percentage. 0 = unknown/unset signal quality, 1 = invalid signal, 100 = perfect signal. + SignalQuality uint8 `mavext:"true"` +} + +// GetID implements the msg.Message interface. +func (*MessageDistanceSensor) GetID() uint32 { + return 132 +} diff --git a/pkg/dialects/development/msg_efi_status.go b/pkg/dialects/development/msg_efi_status.go new file mode 100644 index 000000000..b5116e65b --- /dev/null +++ b/pkg/dialects/development/msg_efi_status.go @@ -0,0 +1,46 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package development + +// EFI status output +type MessageEfiStatus struct { + // EFI health status + Health uint8 + // ECU index + EcuIndex float32 + // RPM + Rpm float32 + // Fuel consumed + FuelConsumed float32 + // Fuel flow rate + FuelFlow float32 + // Engine load + EngineLoad float32 + // Throttle position + ThrottlePosition float32 + // Spark dwell time + SparkDwellTime float32 + // Barometric pressure + BarometricPressure float32 + // Intake manifold pressure( + IntakeManifoldPressure float32 + // Intake manifold temperature + IntakeManifoldTemperature float32 + // Cylinder head temperature + CylinderHeadTemperature float32 + // Ignition timing (Crank angle degrees) + IgnitionTiming float32 + // Injection time + InjectionTime float32 + // Exhaust gas temperature + ExhaustGasTemperature float32 + // Output throttle + ThrottleOut float32 + // Pressure/temperature compensation + PtCompensation float32 +} + +// GetID implements the msg.Message interface. +func (*MessageEfiStatus) GetID() uint32 { + return 225 +} diff --git a/pkg/dialects/development/msg_encapsulated_data.go b/pkg/dialects/development/msg_encapsulated_data.go new file mode 100644 index 000000000..d5ac06d4d --- /dev/null +++ b/pkg/dialects/development/msg_encapsulated_data.go @@ -0,0 +1,16 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package development + +// Data packet for images sent using the Image Transmission Protocol: https://mavlink.io/en/services/image_transmission.html. +type MessageEncapsulatedData struct { + // sequence number (starting with 0 on every transmission) + Seqnr uint16 + // image data bytes + Data [253]uint8 +} + +// GetID implements the msg.Message interface. +func (*MessageEncapsulatedData) GetID() uint32 { + return 131 +} diff --git a/pkg/dialects/development/msg_esc_info.go b/pkg/dialects/development/msg_esc_info.go new file mode 100644 index 000000000..47e8a6753 --- /dev/null +++ b/pkg/dialects/development/msg_esc_info.go @@ -0,0 +1,30 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package development + +// ESC information for lower rate streaming. Recommended streaming rate 1Hz. See ESC_STATUS for higher-rate ESC data. +type MessageEscInfo struct { + // Index of the first ESC in this message. minValue = 0, maxValue = 60, increment = 4. + Index uint8 + // Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude the number. + TimeUsec uint64 + // Counter of data packets received. + Counter uint16 + // Total number of ESCs in all messages of this type. Message fields with an index higher than this should be ignored because they contain invalid data. + Count uint8 + // Connection type protocol for all ESC. + ConnectionType ESC_CONNECTION_TYPE `mavenum:"uint8"` + // Information regarding online/offline status of each ESC. + Info uint8 + // Bitmap of ESC failure flags. + FailureFlags [4]ESC_FAILURE_FLAGS `mavenum:"uint16"` + // Number of reported errors by each ESC since boot. + ErrorCount [4]uint32 + // Temperature of each ESC. INT16_MAX: if data not supplied by ESC. + Temperature [4]int16 +} + +// GetID implements the msg.Message interface. +func (*MessageEscInfo) GetID() uint32 { + return 290 +} diff --git a/pkg/dialects/development/msg_esc_status.go b/pkg/dialects/development/msg_esc_status.go new file mode 100644 index 000000000..82dff4c31 --- /dev/null +++ b/pkg/dialects/development/msg_esc_status.go @@ -0,0 +1,22 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package development + +// ESC information for higher rate streaming. Recommended streaming rate is ~10 Hz. Information that changes more slowly is sent in ESC_INFO. It should typically only be streamed on high-bandwidth links (i.e. to a companion computer). +type MessageEscStatus struct { + // Index of the first ESC in this message. minValue = 0, maxValue = 60, increment = 4. + Index uint8 + // Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude the number. + TimeUsec uint64 + // Reported motor RPM from each ESC (negative for reverse rotation). + Rpm [4]int32 + // Voltage measured from each ESC. + Voltage [4]float32 + // Current measured from each ESC. + Current [4]float32 +} + +// GetID implements the msg.Message interface. +func (*MessageEscStatus) GetID() uint32 { + return 291 +} diff --git a/pkg/dialects/development/msg_estimator_status.go b/pkg/dialects/development/msg_estimator_status.go new file mode 100644 index 000000000..1da186da2 --- /dev/null +++ b/pkg/dialects/development/msg_estimator_status.go @@ -0,0 +1,32 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package development + +// Estimator status message including flags, innovation test ratios and estimated accuracies. The flags message is an integer bitmask containing information on which EKF outputs are valid. See the ESTIMATOR_STATUS_FLAGS enum definition for further information. The innovation test ratios show the magnitude of the sensor innovation divided by the innovation check threshold. Under normal operation the innovation test ratios should be below 0.5 with occasional values up to 1.0. Values greater than 1.0 should be rare under normal operation and indicate that a measurement has been rejected by the filter. The user should be notified if an innovation test ratio greater than 1.0 is recorded. Notifications for values in the range between 0.5 and 1.0 should be optional and controllable by the user. +type MessageEstimatorStatus struct { + // Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. + TimeUsec uint64 + // Bitmap indicating which EKF outputs are valid. + Flags ESTIMATOR_STATUS_FLAGS `mavenum:"uint16"` + // Velocity innovation test ratio + VelRatio float32 + // Horizontal position innovation test ratio + PosHorizRatio float32 + // Vertical position innovation test ratio + PosVertRatio float32 + // Magnetometer innovation test ratio + MagRatio float32 + // Height above terrain innovation test ratio + HaglRatio float32 + // True airspeed innovation test ratio + TasRatio float32 + // Horizontal position 1-STD accuracy relative to the EKF local origin + PosHorizAccuracy float32 + // Vertical position 1-STD accuracy relative to the EKF local origin + PosVertAccuracy float32 +} + +// GetID implements the msg.Message interface. +func (*MessageEstimatorStatus) GetID() uint32 { + return 230 +} diff --git a/pkg/dialects/development/msg_event.go b/pkg/dialects/development/msg_event.go new file mode 100644 index 000000000..dc94d8aa6 --- /dev/null +++ b/pkg/dialects/development/msg_event.go @@ -0,0 +1,26 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package development + +// Event message. Each new event from a particular component gets a new sequence number. The same message might be sent multiple times if (re-)requested. Most events are broadcast, some can be specific to a target component (as receivers keep track of the sequence for missed events, all events need to be broadcast. Thus we use destination_component instead of target_component). +type MessageEvent struct { + // Component ID + DestinationComponent uint8 + // System ID + DestinationSystem uint8 + // Event ID (as defined in the component metadata) + Id uint32 + // Timestamp (time since system boot when the event happened). + EventTimeBootMs uint32 + // Sequence number. + Sequence uint16 + // Log levels: 4 bits MSB: internal (for logging purposes), 4 bits LSB: external. Levels: Emergency = 0, Alert = 1, Critical = 2, Error = 3, Warning = 4, Notice = 5, Info = 6, Debug = 7, Protocol = 8, Disabled = 9 + LogLevels uint8 + // Arguments (depend on event ID). + Arguments [40]uint8 +} + +// GetID implements the msg.Message interface. +func (*MessageEvent) GetID() uint32 { + return 410 +} diff --git a/pkg/dialects/development/msg_extended_sys_state.go b/pkg/dialects/development/msg_extended_sys_state.go new file mode 100644 index 000000000..df2527e9b --- /dev/null +++ b/pkg/dialects/development/msg_extended_sys_state.go @@ -0,0 +1,16 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package development + +// Provides state for additional features +type MessageExtendedSysState struct { + // The VTOL state if applicable. Is set to MAV_VTOL_STATE_UNDEFINED if UAV is not in VTOL configuration. + VtolState MAV_VTOL_STATE `mavenum:"uint8"` + // The landed state. Is set to MAV_LANDED_STATE_UNDEFINED if landed state is unknown. + LandedState MAV_LANDED_STATE `mavenum:"uint8"` +} + +// GetID implements the msg.Message interface. +func (*MessageExtendedSysState) GetID() uint32 { + return 245 +} diff --git a/pkg/dialects/development/msg_fence_status.go b/pkg/dialects/development/msg_fence_status.go new file mode 100644 index 000000000..f2970db36 --- /dev/null +++ b/pkg/dialects/development/msg_fence_status.go @@ -0,0 +1,22 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package development + +// Status of geo-fencing. Sent in extended status stream when fencing enabled. +type MessageFenceStatus struct { + // Breach status (0 if currently inside fence, 1 if outside). + BreachStatus uint8 + // Number of fence breaches. + BreachCount uint16 + // Last breach type. + BreachType FENCE_BREACH `mavenum:"uint8"` + // Time (since boot) of last breach. + BreachTime uint32 + // Active action to prevent fence breach + BreachMitigation FENCE_MITIGATE `mavenum:"uint8" mavext:"true"` +} + +// GetID implements the msg.Message interface. +func (*MessageFenceStatus) GetID() uint32 { + return 162 +} diff --git a/pkg/dialects/development/msg_file_transfer_protocol.go b/pkg/dialects/development/msg_file_transfer_protocol.go new file mode 100644 index 000000000..e26690d24 --- /dev/null +++ b/pkg/dialects/development/msg_file_transfer_protocol.go @@ -0,0 +1,20 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package development + +// File transfer message +type MessageFileTransferProtocol struct { + // Network ID (0 for broadcast) + TargetNetwork uint8 + // System ID (0 for broadcast) + TargetSystem uint8 + // Component ID (0 for broadcast) + TargetComponent uint8 + // Variable length payload. The length is defined by the remaining message length when subtracting the header and other fields. The entire content of this block is opaque unless you understand any the encoding message_type. The particular encoding used can be extension specific and might not always be documented as part of the mavlink specification. + Payload [251]uint8 +} + +// GetID implements the msg.Message interface. +func (*MessageFileTransferProtocol) GetID() uint32 { + return 110 +} diff --git a/pkg/dialects/development/msg_flight_information.go b/pkg/dialects/development/msg_flight_information.go new file mode 100644 index 000000000..86669d336 --- /dev/null +++ b/pkg/dialects/development/msg_flight_information.go @@ -0,0 +1,21 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package development + +// Information about flight since last arming. +// This can be requested using MAV_CMD_REQUEST_MESSAGE. +type MessageFlightInformation struct { + // Timestamp (time since system boot). + TimeBootMs uint32 + // Timestamp at arming (time since UNIX epoch) in UTC, 0 for unknown + ArmingTimeUtc uint64 + // Timestamp at takeoff (time since UNIX epoch) in UTC, 0 for unknown + TakeoffTimeUtc uint64 + // Universally unique identifier (UUID) of flight, should correspond to name of log files + FlightUuid uint64 +} + +// GetID implements the msg.Message interface. +func (*MessageFlightInformation) GetID() uint32 { + return 264 +} diff --git a/pkg/dialects/development/msg_follow_target.go b/pkg/dialects/development/msg_follow_target.go new file mode 100644 index 000000000..caef77ffd --- /dev/null +++ b/pkg/dialects/development/msg_follow_target.go @@ -0,0 +1,34 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package development + +// Current motion information from a designated system +type MessageFollowTarget struct { + // Timestamp (time since system boot). + Timestamp uint64 + // bit positions for tracker reporting capabilities (POS = 0, VEL = 1, ACCEL = 2, ATT + RATES = 3) + EstCapabilities uint8 + // Latitude (WGS84) + Lat int32 + // Longitude (WGS84) + Lon int32 + // Altitude (MSL) + Alt float32 + // target velocity (0,0,0) for unknown + Vel [3]float32 + // linear target acceleration (0,0,0) for unknown + Acc [3]float32 + // (0 0 0 0 for unknown) + AttitudeQ [4]float32 + // (0 0 0 for unknown) + Rates [3]float32 + // eph epv + PositionCov [3]float32 + // button states or switches of a tracker device + CustomState uint64 +} + +// GetID implements the msg.Message interface. +func (*MessageFollowTarget) GetID() uint32 { + return 144 +} diff --git a/pkg/dialects/development/msg_generator_status.go b/pkg/dialects/development/msg_generator_status.go new file mode 100644 index 000000000..937bb63f5 --- /dev/null +++ b/pkg/dialects/development/msg_generator_status.go @@ -0,0 +1,34 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package development + +// Telemetry of power generation system. Alternator or mechanical generator. +type MessageGeneratorStatus struct { + // Status flags. + Status MAV_GENERATOR_STATUS_FLAG `mavenum:"uint64"` + // Speed of electrical generator or alternator. UINT16_MAX: field not provided. + GeneratorSpeed uint16 + // Current into/out of battery. Positive for out. Negative for in. NaN: field not provided. + BatteryCurrent float32 + // Current going to the UAV. If battery current not available this is the DC current from the generator. Positive for out. Negative for in. NaN: field not provided + LoadCurrent float32 + // The power being generated. NaN: field not provided + PowerGenerated float32 + // Voltage of the bus seen at the generator, or battery bus if battery bus is controlled by generator and at a different voltage to main bus. + BusVoltage float32 + // The temperature of the rectifier or power converter. INT16_MAX: field not provided. + RectifierTemperature int16 + // The target battery current. Positive for out. Negative for in. NaN: field not provided + BatCurrentSetpoint float32 + // The temperature of the mechanical motor, fuel cell core or generator. INT16_MAX: field not provided. + GeneratorTemperature int16 + // Seconds this generator has run since it was rebooted. UINT32_MAX: field not provided. + Runtime uint32 + // Seconds until this generator requires maintenance. A negative value indicates maintenance is past-due. INT32_MAX: field not provided. + TimeUntilMaintenance int32 +} + +// GetID implements the msg.Message interface. +func (*MessageGeneratorStatus) GetID() uint32 { + return 373 +} diff --git a/pkg/dialects/development/msg_gimbal_device_attitude_status.go b/pkg/dialects/development/msg_gimbal_device_attitude_status.go new file mode 100644 index 000000000..26d22603e --- /dev/null +++ b/pkg/dialects/development/msg_gimbal_device_attitude_status.go @@ -0,0 +1,30 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package development + +// Message reporting the status of a gimbal device. This message should be broadcasted by a gimbal device component. The angles encoded in the quaternion are relative to absolute North if the flag GIMBAL_DEVICE_FLAGS_YAW_LOCK is set (roll: positive is rolling to the right, pitch: positive is pitching up, yaw is turn to the right) or relative to the vehicle heading if the flag is not set. This message should be broadcast at a low regular rate (e.g. 10Hz). +type MessageGimbalDeviceAttitudeStatus struct { + // System ID + TargetSystem uint8 + // Component ID + TargetComponent uint8 + // Timestamp (time since system boot). + TimeBootMs uint32 + // Current gimbal flags set. + Flags GIMBAL_DEVICE_FLAGS `mavenum:"uint16"` + // Quaternion components, w, x, y, z (1 0 0 0 is the null-rotation, the frame is depends on whether the flag GIMBAL_DEVICE_FLAGS_YAW_LOCK is set) + Q [4]float32 + // X component of angular velocity (NaN if unknown) + AngularVelocityX float32 + // Y component of angular velocity (NaN if unknown) + AngularVelocityY float32 + // Z component of angular velocity (NaN if unknown) + AngularVelocityZ float32 + // Failure flags (0 for no failure) + FailureFlags GIMBAL_DEVICE_ERROR_FLAGS `mavenum:"uint32"` +} + +// GetID implements the msg.Message interface. +func (*MessageGimbalDeviceAttitudeStatus) GetID() uint32 { + return 285 +} diff --git a/pkg/dialects/development/msg_gimbal_device_information.go b/pkg/dialects/development/msg_gimbal_device_information.go new file mode 100644 index 000000000..cd3c82f9c --- /dev/null +++ b/pkg/dialects/development/msg_gimbal_device_information.go @@ -0,0 +1,42 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package development + +// Information about a low level gimbal. This message should be requested by the gimbal manager or a ground station using MAV_CMD_REQUEST_MESSAGE. The maximum angles and rates are the limits by hardware. However, the limits by software used are likely different/smaller and dependent on mode/settings/etc.. +type MessageGimbalDeviceInformation struct { + // Timestamp (time since system boot). + TimeBootMs uint32 + // Name of the gimbal vendor. + VendorName string `mavlen:"32"` + // Name of the gimbal model. + ModelName string `mavlen:"32"` + // Custom name of the gimbal given to it by the user. + CustomName string `mavlen:"32"` + // Version of the gimbal firmware, encoded as: (Dev & 0xff) << 24 | (Patch & 0xff) << 16 | (Minor & 0xff) << 8 | (Major & 0xff). + FirmwareVersion uint32 + // Version of the gimbal hardware, encoded as: (Dev & 0xff) << 24 | (Patch & 0xff) << 16 | (Minor & 0xff) << 8 | (Major & 0xff). + HardwareVersion uint32 + // UID of gimbal hardware (0 if unknown). + Uid uint64 + // Bitmap of gimbal capability flags. + CapFlags GIMBAL_DEVICE_CAP_FLAGS `mavenum:"uint16"` + // Bitmap for use for gimbal-specific capability flags. + CustomCapFlags uint16 + // Minimum hardware roll angle (positive: rolling to the right, negative: rolling to the left) + RollMin float32 + // Maximum hardware roll angle (positive: rolling to the right, negative: rolling to the left) + RollMax float32 + // Minimum hardware pitch angle (positive: up, negative: down) + PitchMin float32 + // Maximum hardware pitch angle (positive: up, negative: down) + PitchMax float32 + // Minimum hardware yaw angle (positive: to the right, negative: to the left) + YawMin float32 + // Maximum hardware yaw angle (positive: to the right, negative: to the left) + YawMax float32 +} + +// GetID implements the msg.Message interface. +func (*MessageGimbalDeviceInformation) GetID() uint32 { + return 283 +} diff --git a/pkg/dialects/development/msg_gimbal_device_set_attitude.go b/pkg/dialects/development/msg_gimbal_device_set_attitude.go new file mode 100644 index 000000000..270d6844c --- /dev/null +++ b/pkg/dialects/development/msg_gimbal_device_set_attitude.go @@ -0,0 +1,26 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package development + +// Low level message to control a gimbal device's attitude. This message is to be sent from the gimbal manager to the gimbal device component. Angles and rates can be set to NaN according to use case. +type MessageGimbalDeviceSetAttitude struct { + // System ID + TargetSystem uint8 + // Component ID + TargetComponent uint8 + // Low level gimbal flags. + Flags GIMBAL_DEVICE_FLAGS `mavenum:"uint16"` + // Quaternion components, w, x, y, z (1 0 0 0 is the null-rotation, the frame is depends on whether the flag GIMBAL_DEVICE_FLAGS_YAW_LOCK is set, set all fields to NaN if only angular velocity should be used) + Q [4]float32 + // X component of angular velocity, positive is rolling to the right, NaN to be ignored. + AngularVelocityX float32 + // Y component of angular velocity, positive is pitching up, NaN to be ignored. + AngularVelocityY float32 + // Z component of angular velocity, positive is yawing to the right, NaN to be ignored. + AngularVelocityZ float32 +} + +// GetID implements the msg.Message interface. +func (*MessageGimbalDeviceSetAttitude) GetID() uint32 { + return 284 +} diff --git a/pkg/dialects/development/msg_gimbal_manager_information.go b/pkg/dialects/development/msg_gimbal_manager_information.go new file mode 100644 index 000000000..49f815686 --- /dev/null +++ b/pkg/dialects/development/msg_gimbal_manager_information.go @@ -0,0 +1,30 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package development + +// Information about a high level gimbal manager. This message should be requested by a ground station using MAV_CMD_REQUEST_MESSAGE. +type MessageGimbalManagerInformation struct { + // Timestamp (time since system boot). + TimeBootMs uint32 + // Bitmap of gimbal capability flags. + CapFlags GIMBAL_MANAGER_CAP_FLAGS `mavenum:"uint32"` + // Gimbal device ID that this gimbal manager is responsible for. + GimbalDeviceId uint8 + // Minimum hardware roll angle (positive: rolling to the right, negative: rolling to the left) + RollMin float32 + // Maximum hardware roll angle (positive: rolling to the right, negative: rolling to the left) + RollMax float32 + // Minimum pitch angle (positive: up, negative: down) + PitchMin float32 + // Maximum pitch angle (positive: up, negative: down) + PitchMax float32 + // Minimum yaw angle (positive: to the right, negative: to the left) + YawMin float32 + // Maximum yaw angle (positive: to the right, negative: to the left) + YawMax float32 +} + +// GetID implements the msg.Message interface. +func (*MessageGimbalManagerInformation) GetID() uint32 { + return 280 +} diff --git a/pkg/dialects/development/msg_gimbal_manager_set_attitude.go b/pkg/dialects/development/msg_gimbal_manager_set_attitude.go new file mode 100644 index 000000000..cdb2c7fdb --- /dev/null +++ b/pkg/dialects/development/msg_gimbal_manager_set_attitude.go @@ -0,0 +1,28 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package development + +// High level message to control a gimbal's attitude. This message is to be sent to the gimbal manager (e.g. from a ground station). Angles and rates can be set to NaN according to use case. +type MessageGimbalManagerSetAttitude struct { + // System ID + TargetSystem uint8 + // Component ID + TargetComponent uint8 + // High level gimbal manager flags to use. + Flags GIMBAL_MANAGER_FLAGS `mavenum:"uint32"` + // Component ID of gimbal device to address (or 1-6 for non-MAVLink gimbal), 0 for all gimbal device components. Send command multiple times for more than one gimbal (but not all gimbals). + GimbalDeviceId uint8 + // Quaternion components, w, x, y, z (1 0 0 0 is the null-rotation, the frame is depends on whether the flag GIMBAL_MANAGER_FLAGS_YAW_LOCK is set) + Q [4]float32 + // X component of angular velocity, positive is rolling to the right, NaN to be ignored. + AngularVelocityX float32 + // Y component of angular velocity, positive is pitching up, NaN to be ignored. + AngularVelocityY float32 + // Z component of angular velocity, positive is yawing to the right, NaN to be ignored. + AngularVelocityZ float32 +} + +// GetID implements the msg.Message interface. +func (*MessageGimbalManagerSetAttitude) GetID() uint32 { + return 282 +} diff --git a/pkg/dialects/development/msg_gimbal_manager_set_manual_control.go b/pkg/dialects/development/msg_gimbal_manager_set_manual_control.go new file mode 100644 index 000000000..9bfeebe9b --- /dev/null +++ b/pkg/dialects/development/msg_gimbal_manager_set_manual_control.go @@ -0,0 +1,28 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package development + +// High level message to control a gimbal manually. The angles or angular rates are unitless; the actual rates will depend on internal gimbal manager settings/configuration (e.g. set by parameters). This message is to be sent to the gimbal manager (e.g. from a ground station). Angles and rates can be set to NaN according to use case. +type MessageGimbalManagerSetManualControl struct { + // System ID + TargetSystem uint8 + // Component ID + TargetComponent uint8 + // High level gimbal manager flags. + Flags GIMBAL_MANAGER_FLAGS `mavenum:"uint32"` + // Component ID of gimbal device to address (or 1-6 for non-MAVLink gimbal), 0 for all gimbal device components. Send command multiple times for more than one gimbal (but not all gimbals). + GimbalDeviceId uint8 + // Pitch angle unitless (-1..1, positive: up, negative: down, NaN to be ignored). + Pitch float32 + // Yaw angle unitless (-1..1, positive: to the right, negative: to the left, NaN to be ignored). + Yaw float32 + // Pitch angular rate unitless (-1..1, positive: up, negative: down, NaN to be ignored). + PitchRate float32 + // Yaw angular rate unitless (-1..1, positive: to the right, negative: to the left, NaN to be ignored). + YawRate float32 +} + +// GetID implements the msg.Message interface. +func (*MessageGimbalManagerSetManualControl) GetID() uint32 { + return 288 +} diff --git a/pkg/dialects/development/msg_gimbal_manager_set_pitchyaw.go b/pkg/dialects/development/msg_gimbal_manager_set_pitchyaw.go new file mode 100644 index 000000000..5dcb404fc --- /dev/null +++ b/pkg/dialects/development/msg_gimbal_manager_set_pitchyaw.go @@ -0,0 +1,28 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package development + +// High level message to control a gimbal's pitch and yaw angles. This message is to be sent to the gimbal manager (e.g. from a ground station). Angles and rates can be set to NaN according to use case. +type MessageGimbalManagerSetPitchyaw struct { + // System ID + TargetSystem uint8 + // Component ID + TargetComponent uint8 + // High level gimbal manager flags to use. + Flags GIMBAL_MANAGER_FLAGS `mavenum:"uint32"` + // Component ID of gimbal device to address (or 1-6 for non-MAVLink gimbal), 0 for all gimbal device components. Send command multiple times for more than one gimbal (but not all gimbals). + GimbalDeviceId uint8 + // Pitch angle (positive: up, negative: down, NaN to be ignored). + Pitch float32 + // Yaw angle (positive: to the right, negative: to the left, NaN to be ignored). + Yaw float32 + // Pitch angular rate (positive: up, negative: down, NaN to be ignored). + PitchRate float32 + // Yaw angular rate (positive: to the right, negative: to the left, NaN to be ignored). + YawRate float32 +} + +// GetID implements the msg.Message interface. +func (*MessageGimbalManagerSetPitchyaw) GetID() uint32 { + return 287 +} diff --git a/pkg/dialects/development/msg_gimbal_manager_status.go b/pkg/dialects/development/msg_gimbal_manager_status.go new file mode 100644 index 000000000..a2db98651 --- /dev/null +++ b/pkg/dialects/development/msg_gimbal_manager_status.go @@ -0,0 +1,26 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package development + +// Current status about a high level gimbal manager. This message should be broadcast at a low regular rate (e.g. 5Hz). +type MessageGimbalManagerStatus struct { + // Timestamp (time since system boot). + TimeBootMs uint32 + // High level gimbal manager flags currently applied. + Flags GIMBAL_MANAGER_FLAGS `mavenum:"uint32"` + // Gimbal device ID that this gimbal manager is responsible for. + GimbalDeviceId uint8 + // System ID of MAVLink component with primary control, 0 for none. + PrimaryControlSysid uint8 + // Component ID of MAVLink component with primary control, 0 for none. + PrimaryControlCompid uint8 + // System ID of MAVLink component with secondary control, 0 for none. + SecondaryControlSysid uint8 + // Component ID of MAVLink component with secondary control, 0 for none. + SecondaryControlCompid uint8 +} + +// GetID implements the msg.Message interface. +func (*MessageGimbalManagerStatus) GetID() uint32 { + return 281 +} diff --git a/pkg/dialects/development/msg_global_position_int.go b/pkg/dialects/development/msg_global_position_int.go new file mode 100644 index 000000000..9e4b66b5a --- /dev/null +++ b/pkg/dialects/development/msg_global_position_int.go @@ -0,0 +1,31 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package development + +// The filtered global position (e.g. fused GPS and accelerometers). The position is in GPS-frame (right-handed, Z-up). It +// is designed as scaled integer message since the resolution of float is not sufficient. +type MessageGlobalPositionInt struct { + // Timestamp (time since system boot). + TimeBootMs uint32 + // Latitude, expressed + Lat int32 + // Longitude, expressed + Lon int32 + // Altitude (MSL). Note that virtually all GPS modules provide both WGS84 and MSL. + Alt int32 + // Altitude above ground + RelativeAlt int32 + // Ground X Speed (Latitude, positive north) + Vx int16 + // Ground Y Speed (Longitude, positive east) + Vy int16 + // Ground Z Speed (Altitude, positive down) + Vz int16 + // Vehicle heading (yaw angle), 0.0..359.99 degrees. If unknown, set to: UINT16_MAX + Hdg uint16 +} + +// GetID implements the msg.Message interface. +func (*MessageGlobalPositionInt) GetID() uint32 { + return 33 +} diff --git a/pkg/dialects/development/msg_global_position_int_cov.go b/pkg/dialects/development/msg_global_position_int_cov.go new file mode 100644 index 000000000..6cf6d9955 --- /dev/null +++ b/pkg/dialects/development/msg_global_position_int_cov.go @@ -0,0 +1,32 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package development + +// The filtered global position (e.g. fused GPS and accelerometers). The position is in GPS-frame (right-handed, Z-up). It is designed as scaled integer message since the resolution of float is not sufficient. NOTE: This message is intended for onboard networks / companion computers and higher-bandwidth links and optimized for accuracy and completeness. Please use the GLOBAL_POSITION_INT message for a minimal subset. +type MessageGlobalPositionIntCov struct { + // Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. + TimeUsec uint64 + // Class id of the estimator this estimate originated from. + EstimatorType MAV_ESTIMATOR_TYPE `mavenum:"uint8"` + // Latitude + Lat int32 + // Longitude + Lon int32 + // Altitude in meters above MSL + Alt int32 + // Altitude above ground + RelativeAlt int32 + // Ground X Speed (Latitude) + Vx float32 + // Ground Y Speed (Longitude) + Vy float32 + // Ground Z Speed (Altitude) + Vz float32 + // Row-major representation of a 6x6 position and velocity 6x6 cross-covariance matrix (states: lat, lon, alt, vx, vy, vz; first six entries are the first ROW, next six entries are the second row, etc.). If unknown, assign NaN value to first element in the array. + Covariance [36]float32 +} + +// GetID implements the msg.Message interface. +func (*MessageGlobalPositionIntCov) GetID() uint32 { + return 63 +} diff --git a/pkg/dialects/development/msg_global_vision_position_estimate.go b/pkg/dialects/development/msg_global_vision_position_estimate.go new file mode 100644 index 000000000..a5a41b69c --- /dev/null +++ b/pkg/dialects/development/msg_global_vision_position_estimate.go @@ -0,0 +1,30 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package development + +// Global position/attitude estimate from a vision source. +type MessageGlobalVisionPositionEstimate struct { + // Timestamp (UNIX time or since system boot) + Usec uint64 + // Global X position + X float32 + // Global Y position + Y float32 + // Global Z position + Z float32 + // Roll angle + Roll float32 + // Pitch angle + Pitch float32 + // Yaw angle + Yaw float32 + // Row-major representation of pose 6x6 cross-covariance matrix upper right triangle (states: x_global, y_global, z_global, roll, pitch, yaw; first six entries are the first ROW, next five entries are the second ROW, etc.). If unknown, assign NaN value to first element in the array. + Covariance [21]float32 `mavext:"true"` + // Estimate reset counter. This should be incremented when the estimate resets in any of the dimensions (position, velocity, attitude, angular speed). This is designed to be used when e.g an external SLAM system detects a loop-closure and the estimate jumps. + ResetCounter uint8 `mavext:"true"` +} + +// GetID implements the msg.Message interface. +func (*MessageGlobalVisionPositionEstimate) GetID() uint32 { + return 101 +} diff --git a/pkg/dialects/development/msg_gps2_raw.go b/pkg/dialects/development/msg_gps2_raw.go new file mode 100644 index 000000000..2b26b5bf8 --- /dev/null +++ b/pkg/dialects/development/msg_gps2_raw.go @@ -0,0 +1,48 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package development + +// Second GPS data. +type MessageGps2Raw struct { + // Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. + TimeUsec uint64 + // GPS fix type. + FixType GPS_FIX_TYPE `mavenum:"uint8"` + // Latitude (WGS84) + Lat int32 + // Longitude (WGS84) + Lon int32 + // Altitude (MSL). Positive for up. + Alt int32 + // GPS HDOP horizontal dilution of position (unitless * 100). If unknown, set to: UINT16_MAX + Eph uint16 + // GPS VDOP vertical dilution of position (unitless * 100). If unknown, set to: UINT16_MAX + Epv uint16 + // GPS ground speed. If unknown, set to: UINT16_MAX + Vel uint16 + // Course over ground (NOT heading, but direction of movement): 0.0..359.99 degrees. If unknown, set to: UINT16_MAX + Cog uint16 + // Number of satellites visible. If unknown, set to UINT8_MAX + SatellitesVisible uint8 + // Number of DGPS satellites + DgpsNumch uint8 + // Age of DGPS info + DgpsAge uint32 + // Yaw in earth frame from north. Use 0 if this GPS does not provide yaw. Use UINT16_MAX if this GPS is configured to provide yaw and is currently unable to provide it. Use 36000 for north. + Yaw uint16 `mavext:"true"` + // Altitude (above WGS84, EGM96 ellipsoid). Positive for up. + AltEllipsoid int32 `mavext:"true"` + // Position uncertainty. + HAcc uint32 `mavext:"true"` + // Altitude uncertainty. + VAcc uint32 `mavext:"true"` + // Speed uncertainty. + VelAcc uint32 `mavext:"true"` + // Heading / track uncertainty + HdgAcc uint32 `mavext:"true"` +} + +// GetID implements the msg.Message interface. +func (*MessageGps2Raw) GetID() uint32 { + return 124 +} diff --git a/pkg/dialects/development/msg_gps2_rtk.go b/pkg/dialects/development/msg_gps2_rtk.go new file mode 100644 index 000000000..a9e0ddcb6 --- /dev/null +++ b/pkg/dialects/development/msg_gps2_rtk.go @@ -0,0 +1,38 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package development + +// RTK GPS data. Gives information on the relative baseline calculation the GPS is reporting +type MessageGps2Rtk struct { + // Time since boot of last baseline message received. + TimeLastBaselineMs uint32 + // Identification of connected RTK receiver. + RtkReceiverId uint8 + // GPS Week Number of last baseline + Wn uint16 + // GPS Time of Week of last baseline + Tow uint32 + // GPS-specific health report for RTK data. + RtkHealth uint8 + // Rate of baseline messages being received by GPS + RtkRate uint8 + // Current number of sats used for RTK calculation. + Nsats uint8 + // Coordinate system of baseline + BaselineCoordsType RTK_BASELINE_COORDINATE_SYSTEM `mavenum:"uint8"` + // Current baseline in ECEF x or NED north component. + BaselineAMm int32 + // Current baseline in ECEF y or NED east component. + BaselineBMm int32 + // Current baseline in ECEF z or NED down component. + BaselineCMm int32 + // Current estimate of baseline accuracy. + Accuracy uint32 + // Current number of integer ambiguity hypotheses. + IarNumHypotheses int32 +} + +// GetID implements the msg.Message interface. +func (*MessageGps2Rtk) GetID() uint32 { + return 128 +} diff --git a/pkg/dialects/development/msg_gps_global_origin.go b/pkg/dialects/development/msg_gps_global_origin.go new file mode 100644 index 000000000..38cbe9896 --- /dev/null +++ b/pkg/dialects/development/msg_gps_global_origin.go @@ -0,0 +1,20 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package development + +// Publishes the GPS co-ordinates of the vehicle local origin (0,0,0) position. Emitted whenever a new GPS-Local position mapping is requested or set - e.g. following SET_GPS_GLOBAL_ORIGIN message. +type MessageGpsGlobalOrigin struct { + // Latitude (WGS84) + Latitude int32 + // Longitude (WGS84) + Longitude int32 + // Altitude (MSL). Positive for up. + Altitude int32 + // Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. + TimeUsec uint64 `mavext:"true"` +} + +// GetID implements the msg.Message interface. +func (*MessageGpsGlobalOrigin) GetID() uint32 { + return 49 +} diff --git a/pkg/dialects/development/msg_gps_inject_data.go b/pkg/dialects/development/msg_gps_inject_data.go new file mode 100644 index 000000000..3c9fdc855 --- /dev/null +++ b/pkg/dialects/development/msg_gps_inject_data.go @@ -0,0 +1,20 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package development + +// Data for injecting into the onboard GPS (used for DGPS) +type MessageGpsInjectData struct { + // System ID + TargetSystem uint8 + // Component ID + TargetComponent uint8 + // Data length + Len uint8 + // Raw data (110 is enough for 12 satellites of RTCMv2) + Data [110]uint8 +} + +// GetID implements the msg.Message interface. +func (*MessageGpsInjectData) GetID() uint32 { + return 123 +} diff --git a/pkg/dialects/development/msg_gps_input.go b/pkg/dialects/development/msg_gps_input.go new file mode 100644 index 000000000..db4d08896 --- /dev/null +++ b/pkg/dialects/development/msg_gps_input.go @@ -0,0 +1,50 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package development + +// GPS sensor input message. This is a raw sensor value sent by the GPS. This is NOT the global position estimate of the system. +type MessageGpsInput struct { + // Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. + TimeUsec uint64 + // ID of the GPS for multiple GPS inputs + GpsId uint8 + // Bitmap indicating which GPS input flags fields to ignore. All other fields must be provided. + IgnoreFlags GPS_INPUT_IGNORE_FLAGS `mavenum:"uint16"` + // GPS time (from start of GPS week) + TimeWeekMs uint32 + // GPS week number + TimeWeek uint16 + // 0-1: no fix, 2: 2D fix, 3: 3D fix. 4: 3D with DGPS. 5: 3D with RTK + FixType uint8 + // Latitude (WGS84) + Lat int32 + // Longitude (WGS84) + Lon int32 + // Altitude (MSL). Positive for up. + Alt float32 + // GPS HDOP horizontal dilution of position (unitless). If unknown, set to: UINT16_MAX + Hdop float32 + // GPS VDOP vertical dilution of position (unitless). If unknown, set to: UINT16_MAX + Vdop float32 + // GPS velocity in north direction in earth-fixed NED frame + Vn float32 + // GPS velocity in east direction in earth-fixed NED frame + Ve float32 + // GPS velocity in down direction in earth-fixed NED frame + Vd float32 + // GPS speed accuracy + SpeedAccuracy float32 + // GPS horizontal accuracy + HorizAccuracy float32 + // GPS vertical accuracy + VertAccuracy float32 + // Number of satellites visible. + SatellitesVisible uint8 + // Yaw of vehicle relative to Earth's North, zero means not available, use 36000 for north + Yaw uint16 `mavext:"true"` +} + +// GetID implements the msg.Message interface. +func (*MessageGpsInput) GetID() uint32 { + return 232 +} diff --git a/pkg/dialects/development/msg_gps_raw_int.go b/pkg/dialects/development/msg_gps_raw_int.go new file mode 100644 index 000000000..f7e71cc60 --- /dev/null +++ b/pkg/dialects/development/msg_gps_raw_int.go @@ -0,0 +1,45 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package development + +// The global position, as returned by the Global Positioning System (GPS). This is +// NOT the global position estimate of the system, but rather a RAW sensor value. See message GLOBAL_POSITION_INT for the global position estimate. +type MessageGpsRawInt struct { + // Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. + TimeUsec uint64 + // GPS fix type. + FixType GPS_FIX_TYPE `mavenum:"uint8"` + // Latitude (WGS84, EGM96 ellipsoid) + Lat int32 + // Longitude (WGS84, EGM96 ellipsoid) + Lon int32 + // Altitude (MSL). Positive for up. Note that virtually all GPS modules provide the MSL altitude in addition to the WGS84 altitude. + Alt int32 + // GPS HDOP horizontal dilution of position (unitless * 100). If unknown, set to: UINT16_MAX + Eph uint16 + // GPS VDOP vertical dilution of position (unitless * 100). If unknown, set to: UINT16_MAX + Epv uint16 + // GPS ground speed. If unknown, set to: UINT16_MAX + Vel uint16 + // Course over ground (NOT heading, but direction of movement) in degrees * 100, 0.0..359.99 degrees. If unknown, set to: UINT16_MAX + Cog uint16 + // Number of satellites visible. If unknown, set to UINT8_MAX + SatellitesVisible uint8 + // Altitude (above WGS84, EGM96 ellipsoid). Positive for up. + AltEllipsoid int32 `mavext:"true"` + // Position uncertainty. + HAcc uint32 `mavext:"true"` + // Altitude uncertainty. + VAcc uint32 `mavext:"true"` + // Speed uncertainty. + VelAcc uint32 `mavext:"true"` + // Heading / track uncertainty + HdgAcc uint32 `mavext:"true"` + // Yaw in earth frame from north. Use 0 if this GPS does not provide yaw. Use UINT16_MAX if this GPS is configured to provide yaw and is currently unable to provide it. Use 36000 for north. + Yaw uint16 `mavext:"true"` +} + +// GetID implements the msg.Message interface. +func (*MessageGpsRawInt) GetID() uint32 { + return 24 +} diff --git a/pkg/dialects/development/msg_gps_rtcm_data.go b/pkg/dialects/development/msg_gps_rtcm_data.go new file mode 100644 index 000000000..f33b90e63 --- /dev/null +++ b/pkg/dialects/development/msg_gps_rtcm_data.go @@ -0,0 +1,18 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package development + +// RTCM message for injecting into the onboard GPS (used for DGPS) +type MessageGpsRtcmData struct { + // LSB: 1 means message is fragmented, next 2 bits are the fragment ID, the remaining 5 bits are used for the sequence ID. Messages are only to be flushed to the GPS when the entire message has been reconstructed on the autopilot. The fragment ID specifies which order the fragments should be assembled into a buffer, while the sequence ID is used to detect a mismatch between different buffers. The buffer is considered fully reconstructed when either all 4 fragments are present, or all the fragments before the first fragment with a non full payload is received. This management is used to ensure that normal GPS operation doesn't corrupt RTCM data, and to recover from a unreliable transport delivery order. + Flags uint8 + // data length + Len uint8 + // RTCM message (may be fragmented) + Data [180]uint8 +} + +// GetID implements the msg.Message interface. +func (*MessageGpsRtcmData) GetID() uint32 { + return 233 +} diff --git a/pkg/dialects/development/msg_gps_rtk.go b/pkg/dialects/development/msg_gps_rtk.go new file mode 100644 index 000000000..cf087553f --- /dev/null +++ b/pkg/dialects/development/msg_gps_rtk.go @@ -0,0 +1,38 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package development + +// RTK GPS data. Gives information on the relative baseline calculation the GPS is reporting +type MessageGpsRtk struct { + // Time since boot of last baseline message received. + TimeLastBaselineMs uint32 + // Identification of connected RTK receiver. + RtkReceiverId uint8 + // GPS Week Number of last baseline + Wn uint16 + // GPS Time of Week of last baseline + Tow uint32 + // GPS-specific health report for RTK data. + RtkHealth uint8 + // Rate of baseline messages being received by GPS + RtkRate uint8 + // Current number of sats used for RTK calculation. + Nsats uint8 + // Coordinate system of baseline + BaselineCoordsType RTK_BASELINE_COORDINATE_SYSTEM `mavenum:"uint8"` + // Current baseline in ECEF x or NED north component. + BaselineAMm int32 + // Current baseline in ECEF y or NED east component. + BaselineBMm int32 + // Current baseline in ECEF z or NED down component. + BaselineCMm int32 + // Current estimate of baseline accuracy. + Accuracy uint32 + // Current number of integer ambiguity hypotheses. + IarNumHypotheses int32 +} + +// GetID implements the msg.Message interface. +func (*MessageGpsRtk) GetID() uint32 { + return 127 +} diff --git a/pkg/dialects/development/msg_gps_status.go b/pkg/dialects/development/msg_gps_status.go new file mode 100644 index 000000000..8685dffde --- /dev/null +++ b/pkg/dialects/development/msg_gps_status.go @@ -0,0 +1,24 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package development + +// The positioning status, as reported by GPS. This message is intended to display status information about each satellite visible to the receiver. See message GLOBAL_POSITION_INT for the global position estimate. This message can contain information for up to 20 satellites. +type MessageGpsStatus struct { + // Number of satellites visible + SatellitesVisible uint8 + // Global satellite ID + SatellitePrn [20]uint8 + // 0: Satellite not used, 1: used for localization + SatelliteUsed [20]uint8 + // Elevation (0: right on top of receiver, 90: on the horizon) of satellite + SatelliteElevation [20]uint8 + // Direction of satellite, 0: 0 deg, 255: 360 deg. + SatelliteAzimuth [20]uint8 + // Signal to noise ratio of satellite + SatelliteSnr [20]uint8 +} + +// GetID implements the msg.Message interface. +func (*MessageGpsStatus) GetID() uint32 { + return 25 +} diff --git a/pkg/dialects/development/msg_group_end.go b/pkg/dialects/development/msg_group_end.go new file mode 100644 index 000000000..bb65101f3 --- /dev/null +++ b/pkg/dialects/development/msg_group_end.go @@ -0,0 +1,19 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package development + +// Emitted during mission execution when control reaches MAV_CMD_GROUP_END. +type MessageGroupEnd struct { + // Mission-unique group id (from MAV_CMD_GROUP_END). + GroupId uint32 + // CRC32 checksum of current plan for MAV_MISSION_TYPE_ALL. As defined in MISSION_CHECKSUM message. + MissionChecksum uint32 + // Timestamp (UNIX Epoch time or time since system boot). + // The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. + TimeUsec uint64 +} + +// GetID implements the msg.Message interface. +func (*MessageGroupEnd) GetID() uint32 { + return 415 +} diff --git a/pkg/dialects/development/msg_group_start.go b/pkg/dialects/development/msg_group_start.go new file mode 100644 index 000000000..b51506935 --- /dev/null +++ b/pkg/dialects/development/msg_group_start.go @@ -0,0 +1,19 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package development + +// Emitted during mission execution when control reaches MAV_CMD_GROUP_START. +type MessageGroupStart struct { + // Mission-unique group id (from MAV_CMD_GROUP_START). + GroupId uint32 + // CRC32 checksum of current plan for MAV_MISSION_TYPE_ALL. As defined in MISSION_CHECKSUM message. + MissionChecksum uint32 + // Timestamp (UNIX Epoch time or time since system boot). + // The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. + TimeUsec uint64 +} + +// GetID implements the msg.Message interface. +func (*MessageGroupStart) GetID() uint32 { + return 414 +} diff --git a/pkg/dialects/development/msg_heartbeat.go b/pkg/dialects/development/msg_heartbeat.go new file mode 100644 index 000000000..d0a47ea48 --- /dev/null +++ b/pkg/dialects/development/msg_heartbeat.go @@ -0,0 +1,24 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package development + +// The heartbeat message shows that a system or component is present and responding. The type and autopilot fields (along with the message component id), allow the receiving system to treat further messages from this system appropriately (e.g. by laying out the user interface based on the autopilot). This microservice is documented at https://mavlink.io/en/services/heartbeat.html +type MessageHeartbeat struct { + // Vehicle or component type. For a flight controller component the vehicle type (quadrotor, helicopter, etc.). For other components the component type (e.g. camera, gimbal, etc.). This should be used in preference to component id for identifying the component type. + Type MAV_TYPE `mavenum:"uint8"` + // Autopilot type / class. Use MAV_AUTOPILOT_INVALID for components that are not flight controllers. + Autopilot MAV_AUTOPILOT `mavenum:"uint8"` + // System mode bitmap. + BaseMode MAV_MODE_FLAG `mavenum:"uint8"` + // A bitfield for use for autopilot-specific flags + CustomMode uint32 + // System status flag. + SystemStatus MAV_STATE `mavenum:"uint8"` + // MAVLink version, not writable by user, gets added by protocol because of magic data type: uint8_t_mavlink_version + MavlinkVersion uint8 +} + +// GetID implements the msg.Message interface. +func (*MessageHeartbeat) GetID() uint32 { + return 0 +} diff --git a/pkg/dialects/development/msg_high_latency.go b/pkg/dialects/development/msg_high_latency.go new file mode 100644 index 000000000..5fffe0675 --- /dev/null +++ b/pkg/dialects/development/msg_high_latency.go @@ -0,0 +1,60 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package development + +// Message appropriate for high latency connections like Iridium +type MessageHighLatency struct { + // Bitmap of enabled system modes. + BaseMode MAV_MODE_FLAG `mavenum:"uint8"` + // A bitfield for use for autopilot-specific flags. + CustomMode uint32 + // The landed state. Is set to MAV_LANDED_STATE_UNDEFINED if landed state is unknown. + LandedState MAV_LANDED_STATE `mavenum:"uint8"` + // roll + Roll int16 + // pitch + Pitch int16 + // heading + Heading uint16 + // throttle (percentage) + Throttle int8 + // heading setpoint + HeadingSp int16 + // Latitude + Latitude int32 + // Longitude + Longitude int32 + // Altitude above mean sea level + AltitudeAmsl int16 + // Altitude setpoint relative to the home position + AltitudeSp int16 + // airspeed + Airspeed uint8 + // airspeed setpoint + AirspeedSp uint8 + // groundspeed + Groundspeed uint8 + // climb rate + ClimbRate int8 + // Number of satellites visible. If unknown, set to UINT8_MAX + GpsNsat uint8 + // GPS Fix type. + GpsFixType GPS_FIX_TYPE `mavenum:"uint8"` + // Remaining battery (percentage) + BatteryRemaining uint8 + // Autopilot temperature (degrees C) + Temperature int8 + // Air temperature (degrees C) from airspeed sensor + TemperatureAir int8 + // failsafe (each bit represents a failsafe where 0=ok, 1=failsafe active (bit0:RC, bit1:batt, bit2:GPS, bit3:GCS, bit4:fence) + Failsafe uint8 + // current waypoint number + WpNum uint8 + // distance to target + WpDistance uint16 +} + +// GetID implements the msg.Message interface. +func (*MessageHighLatency) GetID() uint32 { + return 234 +} diff --git a/pkg/dialects/development/msg_high_latency2.go b/pkg/dialects/development/msg_high_latency2.go new file mode 100644 index 000000000..71cd00e84 --- /dev/null +++ b/pkg/dialects/development/msg_high_latency2.go @@ -0,0 +1,66 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package development + +// Message appropriate for high latency connections like Iridium (version 2) +type MessageHighLatency2 struct { + // Timestamp (milliseconds since boot or Unix epoch) + Timestamp uint32 + // Type of the MAV (quadrotor, helicopter, etc.) + Type MAV_TYPE `mavenum:"uint8"` + // Autopilot type / class. Use MAV_AUTOPILOT_INVALID for components that are not flight controllers. + Autopilot MAV_AUTOPILOT `mavenum:"uint8"` + // A bitfield for use for autopilot-specific flags (2 byte version). + CustomMode uint16 + // Latitude + Latitude int32 + // Longitude + Longitude int32 + // Altitude above mean sea level + Altitude int16 + // Altitude setpoint + TargetAltitude int16 + // Heading + Heading uint8 + // Heading setpoint + TargetHeading uint8 + // Distance to target waypoint or position + TargetDistance uint16 + // Throttle + Throttle uint8 + // Airspeed + Airspeed uint8 + // Airspeed setpoint + AirspeedSp uint8 + // Groundspeed + Groundspeed uint8 + // Windspeed + Windspeed uint8 + // Wind heading + WindHeading uint8 + // Maximum error horizontal position since last message + Eph uint8 + // Maximum error vertical position since last message + Epv uint8 + // Air temperature from airspeed sensor + TemperatureAir int8 + // Maximum climb rate magnitude since last message + ClimbRate int8 + // Battery level (-1 if field not provided). + Battery int8 + // Current waypoint number + WpNum uint16 + // Bitmap of failure flags. + FailureFlags HL_FAILURE_FLAG `mavenum:"uint16"` + // Field for custom payload. + Custom0 int8 + // Field for custom payload. + Custom1 int8 + // Field for custom payload. + Custom2 int8 +} + +// GetID implements the msg.Message interface. +func (*MessageHighLatency2) GetID() uint32 { + return 235 +} diff --git a/pkg/dialects/development/msg_highres_imu.go b/pkg/dialects/development/msg_highres_imu.go new file mode 100644 index 000000000..00b2ea4bd --- /dev/null +++ b/pkg/dialects/development/msg_highres_imu.go @@ -0,0 +1,44 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package development + +// The IMU readings in SI units in NED body frame +type MessageHighresImu struct { + // Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. + TimeUsec uint64 + // X acceleration + Xacc float32 + // Y acceleration + Yacc float32 + // Z acceleration + Zacc float32 + // Angular speed around X axis + Xgyro float32 + // Angular speed around Y axis + Ygyro float32 + // Angular speed around Z axis + Zgyro float32 + // X Magnetic field + Xmag float32 + // Y Magnetic field + Ymag float32 + // Z Magnetic field + Zmag float32 + // Absolute pressure + AbsPressure float32 + // Differential pressure + DiffPressure float32 + // Altitude calculated from pressure + PressureAlt float32 + // Temperature + Temperature float32 + // Bitmap for fields that have updated since last message + FieldsUpdated HIGHRES_IMU_UPDATED_FLAGS `mavenum:"uint16"` + // Id. Ids are numbered from 0 and map to IMUs numbered from 1 (e.g. IMU1 will have a message with id=0) + Id uint8 `mavext:"true"` +} + +// GetID implements the msg.Message interface. +func (*MessageHighresImu) GetID() uint32 { + return 105 +} diff --git a/pkg/dialects/development/msg_hil_actuator_controls.go b/pkg/dialects/development/msg_hil_actuator_controls.go new file mode 100644 index 000000000..7773f9b95 --- /dev/null +++ b/pkg/dialects/development/msg_hil_actuator_controls.go @@ -0,0 +1,20 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package development + +// Sent from autopilot to simulation. Hardware in the loop control outputs (replacement for HIL_CONTROLS) +type MessageHilActuatorControls struct { + // Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. + TimeUsec uint64 + // Control outputs -1 .. 1. Channel assignment depends on the simulated hardware. + Controls [16]float32 + // System mode. Includes arming state. + Mode MAV_MODE_FLAG `mavenum:"uint8"` + // Flags as bitfield, 1: indicate simulation using lockstep. + Flags uint64 +} + +// GetID implements the msg.Message interface. +func (*MessageHilActuatorControls) GetID() uint32 { + return 93 +} diff --git a/pkg/dialects/development/msg_hil_controls.go b/pkg/dialects/development/msg_hil_controls.go new file mode 100644 index 000000000..3f0d78743 --- /dev/null +++ b/pkg/dialects/development/msg_hil_controls.go @@ -0,0 +1,34 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package development + +// Sent from autopilot to simulation. Hardware in the loop control outputs +type MessageHilControls struct { + // Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. + TimeUsec uint64 + // Control output -1 .. 1 + RollAilerons float32 + // Control output -1 .. 1 + PitchElevator float32 + // Control output -1 .. 1 + YawRudder float32 + // Throttle 0 .. 1 + Throttle float32 + // Aux 1, -1 .. 1 + Aux1 float32 + // Aux 2, -1 .. 1 + Aux2 float32 + // Aux 3, -1 .. 1 + Aux3 float32 + // Aux 4, -1 .. 1 + Aux4 float32 + // System mode. + Mode MAV_MODE `mavenum:"uint8"` + // Navigation mode (MAV_NAV_MODE) + NavMode uint8 +} + +// GetID implements the msg.Message interface. +func (*MessageHilControls) GetID() uint32 { + return 91 +} diff --git a/pkg/dialects/development/msg_hil_gps.go b/pkg/dialects/development/msg_hil_gps.go new file mode 100644 index 000000000..db56038a1 --- /dev/null +++ b/pkg/dialects/development/msg_hil_gps.go @@ -0,0 +1,43 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package development + +// The global position, as returned by the Global Positioning System (GPS). This is +// NOT the global position estimate of the sytem, but rather a RAW sensor value. See message GLOBAL_POSITION_INT for the global position estimate. +type MessageHilGps struct { + // Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. + TimeUsec uint64 + // 0-1: no fix, 2: 2D fix, 3: 3D fix. Some applications will not use the value of this field unless it is at least two, so always correctly fill in the fix. + FixType uint8 + // Latitude (WGS84) + Lat int32 + // Longitude (WGS84) + Lon int32 + // Altitude (MSL). Positive for up. + Alt int32 + // GPS HDOP horizontal dilution of position (unitless * 100). If unknown, set to: UINT16_MAX + Eph uint16 + // GPS VDOP vertical dilution of position (unitless * 100). If unknown, set to: UINT16_MAX + Epv uint16 + // GPS ground speed. If unknown, set to: UINT16_MAX + Vel uint16 + // GPS velocity in north direction in earth-fixed NED frame + Vn int16 + // GPS velocity in east direction in earth-fixed NED frame + Ve int16 + // GPS velocity in down direction in earth-fixed NED frame + Vd int16 + // Course over ground (NOT heading, but direction of movement), 0.0..359.99 degrees. If unknown, set to: UINT16_MAX + Cog uint16 + // Number of satellites visible. If unknown, set to UINT8_MAX + SatellitesVisible uint8 + // GPS ID (zero indexed). Used for multiple GPS inputs + Id uint8 `mavext:"true"` + // Yaw of vehicle relative to Earth's North, zero means not available, use 36000 for north + Yaw uint16 `mavext:"true"` +} + +// GetID implements the msg.Message interface. +func (*MessageHilGps) GetID() uint32 { + return 113 +} diff --git a/pkg/dialects/development/msg_hil_optical_flow.go b/pkg/dialects/development/msg_hil_optical_flow.go new file mode 100644 index 000000000..fb14a869d --- /dev/null +++ b/pkg/dialects/development/msg_hil_optical_flow.go @@ -0,0 +1,36 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package development + +// Simulated optical flow from a flow sensor (e.g. PX4FLOW or optical mouse sensor) +type MessageHilOpticalFlow struct { + // Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. + TimeUsec uint64 + // Sensor ID + SensorId uint8 + // Integration time. Divide integrated_x and integrated_y by the integration time to obtain average flow. The integration time also indicates the. + IntegrationTimeUs uint32 + // Flow in radians around X axis (Sensor RH rotation about the X axis induces a positive flow. Sensor linear motion along the positive Y axis induces a negative flow.) + IntegratedX float32 + // Flow in radians around Y axis (Sensor RH rotation about the Y axis induces a positive flow. Sensor linear motion along the positive X axis induces a positive flow.) + IntegratedY float32 + // RH rotation around X axis + IntegratedXgyro float32 + // RH rotation around Y axis + IntegratedYgyro float32 + // RH rotation around Z axis + IntegratedZgyro float32 + // Temperature + Temperature int16 + // Optical flow quality / confidence. 0: no valid flow, 255: maximum quality + Quality uint8 + // Time since the distance was sampled. + TimeDeltaDistanceUs uint32 + // Distance to the center of the flow field. Positive value (including zero): distance known. Negative value: Unknown distance. + Distance float32 +} + +// GetID implements the msg.Message interface. +func (*MessageHilOpticalFlow) GetID() uint32 { + return 114 +} diff --git a/pkg/dialects/development/msg_hil_rc_inputs_raw.go b/pkg/dialects/development/msg_hil_rc_inputs_raw.go new file mode 100644 index 000000000..a6f1ad257 --- /dev/null +++ b/pkg/dialects/development/msg_hil_rc_inputs_raw.go @@ -0,0 +1,40 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package development + +// Sent from simulation to autopilot. The RAW values of the RC channels received. The standard PPM modulation is as follows: 1000 microseconds: 0%, 2000 microseconds: 100%. Individual receivers/transmitters might violate this specification. +type MessageHilRcInputsRaw struct { + // Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. + TimeUsec uint64 + // RC channel 1 value + Chan1Raw uint16 + // RC channel 2 value + Chan2Raw uint16 + // RC channel 3 value + Chan3Raw uint16 + // RC channel 4 value + Chan4Raw uint16 + // RC channel 5 value + Chan5Raw uint16 + // RC channel 6 value + Chan6Raw uint16 + // RC channel 7 value + Chan7Raw uint16 + // RC channel 8 value + Chan8Raw uint16 + // RC channel 9 value + Chan9Raw uint16 + // RC channel 10 value + Chan10Raw uint16 + // RC channel 11 value + Chan11Raw uint16 + // RC channel 12 value + Chan12Raw uint16 + // Receive signal strength indicator in device-dependent units/scale. Values: [0-254], UINT8_MAX: invalid/unknown. + Rssi uint8 +} + +// GetID implements the msg.Message interface. +func (*MessageHilRcInputsRaw) GetID() uint32 { + return 92 +} diff --git a/pkg/dialects/development/msg_hil_sensor.go b/pkg/dialects/development/msg_hil_sensor.go new file mode 100644 index 000000000..52a378c00 --- /dev/null +++ b/pkg/dialects/development/msg_hil_sensor.go @@ -0,0 +1,44 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package development + +// The IMU readings in SI units in NED body frame +type MessageHilSensor struct { + // Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. + TimeUsec uint64 + // X acceleration + Xacc float32 + // Y acceleration + Yacc float32 + // Z acceleration + Zacc float32 + // Angular speed around X axis in body frame + Xgyro float32 + // Angular speed around Y axis in body frame + Ygyro float32 + // Angular speed around Z axis in body frame + Zgyro float32 + // X Magnetic field + Xmag float32 + // Y Magnetic field + Ymag float32 + // Z Magnetic field + Zmag float32 + // Absolute pressure + AbsPressure float32 + // Differential pressure (airspeed) + DiffPressure float32 + // Altitude calculated from pressure + PressureAlt float32 + // Temperature + Temperature float32 + // Bitmap for fields that have updated since last message + FieldsUpdated HIL_SENSOR_UPDATED_FLAGS `mavenum:"uint32"` + // Sensor ID (zero indexed). Used for multiple sensor inputs + Id uint8 `mavext:"true"` +} + +// GetID implements the msg.Message interface. +func (*MessageHilSensor) GetID() uint32 { + return 107 +} diff --git a/pkg/dialects/development/msg_hil_state.go b/pkg/dialects/development/msg_hil_state.go new file mode 100644 index 000000000..41b229461 --- /dev/null +++ b/pkg/dialects/development/msg_hil_state.go @@ -0,0 +1,44 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package development + +// Sent from simulation to autopilot. This packet is useful for high throughput applications such as hardware in the loop simulations. +type MessageHilState struct { + // Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. + TimeUsec uint64 + // Roll angle + Roll float32 + // Pitch angle + Pitch float32 + // Yaw angle + Yaw float32 + // Body frame roll / phi angular speed + Rollspeed float32 + // Body frame pitch / theta angular speed + Pitchspeed float32 + // Body frame yaw / psi angular speed + Yawspeed float32 + // Latitude + Lat int32 + // Longitude + Lon int32 + // Altitude + Alt int32 + // Ground X Speed (Latitude) + Vx int16 + // Ground Y Speed (Longitude) + Vy int16 + // Ground Z Speed (Altitude) + Vz int16 + // X acceleration + Xacc int16 + // Y acceleration + Yacc int16 + // Z acceleration + Zacc int16 +} + +// GetID implements the msg.Message interface. +func (*MessageHilState) GetID() uint32 { + return 90 +} diff --git a/pkg/dialects/development/msg_hil_state_quaternion.go b/pkg/dialects/development/msg_hil_state_quaternion.go new file mode 100644 index 000000000..032ffc716 --- /dev/null +++ b/pkg/dialects/development/msg_hil_state_quaternion.go @@ -0,0 +1,44 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package development + +// Sent from simulation to autopilot, avoids in contrast to HIL_STATE singularities. This packet is useful for high throughput applications such as hardware in the loop simulations. +type MessageHilStateQuaternion struct { + // Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. + TimeUsec uint64 + // Vehicle attitude expressed as normalized quaternion in w, x, y, z order (with 1 0 0 0 being the null-rotation) + AttitudeQuaternion [4]float32 + // Body frame roll / phi angular speed + Rollspeed float32 + // Body frame pitch / theta angular speed + Pitchspeed float32 + // Body frame yaw / psi angular speed + Yawspeed float32 + // Latitude + Lat int32 + // Longitude + Lon int32 + // Altitude + Alt int32 + // Ground X Speed (Latitude) + Vx int16 + // Ground Y Speed (Longitude) + Vy int16 + // Ground Z Speed (Altitude) + Vz int16 + // Indicated airspeed + IndAirspeed uint16 + // True airspeed + TrueAirspeed uint16 + // X acceleration + Xacc int16 + // Y acceleration + Yacc int16 + // Z acceleration + Zacc int16 +} + +// GetID implements the msg.Message interface. +func (*MessageHilStateQuaternion) GetID() uint32 { + return 115 +} diff --git a/pkg/dialects/development/msg_home_position.go b/pkg/dialects/development/msg_home_position.go new file mode 100644 index 000000000..a0ae506cb --- /dev/null +++ b/pkg/dialects/development/msg_home_position.go @@ -0,0 +1,34 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package development + +// This message can be requested by sending the MAV_CMD_GET_HOME_POSITION command. The position the system will return to and land on. The position is set automatically by the system during the takeoff in case it was not explicitly set by the operator before or after. The global and local positions encode the position in the respective coordinate frames, while the q parameter encodes the orientation of the surface. Under normal conditions it describes the heading and terrain slope, which can be used by the aircraft to adjust the approach. The approach 3D vector describes the point to which the system should fly in normal flight mode and then perform a landing sequence along the vector. +type MessageHomePosition struct { + // Latitude (WGS84) + Latitude int32 + // Longitude (WGS84) + Longitude int32 + // Altitude (MSL). Positive for up. + Altitude int32 + // Local X position of this position in the local coordinate frame + X float32 + // Local Y position of this position in the local coordinate frame + Y float32 + // Local Z position of this position in the local coordinate frame + Z float32 + // World to surface normal and heading transformation of the takeoff position. Used to indicate the heading and slope of the ground + Q [4]float32 + // Local X position of the end of the approach vector. Multicopters should set this position based on their takeoff path. Grass-landing fixed wing aircraft should set it the same way as multicopters. Runway-landing fixed wing aircraft should set it to the opposite direction of the takeoff, assuming the takeoff happened from the threshold / touchdown zone. + ApproachX float32 + // Local Y position of the end of the approach vector. Multicopters should set this position based on their takeoff path. Grass-landing fixed wing aircraft should set it the same way as multicopters. Runway-landing fixed wing aircraft should set it to the opposite direction of the takeoff, assuming the takeoff happened from the threshold / touchdown zone. + ApproachY float32 + // Local Z position of the end of the approach vector. Multicopters should set this position based on their takeoff path. Grass-landing fixed wing aircraft should set it the same way as multicopters. Runway-landing fixed wing aircraft should set it to the opposite direction of the takeoff, assuming the takeoff happened from the threshold / touchdown zone. + ApproachZ float32 + // Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. + TimeUsec uint64 `mavext:"true"` +} + +// GetID implements the msg.Message interface. +func (*MessageHomePosition) GetID() uint32 { + return 242 +} diff --git a/pkg/dialects/development/msg_hygrometer_sensor.go b/pkg/dialects/development/msg_hygrometer_sensor.go new file mode 100644 index 000000000..f62685934 --- /dev/null +++ b/pkg/dialects/development/msg_hygrometer_sensor.go @@ -0,0 +1,18 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package development + +// Temperature and humidity from hygrometer. +type MessageHygrometerSensor struct { + // Hygrometer ID + Id uint8 + // Temperature + Temperature int16 + // Humidity + Humidity uint16 +} + +// GetID implements the msg.Message interface. +func (*MessageHygrometerSensor) GetID() uint32 { + return 12920 +} diff --git a/pkg/dialects/development/msg_isbd_link_status.go b/pkg/dialects/development/msg_isbd_link_status.go new file mode 100644 index 000000000..f6d780467 --- /dev/null +++ b/pkg/dialects/development/msg_isbd_link_status.go @@ -0,0 +1,28 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package development + +// Status of the Iridium SBD link. +type MessageIsbdLinkStatus struct { + // Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. + Timestamp uint64 + // Timestamp of the last successful sbd session. The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. + LastHeartbeat uint64 + // Number of failed SBD sessions. + FailedSessions uint16 + // Number of successful SBD sessions. + SuccessfulSessions uint16 + // Signal quality equal to the number of bars displayed on the ISU signal strength indicator. Range is 0 to 5, where 0 indicates no signal and 5 indicates maximum signal strength. + SignalQuality uint8 + // 1: Ring call pending, 0: No call pending. + RingPending uint8 + // 1: Transmission session pending, 0: No transmission session pending. + TxSessionPending uint8 + // 1: Receiving session pending, 0: No receiving session pending. + RxSessionPending uint8 +} + +// GetID implements the msg.Message interface. +func (*MessageIsbdLinkStatus) GetID() uint32 { + return 335 +} diff --git a/pkg/dialects/development/msg_landing_target.go b/pkg/dialects/development/msg_landing_target.go new file mode 100644 index 000000000..a170602fb --- /dev/null +++ b/pkg/dialects/development/msg_landing_target.go @@ -0,0 +1,40 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package development + +// The location of a landing target. See: https://mavlink.io/en/services/landing_target.html +type MessageLandingTarget struct { + // Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. + TimeUsec uint64 + // The ID of the target if multiple targets are present + TargetNum uint8 + // Coordinate frame used for following fields. + Frame MAV_FRAME `mavenum:"uint8"` + // X-axis angular offset of the target from the center of the image + AngleX float32 + // Y-axis angular offset of the target from the center of the image + AngleY float32 + // Distance to the target from the vehicle + Distance float32 + // Size of target along x-axis + SizeX float32 + // Size of target along y-axis + SizeY float32 + // X Position of the landing target in MAV_FRAME + X float32 `mavext:"true"` + // Y Position of the landing target in MAV_FRAME + Y float32 `mavext:"true"` + // Z Position of the landing target in MAV_FRAME + Z float32 `mavext:"true"` + // Quaternion of landing target orientation (w, x, y, z order, zero-rotation is 1, 0, 0, 0) + Q [4]float32 `mavext:"true"` + // Type of landing target + Type LANDING_TARGET_TYPE `mavenum:"uint8" mavext:"true"` + // Boolean indicating whether the position fields (x, y, z, q, type) contain valid target position information (valid: 1, invalid: 0). Default is 0 (invalid). + PositionValid uint8 `mavext:"true"` +} + +// GetID implements the msg.Message interface. +func (*MessageLandingTarget) GetID() uint32 { + return 149 +} diff --git a/pkg/dialects/development/msg_link_node_status.go b/pkg/dialects/development/msg_link_node_status.go new file mode 100644 index 000000000..70fe1aed1 --- /dev/null +++ b/pkg/dialects/development/msg_link_node_status.go @@ -0,0 +1,34 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package development + +// Status generated in each node in the communication chain and injected into MAVLink stream. +type MessageLinkNodeStatus struct { + // Timestamp (time since system boot). + Timestamp uint64 + // Remaining free transmit buffer space + TxBuf uint8 + // Remaining free receive buffer space + RxBuf uint8 + // Transmit rate + TxRate uint32 + // Receive rate + RxRate uint32 + // Number of bytes that could not be parsed correctly. + RxParseErr uint16 + // Transmit buffer overflows. This number wraps around as it reaches UINT16_MAX + TxOverflows uint16 + // Receive buffer overflows. This number wraps around as it reaches UINT16_MAX + RxOverflows uint16 + // Messages sent + MessagesSent uint32 + // Messages received (estimated from counting seq) + MessagesReceived uint32 + // Messages lost (estimated from counting seq) + MessagesLost uint32 +} + +// GetID implements the msg.Message interface. +func (*MessageLinkNodeStatus) GetID() uint32 { + return 8 +} diff --git a/pkg/dialects/development/msg_local_position_ned.go b/pkg/dialects/development/msg_local_position_ned.go new file mode 100644 index 000000000..4f964f89c --- /dev/null +++ b/pkg/dialects/development/msg_local_position_ned.go @@ -0,0 +1,26 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package development + +// The filtered local position (e.g. fused computer vision and accelerometers). Coordinate frame is right-handed, Z-axis down (aeronautical frame, NED / north-east-down convention) +type MessageLocalPositionNed struct { + // Timestamp (time since system boot). + TimeBootMs uint32 + // X Position + X float32 + // Y Position + Y float32 + // Z Position + Z float32 + // X Speed + Vx float32 + // Y Speed + Vy float32 + // Z Speed + Vz float32 +} + +// GetID implements the msg.Message interface. +func (*MessageLocalPositionNed) GetID() uint32 { + return 32 +} diff --git a/pkg/dialects/development/msg_local_position_ned_cov.go b/pkg/dialects/development/msg_local_position_ned_cov.go new file mode 100644 index 000000000..86541f4af --- /dev/null +++ b/pkg/dialects/development/msg_local_position_ned_cov.go @@ -0,0 +1,36 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package development + +// The filtered local position (e.g. fused computer vision and accelerometers). Coordinate frame is right-handed, Z-axis down (aeronautical frame, NED / north-east-down convention) +type MessageLocalPositionNedCov struct { + // Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. + TimeUsec uint64 + // Class id of the estimator this estimate originated from. + EstimatorType MAV_ESTIMATOR_TYPE `mavenum:"uint8"` + // X Position + X float32 + // Y Position + Y float32 + // Z Position + Z float32 + // X Speed + Vx float32 + // Y Speed + Vy float32 + // Z Speed + Vz float32 + // X Acceleration + Ax float32 + // Y Acceleration + Ay float32 + // Z Acceleration + Az float32 + // Row-major representation of position, velocity and acceleration 9x9 cross-covariance matrix upper right triangle (states: x, y, z, vx, vy, vz, ax, ay, az; first nine entries are the first ROW, next eight entries are the second row, etc.). If unknown, assign NaN value to first element in the array. + Covariance [45]float32 +} + +// GetID implements the msg.Message interface. +func (*MessageLocalPositionNedCov) GetID() uint32 { + return 64 +} diff --git a/pkg/dialects/development/msg_local_position_ned_system_global_offset.go b/pkg/dialects/development/msg_local_position_ned_system_global_offset.go new file mode 100644 index 000000000..f02ff8094 --- /dev/null +++ b/pkg/dialects/development/msg_local_position_ned_system_global_offset.go @@ -0,0 +1,26 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package development + +// The offset in X, Y, Z and yaw between the LOCAL_POSITION_NED messages of MAV X and the global coordinate frame in NED coordinates. Coordinate frame is right-handed, Z-axis down (aeronautical frame, NED / north-east-down convention) +type MessageLocalPositionNedSystemGlobalOffset struct { + // Timestamp (time since system boot). + TimeBootMs uint32 + // X Position + X float32 + // Y Position + Y float32 + // Z Position + Z float32 + // Roll + Roll float32 + // Pitch + Pitch float32 + // Yaw + Yaw float32 +} + +// GetID implements the msg.Message interface. +func (*MessageLocalPositionNedSystemGlobalOffset) GetID() uint32 { + return 89 +} diff --git a/pkg/dialects/development/msg_log_data.go b/pkg/dialects/development/msg_log_data.go new file mode 100644 index 000000000..1b68e0e6a --- /dev/null +++ b/pkg/dialects/development/msg_log_data.go @@ -0,0 +1,20 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package development + +// Reply to LOG_REQUEST_DATA +type MessageLogData struct { + // Log id (from LOG_ENTRY reply) + Id uint16 + // Offset into the log + Ofs uint32 + // Number of bytes (zero for end of log) + Count uint8 + // log data + Data [90]uint8 +} + +// GetID implements the msg.Message interface. +func (*MessageLogData) GetID() uint32 { + return 120 +} diff --git a/pkg/dialects/development/msg_log_entry.go b/pkg/dialects/development/msg_log_entry.go new file mode 100644 index 000000000..266768584 --- /dev/null +++ b/pkg/dialects/development/msg_log_entry.go @@ -0,0 +1,22 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package development + +// Reply to LOG_REQUEST_LIST +type MessageLogEntry struct { + // Log id + Id uint16 + // Total number of logs + NumLogs uint16 + // High log number + LastLogNum uint16 + // UTC timestamp of log since 1970, or 0 if not available + TimeUtc uint32 + // Size of the log (may be approximate) + Size uint32 +} + +// GetID implements the msg.Message interface. +func (*MessageLogEntry) GetID() uint32 { + return 118 +} diff --git a/pkg/dialects/development/msg_log_erase.go b/pkg/dialects/development/msg_log_erase.go new file mode 100644 index 000000000..75b66e5de --- /dev/null +++ b/pkg/dialects/development/msg_log_erase.go @@ -0,0 +1,16 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package development + +// Erase all logs +type MessageLogErase struct { + // System ID + TargetSystem uint8 + // Component ID + TargetComponent uint8 +} + +// GetID implements the msg.Message interface. +func (*MessageLogErase) GetID() uint32 { + return 121 +} diff --git a/pkg/dialects/development/msg_log_request_data.go b/pkg/dialects/development/msg_log_request_data.go new file mode 100644 index 000000000..203221b83 --- /dev/null +++ b/pkg/dialects/development/msg_log_request_data.go @@ -0,0 +1,22 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package development + +// Request a chunk of a log +type MessageLogRequestData struct { + // System ID + TargetSystem uint8 + // Component ID + TargetComponent uint8 + // Log id (from LOG_ENTRY reply) + Id uint16 + // Offset into the log + Ofs uint32 + // Number of bytes + Count uint32 +} + +// GetID implements the msg.Message interface. +func (*MessageLogRequestData) GetID() uint32 { + return 119 +} diff --git a/pkg/dialects/development/msg_log_request_end.go b/pkg/dialects/development/msg_log_request_end.go new file mode 100644 index 000000000..7e4757f51 --- /dev/null +++ b/pkg/dialects/development/msg_log_request_end.go @@ -0,0 +1,16 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package development + +// Stop log transfer and resume normal logging +type MessageLogRequestEnd struct { + // System ID + TargetSystem uint8 + // Component ID + TargetComponent uint8 +} + +// GetID implements the msg.Message interface. +func (*MessageLogRequestEnd) GetID() uint32 { + return 122 +} diff --git a/pkg/dialects/development/msg_log_request_list.go b/pkg/dialects/development/msg_log_request_list.go new file mode 100644 index 000000000..b70e7ef34 --- /dev/null +++ b/pkg/dialects/development/msg_log_request_list.go @@ -0,0 +1,20 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package development + +// Request a list of available logs. On some systems calling this may stop on-board logging until LOG_REQUEST_END is called. If there are no log files available this request shall be answered with one LOG_ENTRY message with id = 0 and num_logs = 0. +type MessageLogRequestList struct { + // System ID + TargetSystem uint8 + // Component ID + TargetComponent uint8 + // First log id (0 for first available) + Start uint16 + // Last log id (0xffff for last available) + End uint16 +} + +// GetID implements the msg.Message interface. +func (*MessageLogRequestList) GetID() uint32 { + return 117 +} diff --git a/pkg/dialects/development/msg_logging_ack.go b/pkg/dialects/development/msg_logging_ack.go new file mode 100644 index 000000000..696fab776 --- /dev/null +++ b/pkg/dialects/development/msg_logging_ack.go @@ -0,0 +1,18 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package development + +// An ack for a LOGGING_DATA_ACKED message +type MessageLoggingAck struct { + // system ID of the target + TargetSystem uint8 + // component ID of the target + TargetComponent uint8 + // sequence number (must match the one in LOGGING_DATA_ACKED) + Sequence uint16 +} + +// GetID implements the msg.Message interface. +func (*MessageLoggingAck) GetID() uint32 { + return 268 +} diff --git a/pkg/dialects/development/msg_logging_data.go b/pkg/dialects/development/msg_logging_data.go new file mode 100644 index 000000000..7debab506 --- /dev/null +++ b/pkg/dialects/development/msg_logging_data.go @@ -0,0 +1,24 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package development + +// A message containing logged data (see also MAV_CMD_LOGGING_START) +type MessageLoggingData struct { + // system ID of the target + TargetSystem uint8 + // component ID of the target + TargetComponent uint8 + // sequence number (can wrap) + Sequence uint16 + // data length + Length uint8 + // offset into data where first message starts. This can be used for recovery, when a previous message got lost (set to UINT8_MAX if no start exists). + FirstMessageOffset uint8 + // logged data + Data [249]uint8 +} + +// GetID implements the msg.Message interface. +func (*MessageLoggingData) GetID() uint32 { + return 266 +} diff --git a/pkg/dialects/development/msg_logging_data_acked.go b/pkg/dialects/development/msg_logging_data_acked.go new file mode 100644 index 000000000..eefa4d4c3 --- /dev/null +++ b/pkg/dialects/development/msg_logging_data_acked.go @@ -0,0 +1,24 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package development + +// A message containing logged data which requires a LOGGING_ACK to be sent back +type MessageLoggingDataAcked struct { + // system ID of the target + TargetSystem uint8 + // component ID of the target + TargetComponent uint8 + // sequence number (can wrap) + Sequence uint16 + // data length + Length uint8 + // offset into data where first message starts. This can be used for recovery, when a previous message got lost (set to UINT8_MAX if no start exists). + FirstMessageOffset uint8 + // logged data + Data [249]uint8 +} + +// GetID implements the msg.Message interface. +func (*MessageLoggingDataAcked) GetID() uint32 { + return 267 +} diff --git a/pkg/dialects/development/msg_mag_cal_report.go b/pkg/dialects/development/msg_mag_cal_report.go new file mode 100644 index 000000000..36c9b49bd --- /dev/null +++ b/pkg/dialects/development/msg_mag_cal_report.go @@ -0,0 +1,48 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package development + +// Reports results of completed compass calibration. Sent until MAG_CAL_ACK received. +type MessageMagCalReport struct { + // Compass being calibrated. + CompassId uint8 + // Bitmask of compasses being calibrated. + CalMask uint8 + // Calibration Status. + CalStatus MAG_CAL_STATUS `mavenum:"uint8"` + // 0=requires a MAV_CMD_DO_ACCEPT_MAG_CAL, 1=saved to parameters. + Autosaved uint8 + // RMS milligauss residuals. + Fitness float32 + // X offset. + OfsX float32 + // Y offset. + OfsY float32 + // Z offset. + OfsZ float32 + // X diagonal (matrix 11). + DiagX float32 + // Y diagonal (matrix 22). + DiagY float32 + // Z diagonal (matrix 33). + DiagZ float32 + // X off-diagonal (matrix 12 and 21). + OffdiagX float32 + // Y off-diagonal (matrix 13 and 31). + OffdiagY float32 + // Z off-diagonal (matrix 32 and 23). + OffdiagZ float32 + // Confidence in orientation (higher is better). + OrientationConfidence float32 `mavext:"true"` + // orientation before calibration. + OldOrientation MAV_SENSOR_ORIENTATION `mavenum:"uint8" mavext:"true"` + // orientation after calibration. + NewOrientation MAV_SENSOR_ORIENTATION `mavenum:"uint8" mavext:"true"` + // field radius correction factor + ScaleFactor float32 `mavext:"true"` +} + +// GetID implements the msg.Message interface. +func (*MessageMagCalReport) GetID() uint32 { + return 192 +} diff --git a/pkg/dialects/development/msg_manual_control.go b/pkg/dialects/development/msg_manual_control.go new file mode 100644 index 000000000..1ad9f7b4b --- /dev/null +++ b/pkg/dialects/development/msg_manual_control.go @@ -0,0 +1,32 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package development + +// This message provides an API for manually controlling the vehicle using standard joystick axes nomenclature, along with a joystick-like input device. Unused axes can be disabled and buttons states are transmitted as individual on/off bits of a bitmask +type MessageManualControl struct { + // The system to be controlled. + Target uint8 + // X-axis, normalized to the range [-1000,1000]. A value of INT16_MAX indicates that this axis is invalid. Generally corresponds to forward(1000)-backward(-1000) movement on a joystick and the pitch of a vehicle. + X int16 + // Y-axis, normalized to the range [-1000,1000]. A value of INT16_MAX indicates that this axis is invalid. Generally corresponds to left(-1000)-right(1000) movement on a joystick and the roll of a vehicle. + Y int16 + // Z-axis, normalized to the range [-1000,1000]. A value of INT16_MAX indicates that this axis is invalid. Generally corresponds to a separate slider movement with maximum being 1000 and minimum being -1000 on a joystick and the thrust of a vehicle. Positive values are positive thrust, negative values are negative thrust. + Z int16 + // R-axis, normalized to the range [-1000,1000]. A value of INT16_MAX indicates that this axis is invalid. Generally corresponds to a twisting of the joystick, with counter-clockwise being 1000 and clockwise being -1000, and the yaw of a vehicle. + R int16 + // A bitfield corresponding to the joystick buttons' 0-15 current state, 1 for pressed, 0 for released. The lowest bit corresponds to Button 1. + Buttons uint16 + // A bitfield corresponding to the joystick buttons' 16-31 current state, 1 for pressed, 0 for released. The lowest bit corresponds to Button 16. + Buttons2 uint16 `mavext:"true"` + // Set bits to 1 to indicate which of the following extension fields contain valid data: bit 0: pitch, bit 1: roll. + EnabledExtensions uint8 `mavext:"true"` + // Pitch-only-axis, normalized to the range [-1000,1000]. Generally corresponds to pitch on vehicles with additional degrees of freedom. Valid if bit 0 of enabled_extensions field is set. Set to 0 if invalid. + S int16 `mavext:"true"` + // Roll-only-axis, normalized to the range [-1000,1000]. Generally corresponds to roll on vehicles with additional degrees of freedom. Valid if bit 1 of enabled_extensions field is set. Set to 0 if invalid. + T int16 `mavext:"true"` +} + +// GetID implements the msg.Message interface. +func (*MessageManualControl) GetID() uint32 { + return 69 +} diff --git a/pkg/dialects/development/msg_manual_setpoint.go b/pkg/dialects/development/msg_manual_setpoint.go new file mode 100644 index 000000000..60ff6d410 --- /dev/null +++ b/pkg/dialects/development/msg_manual_setpoint.go @@ -0,0 +1,26 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package development + +// Setpoint in roll, pitch, yaw and thrust from the operator +type MessageManualSetpoint struct { + // Timestamp (time since system boot). + TimeBootMs uint32 + // Desired roll rate + Roll float32 + // Desired pitch rate + Pitch float32 + // Desired yaw rate + Yaw float32 + // Collective thrust, normalized to 0 .. 1 + Thrust float32 + // Flight mode switch position, 0.. 255 + ModeSwitch uint8 + // Override mode switch position, 0.. 255 + ManualOverrideSwitch uint8 +} + +// GetID implements the msg.Message interface. +func (*MessageManualSetpoint) GetID() uint32 { + return 81 +} diff --git a/pkg/dialects/development/msg_memory_vect.go b/pkg/dialects/development/msg_memory_vect.go new file mode 100644 index 000000000..aac2242c8 --- /dev/null +++ b/pkg/dialects/development/msg_memory_vect.go @@ -0,0 +1,20 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package development + +// Send raw controller memory. The use of this message is discouraged for normal packets, but a quite efficient way for testing new messages and getting experimental debug output. +type MessageMemoryVect struct { + // Starting address of the debug variables + Address uint16 + // Version code of the type variable. 0=unknown, type ignored and assumed int16_t. 1=as below + Ver uint8 + // Type code of the memory variables. for ver = 1: 0=16 x int16_t, 1=16 x uint16_t, 2=16 x Q15, 3=16 x 1Q14 + Type uint8 + // Memory contents at specified address + Value [32]int8 +} + +// GetID implements the msg.Message interface. +func (*MessageMemoryVect) GetID() uint32 { + return 249 +} diff --git a/pkg/dialects/development/msg_message_interval.go b/pkg/dialects/development/msg_message_interval.go new file mode 100644 index 000000000..fd0d165f7 --- /dev/null +++ b/pkg/dialects/development/msg_message_interval.go @@ -0,0 +1,16 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package development + +// The interval between messages for a particular MAVLink message ID. This message is the response to the MAV_CMD_GET_MESSAGE_INTERVAL command. This interface replaces DATA_STREAM. +type MessageMessageInterval struct { + // The ID of the requested MAVLink message. v1.0 is limited to 254 messages. + MessageId uint16 + // The interval between two messages. A value of -1 indicates this stream is disabled, 0 indicates it is not available, > 0 indicates the interval at which it is sent. + IntervalUs int32 +} + +// GetID implements the msg.Message interface. +func (*MessageMessageInterval) GetID() uint32 { + return 244 +} diff --git a/pkg/dialects/development/msg_mission_ack.go b/pkg/dialects/development/msg_mission_ack.go new file mode 100644 index 000000000..41cf21583 --- /dev/null +++ b/pkg/dialects/development/msg_mission_ack.go @@ -0,0 +1,20 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package development + +// Acknowledgment message during waypoint handling. The type field states if this message is a positive ack (type=0) or if an error happened (type=non-zero). +type MessageMissionAck struct { + // System ID + TargetSystem uint8 + // Component ID + TargetComponent uint8 + // Mission result. + Type MAV_MISSION_RESULT `mavenum:"uint8"` + // Mission type. + MissionType MAV_MISSION_TYPE `mavenum:"uint8" mavext:"true"` +} + +// GetID implements the msg.Message interface. +func (*MessageMissionAck) GetID() uint32 { + return 47 +} diff --git a/pkg/dialects/development/msg_mission_changed.go b/pkg/dialects/development/msg_mission_changed.go new file mode 100644 index 000000000..1f45a029a --- /dev/null +++ b/pkg/dialects/development/msg_mission_changed.go @@ -0,0 +1,22 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package development + +// A broadcast message to notify any ground station or SDK if a mission, geofence or safe points have changed on the vehicle. +type MessageMissionChanged struct { + // Start index for partial mission change (-1 for all items). + StartIndex int16 + // End index of a partial mission change. -1 is a synonym for the last mission item (i.e. selects all items from start_index). Ignore field if start_index=-1. + EndIndex int16 + // System ID of the author of the new mission. + OriginSysid uint8 + // Compnent ID of the author of the new mission. + OriginCompid MAV_COMPONENT `mavenum:"uint8"` + // Mission type. + MissionType MAV_MISSION_TYPE `mavenum:"uint8"` +} + +// GetID implements the msg.Message interface. +func (*MessageMissionChanged) GetID() uint32 { + return 52 +} diff --git a/pkg/dialects/development/msg_mission_checksum.go b/pkg/dialects/development/msg_mission_checksum.go new file mode 100644 index 000000000..b79567e23 --- /dev/null +++ b/pkg/dialects/development/msg_mission_checksum.go @@ -0,0 +1,24 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package development + +// Checksum for the current mission, rally point or geofence plan, or for the "combined" plan (a GCS can use these checksums to determine if it has matching plans). +// This message must be broadcast with the appropriate checksum following any change to a mission, geofence or rally point definition +// (immediately after the MISSION_ACK that completes the upload sequence). +// It may also be requested using MAV_CMD_REQUEST_MESSAGE, where param 2 indicates the plan type for which the checksum is required. +// The checksum must be calculated on the autopilot, but may also be calculated by the GCS. +// The checksum uses the same CRC32 algorithm as MAVLink FTP (https://mavlink.io/en/services/ftp.html#crc32-implementation). +// The checksum for a mission, geofence or rally point definition is run over each item in the plan in seq order (excluding the home location if present in the plan), and covers the following fields (in order): +// frame, command, autocontinue, param1, param2, param3, param4, param5, param6, param7. +// The checksum for the whole plan (MAV_MISSION_TYPE_ALL) is calculated using the same approach, running over each sub-plan in the following order: mission, geofence then rally point. +type MessageMissionChecksum struct { + // Mission type. + MissionType MAV_MISSION_TYPE `mavenum:"uint8"` + // CRC32 checksum of current plan for specified type. + Checksum uint32 +} + +// GetID implements the msg.Message interface. +func (*MessageMissionChecksum) GetID() uint32 { + return 53 +} diff --git a/pkg/dialects/development/msg_mission_clear_all.go b/pkg/dialects/development/msg_mission_clear_all.go new file mode 100644 index 000000000..bd1c259ca --- /dev/null +++ b/pkg/dialects/development/msg_mission_clear_all.go @@ -0,0 +1,18 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package development + +// Delete all mission items at once. +type MessageMissionClearAll struct { + // System ID + TargetSystem uint8 + // Component ID + TargetComponent uint8 + // Mission type. + MissionType MAV_MISSION_TYPE `mavenum:"uint8" mavext:"true"` +} + +// GetID implements the msg.Message interface. +func (*MessageMissionClearAll) GetID() uint32 { + return 45 +} diff --git a/pkg/dialects/development/msg_mission_count.go b/pkg/dialects/development/msg_mission_count.go new file mode 100644 index 000000000..cf5c28edd --- /dev/null +++ b/pkg/dialects/development/msg_mission_count.go @@ -0,0 +1,20 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package development + +// This message is emitted as response to MISSION_REQUEST_LIST by the MAV and to initiate a write transaction. The GCS can then request the individual mission item based on the knowledge of the total number of waypoints. +type MessageMissionCount struct { + // System ID + TargetSystem uint8 + // Component ID + TargetComponent uint8 + // Number of mission items in the sequence + Count uint16 + // Mission type. + MissionType MAV_MISSION_TYPE `mavenum:"uint8" mavext:"true"` +} + +// GetID implements the msg.Message interface. +func (*MessageMissionCount) GetID() uint32 { + return 44 +} diff --git a/pkg/dialects/development/msg_mission_current.go b/pkg/dialects/development/msg_mission_current.go new file mode 100644 index 000000000..9b497a413 --- /dev/null +++ b/pkg/dialects/development/msg_mission_current.go @@ -0,0 +1,14 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package development + +// Message that announces the sequence number of the current active mission item. The MAV will fly towards this mission item. +type MessageMissionCurrent struct { + // Sequence + Seq uint16 +} + +// GetID implements the msg.Message interface. +func (*MessageMissionCurrent) GetID() uint32 { + return 42 +} diff --git a/pkg/dialects/development/msg_mission_item.go b/pkg/dialects/development/msg_mission_item.go new file mode 100644 index 000000000..9af2d76cd --- /dev/null +++ b/pkg/dialects/development/msg_mission_item.go @@ -0,0 +1,43 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package development + +// Message encoding a mission item. This message is emitted to announce +// the presence of a mission item and to set a mission item on the system. The mission item can be either in x, y, z meters (type: LOCAL) or x:lat, y:lon, z:altitude. Local frame is Z-down, right handed (NED), global frame is Z-up, right handed (ENU). NaN may be used to indicate an optional/default value (e.g. to use the system's current latitude or yaw rather than a specific value). See also https://mavlink.io/en/services/mission.html. +type MessageMissionItem struct { + // System ID + TargetSystem uint8 + // Component ID + TargetComponent uint8 + // Sequence + Seq uint16 + // The coordinate system of the waypoint. + Frame MAV_FRAME `mavenum:"uint8"` + // The scheduled action for the waypoint. + Command MAV_CMD `mavenum:"uint16"` + // false:0, true:1 + Current uint8 + // Autocontinue to next waypoint + Autocontinue uint8 + // PARAM1, see MAV_CMD enum + Param1 float32 + // PARAM2, see MAV_CMD enum + Param2 float32 + // PARAM3, see MAV_CMD enum + Param3 float32 + // PARAM4, see MAV_CMD enum + Param4 float32 + // PARAM5 / local: X coordinate, global: latitude + X float32 + // PARAM6 / local: Y coordinate, global: longitude + Y float32 + // PARAM7 / local: Z coordinate, global: altitude (relative or absolute, depending on frame). + Z float32 + // Mission type. + MissionType MAV_MISSION_TYPE `mavenum:"uint8" mavext:"true"` +} + +// GetID implements the msg.Message interface. +func (*MessageMissionItem) GetID() uint32 { + return 39 +} diff --git a/pkg/dialects/development/msg_mission_item_int.go b/pkg/dialects/development/msg_mission_item_int.go new file mode 100644 index 000000000..0e1fdbc17 --- /dev/null +++ b/pkg/dialects/development/msg_mission_item_int.go @@ -0,0 +1,43 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package development + +// Message encoding a mission item. This message is emitted to announce +// the presence of a mission item and to set a mission item on the system. The mission item can be either in x, y, z meters (type: LOCAL) or x:lat, y:lon, z:altitude. Local frame is Z-down, right handed (NED), global frame is Z-up, right handed (ENU). NaN or INT32_MAX may be used in float/integer params (respectively) to indicate optional/default values (e.g. to use the component's current latitude, yaw rather than a specific value). See also https://mavlink.io/en/services/mission.html. +type MessageMissionItemInt struct { + // System ID + TargetSystem uint8 + // Component ID + TargetComponent uint8 + // Waypoint ID (sequence number). Starts at zero. Increases monotonically for each waypoint, no gaps in the sequence (0,1,2,3,4). + Seq uint16 + // The coordinate system of the waypoint. + Frame MAV_FRAME `mavenum:"uint8"` + // The scheduled action for the waypoint. + Command MAV_CMD `mavenum:"uint16"` + // false:0, true:1 + Current uint8 + // Autocontinue to next waypoint + Autocontinue uint8 + // PARAM1, see MAV_CMD enum + Param1 float32 + // PARAM2, see MAV_CMD enum + Param2 float32 + // PARAM3, see MAV_CMD enum + Param3 float32 + // PARAM4, see MAV_CMD enum + Param4 float32 + // PARAM5 / local: x position in meters * 1e4, global: latitude in degrees * 10^7 + X int32 + // PARAM6 / y position: local: x position in meters * 1e4, global: longitude in degrees *10^7 + Y int32 + // PARAM7 / z position: global: altitude in meters (relative or absolute, depending on frame. + Z float32 + // Mission type. + MissionType MAV_MISSION_TYPE `mavenum:"uint8" mavext:"true"` +} + +// GetID implements the msg.Message interface. +func (*MessageMissionItemInt) GetID() uint32 { + return 73 +} diff --git a/pkg/dialects/development/msg_mission_item_reached.go b/pkg/dialects/development/msg_mission_item_reached.go new file mode 100644 index 000000000..2718c13d3 --- /dev/null +++ b/pkg/dialects/development/msg_mission_item_reached.go @@ -0,0 +1,14 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package development + +// A certain mission item has been reached. The system will either hold this position (or circle on the orbit) or (if the autocontinue on the WP was set) continue to the next waypoint. +type MessageMissionItemReached struct { + // Sequence + Seq uint16 +} + +// GetID implements the msg.Message interface. +func (*MessageMissionItemReached) GetID() uint32 { + return 46 +} diff --git a/pkg/dialects/development/msg_mission_request.go b/pkg/dialects/development/msg_mission_request.go new file mode 100644 index 000000000..18879add5 --- /dev/null +++ b/pkg/dialects/development/msg_mission_request.go @@ -0,0 +1,20 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package development + +// Request the information of the mission item with the sequence number seq. The response of the system to this message should be a MISSION_ITEM message. https://mavlink.io/en/services/mission.html +type MessageMissionRequest struct { + // System ID + TargetSystem uint8 + // Component ID + TargetComponent uint8 + // Sequence + Seq uint16 + // Mission type. + MissionType MAV_MISSION_TYPE `mavenum:"uint8" mavext:"true"` +} + +// GetID implements the msg.Message interface. +func (*MessageMissionRequest) GetID() uint32 { + return 40 +} diff --git a/pkg/dialects/development/msg_mission_request_int.go b/pkg/dialects/development/msg_mission_request_int.go new file mode 100644 index 000000000..85b44add1 --- /dev/null +++ b/pkg/dialects/development/msg_mission_request_int.go @@ -0,0 +1,20 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package development + +// Request the information of the mission item with the sequence number seq. The response of the system to this message should be a MISSION_ITEM_INT message. https://mavlink.io/en/services/mission.html +type MessageMissionRequestInt struct { + // System ID + TargetSystem uint8 + // Component ID + TargetComponent uint8 + // Sequence + Seq uint16 + // Mission type. + MissionType MAV_MISSION_TYPE `mavenum:"uint8" mavext:"true"` +} + +// GetID implements the msg.Message interface. +func (*MessageMissionRequestInt) GetID() uint32 { + return 51 +} diff --git a/pkg/dialects/development/msg_mission_request_list.go b/pkg/dialects/development/msg_mission_request_list.go new file mode 100644 index 000000000..78cdc8bf1 --- /dev/null +++ b/pkg/dialects/development/msg_mission_request_list.go @@ -0,0 +1,18 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package development + +// Request the overall list of mission items from the system/component. +type MessageMissionRequestList struct { + // System ID + TargetSystem uint8 + // Component ID + TargetComponent uint8 + // Mission type. + MissionType MAV_MISSION_TYPE `mavenum:"uint8" mavext:"true"` +} + +// GetID implements the msg.Message interface. +func (*MessageMissionRequestList) GetID() uint32 { + return 43 +} diff --git a/pkg/dialects/development/msg_mission_request_partial_list.go b/pkg/dialects/development/msg_mission_request_partial_list.go new file mode 100644 index 000000000..1410b3247 --- /dev/null +++ b/pkg/dialects/development/msg_mission_request_partial_list.go @@ -0,0 +1,22 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package development + +// Request a partial list of mission items from the system/component. https://mavlink.io/en/services/mission.html. If start and end index are the same, just send one waypoint. +type MessageMissionRequestPartialList struct { + // System ID + TargetSystem uint8 + // Component ID + TargetComponent uint8 + // Start index + StartIndex int16 + // End index, -1 by default (-1: send list to end). Else a valid index of the list + EndIndex int16 + // Mission type. + MissionType MAV_MISSION_TYPE `mavenum:"uint8" mavext:"true"` +} + +// GetID implements the msg.Message interface. +func (*MessageMissionRequestPartialList) GetID() uint32 { + return 37 +} diff --git a/pkg/dialects/development/msg_mission_set_current.go b/pkg/dialects/development/msg_mission_set_current.go new file mode 100644 index 000000000..67b7f684c --- /dev/null +++ b/pkg/dialects/development/msg_mission_set_current.go @@ -0,0 +1,18 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package development + +// Set the mission item with sequence number seq as current item. This means that the MAV will continue to this mission item on the shortest path (not following the mission items in-between). +type MessageMissionSetCurrent struct { + // System ID + TargetSystem uint8 + // Component ID + TargetComponent uint8 + // Sequence + Seq uint16 +} + +// GetID implements the msg.Message interface. +func (*MessageMissionSetCurrent) GetID() uint32 { + return 41 +} diff --git a/pkg/dialects/development/msg_mission_write_partial_list.go b/pkg/dialects/development/msg_mission_write_partial_list.go new file mode 100644 index 000000000..84031d631 --- /dev/null +++ b/pkg/dialects/development/msg_mission_write_partial_list.go @@ -0,0 +1,22 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package development + +// This message is sent to the MAV to write a partial list. If start index == end index, only one item will be transmitted / updated. If the start index is NOT 0 and above the current list size, this request should be REJECTED! +type MessageMissionWritePartialList struct { + // System ID + TargetSystem uint8 + // Component ID + TargetComponent uint8 + // Start index. Must be smaller / equal to the largest index of the current onboard list. + StartIndex int16 + // End index, equal or greater than start index. + EndIndex int16 + // Mission type. + MissionType MAV_MISSION_TYPE `mavenum:"uint8" mavext:"true"` +} + +// GetID implements the msg.Message interface. +func (*MessageMissionWritePartialList) GetID() uint32 { + return 38 +} diff --git a/pkg/dialects/development/msg_mount_orientation.go b/pkg/dialects/development/msg_mount_orientation.go new file mode 100644 index 000000000..f81210860 --- /dev/null +++ b/pkg/dialects/development/msg_mount_orientation.go @@ -0,0 +1,22 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package development + +// Orientation of a mount +type MessageMountOrientation struct { + // Timestamp (time since system boot). + TimeBootMs uint32 + // Roll in global frame (set to NaN for invalid). + Roll float32 + // Pitch in global frame (set to NaN for invalid). + Pitch float32 + // Yaw relative to vehicle (set to NaN for invalid). + Yaw float32 + // Yaw in absolute frame relative to Earth's North, north is 0 (set to NaN for invalid). + YawAbsolute float32 `mavext:"true"` +} + +// GetID implements the msg.Message interface. +func (*MessageMountOrientation) GetID() uint32 { + return 265 +} diff --git a/pkg/dialects/development/msg_named_value_float.go b/pkg/dialects/development/msg_named_value_float.go new file mode 100644 index 000000000..6de2cb634 --- /dev/null +++ b/pkg/dialects/development/msg_named_value_float.go @@ -0,0 +1,18 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package development + +// Send a key-value pair as float. The use of this message is discouraged for normal packets, but a quite efficient way for testing new messages and getting experimental debug output. +type MessageNamedValueFloat struct { + // Timestamp (time since system boot). + TimeBootMs uint32 + // Name of the debug variable + Name string `mavlen:"10"` + // Floating point value + Value float32 +} + +// GetID implements the msg.Message interface. +func (*MessageNamedValueFloat) GetID() uint32 { + return 251 +} diff --git a/pkg/dialects/development/msg_named_value_int.go b/pkg/dialects/development/msg_named_value_int.go new file mode 100644 index 000000000..683309e24 --- /dev/null +++ b/pkg/dialects/development/msg_named_value_int.go @@ -0,0 +1,18 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package development + +// Send a key-value pair as integer. The use of this message is discouraged for normal packets, but a quite efficient way for testing new messages and getting experimental debug output. +type MessageNamedValueInt struct { + // Timestamp (time since system boot). + TimeBootMs uint32 + // Name of the debug variable + Name string `mavlen:"10"` + // Signed integer value + Value int32 +} + +// GetID implements the msg.Message interface. +func (*MessageNamedValueInt) GetID() uint32 { + return 252 +} diff --git a/pkg/dialects/development/msg_nav_controller_output.go b/pkg/dialects/development/msg_nav_controller_output.go new file mode 100644 index 000000000..6bbb7f1b0 --- /dev/null +++ b/pkg/dialects/development/msg_nav_controller_output.go @@ -0,0 +1,28 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package development + +// The state of the navigation and position controller. +type MessageNavControllerOutput struct { + // Current desired roll + NavRoll float32 + // Current desired pitch + NavPitch float32 + // Current desired heading + NavBearing int16 + // Bearing to current waypoint/target + TargetBearing int16 + // Distance to active waypoint + WpDist uint16 + // Current altitude error + AltError float32 + // Current airspeed error + AspdError float32 + // Current crosstrack error on x-y plane + XtrackError float32 +} + +// GetID implements the msg.Message interface. +func (*MessageNavControllerOutput) GetID() uint32 { + return 62 +} diff --git a/pkg/dialects/development/msg_obstacle_distance.go b/pkg/dialects/development/msg_obstacle_distance.go new file mode 100644 index 000000000..c692782ab --- /dev/null +++ b/pkg/dialects/development/msg_obstacle_distance.go @@ -0,0 +1,30 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package development + +// Obstacle distances in front of the sensor, starting from the left in increment degrees to the right +type MessageObstacleDistance struct { + // Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. + TimeUsec uint64 + // Class id of the distance sensor type. + SensorType MAV_DISTANCE_SENSOR `mavenum:"uint8"` + // Distance of obstacles around the vehicle with index 0 corresponding to north + angle_offset, unless otherwise specified in the frame. A value of 0 is valid and means that the obstacle is practically touching the sensor. A value of max_distance +1 means no obstacle is present. A value of UINT16_MAX for unknown/not used. In a array element, one unit corresponds to 1cm. + Distances [72]uint16 + // Angular width in degrees of each array element. Increment direction is clockwise. This field is ignored if increment_f is non-zero. + Increment uint8 + // Minimum distance the sensor can measure. + MinDistance uint16 + // Maximum distance the sensor can measure. + MaxDistance uint16 + // Angular width in degrees of each array element as a float. If non-zero then this value is used instead of the uint8_t increment field. Positive is clockwise direction, negative is counter-clockwise. + IncrementF float32 `mavext:"true"` + // Relative angle offset of the 0-index element in the distances array. Value of 0 corresponds to forward. Positive is clockwise direction, negative is counter-clockwise. + AngleOffset float32 `mavext:"true"` + // Coordinate frame of reference for the yaw rotation and offset of the sensor data. Defaults to MAV_FRAME_GLOBAL, which is north aligned. For body-mounted sensors use MAV_FRAME_BODY_FRD, which is vehicle front aligned. + Frame MAV_FRAME `mavenum:"uint8" mavext:"true"` +} + +// GetID implements the msg.Message interface. +func (*MessageObstacleDistance) GetID() uint32 { + return 330 +} diff --git a/pkg/dialects/development/msg_odometry.go b/pkg/dialects/development/msg_odometry.go new file mode 100644 index 000000000..3a8e9ac17 --- /dev/null +++ b/pkg/dialects/development/msg_odometry.go @@ -0,0 +1,46 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package development + +// Odometry message to communicate odometry information with an external interface. Fits ROS REP 147 standard for aerial vehicles (http://www.ros.org/reps/rep-0147.html). +type MessageOdometry struct { + // Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. + TimeUsec uint64 + // Coordinate frame of reference for the pose data. + FrameId MAV_FRAME `mavenum:"uint8"` + // Coordinate frame of reference for the velocity in free space (twist) data. + ChildFrameId MAV_FRAME `mavenum:"uint8"` + // X Position + X float32 + // Y Position + Y float32 + // Z Position + Z float32 + // Quaternion components, w, x, y, z (1 0 0 0 is the null-rotation) + Q [4]float32 + // X linear speed + Vx float32 + // Y linear speed + Vy float32 + // Z linear speed + Vz float32 + // Roll angular speed + Rollspeed float32 + // Pitch angular speed + Pitchspeed float32 + // Yaw angular speed + Yawspeed float32 + // Row-major representation of a 6x6 pose cross-covariance matrix upper right triangle (states: x, y, z, roll, pitch, yaw; first six entries are the first ROW, next five entries are the second ROW, etc.). If unknown, assign NaN value to first element in the array. + PoseCovariance [21]float32 + // Row-major representation of a 6x6 velocity cross-covariance matrix upper right triangle (states: vx, vy, vz, rollspeed, pitchspeed, yawspeed; first six entries are the first ROW, next five entries are the second ROW, etc.). If unknown, assign NaN value to first element in the array. + VelocityCovariance [21]float32 + // Estimate reset counter. This should be incremented when the estimate resets in any of the dimensions (position, velocity, attitude, angular speed). This is designed to be used when e.g an external SLAM system detects a loop-closure and the estimate jumps. + ResetCounter uint8 `mavext:"true"` + // Type of estimator that is providing the odometry. + EstimatorType MAV_ESTIMATOR_TYPE `mavenum:"uint8" mavext:"true"` +} + +// GetID implements the msg.Message interface. +func (*MessageOdometry) GetID() uint32 { + return 331 +} diff --git a/pkg/dialects/development/msg_onboard_computer_status.go b/pkg/dialects/development/msg_onboard_computer_status.go new file mode 100644 index 000000000..5233bd636 --- /dev/null +++ b/pkg/dialects/development/msg_onboard_computer_status.go @@ -0,0 +1,52 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package development + +// Hardware status sent by an onboard computer. +type MessageOnboardComputerStatus struct { + // Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. + TimeUsec uint64 + // Time since system boot. + Uptime uint32 + // Type of the onboard computer: 0: Mission computer primary, 1: Mission computer backup 1, 2: Mission computer backup 2, 3: Compute node, 4-5: Compute spares, 6-9: Payload computers. + Type uint8 + // CPU usage on the component in percent (100 - idle). A value of UINT8_MAX implies the field is unused. + CpuCores [8]uint8 + // Combined CPU usage as the last 10 slices of 100 MS (a histogram). This allows to identify spikes in load that max out the system, but only for a short amount of time. A value of UINT8_MAX implies the field is unused. + CpuCombined [10]uint8 + // GPU usage on the component in percent (100 - idle). A value of UINT8_MAX implies the field is unused. + GpuCores [4]uint8 + // Combined GPU usage as the last 10 slices of 100 MS (a histogram). This allows to identify spikes in load that max out the system, but only for a short amount of time. A value of UINT8_MAX implies the field is unused. + GpuCombined [10]uint8 + // Temperature of the board. A value of INT8_MAX implies the field is unused. + TemperatureBoard int8 + // Temperature of the CPU core. A value of INT8_MAX implies the field is unused. + TemperatureCore [8]int8 + // Fan speeds. A value of INT16_MAX implies the field is unused. + FanSpeed [4]int16 + // Amount of used RAM on the component system. A value of UINT32_MAX implies the field is unused. + RamUsage uint32 + // Total amount of RAM on the component system. A value of UINT32_MAX implies the field is unused. + RamTotal uint32 + // Storage type: 0: HDD, 1: SSD, 2: EMMC, 3: SD card (non-removable), 4: SD card (removable). A value of UINT32_MAX implies the field is unused. + StorageType [4]uint32 + // Amount of used storage space on the component system. A value of UINT32_MAX implies the field is unused. + StorageUsage [4]uint32 + // Total amount of storage space on the component system. A value of UINT32_MAX implies the field is unused. + StorageTotal [4]uint32 + // Link type: 0-9: UART, 10-19: Wired network, 20-29: Wifi, 30-39: Point-to-point proprietary, 40-49: Mesh proprietary + LinkType [6]uint32 + // Network traffic from the component system. A value of UINT32_MAX implies the field is unused. + LinkTxRate [6]uint32 + // Network traffic to the component system. A value of UINT32_MAX implies the field is unused. + LinkRxRate [6]uint32 + // Network capacity from the component system. A value of UINT32_MAX implies the field is unused. + LinkTxMax [6]uint32 + // Network capacity to the component system. A value of UINT32_MAX implies the field is unused. + LinkRxMax [6]uint32 +} + +// GetID implements the msg.Message interface. +func (*MessageOnboardComputerStatus) GetID() uint32 { + return 390 +} diff --git a/pkg/dialects/development/msg_open_drone_id_authentication.go b/pkg/dialects/development/msg_open_drone_id_authentication.go new file mode 100644 index 000000000..dbd9c0721 --- /dev/null +++ b/pkg/dialects/development/msg_open_drone_id_authentication.go @@ -0,0 +1,30 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package development + +// Data for filling the OpenDroneID Authentication message. The Authentication Message defines a field that can provide a means of authenticity for the identity of the UAS (Unmanned Aircraft System). The Authentication message can have two different formats. Five data pages are supported. For data page 0, the fields PageCount, Length and TimeStamp are present and AuthData is only 17 bytes. For data page 1 through 15, PageCount, Length and TimeStamp are not present and the size of AuthData is 23 bytes. +type MessageOpenDroneIdAuthentication struct { + // System ID (0 for broadcast). + TargetSystem uint8 + // Component ID (0 for broadcast). + TargetComponent uint8 + // Only used for drone ID data received from other UAs. See detailed description at https://mavlink.io/en/services/opendroneid.html. + IdOrMac [20]uint8 + // Indicates the type of authentication. + AuthenticationType MAV_ODID_AUTH_TYPE `mavenum:"uint8"` + // Allowed range is 0 - 15. + DataPage uint8 + // This field is only present for page 0. Allowed range is 0 - 15. See the description of struct ODID_Auth_data at https://github.com/opendroneid/opendroneid-core-c/blob/master/libopendroneid/opendroneid.h. + LastPageIndex uint8 + // This field is only present for page 0. Total bytes of authentication_data from all data pages. See the description of struct ODID_Auth_data at https://github.com/opendroneid/opendroneid-core-c/blob/master/libopendroneid/opendroneid.h. + Length uint8 + // This field is only present for page 0. 32 bit Unix Timestamp in seconds since 00:00:00 01/01/2019. + Timestamp uint32 + // Opaque authentication data. For page 0, the size is only 17 bytes. For other pages, the size is 23 bytes. Shall be filled with nulls in the unused portion of the field. + AuthenticationData [23]uint8 +} + +// GetID implements the msg.Message interface. +func (*MessageOpenDroneIdAuthentication) GetID() uint32 { + return 12902 +} diff --git a/pkg/dialects/development/msg_open_drone_id_basic_id.go b/pkg/dialects/development/msg_open_drone_id_basic_id.go new file mode 100644 index 000000000..0b0f75fb4 --- /dev/null +++ b/pkg/dialects/development/msg_open_drone_id_basic_id.go @@ -0,0 +1,24 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package development + +// Data for filling the OpenDroneID Basic ID message. This and the below messages are primarily meant for feeding data to/from an OpenDroneID implementation. E.g. https://github.com/opendroneid/opendroneid-core-c. These messages are compatible with the ASTM Remote ID standard at https://www.astm.org/Standards/F3411.htm and the ASD-STAN Direct Remote ID standard. The usage of these messages is documented at https://mavlink.io/en/services/opendroneid.html. +type MessageOpenDroneIdBasicId struct { + // System ID (0 for broadcast). + TargetSystem uint8 + // Component ID (0 for broadcast). + TargetComponent uint8 + // Only used for drone ID data received from other UAs. See detailed description at https://mavlink.io/en/services/opendroneid.html. + IdOrMac [20]uint8 + // Indicates the format for the uas_id field of this message. + IdType MAV_ODID_ID_TYPE `mavenum:"uint8"` + // Indicates the type of UA (Unmanned Aircraft). + UaType MAV_ODID_UA_TYPE `mavenum:"uint8"` + // UAS (Unmanned Aircraft System) ID following the format specified by id_type. Shall be filled with nulls in the unused portion of the field. + UasId [20]uint8 +} + +// GetID implements the msg.Message interface. +func (*MessageOpenDroneIdBasicId) GetID() uint32 { + return 12900 +} diff --git a/pkg/dialects/development/msg_open_drone_id_location.go b/pkg/dialects/development/msg_open_drone_id_location.go new file mode 100644 index 000000000..bf03acaba --- /dev/null +++ b/pkg/dialects/development/msg_open_drone_id_location.go @@ -0,0 +1,50 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package development + +// Data for filling the OpenDroneID Location message. The float data types are 32-bit IEEE 754. The Location message provides the location, altitude, direction and speed of the aircraft. +type MessageOpenDroneIdLocation struct { + // System ID (0 for broadcast). + TargetSystem uint8 + // Component ID (0 for broadcast). + TargetComponent uint8 + // Only used for drone ID data received from other UAs. See detailed description at https://mavlink.io/en/services/opendroneid.html. + IdOrMac [20]uint8 + // Indicates whether the unmanned aircraft is on the ground or in the air. + Status MAV_ODID_STATUS `mavenum:"uint8"` + // Direction over ground (not heading, but direction of movement) measured clockwise from true North: 0 - 35999 centi-degrees. If unknown: 36100 centi-degrees. + Direction uint16 + // Ground speed. Positive only. If unknown: 25500 cm/s. If speed is larger than 25425 cm/s, use 25425 cm/s. + SpeedHorizontal uint16 + // The vertical speed. Up is positive. If unknown: 6300 cm/s. If speed is larger than 6200 cm/s, use 6200 cm/s. If lower than -6200 cm/s, use -6200 cm/s. + SpeedVertical int16 + // Current latitude of the unmanned aircraft. If unknown: 0 (both Lat/Lon). + Latitude int32 + // Current longitude of the unmanned aircraft. If unknown: 0 (both Lat/Lon). + Longitude int32 + // The altitude calculated from the barometric pressue. Reference is against 29.92inHg or 1013.2mb. If unknown: -1000 m. + AltitudeBarometric float32 + // The geodetic altitude as defined by WGS84. If unknown: -1000 m. + AltitudeGeodetic float32 + // Indicates the reference point for the height field. + HeightReference MAV_ODID_HEIGHT_REF `mavenum:"uint8"` + // The current height of the unmanned aircraft above the take-off location or the ground as indicated by height_reference. If unknown: -1000 m. + Height float32 + // The accuracy of the horizontal position. + HorizontalAccuracy MAV_ODID_HOR_ACC `mavenum:"uint8"` + // The accuracy of the vertical position. + VerticalAccuracy MAV_ODID_VER_ACC `mavenum:"uint8"` + // The accuracy of the barometric altitude. + BarometerAccuracy MAV_ODID_VER_ACC `mavenum:"uint8"` + // The accuracy of the horizontal and vertical speed. + SpeedAccuracy MAV_ODID_SPEED_ACC `mavenum:"uint8"` + // Seconds after the full hour with reference to UTC time. Typically the GPS outputs a time-of-week value in milliseconds. First convert that to UTC and then convert for this field using ((float) (time_week_ms % (60*60*1000))) / 1000. If unknown: 0xFFFF. + Timestamp float32 + // The accuracy of the timestamps. + TimestampAccuracy MAV_ODID_TIME_ACC `mavenum:"uint8"` +} + +// GetID implements the msg.Message interface. +func (*MessageOpenDroneIdLocation) GetID() uint32 { + return 12901 +} diff --git a/pkg/dialects/development/msg_open_drone_id_message_pack.go b/pkg/dialects/development/msg_open_drone_id_message_pack.go new file mode 100644 index 000000000..1955324d0 --- /dev/null +++ b/pkg/dialects/development/msg_open_drone_id_message_pack.go @@ -0,0 +1,24 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package development + +// An OpenDroneID message pack is a container for multiple encoded OpenDroneID messages (i.e. not in the format given for the above messages descriptions but after encoding into the compressed OpenDroneID byte format). Used e.g. when transmitting on Bluetooth 5.0 Long Range/Extended Advertising or on WiFi Neighbor Aware Networking. +type MessageOpenDroneIdMessagePack struct { + // System ID (0 for broadcast). + TargetSystem uint8 + // Component ID (0 for broadcast). + TargetComponent uint8 + // Only used for drone ID data received from other UAs. See detailed description at https://mavlink.io/en/services/opendroneid.html. + IdOrMac [20]uint8 + // This field must currently always be equal to 25 (bytes), since all encoded OpenDroneID messages are specificed to have this length. + SingleMessageSize uint8 + // Number of encoded messages in the pack (not the number of bytes). Allowed range is 1 - 9. + MsgPackSize uint8 + // Concatenation of encoded OpenDroneID messages. Shall be filled with nulls in the unused portion of the field. + Messages [225]uint8 +} + +// GetID implements the msg.Message interface. +func (*MessageOpenDroneIdMessagePack) GetID() uint32 { + return 12915 +} diff --git a/pkg/dialects/development/msg_open_drone_id_operator_id.go b/pkg/dialects/development/msg_open_drone_id_operator_id.go new file mode 100644 index 000000000..48e4f67f2 --- /dev/null +++ b/pkg/dialects/development/msg_open_drone_id_operator_id.go @@ -0,0 +1,22 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package development + +// Data for filling the OpenDroneID Operator ID message, which contains the CAA (Civil Aviation Authority) issued operator ID. +type MessageOpenDroneIdOperatorId struct { + // System ID (0 for broadcast). + TargetSystem uint8 + // Component ID (0 for broadcast). + TargetComponent uint8 + // Only used for drone ID data received from other UAs. See detailed description at https://mavlink.io/en/services/opendroneid.html. + IdOrMac [20]uint8 + // Indicates the type of the operator_id field. + OperatorIdType MAV_ODID_OPERATOR_ID_TYPE `mavenum:"uint8"` + // Text description or numeric value expressed as ASCII characters. Shall be filled with nulls in the unused portion of the field. + OperatorId string `mavlen:"20"` +} + +// GetID implements the msg.Message interface. +func (*MessageOpenDroneIdOperatorId) GetID() uint32 { + return 12905 +} diff --git a/pkg/dialects/development/msg_open_drone_id_self_id.go b/pkg/dialects/development/msg_open_drone_id_self_id.go new file mode 100644 index 000000000..6d3e3aec8 --- /dev/null +++ b/pkg/dialects/development/msg_open_drone_id_self_id.go @@ -0,0 +1,22 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package development + +// Data for filling the OpenDroneID Self ID message. The Self ID Message is an opportunity for the operator to (optionally) declare their identity and purpose of the flight. This message can provide additional information that could reduce the threat profile of a UA (Unmanned Aircraft) flying in a particular area or manner. +type MessageOpenDroneIdSelfId struct { + // System ID (0 for broadcast). + TargetSystem uint8 + // Component ID (0 for broadcast). + TargetComponent uint8 + // Only used for drone ID data received from other UAs. See detailed description at https://mavlink.io/en/services/opendroneid.html. + IdOrMac [20]uint8 + // Indicates the type of the description field. + DescriptionType MAV_ODID_DESC_TYPE `mavenum:"uint8"` + // Text description or numeric value expressed as ASCII characters. Shall be filled with nulls in the unused portion of the field. + Description string `mavlen:"23"` +} + +// GetID implements the msg.Message interface. +func (*MessageOpenDroneIdSelfId) GetID() uint32 { + return 12903 +} diff --git a/pkg/dialects/development/msg_open_drone_id_system.go b/pkg/dialects/development/msg_open_drone_id_system.go new file mode 100644 index 000000000..6ac6d5005 --- /dev/null +++ b/pkg/dialects/development/msg_open_drone_id_system.go @@ -0,0 +1,40 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package development + +// Data for filling the OpenDroneID System message. The System Message contains general system information including the operator location and possible aircraft group information. +type MessageOpenDroneIdSystem struct { + // System ID (0 for broadcast). + TargetSystem uint8 + // Component ID (0 for broadcast). + TargetComponent uint8 + // Only used for drone ID data received from other UAs. See detailed description at https://mavlink.io/en/services/opendroneid.html. + IdOrMac [20]uint8 + // Specifies the operator location type. + OperatorLocationType MAV_ODID_OPERATOR_LOCATION_TYPE `mavenum:"uint8"` + // Specifies the classification type of the UA. + ClassificationType MAV_ODID_CLASSIFICATION_TYPE `mavenum:"uint8"` + // Latitude of the operator. If unknown: 0 (both Lat/Lon). + OperatorLatitude int32 + // Longitude of the operator. If unknown: 0 (both Lat/Lon). + OperatorLongitude int32 + // Number of aircraft in the area, group or formation (default 1). + AreaCount uint16 + // Radius of the cylindrical area of the group or formation (default 0). + AreaRadius uint16 + // Area Operations Ceiling relative to WGS84. If unknown: -1000 m. + AreaCeiling float32 + // Area Operations Floor relative to WGS84. If unknown: -1000 m. + AreaFloor float32 + // When classification_type is MAV_ODID_CLASSIFICATION_TYPE_EU, specifies the category of the UA. + CategoryEu MAV_ODID_CATEGORY_EU `mavenum:"uint8"` + // When classification_type is MAV_ODID_CLASSIFICATION_TYPE_EU, specifies the class of the UA. + ClassEu MAV_ODID_CLASS_EU `mavenum:"uint8"` + // Geodetic altitude of the operator relative to WGS84. If unknown: -1000 m. + OperatorAltitudeGeo float32 +} + +// GetID implements the msg.Message interface. +func (*MessageOpenDroneIdSystem) GetID() uint32 { + return 12904 +} diff --git a/pkg/dialects/development/msg_optical_flow.go b/pkg/dialects/development/msg_optical_flow.go new file mode 100644 index 000000000..070db6e99 --- /dev/null +++ b/pkg/dialects/development/msg_optical_flow.go @@ -0,0 +1,32 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package development + +// Optical flow from a flow sensor (e.g. optical mouse sensor) +type MessageOpticalFlow struct { + // Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. + TimeUsec uint64 + // Sensor ID + SensorId uint8 + // Flow in x-sensor direction + FlowX int16 + // Flow in y-sensor direction + FlowY int16 + // Flow in x-sensor direction, angular-speed compensated + FlowCompMX float32 + // Flow in y-sensor direction, angular-speed compensated + FlowCompMY float32 + // Optical flow quality / confidence. 0: bad, 255: maximum quality + Quality uint8 + // Ground distance. Positive value: distance known. Negative value: Unknown distance + GroundDistance float32 + // Flow rate about X axis + FlowRateX float32 `mavext:"true"` + // Flow rate about Y axis + FlowRateY float32 `mavext:"true"` +} + +// GetID implements the msg.Message interface. +func (*MessageOpticalFlow) GetID() uint32 { + return 100 +} diff --git a/pkg/dialects/development/msg_optical_flow_rad.go b/pkg/dialects/development/msg_optical_flow_rad.go new file mode 100644 index 000000000..8487f91e1 --- /dev/null +++ b/pkg/dialects/development/msg_optical_flow_rad.go @@ -0,0 +1,36 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package development + +// Optical flow from an angular rate flow sensor (e.g. PX4FLOW or mouse sensor) +type MessageOpticalFlowRad struct { + // Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. + TimeUsec uint64 + // Sensor ID + SensorId uint8 + // Integration time. Divide integrated_x and integrated_y by the integration time to obtain average flow. The integration time also indicates the. + IntegrationTimeUs uint32 + // Flow around X axis (Sensor RH rotation about the X axis induces a positive flow. Sensor linear motion along the positive Y axis induces a negative flow.) + IntegratedX float32 + // Flow around Y axis (Sensor RH rotation about the Y axis induces a positive flow. Sensor linear motion along the positive X axis induces a positive flow.) + IntegratedY float32 + // RH rotation around X axis + IntegratedXgyro float32 + // RH rotation around Y axis + IntegratedYgyro float32 + // RH rotation around Z axis + IntegratedZgyro float32 + // Temperature + Temperature int16 + // Optical flow quality / confidence. 0: no valid flow, 255: maximum quality + Quality uint8 + // Time since the distance was sampled. + TimeDeltaDistanceUs uint32 + // Distance to the center of the flow field. Positive value (including zero): distance known. Negative value: Unknown distance. + Distance float32 +} + +// GetID implements the msg.Message interface. +func (*MessageOpticalFlowRad) GetID() uint32 { + return 106 +} diff --git a/pkg/dialects/development/msg_orbit_execution_status.go b/pkg/dialects/development/msg_orbit_execution_status.go new file mode 100644 index 000000000..d425392b4 --- /dev/null +++ b/pkg/dialects/development/msg_orbit_execution_status.go @@ -0,0 +1,24 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package development + +// Vehicle status report that is sent out while orbit execution is in progress (see MAV_CMD_DO_ORBIT). +type MessageOrbitExecutionStatus struct { + // Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. + TimeUsec uint64 + // Radius of the orbit circle. Positive values orbit clockwise, negative values orbit counter-clockwise. + Radius float32 + // The coordinate system of the fields: x, y, z. + Frame MAV_FRAME `mavenum:"uint8"` + // X coordinate of center point. Coordinate system depends on frame field: local = x position in meters * 1e4, global = latitude in degrees * 1e7. + X int32 + // Y coordinate of center point. Coordinate system depends on frame field: local = x position in meters * 1e4, global = latitude in degrees * 1e7. + Y int32 + // Altitude of center point. Coordinate system depends on frame field. + Z float32 +} + +// GetID implements the msg.Message interface. +func (*MessageOrbitExecutionStatus) GetID() uint32 { + return 360 +} diff --git a/pkg/dialects/development/msg_param_ack_transaction.go b/pkg/dialects/development/msg_param_ack_transaction.go new file mode 100644 index 000000000..dd5d51c20 --- /dev/null +++ b/pkg/dialects/development/msg_param_ack_transaction.go @@ -0,0 +1,24 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package development + +// Response from a PARAM_SET message when it is used in a transaction. +type MessageParamAckTransaction struct { + // Id of system that sent PARAM_SET message. + TargetSystem uint8 + // Id of system that sent PARAM_SET message. + TargetComponent uint8 + // Parameter id, terminated by NULL if the length is less than 16 human-readable chars and WITHOUT null termination (NULL) byte if the length is exactly 16 chars - applications have to provide 16+1 bytes storage if the ID is stored as string + ParamId string `mavlen:"16"` + // Parameter value (new value if PARAM_ACCEPTED, current value otherwise) + ParamValue float32 + // Parameter type. + ParamType MAV_PARAM_TYPE `mavenum:"uint8"` + // Result code. + ParamResult PARAM_ACK `mavenum:"uint8"` +} + +// GetID implements the msg.Message interface. +func (*MessageParamAckTransaction) GetID() uint32 { + return 19 +} diff --git a/pkg/dialects/development/msg_param_ext_ack.go b/pkg/dialects/development/msg_param_ext_ack.go new file mode 100644 index 000000000..721dc6682 --- /dev/null +++ b/pkg/dialects/development/msg_param_ext_ack.go @@ -0,0 +1,20 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package development + +// Response from a PARAM_EXT_SET message. +type MessageParamExtAck struct { + // Parameter id, terminated by NULL if the length is less than 16 human-readable chars and WITHOUT null termination (NULL) byte if the length is exactly 16 chars - applications have to provide 16+1 bytes storage if the ID is stored as string + ParamId string `mavlen:"16"` + // Parameter value (new value if PARAM_ACK_ACCEPTED, current value otherwise) + ParamValue string `mavlen:"128"` + // Parameter type. + ParamType MAV_PARAM_EXT_TYPE `mavenum:"uint8"` + // Result code. + ParamResult PARAM_ACK `mavenum:"uint8"` +} + +// GetID implements the msg.Message interface. +func (*MessageParamExtAck) GetID() uint32 { + return 324 +} diff --git a/pkg/dialects/development/msg_param_ext_request_list.go b/pkg/dialects/development/msg_param_ext_request_list.go new file mode 100644 index 000000000..635dcdd4a --- /dev/null +++ b/pkg/dialects/development/msg_param_ext_request_list.go @@ -0,0 +1,16 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package development + +// Request all parameters of this component. All parameters should be emitted in response as PARAM_EXT_VALUE. +type MessageParamExtRequestList struct { + // System ID + TargetSystem uint8 + // Component ID + TargetComponent uint8 +} + +// GetID implements the msg.Message interface. +func (*MessageParamExtRequestList) GetID() uint32 { + return 321 +} diff --git a/pkg/dialects/development/msg_param_ext_request_read.go b/pkg/dialects/development/msg_param_ext_request_read.go new file mode 100644 index 000000000..e99bb4849 --- /dev/null +++ b/pkg/dialects/development/msg_param_ext_request_read.go @@ -0,0 +1,20 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package development + +// Request to read the value of a parameter with either the param_id string id or param_index. PARAM_EXT_VALUE should be emitted in response. +type MessageParamExtRequestRead struct { + // System ID + TargetSystem uint8 + // Component ID + TargetComponent uint8 + // Parameter id, terminated by NULL if the length is less than 16 human-readable chars and WITHOUT null termination (NULL) byte if the length is exactly 16 chars - applications have to provide 16+1 bytes storage if the ID is stored as string + ParamId string `mavlen:"16"` + // Parameter index. Set to -1 to use the Parameter ID field as identifier (else param_id will be ignored) + ParamIndex int16 +} + +// GetID implements the msg.Message interface. +func (*MessageParamExtRequestRead) GetID() uint32 { + return 320 +} diff --git a/pkg/dialects/development/msg_param_ext_set.go b/pkg/dialects/development/msg_param_ext_set.go new file mode 100644 index 000000000..4c9b0c6a1 --- /dev/null +++ b/pkg/dialects/development/msg_param_ext_set.go @@ -0,0 +1,22 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package development + +// Set a parameter value. In order to deal with message loss (and retransmission of PARAM_EXT_SET), when setting a parameter value and the new value is the same as the current value, you will immediately get a PARAM_ACK_ACCEPTED response. If the current state is PARAM_ACK_IN_PROGRESS, you will accordingly receive a PARAM_ACK_IN_PROGRESS in response. +type MessageParamExtSet struct { + // System ID + TargetSystem uint8 + // Component ID + TargetComponent uint8 + // Parameter id, terminated by NULL if the length is less than 16 human-readable chars and WITHOUT null termination (NULL) byte if the length is exactly 16 chars - applications have to provide 16+1 bytes storage if the ID is stored as string + ParamId string `mavlen:"16"` + // Parameter value + ParamValue string `mavlen:"128"` + // Parameter type. + ParamType MAV_PARAM_EXT_TYPE `mavenum:"uint8"` +} + +// GetID implements the msg.Message interface. +func (*MessageParamExtSet) GetID() uint32 { + return 323 +} diff --git a/pkg/dialects/development/msg_param_ext_value.go b/pkg/dialects/development/msg_param_ext_value.go new file mode 100644 index 000000000..b9e037d84 --- /dev/null +++ b/pkg/dialects/development/msg_param_ext_value.go @@ -0,0 +1,22 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package development + +// Emit the value of a parameter. The inclusion of param_count and param_index in the message allows the recipient to keep track of received parameters and allows them to re-request missing parameters after a loss or timeout. +type MessageParamExtValue struct { + // Parameter id, terminated by NULL if the length is less than 16 human-readable chars and WITHOUT null termination (NULL) byte if the length is exactly 16 chars - applications have to provide 16+1 bytes storage if the ID is stored as string + ParamId string `mavlen:"16"` + // Parameter value + ParamValue string `mavlen:"128"` + // Parameter type. + ParamType MAV_PARAM_EXT_TYPE `mavenum:"uint8"` + // Total number of parameters + ParamCount uint16 + // Index of this parameter + ParamIndex uint16 +} + +// GetID implements the msg.Message interface. +func (*MessageParamExtValue) GetID() uint32 { + return 322 +} diff --git a/pkg/dialects/development/msg_param_map_rc.go b/pkg/dialects/development/msg_param_map_rc.go new file mode 100644 index 000000000..413b16154 --- /dev/null +++ b/pkg/dialects/development/msg_param_map_rc.go @@ -0,0 +1,30 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package development + +// Bind a RC channel to a parameter. The parameter should change according to the RC channel value. +type MessageParamMapRc struct { + // System ID + TargetSystem uint8 + // Component ID + TargetComponent uint8 + // Onboard parameter id, terminated by NULL if the length is less than 16 human-readable chars and WITHOUT null termination (NULL) byte if the length is exactly 16 chars - applications have to provide 16+1 bytes storage if the ID is stored as string + ParamId string `mavlen:"16"` + // Parameter index. Send -1 to use the param ID field as identifier (else the param id will be ignored), send -2 to disable any existing map for this rc_channel_index. + ParamIndex int16 + // Index of parameter RC channel. Not equal to the RC channel id. Typically corresponds to a potentiometer-knob on the RC. + ParameterRcChannelIndex uint8 + // Initial parameter value + ParamValue0 float32 + // Scale, maps the RC range [-1, 1] to a parameter value + Scale float32 + // Minimum param value. The protocol does not define if this overwrites an onboard minimum value. (Depends on implementation) + ParamValueMin float32 + // Maximum param value. The protocol does not define if this overwrites an onboard maximum value. (Depends on implementation) + ParamValueMax float32 +} + +// GetID implements the msg.Message interface. +func (*MessageParamMapRc) GetID() uint32 { + return 50 +} diff --git a/pkg/dialects/development/msg_param_request_list.go b/pkg/dialects/development/msg_param_request_list.go new file mode 100644 index 000000000..41d4a545c --- /dev/null +++ b/pkg/dialects/development/msg_param_request_list.go @@ -0,0 +1,16 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package development + +// Request all parameters of this component. After this request, all parameters are emitted. The parameter microservice is documented at https://mavlink.io/en/services/parameter.html +type MessageParamRequestList struct { + // System ID + TargetSystem uint8 + // Component ID + TargetComponent uint8 +} + +// GetID implements the msg.Message interface. +func (*MessageParamRequestList) GetID() uint32 { + return 21 +} diff --git a/pkg/dialects/development/msg_param_request_read.go b/pkg/dialects/development/msg_param_request_read.go new file mode 100644 index 000000000..7b2aba0a1 --- /dev/null +++ b/pkg/dialects/development/msg_param_request_read.go @@ -0,0 +1,20 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package development + +// Request to read the onboard parameter with the param_id string id. Onboard parameters are stored as key[const char*] -> value[float]. This allows to send a parameter to any other component (such as the GCS) without the need of previous knowledge of possible parameter names. Thus the same GCS can store different parameters for different autopilots. See also https://mavlink.io/en/services/parameter.html for a full documentation of QGroundControl and IMU code. +type MessageParamRequestRead struct { + // System ID + TargetSystem uint8 + // Component ID + TargetComponent uint8 + // Onboard parameter id, terminated by NULL if the length is less than 16 human-readable chars and WITHOUT null termination (NULL) byte if the length is exactly 16 chars - applications have to provide 16+1 bytes storage if the ID is stored as string + ParamId string `mavlen:"16"` + // Parameter index. Send -1 to use the param ID field as identifier (else the param id will be ignored) + ParamIndex int16 +} + +// GetID implements the msg.Message interface. +func (*MessageParamRequestRead) GetID() uint32 { + return 20 +} diff --git a/pkg/dialects/development/msg_param_set.go b/pkg/dialects/development/msg_param_set.go new file mode 100644 index 000000000..c732e9277 --- /dev/null +++ b/pkg/dialects/development/msg_param_set.go @@ -0,0 +1,24 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package development + +// Set a parameter value (write new value to permanent storage). +// The receiving component should acknowledge the new parameter value by broadcasting a PARAM_VALUE message (broadcasting ensures that multiple GCS all have an up-to-date list of all parameters). If the sending GCS did not receive a PARAM_VALUE within its timeout time, it should re-send the PARAM_SET message. The parameter microservice is documented at https://mavlink.io/en/services/parameter.html. +// PARAM_SET may also be called within the context of a transaction (started with MAV_CMD_PARAM_TRANSACTION). Within a transaction the receiving component should respond with PARAM_ACK_TRANSACTION to the setter component (instead of broadcasting PARAM_VALUE), and PARAM_SET should be re-sent if this is ACK not received. +type MessageParamSet struct { + // System ID + TargetSystem uint8 + // Component ID + TargetComponent uint8 + // Onboard parameter id, terminated by NULL if the length is less than 16 human-readable chars and WITHOUT null termination (NULL) byte if the length is exactly 16 chars - applications have to provide 16+1 bytes storage if the ID is stored as string + ParamId string `mavlen:"16"` + // Onboard parameter value + ParamValue float32 + // Onboard parameter type. + ParamType MAV_PARAM_TYPE `mavenum:"uint8"` +} + +// GetID implements the msg.Message interface. +func (*MessageParamSet) GetID() uint32 { + return 23 +} diff --git a/pkg/dialects/development/msg_param_value.go b/pkg/dialects/development/msg_param_value.go new file mode 100644 index 000000000..0f6e079cb --- /dev/null +++ b/pkg/dialects/development/msg_param_value.go @@ -0,0 +1,22 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package development + +// Emit the value of a onboard parameter. The inclusion of param_count and param_index in the message allows the recipient to keep track of received parameters and allows him to re-request missing parameters after a loss or timeout. The parameter microservice is documented at https://mavlink.io/en/services/parameter.html +type MessageParamValue struct { + // Onboard parameter id, terminated by NULL if the length is less than 16 human-readable chars and WITHOUT null termination (NULL) byte if the length is exactly 16 chars - applications have to provide 16+1 bytes storage if the ID is stored as string + ParamId string `mavlen:"16"` + // Onboard parameter value + ParamValue float32 + // Onboard parameter type. + ParamType MAV_PARAM_TYPE `mavenum:"uint8"` + // Total number of onboard parameters + ParamCount uint16 + // Index of this onboard parameter + ParamIndex uint16 +} + +// GetID implements the msg.Message interface. +func (*MessageParamValue) GetID() uint32 { + return 22 +} diff --git a/pkg/dialects/development/msg_ping.go b/pkg/dialects/development/msg_ping.go new file mode 100644 index 000000000..53d7315e8 --- /dev/null +++ b/pkg/dialects/development/msg_ping.go @@ -0,0 +1,20 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package development + +// A ping message either requesting or responding to a ping. This allows to measure the system latencies, including serial port, radio modem and UDP connections. The ping microservice is documented at https://mavlink.io/en/services/ping.html +type MessagePing struct { + // Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. + TimeUsec uint64 + // PING sequence + Seq uint32 + // 0: request ping from all receiving systems. If greater than 0: message is a ping response and number is the system id of the requesting system + TargetSystem uint8 + // 0: request ping from all receiving components. If greater than 0: message is a ping response and number is the component id of the requesting component. + TargetComponent uint8 +} + +// GetID implements the msg.Message interface. +func (*MessagePing) GetID() uint32 { + return 4 +} diff --git a/pkg/dialects/development/msg_play_tune.go b/pkg/dialects/development/msg_play_tune.go new file mode 100644 index 000000000..db93b3eb2 --- /dev/null +++ b/pkg/dialects/development/msg_play_tune.go @@ -0,0 +1,20 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package development + +// Control vehicle tone generation (buzzer). +type MessagePlayTune struct { + // System ID + TargetSystem uint8 + // Component ID + TargetComponent uint8 + // tune in board specific format + Tune string `mavlen:"30"` + // tune extension (appended to tune) + Tune2 string `mavext:"true" mavlen:"200"` +} + +// GetID implements the msg.Message interface. +func (*MessagePlayTune) GetID() uint32 { + return 258 +} diff --git a/pkg/dialects/development/msg_play_tune_v2.go b/pkg/dialects/development/msg_play_tune_v2.go new file mode 100644 index 000000000..07cf767b5 --- /dev/null +++ b/pkg/dialects/development/msg_play_tune_v2.go @@ -0,0 +1,20 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package development + +// Play vehicle tone/tune (buzzer). Supersedes message PLAY_TUNE. +type MessagePlayTuneV2 struct { + // System ID + TargetSystem uint8 + // Component ID + TargetComponent uint8 + // Tune format + Format TUNE_FORMAT `mavenum:"uint32"` + // Tune definition as a NULL-terminated string. + Tune string `mavlen:"248"` +} + +// GetID implements the msg.Message interface. +func (*MessagePlayTuneV2) GetID() uint32 { + return 400 +} diff --git a/pkg/dialects/development/msg_position_target_global_int.go b/pkg/dialects/development/msg_position_target_global_int.go new file mode 100644 index 000000000..182297acc --- /dev/null +++ b/pkg/dialects/development/msg_position_target_global_int.go @@ -0,0 +1,40 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package development + +// Reports the current commanded vehicle position, velocity, and acceleration as specified by the autopilot. This should match the commands sent in SET_POSITION_TARGET_GLOBAL_INT if the vehicle is being controlled this way. +type MessagePositionTargetGlobalInt struct { + // Timestamp (time since system boot). The rationale for the timestamp in the setpoint is to allow the system to compensate for the transport delay of the setpoint. This allows the system to compensate processing latency. + TimeBootMs uint32 + // Valid options are: MAV_FRAME_GLOBAL_INT = 5, MAV_FRAME_GLOBAL_RELATIVE_ALT_INT = 6, MAV_FRAME_GLOBAL_TERRAIN_ALT_INT = 11 + CoordinateFrame MAV_FRAME `mavenum:"uint8"` + // Bitmap to indicate which dimensions should be ignored by the vehicle. + TypeMask POSITION_TARGET_TYPEMASK `mavenum:"uint16"` + // X Position in WGS84 frame + LatInt int32 + // Y Position in WGS84 frame + LonInt int32 + // Altitude (MSL, AGL or relative to home altitude, depending on frame) + Alt float32 + // X velocity in NED frame + Vx float32 + // Y velocity in NED frame + Vy float32 + // Z velocity in NED frame + Vz float32 + // X acceleration or force (if bit 10 of type_mask is set) in NED frame in meter / s^2 or N + Afx float32 + // Y acceleration or force (if bit 10 of type_mask is set) in NED frame in meter / s^2 or N + Afy float32 + // Z acceleration or force (if bit 10 of type_mask is set) in NED frame in meter / s^2 or N + Afz float32 + // yaw setpoint + Yaw float32 + // yaw rate setpoint + YawRate float32 +} + +// GetID implements the msg.Message interface. +func (*MessagePositionTargetGlobalInt) GetID() uint32 { + return 87 +} diff --git a/pkg/dialects/development/msg_position_target_local_ned.go b/pkg/dialects/development/msg_position_target_local_ned.go new file mode 100644 index 000000000..132b383be --- /dev/null +++ b/pkg/dialects/development/msg_position_target_local_ned.go @@ -0,0 +1,40 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package development + +// Reports the current commanded vehicle position, velocity, and acceleration as specified by the autopilot. This should match the commands sent in SET_POSITION_TARGET_LOCAL_NED if the vehicle is being controlled this way. +type MessagePositionTargetLocalNed struct { + // Timestamp (time since system boot). + TimeBootMs uint32 + // Valid options are: MAV_FRAME_LOCAL_NED = 1, MAV_FRAME_LOCAL_OFFSET_NED = 7, MAV_FRAME_BODY_NED = 8, MAV_FRAME_BODY_OFFSET_NED = 9 + CoordinateFrame MAV_FRAME `mavenum:"uint8"` + // Bitmap to indicate which dimensions should be ignored by the vehicle. + TypeMask POSITION_TARGET_TYPEMASK `mavenum:"uint16"` + // X Position in NED frame + X float32 + // Y Position in NED frame + Y float32 + // Z Position in NED frame (note, altitude is negative in NED) + Z float32 + // X velocity in NED frame + Vx float32 + // Y velocity in NED frame + Vy float32 + // Z velocity in NED frame + Vz float32 + // X acceleration or force (if bit 10 of type_mask is set) in NED frame in meter / s^2 or N + Afx float32 + // Y acceleration or force (if bit 10 of type_mask is set) in NED frame in meter / s^2 or N + Afy float32 + // Z acceleration or force (if bit 10 of type_mask is set) in NED frame in meter / s^2 or N + Afz float32 + // yaw setpoint + Yaw float32 + // yaw rate setpoint + YawRate float32 +} + +// GetID implements the msg.Message interface. +func (*MessagePositionTargetLocalNed) GetID() uint32 { + return 85 +} diff --git a/pkg/dialects/development/msg_power_status.go b/pkg/dialects/development/msg_power_status.go new file mode 100644 index 000000000..3d4a09324 --- /dev/null +++ b/pkg/dialects/development/msg_power_status.go @@ -0,0 +1,18 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package development + +// Power supply status +type MessagePowerStatus struct { + // 5V rail voltage. + Vcc uint16 `mavname:"Vcc"` + // Servo rail voltage. + Vservo uint16 `mavname:"Vservo"` + // Bitmap of power supply status flags. + Flags MAV_POWER_STATUS `mavenum:"uint16"` +} + +// GetID implements the msg.Message interface. +func (*MessagePowerStatus) GetID() uint32 { + return 125 +} diff --git a/pkg/dialects/development/msg_protocol_version.go b/pkg/dialects/development/msg_protocol_version.go new file mode 100644 index 000000000..386f2dbcd --- /dev/null +++ b/pkg/dialects/development/msg_protocol_version.go @@ -0,0 +1,22 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package development + +// Version and capability of protocol version. This message can be requested with MAV_CMD_REQUEST_MESSAGE and is used as part of the handshaking to establish which MAVLink version should be used on the network. Every node should respond to a request for PROTOCOL_VERSION to enable the handshaking. Library implementers should consider adding this into the default decoding state machine to allow the protocol core to respond directly. +type MessageProtocolVersion struct { + // Currently active MAVLink version number * 100: v1.0 is 100, v2.0 is 200, etc. + Version uint16 + // Minimum MAVLink version supported + MinVersion uint16 + // Maximum MAVLink version supported (set to the same value as version by default) + MaxVersion uint16 + // The first 8 bytes (not characters printed in hex!) of the git hash. + SpecVersionHash [8]uint8 + // The first 8 bytes (not characters printed in hex!) of the git hash. + LibraryVersionHash [8]uint8 +} + +// GetID implements the msg.Message interface. +func (*MessageProtocolVersion) GetID() uint32 { + return 300 +} diff --git a/pkg/dialects/development/msg_radio_status.go b/pkg/dialects/development/msg_radio_status.go new file mode 100644 index 000000000..efe292fcc --- /dev/null +++ b/pkg/dialects/development/msg_radio_status.go @@ -0,0 +1,26 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package development + +// Status generated by radio and injected into MAVLink stream. +type MessageRadioStatus struct { + // Local (message sender) recieved signal strength indication in device-dependent units/scale. Values: [0-254], UINT8_MAX: invalid/unknown. + Rssi uint8 + // Remote (message receiver) signal strength indication in device-dependent units/scale. Values: [0-254], UINT8_MAX: invalid/unknown. + Remrssi uint8 + // Remaining free transmitter buffer space. + Txbuf uint8 + // Local background noise level. These are device dependent RSSI values (scale as approx 2x dB on SiK radios). Values: [0-254], UINT8_MAX: invalid/unknown. + Noise uint8 + // Remote background noise level. These are device dependent RSSI values (scale as approx 2x dB on SiK radios). Values: [0-254], UINT8_MAX: invalid/unknown. + Remnoise uint8 + // Count of radio packet receive errors (since boot). + Rxerrors uint16 + // Count of error corrected radio packets (since boot). + Fixed uint16 +} + +// GetID implements the msg.Message interface. +func (*MessageRadioStatus) GetID() uint32 { + return 109 +} diff --git a/pkg/dialects/development/msg_raw_imu.go b/pkg/dialects/development/msg_raw_imu.go new file mode 100644 index 000000000..8a4917a9f --- /dev/null +++ b/pkg/dialects/development/msg_raw_imu.go @@ -0,0 +1,36 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package development + +// The RAW IMU readings for a 9DOF sensor, which is identified by the id (default IMU1). This message should always contain the true raw values without any scaling to allow data capture and system debugging. +type MessageRawImu struct { + // Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. + TimeUsec uint64 + // X acceleration (raw) + Xacc int16 + // Y acceleration (raw) + Yacc int16 + // Z acceleration (raw) + Zacc int16 + // Angular speed around X axis (raw) + Xgyro int16 + // Angular speed around Y axis (raw) + Ygyro int16 + // Angular speed around Z axis (raw) + Zgyro int16 + // X Magnetic field (raw) + Xmag int16 + // Y Magnetic field (raw) + Ymag int16 + // Z Magnetic field (raw) + Zmag int16 + // Id. Ids are numbered from 0 and map to IMUs numbered from 1 (e.g. IMU1 will have a message with id=0) + Id uint8 `mavext:"true"` + // Temperature, 0: IMU does not provide temperature values. If the IMU is at 0C it must send 1 (0.01C). + Temperature int16 `mavext:"true"` +} + +// GetID implements the msg.Message interface. +func (*MessageRawImu) GetID() uint32 { + return 27 +} diff --git a/pkg/dialects/development/msg_raw_pressure.go b/pkg/dialects/development/msg_raw_pressure.go new file mode 100644 index 000000000..1ed8de264 --- /dev/null +++ b/pkg/dialects/development/msg_raw_pressure.go @@ -0,0 +1,22 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package development + +// The RAW pressure readings for the typical setup of one absolute pressure and one differential pressure sensor. The sensor values should be the raw, UNSCALED ADC values. +type MessageRawPressure struct { + // Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. + TimeUsec uint64 + // Absolute pressure (raw) + PressAbs int16 + // Differential pressure 1 (raw, 0 if nonexistent) + PressDiff1 int16 + // Differential pressure 2 (raw, 0 if nonexistent) + PressDiff2 int16 + // Raw Temperature measurement (raw) + Temperature int16 +} + +// GetID implements the msg.Message interface. +func (*MessageRawPressure) GetID() uint32 { + return 28 +} diff --git a/pkg/dialects/development/msg_raw_rpm.go b/pkg/dialects/development/msg_raw_rpm.go new file mode 100644 index 000000000..915963548 --- /dev/null +++ b/pkg/dialects/development/msg_raw_rpm.go @@ -0,0 +1,16 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package development + +// RPM sensor data message. +type MessageRawRpm struct { + // Index of this RPM sensor (0-indexed) + Index uint8 + // Indicated rate + Frequency float32 +} + +// GetID implements the msg.Message interface. +func (*MessageRawRpm) GetID() uint32 { + return 339 +} diff --git a/pkg/dialects/development/msg_rc_channels.go b/pkg/dialects/development/msg_rc_channels.go new file mode 100644 index 000000000..b0d8f90cb --- /dev/null +++ b/pkg/dialects/development/msg_rc_channels.go @@ -0,0 +1,54 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package development + +// The PPM values of the RC channels received. The standard PPM modulation is as follows: 1000 microseconds: 0%, 2000 microseconds: 100%. A value of UINT16_MAX implies the channel is unused. Individual receivers/transmitters might violate this specification. +type MessageRcChannels struct { + // Timestamp (time since system boot). + TimeBootMs uint32 + // Total number of RC channels being received. This can be larger than 18, indicating that more channels are available but not given in this message. This value should be 0 when no RC channels are available. + Chancount uint8 + // RC channel 1 value. + Chan1Raw uint16 + // RC channel 2 value. + Chan2Raw uint16 + // RC channel 3 value. + Chan3Raw uint16 + // RC channel 4 value. + Chan4Raw uint16 + // RC channel 5 value. + Chan5Raw uint16 + // RC channel 6 value. + Chan6Raw uint16 + // RC channel 7 value. + Chan7Raw uint16 + // RC channel 8 value. + Chan8Raw uint16 + // RC channel 9 value. + Chan9Raw uint16 + // RC channel 10 value. + Chan10Raw uint16 + // RC channel 11 value. + Chan11Raw uint16 + // RC channel 12 value. + Chan12Raw uint16 + // RC channel 13 value. + Chan13Raw uint16 + // RC channel 14 value. + Chan14Raw uint16 + // RC channel 15 value. + Chan15Raw uint16 + // RC channel 16 value. + Chan16Raw uint16 + // RC channel 17 value. + Chan17Raw uint16 + // RC channel 18 value. + Chan18Raw uint16 + // Receive signal strength indicator in device-dependent units/scale. Values: [0-254], UINT8_MAX: invalid/unknown. + Rssi uint8 +} + +// GetID implements the msg.Message interface. +func (*MessageRcChannels) GetID() uint32 { + return 65 +} diff --git a/pkg/dialects/development/msg_rc_channels_override.go b/pkg/dialects/development/msg_rc_channels_override.go new file mode 100644 index 000000000..bc21f9d02 --- /dev/null +++ b/pkg/dialects/development/msg_rc_channels_override.go @@ -0,0 +1,52 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package development + +// The RAW values of the RC channels sent to the MAV to override info received from the RC radio. The standard PPM modulation is as follows: 1000 microseconds: 0%, 2000 microseconds: 100%. Individual receivers/transmitters might violate this specification. Note carefully the semantic differences between the first 8 channels and the subsequent channels +type MessageRcChannelsOverride struct { + // System ID + TargetSystem uint8 + // Component ID + TargetComponent uint8 + // RC channel 1 value. A value of UINT16_MAX means to ignore this field. A value of 0 means to release this channel back to the RC radio. + Chan1Raw uint16 + // RC channel 2 value. A value of UINT16_MAX means to ignore this field. A value of 0 means to release this channel back to the RC radio. + Chan2Raw uint16 + // RC channel 3 value. A value of UINT16_MAX means to ignore this field. A value of 0 means to release this channel back to the RC radio. + Chan3Raw uint16 + // RC channel 4 value. A value of UINT16_MAX means to ignore this field. A value of 0 means to release this channel back to the RC radio. + Chan4Raw uint16 + // RC channel 5 value. A value of UINT16_MAX means to ignore this field. A value of 0 means to release this channel back to the RC radio. + Chan5Raw uint16 + // RC channel 6 value. A value of UINT16_MAX means to ignore this field. A value of 0 means to release this channel back to the RC radio. + Chan6Raw uint16 + // RC channel 7 value. A value of UINT16_MAX means to ignore this field. A value of 0 means to release this channel back to the RC radio. + Chan7Raw uint16 + // RC channel 8 value. A value of UINT16_MAX means to ignore this field. A value of 0 means to release this channel back to the RC radio. + Chan8Raw uint16 + // RC channel 9 value. A value of 0 or UINT16_MAX means to ignore this field. A value of UINT16_MAX-1 means to release this channel back to the RC radio. + Chan9Raw uint16 `mavext:"true"` + // RC channel 10 value. A value of 0 or UINT16_MAX means to ignore this field. A value of UINT16_MAX-1 means to release this channel back to the RC radio. + Chan10Raw uint16 `mavext:"true"` + // RC channel 11 value. A value of 0 or UINT16_MAX means to ignore this field. A value of UINT16_MAX-1 means to release this channel back to the RC radio. + Chan11Raw uint16 `mavext:"true"` + // RC channel 12 value. A value of 0 or UINT16_MAX means to ignore this field. A value of UINT16_MAX-1 means to release this channel back to the RC radio. + Chan12Raw uint16 `mavext:"true"` + // RC channel 13 value. A value of 0 or UINT16_MAX means to ignore this field. A value of UINT16_MAX-1 means to release this channel back to the RC radio. + Chan13Raw uint16 `mavext:"true"` + // RC channel 14 value. A value of 0 or UINT16_MAX means to ignore this field. A value of UINT16_MAX-1 means to release this channel back to the RC radio. + Chan14Raw uint16 `mavext:"true"` + // RC channel 15 value. A value of 0 or UINT16_MAX means to ignore this field. A value of UINT16_MAX-1 means to release this channel back to the RC radio. + Chan15Raw uint16 `mavext:"true"` + // RC channel 16 value. A value of 0 or UINT16_MAX means to ignore this field. A value of UINT16_MAX-1 means to release this channel back to the RC radio. + Chan16Raw uint16 `mavext:"true"` + // RC channel 17 value. A value of 0 or UINT16_MAX means to ignore this field. A value of UINT16_MAX-1 means to release this channel back to the RC radio. + Chan17Raw uint16 `mavext:"true"` + // RC channel 18 value. A value of 0 or UINT16_MAX means to ignore this field. A value of UINT16_MAX-1 means to release this channel back to the RC radio. + Chan18Raw uint16 `mavext:"true"` +} + +// GetID implements the msg.Message interface. +func (*MessageRcChannelsOverride) GetID() uint32 { + return 70 +} diff --git a/pkg/dialects/development/msg_rc_channels_raw.go b/pkg/dialects/development/msg_rc_channels_raw.go new file mode 100644 index 000000000..f4303e1f4 --- /dev/null +++ b/pkg/dialects/development/msg_rc_channels_raw.go @@ -0,0 +1,34 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package development + +// The RAW values of the RC channels received. The standard PPM modulation is as follows: 1000 microseconds: 0%, 2000 microseconds: 100%. A value of UINT16_MAX implies the channel is unused. Individual receivers/transmitters might violate this specification. +type MessageRcChannelsRaw struct { + // Timestamp (time since system boot). + TimeBootMs uint32 + // Servo output port (set of 8 outputs = 1 port). Flight stacks running on Pixhawk should use: 0 = MAIN, 1 = AUX. + Port uint8 + // RC channel 1 value. + Chan1Raw uint16 + // RC channel 2 value. + Chan2Raw uint16 + // RC channel 3 value. + Chan3Raw uint16 + // RC channel 4 value. + Chan4Raw uint16 + // RC channel 5 value. + Chan5Raw uint16 + // RC channel 6 value. + Chan6Raw uint16 + // RC channel 7 value. + Chan7Raw uint16 + // RC channel 8 value. + Chan8Raw uint16 + // Receive signal strength indicator in device-dependent units/scale. Values: [0-254], UINT8_MAX: invalid/unknown. + Rssi uint8 +} + +// GetID implements the msg.Message interface. +func (*MessageRcChannelsRaw) GetID() uint32 { + return 35 +} diff --git a/pkg/dialects/development/msg_rc_channels_scaled.go b/pkg/dialects/development/msg_rc_channels_scaled.go new file mode 100644 index 000000000..9bde8c0cc --- /dev/null +++ b/pkg/dialects/development/msg_rc_channels_scaled.go @@ -0,0 +1,34 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package development + +// The scaled values of the RC channels received: (-100%) -10000, (0%) 0, (100%) 10000. Channels that are inactive should be set to UINT16_MAX. +type MessageRcChannelsScaled struct { + // Timestamp (time since system boot). + TimeBootMs uint32 + // Servo output port (set of 8 outputs = 1 port). Flight stacks running on Pixhawk should use: 0 = MAIN, 1 = AUX. + Port uint8 + // RC channel 1 value scaled. + Chan1Scaled int16 + // RC channel 2 value scaled. + Chan2Scaled int16 + // RC channel 3 value scaled. + Chan3Scaled int16 + // RC channel 4 value scaled. + Chan4Scaled int16 + // RC channel 5 value scaled. + Chan5Scaled int16 + // RC channel 6 value scaled. + Chan6Scaled int16 + // RC channel 7 value scaled. + Chan7Scaled int16 + // RC channel 8 value scaled. + Chan8Scaled int16 + // Receive signal strength indicator in device-dependent units/scale. Values: [0-254], UINT8_MAX: invalid/unknown. + Rssi uint8 +} + +// GetID implements the msg.Message interface. +func (*MessageRcChannelsScaled) GetID() uint32 { + return 34 +} diff --git a/pkg/dialects/development/msg_request_data_stream.go b/pkg/dialects/development/msg_request_data_stream.go new file mode 100644 index 000000000..0d2e8e06e --- /dev/null +++ b/pkg/dialects/development/msg_request_data_stream.go @@ -0,0 +1,22 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package development + +// Request a data stream. +type MessageRequestDataStream struct { + // The target requested to send the message stream. + TargetSystem uint8 + // The target requested to send the message stream. + TargetComponent uint8 + // The ID of the requested data stream + ReqStreamId uint8 + // The requested message rate + ReqMessageRate uint16 + // 1 to start sending, 0 to stop sending. + StartStop uint8 +} + +// GetID implements the msg.Message interface. +func (*MessageRequestDataStream) GetID() uint32 { + return 66 +} diff --git a/pkg/dialects/development/msg_request_event.go b/pkg/dialects/development/msg_request_event.go new file mode 100644 index 000000000..48c7c8291 --- /dev/null +++ b/pkg/dialects/development/msg_request_event.go @@ -0,0 +1,20 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package development + +// Request one or more events to be (re-)sent. If first_sequence==last_sequence, only a single event is requested. Note that first_sequence can be larger than last_sequence (because the sequence number can wrap). Each sequence will trigger an EVENT or EVENT_ERROR response. +type MessageRequestEvent struct { + // System ID + TargetSystem uint8 + // Component ID + TargetComponent uint8 + // First sequence number of the requested event. + FirstSequence uint16 + // Last sequence number of the requested event. + LastSequence uint16 +} + +// GetID implements the msg.Message interface. +func (*MessageRequestEvent) GetID() uint32 { + return 412 +} diff --git a/pkg/dialects/development/msg_resource_request.go b/pkg/dialects/development/msg_resource_request.go new file mode 100644 index 000000000..2c21d554f --- /dev/null +++ b/pkg/dialects/development/msg_resource_request.go @@ -0,0 +1,22 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package development + +// The autopilot is requesting a resource (file, binary, other type of data) +type MessageResourceRequest struct { + // Request ID. This ID should be re-used when sending back URI contents + RequestId uint8 + // The type of requested URI. 0 = a file via URL. 1 = a UAVCAN binary + UriType uint8 + // The requested unique resource identifier (URI). It is not necessarily a straight domain name (depends on the URI type enum) + Uri [120]uint8 + // The way the autopilot wants to receive the URI. 0 = MAVLink FTP. 1 = binary stream. + TransferType uint8 + // The storage path the autopilot wants the URI to be stored in. Will only be valid if the transfer_type has a storage associated (e.g. MAVLink FTP). + Storage [120]uint8 +} + +// GetID implements the msg.Message interface. +func (*MessageResourceRequest) GetID() uint32 { + return 142 +} diff --git a/pkg/dialects/development/msg_response_event_error.go b/pkg/dialects/development/msg_response_event_error.go new file mode 100644 index 000000000..68cf34cfc --- /dev/null +++ b/pkg/dialects/development/msg_response_event_error.go @@ -0,0 +1,22 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package development + +// Response to a REQUEST_EVENT in case of an error (e.g. the event is not available anymore). +type MessageResponseEventError struct { + // System ID + TargetSystem uint8 + // Component ID + TargetComponent uint8 + // Sequence number. + Sequence uint16 + // Oldest Sequence number that is still available after the sequence set in REQUEST_EVENT. + SequenceOldestAvailable uint16 + // Error reason. + Reason MAV_EVENT_ERROR_REASON `mavenum:"uint8"` +} + +// GetID implements the msg.Message interface. +func (*MessageResponseEventError) GetID() uint32 { + return 413 +} diff --git a/pkg/dialects/development/msg_safety_allowed_area.go b/pkg/dialects/development/msg_safety_allowed_area.go new file mode 100644 index 000000000..5224982a1 --- /dev/null +++ b/pkg/dialects/development/msg_safety_allowed_area.go @@ -0,0 +1,26 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package development + +// Read out the safety zone the MAV currently assumes. +type MessageSafetyAllowedArea struct { + // Coordinate frame. Can be either global, GPS, right-handed with Z axis up or local, right handed, Z axis down. + Frame MAV_FRAME `mavenum:"uint8"` + // x position 1 / Latitude 1 + P1x float32 + // y position 1 / Longitude 1 + P1y float32 + // z position 1 / Altitude 1 + P1z float32 + // x position 2 / Latitude 2 + P2x float32 + // y position 2 / Longitude 2 + P2y float32 + // z position 2 / Altitude 2 + P2z float32 +} + +// GetID implements the msg.Message interface. +func (*MessageSafetyAllowedArea) GetID() uint32 { + return 55 +} diff --git a/pkg/dialects/development/msg_safety_set_allowed_area.go b/pkg/dialects/development/msg_safety_set_allowed_area.go new file mode 100644 index 000000000..a8b167c4f --- /dev/null +++ b/pkg/dialects/development/msg_safety_set_allowed_area.go @@ -0,0 +1,30 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package development + +// Set a safety zone (volume), which is defined by two corners of a cube. This message can be used to tell the MAV which setpoints/waypoints to accept and which to reject. Safety areas are often enforced by national or competition regulations. +type MessageSafetySetAllowedArea struct { + // System ID + TargetSystem uint8 + // Component ID + TargetComponent uint8 + // Coordinate frame. Can be either global, GPS, right-handed with Z axis up or local, right handed, Z axis down. + Frame MAV_FRAME `mavenum:"uint8"` + // x position 1 / Latitude 1 + P1x float32 + // y position 1 / Longitude 1 + P1y float32 + // z position 1 / Altitude 1 + P1z float32 + // x position 2 / Latitude 2 + P2x float32 + // y position 2 / Longitude 2 + P2y float32 + // z position 2 / Altitude 2 + P2z float32 +} + +// GetID implements the msg.Message interface. +func (*MessageSafetySetAllowedArea) GetID() uint32 { + return 54 +} diff --git a/pkg/dialects/development/msg_scaled_imu.go b/pkg/dialects/development/msg_scaled_imu.go new file mode 100644 index 000000000..671da40f9 --- /dev/null +++ b/pkg/dialects/development/msg_scaled_imu.go @@ -0,0 +1,34 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package development + +// The RAW IMU readings for the usual 9DOF sensor setup. This message should contain the scaled values to the described units +type MessageScaledImu struct { + // Timestamp (time since system boot). + TimeBootMs uint32 + // X acceleration + Xacc int16 + // Y acceleration + Yacc int16 + // Z acceleration + Zacc int16 + // Angular speed around X axis + Xgyro int16 + // Angular speed around Y axis + Ygyro int16 + // Angular speed around Z axis + Zgyro int16 + // X Magnetic field + Xmag int16 + // Y Magnetic field + Ymag int16 + // Z Magnetic field + Zmag int16 + // Temperature, 0: IMU does not provide temperature values. If the IMU is at 0C it must send 1 (0.01C). + Temperature int16 `mavext:"true"` +} + +// GetID implements the msg.Message interface. +func (*MessageScaledImu) GetID() uint32 { + return 26 +} diff --git a/pkg/dialects/development/msg_scaled_imu2.go b/pkg/dialects/development/msg_scaled_imu2.go new file mode 100644 index 000000000..20f30ebd3 --- /dev/null +++ b/pkg/dialects/development/msg_scaled_imu2.go @@ -0,0 +1,34 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package development + +// The RAW IMU readings for secondary 9DOF sensor setup. This message should contain the scaled values to the described units +type MessageScaledImu2 struct { + // Timestamp (time since system boot). + TimeBootMs uint32 + // X acceleration + Xacc int16 + // Y acceleration + Yacc int16 + // Z acceleration + Zacc int16 + // Angular speed around X axis + Xgyro int16 + // Angular speed around Y axis + Ygyro int16 + // Angular speed around Z axis + Zgyro int16 + // X Magnetic field + Xmag int16 + // Y Magnetic field + Ymag int16 + // Z Magnetic field + Zmag int16 + // Temperature, 0: IMU does not provide temperature values. If the IMU is at 0C it must send 1 (0.01C). + Temperature int16 `mavext:"true"` +} + +// GetID implements the msg.Message interface. +func (*MessageScaledImu2) GetID() uint32 { + return 116 +} diff --git a/pkg/dialects/development/msg_scaled_imu3.go b/pkg/dialects/development/msg_scaled_imu3.go new file mode 100644 index 000000000..e02be8ff0 --- /dev/null +++ b/pkg/dialects/development/msg_scaled_imu3.go @@ -0,0 +1,34 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package development + +// The RAW IMU readings for 3rd 9DOF sensor setup. This message should contain the scaled values to the described units +type MessageScaledImu3 struct { + // Timestamp (time since system boot). + TimeBootMs uint32 + // X acceleration + Xacc int16 + // Y acceleration + Yacc int16 + // Z acceleration + Zacc int16 + // Angular speed around X axis + Xgyro int16 + // Angular speed around Y axis + Ygyro int16 + // Angular speed around Z axis + Zgyro int16 + // X Magnetic field + Xmag int16 + // Y Magnetic field + Ymag int16 + // Z Magnetic field + Zmag int16 + // Temperature, 0: IMU does not provide temperature values. If the IMU is at 0C it must send 1 (0.01C). + Temperature int16 `mavext:"true"` +} + +// GetID implements the msg.Message interface. +func (*MessageScaledImu3) GetID() uint32 { + return 129 +} diff --git a/pkg/dialects/development/msg_scaled_pressure.go b/pkg/dialects/development/msg_scaled_pressure.go new file mode 100644 index 000000000..0af3fed46 --- /dev/null +++ b/pkg/dialects/development/msg_scaled_pressure.go @@ -0,0 +1,22 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package development + +// The pressure readings for the typical setup of one absolute and differential pressure sensor. The units are as specified in each field. +type MessageScaledPressure struct { + // Timestamp (time since system boot). + TimeBootMs uint32 + // Absolute pressure + PressAbs float32 + // Differential pressure 1 + PressDiff float32 + // Absolute pressure temperature + Temperature int16 + // Differential pressure temperature (0, if not available). Report values of 0 (or 1) as 1 cdegC. + TemperaturePressDiff int16 `mavext:"true"` +} + +// GetID implements the msg.Message interface. +func (*MessageScaledPressure) GetID() uint32 { + return 29 +} diff --git a/pkg/dialects/development/msg_scaled_pressure2.go b/pkg/dialects/development/msg_scaled_pressure2.go new file mode 100644 index 000000000..2fa4b27ac --- /dev/null +++ b/pkg/dialects/development/msg_scaled_pressure2.go @@ -0,0 +1,22 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package development + +// Barometer readings for 2nd barometer +type MessageScaledPressure2 struct { + // Timestamp (time since system boot). + TimeBootMs uint32 + // Absolute pressure + PressAbs float32 + // Differential pressure + PressDiff float32 + // Absolute pressure temperature + Temperature int16 + // Differential pressure temperature (0, if not available). Report values of 0 (or 1) as 1 cdegC. + TemperaturePressDiff int16 `mavext:"true"` +} + +// GetID implements the msg.Message interface. +func (*MessageScaledPressure2) GetID() uint32 { + return 137 +} diff --git a/pkg/dialects/development/msg_scaled_pressure3.go b/pkg/dialects/development/msg_scaled_pressure3.go new file mode 100644 index 000000000..e56ac98a2 --- /dev/null +++ b/pkg/dialects/development/msg_scaled_pressure3.go @@ -0,0 +1,22 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package development + +// Barometer readings for 3rd barometer +type MessageScaledPressure3 struct { + // Timestamp (time since system boot). + TimeBootMs uint32 + // Absolute pressure + PressAbs float32 + // Differential pressure + PressDiff float32 + // Absolute pressure temperature + Temperature int16 + // Differential pressure temperature (0, if not available). Report values of 0 (or 1) as 1 cdegC. + TemperaturePressDiff int16 `mavext:"true"` +} + +// GetID implements the msg.Message interface. +func (*MessageScaledPressure3) GetID() uint32 { + return 143 +} diff --git a/pkg/dialects/development/msg_serial_control.go b/pkg/dialects/development/msg_serial_control.go new file mode 100644 index 000000000..d750fadbb --- /dev/null +++ b/pkg/dialects/development/msg_serial_control.go @@ -0,0 +1,28 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package development + +// Control a serial port. This can be used for raw access to an onboard serial peripheral such as a GPS or telemetry radio. It is designed to make it possible to update the devices firmware via MAVLink messages or change the devices settings. A message with zero bytes can be used to change just the baudrate. +type MessageSerialControl struct { + // Serial control device type. + Device SERIAL_CONTROL_DEV `mavenum:"uint8"` + // Bitmap of serial control flags. + Flags SERIAL_CONTROL_FLAG `mavenum:"uint8"` + // Timeout for reply data + Timeout uint16 + // Baudrate of transfer. Zero means no change. + Baudrate uint32 + // how many bytes in this transfer + Count uint8 + // serial data + Data [70]uint8 + // System ID + TargetSystem uint8 `mavext:"true"` + // Component ID + TargetComponent uint8 `mavext:"true"` +} + +// GetID implements the msg.Message interface. +func (*MessageSerialControl) GetID() uint32 { + return 126 +} diff --git a/pkg/dialects/development/msg_servo_output_raw.go b/pkg/dialects/development/msg_servo_output_raw.go new file mode 100644 index 000000000..caebec450 --- /dev/null +++ b/pkg/dialects/development/msg_servo_output_raw.go @@ -0,0 +1,48 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package development + +// Superseded by ACTUATOR_OUTPUT_STATUS. The RAW values of the servo outputs (for RC input from the remote, use the RC_CHANNELS messages). The standard PPM modulation is as follows: 1000 microseconds: 0%, 2000 microseconds: 100%. +type MessageServoOutputRaw struct { + // Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. + TimeUsec uint32 + // Servo output port (set of 8 outputs = 1 port). Flight stacks running on Pixhawk should use: 0 = MAIN, 1 = AUX. + Port uint8 + // Servo output 1 value + Servo1Raw uint16 + // Servo output 2 value + Servo2Raw uint16 + // Servo output 3 value + Servo3Raw uint16 + // Servo output 4 value + Servo4Raw uint16 + // Servo output 5 value + Servo5Raw uint16 + // Servo output 6 value + Servo6Raw uint16 + // Servo output 7 value + Servo7Raw uint16 + // Servo output 8 value + Servo8Raw uint16 + // Servo output 9 value + Servo9Raw uint16 `mavext:"true"` + // Servo output 10 value + Servo10Raw uint16 `mavext:"true"` + // Servo output 11 value + Servo11Raw uint16 `mavext:"true"` + // Servo output 12 value + Servo12Raw uint16 `mavext:"true"` + // Servo output 13 value + Servo13Raw uint16 `mavext:"true"` + // Servo output 14 value + Servo14Raw uint16 `mavext:"true"` + // Servo output 15 value + Servo15Raw uint16 `mavext:"true"` + // Servo output 16 value + Servo16Raw uint16 `mavext:"true"` +} + +// GetID implements the msg.Message interface. +func (*MessageServoOutputRaw) GetID() uint32 { + return 36 +} diff --git a/pkg/dialects/development/msg_set_actuator_control_target.go b/pkg/dialects/development/msg_set_actuator_control_target.go new file mode 100644 index 000000000..3c374898f --- /dev/null +++ b/pkg/dialects/development/msg_set_actuator_control_target.go @@ -0,0 +1,22 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package development + +// Set the vehicle attitude and body angular rates. +type MessageSetActuatorControlTarget struct { + // Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. + TimeUsec uint64 + // Actuator group. The "_mlx" indicates this is a multi-instance message and a MAVLink parser should use this field to difference between instances. + GroupMlx uint8 + // System ID + TargetSystem uint8 + // Component ID + TargetComponent uint8 + // Actuator controls. Normed to -1..+1 where 0 is neutral position. Throttle for single rotation direction motors is 0..1, negative range for reverse direction. Standard mapping for attitude controls (group 0): (index 0-7): roll, pitch, yaw, throttle, flaps, spoilers, airbrakes, landing gear. Load a pass-through mixer to repurpose them as generic outputs. + Controls [8]float32 +} + +// GetID implements the msg.Message interface. +func (*MessageSetActuatorControlTarget) GetID() uint32 { + return 139 +} diff --git a/pkg/dialects/development/msg_set_attitude_target.go b/pkg/dialects/development/msg_set_attitude_target.go new file mode 100644 index 000000000..57db4bfd5 --- /dev/null +++ b/pkg/dialects/development/msg_set_attitude_target.go @@ -0,0 +1,32 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package development + +// Sets a desired vehicle attitude. Used by an external controller to command the vehicle (manual controller or other system). +type MessageSetAttitudeTarget struct { + // Timestamp (time since system boot). + TimeBootMs uint32 + // System ID + TargetSystem uint8 + // Component ID + TargetComponent uint8 + // Bitmap to indicate which dimensions should be ignored by the vehicle. + TypeMask ATTITUDE_TARGET_TYPEMASK `mavenum:"uint8"` + // Attitude quaternion (w, x, y, z order, zero-rotation is 1, 0, 0, 0) + Q [4]float32 + // Body roll rate + BodyRollRate float32 + // Body pitch rate + BodyPitchRate float32 + // Body yaw rate + BodyYawRate float32 + // Collective thrust, normalized to 0 .. 1 (-1 .. 1 for vehicles capable of reverse trust) + Thrust float32 + // 3D thrust setpoint in the body NED frame, normalized to -1 .. 1 + ThrustBody [3]float32 `mavext:"true"` +} + +// GetID implements the msg.Message interface. +func (*MessageSetAttitudeTarget) GetID() uint32 { + return 82 +} diff --git a/pkg/dialects/development/msg_set_gps_global_origin.go b/pkg/dialects/development/msg_set_gps_global_origin.go new file mode 100644 index 000000000..f41939aab --- /dev/null +++ b/pkg/dialects/development/msg_set_gps_global_origin.go @@ -0,0 +1,22 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package development + +// Sets the GPS co-ordinates of the vehicle local origin (0,0,0) position. Vehicle should emit GPS_GLOBAL_ORIGIN irrespective of whether the origin is changed. This enables transform between the local coordinate frame and the global (GPS) coordinate frame, which may be necessary when (for example) indoor and outdoor settings are connected and the MAV should move from in- to outdoor. +type MessageSetGpsGlobalOrigin struct { + // System ID + TargetSystem uint8 + // Latitude (WGS84) + Latitude int32 + // Longitude (WGS84) + Longitude int32 + // Altitude (MSL). Positive for up. + Altitude int32 + // Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. + TimeUsec uint64 `mavext:"true"` +} + +// GetID implements the msg.Message interface. +func (*MessageSetGpsGlobalOrigin) GetID() uint32 { + return 48 +} diff --git a/pkg/dialects/development/msg_set_home_position.go b/pkg/dialects/development/msg_set_home_position.go new file mode 100644 index 000000000..366a676fe --- /dev/null +++ b/pkg/dialects/development/msg_set_home_position.go @@ -0,0 +1,36 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package development + +// The position the system will return to and land on. The position is set automatically by the system during the takeoff in case it was not explicitly set by the operator before or after. The global and local positions encode the position in the respective coordinate frames, while the q parameter encodes the orientation of the surface. Under normal conditions it describes the heading and terrain slope, which can be used by the aircraft to adjust the approach. The approach 3D vector describes the point to which the system should fly in normal flight mode and then perform a landing sequence along the vector. +type MessageSetHomePosition struct { + // System ID. + TargetSystem uint8 + // Latitude (WGS84) + Latitude int32 + // Longitude (WGS84) + Longitude int32 + // Altitude (MSL). Positive for up. + Altitude int32 + // Local X position of this position in the local coordinate frame + X float32 + // Local Y position of this position in the local coordinate frame + Y float32 + // Local Z position of this position in the local coordinate frame + Z float32 + // World to surface normal and heading transformation of the takeoff position. Used to indicate the heading and slope of the ground + Q [4]float32 + // Local X position of the end of the approach vector. Multicopters should set this position based on their takeoff path. Grass-landing fixed wing aircraft should set it the same way as multicopters. Runway-landing fixed wing aircraft should set it to the opposite direction of the takeoff, assuming the takeoff happened from the threshold / touchdown zone. + ApproachX float32 + // Local Y position of the end of the approach vector. Multicopters should set this position based on their takeoff path. Grass-landing fixed wing aircraft should set it the same way as multicopters. Runway-landing fixed wing aircraft should set it to the opposite direction of the takeoff, assuming the takeoff happened from the threshold / touchdown zone. + ApproachY float32 + // Local Z position of the end of the approach vector. Multicopters should set this position based on their takeoff path. Grass-landing fixed wing aircraft should set it the same way as multicopters. Runway-landing fixed wing aircraft should set it to the opposite direction of the takeoff, assuming the takeoff happened from the threshold / touchdown zone. + ApproachZ float32 + // Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. + TimeUsec uint64 `mavext:"true"` +} + +// GetID implements the msg.Message interface. +func (*MessageSetHomePosition) GetID() uint32 { + return 243 +} diff --git a/pkg/dialects/development/msg_set_mode.go b/pkg/dialects/development/msg_set_mode.go new file mode 100644 index 000000000..3497fefc0 --- /dev/null +++ b/pkg/dialects/development/msg_set_mode.go @@ -0,0 +1,18 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package development + +// Set the system mode, as defined by enum MAV_MODE. There is no target component id as the mode is by definition for the overall aircraft, not only for one component. +type MessageSetMode struct { + // The system setting the mode + TargetSystem uint8 + // The new base mode. + BaseMode MAV_MODE `mavenum:"uint8"` + // The new autopilot-specific mode. This field can be ignored by an autopilot. + CustomMode uint32 +} + +// GetID implements the msg.Message interface. +func (*MessageSetMode) GetID() uint32 { + return 11 +} diff --git a/pkg/dialects/development/msg_set_position_target_global_int.go b/pkg/dialects/development/msg_set_position_target_global_int.go new file mode 100644 index 000000000..5bcb347f8 --- /dev/null +++ b/pkg/dialects/development/msg_set_position_target_global_int.go @@ -0,0 +1,44 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package development + +// Sets a desired vehicle position, velocity, and/or acceleration in a global coordinate system (WGS84). Used by an external controller to command the vehicle (manual controller or other system). +type MessageSetPositionTargetGlobalInt struct { + // Timestamp (time since system boot). The rationale for the timestamp in the setpoint is to allow the system to compensate for the transport delay of the setpoint. This allows the system to compensate processing latency. + TimeBootMs uint32 + // System ID + TargetSystem uint8 + // Component ID + TargetComponent uint8 + // Valid options are: MAV_FRAME_GLOBAL_INT = 5, MAV_FRAME_GLOBAL_RELATIVE_ALT_INT = 6, MAV_FRAME_GLOBAL_TERRAIN_ALT_INT = 11 + CoordinateFrame MAV_FRAME `mavenum:"uint8"` + // Bitmap to indicate which dimensions should be ignored by the vehicle. + TypeMask POSITION_TARGET_TYPEMASK `mavenum:"uint16"` + // X Position in WGS84 frame + LatInt int32 + // Y Position in WGS84 frame + LonInt int32 + // Altitude (MSL, Relative to home, or AGL - depending on frame) + Alt float32 + // X velocity in NED frame + Vx float32 + // Y velocity in NED frame + Vy float32 + // Z velocity in NED frame + Vz float32 + // X acceleration or force (if bit 10 of type_mask is set) in NED frame in meter / s^2 or N + Afx float32 + // Y acceleration or force (if bit 10 of type_mask is set) in NED frame in meter / s^2 or N + Afy float32 + // Z acceleration or force (if bit 10 of type_mask is set) in NED frame in meter / s^2 or N + Afz float32 + // yaw setpoint + Yaw float32 + // yaw rate setpoint + YawRate float32 +} + +// GetID implements the msg.Message interface. +func (*MessageSetPositionTargetGlobalInt) GetID() uint32 { + return 86 +} diff --git a/pkg/dialects/development/msg_set_position_target_local_ned.go b/pkg/dialects/development/msg_set_position_target_local_ned.go new file mode 100644 index 000000000..8c3826738 --- /dev/null +++ b/pkg/dialects/development/msg_set_position_target_local_ned.go @@ -0,0 +1,44 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package development + +// Sets a desired vehicle position in a local north-east-down coordinate frame. Used by an external controller to command the vehicle (manual controller or other system). +type MessageSetPositionTargetLocalNed struct { + // Timestamp (time since system boot). + TimeBootMs uint32 + // System ID + TargetSystem uint8 + // Component ID + TargetComponent uint8 + // Valid options are: MAV_FRAME_LOCAL_NED = 1, MAV_FRAME_LOCAL_OFFSET_NED = 7, MAV_FRAME_BODY_NED = 8, MAV_FRAME_BODY_OFFSET_NED = 9 + CoordinateFrame MAV_FRAME `mavenum:"uint8"` + // Bitmap to indicate which dimensions should be ignored by the vehicle. + TypeMask POSITION_TARGET_TYPEMASK `mavenum:"uint16"` + // X Position in NED frame + X float32 + // Y Position in NED frame + Y float32 + // Z Position in NED frame (note, altitude is negative in NED) + Z float32 + // X velocity in NED frame + Vx float32 + // Y velocity in NED frame + Vy float32 + // Z velocity in NED frame + Vz float32 + // X acceleration or force (if bit 10 of type_mask is set) in NED frame in meter / s^2 or N + Afx float32 + // Y acceleration or force (if bit 10 of type_mask is set) in NED frame in meter / s^2 or N + Afy float32 + // Z acceleration or force (if bit 10 of type_mask is set) in NED frame in meter / s^2 or N + Afz float32 + // yaw setpoint + Yaw float32 + // yaw rate setpoint + YawRate float32 +} + +// GetID implements the msg.Message interface. +func (*MessageSetPositionTargetLocalNed) GetID() uint32 { + return 84 +} diff --git a/pkg/dialects/development/msg_setup_signing.go b/pkg/dialects/development/msg_setup_signing.go new file mode 100644 index 000000000..74d88a167 --- /dev/null +++ b/pkg/dialects/development/msg_setup_signing.go @@ -0,0 +1,20 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package development + +// Setup a MAVLink2 signing key. If called with secret_key of all zero and zero initial_timestamp will disable signing +type MessageSetupSigning struct { + // system id of the target + TargetSystem uint8 + // component ID of the target + TargetComponent uint8 + // signing key + SecretKey [32]uint8 + // initial timestamp + InitialTimestamp uint64 +} + +// GetID implements the msg.Message interface. +func (*MessageSetupSigning) GetID() uint32 { + return 256 +} diff --git a/pkg/dialects/development/msg_sim_state.go b/pkg/dialects/development/msg_sim_state.go new file mode 100644 index 000000000..79e5797b5 --- /dev/null +++ b/pkg/dialects/development/msg_sim_state.go @@ -0,0 +1,54 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package development + +// Status of simulation environment, if used +type MessageSimState struct { + // True attitude quaternion component 1, w (1 in null-rotation) + Q1 float32 + // True attitude quaternion component 2, x (0 in null-rotation) + Q2 float32 + // True attitude quaternion component 3, y (0 in null-rotation) + Q3 float32 + // True attitude quaternion component 4, z (0 in null-rotation) + Q4 float32 + // Attitude roll expressed as Euler angles, not recommended except for human-readable outputs + Roll float32 + // Attitude pitch expressed as Euler angles, not recommended except for human-readable outputs + Pitch float32 + // Attitude yaw expressed as Euler angles, not recommended except for human-readable outputs + Yaw float32 + // X acceleration + Xacc float32 + // Y acceleration + Yacc float32 + // Z acceleration + Zacc float32 + // Angular speed around X axis + Xgyro float32 + // Angular speed around Y axis + Ygyro float32 + // Angular speed around Z axis + Zgyro float32 + // Latitude + Lat float32 + // Longitude + Lon float32 + // Altitude + Alt float32 + // Horizontal position standard deviation + StdDevHorz float32 + // Vertical position standard deviation + StdDevVert float32 + // True velocity in north direction in earth-fixed NED frame + Vn float32 + // True velocity in east direction in earth-fixed NED frame + Ve float32 + // True velocity in down direction in earth-fixed NED frame + Vd float32 +} + +// GetID implements the msg.Message interface. +func (*MessageSimState) GetID() uint32 { + return 108 +} diff --git a/pkg/dialects/development/msg_smart_battery_info.go b/pkg/dialects/development/msg_smart_battery_info.go new file mode 100644 index 000000000..82d4c7c15 --- /dev/null +++ b/pkg/dialects/development/msg_smart_battery_info.go @@ -0,0 +1,46 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package development + +// Smart Battery information (static/infrequent update). Use for updates from: smart battery to flight stack, flight stack to GCS. Use BATTERY_STATUS for smart battery frequent updates. +type MessageSmartBatteryInfo struct { + // Battery ID + Id uint8 + // Function of the battery + BatteryFunction MAV_BATTERY_FUNCTION `mavenum:"uint8"` + // Type (chemistry) of the battery + Type MAV_BATTERY_TYPE `mavenum:"uint8"` + // Capacity when full according to manufacturer, -1: field not provided. + CapacityFullSpecification int32 + // Capacity when full (accounting for battery degradation), -1: field not provided. + CapacityFull int32 + // Charge/discharge cycle count. UINT16_MAX: field not provided. + CycleCount uint16 + // Serial number in ASCII characters, 0 terminated. All 0: field not provided. + SerialNumber string `mavlen:"16"` + // Static device name in ASCII characters, 0 terminated. All 0: field not provided. Encode as manufacturer name then product name separated using an underscore. + DeviceName string `mavlen:"50"` + // Battery weight. 0: field not provided. + Weight uint16 + // Minimum per-cell voltage when discharging. If not supplied set to UINT16_MAX value. + DischargeMinimumVoltage uint16 + // Minimum per-cell voltage when charging. If not supplied set to UINT16_MAX value. + ChargingMinimumVoltage uint16 + // Minimum per-cell voltage when resting. If not supplied set to UINT16_MAX value. + RestingMinimumVoltage uint16 + // Maximum per-cell voltage when charged. 0: field not provided. + ChargingMaximumVoltage uint16 `mavext:"true"` + // Number of battery cells in series. 0: field not provided. + CellsInSeries uint8 `mavext:"true"` + // Maximum pack discharge current. 0: field not provided. + DischargeMaximumCurrent uint32 `mavext:"true"` + // Maximum pack discharge burst current. 0: field not provided. + DischargeMaximumBurstCurrent uint32 `mavext:"true"` + // Manufacture date (DD/MM/YYYY) in ASCII characters, 0 terminated. All 0: field not provided. + ManufactureDate string `mavext:"true" mavlen:"11"` +} + +// GetID implements the msg.Message interface. +func (*MessageSmartBatteryInfo) GetID() uint32 { + return 370 +} diff --git a/pkg/dialects/development/msg_statustext.go b/pkg/dialects/development/msg_statustext.go new file mode 100644 index 000000000..2f8c81bc6 --- /dev/null +++ b/pkg/dialects/development/msg_statustext.go @@ -0,0 +1,20 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package development + +// Status text message. These messages are printed in yellow in the COMM console of QGroundControl. WARNING: They consume quite some bandwidth, so use only for important status and error messages. If implemented wisely, these messages are buffered on the MCU and sent only at a limited rate (e.g. 10 Hz). +type MessageStatustext struct { + // Severity of status. Relies on the definitions within RFC-5424. + Severity MAV_SEVERITY `mavenum:"uint8"` + // Status text message, without null termination character + Text string `mavlen:"50"` + // Unique (opaque) identifier for this statustext message. May be used to reassemble a logical long-statustext message from a sequence of chunks. A value of zero indicates this is the only chunk in the sequence and the message can be emitted immediately. + Id uint16 `mavext:"true"` + // This chunk's sequence number; indexing is from zero. Any null character in the text field is taken to mean this was the last chunk. + ChunkSeq uint8 `mavext:"true"` +} + +// GetID implements the msg.Message interface. +func (*MessageStatustext) GetID() uint32 { + return 253 +} diff --git a/pkg/dialects/development/msg_storage_information.go b/pkg/dialects/development/msg_storage_information.go new file mode 100644 index 000000000..c4ee119f9 --- /dev/null +++ b/pkg/dialects/development/msg_storage_information.go @@ -0,0 +1,39 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package development + +// Information about a storage medium. This message is sent in response to a request with MAV_CMD_REQUEST_MESSAGE and whenever the status of the storage changes (STORAGE_STATUS). Use MAV_CMD_REQUEST_MESSAGE.param2 to indicate the index/id of requested storage: 0 for all, 1 for first, 2 for second, etc. +type MessageStorageInformation struct { + // Timestamp (time since system boot). + TimeBootMs uint32 + // Storage ID (1 for first, 2 for second, etc.) + StorageId uint8 + // Number of storage devices + StorageCount uint8 + // Status of storage + Status STORAGE_STATUS `mavenum:"uint8"` + // Total capacity. If storage is not ready (STORAGE_STATUS_READY) value will be ignored. + TotalCapacity float32 + // Used capacity. If storage is not ready (STORAGE_STATUS_READY) value will be ignored. + UsedCapacity float32 + // Available storage capacity. If storage is not ready (STORAGE_STATUS_READY) value will be ignored. + AvailableCapacity float32 + // Read speed. + ReadSpeed float32 + // Write speed. + WriteSpeed float32 + // Type of storage + Type STORAGE_TYPE `mavenum:"uint8" mavext:"true"` + // Textual storage name to be used in UI (microSD 1, Internal Memory, etc.) This is a NULL terminated string. If it is exactly 32 characters long, add a terminating NULL. If this string is empty, the generic type is shown to the user. + Name string `mavext:"true" mavlen:"32"` + // Flags indicating whether this instance is preferred storage for photos, videos, etc. + // Note: Implementations should initially set the flags on the system-default storage id used for saving media (if possible/supported). + // This setting can then be overridden using MAV_CMD_SET_STORAGE_USAGE. + // If the media usage flags are not set, a GCS may assume storage ID 1 is the default storage for all media types. + StorageUsage STORAGE_USAGE_FLAG `mavenum:"uint8" mavext:"true"` +} + +// GetID implements the msg.Message interface. +func (*MessageStorageInformation) GetID() uint32 { + return 261 +} diff --git a/pkg/dialects/development/msg_supported_tunes.go b/pkg/dialects/development/msg_supported_tunes.go new file mode 100644 index 000000000..66eb9d0d3 --- /dev/null +++ b/pkg/dialects/development/msg_supported_tunes.go @@ -0,0 +1,18 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package development + +// Tune formats supported by vehicle. This should be emitted as response to MAV_CMD_REQUEST_MESSAGE. +type MessageSupportedTunes struct { + // System ID + TargetSystem uint8 + // Component ID + TargetComponent uint8 + // Bitfield of supported tune formats. + Format TUNE_FORMAT `mavenum:"uint32"` +} + +// GetID implements the msg.Message interface. +func (*MessageSupportedTunes) GetID() uint32 { + return 401 +} diff --git a/pkg/dialects/development/msg_sys_status.go b/pkg/dialects/development/msg_sys_status.go new file mode 100644 index 000000000..0a4c0e909 --- /dev/null +++ b/pkg/dialects/development/msg_sys_status.go @@ -0,0 +1,44 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package development + +// The general system state. If the system is following the MAVLink standard, the system state is mainly defined by three orthogonal states/modes: The system mode, which is either LOCKED (motors shut down and locked), MANUAL (system under RC control), GUIDED (system with autonomous position control, position setpoint controlled manually) or AUTO (system guided by path/waypoint planner). The NAV_MODE defined the current flight state: LIFTOFF (often an open-loop maneuver), LANDING, WAYPOINTS or VECTOR. This represents the internal navigation state machine. The system status shows whether the system is currently active or not and if an emergency occurred. During the CRITICAL and EMERGENCY states the MAV is still considered to be active, but should start emergency procedures autonomously. After a failure occurred it should first move from active to critical to allow manual intervention and then move to emergency after a certain timeout. +type MessageSysStatus struct { + // Bitmap showing which onboard controllers and sensors are present. Value of 0: not present. Value of 1: present. + OnboardControlSensorsPresent MAV_SYS_STATUS_SENSOR `mavenum:"uint32"` + // Bitmap showing which onboard controllers and sensors are enabled: Value of 0: not enabled. Value of 1: enabled. + OnboardControlSensorsEnabled MAV_SYS_STATUS_SENSOR `mavenum:"uint32"` + // Bitmap showing which onboard controllers and sensors have an error (or are operational). Value of 0: error. Value of 1: healthy. + OnboardControlSensorsHealth MAV_SYS_STATUS_SENSOR `mavenum:"uint32"` + // Maximum usage in percent of the mainloop time. Values: [0-1000] - should always be below 1000 + Load uint16 + // Battery voltage, UINT16_MAX: Voltage not sent by autopilot + VoltageBattery uint16 + // Battery current, -1: Current not sent by autopilot + CurrentBattery int16 + // Battery energy remaining, -1: Battery remaining energy not sent by autopilot + BatteryRemaining int8 + // Communication drop rate, (UART, I2C, SPI, CAN), dropped packets on all links (packets that were corrupted on reception on the MAV) + DropRateComm uint16 + // Communication errors (UART, I2C, SPI, CAN), dropped packets on all links (packets that were corrupted on reception on the MAV) + ErrorsComm uint16 + // Autopilot-specific errors + ErrorsCount1 uint16 + // Autopilot-specific errors + ErrorsCount2 uint16 + // Autopilot-specific errors + ErrorsCount3 uint16 + // Autopilot-specific errors + ErrorsCount4 uint16 + // Bitmap showing which onboard controllers and sensors are present. Value of 0: not present. Value of 1: present. + OnboardControlSensorsPresentExtended MAV_SYS_STATUS_SENSOR_EXTENDED `mavenum:"uint32" mavext:"true"` + // Bitmap showing which onboard controllers and sensors are enabled: Value of 0: not enabled. Value of 1: enabled. + OnboardControlSensorsEnabledExtended MAV_SYS_STATUS_SENSOR_EXTENDED `mavenum:"uint32" mavext:"true"` + // Bitmap showing which onboard controllers and sensors have an error (or are operational). Value of 0: error. Value of 1: healthy. + OnboardControlSensorsHealthExtended MAV_SYS_STATUS_SENSOR_EXTENDED `mavenum:"uint32" mavext:"true"` +} + +// GetID implements the msg.Message interface. +func (*MessageSysStatus) GetID() uint32 { + return 1 +} diff --git a/pkg/dialects/development/msg_system_time.go b/pkg/dialects/development/msg_system_time.go new file mode 100644 index 000000000..b16725529 --- /dev/null +++ b/pkg/dialects/development/msg_system_time.go @@ -0,0 +1,16 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package development + +// The system time is the time of the master clock, typically the computer clock of the main onboard computer. +type MessageSystemTime struct { + // Timestamp (UNIX epoch time). + TimeUnixUsec uint64 + // Timestamp (time since system boot). + TimeBootMs uint32 +} + +// GetID implements the msg.Message interface. +func (*MessageSystemTime) GetID() uint32 { + return 2 +} diff --git a/pkg/dialects/development/msg_terrain_check.go b/pkg/dialects/development/msg_terrain_check.go new file mode 100644 index 000000000..a967dd82e --- /dev/null +++ b/pkg/dialects/development/msg_terrain_check.go @@ -0,0 +1,16 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package development + +// Request that the vehicle report terrain height at the given location (expected response is a TERRAIN_REPORT). Used by GCS to check if vehicle has all terrain data needed for a mission. +type MessageTerrainCheck struct { + // Latitude + Lat int32 + // Longitude + Lon int32 +} + +// GetID implements the msg.Message interface. +func (*MessageTerrainCheck) GetID() uint32 { + return 135 +} diff --git a/pkg/dialects/development/msg_terrain_data.go b/pkg/dialects/development/msg_terrain_data.go new file mode 100644 index 000000000..bf7767f00 --- /dev/null +++ b/pkg/dialects/development/msg_terrain_data.go @@ -0,0 +1,22 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package development + +// Terrain data sent from GCS. The lat/lon and grid_spacing must be the same as a lat/lon from a TERRAIN_REQUEST. See terrain protocol docs: https://mavlink.io/en/services/terrain.html +type MessageTerrainData struct { + // Latitude of SW corner of first grid + Lat int32 + // Longitude of SW corner of first grid + Lon int32 + // Grid spacing + GridSpacing uint16 + // bit within the terrain request mask + Gridbit uint8 + // Terrain data MSL + Data [16]int16 +} + +// GetID implements the msg.Message interface. +func (*MessageTerrainData) GetID() uint32 { + return 134 +} diff --git a/pkg/dialects/development/msg_terrain_report.go b/pkg/dialects/development/msg_terrain_report.go new file mode 100644 index 000000000..dcc55560a --- /dev/null +++ b/pkg/dialects/development/msg_terrain_report.go @@ -0,0 +1,26 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package development + +// Streamed from drone to report progress of terrain map download (initiated by TERRAIN_REQUEST), or sent as a response to a TERRAIN_CHECK request. See terrain protocol docs: https://mavlink.io/en/services/terrain.html +type MessageTerrainReport struct { + // Latitude + Lat int32 + // Longitude + Lon int32 + // grid spacing (zero if terrain at this location unavailable) + Spacing uint16 + // Terrain height MSL + TerrainHeight float32 + // Current vehicle height above lat/lon terrain height + CurrentHeight float32 + // Number of 4x4 terrain blocks waiting to be received or read from disk + Pending uint16 + // Number of 4x4 terrain blocks in memory + Loaded uint16 +} + +// GetID implements the msg.Message interface. +func (*MessageTerrainReport) GetID() uint32 { + return 136 +} diff --git a/pkg/dialects/development/msg_terrain_request.go b/pkg/dialects/development/msg_terrain_request.go new file mode 100644 index 000000000..eb013f967 --- /dev/null +++ b/pkg/dialects/development/msg_terrain_request.go @@ -0,0 +1,20 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package development + +// Request for terrain data and terrain status. See terrain protocol docs: https://mavlink.io/en/services/terrain.html +type MessageTerrainRequest struct { + // Latitude of SW corner of first grid + Lat int32 + // Longitude of SW corner of first grid + Lon int32 + // Grid spacing + GridSpacing uint16 + // Bitmask of requested 4x4 grids (row major 8x7 array of grids, 56 bits) + Mask uint64 +} + +// GetID implements the msg.Message interface. +func (*MessageTerrainRequest) GetID() uint32 { + return 133 +} diff --git a/pkg/dialects/development/msg_time_estimate_to_target.go b/pkg/dialects/development/msg_time_estimate_to_target.go new file mode 100644 index 000000000..869be910e --- /dev/null +++ b/pkg/dialects/development/msg_time_estimate_to_target.go @@ -0,0 +1,22 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package development + +// Time/duration estimates for various events and actions given the current vehicle state and position. +type MessageTimeEstimateToTarget struct { + // Estimated time to complete the vehicle's configured "safe return" action from its current position (e.g. RTL, Smart RTL, etc.). -1 indicates that the vehicle is landed, or that no time estimate available. + SafeReturn int32 + // Estimated time for vehicle to complete the LAND action from its current position. -1 indicates that the vehicle is landed, or that no time estimate available. + Land int32 + // Estimated time for reaching/completing the currently active mission item. -1 means no time estimate available. + MissionNextItem int32 + // Estimated time for completing the current mission. -1 means no mission active and/or no estimate available. + MissionEnd int32 + // Estimated time for completing the current commanded action (i.e. Go To, Takeoff, Land, etc.). -1 means no action active and/or no estimate available. + CommandedAction int32 +} + +// GetID implements the msg.Message interface. +func (*MessageTimeEstimateToTarget) GetID() uint32 { + return 380 +} diff --git a/pkg/dialects/development/msg_timesync.go b/pkg/dialects/development/msg_timesync.go new file mode 100644 index 000000000..bd5c8bd0f --- /dev/null +++ b/pkg/dialects/development/msg_timesync.go @@ -0,0 +1,16 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package development + +// Time synchronization message. +type MessageTimesync struct { + // Time sync timestamp 1 + Tc1 int64 + // Time sync timestamp 2 + Ts1 int64 +} + +// GetID implements the msg.Message interface. +func (*MessageTimesync) GetID() uint32 { + return 111 +} diff --git a/pkg/dialects/development/msg_trajectory_representation_bezier.go b/pkg/dialects/development/msg_trajectory_representation_bezier.go new file mode 100644 index 000000000..778f9ab7e --- /dev/null +++ b/pkg/dialects/development/msg_trajectory_representation_bezier.go @@ -0,0 +1,26 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package development + +// Describe a trajectory using an array of up-to 5 bezier control points in the local frame (MAV_FRAME_LOCAL_NED). +type MessageTrajectoryRepresentationBezier struct { + // Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. + TimeUsec uint64 + // Number of valid control points (up-to 5 points are possible) + ValidPoints uint8 + // X-coordinate of bezier control points. Set to NaN if not being used + PosX [5]float32 + // Y-coordinate of bezier control points. Set to NaN if not being used + PosY [5]float32 + // Z-coordinate of bezier control points. Set to NaN if not being used + PosZ [5]float32 + // Bezier time horizon. Set to NaN if velocity/acceleration should not be incorporated + Delta [5]float32 + // Yaw. Set to NaN for unchanged + PosYaw [5]float32 +} + +// GetID implements the msg.Message interface. +func (*MessageTrajectoryRepresentationBezier) GetID() uint32 { + return 333 +} diff --git a/pkg/dialects/development/msg_trajectory_representation_waypoints.go b/pkg/dialects/development/msg_trajectory_representation_waypoints.go new file mode 100644 index 000000000..433e53baf --- /dev/null +++ b/pkg/dialects/development/msg_trajectory_representation_waypoints.go @@ -0,0 +1,40 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package development + +// Describe a trajectory using an array of up-to 5 waypoints in the local frame (MAV_FRAME_LOCAL_NED). +type MessageTrajectoryRepresentationWaypoints struct { + // Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. + TimeUsec uint64 + // Number of valid points (up-to 5 waypoints are possible) + ValidPoints uint8 + // X-coordinate of waypoint, set to NaN if not being used + PosX [5]float32 + // Y-coordinate of waypoint, set to NaN if not being used + PosY [5]float32 + // Z-coordinate of waypoint, set to NaN if not being used + PosZ [5]float32 + // X-velocity of waypoint, set to NaN if not being used + VelX [5]float32 + // Y-velocity of waypoint, set to NaN if not being used + VelY [5]float32 + // Z-velocity of waypoint, set to NaN if not being used + VelZ [5]float32 + // X-acceleration of waypoint, set to NaN if not being used + AccX [5]float32 + // Y-acceleration of waypoint, set to NaN if not being used + AccY [5]float32 + // Z-acceleration of waypoint, set to NaN if not being used + AccZ [5]float32 + // Yaw angle, set to NaN if not being used + PosYaw [5]float32 + // Yaw rate, set to NaN if not being used + VelYaw [5]float32 + // MAV_CMD command id of waypoint, set to UINT16_MAX if not being used. + Command [5]MAV_CMD `mavenum:"uint16"` +} + +// GetID implements the msg.Message interface. +func (*MessageTrajectoryRepresentationWaypoints) GetID() uint32 { + return 332 +} diff --git a/pkg/dialects/development/msg_tunnel.go b/pkg/dialects/development/msg_tunnel.go new file mode 100644 index 000000000..4942549fe --- /dev/null +++ b/pkg/dialects/development/msg_tunnel.go @@ -0,0 +1,22 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package development + +// Message for transporting "arbitrary" variable-length data from one component to another (broadcast is not forbidden, but discouraged). The encoding of the data is usually extension specific, i.e. determined by the source, and is usually not documented as part of the MAVLink specification. +type MessageTunnel struct { + // System ID (can be 0 for broadcast, but this is discouraged) + TargetSystem uint8 + // Component ID (can be 0 for broadcast, but this is discouraged) + TargetComponent uint8 + // A code that identifies the content of the payload (0 for unknown, which is the default). If this code is less than 32768, it is a 'registered' payload type and the corresponding code should be added to the MAV_TUNNEL_PAYLOAD_TYPE enum. Software creators can register blocks of types as needed. Codes greater than 32767 are considered local experiments and should not be checked in to any widely distributed codebase. + PayloadType MAV_TUNNEL_PAYLOAD_TYPE `mavenum:"uint16"` + // Length of the data transported in payload + PayloadLength uint8 + // Variable length payload. The payload length is defined by payload_length. The entire content of this block is opaque unless you understand the encoding specified by payload_type. + Payload [128]uint8 +} + +// GetID implements the msg.Message interface. +func (*MessageTunnel) GetID() uint32 { + return 385 +} diff --git a/pkg/dialects/development/msg_uavcan_node_info.go b/pkg/dialects/development/msg_uavcan_node_info.go new file mode 100644 index 000000000..007bbb296 --- /dev/null +++ b/pkg/dialects/development/msg_uavcan_node_info.go @@ -0,0 +1,30 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package development + +// General information describing a particular UAVCAN node. Please refer to the definition of the UAVCAN service "uavcan.protocol.GetNodeInfo" for the background information. This message should be emitted by the system whenever a new node appears online, or an existing node reboots. Additionally, it can be emitted upon request from the other end of the MAVLink channel (see MAV_CMD_UAVCAN_GET_NODE_INFO). It is also not prohibited to emit this message unconditionally at a low frequency. The UAVCAN specification is available at http://uavcan.org. +type MessageUavcanNodeInfo struct { + // Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. + TimeUsec uint64 + // Time since the start-up of the node. + UptimeSec uint32 + // Node name string. For example, "sapog.px4.io". + Name string `mavlen:"80"` + // Hardware major version number. + HwVersionMajor uint8 + // Hardware minor version number. + HwVersionMinor uint8 + // Hardware unique 128-bit ID. + HwUniqueId [16]uint8 + // Software major version number. + SwVersionMajor uint8 + // Software minor version number. + SwVersionMinor uint8 + // Version control system (VCS) revision identifier (e.g. git short commit hash). 0 if unknown. + SwVcsCommit uint32 +} + +// GetID implements the msg.Message interface. +func (*MessageUavcanNodeInfo) GetID() uint32 { + return 311 +} diff --git a/pkg/dialects/development/msg_uavcan_node_status.go b/pkg/dialects/development/msg_uavcan_node_status.go new file mode 100644 index 000000000..8ff1f7179 --- /dev/null +++ b/pkg/dialects/development/msg_uavcan_node_status.go @@ -0,0 +1,24 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package development + +// General status information of an UAVCAN node. Please refer to the definition of the UAVCAN message "uavcan.protocol.NodeStatus" for the background information. The UAVCAN specification is available at http://uavcan.org. +type MessageUavcanNodeStatus struct { + // Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. + TimeUsec uint64 + // Time since the start-up of the node. + UptimeSec uint32 + // Generalized node health status. + Health UAVCAN_NODE_HEALTH `mavenum:"uint8"` + // Generalized operating mode. + Mode UAVCAN_NODE_MODE `mavenum:"uint8"` + // Not used currently. + SubMode uint8 + // Vendor-specific status information. + VendorSpecificStatusCode uint16 +} + +// GetID implements the msg.Message interface. +func (*MessageUavcanNodeStatus) GetID() uint32 { + return 310 +} diff --git a/pkg/dialects/development/msg_utm_global_position.go b/pkg/dialects/development/msg_utm_global_position.go new file mode 100644 index 000000000..f30c018bd --- /dev/null +++ b/pkg/dialects/development/msg_utm_global_position.go @@ -0,0 +1,48 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package development + +// The global position resulting from GPS and sensor fusion. +type MessageUtmGlobalPosition struct { + // Time of applicability of position (microseconds since UNIX epoch). + Time uint64 + // Unique UAS ID. + UasId [18]uint8 + // Latitude (WGS84) + Lat int32 + // Longitude (WGS84) + Lon int32 + // Altitude (WGS84) + Alt int32 + // Altitude above ground + RelativeAlt int32 + // Ground X speed (latitude, positive north) + Vx int16 + // Ground Y speed (longitude, positive east) + Vy int16 + // Ground Z speed (altitude, positive down) + Vz int16 + // Horizontal position uncertainty (standard deviation) + HAcc uint16 + // Altitude uncertainty (standard deviation) + VAcc uint16 + // Speed uncertainty (standard deviation) + VelAcc uint16 + // Next waypoint, latitude (WGS84) + NextLat int32 + // Next waypoint, longitude (WGS84) + NextLon int32 + // Next waypoint, altitude (WGS84) + NextAlt int32 + // Time until next update. Set to 0 if unknown or in data driven mode. + UpdateRate uint16 + // Flight state + FlightState UTM_FLIGHT_STATE `mavenum:"uint8"` + // Bitwise OR combination of the data available flags. + Flags UTM_DATA_AVAIL_FLAGS `mavenum:"uint8"` +} + +// GetID implements the msg.Message interface. +func (*MessageUtmGlobalPosition) GetID() uint32 { + return 340 +} diff --git a/pkg/dialects/development/msg_v2_extension.go b/pkg/dialects/development/msg_v2_extension.go new file mode 100644 index 000000000..0e72d71f1 --- /dev/null +++ b/pkg/dialects/development/msg_v2_extension.go @@ -0,0 +1,22 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package development + +// Message implementing parts of the V2 payload specs in V1 frames for transitional support. +type MessageV2Extension struct { + // Network ID (0 for broadcast) + TargetNetwork uint8 + // System ID (0 for broadcast) + TargetSystem uint8 + // Component ID (0 for broadcast) + TargetComponent uint8 + // A code that identifies the software component that understands this message (analogous to USB device classes or mime type strings). If this code is less than 32768, it is considered a 'registered' protocol extension and the corresponding entry should be added to https://github.com/mavlink/mavlink/definition_files/extension_message_ids.xml. Software creators can register blocks of message IDs as needed (useful for GCS specific metadata, etc...). Message_types greater than 32767 are considered local experiments and should not be checked in to any widely distributed codebase. + MessageType uint16 + // Variable length payload. The length must be encoded in the payload as part of the message_type protocol, e.g. by including the length as payload data, or by terminating the payload data with a non-zero marker. This is required in order to reconstruct zero-terminated payloads that are (or otherwise would be) trimmed by MAVLink 2 empty-byte truncation. The entire content of the payload block is opaque unless you understand the encoding message_type. The particular encoding used can be extension specific and might not always be documented as part of the MAVLink specification. + Payload [249]uint8 +} + +// GetID implements the msg.Message interface. +func (*MessageV2Extension) GetID() uint32 { + return 248 +} diff --git a/pkg/dialects/development/msg_vfr_hud.go b/pkg/dialects/development/msg_vfr_hud.go new file mode 100644 index 000000000..897654bce --- /dev/null +++ b/pkg/dialects/development/msg_vfr_hud.go @@ -0,0 +1,24 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package development + +// Metrics typically displayed on a HUD for fixed wing aircraft. +type MessageVfrHud struct { + // Vehicle speed in form appropriate for vehicle type. For standard aircraft this is typically calibrated airspeed (CAS) or indicated airspeed (IAS) - either of which can be used by a pilot to estimate stall speed. + Airspeed float32 + // Current ground speed. + Groundspeed float32 + // Current heading in compass units (0-360, 0=north). + Heading int16 + // Current throttle setting (0 to 100). + Throttle uint16 + // Current altitude (MSL). + Alt float32 + // Current climb rate. + Climb float32 +} + +// GetID implements the msg.Message interface. +func (*MessageVfrHud) GetID() uint32 { + return 74 +} diff --git a/pkg/dialects/development/msg_vibration.go b/pkg/dialects/development/msg_vibration.go new file mode 100644 index 000000000..487dae907 --- /dev/null +++ b/pkg/dialects/development/msg_vibration.go @@ -0,0 +1,26 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package development + +// Vibration levels and accelerometer clipping +type MessageVibration struct { + // Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. + TimeUsec uint64 + // Vibration levels on X-axis + VibrationX float32 + // Vibration levels on Y-axis + VibrationY float32 + // Vibration levels on Z-axis + VibrationZ float32 + // first accelerometer clipping count + Clipping_0 uint32 + // second accelerometer clipping count + Clipping_1 uint32 + // third accelerometer clipping count + Clipping_2 uint32 +} + +// GetID implements the msg.Message interface. +func (*MessageVibration) GetID() uint32 { + return 241 +} diff --git a/pkg/dialects/development/msg_vicon_position_estimate.go b/pkg/dialects/development/msg_vicon_position_estimate.go new file mode 100644 index 000000000..2a8237231 --- /dev/null +++ b/pkg/dialects/development/msg_vicon_position_estimate.go @@ -0,0 +1,28 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package development + +// Global position estimate from a Vicon motion system source. +type MessageViconPositionEstimate struct { + // Timestamp (UNIX time or time since system boot) + Usec uint64 + // Global X position + X float32 + // Global Y position + Y float32 + // Global Z position + Z float32 + // Roll angle + Roll float32 + // Pitch angle + Pitch float32 + // Yaw angle + Yaw float32 + // Row-major representation of 6x6 pose cross-covariance matrix upper right triangle (states: x, y, z, roll, pitch, yaw; first six entries are the first ROW, next five entries are the second ROW, etc.). If unknown, assign NaN value to first element in the array. + Covariance [21]float32 `mavext:"true"` +} + +// GetID implements the msg.Message interface. +func (*MessageViconPositionEstimate) GetID() uint32 { + return 104 +} diff --git a/pkg/dialects/development/msg_video_stream_information.go b/pkg/dialects/development/msg_video_stream_information.go new file mode 100644 index 000000000..3e1b13ab4 --- /dev/null +++ b/pkg/dialects/development/msg_video_stream_information.go @@ -0,0 +1,36 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package development + +// Information about video stream. It may be requested using MAV_CMD_REQUEST_MESSAGE, where param2 indicates the video stream id: 0 for all streams, 1 for first, 2 for second, etc. +type MessageVideoStreamInformation struct { + // Video Stream ID (1 for first, 2 for second, etc.) + StreamId uint8 + // Number of streams available. + Count uint8 + // Type of stream. + Type VIDEO_STREAM_TYPE `mavenum:"uint8"` + // Bitmap of stream status flags. + Flags VIDEO_STREAM_STATUS_FLAGS `mavenum:"uint16"` + // Frame rate. + Framerate float32 + // Horizontal resolution. + ResolutionH uint16 + // Vertical resolution. + ResolutionV uint16 + // Bit rate. + Bitrate uint32 + // Video image rotation clockwise. + Rotation uint16 + // Horizontal Field of view. + Hfov uint16 + // Stream name. + Name string `mavlen:"32"` + // Video stream URI (TCP or RTSP URI ground station should connect to) or port number (UDP port ground station should listen to). + Uri string `mavlen:"160"` +} + +// GetID implements the msg.Message interface. +func (*MessageVideoStreamInformation) GetID() uint32 { + return 269 +} diff --git a/pkg/dialects/development/msg_video_stream_status.go b/pkg/dialects/development/msg_video_stream_status.go new file mode 100644 index 000000000..60b7571d9 --- /dev/null +++ b/pkg/dialects/development/msg_video_stream_status.go @@ -0,0 +1,28 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package development + +// Information about the status of a video stream. It may be requested using MAV_CMD_REQUEST_MESSAGE. +type MessageVideoStreamStatus struct { + // Video Stream ID (1 for first, 2 for second, etc.) + StreamId uint8 + // Bitmap of stream status flags + Flags VIDEO_STREAM_STATUS_FLAGS `mavenum:"uint16"` + // Frame rate + Framerate float32 + // Horizontal resolution + ResolutionH uint16 + // Vertical resolution + ResolutionV uint16 + // Bit rate + Bitrate uint32 + // Video image rotation clockwise + Rotation uint16 + // Horizontal Field of view + Hfov uint16 +} + +// GetID implements the msg.Message interface. +func (*MessageVideoStreamStatus) GetID() uint32 { + return 270 +} diff --git a/pkg/dialects/development/msg_vision_position_estimate.go b/pkg/dialects/development/msg_vision_position_estimate.go new file mode 100644 index 000000000..a492724dd --- /dev/null +++ b/pkg/dialects/development/msg_vision_position_estimate.go @@ -0,0 +1,30 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package development + +// Local position/attitude estimate from a vision source. +type MessageVisionPositionEstimate struct { + // Timestamp (UNIX time or time since system boot) + Usec uint64 + // Local X position + X float32 + // Local Y position + Y float32 + // Local Z position + Z float32 + // Roll angle + Roll float32 + // Pitch angle + Pitch float32 + // Yaw angle + Yaw float32 + // Row-major representation of pose 6x6 cross-covariance matrix upper right triangle (states: x, y, z, roll, pitch, yaw; first six entries are the first ROW, next five entries are the second ROW, etc.). If unknown, assign NaN value to first element in the array. + Covariance [21]float32 `mavext:"true"` + // Estimate reset counter. This should be incremented when the estimate resets in any of the dimensions (position, velocity, attitude, angular speed). This is designed to be used when e.g an external SLAM system detects a loop-closure and the estimate jumps. + ResetCounter uint8 `mavext:"true"` +} + +// GetID implements the msg.Message interface. +func (*MessageVisionPositionEstimate) GetID() uint32 { + return 102 +} diff --git a/pkg/dialects/development/msg_vision_speed_estimate.go b/pkg/dialects/development/msg_vision_speed_estimate.go new file mode 100644 index 000000000..31132e4f1 --- /dev/null +++ b/pkg/dialects/development/msg_vision_speed_estimate.go @@ -0,0 +1,24 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package development + +// Speed estimate from a vision source. +type MessageVisionSpeedEstimate struct { + // Timestamp (UNIX time or time since system boot) + Usec uint64 + // Global X speed + X float32 + // Global Y speed + Y float32 + // Global Z speed + Z float32 + // Row-major representation of 3x3 linear velocity covariance matrix (states: vx, vy, vz; 1st three entries - 1st row, etc.). If unknown, assign NaN value to first element in the array. + Covariance [9]float32 `mavext:"true"` + // Estimate reset counter. This should be incremented when the estimate resets in any of the dimensions (position, velocity, attitude, angular speed). This is designed to be used when e.g an external SLAM system detects a loop-closure and the estimate jumps. + ResetCounter uint8 `mavext:"true"` +} + +// GetID implements the msg.Message interface. +func (*MessageVisionSpeedEstimate) GetID() uint32 { + return 103 +} diff --git a/pkg/dialects/development/msg_wheel_distance.go b/pkg/dialects/development/msg_wheel_distance.go new file mode 100644 index 000000000..1ed1a2516 --- /dev/null +++ b/pkg/dialects/development/msg_wheel_distance.go @@ -0,0 +1,18 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package development + +// Cumulative distance traveled for each reported wheel. +type MessageWheelDistance struct { + // Timestamp (synced to UNIX time or since system boot). + TimeUsec uint64 + // Number of wheels reported. + Count uint8 + // Distance reported by individual wheel encoders. Forward rotations increase values, reverse rotations decrease them. Not all wheels will necessarily have wheel encoders; the mapping of encoders to wheel positions must be agreed/understood by the endpoints. + Distance [16]float64 +} + +// GetID implements the msg.Message interface. +func (*MessageWheelDistance) GetID() uint32 { + return 9000 +} diff --git a/pkg/dialects/development/msg_wifi_config_ap.go b/pkg/dialects/development/msg_wifi_config_ap.go new file mode 100644 index 000000000..f1eabb1eb --- /dev/null +++ b/pkg/dialects/development/msg_wifi_config_ap.go @@ -0,0 +1,20 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package development + +// Configure WiFi AP SSID, password, and mode. This message is re-emitted as an acknowledgement by the AP. The message may also be explicitly requested using MAV_CMD_REQUEST_MESSAGE +type MessageWifiConfigAp struct { + // Name of Wi-Fi network (SSID). Blank to leave it unchanged when setting. Current SSID when sent back as a response. + Ssid string `mavlen:"32"` + // Password. Blank for an open AP. MD5 hash when message is sent back as a response. + Password string `mavlen:"64"` + // WiFi Mode. + Mode WIFI_CONFIG_AP_MODE `mavenum:"int8" mavext:"true"` + // Message acceptance response (sent back to GS). + Response WIFI_CONFIG_AP_RESPONSE `mavenum:"int8" mavext:"true"` +} + +// GetID implements the msg.Message interface. +func (*MessageWifiConfigAp) GetID() uint32 { + return 299 +} diff --git a/pkg/dialects/development/msg_wifi_network_info.go b/pkg/dialects/development/msg_wifi_network_info.go new file mode 100644 index 000000000..5144860dd --- /dev/null +++ b/pkg/dialects/development/msg_wifi_network_info.go @@ -0,0 +1,22 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package development + +// Detected WiFi network status information. This message is sent per each WiFi network detected in range with known SSID and general status parameters. +type MessageWifiNetworkInfo struct { + // Name of Wi-Fi network (SSID). + Ssid string `mavlen:"32"` + // WiFi network operating channel ID. Set to 0 if unknown or unidentified. + ChannelId uint8 + // WiFi network signal quality. + SignalQuality uint8 + // WiFi network data rate. Set to UINT16_MAX if data_rate information is not supplied. + DataRate uint16 + // WiFi network security type. + Security WIFI_NETWORK_SECURITY `mavenum:"uint8"` +} + +// GetID implements the msg.Message interface. +func (*MessageWifiNetworkInfo) GetID() uint32 { + return 298 +} diff --git a/pkg/dialects/development/msg_winch_status.go b/pkg/dialects/development/msg_winch_status.go new file mode 100644 index 000000000..96250b984 --- /dev/null +++ b/pkg/dialects/development/msg_winch_status.go @@ -0,0 +1,28 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package development + +// Winch status. +type MessageWinchStatus struct { + // Timestamp (synced to UNIX time or since system boot). + TimeUsec uint64 + // Length of line released. NaN if unknown + LineLength float32 + // Speed line is being released or retracted. Positive values if being released, negative values if being retracted, NaN if unknown + Speed float32 + // Tension on the line. NaN if unknown + Tension float32 + // Voltage of the battery supplying the winch. NaN if unknown + Voltage float32 + // Current draw from the winch. NaN if unknown + Current float32 + // Temperature of the motor. INT16_MAX if unknown + Temperature int16 + // Status flags + Status MAV_WINCH_STATUS_FLAG `mavenum:"uint32"` +} + +// GetID implements the msg.Message interface. +func (*MessageWinchStatus) GetID() uint32 { + return 9005 +} diff --git a/pkg/dialects/development/msg_wind_cov.go b/pkg/dialects/development/msg_wind_cov.go new file mode 100644 index 000000000..4c502d674 --- /dev/null +++ b/pkg/dialects/development/msg_wind_cov.go @@ -0,0 +1,30 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package development + +// Wind covariance estimate from vehicle. +type MessageWindCov struct { + // Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. + TimeUsec uint64 + // Wind in X (NED) direction + WindX float32 + // Wind in Y (NED) direction + WindY float32 + // Wind in Z (NED) direction + WindZ float32 + // Variability of the wind in XY. RMS of a 1 Hz lowpassed wind estimate. + VarHoriz float32 + // Variability of the wind in Z. RMS of a 1 Hz lowpassed wind estimate. + VarVert float32 + // Altitude (MSL) that this measurement was taken at + WindAlt float32 + // Horizontal speed 1-STD accuracy + HorizAccuracy float32 + // Vertical speed 1-STD accuracy + VertAccuracy float32 +} + +// GetID implements the msg.Message interface. +func (*MessageWindCov) GetID() uint32 { + return 231 +} diff --git a/pkg/dialects/matrixpilot/enum_mav_protocol_capability.go b/pkg/dialects/matrixpilot/enum_mav_protocol_capability.go index 4820ff79c..aca8b49f4 100644 --- a/pkg/dialects/matrixpilot/enum_mav_protocol_capability.go +++ b/pkg/dialects/matrixpilot/enum_mav_protocol_capability.go @@ -10,16 +10,18 @@ import ( type MAV_PROTOCOL_CAPABILITY int const ( - // Autopilot supports MISSION float message type. + // Autopilot supports the MISSION_ITEM float message type. + // Note that MISSION_ITEM is deprecated, and autopilots should use MISSION_INT instead. MAV_PROTOCOL_CAPABILITY_MISSION_FLOAT MAV_PROTOCOL_CAPABILITY = 1 // Autopilot supports the new param float message type. MAV_PROTOCOL_CAPABILITY_PARAM_FLOAT MAV_PROTOCOL_CAPABILITY = 2 // Autopilot supports MISSION_ITEM_INT scaled integer message type. + // Note that this flag must always be set if missions are supported, because missions must always use MISSION_ITEM_INT (rather than MISSION_ITEM, which is deprecated). MAV_PROTOCOL_CAPABILITY_MISSION_INT MAV_PROTOCOL_CAPABILITY = 4 // Autopilot supports COMMAND_INT scaled integer message type. MAV_PROTOCOL_CAPABILITY_COMMAND_INT MAV_PROTOCOL_CAPABILITY = 8 - // Autopilot supports the new param union message type. - MAV_PROTOCOL_CAPABILITY_PARAM_UNION MAV_PROTOCOL_CAPABILITY = 16 + // Reserved for future use. + MAV_PROTOCOL_CAPABILITY_RESERVED1 MAV_PROTOCOL_CAPABILITY = 16 // Autopilot supports the new FILE_TRANSFER_PROTOCOL message type. MAV_PROTOCOL_CAPABILITY_FTP MAV_PROTOCOL_CAPABILITY = 32 // Autopilot supports commanding attitude offboard. @@ -42,8 +44,8 @@ const ( MAV_PROTOCOL_CAPABILITY_MISSION_FENCE MAV_PROTOCOL_CAPABILITY = 16384 // Autopilot supports mission rally point protocol. MAV_PROTOCOL_CAPABILITY_MISSION_RALLY MAV_PROTOCOL_CAPABILITY = 32768 - // Autopilot supports the flight information protocol. - MAV_PROTOCOL_CAPABILITY_FLIGHT_INFORMATION MAV_PROTOCOL_CAPABILITY = 65536 + // Reserved for future use. + MAV_PROTOCOL_CAPABILITY_RESERVED2 MAV_PROTOCOL_CAPABILITY = 65536 ) var labels_MAV_PROTOCOL_CAPABILITY = map[MAV_PROTOCOL_CAPABILITY]string{} diff --git a/pkg/dialects/matrixpilot/msg_component_information.go b/pkg/dialects/matrixpilot/msg_component_information.go index 50857f11c..a972957cf 100644 --- a/pkg/dialects/matrixpilot/msg_component_information.go +++ b/pkg/dialects/matrixpilot/msg_component_information.go @@ -6,13 +6,13 @@ package matrixpilot type MessageComponentInformation struct { // Timestamp (time since system boot). TimeBootMs uint32 - // CRC32 of the TYPE_GENERAL file (can be used by a GCS for file caching). + // CRC32 of the TYPE_GENERAL file (can be used by a GCS for file caching). The general metadata file contains URLs to other files of different type according to COMP_METADATA_TYPE. GeneralMetadataFileCrc uint32 // Component definition URI for TYPE_GENERAL. This must be a MAVLink FTP URI and the file might be compressed with xz. GeneralMetadataUri string `mavlen:"100"` // CRC32 of the TYPE_PERIPHERALS file (can be used by a GCS for file caching). PeripheralsMetadataFileCrc uint32 - // (Optional) Component definition URI for TYPE_PERIPHERALS. This must be a MAVLink FTP URI and the file might be compressed with xz. + // (Optional) Component definition URI for TYPE_PERIPHERALS. This must be a MAVLink FTP URI and the file might be compressed with xz. Peripherals are listed as a separate URL and not included in the general metadata file because it will likely be generated at runtime while the general (and other referenced files) might be generated at compile time. PeripheralsMetadataUri string `mavlen:"100"` } diff --git a/pkg/dialects/matrixpilot/msg_flight_information.go b/pkg/dialects/matrixpilot/msg_flight_information.go index 4755549a3..c62aa0be4 100644 --- a/pkg/dialects/matrixpilot/msg_flight_information.go +++ b/pkg/dialects/matrixpilot/msg_flight_information.go @@ -3,6 +3,7 @@ package matrixpilot // Information about flight since last arming. +// This can be requested using MAV_CMD_REQUEST_MESSAGE. type MessageFlightInformation struct { // Timestamp (time since system boot). TimeBootMs uint32 diff --git a/pkg/dialects/package_test.go b/pkg/dialects/package_test.go index 8a098f8ff..9d1233076 100644 --- a/pkg/dialects/package_test.go +++ b/pkg/dialects/package_test.go @@ -8,15 +8,19 @@ import ( "github.com/stretchr/testify/require" "github.com/aler9/gomavlib/pkg/dialect" + "github.com/aler9/gomavlib/pkg/dialects/all" "github.com/aler9/gomavlib/pkg/dialects/ardupilotmega" "github.com/aler9/gomavlib/pkg/dialects/asluav" + "github.com/aler9/gomavlib/pkg/dialects/avssuas" "github.com/aler9/gomavlib/pkg/dialects/common" + "github.com/aler9/gomavlib/pkg/dialects/development" "github.com/aler9/gomavlib/pkg/dialects/icarous" "github.com/aler9/gomavlib/pkg/dialects/matrixpilot" "github.com/aler9/gomavlib/pkg/dialects/minimal" "github.com/aler9/gomavlib/pkg/dialects/paparazzi" "github.com/aler9/gomavlib/pkg/dialects/pythonarraytest" "github.com/aler9/gomavlib/pkg/dialects/standard" + "github.com/aler9/gomavlib/pkg/dialects/storm32" "github.com/aler9/gomavlib/pkg/dialects/test" "github.com/aler9/gomavlib/pkg/dialects/ualberta" "github.com/aler9/gomavlib/pkg/dialects/uavionix" @@ -27,6 +31,14 @@ func TestDialects(t *testing.T) { _, err := dialect.NewDecEncoder(asluav.Dialect) require.NoError(t, err) }() + func() { + _, err := dialect.NewDecEncoder(avssuas.Dialect) + require.NoError(t, err) + }() + func() { + _, err := dialect.NewDecEncoder(all.Dialect) + require.NoError(t, err) + }() func() { _, err := dialect.NewDecEncoder(ardupilotmega.Dialect) require.NoError(t, err) @@ -35,6 +47,10 @@ func TestDialects(t *testing.T) { _, err := dialect.NewDecEncoder(common.Dialect) require.NoError(t, err) }() + func() { + _, err := dialect.NewDecEncoder(development.Dialect) + require.NoError(t, err) + }() func() { _, err := dialect.NewDecEncoder(icarous.Dialect) require.NoError(t, err) @@ -59,6 +75,10 @@ func TestDialects(t *testing.T) { _, err := dialect.NewDecEncoder(standard.Dialect) require.NoError(t, err) }() + func() { + _, err := dialect.NewDecEncoder(storm32.Dialect) + require.NoError(t, err) + }() func() { _, err := dialect.NewDecEncoder(test.Dialect) require.NoError(t, err) diff --git a/pkg/dialects/paparazzi/enum_mav_protocol_capability.go b/pkg/dialects/paparazzi/enum_mav_protocol_capability.go index b9027ea90..daa114982 100644 --- a/pkg/dialects/paparazzi/enum_mav_protocol_capability.go +++ b/pkg/dialects/paparazzi/enum_mav_protocol_capability.go @@ -10,16 +10,18 @@ import ( type MAV_PROTOCOL_CAPABILITY int const ( - // Autopilot supports MISSION float message type. + // Autopilot supports the MISSION_ITEM float message type. + // Note that MISSION_ITEM is deprecated, and autopilots should use MISSION_INT instead. MAV_PROTOCOL_CAPABILITY_MISSION_FLOAT MAV_PROTOCOL_CAPABILITY = 1 // Autopilot supports the new param float message type. MAV_PROTOCOL_CAPABILITY_PARAM_FLOAT MAV_PROTOCOL_CAPABILITY = 2 // Autopilot supports MISSION_ITEM_INT scaled integer message type. + // Note that this flag must always be set if missions are supported, because missions must always use MISSION_ITEM_INT (rather than MISSION_ITEM, which is deprecated). MAV_PROTOCOL_CAPABILITY_MISSION_INT MAV_PROTOCOL_CAPABILITY = 4 // Autopilot supports COMMAND_INT scaled integer message type. MAV_PROTOCOL_CAPABILITY_COMMAND_INT MAV_PROTOCOL_CAPABILITY = 8 - // Autopilot supports the new param union message type. - MAV_PROTOCOL_CAPABILITY_PARAM_UNION MAV_PROTOCOL_CAPABILITY = 16 + // Reserved for future use. + MAV_PROTOCOL_CAPABILITY_RESERVED1 MAV_PROTOCOL_CAPABILITY = 16 // Autopilot supports the new FILE_TRANSFER_PROTOCOL message type. MAV_PROTOCOL_CAPABILITY_FTP MAV_PROTOCOL_CAPABILITY = 32 // Autopilot supports commanding attitude offboard. @@ -42,8 +44,8 @@ const ( MAV_PROTOCOL_CAPABILITY_MISSION_FENCE MAV_PROTOCOL_CAPABILITY = 16384 // Autopilot supports mission rally point protocol. MAV_PROTOCOL_CAPABILITY_MISSION_RALLY MAV_PROTOCOL_CAPABILITY = 32768 - // Autopilot supports the flight information protocol. - MAV_PROTOCOL_CAPABILITY_FLIGHT_INFORMATION MAV_PROTOCOL_CAPABILITY = 65536 + // Reserved for future use. + MAV_PROTOCOL_CAPABILITY_RESERVED2 MAV_PROTOCOL_CAPABILITY = 65536 ) var labels_MAV_PROTOCOL_CAPABILITY = map[MAV_PROTOCOL_CAPABILITY]string{} diff --git a/pkg/dialects/paparazzi/msg_component_information.go b/pkg/dialects/paparazzi/msg_component_information.go index d0979e995..bdd6401fe 100644 --- a/pkg/dialects/paparazzi/msg_component_information.go +++ b/pkg/dialects/paparazzi/msg_component_information.go @@ -6,13 +6,13 @@ package paparazzi type MessageComponentInformation struct { // Timestamp (time since system boot). TimeBootMs uint32 - // CRC32 of the TYPE_GENERAL file (can be used by a GCS for file caching). + // CRC32 of the TYPE_GENERAL file (can be used by a GCS for file caching). The general metadata file contains URLs to other files of different type according to COMP_METADATA_TYPE. GeneralMetadataFileCrc uint32 // Component definition URI for TYPE_GENERAL. This must be a MAVLink FTP URI and the file might be compressed with xz. GeneralMetadataUri string `mavlen:"100"` // CRC32 of the TYPE_PERIPHERALS file (can be used by a GCS for file caching). PeripheralsMetadataFileCrc uint32 - // (Optional) Component definition URI for TYPE_PERIPHERALS. This must be a MAVLink FTP URI and the file might be compressed with xz. + // (Optional) Component definition URI for TYPE_PERIPHERALS. This must be a MAVLink FTP URI and the file might be compressed with xz. Peripherals are listed as a separate URL and not included in the general metadata file because it will likely be generated at runtime while the general (and other referenced files) might be generated at compile time. PeripheralsMetadataUri string `mavlen:"100"` } diff --git a/pkg/dialects/paparazzi/msg_flight_information.go b/pkg/dialects/paparazzi/msg_flight_information.go index 27644356f..fd82180a4 100644 --- a/pkg/dialects/paparazzi/msg_flight_information.go +++ b/pkg/dialects/paparazzi/msg_flight_information.go @@ -3,6 +3,7 @@ package paparazzi // Information about flight since last arming. +// This can be requested using MAV_CMD_REQUEST_MESSAGE. type MessageFlightInformation struct { // Timestamp (time since system boot). TimeBootMs uint32 diff --git a/pkg/dialects/pythonarraytest/enum_mav_protocol_capability.go b/pkg/dialects/pythonarraytest/enum_mav_protocol_capability.go index 26cbe5471..130bfc891 100644 --- a/pkg/dialects/pythonarraytest/enum_mav_protocol_capability.go +++ b/pkg/dialects/pythonarraytest/enum_mav_protocol_capability.go @@ -10,16 +10,18 @@ import ( type MAV_PROTOCOL_CAPABILITY int const ( - // Autopilot supports MISSION float message type. + // Autopilot supports the MISSION_ITEM float message type. + // Note that MISSION_ITEM is deprecated, and autopilots should use MISSION_INT instead. MAV_PROTOCOL_CAPABILITY_MISSION_FLOAT MAV_PROTOCOL_CAPABILITY = 1 // Autopilot supports the new param float message type. MAV_PROTOCOL_CAPABILITY_PARAM_FLOAT MAV_PROTOCOL_CAPABILITY = 2 // Autopilot supports MISSION_ITEM_INT scaled integer message type. + // Note that this flag must always be set if missions are supported, because missions must always use MISSION_ITEM_INT (rather than MISSION_ITEM, which is deprecated). MAV_PROTOCOL_CAPABILITY_MISSION_INT MAV_PROTOCOL_CAPABILITY = 4 // Autopilot supports COMMAND_INT scaled integer message type. MAV_PROTOCOL_CAPABILITY_COMMAND_INT MAV_PROTOCOL_CAPABILITY = 8 - // Autopilot supports the new param union message type. - MAV_PROTOCOL_CAPABILITY_PARAM_UNION MAV_PROTOCOL_CAPABILITY = 16 + // Reserved for future use. + MAV_PROTOCOL_CAPABILITY_RESERVED1 MAV_PROTOCOL_CAPABILITY = 16 // Autopilot supports the new FILE_TRANSFER_PROTOCOL message type. MAV_PROTOCOL_CAPABILITY_FTP MAV_PROTOCOL_CAPABILITY = 32 // Autopilot supports commanding attitude offboard. @@ -42,8 +44,8 @@ const ( MAV_PROTOCOL_CAPABILITY_MISSION_FENCE MAV_PROTOCOL_CAPABILITY = 16384 // Autopilot supports mission rally point protocol. MAV_PROTOCOL_CAPABILITY_MISSION_RALLY MAV_PROTOCOL_CAPABILITY = 32768 - // Autopilot supports the flight information protocol. - MAV_PROTOCOL_CAPABILITY_FLIGHT_INFORMATION MAV_PROTOCOL_CAPABILITY = 65536 + // Reserved for future use. + MAV_PROTOCOL_CAPABILITY_RESERVED2 MAV_PROTOCOL_CAPABILITY = 65536 ) var labels_MAV_PROTOCOL_CAPABILITY = map[MAV_PROTOCOL_CAPABILITY]string{} diff --git a/pkg/dialects/pythonarraytest/msg_component_information.go b/pkg/dialects/pythonarraytest/msg_component_information.go index 433cde604..414575358 100644 --- a/pkg/dialects/pythonarraytest/msg_component_information.go +++ b/pkg/dialects/pythonarraytest/msg_component_information.go @@ -6,13 +6,13 @@ package pythonarraytest type MessageComponentInformation struct { // Timestamp (time since system boot). TimeBootMs uint32 - // CRC32 of the TYPE_GENERAL file (can be used by a GCS for file caching). + // CRC32 of the TYPE_GENERAL file (can be used by a GCS for file caching). The general metadata file contains URLs to other files of different type according to COMP_METADATA_TYPE. GeneralMetadataFileCrc uint32 // Component definition URI for TYPE_GENERAL. This must be a MAVLink FTP URI and the file might be compressed with xz. GeneralMetadataUri string `mavlen:"100"` // CRC32 of the TYPE_PERIPHERALS file (can be used by a GCS for file caching). PeripheralsMetadataFileCrc uint32 - // (Optional) Component definition URI for TYPE_PERIPHERALS. This must be a MAVLink FTP URI and the file might be compressed with xz. + // (Optional) Component definition URI for TYPE_PERIPHERALS. This must be a MAVLink FTP URI and the file might be compressed with xz. Peripherals are listed as a separate URL and not included in the general metadata file because it will likely be generated at runtime while the general (and other referenced files) might be generated at compile time. PeripheralsMetadataUri string `mavlen:"100"` } diff --git a/pkg/dialects/pythonarraytest/msg_flight_information.go b/pkg/dialects/pythonarraytest/msg_flight_information.go index 906013a56..149c7e229 100644 --- a/pkg/dialects/pythonarraytest/msg_flight_information.go +++ b/pkg/dialects/pythonarraytest/msg_flight_information.go @@ -3,6 +3,7 @@ package pythonarraytest // Information about flight since last arming. +// This can be requested using MAV_CMD_REQUEST_MESSAGE. type MessageFlightInformation struct { // Timestamp (time since system boot). TimeBootMs uint32 diff --git a/pkg/dialects/standard/enum_mav_protocol_capability.go b/pkg/dialects/standard/enum_mav_protocol_capability.go index 9d3de6298..12155e74a 100644 --- a/pkg/dialects/standard/enum_mav_protocol_capability.go +++ b/pkg/dialects/standard/enum_mav_protocol_capability.go @@ -10,16 +10,18 @@ import ( type MAV_PROTOCOL_CAPABILITY int const ( - // Autopilot supports MISSION float message type. + // Autopilot supports the MISSION_ITEM float message type. + // Note that MISSION_ITEM is deprecated, and autopilots should use MISSION_INT instead. MAV_PROTOCOL_CAPABILITY_MISSION_FLOAT MAV_PROTOCOL_CAPABILITY = 1 // Autopilot supports the new param float message type. MAV_PROTOCOL_CAPABILITY_PARAM_FLOAT MAV_PROTOCOL_CAPABILITY = 2 // Autopilot supports MISSION_ITEM_INT scaled integer message type. + // Note that this flag must always be set if missions are supported, because missions must always use MISSION_ITEM_INT (rather than MISSION_ITEM, which is deprecated). MAV_PROTOCOL_CAPABILITY_MISSION_INT MAV_PROTOCOL_CAPABILITY = 4 // Autopilot supports COMMAND_INT scaled integer message type. MAV_PROTOCOL_CAPABILITY_COMMAND_INT MAV_PROTOCOL_CAPABILITY = 8 - // Autopilot supports the new param union message type. - MAV_PROTOCOL_CAPABILITY_PARAM_UNION MAV_PROTOCOL_CAPABILITY = 16 + // Reserved for future use. + MAV_PROTOCOL_CAPABILITY_RESERVED1 MAV_PROTOCOL_CAPABILITY = 16 // Autopilot supports the new FILE_TRANSFER_PROTOCOL message type. MAV_PROTOCOL_CAPABILITY_FTP MAV_PROTOCOL_CAPABILITY = 32 // Autopilot supports commanding attitude offboard. @@ -42,8 +44,8 @@ const ( MAV_PROTOCOL_CAPABILITY_MISSION_FENCE MAV_PROTOCOL_CAPABILITY = 16384 // Autopilot supports mission rally point protocol. MAV_PROTOCOL_CAPABILITY_MISSION_RALLY MAV_PROTOCOL_CAPABILITY = 32768 - // Autopilot supports the flight information protocol. - MAV_PROTOCOL_CAPABILITY_FLIGHT_INFORMATION MAV_PROTOCOL_CAPABILITY = 65536 + // Reserved for future use. + MAV_PROTOCOL_CAPABILITY_RESERVED2 MAV_PROTOCOL_CAPABILITY = 65536 ) var labels_MAV_PROTOCOL_CAPABILITY = map[MAV_PROTOCOL_CAPABILITY]string{} diff --git a/pkg/dialects/standard/msg_component_information.go b/pkg/dialects/standard/msg_component_information.go index 365e884f0..505e5a83c 100644 --- a/pkg/dialects/standard/msg_component_information.go +++ b/pkg/dialects/standard/msg_component_information.go @@ -6,13 +6,13 @@ package standard type MessageComponentInformation struct { // Timestamp (time since system boot). TimeBootMs uint32 - // CRC32 of the TYPE_GENERAL file (can be used by a GCS for file caching). + // CRC32 of the TYPE_GENERAL file (can be used by a GCS for file caching). The general metadata file contains URLs to other files of different type according to COMP_METADATA_TYPE. GeneralMetadataFileCrc uint32 // Component definition URI for TYPE_GENERAL. This must be a MAVLink FTP URI and the file might be compressed with xz. GeneralMetadataUri string `mavlen:"100"` // CRC32 of the TYPE_PERIPHERALS file (can be used by a GCS for file caching). PeripheralsMetadataFileCrc uint32 - // (Optional) Component definition URI for TYPE_PERIPHERALS. This must be a MAVLink FTP URI and the file might be compressed with xz. + // (Optional) Component definition URI for TYPE_PERIPHERALS. This must be a MAVLink FTP URI and the file might be compressed with xz. Peripherals are listed as a separate URL and not included in the general metadata file because it will likely be generated at runtime while the general (and other referenced files) might be generated at compile time. PeripheralsMetadataUri string `mavlen:"100"` } diff --git a/pkg/dialects/standard/msg_flight_information.go b/pkg/dialects/standard/msg_flight_information.go index 64a1fb7dc..ec62ffe1e 100644 --- a/pkg/dialects/standard/msg_flight_information.go +++ b/pkg/dialects/standard/msg_flight_information.go @@ -3,6 +3,7 @@ package standard // Information about flight since last arming. +// This can be requested using MAV_CMD_REQUEST_MESSAGE. type MessageFlightInformation struct { // Timestamp (time since system boot). TimeBootMs uint32 diff --git a/pkg/dialects/storm32/dialect.go b/pkg/dialects/storm32/dialect.go new file mode 100644 index 000000000..d762c530e --- /dev/null +++ b/pkg/dialects/storm32/dialect.go @@ -0,0 +1,319 @@ +//autogenerated:yes +// Package storm32 contains the storm32 dialect. +package storm32 + +import ( + "github.com/aler9/gomavlib/pkg/dialect" + "github.com/aler9/gomavlib/pkg/msg" +) + +// Dialect contains the dialect definition. +var Dialect = dial + +// dial is not exposed directly in order not to display it in godoc. +var dial = &dialect.Dialect{ + Version: 1, + Messages: []msg.Message{ + // minimal.xml + &MessageHeartbeat{}, + &MessageProtocolVersion{}, + // common.xml + &MessageSysStatus{}, + &MessageSystemTime{}, + &MessagePing{}, + &MessageChangeOperatorControl{}, + &MessageChangeOperatorControlAck{}, + &MessageAuthKey{}, + &MessageLinkNodeStatus{}, + &MessageSetMode{}, + &MessageParamRequestRead{}, + &MessageParamRequestList{}, + &MessageParamValue{}, + &MessageParamSet{}, + &MessageGpsRawInt{}, + &MessageGpsStatus{}, + &MessageScaledImu{}, + &MessageRawImu{}, + &MessageRawPressure{}, + &MessageScaledPressure{}, + &MessageAttitude{}, + &MessageAttitudeQuaternion{}, + &MessageLocalPositionNed{}, + &MessageGlobalPositionInt{}, + &MessageRcChannelsScaled{}, + &MessageRcChannelsRaw{}, + &MessageServoOutputRaw{}, + &MessageMissionRequestPartialList{}, + &MessageMissionWritePartialList{}, + &MessageMissionItem{}, + &MessageMissionRequest{}, + &MessageMissionSetCurrent{}, + &MessageMissionCurrent{}, + &MessageMissionRequestList{}, + &MessageMissionCount{}, + &MessageMissionClearAll{}, + &MessageMissionItemReached{}, + &MessageMissionAck{}, + &MessageSetGpsGlobalOrigin{}, + &MessageGpsGlobalOrigin{}, + &MessageParamMapRc{}, + &MessageMissionRequestInt{}, + &MessageSafetySetAllowedArea{}, + &MessageSafetyAllowedArea{}, + &MessageAttitudeQuaternionCov{}, + &MessageNavControllerOutput{}, + &MessageGlobalPositionIntCov{}, + &MessageLocalPositionNedCov{}, + &MessageRcChannels{}, + &MessageRequestDataStream{}, + &MessageDataStream{}, + &MessageManualControl{}, + &MessageRcChannelsOverride{}, + &MessageMissionItemInt{}, + &MessageVfrHud{}, + &MessageCommandInt{}, + &MessageCommandLong{}, + &MessageCommandAck{}, + &MessageCommandCancel{}, + &MessageManualSetpoint{}, + &MessageSetAttitudeTarget{}, + &MessageAttitudeTarget{}, + &MessageSetPositionTargetLocalNed{}, + &MessagePositionTargetLocalNed{}, + &MessageSetPositionTargetGlobalInt{}, + &MessagePositionTargetGlobalInt{}, + &MessageLocalPositionNedSystemGlobalOffset{}, + &MessageHilState{}, + &MessageHilControls{}, + &MessageHilRcInputsRaw{}, + &MessageHilActuatorControls{}, + &MessageOpticalFlow{}, + &MessageGlobalVisionPositionEstimate{}, + &MessageVisionPositionEstimate{}, + &MessageVisionSpeedEstimate{}, + &MessageViconPositionEstimate{}, + &MessageHighresImu{}, + &MessageOpticalFlowRad{}, + &MessageHilSensor{}, + &MessageSimState{}, + &MessageRadioStatus{}, + &MessageFileTransferProtocol{}, + &MessageTimesync{}, + &MessageCameraTrigger{}, + &MessageHilGps{}, + &MessageHilOpticalFlow{}, + &MessageHilStateQuaternion{}, + &MessageScaledImu2{}, + &MessageLogRequestList{}, + &MessageLogEntry{}, + &MessageLogRequestData{}, + &MessageLogData{}, + &MessageLogErase{}, + &MessageLogRequestEnd{}, + &MessageGpsInjectData{}, + &MessageGps2Raw{}, + &MessagePowerStatus{}, + &MessageSerialControl{}, + &MessageGpsRtk{}, + &MessageGps2Rtk{}, + &MessageScaledImu3{}, + &MessageDataTransmissionHandshake{}, + &MessageEncapsulatedData{}, + &MessageDistanceSensor{}, + &MessageTerrainRequest{}, + &MessageTerrainData{}, + &MessageTerrainCheck{}, + &MessageTerrainReport{}, + &MessageScaledPressure2{}, + &MessageAttPosMocap{}, + &MessageSetActuatorControlTarget{}, + &MessageActuatorControlTarget{}, + &MessageAltitude{}, + &MessageResourceRequest{}, + &MessageScaledPressure3{}, + &MessageFollowTarget{}, + &MessageControlSystemState{}, + &MessageBatteryStatus{}, + &MessageAutopilotVersion{}, + &MessageLandingTarget{}, + &MessageFenceStatus{}, + &MessageMagCalReport{}, + &MessageEfiStatus{}, + &MessageEstimatorStatus{}, + &MessageWindCov{}, + &MessageGpsInput{}, + &MessageGpsRtcmData{}, + &MessageHighLatency{}, + &MessageHighLatency2{}, + &MessageVibration{}, + &MessageHomePosition{}, + &MessageSetHomePosition{}, + &MessageMessageInterval{}, + &MessageExtendedSysState{}, + &MessageAdsbVehicle{}, + &MessageCollision{}, + &MessageV2Extension{}, + &MessageMemoryVect{}, + &MessageDebugVect{}, + &MessageNamedValueFloat{}, + &MessageNamedValueInt{}, + &MessageStatustext{}, + &MessageDebug{}, + &MessageSetupSigning{}, + &MessageButtonChange{}, + &MessagePlayTune{}, + &MessageCameraInformation{}, + &MessageCameraSettings{}, + &MessageStorageInformation{}, + &MessageCameraCaptureStatus{}, + &MessageCameraImageCaptured{}, + &MessageFlightInformation{}, + &MessageMountOrientation{}, + &MessageLoggingData{}, + &MessageLoggingDataAcked{}, + &MessageLoggingAck{}, + &MessageVideoStreamInformation{}, + &MessageVideoStreamStatus{}, + &MessageCameraFovStatus{}, + &MessageCameraTrackingImageStatus{}, + &MessageCameraTrackingGeoStatus{}, + &MessageGimbalManagerInformation{}, + &MessageGimbalManagerStatus{}, + &MessageGimbalManagerSetAttitude{}, + &MessageGimbalDeviceInformation{}, + &MessageGimbalDeviceSetAttitude{}, + &MessageGimbalDeviceAttitudeStatus{}, + &MessageAutopilotStateForGimbalDevice{}, + &MessageGimbalManagerSetPitchyaw{}, + &MessageGimbalManagerSetManualControl{}, + &MessageEscInfo{}, + &MessageEscStatus{}, + &MessageWifiConfigAp{}, + &MessageAisVessel{}, + &MessageUavcanNodeStatus{}, + &MessageUavcanNodeInfo{}, + &MessageParamExtRequestRead{}, + &MessageParamExtRequestList{}, + &MessageParamExtValue{}, + &MessageParamExtSet{}, + &MessageParamExtAck{}, + &MessageObstacleDistance{}, + &MessageOdometry{}, + &MessageTrajectoryRepresentationWaypoints{}, + &MessageTrajectoryRepresentationBezier{}, + &MessageCellularStatus{}, + &MessageIsbdLinkStatus{}, + &MessageCellularConfig{}, + &MessageRawRpm{}, + &MessageUtmGlobalPosition{}, + &MessageDebugFloatArray{}, + &MessageOrbitExecutionStatus{}, + &MessageSmartBatteryInfo{}, + &MessageGeneratorStatus{}, + &MessageActuatorOutputStatus{}, + &MessageTimeEstimateToTarget{}, + &MessageTunnel{}, + &MessageOnboardComputerStatus{}, + &MessageComponentInformation{}, + &MessagePlayTuneV2{}, + &MessageSupportedTunes{}, + &MessageEvent{}, + &MessageCurrentEventSequence{}, + &MessageRequestEvent{}, + &MessageResponseEventError{}, + &MessageWheelDistance{}, + &MessageWinchStatus{}, + &MessageOpenDroneIdBasicId{}, + &MessageOpenDroneIdLocation{}, + &MessageOpenDroneIdAuthentication{}, + &MessageOpenDroneIdSelfId{}, + &MessageOpenDroneIdSystem{}, + &MessageOpenDroneIdOperatorId{}, + &MessageOpenDroneIdMessagePack{}, + &MessageHygrometerSensor{}, + // uAvionix.xml + &MessageUavionixAdsbOutCfg{}, + &MessageUavionixAdsbOutDynamic{}, + &MessageUavionixAdsbTransceiverHealthReport{}, + // icarous.xml + &MessageIcarousHeartbeat{}, + &MessageIcarousKinematicBands{}, + // ardupilotmega.xml + &MessageSensorOffsets{}, + &MessageSetMagOffsets{}, + &MessageMeminfo{}, + &MessageApAdc{}, + &MessageDigicamConfigure{}, + &MessageDigicamControl{}, + &MessageMountConfigure{}, + &MessageMountControl{}, + &MessageMountStatus{}, + &MessageFencePoint{}, + &MessageFenceFetchPoint{}, + &MessageAhrs{}, + &MessageSimstate{}, + &MessageHwstatus{}, + &MessageRadio{}, + &MessageLimitsStatus{}, + &MessageWind{}, + &MessageData16{}, + &MessageData32{}, + &MessageData64{}, + &MessageData96{}, + &MessageRangefinder{}, + &MessageAirspeedAutocal{}, + &MessageRallyPoint{}, + &MessageRallyFetchPoint{}, + &MessageCompassmotStatus{}, + &MessageAhrs2{}, + &MessageCameraStatus{}, + &MessageCameraFeedback{}, + &MessageBattery2{}, + &MessageAhrs3{}, + &MessageAutopilotVersionRequest{}, + &MessageRemoteLogDataBlock{}, + &MessageRemoteLogBlockStatus{}, + &MessageLedControl{}, + &MessageMagCalProgress{}, + &MessageEkfStatusReport{}, + &MessagePidTuning{}, + &MessageDeepstall{}, + &MessageGimbalReport{}, + &MessageGimbalControl{}, + &MessageGimbalTorqueCmdReport{}, + &MessageGoproHeartbeat{}, + &MessageGoproGetRequest{}, + &MessageGoproGetResponse{}, + &MessageGoproSetRequest{}, + &MessageGoproSetResponse{}, + &MessageRpm{}, + &MessageDeviceOpRead{}, + &MessageDeviceOpReadReply{}, + &MessageDeviceOpWrite{}, + &MessageDeviceOpWriteReply{}, + &MessageAdapTuning{}, + &MessageVisionPositionDelta{}, + &MessageAoaSsa{}, + &MessageEscTelemetry_1To_4{}, + &MessageEscTelemetry_5To_8{}, + &MessageEscTelemetry_9To_12{}, + &MessageOsdParamConfig{}, + &MessageOsdParamConfigReply{}, + &MessageOsdParamShowConfig{}, + &MessageOsdParamShowConfigReply{}, + &MessageObstacleDistance_3d{}, + &MessageWaterDepth{}, + &MessageMcuStatus{}, + // storm32.xml + &MessageStorm32GimbalDeviceStatus{}, + &MessageStorm32GimbalDeviceControl{}, + &MessageStorm32GimbalManagerInformation{}, + &MessageStorm32GimbalManagerStatus{}, + &MessageStorm32GimbalManagerControl{}, + &MessageStorm32GimbalManagerControlPitchyaw{}, + &MessageStorm32GimbalManagerCorrectRoll{}, + &MessageStorm32GimbalManagerProfile{}, + &MessageQshotStatus{}, + &MessageComponentPrearmStatus{}, + }, +} diff --git a/pkg/dialects/storm32/enum_accelcal_vehicle_pos.go b/pkg/dialects/storm32/enum_accelcal_vehicle_pos.go new file mode 100644 index 000000000..dfa4fd92b --- /dev/null +++ b/pkg/dialects/storm32/enum_accelcal_vehicle_pos.go @@ -0,0 +1,49 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package storm32 + +import ( + "errors" +) + +type ACCELCAL_VEHICLE_POS int + +const ( + ACCELCAL_VEHICLE_POS_LEVEL ACCELCAL_VEHICLE_POS = 1 + ACCELCAL_VEHICLE_POS_LEFT ACCELCAL_VEHICLE_POS = 2 + ACCELCAL_VEHICLE_POS_RIGHT ACCELCAL_VEHICLE_POS = 3 + ACCELCAL_VEHICLE_POS_NOSEDOWN ACCELCAL_VEHICLE_POS = 4 + ACCELCAL_VEHICLE_POS_NOSEUP ACCELCAL_VEHICLE_POS = 5 + ACCELCAL_VEHICLE_POS_BACK ACCELCAL_VEHICLE_POS = 6 + ACCELCAL_VEHICLE_POS_SUCCESS ACCELCAL_VEHICLE_POS = 16777215 + ACCELCAL_VEHICLE_POS_FAILED ACCELCAL_VEHICLE_POS = 16777216 +) + +var labels_ACCELCAL_VEHICLE_POS = map[ACCELCAL_VEHICLE_POS]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e ACCELCAL_VEHICLE_POS) MarshalText() ([]byte, error) { + if l, ok := labels_ACCELCAL_VEHICLE_POS[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_ACCELCAL_VEHICLE_POS = map[string]ACCELCAL_VEHICLE_POS{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *ACCELCAL_VEHICLE_POS) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_ACCELCAL_VEHICLE_POS[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e ACCELCAL_VEHICLE_POS) String() string { + if l, ok := labels_ACCELCAL_VEHICLE_POS[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/storm32/enum_actuator_configuration.go b/pkg/dialects/storm32/enum_actuator_configuration.go new file mode 100644 index 000000000..f83656b84 --- /dev/null +++ b/pkg/dialects/storm32/enum_actuator_configuration.go @@ -0,0 +1,54 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package storm32 + +import ( + "errors" +) + +// Actuator configuration, used to change a setting on an actuator. Component information metadata can be used to know which outputs support which commands. +type ACTUATOR_CONFIGURATION int + +const ( + // Do nothing. + ACTUATOR_CONFIGURATION_NONE ACTUATOR_CONFIGURATION = 0 + // Command the actuator to beep now. + ACTUATOR_CONFIGURATION_BEEP ACTUATOR_CONFIGURATION = 1 + // Permanently set the actuator (ESC) to 3D mode (reversible thrust). + ACTUATOR_CONFIGURATION_3D_MODE_ON ACTUATOR_CONFIGURATION = 2 + // Permanently set the actuator (ESC) to non 3D mode (non-reversible thrust). + ACTUATOR_CONFIGURATION_3D_MODE_OFF ACTUATOR_CONFIGURATION = 3 + // Permanently set the actuator (ESC) to spin direction 1 (which can be clockwise or counter-clockwise). + ACTUATOR_CONFIGURATION_SPIN_DIRECTION1 ACTUATOR_CONFIGURATION = 4 + // Permanently set the actuator (ESC) to spin direction 2 (opposite of direction 1). + ACTUATOR_CONFIGURATION_SPIN_DIRECTION2 ACTUATOR_CONFIGURATION = 5 +) + +var labels_ACTUATOR_CONFIGURATION = map[ACTUATOR_CONFIGURATION]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e ACTUATOR_CONFIGURATION) MarshalText() ([]byte, error) { + if l, ok := labels_ACTUATOR_CONFIGURATION[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_ACTUATOR_CONFIGURATION = map[string]ACTUATOR_CONFIGURATION{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *ACTUATOR_CONFIGURATION) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_ACTUATOR_CONFIGURATION[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e ACTUATOR_CONFIGURATION) String() string { + if l, ok := labels_ACTUATOR_CONFIGURATION[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/storm32/enum_actuator_output_function.go b/pkg/dialects/storm32/enum_actuator_output_function.go new file mode 100644 index 000000000..2c0cd0b2a --- /dev/null +++ b/pkg/dialects/storm32/enum_actuator_output_function.go @@ -0,0 +1,108 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package storm32 + +import ( + "errors" +) + +// Actuator output function. Values greater or equal to 1000 are autopilot-specific. +type ACTUATOR_OUTPUT_FUNCTION int + +const ( + // No function (disabled). + ACTUATOR_OUTPUT_FUNCTION_NONE ACTUATOR_OUTPUT_FUNCTION = 0 + // Motor 1 + ACTUATOR_OUTPUT_FUNCTION_MOTOR1 ACTUATOR_OUTPUT_FUNCTION = 1 + // Motor 2 + ACTUATOR_OUTPUT_FUNCTION_MOTOR2 ACTUATOR_OUTPUT_FUNCTION = 2 + // Motor 3 + ACTUATOR_OUTPUT_FUNCTION_MOTOR3 ACTUATOR_OUTPUT_FUNCTION = 3 + // Motor 4 + ACTUATOR_OUTPUT_FUNCTION_MOTOR4 ACTUATOR_OUTPUT_FUNCTION = 4 + // Motor 5 + ACTUATOR_OUTPUT_FUNCTION_MOTOR5 ACTUATOR_OUTPUT_FUNCTION = 5 + // Motor 6 + ACTUATOR_OUTPUT_FUNCTION_MOTOR6 ACTUATOR_OUTPUT_FUNCTION = 6 + // Motor 7 + ACTUATOR_OUTPUT_FUNCTION_MOTOR7 ACTUATOR_OUTPUT_FUNCTION = 7 + // Motor 8 + ACTUATOR_OUTPUT_FUNCTION_MOTOR8 ACTUATOR_OUTPUT_FUNCTION = 8 + // Motor 9 + ACTUATOR_OUTPUT_FUNCTION_MOTOR9 ACTUATOR_OUTPUT_FUNCTION = 9 + // Motor 10 + ACTUATOR_OUTPUT_FUNCTION_MOTOR10 ACTUATOR_OUTPUT_FUNCTION = 10 + // Motor 11 + ACTUATOR_OUTPUT_FUNCTION_MOTOR11 ACTUATOR_OUTPUT_FUNCTION = 11 + // Motor 12 + ACTUATOR_OUTPUT_FUNCTION_MOTOR12 ACTUATOR_OUTPUT_FUNCTION = 12 + // Motor 13 + ACTUATOR_OUTPUT_FUNCTION_MOTOR13 ACTUATOR_OUTPUT_FUNCTION = 13 + // Motor 14 + ACTUATOR_OUTPUT_FUNCTION_MOTOR14 ACTUATOR_OUTPUT_FUNCTION = 14 + // Motor 15 + ACTUATOR_OUTPUT_FUNCTION_MOTOR15 ACTUATOR_OUTPUT_FUNCTION = 15 + // Motor 16 + ACTUATOR_OUTPUT_FUNCTION_MOTOR16 ACTUATOR_OUTPUT_FUNCTION = 16 + // Servo 1 + ACTUATOR_OUTPUT_FUNCTION_SERVO1 ACTUATOR_OUTPUT_FUNCTION = 33 + // Servo 2 + ACTUATOR_OUTPUT_FUNCTION_SERVO2 ACTUATOR_OUTPUT_FUNCTION = 34 + // Servo 3 + ACTUATOR_OUTPUT_FUNCTION_SERVO3 ACTUATOR_OUTPUT_FUNCTION = 35 + // Servo 4 + ACTUATOR_OUTPUT_FUNCTION_SERVO4 ACTUATOR_OUTPUT_FUNCTION = 36 + // Servo 5 + ACTUATOR_OUTPUT_FUNCTION_SERVO5 ACTUATOR_OUTPUT_FUNCTION = 37 + // Servo 6 + ACTUATOR_OUTPUT_FUNCTION_SERVO6 ACTUATOR_OUTPUT_FUNCTION = 38 + // Servo 7 + ACTUATOR_OUTPUT_FUNCTION_SERVO7 ACTUATOR_OUTPUT_FUNCTION = 39 + // Servo 8 + ACTUATOR_OUTPUT_FUNCTION_SERVO8 ACTUATOR_OUTPUT_FUNCTION = 40 + // Servo 9 + ACTUATOR_OUTPUT_FUNCTION_SERVO9 ACTUATOR_OUTPUT_FUNCTION = 41 + // Servo 10 + ACTUATOR_OUTPUT_FUNCTION_SERVO10 ACTUATOR_OUTPUT_FUNCTION = 42 + // Servo 11 + ACTUATOR_OUTPUT_FUNCTION_SERVO11 ACTUATOR_OUTPUT_FUNCTION = 43 + // Servo 12 + ACTUATOR_OUTPUT_FUNCTION_SERVO12 ACTUATOR_OUTPUT_FUNCTION = 44 + // Servo 13 + ACTUATOR_OUTPUT_FUNCTION_SERVO13 ACTUATOR_OUTPUT_FUNCTION = 45 + // Servo 14 + ACTUATOR_OUTPUT_FUNCTION_SERVO14 ACTUATOR_OUTPUT_FUNCTION = 46 + // Servo 15 + ACTUATOR_OUTPUT_FUNCTION_SERVO15 ACTUATOR_OUTPUT_FUNCTION = 47 + // Servo 16 + ACTUATOR_OUTPUT_FUNCTION_SERVO16 ACTUATOR_OUTPUT_FUNCTION = 48 +) + +var labels_ACTUATOR_OUTPUT_FUNCTION = map[ACTUATOR_OUTPUT_FUNCTION]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e ACTUATOR_OUTPUT_FUNCTION) MarshalText() ([]byte, error) { + if l, ok := labels_ACTUATOR_OUTPUT_FUNCTION[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_ACTUATOR_OUTPUT_FUNCTION = map[string]ACTUATOR_OUTPUT_FUNCTION{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *ACTUATOR_OUTPUT_FUNCTION) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_ACTUATOR_OUTPUT_FUNCTION[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e ACTUATOR_OUTPUT_FUNCTION) String() string { + if l, ok := labels_ACTUATOR_OUTPUT_FUNCTION[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/storm32/enum_adsb_altitude_type.go b/pkg/dialects/storm32/enum_adsb_altitude_type.go new file mode 100644 index 000000000..18afc7693 --- /dev/null +++ b/pkg/dialects/storm32/enum_adsb_altitude_type.go @@ -0,0 +1,46 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package storm32 + +import ( + "errors" +) + +// Enumeration of the ADSB altimeter types +type ADSB_ALTITUDE_TYPE int + +const ( + // Altitude reported from a Baro source using QNH reference + ADSB_ALTITUDE_TYPE_PRESSURE_QNH ADSB_ALTITUDE_TYPE = 0 + // Altitude reported from a GNSS source + ADSB_ALTITUDE_TYPE_GEOMETRIC ADSB_ALTITUDE_TYPE = 1 +) + +var labels_ADSB_ALTITUDE_TYPE = map[ADSB_ALTITUDE_TYPE]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e ADSB_ALTITUDE_TYPE) MarshalText() ([]byte, error) { + if l, ok := labels_ADSB_ALTITUDE_TYPE[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_ADSB_ALTITUDE_TYPE = map[string]ADSB_ALTITUDE_TYPE{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *ADSB_ALTITUDE_TYPE) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_ADSB_ALTITUDE_TYPE[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e ADSB_ALTITUDE_TYPE) String() string { + if l, ok := labels_ADSB_ALTITUDE_TYPE[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/storm32/enum_adsb_emitter_type.go b/pkg/dialects/storm32/enum_adsb_emitter_type.go new file mode 100644 index 000000000..3f063f3fd --- /dev/null +++ b/pkg/dialects/storm32/enum_adsb_emitter_type.go @@ -0,0 +1,62 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package storm32 + +import ( + "errors" +) + +// ADSB classification for the type of vehicle emitting the transponder signal +type ADSB_EMITTER_TYPE int + +const ( + ADSB_EMITTER_TYPE_NO_INFO ADSB_EMITTER_TYPE = 0 + ADSB_EMITTER_TYPE_LIGHT ADSB_EMITTER_TYPE = 1 + ADSB_EMITTER_TYPE_SMALL ADSB_EMITTER_TYPE = 2 + ADSB_EMITTER_TYPE_LARGE ADSB_EMITTER_TYPE = 3 + ADSB_EMITTER_TYPE_HIGH_VORTEX_LARGE ADSB_EMITTER_TYPE = 4 + ADSB_EMITTER_TYPE_HEAVY ADSB_EMITTER_TYPE = 5 + ADSB_EMITTER_TYPE_HIGHLY_MANUV ADSB_EMITTER_TYPE = 6 + ADSB_EMITTER_TYPE_ROTOCRAFT ADSB_EMITTER_TYPE = 7 + ADSB_EMITTER_TYPE_UNASSIGNED ADSB_EMITTER_TYPE = 8 + ADSB_EMITTER_TYPE_GLIDER ADSB_EMITTER_TYPE = 9 + ADSB_EMITTER_TYPE_LIGHTER_AIR ADSB_EMITTER_TYPE = 10 + ADSB_EMITTER_TYPE_PARACHUTE ADSB_EMITTER_TYPE = 11 + ADSB_EMITTER_TYPE_ULTRA_LIGHT ADSB_EMITTER_TYPE = 12 + ADSB_EMITTER_TYPE_UNASSIGNED2 ADSB_EMITTER_TYPE = 13 + ADSB_EMITTER_TYPE_UAV ADSB_EMITTER_TYPE = 14 + ADSB_EMITTER_TYPE_SPACE ADSB_EMITTER_TYPE = 15 + ADSB_EMITTER_TYPE_UNASSGINED3 ADSB_EMITTER_TYPE = 16 + ADSB_EMITTER_TYPE_EMERGENCY_SURFACE ADSB_EMITTER_TYPE = 17 + ADSB_EMITTER_TYPE_SERVICE_SURFACE ADSB_EMITTER_TYPE = 18 + ADSB_EMITTER_TYPE_POINT_OBSTACLE ADSB_EMITTER_TYPE = 19 +) + +var labels_ADSB_EMITTER_TYPE = map[ADSB_EMITTER_TYPE]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e ADSB_EMITTER_TYPE) MarshalText() ([]byte, error) { + if l, ok := labels_ADSB_EMITTER_TYPE[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_ADSB_EMITTER_TYPE = map[string]ADSB_EMITTER_TYPE{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *ADSB_EMITTER_TYPE) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_ADSB_EMITTER_TYPE[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e ADSB_EMITTER_TYPE) String() string { + if l, ok := labels_ADSB_EMITTER_TYPE[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/storm32/enum_adsb_flags.go b/pkg/dialects/storm32/enum_adsb_flags.go new file mode 100644 index 000000000..77a51b36c --- /dev/null +++ b/pkg/dialects/storm32/enum_adsb_flags.go @@ -0,0 +1,52 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package storm32 + +import ( + "errors" +) + +// These flags indicate status such as data validity of each data source. Set = data valid +type ADSB_FLAGS int + +const ( + ADSB_FLAGS_VALID_COORDS ADSB_FLAGS = 1 + ADSB_FLAGS_VALID_ALTITUDE ADSB_FLAGS = 2 + ADSB_FLAGS_VALID_HEADING ADSB_FLAGS = 4 + ADSB_FLAGS_VALID_VELOCITY ADSB_FLAGS = 8 + ADSB_FLAGS_VALID_CALLSIGN ADSB_FLAGS = 16 + ADSB_FLAGS_VALID_SQUAWK ADSB_FLAGS = 32 + ADSB_FLAGS_SIMULATED ADSB_FLAGS = 64 + ADSB_FLAGS_VERTICAL_VELOCITY_VALID ADSB_FLAGS = 128 + ADSB_FLAGS_BARO_VALID ADSB_FLAGS = 256 + ADSB_FLAGS_SOURCE_UAT ADSB_FLAGS = 32768 +) + +var labels_ADSB_FLAGS = map[ADSB_FLAGS]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e ADSB_FLAGS) MarshalText() ([]byte, error) { + if l, ok := labels_ADSB_FLAGS[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_ADSB_FLAGS = map[string]ADSB_FLAGS{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *ADSB_FLAGS) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_ADSB_FLAGS[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e ADSB_FLAGS) String() string { + if l, ok := labels_ADSB_FLAGS[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/storm32/enum_ais_flags.go b/pkg/dialects/storm32/enum_ais_flags.go new file mode 100644 index 000000000..0b2566332 --- /dev/null +++ b/pkg/dialects/storm32/enum_ais_flags.go @@ -0,0 +1,62 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package storm32 + +import ( + "errors" +) + +// These flags are used in the AIS_VESSEL.fields bitmask to indicate validity of data in the other message fields. When set, the data is valid. +type AIS_FLAGS int + +const ( + // 1 = Position accuracy less than 10m, 0 = position accuracy greater than 10m. + AIS_FLAGS_POSITION_ACCURACY AIS_FLAGS = 1 + AIS_FLAGS_VALID_COG AIS_FLAGS = 2 + AIS_FLAGS_VALID_VELOCITY AIS_FLAGS = 4 + // 1 = Velocity over 52.5765m/s (102.2 knots) + AIS_FLAGS_HIGH_VELOCITY AIS_FLAGS = 8 + AIS_FLAGS_VALID_TURN_RATE AIS_FLAGS = 16 + // Only the sign of the returned turn rate value is valid, either greater than 5deg/30s or less than -5deg/30s + AIS_FLAGS_TURN_RATE_SIGN_ONLY AIS_FLAGS = 32 + AIS_FLAGS_VALID_DIMENSIONS AIS_FLAGS = 64 + // Distance to bow is larger than 511m + AIS_FLAGS_LARGE_BOW_DIMENSION AIS_FLAGS = 128 + // Distance to stern is larger than 511m + AIS_FLAGS_LARGE_STERN_DIMENSION AIS_FLAGS = 256 + // Distance to port side is larger than 63m + AIS_FLAGS_LARGE_PORT_DIMENSION AIS_FLAGS = 512 + // Distance to starboard side is larger than 63m + AIS_FLAGS_LARGE_STARBOARD_DIMENSION AIS_FLAGS = 1024 + AIS_FLAGS_VALID_CALLSIGN AIS_FLAGS = 2048 + AIS_FLAGS_VALID_NAME AIS_FLAGS = 4096 +) + +var labels_AIS_FLAGS = map[AIS_FLAGS]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e AIS_FLAGS) MarshalText() ([]byte, error) { + if l, ok := labels_AIS_FLAGS[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_AIS_FLAGS = map[string]AIS_FLAGS{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *AIS_FLAGS) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_AIS_FLAGS[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e AIS_FLAGS) String() string { + if l, ok := labels_AIS_FLAGS[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/storm32/enum_ais_nav_status.go b/pkg/dialects/storm32/enum_ais_nav_status.go new file mode 100644 index 000000000..e223be844 --- /dev/null +++ b/pkg/dialects/storm32/enum_ais_nav_status.go @@ -0,0 +1,61 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package storm32 + +import ( + "errors" +) + +// Navigational status of AIS vessel, enum duplicated from AIS standard, https://gpsd.gitlab.io/gpsd/AIVDM.html +type AIS_NAV_STATUS int + +const ( + // Under way using engine. + UNDER_WAY AIS_NAV_STATUS = 0 + AIS_NAV_ANCHORED AIS_NAV_STATUS = 1 + AIS_NAV_UN_COMMANDED AIS_NAV_STATUS = 2 + AIS_NAV_RESTRICTED_MANOEUVERABILITY AIS_NAV_STATUS = 3 + AIS_NAV_DRAUGHT_CONSTRAINED AIS_NAV_STATUS = 4 + AIS_NAV_MOORED AIS_NAV_STATUS = 5 + AIS_NAV_AGROUND AIS_NAV_STATUS = 6 + AIS_NAV_FISHING AIS_NAV_STATUS = 7 + AIS_NAV_SAILING AIS_NAV_STATUS = 8 + AIS_NAV_RESERVED_HSC AIS_NAV_STATUS = 9 + AIS_NAV_RESERVED_WIG AIS_NAV_STATUS = 10 + AIS_NAV_RESERVED_1 AIS_NAV_STATUS = 11 + AIS_NAV_RESERVED_2 AIS_NAV_STATUS = 12 + AIS_NAV_RESERVED_3 AIS_NAV_STATUS = 13 + // Search And Rescue Transponder. + AIS_NAV_AIS_SART AIS_NAV_STATUS = 14 + // Not available (default). + AIS_NAV_UNKNOWN AIS_NAV_STATUS = 15 +) + +var labels_AIS_NAV_STATUS = map[AIS_NAV_STATUS]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e AIS_NAV_STATUS) MarshalText() ([]byte, error) { + if l, ok := labels_AIS_NAV_STATUS[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_AIS_NAV_STATUS = map[string]AIS_NAV_STATUS{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *AIS_NAV_STATUS) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_AIS_NAV_STATUS[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e AIS_NAV_STATUS) String() string { + if l, ok := labels_AIS_NAV_STATUS[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/storm32/enum_ais_type.go b/pkg/dialects/storm32/enum_ais_type.go new file mode 100644 index 000000000..eb2d82455 --- /dev/null +++ b/pkg/dialects/storm32/enum_ais_type.go @@ -0,0 +1,150 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package storm32 + +import ( + "errors" +) + +// Type of AIS vessel, enum duplicated from AIS standard, https://gpsd.gitlab.io/gpsd/AIVDM.html +type AIS_TYPE int + +const ( + // Not available (default). + AIS_TYPE_UNKNOWN AIS_TYPE = 0 + AIS_TYPE_RESERVED_1 AIS_TYPE = 1 + AIS_TYPE_RESERVED_2 AIS_TYPE = 2 + AIS_TYPE_RESERVED_3 AIS_TYPE = 3 + AIS_TYPE_RESERVED_4 AIS_TYPE = 4 + AIS_TYPE_RESERVED_5 AIS_TYPE = 5 + AIS_TYPE_RESERVED_6 AIS_TYPE = 6 + AIS_TYPE_RESERVED_7 AIS_TYPE = 7 + AIS_TYPE_RESERVED_8 AIS_TYPE = 8 + AIS_TYPE_RESERVED_9 AIS_TYPE = 9 + AIS_TYPE_RESERVED_10 AIS_TYPE = 10 + AIS_TYPE_RESERVED_11 AIS_TYPE = 11 + AIS_TYPE_RESERVED_12 AIS_TYPE = 12 + AIS_TYPE_RESERVED_13 AIS_TYPE = 13 + AIS_TYPE_RESERVED_14 AIS_TYPE = 14 + AIS_TYPE_RESERVED_15 AIS_TYPE = 15 + AIS_TYPE_RESERVED_16 AIS_TYPE = 16 + AIS_TYPE_RESERVED_17 AIS_TYPE = 17 + AIS_TYPE_RESERVED_18 AIS_TYPE = 18 + AIS_TYPE_RESERVED_19 AIS_TYPE = 19 + // Wing In Ground effect. + AIS_TYPE_WIG AIS_TYPE = 20 + AIS_TYPE_WIG_HAZARDOUS_A AIS_TYPE = 21 + AIS_TYPE_WIG_HAZARDOUS_B AIS_TYPE = 22 + AIS_TYPE_WIG_HAZARDOUS_C AIS_TYPE = 23 + AIS_TYPE_WIG_HAZARDOUS_D AIS_TYPE = 24 + AIS_TYPE_WIG_RESERVED_1 AIS_TYPE = 25 + AIS_TYPE_WIG_RESERVED_2 AIS_TYPE = 26 + AIS_TYPE_WIG_RESERVED_3 AIS_TYPE = 27 + AIS_TYPE_WIG_RESERVED_4 AIS_TYPE = 28 + AIS_TYPE_WIG_RESERVED_5 AIS_TYPE = 29 + AIS_TYPE_FISHING AIS_TYPE = 30 + AIS_TYPE_TOWING AIS_TYPE = 31 + // Towing: length exceeds 200m or breadth exceeds 25m. + AIS_TYPE_TOWING_LARGE AIS_TYPE = 32 + // Dredging or other underwater ops. + AIS_TYPE_DREDGING AIS_TYPE = 33 + AIS_TYPE_DIVING AIS_TYPE = 34 + AIS_TYPE_MILITARY AIS_TYPE = 35 + AIS_TYPE_SAILING AIS_TYPE = 36 + AIS_TYPE_PLEASURE AIS_TYPE = 37 + AIS_TYPE_RESERVED_20 AIS_TYPE = 38 + AIS_TYPE_RESERVED_21 AIS_TYPE = 39 + // High Speed Craft. + AIS_TYPE_HSC AIS_TYPE = 40 + AIS_TYPE_HSC_HAZARDOUS_A AIS_TYPE = 41 + AIS_TYPE_HSC_HAZARDOUS_B AIS_TYPE = 42 + AIS_TYPE_HSC_HAZARDOUS_C AIS_TYPE = 43 + AIS_TYPE_HSC_HAZARDOUS_D AIS_TYPE = 44 + AIS_TYPE_HSC_RESERVED_1 AIS_TYPE = 45 + AIS_TYPE_HSC_RESERVED_2 AIS_TYPE = 46 + AIS_TYPE_HSC_RESERVED_3 AIS_TYPE = 47 + AIS_TYPE_HSC_RESERVED_4 AIS_TYPE = 48 + AIS_TYPE_HSC_UNKNOWN AIS_TYPE = 49 + AIS_TYPE_PILOT AIS_TYPE = 50 + // Search And Rescue vessel. + AIS_TYPE_SAR AIS_TYPE = 51 + AIS_TYPE_TUG AIS_TYPE = 52 + AIS_TYPE_PORT_TENDER AIS_TYPE = 53 + // Anti-pollution equipment. + AIS_TYPE_ANTI_POLLUTION AIS_TYPE = 54 + AIS_TYPE_LAW_ENFORCEMENT AIS_TYPE = 55 + AIS_TYPE_SPARE_LOCAL_1 AIS_TYPE = 56 + AIS_TYPE_SPARE_LOCAL_2 AIS_TYPE = 57 + AIS_TYPE_MEDICAL_TRANSPORT AIS_TYPE = 58 + // Noncombatant ship according to RR Resolution No. 18. + AIS_TYPE_NONECOMBATANT AIS_TYPE = 59 + AIS_TYPE_PASSENGER AIS_TYPE = 60 + AIS_TYPE_PASSENGER_HAZARDOUS_A AIS_TYPE = 61 + AIS_TYPE_PASSENGER_HAZARDOUS_B AIS_TYPE = 62 + AIS_TYPE_AIS_TYPE_PASSENGER_HAZARDOUS_C AIS_TYPE = 63 + AIS_TYPE_PASSENGER_HAZARDOUS_D AIS_TYPE = 64 + AIS_TYPE_PASSENGER_RESERVED_1 AIS_TYPE = 65 + AIS_TYPE_PASSENGER_RESERVED_2 AIS_TYPE = 66 + AIS_TYPE_PASSENGER_RESERVED_3 AIS_TYPE = 67 + AIS_TYPE_AIS_TYPE_PASSENGER_RESERVED_4 AIS_TYPE = 68 + AIS_TYPE_PASSENGER_UNKNOWN AIS_TYPE = 69 + AIS_TYPE_CARGO AIS_TYPE = 70 + AIS_TYPE_CARGO_HAZARDOUS_A AIS_TYPE = 71 + AIS_TYPE_CARGO_HAZARDOUS_B AIS_TYPE = 72 + AIS_TYPE_CARGO_HAZARDOUS_C AIS_TYPE = 73 + AIS_TYPE_CARGO_HAZARDOUS_D AIS_TYPE = 74 + AIS_TYPE_CARGO_RESERVED_1 AIS_TYPE = 75 + AIS_TYPE_CARGO_RESERVED_2 AIS_TYPE = 76 + AIS_TYPE_CARGO_RESERVED_3 AIS_TYPE = 77 + AIS_TYPE_CARGO_RESERVED_4 AIS_TYPE = 78 + AIS_TYPE_CARGO_UNKNOWN AIS_TYPE = 79 + AIS_TYPE_TANKER AIS_TYPE = 80 + AIS_TYPE_TANKER_HAZARDOUS_A AIS_TYPE = 81 + AIS_TYPE_TANKER_HAZARDOUS_B AIS_TYPE = 82 + AIS_TYPE_TANKER_HAZARDOUS_C AIS_TYPE = 83 + AIS_TYPE_TANKER_HAZARDOUS_D AIS_TYPE = 84 + AIS_TYPE_TANKER_RESERVED_1 AIS_TYPE = 85 + AIS_TYPE_TANKER_RESERVED_2 AIS_TYPE = 86 + AIS_TYPE_TANKER_RESERVED_3 AIS_TYPE = 87 + AIS_TYPE_TANKER_RESERVED_4 AIS_TYPE = 88 + AIS_TYPE_TANKER_UNKNOWN AIS_TYPE = 89 + AIS_TYPE_OTHER AIS_TYPE = 90 + AIS_TYPE_OTHER_HAZARDOUS_A AIS_TYPE = 91 + AIS_TYPE_OTHER_HAZARDOUS_B AIS_TYPE = 92 + AIS_TYPE_OTHER_HAZARDOUS_C AIS_TYPE = 93 + AIS_TYPE_OTHER_HAZARDOUS_D AIS_TYPE = 94 + AIS_TYPE_OTHER_RESERVED_1 AIS_TYPE = 95 + AIS_TYPE_OTHER_RESERVED_2 AIS_TYPE = 96 + AIS_TYPE_OTHER_RESERVED_3 AIS_TYPE = 97 + AIS_TYPE_OTHER_RESERVED_4 AIS_TYPE = 98 + AIS_TYPE_OTHER_UNKNOWN AIS_TYPE = 99 +) + +var labels_AIS_TYPE = map[AIS_TYPE]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e AIS_TYPE) MarshalText() ([]byte, error) { + if l, ok := labels_AIS_TYPE[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_AIS_TYPE = map[string]AIS_TYPE{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *AIS_TYPE) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_AIS_TYPE[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e AIS_TYPE) String() string { + if l, ok := labels_AIS_TYPE[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/storm32/enum_attitude_target_typemask.go b/pkg/dialects/storm32/enum_attitude_target_typemask.go new file mode 100644 index 000000000..cd7415a92 --- /dev/null +++ b/pkg/dialects/storm32/enum_attitude_target_typemask.go @@ -0,0 +1,54 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package storm32 + +import ( + "errors" +) + +// Bitmap to indicate which dimensions should be ignored by the vehicle: a value of 0b00000000 indicates that none of the setpoint dimensions should be ignored. +type ATTITUDE_TARGET_TYPEMASK int + +const ( + // Ignore body roll rate + ATTITUDE_TARGET_TYPEMASK_BODY_ROLL_RATE_IGNORE ATTITUDE_TARGET_TYPEMASK = 1 + // Ignore body pitch rate + ATTITUDE_TARGET_TYPEMASK_BODY_PITCH_RATE_IGNORE ATTITUDE_TARGET_TYPEMASK = 2 + // Ignore body yaw rate + ATTITUDE_TARGET_TYPEMASK_BODY_YAW_RATE_IGNORE ATTITUDE_TARGET_TYPEMASK = 4 + // Use 3D body thrust setpoint instead of throttle + ATTITUDE_TARGET_TYPEMASK_THRUST_BODY_SET ATTITUDE_TARGET_TYPEMASK = 32 + // Ignore throttle + ATTITUDE_TARGET_TYPEMASK_THROTTLE_IGNORE ATTITUDE_TARGET_TYPEMASK = 64 + // Ignore attitude + ATTITUDE_TARGET_TYPEMASK_ATTITUDE_IGNORE ATTITUDE_TARGET_TYPEMASK = 128 +) + +var labels_ATTITUDE_TARGET_TYPEMASK = map[ATTITUDE_TARGET_TYPEMASK]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e ATTITUDE_TARGET_TYPEMASK) MarshalText() ([]byte, error) { + if l, ok := labels_ATTITUDE_TARGET_TYPEMASK[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_ATTITUDE_TARGET_TYPEMASK = map[string]ATTITUDE_TARGET_TYPEMASK{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *ATTITUDE_TARGET_TYPEMASK) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_ATTITUDE_TARGET_TYPEMASK[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e ATTITUDE_TARGET_TYPEMASK) String() string { + if l, ok := labels_ATTITUDE_TARGET_TYPEMASK[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/storm32/enum_autotune_axis.go b/pkg/dialects/storm32/enum_autotune_axis.go new file mode 100644 index 000000000..c00ce661c --- /dev/null +++ b/pkg/dialects/storm32/enum_autotune_axis.go @@ -0,0 +1,50 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package storm32 + +import ( + "errors" +) + +// Enable axes that will be tuned via autotuning. Used in MAV_CMD_DO_AUTOTUNE_ENABLE. +type AUTOTUNE_AXIS int + +const ( + // Flight stack tunes axis according to its default settings. + AUTOTUNE_AXIS_DEFAULT AUTOTUNE_AXIS = 0 + // Autotune roll axis. + AUTOTUNE_AXIS_ROLL AUTOTUNE_AXIS = 1 + // Autotune pitch axis. + AUTOTUNE_AXIS_PITCH AUTOTUNE_AXIS = 2 + // Autotune yaw axis. + AUTOTUNE_AXIS_YAW AUTOTUNE_AXIS = 4 +) + +var labels_AUTOTUNE_AXIS = map[AUTOTUNE_AXIS]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e AUTOTUNE_AXIS) MarshalText() ([]byte, error) { + if l, ok := labels_AUTOTUNE_AXIS[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_AUTOTUNE_AXIS = map[string]AUTOTUNE_AXIS{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *AUTOTUNE_AXIS) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_AUTOTUNE_AXIS[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e AUTOTUNE_AXIS) String() string { + if l, ok := labels_AUTOTUNE_AXIS[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/storm32/enum_camera_cap_flags.go b/pkg/dialects/storm32/enum_camera_cap_flags.go new file mode 100644 index 000000000..5ad01d310 --- /dev/null +++ b/pkg/dialects/storm32/enum_camera_cap_flags.go @@ -0,0 +1,66 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package storm32 + +import ( + "errors" +) + +// Camera capability flags (Bitmap) +type CAMERA_CAP_FLAGS int + +const ( + // Camera is able to record video + CAMERA_CAP_FLAGS_CAPTURE_VIDEO CAMERA_CAP_FLAGS = 1 + // Camera is able to capture images + CAMERA_CAP_FLAGS_CAPTURE_IMAGE CAMERA_CAP_FLAGS = 2 + // Camera has separate Video and Image/Photo modes (MAV_CMD_SET_CAMERA_MODE) + CAMERA_CAP_FLAGS_HAS_MODES CAMERA_CAP_FLAGS = 4 + // Camera can capture images while in video mode + CAMERA_CAP_FLAGS_CAN_CAPTURE_IMAGE_IN_VIDEO_MODE CAMERA_CAP_FLAGS = 8 + // Camera can capture videos while in Photo/Image mode + CAMERA_CAP_FLAGS_CAN_CAPTURE_VIDEO_IN_IMAGE_MODE CAMERA_CAP_FLAGS = 16 + // Camera has image survey mode (MAV_CMD_SET_CAMERA_MODE) + CAMERA_CAP_FLAGS_HAS_IMAGE_SURVEY_MODE CAMERA_CAP_FLAGS = 32 + // Camera has basic zoom control (MAV_CMD_SET_CAMERA_ZOOM) + CAMERA_CAP_FLAGS_HAS_BASIC_ZOOM CAMERA_CAP_FLAGS = 64 + // Camera has basic focus control (MAV_CMD_SET_CAMERA_FOCUS) + CAMERA_CAP_FLAGS_HAS_BASIC_FOCUS CAMERA_CAP_FLAGS = 128 + // Camera has video streaming capabilities (request VIDEO_STREAM_INFORMATION with MAV_CMD_REQUEST_MESSAGE for video streaming info) + CAMERA_CAP_FLAGS_HAS_VIDEO_STREAM CAMERA_CAP_FLAGS = 256 + // Camera supports tracking of a point on the camera view. + CAMERA_CAP_FLAGS_HAS_TRACKING_POINT CAMERA_CAP_FLAGS = 512 + // Camera supports tracking of a selection rectangle on the camera view. + CAMERA_CAP_FLAGS_HAS_TRACKING_RECTANGLE CAMERA_CAP_FLAGS = 1024 + // Camera supports tracking geo status (CAMERA_TRACKING_GEO_STATUS). + CAMERA_CAP_FLAGS_HAS_TRACKING_GEO_STATUS CAMERA_CAP_FLAGS = 2048 +) + +var labels_CAMERA_CAP_FLAGS = map[CAMERA_CAP_FLAGS]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e CAMERA_CAP_FLAGS) MarshalText() ([]byte, error) { + if l, ok := labels_CAMERA_CAP_FLAGS[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_CAMERA_CAP_FLAGS = map[string]CAMERA_CAP_FLAGS{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *CAMERA_CAP_FLAGS) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_CAMERA_CAP_FLAGS[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e CAMERA_CAP_FLAGS) String() string { + if l, ok := labels_CAMERA_CAP_FLAGS[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/storm32/enum_camera_feedback_flags.go b/pkg/dialects/storm32/enum_camera_feedback_flags.go new file mode 100644 index 000000000..eebe4d7c4 --- /dev/null +++ b/pkg/dialects/storm32/enum_camera_feedback_flags.go @@ -0,0 +1,51 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package storm32 + +import ( + "errors" +) + +type CAMERA_FEEDBACK_FLAGS int + +const ( + // Shooting photos, not video. + CAMERA_FEEDBACK_PHOTO CAMERA_FEEDBACK_FLAGS = 0 + // Shooting video, not stills. + CAMERA_FEEDBACK_VIDEO CAMERA_FEEDBACK_FLAGS = 1 + // Unable to achieve requested exposure (e.g. shutter speed too low). + CAMERA_FEEDBACK_BADEXPOSURE CAMERA_FEEDBACK_FLAGS = 2 + // Closed loop feedback from camera, we know for sure it has successfully taken a picture. + CAMERA_FEEDBACK_CLOSEDLOOP CAMERA_FEEDBACK_FLAGS = 3 + // Open loop camera, an image trigger has been requested but we can't know for sure it has successfully taken a picture. + CAMERA_FEEDBACK_OPENLOOP CAMERA_FEEDBACK_FLAGS = 4 +) + +var labels_CAMERA_FEEDBACK_FLAGS = map[CAMERA_FEEDBACK_FLAGS]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e CAMERA_FEEDBACK_FLAGS) MarshalText() ([]byte, error) { + if l, ok := labels_CAMERA_FEEDBACK_FLAGS[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_CAMERA_FEEDBACK_FLAGS = map[string]CAMERA_FEEDBACK_FLAGS{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *CAMERA_FEEDBACK_FLAGS) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_CAMERA_FEEDBACK_FLAGS[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e CAMERA_FEEDBACK_FLAGS) String() string { + if l, ok := labels_CAMERA_FEEDBACK_FLAGS[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/storm32/enum_camera_mode.go b/pkg/dialects/storm32/enum_camera_mode.go new file mode 100644 index 000000000..b8b050236 --- /dev/null +++ b/pkg/dialects/storm32/enum_camera_mode.go @@ -0,0 +1,48 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package storm32 + +import ( + "errors" +) + +// Camera Modes. +type CAMERA_MODE int + +const ( + // Camera is in image/photo capture mode. + CAMERA_MODE_IMAGE CAMERA_MODE = 0 + // Camera is in video capture mode. + CAMERA_MODE_VIDEO CAMERA_MODE = 1 + // Camera is in image survey capture mode. It allows for camera controller to do specific settings for surveys. + CAMERA_MODE_IMAGE_SURVEY CAMERA_MODE = 2 +) + +var labels_CAMERA_MODE = map[CAMERA_MODE]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e CAMERA_MODE) MarshalText() ([]byte, error) { + if l, ok := labels_CAMERA_MODE[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_CAMERA_MODE = map[string]CAMERA_MODE{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *CAMERA_MODE) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_CAMERA_MODE[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e CAMERA_MODE) String() string { + if l, ok := labels_CAMERA_MODE[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/storm32/enum_camera_status_types.go b/pkg/dialects/storm32/enum_camera_status_types.go new file mode 100644 index 000000000..2c682662b --- /dev/null +++ b/pkg/dialects/storm32/enum_camera_status_types.go @@ -0,0 +1,55 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package storm32 + +import ( + "errors" +) + +type CAMERA_STATUS_TYPES int + +const ( + // Camera heartbeat, announce camera component ID at 1Hz. + CAMERA_STATUS_TYPE_HEARTBEAT CAMERA_STATUS_TYPES = 0 + // Camera image triggered. + CAMERA_STATUS_TYPE_TRIGGER CAMERA_STATUS_TYPES = 1 + // Camera connection lost. + CAMERA_STATUS_TYPE_DISCONNECT CAMERA_STATUS_TYPES = 2 + // Camera unknown error. + CAMERA_STATUS_TYPE_ERROR CAMERA_STATUS_TYPES = 3 + // Camera battery low. Parameter p1 shows reported voltage. + CAMERA_STATUS_TYPE_LOWBATT CAMERA_STATUS_TYPES = 4 + // Camera storage low. Parameter p1 shows reported shots remaining. + CAMERA_STATUS_TYPE_LOWSTORE CAMERA_STATUS_TYPES = 5 + // Camera storage low. Parameter p1 shows reported video minutes remaining. + CAMERA_STATUS_TYPE_LOWSTOREV CAMERA_STATUS_TYPES = 6 +) + +var labels_CAMERA_STATUS_TYPES = map[CAMERA_STATUS_TYPES]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e CAMERA_STATUS_TYPES) MarshalText() ([]byte, error) { + if l, ok := labels_CAMERA_STATUS_TYPES[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_CAMERA_STATUS_TYPES = map[string]CAMERA_STATUS_TYPES{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *CAMERA_STATUS_TYPES) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_CAMERA_STATUS_TYPES[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e CAMERA_STATUS_TYPES) String() string { + if l, ok := labels_CAMERA_STATUS_TYPES[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/storm32/enum_camera_tracking_mode.go b/pkg/dialects/storm32/enum_camera_tracking_mode.go new file mode 100644 index 000000000..3f46dcda8 --- /dev/null +++ b/pkg/dialects/storm32/enum_camera_tracking_mode.go @@ -0,0 +1,48 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package storm32 + +import ( + "errors" +) + +// Camera tracking modes +type CAMERA_TRACKING_MODE int + +const ( + // Not tracking + CAMERA_TRACKING_MODE_NONE CAMERA_TRACKING_MODE = 0 + // Target is a point + CAMERA_TRACKING_MODE_POINT CAMERA_TRACKING_MODE = 1 + // Target is a rectangle + CAMERA_TRACKING_MODE_RECTANGLE CAMERA_TRACKING_MODE = 2 +) + +var labels_CAMERA_TRACKING_MODE = map[CAMERA_TRACKING_MODE]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e CAMERA_TRACKING_MODE) MarshalText() ([]byte, error) { + if l, ok := labels_CAMERA_TRACKING_MODE[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_CAMERA_TRACKING_MODE = map[string]CAMERA_TRACKING_MODE{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *CAMERA_TRACKING_MODE) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_CAMERA_TRACKING_MODE[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e CAMERA_TRACKING_MODE) String() string { + if l, ok := labels_CAMERA_TRACKING_MODE[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/storm32/enum_camera_tracking_status_flags.go b/pkg/dialects/storm32/enum_camera_tracking_status_flags.go new file mode 100644 index 000000000..44be5efe1 --- /dev/null +++ b/pkg/dialects/storm32/enum_camera_tracking_status_flags.go @@ -0,0 +1,48 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package storm32 + +import ( + "errors" +) + +// Camera tracking status flags +type CAMERA_TRACKING_STATUS_FLAGS int + +const ( + // Camera is not tracking + CAMERA_TRACKING_STATUS_FLAGS_IDLE CAMERA_TRACKING_STATUS_FLAGS = 0 + // Camera is tracking + CAMERA_TRACKING_STATUS_FLAGS_ACTIVE CAMERA_TRACKING_STATUS_FLAGS = 1 + // Camera tracking in error state + CAMERA_TRACKING_STATUS_FLAGS_ERROR CAMERA_TRACKING_STATUS_FLAGS = 2 +) + +var labels_CAMERA_TRACKING_STATUS_FLAGS = map[CAMERA_TRACKING_STATUS_FLAGS]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e CAMERA_TRACKING_STATUS_FLAGS) MarshalText() ([]byte, error) { + if l, ok := labels_CAMERA_TRACKING_STATUS_FLAGS[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_CAMERA_TRACKING_STATUS_FLAGS = map[string]CAMERA_TRACKING_STATUS_FLAGS{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *CAMERA_TRACKING_STATUS_FLAGS) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_CAMERA_TRACKING_STATUS_FLAGS[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e CAMERA_TRACKING_STATUS_FLAGS) String() string { + if l, ok := labels_CAMERA_TRACKING_STATUS_FLAGS[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/storm32/enum_camera_tracking_target_data.go b/pkg/dialects/storm32/enum_camera_tracking_target_data.go new file mode 100644 index 000000000..135ca2c11 --- /dev/null +++ b/pkg/dialects/storm32/enum_camera_tracking_target_data.go @@ -0,0 +1,50 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package storm32 + +import ( + "errors" +) + +// Camera tracking target data (shows where tracked target is within image) +type CAMERA_TRACKING_TARGET_DATA int + +const ( + // No target data + CAMERA_TRACKING_TARGET_DATA_NONE CAMERA_TRACKING_TARGET_DATA = 0 + // Target data embedded in image data (proprietary) + CAMERA_TRACKING_TARGET_DATA_EMBEDDED CAMERA_TRACKING_TARGET_DATA = 1 + // Target data rendered in image + CAMERA_TRACKING_TARGET_DATA_RENDERED CAMERA_TRACKING_TARGET_DATA = 2 + // Target data within status message (Point or Rectangle) + CAMERA_TRACKING_TARGET_DATA_IN_STATUS CAMERA_TRACKING_TARGET_DATA = 4 +) + +var labels_CAMERA_TRACKING_TARGET_DATA = map[CAMERA_TRACKING_TARGET_DATA]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e CAMERA_TRACKING_TARGET_DATA) MarshalText() ([]byte, error) { + if l, ok := labels_CAMERA_TRACKING_TARGET_DATA[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_CAMERA_TRACKING_TARGET_DATA = map[string]CAMERA_TRACKING_TARGET_DATA{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *CAMERA_TRACKING_TARGET_DATA) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_CAMERA_TRACKING_TARGET_DATA[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e CAMERA_TRACKING_TARGET_DATA) String() string { + if l, ok := labels_CAMERA_TRACKING_TARGET_DATA[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/storm32/enum_camera_zoom_type.go b/pkg/dialects/storm32/enum_camera_zoom_type.go new file mode 100644 index 000000000..4f052318f --- /dev/null +++ b/pkg/dialects/storm32/enum_camera_zoom_type.go @@ -0,0 +1,50 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package storm32 + +import ( + "errors" +) + +// Zoom types for MAV_CMD_SET_CAMERA_ZOOM +type CAMERA_ZOOM_TYPE int + +const ( + // Zoom one step increment (-1 for wide, 1 for tele) + ZOOM_TYPE_STEP CAMERA_ZOOM_TYPE = 0 + // Continuous zoom up/down until stopped (-1 for wide, 1 for tele, 0 to stop zooming) + ZOOM_TYPE_CONTINUOUS CAMERA_ZOOM_TYPE = 1 + // Zoom value as proportion of full camera range (a value between 0.0 and 100.0) + ZOOM_TYPE_RANGE CAMERA_ZOOM_TYPE = 2 + // Zoom value/variable focal length in milimetres. Note that there is no message to get the valid zoom range of the camera, so this can type can only be used for cameras where the zoom range is known (implying that this cannot reliably be used in a GCS for an arbitrary camera) + ZOOM_TYPE_FOCAL_LENGTH CAMERA_ZOOM_TYPE = 3 +) + +var labels_CAMERA_ZOOM_TYPE = map[CAMERA_ZOOM_TYPE]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e CAMERA_ZOOM_TYPE) MarshalText() ([]byte, error) { + if l, ok := labels_CAMERA_ZOOM_TYPE[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_CAMERA_ZOOM_TYPE = map[string]CAMERA_ZOOM_TYPE{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *CAMERA_ZOOM_TYPE) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_CAMERA_ZOOM_TYPE[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e CAMERA_ZOOM_TYPE) String() string { + if l, ok := labels_CAMERA_ZOOM_TYPE[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/storm32/enum_cellular_config_response.go b/pkg/dialects/storm32/enum_cellular_config_response.go new file mode 100644 index 000000000..a3ef1e43a --- /dev/null +++ b/pkg/dialects/storm32/enum_cellular_config_response.go @@ -0,0 +1,52 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package storm32 + +import ( + "errors" +) + +// Possible responses from a CELLULAR_CONFIG message. +type CELLULAR_CONFIG_RESPONSE int + +const ( + // Changes accepted. + CELLULAR_CONFIG_RESPONSE_ACCEPTED CELLULAR_CONFIG_RESPONSE = 0 + // Invalid APN. + CELLULAR_CONFIG_RESPONSE_APN_ERROR CELLULAR_CONFIG_RESPONSE = 1 + // Invalid PIN. + CELLULAR_CONFIG_RESPONSE_PIN_ERROR CELLULAR_CONFIG_RESPONSE = 2 + // Changes rejected. + CELLULAR_CONFIG_RESPONSE_REJECTED CELLULAR_CONFIG_RESPONSE = 3 + // PUK is required to unblock SIM card. + CELLULAR_CONFIG_BLOCKED_PUK_REQUIRED CELLULAR_CONFIG_RESPONSE = 4 +) + +var labels_CELLULAR_CONFIG_RESPONSE = map[CELLULAR_CONFIG_RESPONSE]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e CELLULAR_CONFIG_RESPONSE) MarshalText() ([]byte, error) { + if l, ok := labels_CELLULAR_CONFIG_RESPONSE[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_CELLULAR_CONFIG_RESPONSE = map[string]CELLULAR_CONFIG_RESPONSE{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *CELLULAR_CONFIG_RESPONSE) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_CELLULAR_CONFIG_RESPONSE[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e CELLULAR_CONFIG_RESPONSE) String() string { + if l, ok := labels_CELLULAR_CONFIG_RESPONSE[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/storm32/enum_cellular_network_failed_reason.go b/pkg/dialects/storm32/enum_cellular_network_failed_reason.go new file mode 100644 index 000000000..690e31612 --- /dev/null +++ b/pkg/dialects/storm32/enum_cellular_network_failed_reason.go @@ -0,0 +1,50 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package storm32 + +import ( + "errors" +) + +// These flags are used to diagnose the failure state of CELLULAR_STATUS +type CELLULAR_NETWORK_FAILED_REASON int + +const ( + // No error + CELLULAR_NETWORK_FAILED_REASON_NONE CELLULAR_NETWORK_FAILED_REASON = 0 + // Error state is unknown + CELLULAR_NETWORK_FAILED_REASON_UNKNOWN CELLULAR_NETWORK_FAILED_REASON = 1 + // SIM is required for the modem but missing + CELLULAR_NETWORK_FAILED_REASON_SIM_MISSING CELLULAR_NETWORK_FAILED_REASON = 2 + // SIM is available, but not usuable for connection + CELLULAR_NETWORK_FAILED_REASON_SIM_ERROR CELLULAR_NETWORK_FAILED_REASON = 3 +) + +var labels_CELLULAR_NETWORK_FAILED_REASON = map[CELLULAR_NETWORK_FAILED_REASON]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e CELLULAR_NETWORK_FAILED_REASON) MarshalText() ([]byte, error) { + if l, ok := labels_CELLULAR_NETWORK_FAILED_REASON[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_CELLULAR_NETWORK_FAILED_REASON = map[string]CELLULAR_NETWORK_FAILED_REASON{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *CELLULAR_NETWORK_FAILED_REASON) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_CELLULAR_NETWORK_FAILED_REASON[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e CELLULAR_NETWORK_FAILED_REASON) String() string { + if l, ok := labels_CELLULAR_NETWORK_FAILED_REASON[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/storm32/enum_cellular_network_radio_type.go b/pkg/dialects/storm32/enum_cellular_network_radio_type.go new file mode 100644 index 000000000..5df9c1f5e --- /dev/null +++ b/pkg/dialects/storm32/enum_cellular_network_radio_type.go @@ -0,0 +1,47 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package storm32 + +import ( + "errors" +) + +// Cellular network radio type +type CELLULAR_NETWORK_RADIO_TYPE int + +const ( + CELLULAR_NETWORK_RADIO_TYPE_NONE CELLULAR_NETWORK_RADIO_TYPE = 0 + CELLULAR_NETWORK_RADIO_TYPE_GSM CELLULAR_NETWORK_RADIO_TYPE = 1 + CELLULAR_NETWORK_RADIO_TYPE_CDMA CELLULAR_NETWORK_RADIO_TYPE = 2 + CELLULAR_NETWORK_RADIO_TYPE_WCDMA CELLULAR_NETWORK_RADIO_TYPE = 3 + CELLULAR_NETWORK_RADIO_TYPE_LTE CELLULAR_NETWORK_RADIO_TYPE = 4 +) + +var labels_CELLULAR_NETWORK_RADIO_TYPE = map[CELLULAR_NETWORK_RADIO_TYPE]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e CELLULAR_NETWORK_RADIO_TYPE) MarshalText() ([]byte, error) { + if l, ok := labels_CELLULAR_NETWORK_RADIO_TYPE[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_CELLULAR_NETWORK_RADIO_TYPE = map[string]CELLULAR_NETWORK_RADIO_TYPE{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *CELLULAR_NETWORK_RADIO_TYPE) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_CELLULAR_NETWORK_RADIO_TYPE[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e CELLULAR_NETWORK_RADIO_TYPE) String() string { + if l, ok := labels_CELLULAR_NETWORK_RADIO_TYPE[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/storm32/enum_cellular_status_flag.go b/pkg/dialects/storm32/enum_cellular_status_flag.go new file mode 100644 index 000000000..b2653a948 --- /dev/null +++ b/pkg/dialects/storm32/enum_cellular_status_flag.go @@ -0,0 +1,68 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package storm32 + +import ( + "errors" +) + +// These flags encode the cellular network status +type CELLULAR_STATUS_FLAG int + +const ( + // State unknown or not reportable. + CELLULAR_STATUS_FLAG_UNKNOWN CELLULAR_STATUS_FLAG = 0 + // Modem is unusable + CELLULAR_STATUS_FLAG_FAILED CELLULAR_STATUS_FLAG = 1 + // Modem is being initialized + CELLULAR_STATUS_FLAG_INITIALIZING CELLULAR_STATUS_FLAG = 2 + // Modem is locked + CELLULAR_STATUS_FLAG_LOCKED CELLULAR_STATUS_FLAG = 3 + // Modem is not enabled and is powered down + CELLULAR_STATUS_FLAG_DISABLED CELLULAR_STATUS_FLAG = 4 + // Modem is currently transitioning to the CELLULAR_STATUS_FLAG_DISABLED state + CELLULAR_STATUS_FLAG_DISABLING CELLULAR_STATUS_FLAG = 5 + // Modem is currently transitioning to the CELLULAR_STATUS_FLAG_ENABLED state + CELLULAR_STATUS_FLAG_ENABLING CELLULAR_STATUS_FLAG = 6 + // Modem is enabled and powered on but not registered with a network provider and not available for data connections + CELLULAR_STATUS_FLAG_ENABLED CELLULAR_STATUS_FLAG = 7 + // Modem is searching for a network provider to register + CELLULAR_STATUS_FLAG_SEARCHING CELLULAR_STATUS_FLAG = 8 + // Modem is registered with a network provider, and data connections and messaging may be available for use + CELLULAR_STATUS_FLAG_REGISTERED CELLULAR_STATUS_FLAG = 9 + // Modem is disconnecting and deactivating the last active packet data bearer. This state will not be entered if more than one packet data bearer is active and one of the active bearers is deactivated + CELLULAR_STATUS_FLAG_DISCONNECTING CELLULAR_STATUS_FLAG = 10 + // Modem is activating and connecting the first packet data bearer. Subsequent bearer activations when another bearer is already active do not cause this state to be entered + CELLULAR_STATUS_FLAG_CONNECTING CELLULAR_STATUS_FLAG = 11 + // One or more packet data bearers is active and connected + CELLULAR_STATUS_FLAG_CONNECTED CELLULAR_STATUS_FLAG = 12 +) + +var labels_CELLULAR_STATUS_FLAG = map[CELLULAR_STATUS_FLAG]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e CELLULAR_STATUS_FLAG) MarshalText() ([]byte, error) { + if l, ok := labels_CELLULAR_STATUS_FLAG[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_CELLULAR_STATUS_FLAG = map[string]CELLULAR_STATUS_FLAG{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *CELLULAR_STATUS_FLAG) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_CELLULAR_STATUS_FLAG[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e CELLULAR_STATUS_FLAG) String() string { + if l, ok := labels_CELLULAR_STATUS_FLAG[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/storm32/enum_comp_metadata_type.go b/pkg/dialects/storm32/enum_comp_metadata_type.go new file mode 100644 index 000000000..78a86c1a7 --- /dev/null +++ b/pkg/dialects/storm32/enum_comp_metadata_type.go @@ -0,0 +1,54 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package storm32 + +import ( + "errors" +) + +// Supported component metadata types. These are used in the "general" metadata file returned by COMPONENT_INFORMATION to provide information about supported metadata types. The types are not used directly in MAVLink messages. +type COMP_METADATA_TYPE int + +const ( + // General information about the component. General metadata includes information about other COMP_METADATA_TYPEs supported by the component. This type must be supported and must be downloadable from vehicle. + COMP_METADATA_TYPE_GENERAL COMP_METADATA_TYPE = 0 + // Parameter meta data. + COMP_METADATA_TYPE_PARAMETER COMP_METADATA_TYPE = 1 + // Meta data that specifies which commands and command parameters the vehicle supports. (WIP) + COMP_METADATA_TYPE_COMMANDS COMP_METADATA_TYPE = 2 + // Meta data that specifies external non-MAVLink peripherals. + COMP_METADATA_TYPE_PERIPHERALS COMP_METADATA_TYPE = 3 + // Meta data for the events interface. + COMP_METADATA_TYPE_EVENTS COMP_METADATA_TYPE = 4 + // Meta data for actuator configuration (motors, servos and vehicle geometry) and testing. + COMP_METADATA_TYPE_ACTUATORS COMP_METADATA_TYPE = 5 +) + +var labels_COMP_METADATA_TYPE = map[COMP_METADATA_TYPE]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e COMP_METADATA_TYPE) MarshalText() ([]byte, error) { + if l, ok := labels_COMP_METADATA_TYPE[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_COMP_METADATA_TYPE = map[string]COMP_METADATA_TYPE{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *COMP_METADATA_TYPE) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_COMP_METADATA_TYPE[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e COMP_METADATA_TYPE) String() string { + if l, ok := labels_COMP_METADATA_TYPE[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/storm32/enum_copter_mode.go b/pkg/dialects/storm32/enum_copter_mode.go new file mode 100644 index 000000000..89c9e5a05 --- /dev/null +++ b/pkg/dialects/storm32/enum_copter_mode.go @@ -0,0 +1,67 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package storm32 + +import ( + "errors" +) + +// A mapping of copter flight modes for custom_mode field of heartbeat. +type COPTER_MODE int + +const ( + COPTER_MODE_STABILIZE COPTER_MODE = 0 + COPTER_MODE_ACRO COPTER_MODE = 1 + COPTER_MODE_ALT_HOLD COPTER_MODE = 2 + COPTER_MODE_AUTO COPTER_MODE = 3 + COPTER_MODE_GUIDED COPTER_MODE = 4 + COPTER_MODE_LOITER COPTER_MODE = 5 + COPTER_MODE_RTL COPTER_MODE = 6 + COPTER_MODE_CIRCLE COPTER_MODE = 7 + COPTER_MODE_LAND COPTER_MODE = 9 + COPTER_MODE_DRIFT COPTER_MODE = 11 + COPTER_MODE_SPORT COPTER_MODE = 13 + COPTER_MODE_FLIP COPTER_MODE = 14 + COPTER_MODE_AUTOTUNE COPTER_MODE = 15 + COPTER_MODE_POSHOLD COPTER_MODE = 16 + COPTER_MODE_BRAKE COPTER_MODE = 17 + COPTER_MODE_THROW COPTER_MODE = 18 + COPTER_MODE_AVOID_ADSB COPTER_MODE = 19 + COPTER_MODE_GUIDED_NOGPS COPTER_MODE = 20 + COPTER_MODE_SMART_RTL COPTER_MODE = 21 + COPTER_MODE_FLOWHOLD COPTER_MODE = 22 + COPTER_MODE_FOLLOW COPTER_MODE = 23 + COPTER_MODE_ZIGZAG COPTER_MODE = 24 + COPTER_MODE_SYSTEMID COPTER_MODE = 25 + COPTER_MODE_AUTOROTATE COPTER_MODE = 26 + COPTER_MODE_AUTO_RTL COPTER_MODE = 27 +) + +var labels_COPTER_MODE = map[COPTER_MODE]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e COPTER_MODE) MarshalText() ([]byte, error) { + if l, ok := labels_COPTER_MODE[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_COPTER_MODE = map[string]COPTER_MODE{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *COPTER_MODE) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_COPTER_MODE[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e COPTER_MODE) String() string { + if l, ok := labels_COPTER_MODE[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/storm32/enum_deepstall_stage.go b/pkg/dialects/storm32/enum_deepstall_stage.go new file mode 100644 index 000000000..b7a4076ac --- /dev/null +++ b/pkg/dialects/storm32/enum_deepstall_stage.go @@ -0,0 +1,56 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package storm32 + +import ( + "errors" +) + +// Deepstall flight stage. +type DEEPSTALL_STAGE int + +const ( + // Flying to the landing point. + DEEPSTALL_STAGE_FLY_TO_LANDING DEEPSTALL_STAGE = 0 + // Building an estimate of the wind. + DEEPSTALL_STAGE_ESTIMATE_WIND DEEPSTALL_STAGE = 1 + // Waiting to breakout of the loiter to fly the approach. + DEEPSTALL_STAGE_WAIT_FOR_BREAKOUT DEEPSTALL_STAGE = 2 + // Flying to the first arc point to turn around to the landing point. + DEEPSTALL_STAGE_FLY_TO_ARC DEEPSTALL_STAGE = 3 + // Turning around back to the deepstall landing point. + DEEPSTALL_STAGE_ARC DEEPSTALL_STAGE = 4 + // Approaching the landing point. + DEEPSTALL_STAGE_APPROACH DEEPSTALL_STAGE = 5 + // Stalling and steering towards the land point. + DEEPSTALL_STAGE_LAND DEEPSTALL_STAGE = 6 +) + +var labels_DEEPSTALL_STAGE = map[DEEPSTALL_STAGE]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e DEEPSTALL_STAGE) MarshalText() ([]byte, error) { + if l, ok := labels_DEEPSTALL_STAGE[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_DEEPSTALL_STAGE = map[string]DEEPSTALL_STAGE{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *DEEPSTALL_STAGE) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_DEEPSTALL_STAGE[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e DEEPSTALL_STAGE) String() string { + if l, ok := labels_DEEPSTALL_STAGE[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/storm32/enum_device_op_bustype.go b/pkg/dialects/storm32/enum_device_op_bustype.go new file mode 100644 index 000000000..641eb7f7c --- /dev/null +++ b/pkg/dialects/storm32/enum_device_op_bustype.go @@ -0,0 +1,46 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package storm32 + +import ( + "errors" +) + +// Bus types for device operations. +type DEVICE_OP_BUSTYPE int + +const ( + // I2C Device operation. + DEVICE_OP_BUSTYPE_I2C DEVICE_OP_BUSTYPE = 0 + // SPI Device operation. + DEVICE_OP_BUSTYPE_SPI DEVICE_OP_BUSTYPE = 1 +) + +var labels_DEVICE_OP_BUSTYPE = map[DEVICE_OP_BUSTYPE]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e DEVICE_OP_BUSTYPE) MarshalText() ([]byte, error) { + if l, ok := labels_DEVICE_OP_BUSTYPE[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_DEVICE_OP_BUSTYPE = map[string]DEVICE_OP_BUSTYPE{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *DEVICE_OP_BUSTYPE) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_DEVICE_OP_BUSTYPE[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e DEVICE_OP_BUSTYPE) String() string { + if l, ok := labels_DEVICE_OP_BUSTYPE[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/storm32/enum_ekf_status_flags.go b/pkg/dialects/storm32/enum_ekf_status_flags.go new file mode 100644 index 000000000..4af89884e --- /dev/null +++ b/pkg/dialects/storm32/enum_ekf_status_flags.go @@ -0,0 +1,64 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package storm32 + +import ( + "errors" +) + +// Flags in EKF_STATUS message. +type EKF_STATUS_FLAGS int + +const ( + // Set if EKF's attitude estimate is good. + EKF_ATTITUDE EKF_STATUS_FLAGS = 1 + // Set if EKF's horizontal velocity estimate is good. + EKF_VELOCITY_HORIZ EKF_STATUS_FLAGS = 2 + // Set if EKF's vertical velocity estimate is good. + EKF_VELOCITY_VERT EKF_STATUS_FLAGS = 4 + // Set if EKF's horizontal position (relative) estimate is good. + EKF_POS_HORIZ_REL EKF_STATUS_FLAGS = 8 + // Set if EKF's horizontal position (absolute) estimate is good. + EKF_POS_HORIZ_ABS EKF_STATUS_FLAGS = 16 + // Set if EKF's vertical position (absolute) estimate is good. + EKF_POS_VERT_ABS EKF_STATUS_FLAGS = 32 + // Set if EKF's vertical position (above ground) estimate is good. + EKF_POS_VERT_AGL EKF_STATUS_FLAGS = 64 + // EKF is in constant position mode and does not know it's absolute or relative position. + EKF_CONST_POS_MODE EKF_STATUS_FLAGS = 128 + // Set if EKF's predicted horizontal position (relative) estimate is good. + EKF_PRED_POS_HORIZ_REL EKF_STATUS_FLAGS = 256 + // Set if EKF's predicted horizontal position (absolute) estimate is good. + EKF_PRED_POS_HORIZ_ABS EKF_STATUS_FLAGS = 512 + // Set if EKF has never been healthy. + EKF_UNINITIALIZED EKF_STATUS_FLAGS = 1024 +) + +var labels_EKF_STATUS_FLAGS = map[EKF_STATUS_FLAGS]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e EKF_STATUS_FLAGS) MarshalText() ([]byte, error) { + if l, ok := labels_EKF_STATUS_FLAGS[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_EKF_STATUS_FLAGS = map[string]EKF_STATUS_FLAGS{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *EKF_STATUS_FLAGS) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_EKF_STATUS_FLAGS[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e EKF_STATUS_FLAGS) String() string { + if l, ok := labels_EKF_STATUS_FLAGS[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/storm32/enum_esc_connection_type.go b/pkg/dialects/storm32/enum_esc_connection_type.go new file mode 100644 index 000000000..891ef3ce1 --- /dev/null +++ b/pkg/dialects/storm32/enum_esc_connection_type.go @@ -0,0 +1,54 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package storm32 + +import ( + "errors" +) + +// Indicates the ESC connection type. +type ESC_CONNECTION_TYPE int + +const ( + // Traditional PPM ESC. + ESC_CONNECTION_TYPE_PPM ESC_CONNECTION_TYPE = 0 + // Serial Bus connected ESC. + ESC_CONNECTION_TYPE_SERIAL ESC_CONNECTION_TYPE = 1 + // One Shot PPM ESC. + ESC_CONNECTION_TYPE_ONESHOT ESC_CONNECTION_TYPE = 2 + // I2C ESC. + ESC_CONNECTION_TYPE_I2C ESC_CONNECTION_TYPE = 3 + // CAN-Bus ESC. + ESC_CONNECTION_TYPE_CAN ESC_CONNECTION_TYPE = 4 + // DShot ESC. + ESC_CONNECTION_TYPE_DSHOT ESC_CONNECTION_TYPE = 5 +) + +var labels_ESC_CONNECTION_TYPE = map[ESC_CONNECTION_TYPE]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e ESC_CONNECTION_TYPE) MarshalText() ([]byte, error) { + if l, ok := labels_ESC_CONNECTION_TYPE[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_ESC_CONNECTION_TYPE = map[string]ESC_CONNECTION_TYPE{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *ESC_CONNECTION_TYPE) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_ESC_CONNECTION_TYPE[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e ESC_CONNECTION_TYPE) String() string { + if l, ok := labels_ESC_CONNECTION_TYPE[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/storm32/enum_esc_failure_flags.go b/pkg/dialects/storm32/enum_esc_failure_flags.go new file mode 100644 index 000000000..db35e9a4b --- /dev/null +++ b/pkg/dialects/storm32/enum_esc_failure_flags.go @@ -0,0 +1,58 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package storm32 + +import ( + "errors" +) + +// Flags to report ESC failures. +type ESC_FAILURE_FLAGS int + +const ( + // No ESC failure. + ESC_FAILURE_NONE ESC_FAILURE_FLAGS = 0 + // Over current failure. + ESC_FAILURE_OVER_CURRENT ESC_FAILURE_FLAGS = 1 + // Over voltage failure. + ESC_FAILURE_OVER_VOLTAGE ESC_FAILURE_FLAGS = 2 + // Over temperature failure. + ESC_FAILURE_OVER_TEMPERATURE ESC_FAILURE_FLAGS = 4 + // Over RPM failure. + ESC_FAILURE_OVER_RPM ESC_FAILURE_FLAGS = 8 + // Inconsistent command failure i.e. out of bounds. + ESC_FAILURE_INCONSISTENT_CMD ESC_FAILURE_FLAGS = 16 + // Motor stuck failure. + ESC_FAILURE_MOTOR_STUCK ESC_FAILURE_FLAGS = 32 + // Generic ESC failure. + ESC_FAILURE_GENERIC ESC_FAILURE_FLAGS = 64 +) + +var labels_ESC_FAILURE_FLAGS = map[ESC_FAILURE_FLAGS]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e ESC_FAILURE_FLAGS) MarshalText() ([]byte, error) { + if l, ok := labels_ESC_FAILURE_FLAGS[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_ESC_FAILURE_FLAGS = map[string]ESC_FAILURE_FLAGS{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *ESC_FAILURE_FLAGS) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_ESC_FAILURE_FLAGS[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e ESC_FAILURE_FLAGS) String() string { + if l, ok := labels_ESC_FAILURE_FLAGS[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/storm32/enum_estimator_status_flags.go b/pkg/dialects/storm32/enum_estimator_status_flags.go new file mode 100644 index 000000000..09636d4b0 --- /dev/null +++ b/pkg/dialects/storm32/enum_estimator_status_flags.go @@ -0,0 +1,66 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package storm32 + +import ( + "errors" +) + +// Flags in ESTIMATOR_STATUS message +type ESTIMATOR_STATUS_FLAGS int + +const ( + // True if the attitude estimate is good + ESTIMATOR_ATTITUDE ESTIMATOR_STATUS_FLAGS = 1 + // True if the horizontal velocity estimate is good + ESTIMATOR_VELOCITY_HORIZ ESTIMATOR_STATUS_FLAGS = 2 + // True if the vertical velocity estimate is good + ESTIMATOR_VELOCITY_VERT ESTIMATOR_STATUS_FLAGS = 4 + // True if the horizontal position (relative) estimate is good + ESTIMATOR_POS_HORIZ_REL ESTIMATOR_STATUS_FLAGS = 8 + // True if the horizontal position (absolute) estimate is good + ESTIMATOR_POS_HORIZ_ABS ESTIMATOR_STATUS_FLAGS = 16 + // True if the vertical position (absolute) estimate is good + ESTIMATOR_POS_VERT_ABS ESTIMATOR_STATUS_FLAGS = 32 + // True if the vertical position (above ground) estimate is good + ESTIMATOR_POS_VERT_AGL ESTIMATOR_STATUS_FLAGS = 64 + // True if the EKF is in a constant position mode and is not using external measurements (eg GPS or optical flow) + ESTIMATOR_CONST_POS_MODE ESTIMATOR_STATUS_FLAGS = 128 + // True if the EKF has sufficient data to enter a mode that will provide a (relative) position estimate + ESTIMATOR_PRED_POS_HORIZ_REL ESTIMATOR_STATUS_FLAGS = 256 + // True if the EKF has sufficient data to enter a mode that will provide a (absolute) position estimate + ESTIMATOR_PRED_POS_HORIZ_ABS ESTIMATOR_STATUS_FLAGS = 512 + // True if the EKF has detected a GPS glitch + ESTIMATOR_GPS_GLITCH ESTIMATOR_STATUS_FLAGS = 1024 + // True if the EKF has detected bad accelerometer data + ESTIMATOR_ACCEL_ERROR ESTIMATOR_STATUS_FLAGS = 2048 +) + +var labels_ESTIMATOR_STATUS_FLAGS = map[ESTIMATOR_STATUS_FLAGS]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e ESTIMATOR_STATUS_FLAGS) MarshalText() ([]byte, error) { + if l, ok := labels_ESTIMATOR_STATUS_FLAGS[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_ESTIMATOR_STATUS_FLAGS = map[string]ESTIMATOR_STATUS_FLAGS{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *ESTIMATOR_STATUS_FLAGS) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_ESTIMATOR_STATUS_FLAGS[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e ESTIMATOR_STATUS_FLAGS) String() string { + if l, ok := labels_ESTIMATOR_STATUS_FLAGS[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/storm32/enum_failure_type.go b/pkg/dialects/storm32/enum_failure_type.go new file mode 100644 index 000000000..47b7e0017 --- /dev/null +++ b/pkg/dialects/storm32/enum_failure_type.go @@ -0,0 +1,58 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package storm32 + +import ( + "errors" +) + +// List of possible failure type to inject. +type FAILURE_TYPE int + +const ( + // No failure injected, used to reset a previous failure. + FAILURE_TYPE_OK FAILURE_TYPE = 0 + // Sets unit off, so completely non-responsive. + FAILURE_TYPE_OFF FAILURE_TYPE = 1 + // Unit is stuck e.g. keeps reporting the same value. + FAILURE_TYPE_STUCK FAILURE_TYPE = 2 + // Unit is reporting complete garbage. + FAILURE_TYPE_GARBAGE FAILURE_TYPE = 3 + // Unit is consistently wrong. + FAILURE_TYPE_WRONG FAILURE_TYPE = 4 + // Unit is slow, so e.g. reporting at slower than expected rate. + FAILURE_TYPE_SLOW FAILURE_TYPE = 5 + // Data of unit is delayed in time. + FAILURE_TYPE_DELAYED FAILURE_TYPE = 6 + // Unit is sometimes working, sometimes not. + FAILURE_TYPE_INTERMITTENT FAILURE_TYPE = 7 +) + +var labels_FAILURE_TYPE = map[FAILURE_TYPE]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e FAILURE_TYPE) MarshalText() ([]byte, error) { + if l, ok := labels_FAILURE_TYPE[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_FAILURE_TYPE = map[string]FAILURE_TYPE{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *FAILURE_TYPE) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_FAILURE_TYPE[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e FAILURE_TYPE) String() string { + if l, ok := labels_FAILURE_TYPE[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/storm32/enum_failure_unit.go b/pkg/dialects/storm32/enum_failure_unit.go new file mode 100644 index 000000000..8cdca2e59 --- /dev/null +++ b/pkg/dialects/storm32/enum_failure_unit.go @@ -0,0 +1,57 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package storm32 + +import ( + "errors" +) + +// List of possible units where failures can be injected. +type FAILURE_UNIT int + +const ( + FAILURE_UNIT_SENSOR_GYRO FAILURE_UNIT = 0 + FAILURE_UNIT_SENSOR_ACCEL FAILURE_UNIT = 1 + FAILURE_UNIT_SENSOR_MAG FAILURE_UNIT = 2 + FAILURE_UNIT_SENSOR_BARO FAILURE_UNIT = 3 + FAILURE_UNIT_SENSOR_GPS FAILURE_UNIT = 4 + FAILURE_UNIT_SENSOR_OPTICAL_FLOW FAILURE_UNIT = 5 + FAILURE_UNIT_SENSOR_VIO FAILURE_UNIT = 6 + FAILURE_UNIT_SENSOR_DISTANCE_SENSOR FAILURE_UNIT = 7 + FAILURE_UNIT_SENSOR_AIRSPEED FAILURE_UNIT = 8 + FAILURE_UNIT_SYSTEM_BATTERY FAILURE_UNIT = 100 + FAILURE_UNIT_SYSTEM_MOTOR FAILURE_UNIT = 101 + FAILURE_UNIT_SYSTEM_SERVO FAILURE_UNIT = 102 + FAILURE_UNIT_SYSTEM_AVOIDANCE FAILURE_UNIT = 103 + FAILURE_UNIT_SYSTEM_RC_SIGNAL FAILURE_UNIT = 104 + FAILURE_UNIT_SYSTEM_MAVLINK_SIGNAL FAILURE_UNIT = 105 +) + +var labels_FAILURE_UNIT = map[FAILURE_UNIT]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e FAILURE_UNIT) MarshalText() ([]byte, error) { + if l, ok := labels_FAILURE_UNIT[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_FAILURE_UNIT = map[string]FAILURE_UNIT{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *FAILURE_UNIT) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_FAILURE_UNIT[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e FAILURE_UNIT) String() string { + if l, ok := labels_FAILURE_UNIT[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/storm32/enum_fence_action.go b/pkg/dialects/storm32/enum_fence_action.go new file mode 100644 index 000000000..e31f6c717 --- /dev/null +++ b/pkg/dialects/storm32/enum_fence_action.go @@ -0,0 +1,58 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package storm32 + +import ( + "errors" +) + +// Actions following geofence breach. +type FENCE_ACTION int + +const ( + // Disable fenced mode. If used in a plan this would mean the next fence is disabled. + FENCE_ACTION_NONE FENCE_ACTION = 0 + // Fly to geofence MAV_CMD_NAV_FENCE_RETURN_POINT in GUIDED mode. Note: This action is only supported by ArduPlane, and may not be supported in all versions. + FENCE_ACTION_GUIDED FENCE_ACTION = 1 + // Report fence breach, but don't take action + FENCE_ACTION_REPORT FENCE_ACTION = 2 + // Fly to geofence MAV_CMD_NAV_FENCE_RETURN_POINT with manual throttle control in GUIDED mode. Note: This action is only supported by ArduPlane, and may not be supported in all versions. + FENCE_ACTION_GUIDED_THR_PASS FENCE_ACTION = 3 + // Return/RTL mode. + FENCE_ACTION_RTL FENCE_ACTION = 4 + // Hold at current location. + FENCE_ACTION_HOLD FENCE_ACTION = 5 + // Termination failsafe. Motors are shut down (some flight stacks may trigger other failsafe actions). + FENCE_ACTION_TERMINATE FENCE_ACTION = 6 + // Land at current location. + FENCE_ACTION_LAND FENCE_ACTION = 7 +) + +var labels_FENCE_ACTION = map[FENCE_ACTION]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e FENCE_ACTION) MarshalText() ([]byte, error) { + if l, ok := labels_FENCE_ACTION[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_FENCE_ACTION = map[string]FENCE_ACTION{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *FENCE_ACTION) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_FENCE_ACTION[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e FENCE_ACTION) String() string { + if l, ok := labels_FENCE_ACTION[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/storm32/enum_fence_breach.go b/pkg/dialects/storm32/enum_fence_breach.go new file mode 100644 index 000000000..5fb2348ce --- /dev/null +++ b/pkg/dialects/storm32/enum_fence_breach.go @@ -0,0 +1,49 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package storm32 + +import ( + "errors" +) + +type FENCE_BREACH int + +const ( + // No last fence breach + FENCE_BREACH_NONE FENCE_BREACH = 0 + // Breached minimum altitude + FENCE_BREACH_MINALT FENCE_BREACH = 1 + // Breached maximum altitude + FENCE_BREACH_MAXALT FENCE_BREACH = 2 + // Breached fence boundary + FENCE_BREACH_BOUNDARY FENCE_BREACH = 3 +) + +var labels_FENCE_BREACH = map[FENCE_BREACH]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e FENCE_BREACH) MarshalText() ([]byte, error) { + if l, ok := labels_FENCE_BREACH[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_FENCE_BREACH = map[string]FENCE_BREACH{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *FENCE_BREACH) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_FENCE_BREACH[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e FENCE_BREACH) String() string { + if l, ok := labels_FENCE_BREACH[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/storm32/enum_fence_mitigate.go b/pkg/dialects/storm32/enum_fence_mitigate.go new file mode 100644 index 000000000..0eb5e3aa7 --- /dev/null +++ b/pkg/dialects/storm32/enum_fence_mitigate.go @@ -0,0 +1,48 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package storm32 + +import ( + "errors" +) + +// Actions being taken to mitigate/prevent fence breach +type FENCE_MITIGATE int + +const ( + // Unknown + FENCE_MITIGATE_UNKNOWN FENCE_MITIGATE = 0 + // No actions being taken + FENCE_MITIGATE_NONE FENCE_MITIGATE = 1 + // Velocity limiting active to prevent breach + FENCE_MITIGATE_VEL_LIMIT FENCE_MITIGATE = 2 +) + +var labels_FENCE_MITIGATE = map[FENCE_MITIGATE]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e FENCE_MITIGATE) MarshalText() ([]byte, error) { + if l, ok := labels_FENCE_MITIGATE[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_FENCE_MITIGATE = map[string]FENCE_MITIGATE{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *FENCE_MITIGATE) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_FENCE_MITIGATE[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e FENCE_MITIGATE) String() string { + if l, ok := labels_FENCE_MITIGATE[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/storm32/enum_firmware_version_type.go b/pkg/dialects/storm32/enum_firmware_version_type.go new file mode 100644 index 000000000..8b8acf24d --- /dev/null +++ b/pkg/dialects/storm32/enum_firmware_version_type.go @@ -0,0 +1,52 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package storm32 + +import ( + "errors" +) + +// These values define the type of firmware release. These values indicate the first version or release of this type. For example the first alpha release would be 64, the second would be 65. +type FIRMWARE_VERSION_TYPE int + +const ( + // development release + FIRMWARE_VERSION_TYPE_DEV FIRMWARE_VERSION_TYPE = 0 + // alpha release + FIRMWARE_VERSION_TYPE_ALPHA FIRMWARE_VERSION_TYPE = 64 + // beta release + FIRMWARE_VERSION_TYPE_BETA FIRMWARE_VERSION_TYPE = 128 + // release candidate + FIRMWARE_VERSION_TYPE_RC FIRMWARE_VERSION_TYPE = 192 + // official stable release + FIRMWARE_VERSION_TYPE_OFFICIAL FIRMWARE_VERSION_TYPE = 255 +) + +var labels_FIRMWARE_VERSION_TYPE = map[FIRMWARE_VERSION_TYPE]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e FIRMWARE_VERSION_TYPE) MarshalText() ([]byte, error) { + if l, ok := labels_FIRMWARE_VERSION_TYPE[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_FIRMWARE_VERSION_TYPE = map[string]FIRMWARE_VERSION_TYPE{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *FIRMWARE_VERSION_TYPE) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_FIRMWARE_VERSION_TYPE[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e FIRMWARE_VERSION_TYPE) String() string { + if l, ok := labels_FIRMWARE_VERSION_TYPE[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/storm32/enum_gimbal_axis.go b/pkg/dialects/storm32/enum_gimbal_axis.go new file mode 100644 index 000000000..43c4316d4 --- /dev/null +++ b/pkg/dialects/storm32/enum_gimbal_axis.go @@ -0,0 +1,47 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package storm32 + +import ( + "errors" +) + +type GIMBAL_AXIS int + +const ( + // Gimbal yaw axis. + GIMBAL_AXIS_YAW GIMBAL_AXIS = 0 + // Gimbal pitch axis. + GIMBAL_AXIS_PITCH GIMBAL_AXIS = 1 + // Gimbal roll axis. + GIMBAL_AXIS_ROLL GIMBAL_AXIS = 2 +) + +var labels_GIMBAL_AXIS = map[GIMBAL_AXIS]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e GIMBAL_AXIS) MarshalText() ([]byte, error) { + if l, ok := labels_GIMBAL_AXIS[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_GIMBAL_AXIS = map[string]GIMBAL_AXIS{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *GIMBAL_AXIS) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_GIMBAL_AXIS[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e GIMBAL_AXIS) String() string { + if l, ok := labels_GIMBAL_AXIS[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/storm32/enum_gimbal_axis_calibration_required.go b/pkg/dialects/storm32/enum_gimbal_axis_calibration_required.go new file mode 100644 index 000000000..6d129fab8 --- /dev/null +++ b/pkg/dialects/storm32/enum_gimbal_axis_calibration_required.go @@ -0,0 +1,47 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package storm32 + +import ( + "errors" +) + +type GIMBAL_AXIS_CALIBRATION_REQUIRED int + +const ( + // Whether or not this axis requires calibration is unknown at this time. + GIMBAL_AXIS_CALIBRATION_REQUIRED_UNKNOWN GIMBAL_AXIS_CALIBRATION_REQUIRED = 0 + // This axis requires calibration. + GIMBAL_AXIS_CALIBRATION_REQUIRED_TRUE GIMBAL_AXIS_CALIBRATION_REQUIRED = 1 + // This axis does not require calibration. + GIMBAL_AXIS_CALIBRATION_REQUIRED_FALSE GIMBAL_AXIS_CALIBRATION_REQUIRED = 2 +) + +var labels_GIMBAL_AXIS_CALIBRATION_REQUIRED = map[GIMBAL_AXIS_CALIBRATION_REQUIRED]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e GIMBAL_AXIS_CALIBRATION_REQUIRED) MarshalText() ([]byte, error) { + if l, ok := labels_GIMBAL_AXIS_CALIBRATION_REQUIRED[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_GIMBAL_AXIS_CALIBRATION_REQUIRED = map[string]GIMBAL_AXIS_CALIBRATION_REQUIRED{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *GIMBAL_AXIS_CALIBRATION_REQUIRED) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_GIMBAL_AXIS_CALIBRATION_REQUIRED[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e GIMBAL_AXIS_CALIBRATION_REQUIRED) String() string { + if l, ok := labels_GIMBAL_AXIS_CALIBRATION_REQUIRED[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/storm32/enum_gimbal_axis_calibration_status.go b/pkg/dialects/storm32/enum_gimbal_axis_calibration_status.go new file mode 100644 index 000000000..33c2c07e1 --- /dev/null +++ b/pkg/dialects/storm32/enum_gimbal_axis_calibration_status.go @@ -0,0 +1,47 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package storm32 + +import ( + "errors" +) + +type GIMBAL_AXIS_CALIBRATION_STATUS int + +const ( + // Axis calibration is in progress. + GIMBAL_AXIS_CALIBRATION_STATUS_IN_PROGRESS GIMBAL_AXIS_CALIBRATION_STATUS = 0 + // Axis calibration succeeded. + GIMBAL_AXIS_CALIBRATION_STATUS_SUCCEEDED GIMBAL_AXIS_CALIBRATION_STATUS = 1 + // Axis calibration failed. + GIMBAL_AXIS_CALIBRATION_STATUS_FAILED GIMBAL_AXIS_CALIBRATION_STATUS = 2 +) + +var labels_GIMBAL_AXIS_CALIBRATION_STATUS = map[GIMBAL_AXIS_CALIBRATION_STATUS]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e GIMBAL_AXIS_CALIBRATION_STATUS) MarshalText() ([]byte, error) { + if l, ok := labels_GIMBAL_AXIS_CALIBRATION_STATUS[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_GIMBAL_AXIS_CALIBRATION_STATUS = map[string]GIMBAL_AXIS_CALIBRATION_STATUS{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *GIMBAL_AXIS_CALIBRATION_STATUS) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_GIMBAL_AXIS_CALIBRATION_STATUS[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e GIMBAL_AXIS_CALIBRATION_STATUS) String() string { + if l, ok := labels_GIMBAL_AXIS_CALIBRATION_STATUS[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/storm32/enum_gimbal_device_cap_flags.go b/pkg/dialects/storm32/enum_gimbal_device_cap_flags.go new file mode 100644 index 000000000..4d3d1af4e --- /dev/null +++ b/pkg/dialects/storm32/enum_gimbal_device_cap_flags.go @@ -0,0 +1,66 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package storm32 + +import ( + "errors" +) + +// Gimbal device (low level) capability flags (bitmap) +type GIMBAL_DEVICE_CAP_FLAGS int + +const ( + // Gimbal device supports a retracted position + GIMBAL_DEVICE_CAP_FLAGS_HAS_RETRACT GIMBAL_DEVICE_CAP_FLAGS = 1 + // Gimbal device supports a horizontal, forward looking position, stabilized + GIMBAL_DEVICE_CAP_FLAGS_HAS_NEUTRAL GIMBAL_DEVICE_CAP_FLAGS = 2 + // Gimbal device supports rotating around roll axis. + GIMBAL_DEVICE_CAP_FLAGS_HAS_ROLL_AXIS GIMBAL_DEVICE_CAP_FLAGS = 4 + // Gimbal device supports to follow a roll angle relative to the vehicle + GIMBAL_DEVICE_CAP_FLAGS_HAS_ROLL_FOLLOW GIMBAL_DEVICE_CAP_FLAGS = 8 + // Gimbal device supports locking to an roll angle (generally that's the default with roll stabilized) + GIMBAL_DEVICE_CAP_FLAGS_HAS_ROLL_LOCK GIMBAL_DEVICE_CAP_FLAGS = 16 + // Gimbal device supports rotating around pitch axis. + GIMBAL_DEVICE_CAP_FLAGS_HAS_PITCH_AXIS GIMBAL_DEVICE_CAP_FLAGS = 32 + // Gimbal device supports to follow a pitch angle relative to the vehicle + GIMBAL_DEVICE_CAP_FLAGS_HAS_PITCH_FOLLOW GIMBAL_DEVICE_CAP_FLAGS = 64 + // Gimbal device supports locking to an pitch angle (generally that's the default with pitch stabilized) + GIMBAL_DEVICE_CAP_FLAGS_HAS_PITCH_LOCK GIMBAL_DEVICE_CAP_FLAGS = 128 + // Gimbal device supports rotating around yaw axis. + GIMBAL_DEVICE_CAP_FLAGS_HAS_YAW_AXIS GIMBAL_DEVICE_CAP_FLAGS = 256 + // Gimbal device supports to follow a yaw angle relative to the vehicle (generally that's the default) + GIMBAL_DEVICE_CAP_FLAGS_HAS_YAW_FOLLOW GIMBAL_DEVICE_CAP_FLAGS = 512 + // Gimbal device supports locking to an absolute heading (often this is an option available) + GIMBAL_DEVICE_CAP_FLAGS_HAS_YAW_LOCK GIMBAL_DEVICE_CAP_FLAGS = 1024 + // Gimbal device supports yawing/panning infinetely (e.g. using slip disk). + GIMBAL_DEVICE_CAP_FLAGS_SUPPORTS_INFINITE_YAW GIMBAL_DEVICE_CAP_FLAGS = 2048 +) + +var labels_GIMBAL_DEVICE_CAP_FLAGS = map[GIMBAL_DEVICE_CAP_FLAGS]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e GIMBAL_DEVICE_CAP_FLAGS) MarshalText() ([]byte, error) { + if l, ok := labels_GIMBAL_DEVICE_CAP_FLAGS[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_GIMBAL_DEVICE_CAP_FLAGS = map[string]GIMBAL_DEVICE_CAP_FLAGS{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *GIMBAL_DEVICE_CAP_FLAGS) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_GIMBAL_DEVICE_CAP_FLAGS[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e GIMBAL_DEVICE_CAP_FLAGS) String() string { + if l, ok := labels_GIMBAL_DEVICE_CAP_FLAGS[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/storm32/enum_gimbal_device_error_flags.go b/pkg/dialects/storm32/enum_gimbal_device_error_flags.go new file mode 100644 index 000000000..c6eb894b1 --- /dev/null +++ b/pkg/dialects/storm32/enum_gimbal_device_error_flags.go @@ -0,0 +1,60 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package storm32 + +import ( + "errors" +) + +// Gimbal device (low level) error flags (bitmap, 0 means no error) +type GIMBAL_DEVICE_ERROR_FLAGS int + +const ( + // Gimbal device is limited by hardware roll limit. + GIMBAL_DEVICE_ERROR_FLAGS_AT_ROLL_LIMIT GIMBAL_DEVICE_ERROR_FLAGS = 1 + // Gimbal device is limited by hardware pitch limit. + GIMBAL_DEVICE_ERROR_FLAGS_AT_PITCH_LIMIT GIMBAL_DEVICE_ERROR_FLAGS = 2 + // Gimbal device is limited by hardware yaw limit. + GIMBAL_DEVICE_ERROR_FLAGS_AT_YAW_LIMIT GIMBAL_DEVICE_ERROR_FLAGS = 4 + // There is an error with the gimbal encoders. + GIMBAL_DEVICE_ERROR_FLAGS_ENCODER_ERROR GIMBAL_DEVICE_ERROR_FLAGS = 8 + // There is an error with the gimbal power source. + GIMBAL_DEVICE_ERROR_FLAGS_POWER_ERROR GIMBAL_DEVICE_ERROR_FLAGS = 16 + // There is an error with the gimbal motor's. + GIMBAL_DEVICE_ERROR_FLAGS_MOTOR_ERROR GIMBAL_DEVICE_ERROR_FLAGS = 32 + // There is an error with the gimbal's software. + GIMBAL_DEVICE_ERROR_FLAGS_SOFTWARE_ERROR GIMBAL_DEVICE_ERROR_FLAGS = 64 + // There is an error with the gimbal's communication. + GIMBAL_DEVICE_ERROR_FLAGS_COMMS_ERROR GIMBAL_DEVICE_ERROR_FLAGS = 128 + // Gimbal is currently calibrating. + GIMBAL_DEVICE_ERROR_FLAGS_CALIBRATION_RUNNING GIMBAL_DEVICE_ERROR_FLAGS = 256 +) + +var labels_GIMBAL_DEVICE_ERROR_FLAGS = map[GIMBAL_DEVICE_ERROR_FLAGS]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e GIMBAL_DEVICE_ERROR_FLAGS) MarshalText() ([]byte, error) { + if l, ok := labels_GIMBAL_DEVICE_ERROR_FLAGS[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_GIMBAL_DEVICE_ERROR_FLAGS = map[string]GIMBAL_DEVICE_ERROR_FLAGS{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *GIMBAL_DEVICE_ERROR_FLAGS) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_GIMBAL_DEVICE_ERROR_FLAGS[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e GIMBAL_DEVICE_ERROR_FLAGS) String() string { + if l, ok := labels_GIMBAL_DEVICE_ERROR_FLAGS[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/storm32/enum_gimbal_device_flags.go b/pkg/dialects/storm32/enum_gimbal_device_flags.go new file mode 100644 index 000000000..496c5c127 --- /dev/null +++ b/pkg/dialects/storm32/enum_gimbal_device_flags.go @@ -0,0 +1,52 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package storm32 + +import ( + "errors" +) + +// Flags for gimbal device (lower level) operation. +type GIMBAL_DEVICE_FLAGS int + +const ( + // Set to retracted safe position (no stabilization), takes presedence over all other flags. + GIMBAL_DEVICE_FLAGS_RETRACT GIMBAL_DEVICE_FLAGS = 1 + // Set to neutral/default position, taking precedence over all other flags except RETRACT. Neutral is commonly forward-facing and horizontal (pitch=yaw=0) but may be any orientation. + GIMBAL_DEVICE_FLAGS_NEUTRAL GIMBAL_DEVICE_FLAGS = 2 + // Lock roll angle to absolute angle relative to horizon (not relative to drone). This is generally the default with a stabilizing gimbal. + GIMBAL_DEVICE_FLAGS_ROLL_LOCK GIMBAL_DEVICE_FLAGS = 4 + // Lock pitch angle to absolute angle relative to horizon (not relative to drone). This is generally the default. + GIMBAL_DEVICE_FLAGS_PITCH_LOCK GIMBAL_DEVICE_FLAGS = 8 + // Lock yaw angle to absolute angle relative to North (not relative to drone). If this flag is set, the quaternion is in the Earth frame with the x-axis pointing North (yaw absolute). If this flag is not set, the quaternion frame is in the Earth frame rotated so that the x-axis is pointing forward (yaw relative to vehicle). + GIMBAL_DEVICE_FLAGS_YAW_LOCK GIMBAL_DEVICE_FLAGS = 16 +) + +var labels_GIMBAL_DEVICE_FLAGS = map[GIMBAL_DEVICE_FLAGS]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e GIMBAL_DEVICE_FLAGS) MarshalText() ([]byte, error) { + if l, ok := labels_GIMBAL_DEVICE_FLAGS[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_GIMBAL_DEVICE_FLAGS = map[string]GIMBAL_DEVICE_FLAGS{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *GIMBAL_DEVICE_FLAGS) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_GIMBAL_DEVICE_FLAGS[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e GIMBAL_DEVICE_FLAGS) String() string { + if l, ok := labels_GIMBAL_DEVICE_FLAGS[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/storm32/enum_gimbal_manager_cap_flags.go b/pkg/dialects/storm32/enum_gimbal_manager_cap_flags.go new file mode 100644 index 000000000..cc8128a00 --- /dev/null +++ b/pkg/dialects/storm32/enum_gimbal_manager_cap_flags.go @@ -0,0 +1,70 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package storm32 + +import ( + "errors" +) + +// Gimbal manager high level capability flags (bitmap). The first 16 bits are identical to the GIMBAL_DEVICE_CAP_FLAGS. However, the gimbal manager does not need to copy the flags from the gimbal but can also enhance the capabilities and thus add flags. +type GIMBAL_MANAGER_CAP_FLAGS int + +const ( + // Based on GIMBAL_DEVICE_CAP_FLAGS_HAS_RETRACT. + GIMBAL_MANAGER_CAP_FLAGS_HAS_RETRACT GIMBAL_MANAGER_CAP_FLAGS = 1 + // Based on GIMBAL_DEVICE_CAP_FLAGS_HAS_NEUTRAL. + GIMBAL_MANAGER_CAP_FLAGS_HAS_NEUTRAL GIMBAL_MANAGER_CAP_FLAGS = 2 + // Based on GIMBAL_DEVICE_CAP_FLAGS_HAS_ROLL_AXIS. + GIMBAL_MANAGER_CAP_FLAGS_HAS_ROLL_AXIS GIMBAL_MANAGER_CAP_FLAGS = 4 + // Based on GIMBAL_DEVICE_CAP_FLAGS_HAS_ROLL_FOLLOW. + GIMBAL_MANAGER_CAP_FLAGS_HAS_ROLL_FOLLOW GIMBAL_MANAGER_CAP_FLAGS = 8 + // Based on GIMBAL_DEVICE_CAP_FLAGS_HAS_ROLL_LOCK. + GIMBAL_MANAGER_CAP_FLAGS_HAS_ROLL_LOCK GIMBAL_MANAGER_CAP_FLAGS = 16 + // Based on GIMBAL_DEVICE_CAP_FLAGS_HAS_PITCH_AXIS. + GIMBAL_MANAGER_CAP_FLAGS_HAS_PITCH_AXIS GIMBAL_MANAGER_CAP_FLAGS = 32 + // Based on GIMBAL_DEVICE_CAP_FLAGS_HAS_PITCH_FOLLOW. + GIMBAL_MANAGER_CAP_FLAGS_HAS_PITCH_FOLLOW GIMBAL_MANAGER_CAP_FLAGS = 64 + // Based on GIMBAL_DEVICE_CAP_FLAGS_HAS_PITCH_LOCK. + GIMBAL_MANAGER_CAP_FLAGS_HAS_PITCH_LOCK GIMBAL_MANAGER_CAP_FLAGS = 128 + // Based on GIMBAL_DEVICE_CAP_FLAGS_HAS_YAW_AXIS. + GIMBAL_MANAGER_CAP_FLAGS_HAS_YAW_AXIS GIMBAL_MANAGER_CAP_FLAGS = 256 + // Based on GIMBAL_DEVICE_CAP_FLAGS_HAS_YAW_FOLLOW. + GIMBAL_MANAGER_CAP_FLAGS_HAS_YAW_FOLLOW GIMBAL_MANAGER_CAP_FLAGS = 512 + // Based on GIMBAL_DEVICE_CAP_FLAGS_HAS_YAW_LOCK. + GIMBAL_MANAGER_CAP_FLAGS_HAS_YAW_LOCK GIMBAL_MANAGER_CAP_FLAGS = 1024 + // Based on GIMBAL_DEVICE_CAP_FLAGS_SUPPORTS_INFINITE_YAW. + GIMBAL_MANAGER_CAP_FLAGS_SUPPORTS_INFINITE_YAW GIMBAL_MANAGER_CAP_FLAGS = 2048 + // Gimbal manager supports to point to a local position. + GIMBAL_MANAGER_CAP_FLAGS_CAN_POINT_LOCATION_LOCAL GIMBAL_MANAGER_CAP_FLAGS = 65536 + // Gimbal manager supports to point to a global latitude, longitude, altitude position. + GIMBAL_MANAGER_CAP_FLAGS_CAN_POINT_LOCATION_GLOBAL GIMBAL_MANAGER_CAP_FLAGS = 131072 +) + +var labels_GIMBAL_MANAGER_CAP_FLAGS = map[GIMBAL_MANAGER_CAP_FLAGS]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e GIMBAL_MANAGER_CAP_FLAGS) MarshalText() ([]byte, error) { + if l, ok := labels_GIMBAL_MANAGER_CAP_FLAGS[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_GIMBAL_MANAGER_CAP_FLAGS = map[string]GIMBAL_MANAGER_CAP_FLAGS{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *GIMBAL_MANAGER_CAP_FLAGS) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_GIMBAL_MANAGER_CAP_FLAGS[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e GIMBAL_MANAGER_CAP_FLAGS) String() string { + if l, ok := labels_GIMBAL_MANAGER_CAP_FLAGS[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/storm32/enum_gimbal_manager_flags.go b/pkg/dialects/storm32/enum_gimbal_manager_flags.go new file mode 100644 index 000000000..ae8c9d4fd --- /dev/null +++ b/pkg/dialects/storm32/enum_gimbal_manager_flags.go @@ -0,0 +1,52 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package storm32 + +import ( + "errors" +) + +// Flags for high level gimbal manager operation The first 16 bits are identical to the GIMBAL_DEVICE_FLAGS. +type GIMBAL_MANAGER_FLAGS int + +const ( + // Based on GIMBAL_DEVICE_FLAGS_RETRACT + GIMBAL_MANAGER_FLAGS_RETRACT GIMBAL_MANAGER_FLAGS = 1 + // Based on GIMBAL_DEVICE_FLAGS_NEUTRAL + GIMBAL_MANAGER_FLAGS_NEUTRAL GIMBAL_MANAGER_FLAGS = 2 + // Based on GIMBAL_DEVICE_FLAGS_ROLL_LOCK + GIMBAL_MANAGER_FLAGS_ROLL_LOCK GIMBAL_MANAGER_FLAGS = 4 + // Based on GIMBAL_DEVICE_FLAGS_PITCH_LOCK + GIMBAL_MANAGER_FLAGS_PITCH_LOCK GIMBAL_MANAGER_FLAGS = 8 + // Based on GIMBAL_DEVICE_FLAGS_YAW_LOCK + GIMBAL_MANAGER_FLAGS_YAW_LOCK GIMBAL_MANAGER_FLAGS = 16 +) + +var labels_GIMBAL_MANAGER_FLAGS = map[GIMBAL_MANAGER_FLAGS]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e GIMBAL_MANAGER_FLAGS) MarshalText() ([]byte, error) { + if l, ok := labels_GIMBAL_MANAGER_FLAGS[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_GIMBAL_MANAGER_FLAGS = map[string]GIMBAL_MANAGER_FLAGS{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *GIMBAL_MANAGER_FLAGS) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_GIMBAL_MANAGER_FLAGS[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e GIMBAL_MANAGER_FLAGS) String() string { + if l, ok := labels_GIMBAL_MANAGER_FLAGS[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/storm32/enum_gopro_burst_rate.go b/pkg/dialects/storm32/enum_gopro_burst_rate.go new file mode 100644 index 000000000..2485dd1d1 --- /dev/null +++ b/pkg/dialects/storm32/enum_gopro_burst_rate.go @@ -0,0 +1,59 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package storm32 + +import ( + "errors" +) + +type GOPRO_BURST_RATE int + +const ( + // 3 Shots / 1 Second. + GOPRO_BURST_RATE_3_IN_1_SECOND GOPRO_BURST_RATE = 0 + // 5 Shots / 1 Second. + GOPRO_BURST_RATE_5_IN_1_SECOND GOPRO_BURST_RATE = 1 + // 10 Shots / 1 Second. + GOPRO_BURST_RATE_10_IN_1_SECOND GOPRO_BURST_RATE = 2 + // 10 Shots / 2 Second. + GOPRO_BURST_RATE_10_IN_2_SECOND GOPRO_BURST_RATE = 3 + // 10 Shots / 3 Second (Hero 4 Only). + GOPRO_BURST_RATE_10_IN_3_SECOND GOPRO_BURST_RATE = 4 + // 30 Shots / 1 Second. + GOPRO_BURST_RATE_30_IN_1_SECOND GOPRO_BURST_RATE = 5 + // 30 Shots / 2 Second. + GOPRO_BURST_RATE_30_IN_2_SECOND GOPRO_BURST_RATE = 6 + // 30 Shots / 3 Second. + GOPRO_BURST_RATE_30_IN_3_SECOND GOPRO_BURST_RATE = 7 + // 30 Shots / 6 Second. + GOPRO_BURST_RATE_30_IN_6_SECOND GOPRO_BURST_RATE = 8 +) + +var labels_GOPRO_BURST_RATE = map[GOPRO_BURST_RATE]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e GOPRO_BURST_RATE) MarshalText() ([]byte, error) { + if l, ok := labels_GOPRO_BURST_RATE[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_GOPRO_BURST_RATE = map[string]GOPRO_BURST_RATE{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *GOPRO_BURST_RATE) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_GOPRO_BURST_RATE[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e GOPRO_BURST_RATE) String() string { + if l, ok := labels_GOPRO_BURST_RATE[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/storm32/enum_gopro_capture_mode.go b/pkg/dialects/storm32/enum_gopro_capture_mode.go new file mode 100644 index 000000000..3cfa8a828 --- /dev/null +++ b/pkg/dialects/storm32/enum_gopro_capture_mode.go @@ -0,0 +1,57 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package storm32 + +import ( + "errors" +) + +type GOPRO_CAPTURE_MODE int + +const ( + // Video mode. + GOPRO_CAPTURE_MODE_VIDEO GOPRO_CAPTURE_MODE = 0 + // Photo mode. + GOPRO_CAPTURE_MODE_PHOTO GOPRO_CAPTURE_MODE = 1 + // Burst mode, Hero 3+ only. + GOPRO_CAPTURE_MODE_BURST GOPRO_CAPTURE_MODE = 2 + // Time lapse mode, Hero 3+ only. + GOPRO_CAPTURE_MODE_TIME_LAPSE GOPRO_CAPTURE_MODE = 3 + // Multi shot mode, Hero 4 only. + GOPRO_CAPTURE_MODE_MULTI_SHOT GOPRO_CAPTURE_MODE = 4 + // Playback mode, Hero 4 only, silver only except when LCD or HDMI is connected to black. + GOPRO_CAPTURE_MODE_PLAYBACK GOPRO_CAPTURE_MODE = 5 + // Playback mode, Hero 4 only. + GOPRO_CAPTURE_MODE_SETUP GOPRO_CAPTURE_MODE = 6 + // Mode not yet known. + GOPRO_CAPTURE_MODE_UNKNOWN GOPRO_CAPTURE_MODE = 255 +) + +var labels_GOPRO_CAPTURE_MODE = map[GOPRO_CAPTURE_MODE]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e GOPRO_CAPTURE_MODE) MarshalText() ([]byte, error) { + if l, ok := labels_GOPRO_CAPTURE_MODE[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_GOPRO_CAPTURE_MODE = map[string]GOPRO_CAPTURE_MODE{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *GOPRO_CAPTURE_MODE) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_GOPRO_CAPTURE_MODE[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e GOPRO_CAPTURE_MODE) String() string { + if l, ok := labels_GOPRO_CAPTURE_MODE[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/storm32/enum_gopro_charging.go b/pkg/dialects/storm32/enum_gopro_charging.go new file mode 100644 index 000000000..80c08621c --- /dev/null +++ b/pkg/dialects/storm32/enum_gopro_charging.go @@ -0,0 +1,45 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package storm32 + +import ( + "errors" +) + +type GOPRO_CHARGING int + +const ( + // Charging disabled. + GOPRO_CHARGING_DISABLED GOPRO_CHARGING = 0 + // Charging enabled. + GOPRO_CHARGING_ENABLED GOPRO_CHARGING = 1 +) + +var labels_GOPRO_CHARGING = map[GOPRO_CHARGING]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e GOPRO_CHARGING) MarshalText() ([]byte, error) { + if l, ok := labels_GOPRO_CHARGING[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_GOPRO_CHARGING = map[string]GOPRO_CHARGING{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *GOPRO_CHARGING) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_GOPRO_CHARGING[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e GOPRO_CHARGING) String() string { + if l, ok := labels_GOPRO_CHARGING[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/storm32/enum_gopro_command.go b/pkg/dialects/storm32/enum_gopro_command.go new file mode 100644 index 000000000..dce4209f2 --- /dev/null +++ b/pkg/dialects/storm32/enum_gopro_command.go @@ -0,0 +1,75 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package storm32 + +import ( + "errors" +) + +type GOPRO_COMMAND int + +const ( + // (Get/Set). + GOPRO_COMMAND_POWER GOPRO_COMMAND = 0 + // (Get/Set). + GOPRO_COMMAND_CAPTURE_MODE GOPRO_COMMAND = 1 + // (___/Set). + GOPRO_COMMAND_SHUTTER GOPRO_COMMAND = 2 + // (Get/___). + GOPRO_COMMAND_BATTERY GOPRO_COMMAND = 3 + // (Get/___). + GOPRO_COMMAND_MODEL GOPRO_COMMAND = 4 + // (Get/Set). + GOPRO_COMMAND_VIDEO_SETTINGS GOPRO_COMMAND = 5 + // (Get/Set). + GOPRO_COMMAND_LOW_LIGHT GOPRO_COMMAND = 6 + // (Get/Set). + GOPRO_COMMAND_PHOTO_RESOLUTION GOPRO_COMMAND = 7 + // (Get/Set). + GOPRO_COMMAND_PHOTO_BURST_RATE GOPRO_COMMAND = 8 + // (Get/Set). + GOPRO_COMMAND_PROTUNE GOPRO_COMMAND = 9 + // (Get/Set) Hero 3+ Only. + GOPRO_COMMAND_PROTUNE_WHITE_BALANCE GOPRO_COMMAND = 10 + // (Get/Set) Hero 3+ Only. + GOPRO_COMMAND_PROTUNE_COLOUR GOPRO_COMMAND = 11 + // (Get/Set) Hero 3+ Only. + GOPRO_COMMAND_PROTUNE_GAIN GOPRO_COMMAND = 12 + // (Get/Set) Hero 3+ Only. + GOPRO_COMMAND_PROTUNE_SHARPNESS GOPRO_COMMAND = 13 + // (Get/Set) Hero 3+ Only. + GOPRO_COMMAND_PROTUNE_EXPOSURE GOPRO_COMMAND = 14 + // (Get/Set). + GOPRO_COMMAND_TIME GOPRO_COMMAND = 15 + // (Get/Set). + GOPRO_COMMAND_CHARGING GOPRO_COMMAND = 16 +) + +var labels_GOPRO_COMMAND = map[GOPRO_COMMAND]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e GOPRO_COMMAND) MarshalText() ([]byte, error) { + if l, ok := labels_GOPRO_COMMAND[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_GOPRO_COMMAND = map[string]GOPRO_COMMAND{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *GOPRO_COMMAND) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_GOPRO_COMMAND[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e GOPRO_COMMAND) String() string { + if l, ok := labels_GOPRO_COMMAND[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/storm32/enum_gopro_field_of_view.go b/pkg/dialects/storm32/enum_gopro_field_of_view.go new file mode 100644 index 000000000..b021749bc --- /dev/null +++ b/pkg/dialects/storm32/enum_gopro_field_of_view.go @@ -0,0 +1,47 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package storm32 + +import ( + "errors" +) + +type GOPRO_FIELD_OF_VIEW int + +const ( + // 0x00: Wide. + GOPRO_FIELD_OF_VIEW_WIDE GOPRO_FIELD_OF_VIEW = 0 + // 0x01: Medium. + GOPRO_FIELD_OF_VIEW_MEDIUM GOPRO_FIELD_OF_VIEW = 1 + // 0x02: Narrow. + GOPRO_FIELD_OF_VIEW_NARROW GOPRO_FIELD_OF_VIEW = 2 +) + +var labels_GOPRO_FIELD_OF_VIEW = map[GOPRO_FIELD_OF_VIEW]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e GOPRO_FIELD_OF_VIEW) MarshalText() ([]byte, error) { + if l, ok := labels_GOPRO_FIELD_OF_VIEW[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_GOPRO_FIELD_OF_VIEW = map[string]GOPRO_FIELD_OF_VIEW{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *GOPRO_FIELD_OF_VIEW) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_GOPRO_FIELD_OF_VIEW[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e GOPRO_FIELD_OF_VIEW) String() string { + if l, ok := labels_GOPRO_FIELD_OF_VIEW[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/storm32/enum_gopro_frame_rate.go b/pkg/dialects/storm32/enum_gopro_frame_rate.go new file mode 100644 index 000000000..4bb5c2c50 --- /dev/null +++ b/pkg/dialects/storm32/enum_gopro_frame_rate.go @@ -0,0 +1,69 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package storm32 + +import ( + "errors" +) + +type GOPRO_FRAME_RATE int + +const ( + // 12 FPS. + GOPRO_FRAME_RATE_12 GOPRO_FRAME_RATE = 0 + // 15 FPS. + GOPRO_FRAME_RATE_15 GOPRO_FRAME_RATE = 1 + // 24 FPS. + GOPRO_FRAME_RATE_24 GOPRO_FRAME_RATE = 2 + // 25 FPS. + GOPRO_FRAME_RATE_25 GOPRO_FRAME_RATE = 3 + // 30 FPS. + GOPRO_FRAME_RATE_30 GOPRO_FRAME_RATE = 4 + // 48 FPS. + GOPRO_FRAME_RATE_48 GOPRO_FRAME_RATE = 5 + // 50 FPS. + GOPRO_FRAME_RATE_50 GOPRO_FRAME_RATE = 6 + // 60 FPS. + GOPRO_FRAME_RATE_60 GOPRO_FRAME_RATE = 7 + // 80 FPS. + GOPRO_FRAME_RATE_80 GOPRO_FRAME_RATE = 8 + // 90 FPS. + GOPRO_FRAME_RATE_90 GOPRO_FRAME_RATE = 9 + // 100 FPS. + GOPRO_FRAME_RATE_100 GOPRO_FRAME_RATE = 10 + // 120 FPS. + GOPRO_FRAME_RATE_120 GOPRO_FRAME_RATE = 11 + // 240 FPS. + GOPRO_FRAME_RATE_240 GOPRO_FRAME_RATE = 12 + // 12.5 FPS. + GOPRO_FRAME_RATE_12_5 GOPRO_FRAME_RATE = 13 +) + +var labels_GOPRO_FRAME_RATE = map[GOPRO_FRAME_RATE]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e GOPRO_FRAME_RATE) MarshalText() ([]byte, error) { + if l, ok := labels_GOPRO_FRAME_RATE[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_GOPRO_FRAME_RATE = map[string]GOPRO_FRAME_RATE{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *GOPRO_FRAME_RATE) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_GOPRO_FRAME_RATE[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e GOPRO_FRAME_RATE) String() string { + if l, ok := labels_GOPRO_FRAME_RATE[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/storm32/enum_gopro_heartbeat_flags.go b/pkg/dialects/storm32/enum_gopro_heartbeat_flags.go new file mode 100644 index 000000000..ed5eee322 --- /dev/null +++ b/pkg/dialects/storm32/enum_gopro_heartbeat_flags.go @@ -0,0 +1,43 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package storm32 + +import ( + "errors" +) + +type GOPRO_HEARTBEAT_FLAGS int + +const ( + // GoPro is currently recording. + GOPRO_FLAG_RECORDING GOPRO_HEARTBEAT_FLAGS = 1 +) + +var labels_GOPRO_HEARTBEAT_FLAGS = map[GOPRO_HEARTBEAT_FLAGS]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e GOPRO_HEARTBEAT_FLAGS) MarshalText() ([]byte, error) { + if l, ok := labels_GOPRO_HEARTBEAT_FLAGS[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_GOPRO_HEARTBEAT_FLAGS = map[string]GOPRO_HEARTBEAT_FLAGS{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *GOPRO_HEARTBEAT_FLAGS) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_GOPRO_HEARTBEAT_FLAGS[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e GOPRO_HEARTBEAT_FLAGS) String() string { + if l, ok := labels_GOPRO_HEARTBEAT_FLAGS[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/storm32/enum_gopro_heartbeat_status.go b/pkg/dialects/storm32/enum_gopro_heartbeat_status.go new file mode 100644 index 000000000..1e69c70b6 --- /dev/null +++ b/pkg/dialects/storm32/enum_gopro_heartbeat_status.go @@ -0,0 +1,49 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package storm32 + +import ( + "errors" +) + +type GOPRO_HEARTBEAT_STATUS int + +const ( + // No GoPro connected. + GOPRO_HEARTBEAT_STATUS_DISCONNECTED GOPRO_HEARTBEAT_STATUS = 0 + // The detected GoPro is not HeroBus compatible. + GOPRO_HEARTBEAT_STATUS_INCOMPATIBLE GOPRO_HEARTBEAT_STATUS = 1 + // A HeroBus compatible GoPro is connected. + GOPRO_HEARTBEAT_STATUS_CONNECTED GOPRO_HEARTBEAT_STATUS = 2 + // An unrecoverable error was encountered with the connected GoPro, it may require a power cycle. + GOPRO_HEARTBEAT_STATUS_ERROR GOPRO_HEARTBEAT_STATUS = 3 +) + +var labels_GOPRO_HEARTBEAT_STATUS = map[GOPRO_HEARTBEAT_STATUS]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e GOPRO_HEARTBEAT_STATUS) MarshalText() ([]byte, error) { + if l, ok := labels_GOPRO_HEARTBEAT_STATUS[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_GOPRO_HEARTBEAT_STATUS = map[string]GOPRO_HEARTBEAT_STATUS{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *GOPRO_HEARTBEAT_STATUS) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_GOPRO_HEARTBEAT_STATUS[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e GOPRO_HEARTBEAT_STATUS) String() string { + if l, ok := labels_GOPRO_HEARTBEAT_STATUS[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/storm32/enum_gopro_model.go b/pkg/dialects/storm32/enum_gopro_model.go new file mode 100644 index 000000000..d815226e9 --- /dev/null +++ b/pkg/dialects/storm32/enum_gopro_model.go @@ -0,0 +1,51 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package storm32 + +import ( + "errors" +) + +type GOPRO_MODEL int + +const ( + // Unknown gopro model. + GOPRO_MODEL_UNKNOWN GOPRO_MODEL = 0 + // Hero 3+ Silver (HeroBus not supported by GoPro). + GOPRO_MODEL_HERO_3_PLUS_SILVER GOPRO_MODEL = 1 + // Hero 3+ Black. + GOPRO_MODEL_HERO_3_PLUS_BLACK GOPRO_MODEL = 2 + // Hero 4 Silver. + GOPRO_MODEL_HERO_4_SILVER GOPRO_MODEL = 3 + // Hero 4 Black. + GOPRO_MODEL_HERO_4_BLACK GOPRO_MODEL = 4 +) + +var labels_GOPRO_MODEL = map[GOPRO_MODEL]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e GOPRO_MODEL) MarshalText() ([]byte, error) { + if l, ok := labels_GOPRO_MODEL[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_GOPRO_MODEL = map[string]GOPRO_MODEL{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *GOPRO_MODEL) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_GOPRO_MODEL[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e GOPRO_MODEL) String() string { + if l, ok := labels_GOPRO_MODEL[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/storm32/enum_gopro_photo_resolution.go b/pkg/dialects/storm32/enum_gopro_photo_resolution.go new file mode 100644 index 000000000..0c04ff112 --- /dev/null +++ b/pkg/dialects/storm32/enum_gopro_photo_resolution.go @@ -0,0 +1,51 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package storm32 + +import ( + "errors" +) + +type GOPRO_PHOTO_RESOLUTION int + +const ( + // 5MP Medium. + GOPRO_PHOTO_RESOLUTION_5MP_MEDIUM GOPRO_PHOTO_RESOLUTION = 0 + // 7MP Medium. + GOPRO_PHOTO_RESOLUTION_7MP_MEDIUM GOPRO_PHOTO_RESOLUTION = 1 + // 7MP Wide. + GOPRO_PHOTO_RESOLUTION_7MP_WIDE GOPRO_PHOTO_RESOLUTION = 2 + // 10MP Wide. + GOPRO_PHOTO_RESOLUTION_10MP_WIDE GOPRO_PHOTO_RESOLUTION = 3 + // 12MP Wide. + GOPRO_PHOTO_RESOLUTION_12MP_WIDE GOPRO_PHOTO_RESOLUTION = 4 +) + +var labels_GOPRO_PHOTO_RESOLUTION = map[GOPRO_PHOTO_RESOLUTION]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e GOPRO_PHOTO_RESOLUTION) MarshalText() ([]byte, error) { + if l, ok := labels_GOPRO_PHOTO_RESOLUTION[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_GOPRO_PHOTO_RESOLUTION = map[string]GOPRO_PHOTO_RESOLUTION{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *GOPRO_PHOTO_RESOLUTION) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_GOPRO_PHOTO_RESOLUTION[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e GOPRO_PHOTO_RESOLUTION) String() string { + if l, ok := labels_GOPRO_PHOTO_RESOLUTION[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/storm32/enum_gopro_protune_colour.go b/pkg/dialects/storm32/enum_gopro_protune_colour.go new file mode 100644 index 000000000..6c7b2bdad --- /dev/null +++ b/pkg/dialects/storm32/enum_gopro_protune_colour.go @@ -0,0 +1,45 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package storm32 + +import ( + "errors" +) + +type GOPRO_PROTUNE_COLOUR int + +const ( + // Auto. + GOPRO_PROTUNE_COLOUR_STANDARD GOPRO_PROTUNE_COLOUR = 0 + // Neutral. + GOPRO_PROTUNE_COLOUR_NEUTRAL GOPRO_PROTUNE_COLOUR = 1 +) + +var labels_GOPRO_PROTUNE_COLOUR = map[GOPRO_PROTUNE_COLOUR]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e GOPRO_PROTUNE_COLOUR) MarshalText() ([]byte, error) { + if l, ok := labels_GOPRO_PROTUNE_COLOUR[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_GOPRO_PROTUNE_COLOUR = map[string]GOPRO_PROTUNE_COLOUR{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *GOPRO_PROTUNE_COLOUR) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_GOPRO_PROTUNE_COLOUR[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e GOPRO_PROTUNE_COLOUR) String() string { + if l, ok := labels_GOPRO_PROTUNE_COLOUR[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/storm32/enum_gopro_protune_exposure.go b/pkg/dialects/storm32/enum_gopro_protune_exposure.go new file mode 100644 index 000000000..c8452edca --- /dev/null +++ b/pkg/dialects/storm32/enum_gopro_protune_exposure.go @@ -0,0 +1,83 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package storm32 + +import ( + "errors" +) + +type GOPRO_PROTUNE_EXPOSURE int + +const ( + // -5.0 EV (Hero 3+ Only). + GOPRO_PROTUNE_EXPOSURE_NEG_5_0 GOPRO_PROTUNE_EXPOSURE = 0 + // -4.5 EV (Hero 3+ Only). + GOPRO_PROTUNE_EXPOSURE_NEG_4_5 GOPRO_PROTUNE_EXPOSURE = 1 + // -4.0 EV (Hero 3+ Only). + GOPRO_PROTUNE_EXPOSURE_NEG_4_0 GOPRO_PROTUNE_EXPOSURE = 2 + // -3.5 EV (Hero 3+ Only). + GOPRO_PROTUNE_EXPOSURE_NEG_3_5 GOPRO_PROTUNE_EXPOSURE = 3 + // -3.0 EV (Hero 3+ Only). + GOPRO_PROTUNE_EXPOSURE_NEG_3_0 GOPRO_PROTUNE_EXPOSURE = 4 + // -2.5 EV (Hero 3+ Only). + GOPRO_PROTUNE_EXPOSURE_NEG_2_5 GOPRO_PROTUNE_EXPOSURE = 5 + // -2.0 EV. + GOPRO_PROTUNE_EXPOSURE_NEG_2_0 GOPRO_PROTUNE_EXPOSURE = 6 + // -1.5 EV. + GOPRO_PROTUNE_EXPOSURE_NEG_1_5 GOPRO_PROTUNE_EXPOSURE = 7 + // -1.0 EV. + GOPRO_PROTUNE_EXPOSURE_NEG_1_0 GOPRO_PROTUNE_EXPOSURE = 8 + // -0.5 EV. + GOPRO_PROTUNE_EXPOSURE_NEG_0_5 GOPRO_PROTUNE_EXPOSURE = 9 + // 0.0 EV. + GOPRO_PROTUNE_EXPOSURE_ZERO GOPRO_PROTUNE_EXPOSURE = 10 + // +0.5 EV. + GOPRO_PROTUNE_EXPOSURE_POS_0_5 GOPRO_PROTUNE_EXPOSURE = 11 + // +1.0 EV. + GOPRO_PROTUNE_EXPOSURE_POS_1_0 GOPRO_PROTUNE_EXPOSURE = 12 + // +1.5 EV. + GOPRO_PROTUNE_EXPOSURE_POS_1_5 GOPRO_PROTUNE_EXPOSURE = 13 + // +2.0 EV. + GOPRO_PROTUNE_EXPOSURE_POS_2_0 GOPRO_PROTUNE_EXPOSURE = 14 + // +2.5 EV (Hero 3+ Only). + GOPRO_PROTUNE_EXPOSURE_POS_2_5 GOPRO_PROTUNE_EXPOSURE = 15 + // +3.0 EV (Hero 3+ Only). + GOPRO_PROTUNE_EXPOSURE_POS_3_0 GOPRO_PROTUNE_EXPOSURE = 16 + // +3.5 EV (Hero 3+ Only). + GOPRO_PROTUNE_EXPOSURE_POS_3_5 GOPRO_PROTUNE_EXPOSURE = 17 + // +4.0 EV (Hero 3+ Only). + GOPRO_PROTUNE_EXPOSURE_POS_4_0 GOPRO_PROTUNE_EXPOSURE = 18 + // +4.5 EV (Hero 3+ Only). + GOPRO_PROTUNE_EXPOSURE_POS_4_5 GOPRO_PROTUNE_EXPOSURE = 19 + // +5.0 EV (Hero 3+ Only). + GOPRO_PROTUNE_EXPOSURE_POS_5_0 GOPRO_PROTUNE_EXPOSURE = 20 +) + +var labels_GOPRO_PROTUNE_EXPOSURE = map[GOPRO_PROTUNE_EXPOSURE]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e GOPRO_PROTUNE_EXPOSURE) MarshalText() ([]byte, error) { + if l, ok := labels_GOPRO_PROTUNE_EXPOSURE[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_GOPRO_PROTUNE_EXPOSURE = map[string]GOPRO_PROTUNE_EXPOSURE{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *GOPRO_PROTUNE_EXPOSURE) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_GOPRO_PROTUNE_EXPOSURE[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e GOPRO_PROTUNE_EXPOSURE) String() string { + if l, ok := labels_GOPRO_PROTUNE_EXPOSURE[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/storm32/enum_gopro_protune_gain.go b/pkg/dialects/storm32/enum_gopro_protune_gain.go new file mode 100644 index 000000000..dd0d461e2 --- /dev/null +++ b/pkg/dialects/storm32/enum_gopro_protune_gain.go @@ -0,0 +1,51 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package storm32 + +import ( + "errors" +) + +type GOPRO_PROTUNE_GAIN int + +const ( + // ISO 400. + GOPRO_PROTUNE_GAIN_400 GOPRO_PROTUNE_GAIN = 0 + // ISO 800 (Only Hero 4). + GOPRO_PROTUNE_GAIN_800 GOPRO_PROTUNE_GAIN = 1 + // ISO 1600. + GOPRO_PROTUNE_GAIN_1600 GOPRO_PROTUNE_GAIN = 2 + // ISO 3200 (Only Hero 4). + GOPRO_PROTUNE_GAIN_3200 GOPRO_PROTUNE_GAIN = 3 + // ISO 6400. + GOPRO_PROTUNE_GAIN_6400 GOPRO_PROTUNE_GAIN = 4 +) + +var labels_GOPRO_PROTUNE_GAIN = map[GOPRO_PROTUNE_GAIN]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e GOPRO_PROTUNE_GAIN) MarshalText() ([]byte, error) { + if l, ok := labels_GOPRO_PROTUNE_GAIN[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_GOPRO_PROTUNE_GAIN = map[string]GOPRO_PROTUNE_GAIN{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *GOPRO_PROTUNE_GAIN) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_GOPRO_PROTUNE_GAIN[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e GOPRO_PROTUNE_GAIN) String() string { + if l, ok := labels_GOPRO_PROTUNE_GAIN[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/storm32/enum_gopro_protune_sharpness.go b/pkg/dialects/storm32/enum_gopro_protune_sharpness.go new file mode 100644 index 000000000..eeb05059d --- /dev/null +++ b/pkg/dialects/storm32/enum_gopro_protune_sharpness.go @@ -0,0 +1,47 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package storm32 + +import ( + "errors" +) + +type GOPRO_PROTUNE_SHARPNESS int + +const ( + // Low Sharpness. + GOPRO_PROTUNE_SHARPNESS_LOW GOPRO_PROTUNE_SHARPNESS = 0 + // Medium Sharpness. + GOPRO_PROTUNE_SHARPNESS_MEDIUM GOPRO_PROTUNE_SHARPNESS = 1 + // High Sharpness. + GOPRO_PROTUNE_SHARPNESS_HIGH GOPRO_PROTUNE_SHARPNESS = 2 +) + +var labels_GOPRO_PROTUNE_SHARPNESS = map[GOPRO_PROTUNE_SHARPNESS]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e GOPRO_PROTUNE_SHARPNESS) MarshalText() ([]byte, error) { + if l, ok := labels_GOPRO_PROTUNE_SHARPNESS[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_GOPRO_PROTUNE_SHARPNESS = map[string]GOPRO_PROTUNE_SHARPNESS{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *GOPRO_PROTUNE_SHARPNESS) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_GOPRO_PROTUNE_SHARPNESS[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e GOPRO_PROTUNE_SHARPNESS) String() string { + if l, ok := labels_GOPRO_PROTUNE_SHARPNESS[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/storm32/enum_gopro_protune_white_balance.go b/pkg/dialects/storm32/enum_gopro_protune_white_balance.go new file mode 100644 index 000000000..a375c536c --- /dev/null +++ b/pkg/dialects/storm32/enum_gopro_protune_white_balance.go @@ -0,0 +1,51 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package storm32 + +import ( + "errors" +) + +type GOPRO_PROTUNE_WHITE_BALANCE int + +const ( + // Auto. + GOPRO_PROTUNE_WHITE_BALANCE_AUTO GOPRO_PROTUNE_WHITE_BALANCE = 0 + // 3000K. + GOPRO_PROTUNE_WHITE_BALANCE_3000K GOPRO_PROTUNE_WHITE_BALANCE = 1 + // 5500K. + GOPRO_PROTUNE_WHITE_BALANCE_5500K GOPRO_PROTUNE_WHITE_BALANCE = 2 + // 6500K. + GOPRO_PROTUNE_WHITE_BALANCE_6500K GOPRO_PROTUNE_WHITE_BALANCE = 3 + // Camera Raw. + GOPRO_PROTUNE_WHITE_BALANCE_RAW GOPRO_PROTUNE_WHITE_BALANCE = 4 +) + +var labels_GOPRO_PROTUNE_WHITE_BALANCE = map[GOPRO_PROTUNE_WHITE_BALANCE]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e GOPRO_PROTUNE_WHITE_BALANCE) MarshalText() ([]byte, error) { + if l, ok := labels_GOPRO_PROTUNE_WHITE_BALANCE[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_GOPRO_PROTUNE_WHITE_BALANCE = map[string]GOPRO_PROTUNE_WHITE_BALANCE{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *GOPRO_PROTUNE_WHITE_BALANCE) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_GOPRO_PROTUNE_WHITE_BALANCE[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e GOPRO_PROTUNE_WHITE_BALANCE) String() string { + if l, ok := labels_GOPRO_PROTUNE_WHITE_BALANCE[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/storm32/enum_gopro_request_status.go b/pkg/dialects/storm32/enum_gopro_request_status.go new file mode 100644 index 000000000..5ebe2c024 --- /dev/null +++ b/pkg/dialects/storm32/enum_gopro_request_status.go @@ -0,0 +1,45 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package storm32 + +import ( + "errors" +) + +type GOPRO_REQUEST_STATUS int + +const ( + // The write message with ID indicated succeeded. + GOPRO_REQUEST_SUCCESS GOPRO_REQUEST_STATUS = 0 + // The write message with ID indicated failed. + GOPRO_REQUEST_FAILED GOPRO_REQUEST_STATUS = 1 +) + +var labels_GOPRO_REQUEST_STATUS = map[GOPRO_REQUEST_STATUS]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e GOPRO_REQUEST_STATUS) MarshalText() ([]byte, error) { + if l, ok := labels_GOPRO_REQUEST_STATUS[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_GOPRO_REQUEST_STATUS = map[string]GOPRO_REQUEST_STATUS{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *GOPRO_REQUEST_STATUS) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_GOPRO_REQUEST_STATUS[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e GOPRO_REQUEST_STATUS) String() string { + if l, ok := labels_GOPRO_REQUEST_STATUS[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/storm32/enum_gopro_resolution.go b/pkg/dialects/storm32/enum_gopro_resolution.go new file mode 100644 index 000000000..84db3a1b1 --- /dev/null +++ b/pkg/dialects/storm32/enum_gopro_resolution.go @@ -0,0 +1,69 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package storm32 + +import ( + "errors" +) + +type GOPRO_RESOLUTION int + +const ( + // 848 x 480 (480p). + GOPRO_RESOLUTION_480p GOPRO_RESOLUTION = 0 + // 1280 x 720 (720p). + GOPRO_RESOLUTION_720p GOPRO_RESOLUTION = 1 + // 1280 x 960 (960p). + GOPRO_RESOLUTION_960p GOPRO_RESOLUTION = 2 + // 1920 x 1080 (1080p). + GOPRO_RESOLUTION_1080p GOPRO_RESOLUTION = 3 + // 1920 x 1440 (1440p). + GOPRO_RESOLUTION_1440p GOPRO_RESOLUTION = 4 + // 2704 x 1440 (2.7k-17:9). + GOPRO_RESOLUTION_2_7k_17_9 GOPRO_RESOLUTION = 5 + // 2704 x 1524 (2.7k-16:9). + GOPRO_RESOLUTION_2_7k_16_9 GOPRO_RESOLUTION = 6 + // 2704 x 2028 (2.7k-4:3). + GOPRO_RESOLUTION_2_7k_4_3 GOPRO_RESOLUTION = 7 + // 3840 x 2160 (4k-16:9). + GOPRO_RESOLUTION_4k_16_9 GOPRO_RESOLUTION = 8 + // 4096 x 2160 (4k-17:9). + GOPRO_RESOLUTION_4k_17_9 GOPRO_RESOLUTION = 9 + // 1280 x 720 (720p-SuperView). + GOPRO_RESOLUTION_720p_SUPERVIEW GOPRO_RESOLUTION = 10 + // 1920 x 1080 (1080p-SuperView). + GOPRO_RESOLUTION_1080p_SUPERVIEW GOPRO_RESOLUTION = 11 + // 2704 x 1520 (2.7k-SuperView). + GOPRO_RESOLUTION_2_7k_SUPERVIEW GOPRO_RESOLUTION = 12 + // 3840 x 2160 (4k-SuperView). + GOPRO_RESOLUTION_4k_SUPERVIEW GOPRO_RESOLUTION = 13 +) + +var labels_GOPRO_RESOLUTION = map[GOPRO_RESOLUTION]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e GOPRO_RESOLUTION) MarshalText() ([]byte, error) { + if l, ok := labels_GOPRO_RESOLUTION[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_GOPRO_RESOLUTION = map[string]GOPRO_RESOLUTION{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *GOPRO_RESOLUTION) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_GOPRO_RESOLUTION[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e GOPRO_RESOLUTION) String() string { + if l, ok := labels_GOPRO_RESOLUTION[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/storm32/enum_gopro_video_settings_flags.go b/pkg/dialects/storm32/enum_gopro_video_settings_flags.go new file mode 100644 index 000000000..ca7d7dbca --- /dev/null +++ b/pkg/dialects/storm32/enum_gopro_video_settings_flags.go @@ -0,0 +1,43 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package storm32 + +import ( + "errors" +) + +type GOPRO_VIDEO_SETTINGS_FLAGS int + +const ( + // 0=NTSC, 1=PAL. + GOPRO_VIDEO_SETTINGS_TV_MODE GOPRO_VIDEO_SETTINGS_FLAGS = 1 +) + +var labels_GOPRO_VIDEO_SETTINGS_FLAGS = map[GOPRO_VIDEO_SETTINGS_FLAGS]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e GOPRO_VIDEO_SETTINGS_FLAGS) MarshalText() ([]byte, error) { + if l, ok := labels_GOPRO_VIDEO_SETTINGS_FLAGS[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_GOPRO_VIDEO_SETTINGS_FLAGS = map[string]GOPRO_VIDEO_SETTINGS_FLAGS{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *GOPRO_VIDEO_SETTINGS_FLAGS) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_GOPRO_VIDEO_SETTINGS_FLAGS[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e GOPRO_VIDEO_SETTINGS_FLAGS) String() string { + if l, ok := labels_GOPRO_VIDEO_SETTINGS_FLAGS[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/storm32/enum_gps_fix_type.go b/pkg/dialects/storm32/enum_gps_fix_type.go new file mode 100644 index 000000000..df27aea64 --- /dev/null +++ b/pkg/dialects/storm32/enum_gps_fix_type.go @@ -0,0 +1,60 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package storm32 + +import ( + "errors" +) + +// Type of GPS fix +type GPS_FIX_TYPE int + +const ( + // No GPS connected + GPS_FIX_TYPE_NO_GPS GPS_FIX_TYPE = 0 + // No position information, GPS is connected + GPS_FIX_TYPE_NO_FIX GPS_FIX_TYPE = 1 + // 2D position + GPS_FIX_TYPE_2D_FIX GPS_FIX_TYPE = 2 + // 3D position + GPS_FIX_TYPE_3D_FIX GPS_FIX_TYPE = 3 + // DGPS/SBAS aided 3D position + GPS_FIX_TYPE_DGPS GPS_FIX_TYPE = 4 + // RTK float, 3D position + GPS_FIX_TYPE_RTK_FLOAT GPS_FIX_TYPE = 5 + // RTK Fixed, 3D position + GPS_FIX_TYPE_RTK_FIXED GPS_FIX_TYPE = 6 + // Static fixed, typically used for base stations + GPS_FIX_TYPE_STATIC GPS_FIX_TYPE = 7 + // PPP, 3D position. + GPS_FIX_TYPE_PPP GPS_FIX_TYPE = 8 +) + +var labels_GPS_FIX_TYPE = map[GPS_FIX_TYPE]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e GPS_FIX_TYPE) MarshalText() ([]byte, error) { + if l, ok := labels_GPS_FIX_TYPE[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_GPS_FIX_TYPE = map[string]GPS_FIX_TYPE{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *GPS_FIX_TYPE) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_GPS_FIX_TYPE[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e GPS_FIX_TYPE) String() string { + if l, ok := labels_GPS_FIX_TYPE[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/storm32/enum_gps_input_ignore_flags.go b/pkg/dialects/storm32/enum_gps_input_ignore_flags.go new file mode 100644 index 000000000..6ae38251b --- /dev/null +++ b/pkg/dialects/storm32/enum_gps_input_ignore_flags.go @@ -0,0 +1,57 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package storm32 + +import ( + "errors" +) + +type GPS_INPUT_IGNORE_FLAGS int + +const ( + // ignore altitude field + GPS_INPUT_IGNORE_FLAG_ALT GPS_INPUT_IGNORE_FLAGS = 1 + // ignore hdop field + GPS_INPUT_IGNORE_FLAG_HDOP GPS_INPUT_IGNORE_FLAGS = 2 + // ignore vdop field + GPS_INPUT_IGNORE_FLAG_VDOP GPS_INPUT_IGNORE_FLAGS = 4 + // ignore horizontal velocity field (vn and ve) + GPS_INPUT_IGNORE_FLAG_VEL_HORIZ GPS_INPUT_IGNORE_FLAGS = 8 + // ignore vertical velocity field (vd) + GPS_INPUT_IGNORE_FLAG_VEL_VERT GPS_INPUT_IGNORE_FLAGS = 16 + // ignore speed accuracy field + GPS_INPUT_IGNORE_FLAG_SPEED_ACCURACY GPS_INPUT_IGNORE_FLAGS = 32 + // ignore horizontal accuracy field + GPS_INPUT_IGNORE_FLAG_HORIZONTAL_ACCURACY GPS_INPUT_IGNORE_FLAGS = 64 + // ignore vertical accuracy field + GPS_INPUT_IGNORE_FLAG_VERTICAL_ACCURACY GPS_INPUT_IGNORE_FLAGS = 128 +) + +var labels_GPS_INPUT_IGNORE_FLAGS = map[GPS_INPUT_IGNORE_FLAGS]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e GPS_INPUT_IGNORE_FLAGS) MarshalText() ([]byte, error) { + if l, ok := labels_GPS_INPUT_IGNORE_FLAGS[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_GPS_INPUT_IGNORE_FLAGS = map[string]GPS_INPUT_IGNORE_FLAGS{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *GPS_INPUT_IGNORE_FLAGS) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_GPS_INPUT_IGNORE_FLAGS[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e GPS_INPUT_IGNORE_FLAGS) String() string { + if l, ok := labels_GPS_INPUT_IGNORE_FLAGS[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/storm32/enum_gripper_actions.go b/pkg/dialects/storm32/enum_gripper_actions.go new file mode 100644 index 000000000..8003bf183 --- /dev/null +++ b/pkg/dialects/storm32/enum_gripper_actions.go @@ -0,0 +1,46 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package storm32 + +import ( + "errors" +) + +// Gripper actions. +type GRIPPER_ACTIONS int + +const ( + // Gripper release cargo. + GRIPPER_ACTION_RELEASE GRIPPER_ACTIONS = 0 + // Gripper grab onto cargo. + GRIPPER_ACTION_GRAB GRIPPER_ACTIONS = 1 +) + +var labels_GRIPPER_ACTIONS = map[GRIPPER_ACTIONS]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e GRIPPER_ACTIONS) MarshalText() ([]byte, error) { + if l, ok := labels_GRIPPER_ACTIONS[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_GRIPPER_ACTIONS = map[string]GRIPPER_ACTIONS{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *GRIPPER_ACTIONS) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_GRIPPER_ACTIONS[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e GRIPPER_ACTIONS) String() string { + if l, ok := labels_GRIPPER_ACTIONS[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/storm32/enum_heading_type.go b/pkg/dialects/storm32/enum_heading_type.go new file mode 100644 index 000000000..3dbf0aab1 --- /dev/null +++ b/pkg/dialects/storm32/enum_heading_type.go @@ -0,0 +1,43 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package storm32 + +import ( + "errors" +) + +type HEADING_TYPE int + +const ( + HEADING_TYPE_COURSE_OVER_GROUND HEADING_TYPE = 0 + HEADING_TYPE_HEADING HEADING_TYPE = 1 +) + +var labels_HEADING_TYPE = map[HEADING_TYPE]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e HEADING_TYPE) MarshalText() ([]byte, error) { + if l, ok := labels_HEADING_TYPE[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_HEADING_TYPE = map[string]HEADING_TYPE{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *HEADING_TYPE) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_HEADING_TYPE[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e HEADING_TYPE) String() string { + if l, ok := labels_HEADING_TYPE[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/storm32/enum_highres_imu_updated_flags.go b/pkg/dialects/storm32/enum_highres_imu_updated_flags.go new file mode 100644 index 000000000..1dc71daf2 --- /dev/null +++ b/pkg/dialects/storm32/enum_highres_imu_updated_flags.go @@ -0,0 +1,72 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package storm32 + +import ( + "errors" +) + +// Flags in the HIGHRES_IMU message indicate which fields have updated since the last message +type HIGHRES_IMU_UPDATED_FLAGS int + +const ( + // None of the fields in HIGHRES_IMU have been updated + HIGHRES_IMU_UPDATED_NONE HIGHRES_IMU_UPDATED_FLAGS = 0 + // The value in the xacc field has been updated + HIGHRES_IMU_UPDATED_XACC HIGHRES_IMU_UPDATED_FLAGS = 1 + // The value in the yacc field has been updated + HIGHRES_IMU_UPDATED_YACC HIGHRES_IMU_UPDATED_FLAGS = 2 + // The value in the zacc field has been updated since + HIGHRES_IMU_UPDATED_ZACC HIGHRES_IMU_UPDATED_FLAGS = 4 + // The value in the xgyro field has been updated + HIGHRES_IMU_UPDATED_XGYRO HIGHRES_IMU_UPDATED_FLAGS = 8 + // The value in the ygyro field has been updated + HIGHRES_IMU_UPDATED_YGYRO HIGHRES_IMU_UPDATED_FLAGS = 16 + // The value in the zgyro field has been updated + HIGHRES_IMU_UPDATED_ZGYRO HIGHRES_IMU_UPDATED_FLAGS = 32 + // The value in the xmag field has been updated + HIGHRES_IMU_UPDATED_XMAG HIGHRES_IMU_UPDATED_FLAGS = 64 + // The value in the ymag field has been updated + HIGHRES_IMU_UPDATED_YMAG HIGHRES_IMU_UPDATED_FLAGS = 128 + // The value in the zmag field has been updated + HIGHRES_IMU_UPDATED_ZMAG HIGHRES_IMU_UPDATED_FLAGS = 256 + // The value in the abs_pressure field has been updated + HIGHRES_IMU_UPDATED_ABS_PRESSURE HIGHRES_IMU_UPDATED_FLAGS = 512 + // The value in the diff_pressure field has been updated + HIGHRES_IMU_UPDATED_DIFF_PRESSURE HIGHRES_IMU_UPDATED_FLAGS = 1024 + // The value in the pressure_alt field has been updated + HIGHRES_IMU_UPDATED_PRESSURE_ALT HIGHRES_IMU_UPDATED_FLAGS = 2048 + // The value in the temperature field has been updated + HIGHRES_IMU_UPDATED_TEMPERATURE HIGHRES_IMU_UPDATED_FLAGS = 4096 + // All fields in HIGHRES_IMU have been updated. + HIGHRES_IMU_UPDATED_ALL HIGHRES_IMU_UPDATED_FLAGS = 65535 +) + +var labels_HIGHRES_IMU_UPDATED_FLAGS = map[HIGHRES_IMU_UPDATED_FLAGS]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e HIGHRES_IMU_UPDATED_FLAGS) MarshalText() ([]byte, error) { + if l, ok := labels_HIGHRES_IMU_UPDATED_FLAGS[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_HIGHRES_IMU_UPDATED_FLAGS = map[string]HIGHRES_IMU_UPDATED_FLAGS{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *HIGHRES_IMU_UPDATED_FLAGS) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_HIGHRES_IMU_UPDATED_FLAGS[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e HIGHRES_IMU_UPDATED_FLAGS) String() string { + if l, ok := labels_HIGHRES_IMU_UPDATED_FLAGS[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/storm32/enum_hil_sensor_updated_flags.go b/pkg/dialects/storm32/enum_hil_sensor_updated_flags.go new file mode 100644 index 000000000..b52befda8 --- /dev/null +++ b/pkg/dialects/storm32/enum_hil_sensor_updated_flags.go @@ -0,0 +1,72 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package storm32 + +import ( + "errors" +) + +// Flags in the HIL_SENSOR message indicate which fields have updated since the last message +type HIL_SENSOR_UPDATED_FLAGS int + +const ( + // None of the fields in HIL_SENSOR have been updated + HIL_SENSOR_UPDATED_NONE HIL_SENSOR_UPDATED_FLAGS = 0 + // The value in the xacc field has been updated + HIL_SENSOR_UPDATED_XACC HIL_SENSOR_UPDATED_FLAGS = 1 + // The value in the yacc field has been updated + HIL_SENSOR_UPDATED_YACC HIL_SENSOR_UPDATED_FLAGS = 2 + // The value in the zacc field has been updated + HIL_SENSOR_UPDATED_ZACC HIL_SENSOR_UPDATED_FLAGS = 4 + // The value in the xgyro field has been updated + HIL_SENSOR_UPDATED_XGYRO HIL_SENSOR_UPDATED_FLAGS = 8 + // The value in the ygyro field has been updated + HIL_SENSOR_UPDATED_YGYRO HIL_SENSOR_UPDATED_FLAGS = 16 + // The value in the zgyro field has been updated + HIL_SENSOR_UPDATED_ZGYRO HIL_SENSOR_UPDATED_FLAGS = 32 + // The value in the xmag field has been updated + HIL_SENSOR_UPDATED_XMAG HIL_SENSOR_UPDATED_FLAGS = 64 + // The value in the ymag field has been updated + HIL_SENSOR_UPDATED_YMAG HIL_SENSOR_UPDATED_FLAGS = 128 + // The value in the zmag field has been updated + HIL_SENSOR_UPDATED_ZMAG HIL_SENSOR_UPDATED_FLAGS = 256 + // The value in the abs_pressure field has been updated + HIL_SENSOR_UPDATED_ABS_PRESSURE HIL_SENSOR_UPDATED_FLAGS = 512 + // The value in the diff_pressure field has been updated + HIL_SENSOR_UPDATED_DIFF_PRESSURE HIL_SENSOR_UPDATED_FLAGS = 1024 + // The value in the pressure_alt field has been updated + HIL_SENSOR_UPDATED_PRESSURE_ALT HIL_SENSOR_UPDATED_FLAGS = 2048 + // The value in the temperature field has been updated + HIL_SENSOR_UPDATED_TEMPERATURE HIL_SENSOR_UPDATED_FLAGS = 4096 + // Full reset of attitude/position/velocities/etc was performed in sim (Bit 31). + HIL_SENSOR_UPDATED_RESET HIL_SENSOR_UPDATED_FLAGS = 2147483648 +) + +var labels_HIL_SENSOR_UPDATED_FLAGS = map[HIL_SENSOR_UPDATED_FLAGS]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e HIL_SENSOR_UPDATED_FLAGS) MarshalText() ([]byte, error) { + if l, ok := labels_HIL_SENSOR_UPDATED_FLAGS[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_HIL_SENSOR_UPDATED_FLAGS = map[string]HIL_SENSOR_UPDATED_FLAGS{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *HIL_SENSOR_UPDATED_FLAGS) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_HIL_SENSOR_UPDATED_FLAGS[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e HIL_SENSOR_UPDATED_FLAGS) String() string { + if l, ok := labels_HIL_SENSOR_UPDATED_FLAGS[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/storm32/enum_hl_failure_flag.go b/pkg/dialects/storm32/enum_hl_failure_flag.go new file mode 100644 index 000000000..898e74bbe --- /dev/null +++ b/pkg/dialects/storm32/enum_hl_failure_flag.go @@ -0,0 +1,70 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package storm32 + +import ( + "errors" +) + +// Flags to report failure cases over the high latency telemtry. +type HL_FAILURE_FLAG int + +const ( + // GPS failure. + HL_FAILURE_FLAG_GPS HL_FAILURE_FLAG = 1 + // Differential pressure sensor failure. + HL_FAILURE_FLAG_DIFFERENTIAL_PRESSURE HL_FAILURE_FLAG = 2 + // Absolute pressure sensor failure. + HL_FAILURE_FLAG_ABSOLUTE_PRESSURE HL_FAILURE_FLAG = 4 + // Accelerometer sensor failure. + HL_FAILURE_FLAG_3D_ACCEL HL_FAILURE_FLAG = 8 + // Gyroscope sensor failure. + HL_FAILURE_FLAG_3D_GYRO HL_FAILURE_FLAG = 16 + // Magnetometer sensor failure. + HL_FAILURE_FLAG_3D_MAG HL_FAILURE_FLAG = 32 + // Terrain subsystem failure. + HL_FAILURE_FLAG_TERRAIN HL_FAILURE_FLAG = 64 + // Battery failure/critical low battery. + HL_FAILURE_FLAG_BATTERY HL_FAILURE_FLAG = 128 + // RC receiver failure/no rc connection. + HL_FAILURE_FLAG_RC_RECEIVER HL_FAILURE_FLAG = 256 + // Offboard link failure. + HL_FAILURE_FLAG_OFFBOARD_LINK HL_FAILURE_FLAG = 512 + // Engine failure. + HL_FAILURE_FLAG_ENGINE HL_FAILURE_FLAG = 1024 + // Geofence violation. + HL_FAILURE_FLAG_GEOFENCE HL_FAILURE_FLAG = 2048 + // Estimator failure, for example measurement rejection or large variances. + HL_FAILURE_FLAG_ESTIMATOR HL_FAILURE_FLAG = 4096 + // Mission failure. + HL_FAILURE_FLAG_MISSION HL_FAILURE_FLAG = 8192 +) + +var labels_HL_FAILURE_FLAG = map[HL_FAILURE_FLAG]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e HL_FAILURE_FLAG) MarshalText() ([]byte, error) { + if l, ok := labels_HL_FAILURE_FLAG[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_HL_FAILURE_FLAG = map[string]HL_FAILURE_FLAG{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *HL_FAILURE_FLAG) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_HL_FAILURE_FLAG[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e HL_FAILURE_FLAG) String() string { + if l, ok := labels_HL_FAILURE_FLAG[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/storm32/enum_icarous_fms_state.go b/pkg/dialects/storm32/enum_icarous_fms_state.go new file mode 100644 index 000000000..10274db45 --- /dev/null +++ b/pkg/dialects/storm32/enum_icarous_fms_state.go @@ -0,0 +1,47 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package storm32 + +import ( + "errors" +) + +type ICAROUS_FMS_STATE int + +const ( + ICAROUS_FMS_STATE_IDLE ICAROUS_FMS_STATE = 0 + ICAROUS_FMS_STATE_TAKEOFF ICAROUS_FMS_STATE = 1 + ICAROUS_FMS_STATE_CLIMB ICAROUS_FMS_STATE = 2 + ICAROUS_FMS_STATE_CRUISE ICAROUS_FMS_STATE = 3 + ICAROUS_FMS_STATE_APPROACH ICAROUS_FMS_STATE = 4 + ICAROUS_FMS_STATE_LAND ICAROUS_FMS_STATE = 5 +) + +var labels_ICAROUS_FMS_STATE = map[ICAROUS_FMS_STATE]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e ICAROUS_FMS_STATE) MarshalText() ([]byte, error) { + if l, ok := labels_ICAROUS_FMS_STATE[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_ICAROUS_FMS_STATE = map[string]ICAROUS_FMS_STATE{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *ICAROUS_FMS_STATE) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_ICAROUS_FMS_STATE[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e ICAROUS_FMS_STATE) String() string { + if l, ok := labels_ICAROUS_FMS_STATE[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/storm32/enum_icarous_track_band_types.go b/pkg/dialects/storm32/enum_icarous_track_band_types.go new file mode 100644 index 000000000..bd3601371 --- /dev/null +++ b/pkg/dialects/storm32/enum_icarous_track_band_types.go @@ -0,0 +1,44 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package storm32 + +import ( + "errors" +) + +type ICAROUS_TRACK_BAND_TYPES int + +const ( + ICAROUS_TRACK_BAND_TYPE_NONE ICAROUS_TRACK_BAND_TYPES = 0 + ICAROUS_TRACK_BAND_TYPE_NEAR ICAROUS_TRACK_BAND_TYPES = 1 + ICAROUS_TRACK_BAND_TYPE_RECOVERY ICAROUS_TRACK_BAND_TYPES = 2 +) + +var labels_ICAROUS_TRACK_BAND_TYPES = map[ICAROUS_TRACK_BAND_TYPES]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e ICAROUS_TRACK_BAND_TYPES) MarshalText() ([]byte, error) { + if l, ok := labels_ICAROUS_TRACK_BAND_TYPES[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_ICAROUS_TRACK_BAND_TYPES = map[string]ICAROUS_TRACK_BAND_TYPES{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *ICAROUS_TRACK_BAND_TYPES) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_ICAROUS_TRACK_BAND_TYPES[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e ICAROUS_TRACK_BAND_TYPES) String() string { + if l, ok := labels_ICAROUS_TRACK_BAND_TYPES[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/storm32/enum_landing_target_type.go b/pkg/dialects/storm32/enum_landing_target_type.go new file mode 100644 index 000000000..8615a82a6 --- /dev/null +++ b/pkg/dialects/storm32/enum_landing_target_type.go @@ -0,0 +1,50 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package storm32 + +import ( + "errors" +) + +// Type of landing target +type LANDING_TARGET_TYPE int + +const ( + // Landing target signaled by light beacon (ex: IR-LOCK) + LANDING_TARGET_TYPE_LIGHT_BEACON LANDING_TARGET_TYPE = 0 + // Landing target signaled by radio beacon (ex: ILS, NDB) + LANDING_TARGET_TYPE_RADIO_BEACON LANDING_TARGET_TYPE = 1 + // Landing target represented by a fiducial marker (ex: ARTag) + LANDING_TARGET_TYPE_VISION_FIDUCIAL LANDING_TARGET_TYPE = 2 + // Landing target represented by a pre-defined visual shape/feature (ex: X-marker, H-marker, square) + LANDING_TARGET_TYPE_VISION_OTHER LANDING_TARGET_TYPE = 3 +) + +var labels_LANDING_TARGET_TYPE = map[LANDING_TARGET_TYPE]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e LANDING_TARGET_TYPE) MarshalText() ([]byte, error) { + if l, ok := labels_LANDING_TARGET_TYPE[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_LANDING_TARGET_TYPE = map[string]LANDING_TARGET_TYPE{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *LANDING_TARGET_TYPE) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_LANDING_TARGET_TYPE[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e LANDING_TARGET_TYPE) String() string { + if l, ok := labels_LANDING_TARGET_TYPE[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/storm32/enum_led_control_pattern.go b/pkg/dialects/storm32/enum_led_control_pattern.go new file mode 100644 index 000000000..fe92b76e3 --- /dev/null +++ b/pkg/dialects/storm32/enum_led_control_pattern.go @@ -0,0 +1,47 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package storm32 + +import ( + "errors" +) + +type LED_CONTROL_PATTERN int + +const ( + // LED patterns off (return control to regular vehicle control). + LED_CONTROL_PATTERN_OFF LED_CONTROL_PATTERN = 0 + // LEDs show pattern during firmware update. + LED_CONTROL_PATTERN_FIRMWAREUPDATE LED_CONTROL_PATTERN = 1 + // Custom Pattern using custom bytes fields. + LED_CONTROL_PATTERN_CUSTOM LED_CONTROL_PATTERN = 255 +) + +var labels_LED_CONTROL_PATTERN = map[LED_CONTROL_PATTERN]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e LED_CONTROL_PATTERN) MarshalText() ([]byte, error) { + if l, ok := labels_LED_CONTROL_PATTERN[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_LED_CONTROL_PATTERN = map[string]LED_CONTROL_PATTERN{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *LED_CONTROL_PATTERN) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_LED_CONTROL_PATTERN[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e LED_CONTROL_PATTERN) String() string { + if l, ok := labels_LED_CONTROL_PATTERN[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/storm32/enum_limit_module.go b/pkg/dialects/storm32/enum_limit_module.go new file mode 100644 index 000000000..90dd32005 --- /dev/null +++ b/pkg/dialects/storm32/enum_limit_module.go @@ -0,0 +1,47 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package storm32 + +import ( + "errors" +) + +type LIMIT_MODULE int + +const ( + // Pre-initialization. + LIMIT_GPSLOCK LIMIT_MODULE = 1 + // Disabled. + LIMIT_GEOFENCE LIMIT_MODULE = 2 + // Checking limits. + LIMIT_ALTITUDE LIMIT_MODULE = 4 +) + +var labels_LIMIT_MODULE = map[LIMIT_MODULE]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e LIMIT_MODULE) MarshalText() ([]byte, error) { + if l, ok := labels_LIMIT_MODULE[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_LIMIT_MODULE = map[string]LIMIT_MODULE{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *LIMIT_MODULE) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_LIMIT_MODULE[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e LIMIT_MODULE) String() string { + if l, ok := labels_LIMIT_MODULE[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/storm32/enum_limits_state.go b/pkg/dialects/storm32/enum_limits_state.go new file mode 100644 index 000000000..3de346def --- /dev/null +++ b/pkg/dialects/storm32/enum_limits_state.go @@ -0,0 +1,53 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package storm32 + +import ( + "errors" +) + +type LIMITS_STATE int + +const ( + // Pre-initialization. + LIMITS_INIT LIMITS_STATE = 0 + // Disabled. + LIMITS_DISABLED LIMITS_STATE = 1 + // Checking limits. + LIMITS_ENABLED LIMITS_STATE = 2 + // A limit has been breached. + LIMITS_TRIGGERED LIMITS_STATE = 3 + // Taking action e.g. Return/RTL. + LIMITS_RECOVERING LIMITS_STATE = 4 + // We're no longer in breach of a limit. + LIMITS_RECOVERED LIMITS_STATE = 5 +) + +var labels_LIMITS_STATE = map[LIMITS_STATE]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e LIMITS_STATE) MarshalText() ([]byte, error) { + if l, ok := labels_LIMITS_STATE[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_LIMITS_STATE = map[string]LIMITS_STATE{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *LIMITS_STATE) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_LIMITS_STATE[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e LIMITS_STATE) String() string { + if l, ok := labels_LIMITS_STATE[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/storm32/enum_mag_cal_status.go b/pkg/dialects/storm32/enum_mag_cal_status.go new file mode 100644 index 000000000..5664ae9fe --- /dev/null +++ b/pkg/dialects/storm32/enum_mag_cal_status.go @@ -0,0 +1,49 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package storm32 + +import ( + "errors" +) + +type MAG_CAL_STATUS int + +const ( + MAG_CAL_NOT_STARTED MAG_CAL_STATUS = 0 + MAG_CAL_WAITING_TO_START MAG_CAL_STATUS = 1 + MAG_CAL_RUNNING_STEP_ONE MAG_CAL_STATUS = 2 + MAG_CAL_RUNNING_STEP_TWO MAG_CAL_STATUS = 3 + MAG_CAL_SUCCESS MAG_CAL_STATUS = 4 + MAG_CAL_FAILED MAG_CAL_STATUS = 5 + MAG_CAL_BAD_ORIENTATION MAG_CAL_STATUS = 6 + MAG_CAL_BAD_RADIUS MAG_CAL_STATUS = 7 +) + +var labels_MAG_CAL_STATUS = map[MAG_CAL_STATUS]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAG_CAL_STATUS) MarshalText() ([]byte, error) { + if l, ok := labels_MAG_CAL_STATUS[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAG_CAL_STATUS = map[string]MAG_CAL_STATUS{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAG_CAL_STATUS) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAG_CAL_STATUS[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAG_CAL_STATUS) String() string { + if l, ok := labels_MAG_CAL_STATUS[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/storm32/enum_mav_arm_auth_denied_reason.go b/pkg/dialects/storm32/enum_mav_arm_auth_denied_reason.go new file mode 100644 index 000000000..7327fcf21 --- /dev/null +++ b/pkg/dialects/storm32/enum_mav_arm_auth_denied_reason.go @@ -0,0 +1,53 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package storm32 + +import ( + "errors" +) + +type MAV_ARM_AUTH_DENIED_REASON int + +const ( + // Not a specific reason + MAV_ARM_AUTH_DENIED_REASON_GENERIC MAV_ARM_AUTH_DENIED_REASON = 0 + // Authorizer will send the error as string to GCS + MAV_ARM_AUTH_DENIED_REASON_NONE MAV_ARM_AUTH_DENIED_REASON = 1 + // At least one waypoint have a invalid value + MAV_ARM_AUTH_DENIED_REASON_INVALID_WAYPOINT MAV_ARM_AUTH_DENIED_REASON = 2 + // Timeout in the authorizer process(in case it depends on network) + MAV_ARM_AUTH_DENIED_REASON_TIMEOUT MAV_ARM_AUTH_DENIED_REASON = 3 + // Airspace of the mission in use by another vehicle, second result parameter can have the waypoint id that caused it to be denied. + MAV_ARM_AUTH_DENIED_REASON_AIRSPACE_IN_USE MAV_ARM_AUTH_DENIED_REASON = 4 + // Weather is not good to fly + MAV_ARM_AUTH_DENIED_REASON_BAD_WEATHER MAV_ARM_AUTH_DENIED_REASON = 5 +) + +var labels_MAV_ARM_AUTH_DENIED_REASON = map[MAV_ARM_AUTH_DENIED_REASON]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAV_ARM_AUTH_DENIED_REASON) MarshalText() ([]byte, error) { + if l, ok := labels_MAV_ARM_AUTH_DENIED_REASON[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAV_ARM_AUTH_DENIED_REASON = map[string]MAV_ARM_AUTH_DENIED_REASON{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAV_ARM_AUTH_DENIED_REASON) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAV_ARM_AUTH_DENIED_REASON[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAV_ARM_AUTH_DENIED_REASON) String() string { + if l, ok := labels_MAV_ARM_AUTH_DENIED_REASON[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/storm32/enum_mav_autopilot.go b/pkg/dialects/storm32/enum_mav_autopilot.go new file mode 100644 index 000000000..57e516168 --- /dev/null +++ b/pkg/dialects/storm32/enum_mav_autopilot.go @@ -0,0 +1,84 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package storm32 + +import ( + "errors" +) + +// Micro air vehicle / autopilot classes. This identifies the individual model. +type MAV_AUTOPILOT int + +const ( + // Generic autopilot, full support for everything + MAV_AUTOPILOT_GENERIC MAV_AUTOPILOT = 0 + // Reserved for future use. + MAV_AUTOPILOT_RESERVED MAV_AUTOPILOT = 1 + // SLUGS autopilot, http://slugsuav.soe.ucsc.edu + MAV_AUTOPILOT_SLUGS MAV_AUTOPILOT = 2 + // ArduPilot - Plane/Copter/Rover/Sub/Tracker, https://ardupilot.org + MAV_AUTOPILOT_ARDUPILOTMEGA MAV_AUTOPILOT = 3 + // OpenPilot, http://openpilot.org + MAV_AUTOPILOT_OPENPILOT MAV_AUTOPILOT = 4 + // Generic autopilot only supporting simple waypoints + MAV_AUTOPILOT_GENERIC_WAYPOINTS_ONLY MAV_AUTOPILOT = 5 + // Generic autopilot supporting waypoints and other simple navigation commands + MAV_AUTOPILOT_GENERIC_WAYPOINTS_AND_SIMPLE_NAVIGATION_ONLY MAV_AUTOPILOT = 6 + // Generic autopilot supporting the full mission command set + MAV_AUTOPILOT_GENERIC_MISSION_FULL MAV_AUTOPILOT = 7 + // No valid autopilot, e.g. a GCS or other MAVLink component + MAV_AUTOPILOT_INVALID MAV_AUTOPILOT = 8 + // PPZ UAV - http://nongnu.org/paparazzi + MAV_AUTOPILOT_PPZ MAV_AUTOPILOT = 9 + // UAV Dev Board + MAV_AUTOPILOT_UDB MAV_AUTOPILOT = 10 + // FlexiPilot + MAV_AUTOPILOT_FP MAV_AUTOPILOT = 11 + // PX4 Autopilot - http://px4.io/ + MAV_AUTOPILOT_PX4 MAV_AUTOPILOT = 12 + // SMACCMPilot - http://smaccmpilot.org + MAV_AUTOPILOT_SMACCMPILOT MAV_AUTOPILOT = 13 + // AutoQuad -- http://autoquad.org + MAV_AUTOPILOT_AUTOQUAD MAV_AUTOPILOT = 14 + // Armazila -- http://armazila.com + MAV_AUTOPILOT_ARMAZILA MAV_AUTOPILOT = 15 + // Aerob -- http://aerob.ru + MAV_AUTOPILOT_AEROB MAV_AUTOPILOT = 16 + // ASLUAV autopilot -- http://www.asl.ethz.ch + MAV_AUTOPILOT_ASLUAV MAV_AUTOPILOT = 17 + // SmartAP Autopilot - http://sky-drones.com + MAV_AUTOPILOT_SMARTAP MAV_AUTOPILOT = 18 + // AirRails - http://uaventure.com + MAV_AUTOPILOT_AIRRAILS MAV_AUTOPILOT = 19 + // Fusion Reflex - https://fusion.engineering + MAV_AUTOPILOT_REFLEX MAV_AUTOPILOT = 20 +) + +var labels_MAV_AUTOPILOT = map[MAV_AUTOPILOT]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAV_AUTOPILOT) MarshalText() ([]byte, error) { + if l, ok := labels_MAV_AUTOPILOT[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAV_AUTOPILOT = map[string]MAV_AUTOPILOT{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAV_AUTOPILOT) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAV_AUTOPILOT[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAV_AUTOPILOT) String() string { + if l, ok := labels_MAV_AUTOPILOT[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/storm32/enum_mav_battery_charge_state.go b/pkg/dialects/storm32/enum_mav_battery_charge_state.go new file mode 100644 index 000000000..b620f571d --- /dev/null +++ b/pkg/dialects/storm32/enum_mav_battery_charge_state.go @@ -0,0 +1,58 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package storm32 + +import ( + "errors" +) + +// Enumeration for battery charge states. +type MAV_BATTERY_CHARGE_STATE int + +const ( + // Low battery state is not provided + MAV_BATTERY_CHARGE_STATE_UNDEFINED MAV_BATTERY_CHARGE_STATE = 0 + // Battery is not in low state. Normal operation. + MAV_BATTERY_CHARGE_STATE_OK MAV_BATTERY_CHARGE_STATE = 1 + // Battery state is low, warn and monitor close. + MAV_BATTERY_CHARGE_STATE_LOW MAV_BATTERY_CHARGE_STATE = 2 + // Battery state is critical, return or abort immediately. + MAV_BATTERY_CHARGE_STATE_CRITICAL MAV_BATTERY_CHARGE_STATE = 3 + // Battery state is too low for ordinary abort sequence. Perform fastest possible emergency stop to prevent damage. + MAV_BATTERY_CHARGE_STATE_EMERGENCY MAV_BATTERY_CHARGE_STATE = 4 + // Battery failed, damage unavoidable. Possible causes (faults) are listed in MAV_BATTERY_FAULT. + MAV_BATTERY_CHARGE_STATE_FAILED MAV_BATTERY_CHARGE_STATE = 5 + // Battery is diagnosed to be defective or an error occurred, usage is discouraged / prohibited. Possible causes (faults) are listed in MAV_BATTERY_FAULT. + MAV_BATTERY_CHARGE_STATE_UNHEALTHY MAV_BATTERY_CHARGE_STATE = 6 + // Battery is charging. + MAV_BATTERY_CHARGE_STATE_CHARGING MAV_BATTERY_CHARGE_STATE = 7 +) + +var labels_MAV_BATTERY_CHARGE_STATE = map[MAV_BATTERY_CHARGE_STATE]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAV_BATTERY_CHARGE_STATE) MarshalText() ([]byte, error) { + if l, ok := labels_MAV_BATTERY_CHARGE_STATE[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAV_BATTERY_CHARGE_STATE = map[string]MAV_BATTERY_CHARGE_STATE{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAV_BATTERY_CHARGE_STATE) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAV_BATTERY_CHARGE_STATE[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAV_BATTERY_CHARGE_STATE) String() string { + if l, ok := labels_MAV_BATTERY_CHARGE_STATE[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/storm32/enum_mav_battery_fault.go b/pkg/dialects/storm32/enum_mav_battery_fault.go new file mode 100644 index 000000000..8726d2944 --- /dev/null +++ b/pkg/dialects/storm32/enum_mav_battery_fault.go @@ -0,0 +1,60 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package storm32 + +import ( + "errors" +) + +// Smart battery supply status/fault flags (bitmask) for health indication. The battery must also report either MAV_BATTERY_CHARGE_STATE_FAILED or MAV_BATTERY_CHARGE_STATE_UNHEALTHY if any of these are set. +type MAV_BATTERY_FAULT int + +const ( + // Battery has deep discharged. + MAV_BATTERY_FAULT_DEEP_DISCHARGE MAV_BATTERY_FAULT = 1 + // Voltage spikes. + MAV_BATTERY_FAULT_SPIKES MAV_BATTERY_FAULT = 2 + // One or more cells have failed. Battery should also report MAV_BATTERY_CHARGE_STATE_FAILE (and should not be used). + MAV_BATTERY_FAULT_CELL_FAIL MAV_BATTERY_FAULT = 4 + // Over-current fault. + MAV_BATTERY_FAULT_OVER_CURRENT MAV_BATTERY_FAULT = 8 + // Over-temperature fault. + MAV_BATTERY_FAULT_OVER_TEMPERATURE MAV_BATTERY_FAULT = 16 + // Under-temperature fault. + MAV_BATTERY_FAULT_UNDER_TEMPERATURE MAV_BATTERY_FAULT = 32 + // Vehicle voltage is not compatible with this battery (batteries on same power rail should have similar voltage). + MAV_BATTERY_FAULT_INCOMPATIBLE_VOLTAGE MAV_BATTERY_FAULT = 64 + // Battery firmware is not compatible with current autopilot firmware. + MAV_BATTERY_FAULT_INCOMPATIBLE_FIRMWARE MAV_BATTERY_FAULT = 128 + // Battery is not compatible due to cell configuration (e.g. 5s1p when vehicle requires 6s). + BATTERY_FAULT_INCOMPATIBLE_CELLS_CONFIGURATION MAV_BATTERY_FAULT = 256 +) + +var labels_MAV_BATTERY_FAULT = map[MAV_BATTERY_FAULT]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAV_BATTERY_FAULT) MarshalText() ([]byte, error) { + if l, ok := labels_MAV_BATTERY_FAULT[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAV_BATTERY_FAULT = map[string]MAV_BATTERY_FAULT{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAV_BATTERY_FAULT) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAV_BATTERY_FAULT[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAV_BATTERY_FAULT) String() string { + if l, ok := labels_MAV_BATTERY_FAULT[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/storm32/enum_mav_battery_function.go b/pkg/dialects/storm32/enum_mav_battery_function.go new file mode 100644 index 000000000..12fee7508 --- /dev/null +++ b/pkg/dialects/storm32/enum_mav_battery_function.go @@ -0,0 +1,52 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package storm32 + +import ( + "errors" +) + +// Enumeration of battery functions +type MAV_BATTERY_FUNCTION int + +const ( + // Battery function is unknown + MAV_BATTERY_FUNCTION_UNKNOWN MAV_BATTERY_FUNCTION = 0 + // Battery supports all flight systems + MAV_BATTERY_FUNCTION_ALL MAV_BATTERY_FUNCTION = 1 + // Battery for the propulsion system + MAV_BATTERY_FUNCTION_PROPULSION MAV_BATTERY_FUNCTION = 2 + // Avionics battery + MAV_BATTERY_FUNCTION_AVIONICS MAV_BATTERY_FUNCTION = 3 + // Payload battery + MAV_BATTERY_TYPE_PAYLOAD MAV_BATTERY_FUNCTION = 4 +) + +var labels_MAV_BATTERY_FUNCTION = map[MAV_BATTERY_FUNCTION]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAV_BATTERY_FUNCTION) MarshalText() ([]byte, error) { + if l, ok := labels_MAV_BATTERY_FUNCTION[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAV_BATTERY_FUNCTION = map[string]MAV_BATTERY_FUNCTION{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAV_BATTERY_FUNCTION) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAV_BATTERY_FUNCTION[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAV_BATTERY_FUNCTION) String() string { + if l, ok := labels_MAV_BATTERY_FUNCTION[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/storm32/enum_mav_battery_mode.go b/pkg/dialects/storm32/enum_mav_battery_mode.go new file mode 100644 index 000000000..c666d16be --- /dev/null +++ b/pkg/dialects/storm32/enum_mav_battery_mode.go @@ -0,0 +1,48 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package storm32 + +import ( + "errors" +) + +// Battery mode. Note, the normal operation mode (i.e. when flying) should be reported as MAV_BATTERY_MODE_UNKNOWN to allow message trimming in normal flight. +type MAV_BATTERY_MODE int + +const ( + // Battery mode not supported/unknown battery mode/normal operation. + MAV_BATTERY_MODE_UNKNOWN MAV_BATTERY_MODE = 0 + // Battery is auto discharging (towards storage level). + MAV_BATTERY_MODE_AUTO_DISCHARGING MAV_BATTERY_MODE = 1 + // Battery in hot-swap mode (current limited to prevent spikes that might damage sensitive electrical circuits). + MAV_BATTERY_MODE_HOT_SWAP MAV_BATTERY_MODE = 2 +) + +var labels_MAV_BATTERY_MODE = map[MAV_BATTERY_MODE]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAV_BATTERY_MODE) MarshalText() ([]byte, error) { + if l, ok := labels_MAV_BATTERY_MODE[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAV_BATTERY_MODE = map[string]MAV_BATTERY_MODE{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAV_BATTERY_MODE) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAV_BATTERY_MODE[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAV_BATTERY_MODE) String() string { + if l, ok := labels_MAV_BATTERY_MODE[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/storm32/enum_mav_battery_type.go b/pkg/dialects/storm32/enum_mav_battery_type.go new file mode 100644 index 000000000..33b0b23e7 --- /dev/null +++ b/pkg/dialects/storm32/enum_mav_battery_type.go @@ -0,0 +1,52 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package storm32 + +import ( + "errors" +) + +// Enumeration of battery types +type MAV_BATTERY_TYPE int + +const ( + // Not specified. + MAV_BATTERY_TYPE_UNKNOWN MAV_BATTERY_TYPE = 0 + // Lithium polymer battery + MAV_BATTERY_TYPE_LIPO MAV_BATTERY_TYPE = 1 + // Lithium-iron-phosphate battery + MAV_BATTERY_TYPE_LIFE MAV_BATTERY_TYPE = 2 + // Lithium-ION battery + MAV_BATTERY_TYPE_LION MAV_BATTERY_TYPE = 3 + // Nickel metal hydride battery + MAV_BATTERY_TYPE_NIMH MAV_BATTERY_TYPE = 4 +) + +var labels_MAV_BATTERY_TYPE = map[MAV_BATTERY_TYPE]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAV_BATTERY_TYPE) MarshalText() ([]byte, error) { + if l, ok := labels_MAV_BATTERY_TYPE[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAV_BATTERY_TYPE = map[string]MAV_BATTERY_TYPE{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAV_BATTERY_TYPE) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAV_BATTERY_TYPE[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAV_BATTERY_TYPE) String() string { + if l, ok := labels_MAV_BATTERY_TYPE[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/storm32/enum_mav_cmd.go b/pkg/dialects/storm32/enum_mav_cmd.go new file mode 100644 index 000000000..8ac2539ad --- /dev/null +++ b/pkg/dialects/storm32/enum_mav_cmd.go @@ -0,0 +1,430 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package storm32 + +import ( + "errors" +) + +// Commands to be executed by the MAV. They can be executed on user request, or as part of a mission script. If the action is used in a mission, the parameter mapping to the waypoint/mission message is as follows: Param 1, Param 2, Param 3, Param 4, X: Param 5, Y:Param 6, Z:Param 7. This command list is similar what ARINC 424 is for commercial aircraft: A data format how to interpret waypoint/mission data. NaN and INT32_MAX may be used in float/integer params (respectively) to indicate optional/default values (e.g. to use the component's current yaw or latitude rather than a specific value). See https://mavlink.io/en/guide/xml_schema.html#MAV_CMD for information about the structure of the MAV_CMD entries +type MAV_CMD int + +const ( + // Navigate to waypoint. + MAV_CMD_NAV_WAYPOINT MAV_CMD = 16 + // Loiter around this waypoint an unlimited amount of time + MAV_CMD_NAV_LOITER_UNLIM MAV_CMD = 17 + // Loiter around this waypoint for X turns + MAV_CMD_NAV_LOITER_TURNS MAV_CMD = 18 + // Loiter at the specified latitude, longitude and altitude for a certain amount of time. Multicopter vehicles stop at the point (within a vehicle-specific acceptance radius). Forward-only moving vehicles (e.g. fixed-wing) circle the point with the specified radius/direction. If the Heading Required parameter (2) is non-zero forward moving aircraft will only leave the loiter circle once heading towards the next waypoint. + MAV_CMD_NAV_LOITER_TIME MAV_CMD = 19 + // Return to launch location + MAV_CMD_NAV_RETURN_TO_LAUNCH MAV_CMD = 20 + // Land at location. + MAV_CMD_NAV_LAND MAV_CMD = 21 + // Takeoff from ground / hand. Vehicles that support multiple takeoff modes (e.g. VTOL quadplane) should take off using the currently configured mode. + MAV_CMD_NAV_TAKEOFF MAV_CMD = 22 + // Land at local position (local frame only) + MAV_CMD_NAV_LAND_LOCAL MAV_CMD = 23 + // Takeoff from local position (local frame only) + MAV_CMD_NAV_TAKEOFF_LOCAL MAV_CMD = 24 + // Vehicle following, i.e. this waypoint represents the position of a moving vehicle + MAV_CMD_NAV_FOLLOW MAV_CMD = 25 + // Continue on the current course and climb/descend to specified altitude. When the altitude is reached continue to the next command (i.e., don't proceed to the next command until the desired altitude is reached. + MAV_CMD_NAV_CONTINUE_AND_CHANGE_ALT MAV_CMD = 30 + // Begin loiter at the specified Latitude and Longitude. If Lat=Lon=0, then loiter at the current position. Don't consider the navigation command complete (don't leave loiter) until the altitude has been reached. Additionally, if the Heading Required parameter is non-zero the aircraft will not leave the loiter until heading toward the next waypoint. + MAV_CMD_NAV_LOITER_TO_ALT MAV_CMD = 31 + // Begin following a target + MAV_CMD_DO_FOLLOW MAV_CMD = 32 + // Reposition the MAV after a follow target command has been sent + MAV_CMD_DO_FOLLOW_REPOSITION MAV_CMD = 33 + // Start orbiting on the circumference of a circle defined by the parameters. Setting values to NaN/INT32_MAX (as appropriate) results in using defaults. + MAV_CMD_DO_ORBIT MAV_CMD = 34 + // Sets the region of interest (ROI) for a sensor set or the vehicle itself. This can then be used by the vehicle's control system to control the vehicle attitude and the attitude of various sensors such as cameras. + MAV_CMD_NAV_ROI MAV_CMD = 80 + // Control autonomous path planning on the MAV. + MAV_CMD_NAV_PATHPLANNING MAV_CMD = 81 + // Navigate to waypoint using a spline path. + MAV_CMD_NAV_SPLINE_WAYPOINT MAV_CMD = 82 + // Takeoff from ground using VTOL mode, and transition to forward flight with specified heading. The command should be ignored by vehicles that dont support both VTOL and fixed-wing flight (multicopters, boats,etc.). + MAV_CMD_NAV_VTOL_TAKEOFF MAV_CMD = 84 + // Land using VTOL mode + MAV_CMD_NAV_VTOL_LAND MAV_CMD = 85 + // hand control over to an external controller + MAV_CMD_NAV_GUIDED_ENABLE MAV_CMD = 92 + // Delay the next navigation command a number of seconds or until a specified time + MAV_CMD_NAV_DELAY MAV_CMD = 93 + // Descend and place payload. Vehicle moves to specified location, descends until it detects a hanging payload has reached the ground, and then releases the payload. If ground is not detected before the reaching the maximum descent value (param1), the command will complete without releasing the payload. + MAV_CMD_NAV_PAYLOAD_PLACE MAV_CMD = 94 + // NOP - This command is only used to mark the upper limit of the NAV/ACTION commands in the enumeration + MAV_CMD_NAV_LAST MAV_CMD = 95 + // Delay mission state machine. + MAV_CMD_CONDITION_DELAY MAV_CMD = 112 + // Ascend/descend to target altitude at specified rate. Delay mission state machine until desired altitude reached. + MAV_CMD_CONDITION_CHANGE_ALT MAV_CMD = 113 + // Delay mission state machine until within desired distance of next NAV point. + MAV_CMD_CONDITION_DISTANCE MAV_CMD = 114 + // Reach a certain target angle. + MAV_CMD_CONDITION_YAW MAV_CMD = 115 + // NOP - This command is only used to mark the upper limit of the CONDITION commands in the enumeration + MAV_CMD_CONDITION_LAST MAV_CMD = 159 + // Set system mode. + MAV_CMD_DO_SET_MODE MAV_CMD = 176 + // Jump to the desired command in the mission list. Repeat this action only the specified number of times + MAV_CMD_DO_JUMP MAV_CMD = 177 + // Change speed and/or throttle set points. + MAV_CMD_DO_CHANGE_SPEED MAV_CMD = 178 + // Changes the home location either to the current location or a specified location. + MAV_CMD_DO_SET_HOME MAV_CMD = 179 + // Set a system parameter. Caution! Use of this command requires knowledge of the numeric enumeration value of the parameter. + MAV_CMD_DO_SET_PARAMETER MAV_CMD = 180 + // Set a relay to a condition. + MAV_CMD_DO_SET_RELAY MAV_CMD = 181 + // Cycle a relay on and off for a desired number of cycles with a desired period. + MAV_CMD_DO_REPEAT_RELAY MAV_CMD = 182 + // Set a servo to a desired PWM value. + MAV_CMD_DO_SET_SERVO MAV_CMD = 183 + // Cycle a between its nominal setting and a desired PWM for a desired number of cycles with a desired period. + MAV_CMD_DO_REPEAT_SERVO MAV_CMD = 184 + // Terminate flight immediately + MAV_CMD_DO_FLIGHTTERMINATION MAV_CMD = 185 + // Change altitude set point. + MAV_CMD_DO_CHANGE_ALTITUDE MAV_CMD = 186 + // Sets actuators (e.g. servos) to a desired value. The actuator numbers are mapped to specific outputs (e.g. on any MAIN or AUX PWM or UAVCAN) using a flight-stack specific mechanism (i.e. a parameter). + MAV_CMD_DO_SET_ACTUATOR MAV_CMD = 187 + // Mission command to perform a landing. This is used as a marker in a mission to tell the autopilot where a sequence of mission items that represents a landing starts. It may also be sent via a COMMAND_LONG to trigger a landing, in which case the nearest (geographically) landing sequence in the mission will be used. The Latitude/Longitude is optional, and may be set to 0 if not needed. If specified then it will be used to help find the closest landing sequence. + MAV_CMD_DO_LAND_START MAV_CMD = 189 + // Mission command to perform a landing from a rally point. + MAV_CMD_DO_RALLY_LAND MAV_CMD = 190 + // Mission command to safely abort an autonomous landing. + MAV_CMD_DO_GO_AROUND MAV_CMD = 191 + // Reposition the vehicle to a specific WGS84 global position. + MAV_CMD_DO_REPOSITION MAV_CMD = 192 + // If in a GPS controlled position mode, hold the current position or continue. + MAV_CMD_DO_PAUSE_CONTINUE MAV_CMD = 193 + // Set moving direction to forward or reverse. + MAV_CMD_DO_SET_REVERSE MAV_CMD = 194 + // Sets the region of interest (ROI) to a location. This can then be used by the vehicle's control system to control the vehicle attitude and the attitude of various sensors such as cameras. This command can be sent to a gimbal manager but not to a gimbal device. A gimbal is not to react to this message. + MAV_CMD_DO_SET_ROI_LOCATION MAV_CMD = 195 + // Sets the region of interest (ROI) to be toward next waypoint, with optional pitch/roll/yaw offset. This can then be used by the vehicle's control system to control the vehicle attitude and the attitude of various sensors such as cameras. This command can be sent to a gimbal manager but not to a gimbal device. A gimbal device is not to react to this message. + MAV_CMD_DO_SET_ROI_WPNEXT_OFFSET MAV_CMD = 196 + // Cancels any previous ROI command returning the vehicle/sensors to default flight characteristics. This can then be used by the vehicle's control system to control the vehicle attitude and the attitude of various sensors such as cameras. This command can be sent to a gimbal manager but not to a gimbal device. A gimbal device is not to react to this message. After this command the gimbal manager should go back to manual input if available, and otherwise assume a neutral position. + MAV_CMD_DO_SET_ROI_NONE MAV_CMD = 197 + // Mount tracks system with specified system ID. Determination of target vehicle position may be done with GLOBAL_POSITION_INT or any other means. This command can be sent to a gimbal manager but not to a gimbal device. A gimbal device is not to react to this message. + MAV_CMD_DO_SET_ROI_SYSID MAV_CMD = 198 + // Control onboard camera system. + MAV_CMD_DO_CONTROL_VIDEO MAV_CMD = 200 + // Sets the region of interest (ROI) for a sensor set or the vehicle itself. This can then be used by the vehicle's control system to control the vehicle attitude and the attitude of various sensors such as cameras. + MAV_CMD_DO_SET_ROI MAV_CMD = 201 + // Configure digital camera. This is a fallback message for systems that have not yet implemented PARAM_EXT_XXX messages and camera definition files (see https://mavlink.io/en/services/camera_def.html ). + MAV_CMD_DO_DIGICAM_CONFIGURE MAV_CMD = 202 + // Control digital camera. This is a fallback message for systems that have not yet implemented PARAM_EXT_XXX messages and camera definition files (see https://mavlink.io/en/services/camera_def.html ). + MAV_CMD_DO_DIGICAM_CONTROL MAV_CMD = 203 + // Mission command to configure a camera or antenna mount + MAV_CMD_DO_MOUNT_CONFIGURE MAV_CMD = 204 + // Mission command to control a camera or antenna mount + MAV_CMD_DO_MOUNT_CONTROL MAV_CMD = 205 + // Mission command to set camera trigger distance for this flight. The camera is triggered each time this distance is exceeded. This command can also be used to set the shutter integration time for the camera. + MAV_CMD_DO_SET_CAM_TRIGG_DIST MAV_CMD = 206 + // Mission command to enable the geofence + MAV_CMD_DO_FENCE_ENABLE MAV_CMD = 207 + // Mission item/command to release a parachute or enable/disable auto release. + MAV_CMD_DO_PARACHUTE MAV_CMD = 208 + // Command to perform motor test. + MAV_CMD_DO_MOTOR_TEST MAV_CMD = 209 + // Change to/from inverted flight. + MAV_CMD_DO_INVERTED_FLIGHT MAV_CMD = 210 + // Mission command to operate a gripper. + MAV_CMD_DO_GRIPPER MAV_CMD = 211 + // Enable/disable autotune. + MAV_CMD_DO_AUTOTUNE_ENABLE MAV_CMD = 212 + // Sets a desired vehicle turn angle and speed change. + MAV_CMD_NAV_SET_YAW_SPEED MAV_CMD = 213 + // Mission command to set camera trigger interval for this flight. If triggering is enabled, the camera is triggered each time this interval expires. This command can also be used to set the shutter integration time for the camera. + MAV_CMD_DO_SET_CAM_TRIGG_INTERVAL MAV_CMD = 214 + // Mission command to control a camera or antenna mount, using a quaternion as reference. + MAV_CMD_DO_MOUNT_CONTROL_QUAT MAV_CMD = 220 + // set id of master controller + MAV_CMD_DO_GUIDED_MASTER MAV_CMD = 221 + // Set limits for external control + MAV_CMD_DO_GUIDED_LIMITS MAV_CMD = 222 + // Control vehicle engine. This is interpreted by the vehicles engine controller to change the target engine state. It is intended for vehicles with internal combustion engines + MAV_CMD_DO_ENGINE_CONTROL MAV_CMD = 223 + // Set the mission item with sequence number seq as current item. This means that the MAV will continue to this mission item on the shortest path (not following the mission items in-between). + MAV_CMD_DO_SET_MISSION_CURRENT MAV_CMD = 224 + // NOP - This command is only used to mark the upper limit of the DO commands in the enumeration + MAV_CMD_DO_LAST MAV_CMD = 240 + // Trigger calibration. This command will be only accepted if in pre-flight mode. Except for Temperature Calibration, only one sensor should be set in a single message and all others should be zero. + MAV_CMD_PREFLIGHT_CALIBRATION MAV_CMD = 241 + // Set sensor offsets. This command will be only accepted if in pre-flight mode. + MAV_CMD_PREFLIGHT_SET_SENSOR_OFFSETS MAV_CMD = 242 + // Trigger UAVCAN configuration (actuator ID assignment and direction mapping). Note that this maps to the legacy UAVCAN v0 function UAVCAN_ENUMERATE, which is intended to be executed just once during initial vehicle configuration (it is not a normal pre-flight command and has been poorly named). + MAV_CMD_PREFLIGHT_UAVCAN MAV_CMD = 243 + // Request storage of different parameter values and logs. This command will be only accepted if in pre-flight mode. + MAV_CMD_PREFLIGHT_STORAGE MAV_CMD = 245 + // Request the reboot or shutdown of system components. + MAV_CMD_PREFLIGHT_REBOOT_SHUTDOWN MAV_CMD = 246 + // Override current mission with command to pause mission, pause mission and move to position, continue/resume mission. When param 1 indicates that the mission is paused (MAV_GOTO_DO_HOLD), param 2 defines whether it holds in place or moves to another position. + MAV_CMD_OVERRIDE_GOTO MAV_CMD = 252 + // Mission command to set a Camera Auto Mount Pivoting Oblique Survey (Replaces CAM_TRIGG_DIST for this purpose). The camera is triggered each time this distance is exceeded, then the mount moves to the next position. Params 4~6 set-up the angle limits and number of positions for oblique survey, where mount-enabled vehicles automatically roll the camera between shots to emulate an oblique camera setup (providing an increased HFOV). This command can also be used to set the shutter integration time for the camera. + MAV_CMD_OBLIQUE_SURVEY MAV_CMD = 260 + // start running a mission + MAV_CMD_MISSION_START MAV_CMD = 300 + // Actuator testing command. This is similar to MAV_CMD_DO_MOTOR_TEST but operates on the level of output functions, i.e. it is possible to test Motor1 independent from which output it is configured on. Autopilots typically refuse this command while armed. + MAV_CMD_ACTUATOR_TEST MAV_CMD = 310 + // Actuator configuration command. + MAV_CMD_CONFIGURE_ACTUATOR MAV_CMD = 311 + // Arms / Disarms a component + MAV_CMD_COMPONENT_ARM_DISARM MAV_CMD = 400 + // Instructs system to run pre-arm checks. This command should return MAV_RESULT_TEMPORARILY_REJECTED in the case the system is armed, otherwise MAV_RESULT_ACCEPTED. Note that the return value from executing this command does not indicate whether the vehicle is armable or not, just whether the system has successfully run/is currently running the checks. The result of the checks is reflected in the SYS_STATUS message. + MAV_CMD_RUN_PREARM_CHECKS MAV_CMD = 401 + // Turns illuminators ON/OFF. An illuminator is a light source that is used for lighting up dark areas external to the sytstem: e.g. a torch or searchlight (as opposed to a light source for illuminating the system itself, e.g. an indicator light). + MAV_CMD_ILLUMINATOR_ON_OFF MAV_CMD = 405 + // Request the home position from the vehicle. + MAV_CMD_GET_HOME_POSITION MAV_CMD = 410 + // Inject artificial failure for testing purposes. Note that autopilots should implement an additional protection before accepting this command such as a specific param setting. + MAV_CMD_INJECT_FAILURE MAV_CMD = 420 + // Starts receiver pairing. + MAV_CMD_START_RX_PAIR MAV_CMD = 500 + // Request the interval between messages for a particular MAVLink message ID. The receiver should ACK the command and then emit its response in a MESSAGE_INTERVAL message. + MAV_CMD_GET_MESSAGE_INTERVAL MAV_CMD = 510 + // Set the interval between messages for a particular MAVLink message ID. This interface replaces REQUEST_DATA_STREAM. + MAV_CMD_SET_MESSAGE_INTERVAL MAV_CMD = 511 + // Request the target system(s) emit a single instance of a specified message (i.e. a "one-shot" version of MAV_CMD_SET_MESSAGE_INTERVAL). + MAV_CMD_REQUEST_MESSAGE MAV_CMD = 512 + // Request MAVLink protocol version compatibility. All receivers should ACK the command and then emit their capabilities in an PROTOCOL_VERSION message + MAV_CMD_REQUEST_PROTOCOL_VERSION MAV_CMD = 519 + // Request autopilot capabilities. The receiver should ACK the command and then emit its capabilities in an AUTOPILOT_VERSION message + MAV_CMD_REQUEST_AUTOPILOT_CAPABILITIES MAV_CMD = 520 + // Request camera information (CAMERA_INFORMATION). + MAV_CMD_REQUEST_CAMERA_INFORMATION MAV_CMD = 521 + // Request camera settings (CAMERA_SETTINGS). + MAV_CMD_REQUEST_CAMERA_SETTINGS MAV_CMD = 522 + // Request storage information (STORAGE_INFORMATION). Use the command's target_component to target a specific component's storage. + MAV_CMD_REQUEST_STORAGE_INFORMATION MAV_CMD = 525 + // Format a storage medium. Once format is complete, a STORAGE_INFORMATION message is sent. Use the command's target_component to target a specific component's storage. + MAV_CMD_STORAGE_FORMAT MAV_CMD = 526 + // Request camera capture status (CAMERA_CAPTURE_STATUS) + MAV_CMD_REQUEST_CAMERA_CAPTURE_STATUS MAV_CMD = 527 + // Request flight information (FLIGHT_INFORMATION) + MAV_CMD_REQUEST_FLIGHT_INFORMATION MAV_CMD = 528 + // Reset all camera settings to Factory Default + MAV_CMD_RESET_CAMERA_SETTINGS MAV_CMD = 529 + // Set camera running mode. Use NaN for reserved values. GCS will send a MAV_CMD_REQUEST_VIDEO_STREAM_STATUS command after a mode change if the camera supports video streaming. + MAV_CMD_SET_CAMERA_MODE MAV_CMD = 530 + // Set camera zoom. Camera must respond with a CAMERA_SETTINGS message (on success). + MAV_CMD_SET_CAMERA_ZOOM MAV_CMD = 531 + // Set camera focus. Camera must respond with a CAMERA_SETTINGS message (on success). + MAV_CMD_SET_CAMERA_FOCUS MAV_CMD = 532 + // Set that a particular storage is the preferred location for saving photos, videos, and/or other media (e.g. to set that an SD card is used for storing videos). + // There can only be one preferred save location for each particular media type: setting a media usage flag will clear/reset that same flag if set on any other storage. + // If no flag is set the system should use its default storage. + // A target system can choose to always use default storage, in which case it should ACK the command with MAV_RESULT_UNSUPPORTED. + // A target system can choose to not allow a particular storage to be set as preferred storage, in which case it should ACK the command with MAV_RESULT_DENIED. + MAV_CMD_SET_STORAGE_USAGE MAV_CMD = 533 + // Tagged jump target. Can be jumped to with MAV_CMD_DO_JUMP_TAG. + MAV_CMD_JUMP_TAG MAV_CMD = 600 + // Jump to the matching tag in the mission list. Repeat this action for the specified number of times. A mission should contain a single matching tag for each jump. If this is not the case then a jump to a missing tag should complete the mission, and a jump where there are multiple matching tags should always select the one with the lowest mission sequence number. + MAV_CMD_DO_JUMP_TAG MAV_CMD = 601 + // High level setpoint to be sent to a gimbal manager to set a gimbal attitude. It is possible to set combinations of the values below. E.g. an angle as well as a desired angular rate can be used to get to this angle at a certain angular rate, or an angular rate only will result in continuous turning. NaN is to be used to signal unset. Note: a gimbal is never to react to this command but only the gimbal manager. + MAV_CMD_DO_GIMBAL_MANAGER_PITCHYAW MAV_CMD = 1000 + // Gimbal configuration to set which sysid/compid is in primary and secondary control. + MAV_CMD_DO_GIMBAL_MANAGER_CONFIGURE MAV_CMD = 1001 + // Start image capture sequence. Sends CAMERA_IMAGE_CAPTURED after each capture. Use NaN for reserved values. + MAV_CMD_IMAGE_START_CAPTURE MAV_CMD = 2000 + // Stop image capture sequence Use NaN for reserved values. + MAV_CMD_IMAGE_STOP_CAPTURE MAV_CMD = 2001 + // Re-request a CAMERA_IMAGE_CAPTURED message. + MAV_CMD_REQUEST_CAMERA_IMAGE_CAPTURE MAV_CMD = 2002 + // Enable or disable on-board camera triggering system. + MAV_CMD_DO_TRIGGER_CONTROL MAV_CMD = 2003 + // If the camera supports point visual tracking (CAMERA_CAP_FLAGS_HAS_TRACKING_POINT is set), this command allows to initiate the tracking. + MAV_CMD_CAMERA_TRACK_POINT MAV_CMD = 2004 + // If the camera supports rectangle visual tracking (CAMERA_CAP_FLAGS_HAS_TRACKING_RECTANGLE is set), this command allows to initiate the tracking. + MAV_CMD_CAMERA_TRACK_RECTANGLE MAV_CMD = 2005 + // Stops ongoing tracking. + MAV_CMD_CAMERA_STOP_TRACKING MAV_CMD = 2010 + // Starts video capture (recording). + MAV_CMD_VIDEO_START_CAPTURE MAV_CMD = 2500 + // Stop the current video capture (recording). + MAV_CMD_VIDEO_STOP_CAPTURE MAV_CMD = 2501 + // Start video streaming + MAV_CMD_VIDEO_START_STREAMING MAV_CMD = 2502 + // Stop the given video stream + MAV_CMD_VIDEO_STOP_STREAMING MAV_CMD = 2503 + // Request video stream information (VIDEO_STREAM_INFORMATION) + MAV_CMD_REQUEST_VIDEO_STREAM_INFORMATION MAV_CMD = 2504 + // Request video stream status (VIDEO_STREAM_STATUS) + MAV_CMD_REQUEST_VIDEO_STREAM_STATUS MAV_CMD = 2505 + // Request to start streaming logging data over MAVLink (see also LOGGING_DATA message) + MAV_CMD_LOGGING_START MAV_CMD = 2510 + // Request to stop streaming log data over MAVLink + MAV_CMD_LOGGING_STOP MAV_CMD = 2511 + MAV_CMD_AIRFRAME_CONFIGURATION MAV_CMD = 2520 + // Request to start/stop transmitting over the high latency telemetry + MAV_CMD_CONTROL_HIGH_LATENCY MAV_CMD = 2600 + // Create a panorama at the current position + MAV_CMD_PANORAMA_CREATE MAV_CMD = 2800 + // Request VTOL transition + MAV_CMD_DO_VTOL_TRANSITION MAV_CMD = 3000 + // Request authorization to arm the vehicle to a external entity, the arm authorizer is responsible to request all data that is needs from the vehicle before authorize or deny the request. If approved the progress of command_ack message should be set with period of time that this authorization is valid in seconds or in case it was denied it should be set with one of the reasons in ARM_AUTH_DENIED_REASON. + MAV_CMD_ARM_AUTHORIZATION_REQUEST MAV_CMD = 3001 + // This command sets the submode to standard guided when vehicle is in guided mode. The vehicle holds position and altitude and the user can input the desired velocities along all three axes. + MAV_CMD_SET_GUIDED_SUBMODE_STANDARD MAV_CMD = 4000 + // This command sets submode circle when vehicle is in guided mode. Vehicle flies along a circle facing the center of the circle. The user can input the velocity along the circle and change the radius. If no input is given the vehicle will hold position. + MAV_CMD_SET_GUIDED_SUBMODE_CIRCLE MAV_CMD = 4001 + // Delay mission state machine until gate has been reached. + MAV_CMD_CONDITION_GATE MAV_CMD = 4501 + // Fence return point (there can only be one such point in a geofence definition). If rally points are supported they should be used instead. + MAV_CMD_NAV_FENCE_RETURN_POINT MAV_CMD = 5000 + // Fence vertex for an inclusion polygon (the polygon must not be self-intersecting). The vehicle must stay within this area. Minimum of 3 vertices required. + MAV_CMD_NAV_FENCE_POLYGON_VERTEX_INCLUSION MAV_CMD = 5001 + // Fence vertex for an exclusion polygon (the polygon must not be self-intersecting). The vehicle must stay outside this area. Minimum of 3 vertices required. + MAV_CMD_NAV_FENCE_POLYGON_VERTEX_EXCLUSION MAV_CMD = 5002 + // Circular fence area. The vehicle must stay inside this area. + MAV_CMD_NAV_FENCE_CIRCLE_INCLUSION MAV_CMD = 5003 + // Circular fence area. The vehicle must stay outside this area. + MAV_CMD_NAV_FENCE_CIRCLE_EXCLUSION MAV_CMD = 5004 + // Rally point. You can have multiple rally points defined. + MAV_CMD_NAV_RALLY_POINT MAV_CMD = 5100 + // Commands the vehicle to respond with a sequence of messages UAVCAN_NODE_INFO, one message per every UAVCAN node that is online. Note that some of the response messages can be lost, which the receiver can detect easily by checking whether every received UAVCAN_NODE_STATUS has a matching message UAVCAN_NODE_INFO received earlier; if not, this command should be sent again in order to request re-transmission of the node information messages. + MAV_CMD_UAVCAN_GET_NODE_INFO MAV_CMD = 5200 + // Trigger the start of an ADSB-out IDENT. This should only be used when requested to do so by an Air Traffic Controller in controlled airspace. This starts the IDENT which is then typically held for 18 seconds by the hardware per the Mode A, C, and S transponder spec. + MAV_CMD_DO_ADSB_OUT_IDENT MAV_CMD = 10001 + // Deploy payload on a Lat / Lon / Alt position. This includes the navigation to reach the required release position and velocity. + MAV_CMD_PAYLOAD_PREPARE_DEPLOY MAV_CMD = 30001 + // Control the payload deployment. + MAV_CMD_PAYLOAD_CONTROL_DEPLOY MAV_CMD = 30002 + // Magnetometer calibration based on provided known yaw. This allows for fast calibration using WMM field tables in the vehicle, given only the known yaw of the vehicle. If Latitude and longitude are both zero then use the current vehicle location. + MAV_CMD_FIXED_MAG_CAL_YAW MAV_CMD = 42006 + // Command to operate winch. + MAV_CMD_DO_WINCH MAV_CMD = 42600 + // User defined waypoint item. Ground Station will show the Vehicle as flying through this item. + MAV_CMD_WAYPOINT_USER_1 MAV_CMD = 31000 + // User defined waypoint item. Ground Station will show the Vehicle as flying through this item. + MAV_CMD_WAYPOINT_USER_2 MAV_CMD = 31001 + // User defined waypoint item. Ground Station will show the Vehicle as flying through this item. + MAV_CMD_WAYPOINT_USER_3 MAV_CMD = 31002 + // User defined waypoint item. Ground Station will show the Vehicle as flying through this item. + MAV_CMD_WAYPOINT_USER_4 MAV_CMD = 31003 + // User defined waypoint item. Ground Station will show the Vehicle as flying through this item. + MAV_CMD_WAYPOINT_USER_5 MAV_CMD = 31004 + // User defined spatial item. Ground Station will not show the Vehicle as flying through this item. Example: ROI item. + MAV_CMD_SPATIAL_USER_1 MAV_CMD = 31005 + // User defined spatial item. Ground Station will not show the Vehicle as flying through this item. Example: ROI item. + MAV_CMD_SPATIAL_USER_2 MAV_CMD = 31006 + // User defined spatial item. Ground Station will not show the Vehicle as flying through this item. Example: ROI item. + MAV_CMD_SPATIAL_USER_3 MAV_CMD = 31007 + // User defined spatial item. Ground Station will not show the Vehicle as flying through this item. Example: ROI item. + MAV_CMD_SPATIAL_USER_4 MAV_CMD = 31008 + // User defined spatial item. Ground Station will not show the Vehicle as flying through this item. Example: ROI item. + MAV_CMD_SPATIAL_USER_5 MAV_CMD = 31009 + // User defined command. Ground Station will not show the Vehicle as flying through this item. Example: MAV_CMD_DO_SET_PARAMETER item. + MAV_CMD_USER_1 MAV_CMD = 31010 + // User defined command. Ground Station will not show the Vehicle as flying through this item. Example: MAV_CMD_DO_SET_PARAMETER item. + MAV_CMD_USER_2 MAV_CMD = 31011 + // User defined command. Ground Station will not show the Vehicle as flying through this item. Example: MAV_CMD_DO_SET_PARAMETER item. + MAV_CMD_USER_3 MAV_CMD = 31012 + // User defined command. Ground Station will not show the Vehicle as flying through this item. Example: MAV_CMD_DO_SET_PARAMETER item. + MAV_CMD_USER_4 MAV_CMD = 31013 + // User defined command. Ground Station will not show the Vehicle as flying through this item. Example: MAV_CMD_DO_SET_PARAMETER item. + MAV_CMD_USER_5 MAV_CMD = 31014 + // Set the distance to be repeated on mission resume + MAV_CMD_DO_SET_RESUME_REPEAT_DIST MAV_CMD = 215 + // Control attached liquid sprayer + MAV_CMD_DO_SPRAYER MAV_CMD = 216 + // Pass instructions onto scripting, a script should be checking for a new command + MAV_CMD_DO_SEND_SCRIPT_MESSAGE MAV_CMD = 217 + // Execute auxiliary function + MAV_CMD_DO_AUX_FUNCTION MAV_CMD = 218 + // Mission command to wait for an altitude or downwards vertical speed. This is meant for high altitude balloon launches, allowing the aircraft to be idle until either an altitude is reached or a negative vertical speed is reached (indicating early balloon burst). The wiggle time is how often to wiggle the control surfaces to prevent them seizing up. + MAV_CMD_NAV_ALTITUDE_WAIT MAV_CMD = 83 + // A system wide power-off event has been initiated. + MAV_CMD_POWER_OFF_INITIATED MAV_CMD = 42000 + // FLY button has been clicked. + MAV_CMD_SOLO_BTN_FLY_CLICK MAV_CMD = 42001 + // FLY button has been held for 1.5 seconds. + MAV_CMD_SOLO_BTN_FLY_HOLD MAV_CMD = 42002 + // PAUSE button has been clicked. + MAV_CMD_SOLO_BTN_PAUSE_CLICK MAV_CMD = 42003 + // Magnetometer calibration based on fixed position + // in earth field given by inclination, declination and intensity. + MAV_CMD_FIXED_MAG_CAL MAV_CMD = 42004 + // Magnetometer calibration based on fixed expected field values. + MAV_CMD_FIXED_MAG_CAL_FIELD MAV_CMD = 42005 + // Set EKF sensor source set. + MAV_CMD_SET_EKF_SOURCE_SET MAV_CMD = 42007 + // Initiate a magnetometer calibration. + MAV_CMD_DO_START_MAG_CAL MAV_CMD = 42424 + // Accept a magnetometer calibration. + MAV_CMD_DO_ACCEPT_MAG_CAL MAV_CMD = 42425 + // Cancel a running magnetometer calibration. + MAV_CMD_DO_CANCEL_MAG_CAL MAV_CMD = 42426 + // Used when doing accelerometer calibration. When sent to the GCS tells it what position to put the vehicle in. When sent to the vehicle says what position the vehicle is in. + MAV_CMD_ACCELCAL_VEHICLE_POS MAV_CMD = 42429 + // Reply with the version banner. + MAV_CMD_DO_SEND_BANNER MAV_CMD = 42428 + // Command autopilot to get into factory test/diagnostic mode. + MAV_CMD_SET_FACTORY_TEST_MODE MAV_CMD = 42427 + // Causes the gimbal to reset and boot as if it was just powered on. + MAV_CMD_GIMBAL_RESET MAV_CMD = 42501 + // Reports progress and success or failure of gimbal axis calibration procedure. + MAV_CMD_GIMBAL_AXIS_CALIBRATION_STATUS MAV_CMD = 42502 + // Starts commutation calibration on the gimbal. + MAV_CMD_GIMBAL_REQUEST_AXIS_CALIBRATION MAV_CMD = 42503 + // Erases gimbal application and parameters. + MAV_CMD_GIMBAL_FULL_RESET MAV_CMD = 42505 + // Update the bootloader + MAV_CMD_FLASH_BOOTLOADER MAV_CMD = 42650 + // Reset battery capacity for batteries that accumulate consumed battery via integration. + MAV_CMD_BATTERY_RESET MAV_CMD = 42651 + // Issue a trap signal to the autopilot process, presumably to enter the debugger. + MAV_CMD_DEBUG_TRAP MAV_CMD = 42700 + // Control onboard scripting. + MAV_CMD_SCRIPTING MAV_CMD = 42701 + // Scripting command as NAV command with wait for completion. + MAV_CMD_NAV_SCRIPT_TIME MAV_CMD = 42702 + // Change flight speed at a given rate. This slews the vehicle at a controllable rate between it's previous speed and the new one. (affects GUIDED only. Outside GUIDED, aircraft ignores these commands. Designed for onboard companion-computer command-and-control, not normally operator/GCS control.) + MAV_CMD_GUIDED_CHANGE_SPEED MAV_CMD = 43000 + // Change target altitude at a given rate. This slews the vehicle at a controllable rate between it's previous altitude and the new one. (affects GUIDED only. Outside GUIDED, aircraft ignores these commands. Designed for onboard companion-computer command-and-control, not normally operator/GCS control.) + MAV_CMD_GUIDED_CHANGE_ALTITUDE MAV_CMD = 43001 + // Change to target heading at a given rate, overriding previous heading/s. This slews the vehicle at a controllable rate between it's previous heading and the new one. (affects GUIDED only. Exiting GUIDED returns aircraft to normal behaviour defined elsewhere. Designed for onboard companion-computer command-and-control, not normally operator/GCS control.) + MAV_CMD_GUIDED_CHANGE_HEADING MAV_CMD = 43002 + // Command to a gimbal manager to control the gimbal tilt and pan angles. It is possible to set combinations of the values below. E.g. an angle as well as a desired angular rate can be used to get to this angle at a certain angular rate, or an angular rate only will result in continuous turning. NaN is to be used to signal unset. A gimbal device is never to react to this command. + MAV_CMD_STORM32_DO_GIMBAL_MANAGER_CONTROL_PITCHYAW MAV_CMD = 60002 + // Command to configure a gimbal manager. A gimbal device is never to react to this command. The selected profile is reported in the STORM32_GIMBAL_MANAGER_STATUS message. + MAV_CMD_STORM32_DO_GIMBAL_MANAGER_SETUP MAV_CMD = 60010 + // Command to initiate gimbal actions. Usually performed by the gimbal device, but some can also be done by the gimbal manager. It is hence best to broadcast this command. + MAV_CMD_STORM32_DO_GIMBAL_ACTION MAV_CMD = 60011 + // Command to set the shot manager mode. + MAV_CMD_QSHOT_DO_CONFIGURE MAV_CMD = 60020 +) + +var labels_MAV_CMD = map[MAV_CMD]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAV_CMD) MarshalText() ([]byte, error) { + if l, ok := labels_MAV_CMD[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAV_CMD = map[string]MAV_CMD{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAV_CMD) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAV_CMD[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAV_CMD) String() string { + if l, ok := labels_MAV_CMD[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/storm32/enum_mav_cmd_ack.go b/pkg/dialects/storm32/enum_mav_cmd_ack.go new file mode 100644 index 000000000..15ce8fbc2 --- /dev/null +++ b/pkg/dialects/storm32/enum_mav_cmd_ack.go @@ -0,0 +1,60 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package storm32 + +import ( + "errors" +) + +// ACK / NACK / ERROR values as a result of MAV_CMDs and for mission item transmission. +type MAV_CMD_ACK int + +const ( + // Command / mission item is ok. + MAV_CMD_ACK_OK MAV_CMD_ACK = 0 + // Generic error message if none of the other reasons fails or if no detailed error reporting is implemented. + MAV_CMD_ACK_ERR_FAIL MAV_CMD_ACK = 1 + // The system is refusing to accept this command from this source / communication partner. + MAV_CMD_ACK_ERR_ACCESS_DENIED MAV_CMD_ACK = 2 + // Command or mission item is not supported, other commands would be accepted. + MAV_CMD_ACK_ERR_NOT_SUPPORTED MAV_CMD_ACK = 3 + // The coordinate frame of this command / mission item is not supported. + MAV_CMD_ACK_ERR_COORDINATE_FRAME_NOT_SUPPORTED MAV_CMD_ACK = 4 + // The coordinate frame of this command is ok, but he coordinate values exceed the safety limits of this system. This is a generic error, please use the more specific error messages below if possible. + MAV_CMD_ACK_ERR_COORDINATES_OUT_OF_RANGE MAV_CMD_ACK = 5 + // The X or latitude value is out of range. + MAV_CMD_ACK_ERR_X_LAT_OUT_OF_RANGE MAV_CMD_ACK = 6 + // The Y or longitude value is out of range. + MAV_CMD_ACK_ERR_Y_LON_OUT_OF_RANGE MAV_CMD_ACK = 7 + // The Z or altitude value is out of range. + MAV_CMD_ACK_ERR_Z_ALT_OUT_OF_RANGE MAV_CMD_ACK = 8 +) + +var labels_MAV_CMD_ACK = map[MAV_CMD_ACK]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAV_CMD_ACK) MarshalText() ([]byte, error) { + if l, ok := labels_MAV_CMD_ACK[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAV_CMD_ACK = map[string]MAV_CMD_ACK{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAV_CMD_ACK) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAV_CMD_ACK[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAV_CMD_ACK) String() string { + if l, ok := labels_MAV_CMD_ACK[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/storm32/enum_mav_cmd_do_aux_function_switch_level.go b/pkg/dialects/storm32/enum_mav_cmd_do_aux_function_switch_level.go new file mode 100644 index 000000000..e206b92b9 --- /dev/null +++ b/pkg/dialects/storm32/enum_mav_cmd_do_aux_function_switch_level.go @@ -0,0 +1,47 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package storm32 + +import ( + "errors" +) + +type MAV_CMD_DO_AUX_FUNCTION_SWITCH_LEVEL int + +const ( + // Switch Low. + MAV_CMD_DO_AUX_FUNCTION_SWITCH_LEVEL_LOW MAV_CMD_DO_AUX_FUNCTION_SWITCH_LEVEL = 0 + // Switch Middle. + MAV_CMD_DO_AUX_FUNCTION_SWITCH_LEVEL_MIDDLE MAV_CMD_DO_AUX_FUNCTION_SWITCH_LEVEL = 1 + // Switch High. + MAV_CMD_DO_AUX_FUNCTION_SWITCH_LEVEL_HIGH MAV_CMD_DO_AUX_FUNCTION_SWITCH_LEVEL = 2 +) + +var labels_MAV_CMD_DO_AUX_FUNCTION_SWITCH_LEVEL = map[MAV_CMD_DO_AUX_FUNCTION_SWITCH_LEVEL]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAV_CMD_DO_AUX_FUNCTION_SWITCH_LEVEL) MarshalText() ([]byte, error) { + if l, ok := labels_MAV_CMD_DO_AUX_FUNCTION_SWITCH_LEVEL[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAV_CMD_DO_AUX_FUNCTION_SWITCH_LEVEL = map[string]MAV_CMD_DO_AUX_FUNCTION_SWITCH_LEVEL{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAV_CMD_DO_AUX_FUNCTION_SWITCH_LEVEL) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAV_CMD_DO_AUX_FUNCTION_SWITCH_LEVEL[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAV_CMD_DO_AUX_FUNCTION_SWITCH_LEVEL) String() string { + if l, ok := labels_MAV_CMD_DO_AUX_FUNCTION_SWITCH_LEVEL[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/storm32/enum_mav_collision_action.go b/pkg/dialects/storm32/enum_mav_collision_action.go new file mode 100644 index 000000000..9cfc7fa17 --- /dev/null +++ b/pkg/dialects/storm32/enum_mav_collision_action.go @@ -0,0 +1,56 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package storm32 + +import ( + "errors" +) + +// Possible actions an aircraft can take to avoid a collision. +type MAV_COLLISION_ACTION int + +const ( + // Ignore any potential collisions + MAV_COLLISION_ACTION_NONE MAV_COLLISION_ACTION = 0 + // Report potential collision + MAV_COLLISION_ACTION_REPORT MAV_COLLISION_ACTION = 1 + // Ascend or Descend to avoid threat + MAV_COLLISION_ACTION_ASCEND_OR_DESCEND MAV_COLLISION_ACTION = 2 + // Move horizontally to avoid threat + MAV_COLLISION_ACTION_MOVE_HORIZONTALLY MAV_COLLISION_ACTION = 3 + // Aircraft to move perpendicular to the collision's velocity vector + MAV_COLLISION_ACTION_MOVE_PERPENDICULAR MAV_COLLISION_ACTION = 4 + // Aircraft to fly directly back to its launch point + MAV_COLLISION_ACTION_RTL MAV_COLLISION_ACTION = 5 + // Aircraft to stop in place + MAV_COLLISION_ACTION_HOVER MAV_COLLISION_ACTION = 6 +) + +var labels_MAV_COLLISION_ACTION = map[MAV_COLLISION_ACTION]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAV_COLLISION_ACTION) MarshalText() ([]byte, error) { + if l, ok := labels_MAV_COLLISION_ACTION[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAV_COLLISION_ACTION = map[string]MAV_COLLISION_ACTION{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAV_COLLISION_ACTION) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAV_COLLISION_ACTION[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAV_COLLISION_ACTION) String() string { + if l, ok := labels_MAV_COLLISION_ACTION[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/storm32/enum_mav_collision_src.go b/pkg/dialects/storm32/enum_mav_collision_src.go new file mode 100644 index 000000000..4426ed876 --- /dev/null +++ b/pkg/dialects/storm32/enum_mav_collision_src.go @@ -0,0 +1,46 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package storm32 + +import ( + "errors" +) + +// Source of information about this collision. +type MAV_COLLISION_SRC int + +const ( + // ID field references ADSB_VEHICLE packets + MAV_COLLISION_SRC_ADSB MAV_COLLISION_SRC = 0 + // ID field references MAVLink SRC ID + MAV_COLLISION_SRC_MAVLINK_GPS_GLOBAL_INT MAV_COLLISION_SRC = 1 +) + +var labels_MAV_COLLISION_SRC = map[MAV_COLLISION_SRC]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAV_COLLISION_SRC) MarshalText() ([]byte, error) { + if l, ok := labels_MAV_COLLISION_SRC[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAV_COLLISION_SRC = map[string]MAV_COLLISION_SRC{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAV_COLLISION_SRC) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAV_COLLISION_SRC[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAV_COLLISION_SRC) String() string { + if l, ok := labels_MAV_COLLISION_SRC[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/storm32/enum_mav_collision_threat_level.go b/pkg/dialects/storm32/enum_mav_collision_threat_level.go new file mode 100644 index 000000000..9e10611e6 --- /dev/null +++ b/pkg/dialects/storm32/enum_mav_collision_threat_level.go @@ -0,0 +1,48 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package storm32 + +import ( + "errors" +) + +// Aircraft-rated danger from this threat. +type MAV_COLLISION_THREAT_LEVEL int + +const ( + // Not a threat + MAV_COLLISION_THREAT_LEVEL_NONE MAV_COLLISION_THREAT_LEVEL = 0 + // Craft is mildly concerned about this threat + MAV_COLLISION_THREAT_LEVEL_LOW MAV_COLLISION_THREAT_LEVEL = 1 + // Craft is panicking, and may take actions to avoid threat + MAV_COLLISION_THREAT_LEVEL_HIGH MAV_COLLISION_THREAT_LEVEL = 2 +) + +var labels_MAV_COLLISION_THREAT_LEVEL = map[MAV_COLLISION_THREAT_LEVEL]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAV_COLLISION_THREAT_LEVEL) MarshalText() ([]byte, error) { + if l, ok := labels_MAV_COLLISION_THREAT_LEVEL[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAV_COLLISION_THREAT_LEVEL = map[string]MAV_COLLISION_THREAT_LEVEL{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAV_COLLISION_THREAT_LEVEL) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAV_COLLISION_THREAT_LEVEL[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAV_COLLISION_THREAT_LEVEL) String() string { + if l, ok := labels_MAV_COLLISION_THREAT_LEVEL[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/storm32/enum_mav_component.go b/pkg/dialects/storm32/enum_mav_component.go new file mode 100644 index 000000000..70a288332 --- /dev/null +++ b/pkg/dialects/storm32/enum_mav_component.go @@ -0,0 +1,310 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package storm32 + +import ( + "errors" +) + +// Component ids (values) for the different types and instances of onboard hardware/software that might make up a MAVLink system (autopilot, cameras, servos, GPS systems, avoidance systems etc.). +// Components must use the appropriate ID in their source address when sending messages. Components can also use IDs to determine if they are the intended recipient of an incoming message. The MAV_COMP_ID_ALL value is used to indicate messages that must be processed by all components. +// When creating new entries, components that can have multiple instances (e.g. cameras, servos etc.) should be allocated sequential values. An appropriate number of values should be left free after these components to allow the number of instances to be expanded. +type MAV_COMPONENT int + +const ( + // Target id (target_component) used to broadcast messages to all components of the receiving system. Components should attempt to process messages with this component ID and forward to components on any other interfaces. Note: This is not a valid *source* component id for a message. + MAV_COMP_ID_ALL MAV_COMPONENT = 0 + // System flight controller component ("autopilot"). Only one autopilot is expected in a particular system. + MAV_COMP_ID_AUTOPILOT1 MAV_COMPONENT = 1 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER1 MAV_COMPONENT = 25 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER2 MAV_COMPONENT = 26 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER3 MAV_COMPONENT = 27 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER4 MAV_COMPONENT = 28 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER5 MAV_COMPONENT = 29 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER6 MAV_COMPONENT = 30 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER7 MAV_COMPONENT = 31 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER8 MAV_COMPONENT = 32 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER9 MAV_COMPONENT = 33 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER10 MAV_COMPONENT = 34 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER11 MAV_COMPONENT = 35 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER12 MAV_COMPONENT = 36 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER13 MAV_COMPONENT = 37 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER14 MAV_COMPONENT = 38 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER15 MAV_COMPONENT = 39 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER16 MAV_COMPONENT = 40 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER17 MAV_COMPONENT = 41 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER18 MAV_COMPONENT = 42 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER19 MAV_COMPONENT = 43 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER20 MAV_COMPONENT = 44 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER21 MAV_COMPONENT = 45 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER22 MAV_COMPONENT = 46 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER23 MAV_COMPONENT = 47 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER24 MAV_COMPONENT = 48 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER25 MAV_COMPONENT = 49 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER26 MAV_COMPONENT = 50 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER27 MAV_COMPONENT = 51 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER28 MAV_COMPONENT = 52 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER29 MAV_COMPONENT = 53 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER30 MAV_COMPONENT = 54 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER31 MAV_COMPONENT = 55 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER32 MAV_COMPONENT = 56 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER33 MAV_COMPONENT = 57 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER34 MAV_COMPONENT = 58 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER35 MAV_COMPONENT = 59 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER36 MAV_COMPONENT = 60 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER37 MAV_COMPONENT = 61 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER38 MAV_COMPONENT = 62 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER39 MAV_COMPONENT = 63 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER40 MAV_COMPONENT = 64 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER41 MAV_COMPONENT = 65 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER42 MAV_COMPONENT = 66 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER43 MAV_COMPONENT = 67 + // Telemetry radio (e.g. SiK radio, or other component that emits RADIO_STATUS messages). + MAV_COMP_ID_TELEMETRY_RADIO MAV_COMPONENT = 68 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER45 MAV_COMPONENT = 69 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER46 MAV_COMPONENT = 70 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER47 MAV_COMPONENT = 71 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER48 MAV_COMPONENT = 72 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER49 MAV_COMPONENT = 73 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER50 MAV_COMPONENT = 74 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER51 MAV_COMPONENT = 75 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER52 MAV_COMPONENT = 76 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER53 MAV_COMPONENT = 77 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER54 MAV_COMPONENT = 78 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER55 MAV_COMPONENT = 79 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER56 MAV_COMPONENT = 80 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER57 MAV_COMPONENT = 81 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER58 MAV_COMPONENT = 82 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER59 MAV_COMPONENT = 83 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER60 MAV_COMPONENT = 84 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER61 MAV_COMPONENT = 85 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER62 MAV_COMPONENT = 86 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER63 MAV_COMPONENT = 87 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER64 MAV_COMPONENT = 88 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER65 MAV_COMPONENT = 89 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER66 MAV_COMPONENT = 90 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER67 MAV_COMPONENT = 91 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER68 MAV_COMPONENT = 92 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER69 MAV_COMPONENT = 93 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER70 MAV_COMPONENT = 94 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER71 MAV_COMPONENT = 95 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER72 MAV_COMPONENT = 96 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER73 MAV_COMPONENT = 97 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER74 MAV_COMPONENT = 98 + // Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. + MAV_COMP_ID_USER75 MAV_COMPONENT = 99 + // Camera #1. + MAV_COMP_ID_CAMERA MAV_COMPONENT = 100 + // Camera #2. + MAV_COMP_ID_CAMERA2 MAV_COMPONENT = 101 + // Camera #3. + MAV_COMP_ID_CAMERA3 MAV_COMPONENT = 102 + // Camera #4. + MAV_COMP_ID_CAMERA4 MAV_COMPONENT = 103 + // Camera #5. + MAV_COMP_ID_CAMERA5 MAV_COMPONENT = 104 + // Camera #6. + MAV_COMP_ID_CAMERA6 MAV_COMPONENT = 105 + // Servo #1. + MAV_COMP_ID_SERVO1 MAV_COMPONENT = 140 + // Servo #2. + MAV_COMP_ID_SERVO2 MAV_COMPONENT = 141 + // Servo #3. + MAV_COMP_ID_SERVO3 MAV_COMPONENT = 142 + // Servo #4. + MAV_COMP_ID_SERVO4 MAV_COMPONENT = 143 + // Servo #5. + MAV_COMP_ID_SERVO5 MAV_COMPONENT = 144 + // Servo #6. + MAV_COMP_ID_SERVO6 MAV_COMPONENT = 145 + // Servo #7. + MAV_COMP_ID_SERVO7 MAV_COMPONENT = 146 + // Servo #8. + MAV_COMP_ID_SERVO8 MAV_COMPONENT = 147 + // Servo #9. + MAV_COMP_ID_SERVO9 MAV_COMPONENT = 148 + // Servo #10. + MAV_COMP_ID_SERVO10 MAV_COMPONENT = 149 + // Servo #11. + MAV_COMP_ID_SERVO11 MAV_COMPONENT = 150 + // Servo #12. + MAV_COMP_ID_SERVO12 MAV_COMPONENT = 151 + // Servo #13. + MAV_COMP_ID_SERVO13 MAV_COMPONENT = 152 + // Servo #14. + MAV_COMP_ID_SERVO14 MAV_COMPONENT = 153 + // Gimbal #1. + MAV_COMP_ID_GIMBAL MAV_COMPONENT = 154 + // Logging component. + MAV_COMP_ID_LOG MAV_COMPONENT = 155 + // Automatic Dependent Surveillance-Broadcast (ADS-B) component. + MAV_COMP_ID_ADSB MAV_COMPONENT = 156 + // On Screen Display (OSD) devices for video links. + MAV_COMP_ID_OSD MAV_COMPONENT = 157 + // Generic autopilot peripheral component ID. Meant for devices that do not implement the parameter microservice. + MAV_COMP_ID_PERIPHERAL MAV_COMPONENT = 158 + // Gimbal ID for QX1. + MAV_COMP_ID_QX1_GIMBAL MAV_COMPONENT = 159 + // FLARM collision alert component. + MAV_COMP_ID_FLARM MAV_COMPONENT = 160 + // Parachute component. + MAV_COMP_ID_PARACHUTE MAV_COMPONENT = 161 + // Gimbal #2. + MAV_COMP_ID_GIMBAL2 MAV_COMPONENT = 171 + // Gimbal #3. + MAV_COMP_ID_GIMBAL3 MAV_COMPONENT = 172 + // Gimbal #4 + MAV_COMP_ID_GIMBAL4 MAV_COMPONENT = 173 + // Gimbal #5. + MAV_COMP_ID_GIMBAL5 MAV_COMPONENT = 174 + // Gimbal #6. + MAV_COMP_ID_GIMBAL6 MAV_COMPONENT = 175 + // Battery #1. + MAV_COMP_ID_BATTERY MAV_COMPONENT = 180 + // Battery #2. + MAV_COMP_ID_BATTERY2 MAV_COMPONENT = 181 + // Component that can generate/supply a mission flight plan (e.g. GCS or developer API). + MAV_COMP_ID_MISSIONPLANNER MAV_COMPONENT = 190 + // Component that lives on the onboard computer (companion computer) and has some generic functionalities, such as settings system parameters and monitoring the status of some processes that don't directly speak mavlink and so on. + MAV_COMP_ID_ONBOARD_COMPUTER MAV_COMPONENT = 191 + // Component that lives on the onboard computer (companion computer) and has some generic functionalities, such as settings system parameters and monitoring the status of some processes that don't directly speak mavlink and so on. + MAV_COMP_ID_ONBOARD_COMPUTER2 MAV_COMPONENT = 192 + // Component that lives on the onboard computer (companion computer) and has some generic functionalities, such as settings system parameters and monitoring the status of some processes that don't directly speak mavlink and so on. + MAV_COMP_ID_ONBOARD_COMPUTER3 MAV_COMPONENT = 193 + // Component that lives on the onboard computer (companion computer) and has some generic functionalities, such as settings system parameters and monitoring the status of some processes that don't directly speak mavlink and so on. + MAV_COMP_ID_ONBOARD_COMPUTER4 MAV_COMPONENT = 194 + // Component that finds an optimal path between points based on a certain constraint (e.g. minimum snap, shortest path, cost, etc.). + MAV_COMP_ID_PATHPLANNER MAV_COMPONENT = 195 + // Component that plans a collision free path between two points. + MAV_COMP_ID_OBSTACLE_AVOIDANCE MAV_COMPONENT = 196 + // Component that provides position estimates using VIO techniques. + MAV_COMP_ID_VISUAL_INERTIAL_ODOMETRY MAV_COMPONENT = 197 + // Component that manages pairing of vehicle and GCS. + MAV_COMP_ID_PAIRING_MANAGER MAV_COMPONENT = 198 + // Inertial Measurement Unit (IMU) #1. + MAV_COMP_ID_IMU MAV_COMPONENT = 200 + // Inertial Measurement Unit (IMU) #2. + MAV_COMP_ID_IMU_2 MAV_COMPONENT = 201 + // Inertial Measurement Unit (IMU) #3. + MAV_COMP_ID_IMU_3 MAV_COMPONENT = 202 + // GPS #1. + MAV_COMP_ID_GPS MAV_COMPONENT = 220 + // GPS #2. + MAV_COMP_ID_GPS2 MAV_COMPONENT = 221 + // Open Drone ID transmitter/receiver (Bluetooth/WiFi/Internet). + MAV_COMP_ID_ODID_TXRX_1 MAV_COMPONENT = 236 + // Open Drone ID transmitter/receiver (Bluetooth/WiFi/Internet). + MAV_COMP_ID_ODID_TXRX_2 MAV_COMPONENT = 237 + // Open Drone ID transmitter/receiver (Bluetooth/WiFi/Internet). + MAV_COMP_ID_ODID_TXRX_3 MAV_COMPONENT = 238 + // Component to bridge MAVLink to UDP (i.e. from a UART). + MAV_COMP_ID_UDP_BRIDGE MAV_COMPONENT = 240 + // Component to bridge to UART (i.e. from UDP). + MAV_COMP_ID_UART_BRIDGE MAV_COMPONENT = 241 + // Component handling TUNNEL messages (e.g. vendor specific GUI of a component). + MAV_COMP_ID_TUNNEL_NODE MAV_COMPONENT = 242 + // Component for handling system messages (e.g. to ARM, takeoff, etc.). + MAV_COMP_ID_SYSTEM_CONTROL MAV_COMPONENT = 250 +) + +var labels_MAV_COMPONENT = map[MAV_COMPONENT]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAV_COMPONENT) MarshalText() ([]byte, error) { + if l, ok := labels_MAV_COMPONENT[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAV_COMPONENT = map[string]MAV_COMPONENT{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAV_COMPONENT) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAV_COMPONENT[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAV_COMPONENT) String() string { + if l, ok := labels_MAV_COMPONENT[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/storm32/enum_mav_data_stream.go b/pkg/dialects/storm32/enum_mav_data_stream.go new file mode 100644 index 000000000..ad2f41ab9 --- /dev/null +++ b/pkg/dialects/storm32/enum_mav_data_stream.go @@ -0,0 +1,62 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package storm32 + +import ( + "errors" +) + +// A data stream is not a fixed set of messages, but rather a +// recommendation to the autopilot software. Individual autopilots may or may not obey +// the recommended messages. +type MAV_DATA_STREAM int + +const ( + // Enable all data streams + MAV_DATA_STREAM_ALL MAV_DATA_STREAM = 0 + // Enable IMU_RAW, GPS_RAW, GPS_STATUS packets. + MAV_DATA_STREAM_RAW_SENSORS MAV_DATA_STREAM = 1 + // Enable GPS_STATUS, CONTROL_STATUS, AUX_STATUS + MAV_DATA_STREAM_EXTENDED_STATUS MAV_DATA_STREAM = 2 + // Enable RC_CHANNELS_SCALED, RC_CHANNELS_RAW, SERVO_OUTPUT_RAW + MAV_DATA_STREAM_RC_CHANNELS MAV_DATA_STREAM = 3 + // Enable ATTITUDE_CONTROLLER_OUTPUT, POSITION_CONTROLLER_OUTPUT, NAV_CONTROLLER_OUTPUT. + MAV_DATA_STREAM_RAW_CONTROLLER MAV_DATA_STREAM = 4 + // Enable LOCAL_POSITION, GLOBAL_POSITION_INT messages. + MAV_DATA_STREAM_POSITION MAV_DATA_STREAM = 6 + // Dependent on the autopilot + MAV_DATA_STREAM_EXTRA1 MAV_DATA_STREAM = 10 + // Dependent on the autopilot + MAV_DATA_STREAM_EXTRA2 MAV_DATA_STREAM = 11 + // Dependent on the autopilot + MAV_DATA_STREAM_EXTRA3 MAV_DATA_STREAM = 12 +) + +var labels_MAV_DATA_STREAM = map[MAV_DATA_STREAM]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAV_DATA_STREAM) MarshalText() ([]byte, error) { + if l, ok := labels_MAV_DATA_STREAM[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAV_DATA_STREAM = map[string]MAV_DATA_STREAM{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAV_DATA_STREAM) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAV_DATA_STREAM[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAV_DATA_STREAM) String() string { + if l, ok := labels_MAV_DATA_STREAM[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/storm32/enum_mav_distance_sensor.go b/pkg/dialects/storm32/enum_mav_distance_sensor.go new file mode 100644 index 000000000..a83c83a56 --- /dev/null +++ b/pkg/dialects/storm32/enum_mav_distance_sensor.go @@ -0,0 +1,52 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package storm32 + +import ( + "errors" +) + +// Enumeration of distance sensor types +type MAV_DISTANCE_SENSOR int + +const ( + // Laser rangefinder, e.g. LightWare SF02/F or PulsedLight units + MAV_DISTANCE_SENSOR_LASER MAV_DISTANCE_SENSOR = 0 + // Ultrasound rangefinder, e.g. MaxBotix units + MAV_DISTANCE_SENSOR_ULTRASOUND MAV_DISTANCE_SENSOR = 1 + // Infrared rangefinder, e.g. Sharp units + MAV_DISTANCE_SENSOR_INFRARED MAV_DISTANCE_SENSOR = 2 + // Radar type, e.g. uLanding units + MAV_DISTANCE_SENSOR_RADAR MAV_DISTANCE_SENSOR = 3 + // Broken or unknown type, e.g. analog units + MAV_DISTANCE_SENSOR_UNKNOWN MAV_DISTANCE_SENSOR = 4 +) + +var labels_MAV_DISTANCE_SENSOR = map[MAV_DISTANCE_SENSOR]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAV_DISTANCE_SENSOR) MarshalText() ([]byte, error) { + if l, ok := labels_MAV_DISTANCE_SENSOR[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAV_DISTANCE_SENSOR = map[string]MAV_DISTANCE_SENSOR{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAV_DISTANCE_SENSOR) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAV_DISTANCE_SENSOR[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAV_DISTANCE_SENSOR) String() string { + if l, ok := labels_MAV_DISTANCE_SENSOR[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/storm32/enum_mav_do_reposition_flags.go b/pkg/dialects/storm32/enum_mav_do_reposition_flags.go new file mode 100644 index 000000000..6bbb72410 --- /dev/null +++ b/pkg/dialects/storm32/enum_mav_do_reposition_flags.go @@ -0,0 +1,44 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package storm32 + +import ( + "errors" +) + +// Bitmap of options for the MAV_CMD_DO_REPOSITION +type MAV_DO_REPOSITION_FLAGS int + +const ( + // The aircraft should immediately transition into guided. This should not be set for follow me applications + MAV_DO_REPOSITION_FLAGS_CHANGE_MODE MAV_DO_REPOSITION_FLAGS = 1 +) + +var labels_MAV_DO_REPOSITION_FLAGS = map[MAV_DO_REPOSITION_FLAGS]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAV_DO_REPOSITION_FLAGS) MarshalText() ([]byte, error) { + if l, ok := labels_MAV_DO_REPOSITION_FLAGS[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAV_DO_REPOSITION_FLAGS = map[string]MAV_DO_REPOSITION_FLAGS{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAV_DO_REPOSITION_FLAGS) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAV_DO_REPOSITION_FLAGS[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAV_DO_REPOSITION_FLAGS) String() string { + if l, ok := labels_MAV_DO_REPOSITION_FLAGS[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/storm32/enum_mav_estimator_type.go b/pkg/dialects/storm32/enum_mav_estimator_type.go new file mode 100644 index 000000000..72fd40230 --- /dev/null +++ b/pkg/dialects/storm32/enum_mav_estimator_type.go @@ -0,0 +1,60 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package storm32 + +import ( + "errors" +) + +// Enumeration of estimator types +type MAV_ESTIMATOR_TYPE int + +const ( + // Unknown type of the estimator. + MAV_ESTIMATOR_TYPE_UNKNOWN MAV_ESTIMATOR_TYPE = 0 + // This is a naive estimator without any real covariance feedback. + MAV_ESTIMATOR_TYPE_NAIVE MAV_ESTIMATOR_TYPE = 1 + // Computer vision based estimate. Might be up to scale. + MAV_ESTIMATOR_TYPE_VISION MAV_ESTIMATOR_TYPE = 2 + // Visual-inertial estimate. + MAV_ESTIMATOR_TYPE_VIO MAV_ESTIMATOR_TYPE = 3 + // Plain GPS estimate. + MAV_ESTIMATOR_TYPE_GPS MAV_ESTIMATOR_TYPE = 4 + // Estimator integrating GPS and inertial sensing. + MAV_ESTIMATOR_TYPE_GPS_INS MAV_ESTIMATOR_TYPE = 5 + // Estimate from external motion capturing system. + MAV_ESTIMATOR_TYPE_MOCAP MAV_ESTIMATOR_TYPE = 6 + // Estimator based on lidar sensor input. + MAV_ESTIMATOR_TYPE_LIDAR MAV_ESTIMATOR_TYPE = 7 + // Estimator on autopilot. + MAV_ESTIMATOR_TYPE_AUTOPILOT MAV_ESTIMATOR_TYPE = 8 +) + +var labels_MAV_ESTIMATOR_TYPE = map[MAV_ESTIMATOR_TYPE]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAV_ESTIMATOR_TYPE) MarshalText() ([]byte, error) { + if l, ok := labels_MAV_ESTIMATOR_TYPE[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAV_ESTIMATOR_TYPE = map[string]MAV_ESTIMATOR_TYPE{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAV_ESTIMATOR_TYPE) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAV_ESTIMATOR_TYPE[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAV_ESTIMATOR_TYPE) String() string { + if l, ok := labels_MAV_ESTIMATOR_TYPE[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/storm32/enum_mav_event_current_sequence_flags.go b/pkg/dialects/storm32/enum_mav_event_current_sequence_flags.go new file mode 100644 index 000000000..d1307ea56 --- /dev/null +++ b/pkg/dialects/storm32/enum_mav_event_current_sequence_flags.go @@ -0,0 +1,44 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package storm32 + +import ( + "errors" +) + +// Flags for CURRENT_EVENT_SEQUENCE. +type MAV_EVENT_CURRENT_SEQUENCE_FLAGS int + +const ( + // A sequence reset has happened (e.g. vehicle reboot). + MAV_EVENT_CURRENT_SEQUENCE_FLAGS_RESET MAV_EVENT_CURRENT_SEQUENCE_FLAGS = 1 +) + +var labels_MAV_EVENT_CURRENT_SEQUENCE_FLAGS = map[MAV_EVENT_CURRENT_SEQUENCE_FLAGS]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAV_EVENT_CURRENT_SEQUENCE_FLAGS) MarshalText() ([]byte, error) { + if l, ok := labels_MAV_EVENT_CURRENT_SEQUENCE_FLAGS[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAV_EVENT_CURRENT_SEQUENCE_FLAGS = map[string]MAV_EVENT_CURRENT_SEQUENCE_FLAGS{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAV_EVENT_CURRENT_SEQUENCE_FLAGS) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAV_EVENT_CURRENT_SEQUENCE_FLAGS[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAV_EVENT_CURRENT_SEQUENCE_FLAGS) String() string { + if l, ok := labels_MAV_EVENT_CURRENT_SEQUENCE_FLAGS[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/storm32/enum_mav_event_error_reason.go b/pkg/dialects/storm32/enum_mav_event_error_reason.go new file mode 100644 index 000000000..92bdef59b --- /dev/null +++ b/pkg/dialects/storm32/enum_mav_event_error_reason.go @@ -0,0 +1,44 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package storm32 + +import ( + "errors" +) + +// Reason for an event error response. +type MAV_EVENT_ERROR_REASON int + +const ( + // The requested event is not available (anymore). + MAV_EVENT_ERROR_REASON_UNAVAILABLE MAV_EVENT_ERROR_REASON = 0 +) + +var labels_MAV_EVENT_ERROR_REASON = map[MAV_EVENT_ERROR_REASON]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAV_EVENT_ERROR_REASON) MarshalText() ([]byte, error) { + if l, ok := labels_MAV_EVENT_ERROR_REASON[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAV_EVENT_ERROR_REASON = map[string]MAV_EVENT_ERROR_REASON{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAV_EVENT_ERROR_REASON) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAV_EVENT_ERROR_REASON[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAV_EVENT_ERROR_REASON) String() string { + if l, ok := labels_MAV_EVENT_ERROR_REASON[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/storm32/enum_mav_frame.go b/pkg/dialects/storm32/enum_mav_frame.go new file mode 100644 index 000000000..73b1f2081 --- /dev/null +++ b/pkg/dialects/storm32/enum_mav_frame.go @@ -0,0 +1,100 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package storm32 + +import ( + "errors" +) + +// Co-ordinate frames used by MAVLink. Not all frames are supported by all commands, messages, or vehicles. +// +// Global frames use the following naming conventions: +// - "GLOBAL": Global co-ordinate frame with WGS84 latitude/longitude and altitude positive over mean sea level (MSL) by default. +// The following modifiers may be used with "GLOBAL": +// - "RELATIVE_ALT": Altitude is relative to the vehicle home position rather than MSL. +// - "TERRAIN_ALT": Altitude is relative to ground level rather than MSL. +// - "INT": Latitude/longitude (in degrees) are scaled by multiplying by 1E7. +// +// Local frames use the following naming conventions: +// - "LOCAL": Origin of local frame is fixed relative to earth. Unless otherwise specified this origin is the origin of the vehicle position-estimator ("EKF"). +// - "BODY": Origin of local frame travels with the vehicle. NOTE, "BODY" does NOT indicate alignment of frame axis with vehicle attitude. +// - "OFFSET": Deprecated synonym for "BODY" (origin travels with the vehicle). Not to be used for new frames. +// +// Some deprecated frames do not follow these conventions (e.g. MAV_FRAME_BODY_NED and MAV_FRAME_BODY_OFFSET_NED). +type MAV_FRAME int + +const ( + // Global (WGS84) coordinate frame + MSL altitude. First value / x: latitude, second value / y: longitude, third value / z: positive altitude over mean sea level (MSL). + MAV_FRAME_GLOBAL MAV_FRAME = 0 + // NED local tangent frame (x: North, y: East, z: Down) with origin fixed relative to earth. + MAV_FRAME_LOCAL_NED MAV_FRAME = 1 + // NOT a coordinate frame, indicates a mission command. + MAV_FRAME_MISSION MAV_FRAME = 2 + // Global (WGS84) coordinate frame + altitude relative to the home position. First value / x: latitude, second value / y: longitude, third value / z: positive altitude with 0 being at the altitude of the home location. + MAV_FRAME_GLOBAL_RELATIVE_ALT MAV_FRAME = 3 + // ENU local tangent frame (x: East, y: North, z: Up) with origin fixed relative to earth. + MAV_FRAME_LOCAL_ENU MAV_FRAME = 4 + // Global (WGS84) coordinate frame (scaled) + MSL altitude. First value / x: latitude in degrees*1E7, second value / y: longitude in degrees*1E7, third value / z: positive altitude over mean sea level (MSL). + MAV_FRAME_GLOBAL_INT MAV_FRAME = 5 + // Global (WGS84) coordinate frame (scaled) + altitude relative to the home position. First value / x: latitude in degrees*1E7, second value / y: longitude in degrees*1E7, third value / z: positive altitude with 0 being at the altitude of the home location. + MAV_FRAME_GLOBAL_RELATIVE_ALT_INT MAV_FRAME = 6 + // NED local tangent frame (x: North, y: East, z: Down) with origin that travels with the vehicle. + MAV_FRAME_LOCAL_OFFSET_NED MAV_FRAME = 7 + // Same as MAV_FRAME_LOCAL_NED when used to represent position values. Same as MAV_FRAME_BODY_FRD when used with velocity/accelaration values. + MAV_FRAME_BODY_NED MAV_FRAME = 8 + // This is the same as MAV_FRAME_BODY_FRD. + MAV_FRAME_BODY_OFFSET_NED MAV_FRAME = 9 + // Global (WGS84) coordinate frame with AGL altitude (at the waypoint coordinate). First value / x: latitude in degrees, second value / y: longitude in degrees, third value / z: positive altitude in meters with 0 being at ground level in terrain model. + MAV_FRAME_GLOBAL_TERRAIN_ALT MAV_FRAME = 10 + // Global (WGS84) coordinate frame (scaled) with AGL altitude (at the waypoint coordinate). First value / x: latitude in degrees*1E7, second value / y: longitude in degrees*1E7, third value / z: positive altitude in meters with 0 being at ground level in terrain model. + MAV_FRAME_GLOBAL_TERRAIN_ALT_INT MAV_FRAME = 11 + // FRD local tangent frame (x: Forward, y: Right, z: Down) with origin that travels with vehicle. The forward axis is aligned to the front of the vehicle in the horizontal plane. + MAV_FRAME_BODY_FRD MAV_FRAME = 12 + // MAV_FRAME_BODY_FLU - Body fixed frame of reference, Z-up (x: Forward, y: Left, z: Up). + MAV_FRAME_RESERVED_13 MAV_FRAME = 13 + // MAV_FRAME_MOCAP_NED - Odometry local coordinate frame of data given by a motion capture system, Z-down (x: North, y: East, z: Down). + MAV_FRAME_RESERVED_14 MAV_FRAME = 14 + // MAV_FRAME_MOCAP_ENU - Odometry local coordinate frame of data given by a motion capture system, Z-up (x: East, y: North, z: Up). + MAV_FRAME_RESERVED_15 MAV_FRAME = 15 + // MAV_FRAME_VISION_NED - Odometry local coordinate frame of data given by a vision estimation system, Z-down (x: North, y: East, z: Down). + MAV_FRAME_RESERVED_16 MAV_FRAME = 16 + // MAV_FRAME_VISION_ENU - Odometry local coordinate frame of data given by a vision estimation system, Z-up (x: East, y: North, z: Up). + MAV_FRAME_RESERVED_17 MAV_FRAME = 17 + // MAV_FRAME_ESTIM_NED - Odometry local coordinate frame of data given by an estimator running onboard the vehicle, Z-down (x: North, y: East, z: Down). + MAV_FRAME_RESERVED_18 MAV_FRAME = 18 + // MAV_FRAME_ESTIM_ENU - Odometry local coordinate frame of data given by an estimator running onboard the vehicle, Z-up (x: East, y: North, z: Up). + MAV_FRAME_RESERVED_19 MAV_FRAME = 19 + // FRD local tangent frame (x: Forward, y: Right, z: Down) with origin fixed relative to earth. The forward axis is aligned to the front of the vehicle in the horizontal plane. + MAV_FRAME_LOCAL_FRD MAV_FRAME = 20 + // FLU local tangent frame (x: Forward, y: Left, z: Up) with origin fixed relative to earth. The forward axis is aligned to the front of the vehicle in the horizontal plane. + MAV_FRAME_LOCAL_FLU MAV_FRAME = 21 +) + +var labels_MAV_FRAME = map[MAV_FRAME]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAV_FRAME) MarshalText() ([]byte, error) { + if l, ok := labels_MAV_FRAME[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAV_FRAME = map[string]MAV_FRAME{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAV_FRAME) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAV_FRAME[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAV_FRAME) String() string { + if l, ok := labels_MAV_FRAME[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/storm32/enum_mav_generator_status_flag.go b/pkg/dialects/storm32/enum_mav_generator_status_flag.go new file mode 100644 index 000000000..72df64cb4 --- /dev/null +++ b/pkg/dialects/storm32/enum_mav_generator_status_flag.go @@ -0,0 +1,88 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package storm32 + +import ( + "errors" +) + +// Flags to report status/failure cases for a power generator (used in GENERATOR_STATUS). Note that FAULTS are conditions that cause the generator to fail. Warnings are conditions that require attention before the next use (they indicate the system is not operating properly). +type MAV_GENERATOR_STATUS_FLAG int + +const ( + // Generator is off. + MAV_GENERATOR_STATUS_FLAG_OFF MAV_GENERATOR_STATUS_FLAG = 1 + // Generator is ready to start generating power. + MAV_GENERATOR_STATUS_FLAG_READY MAV_GENERATOR_STATUS_FLAG = 2 + // Generator is generating power. + MAV_GENERATOR_STATUS_FLAG_GENERATING MAV_GENERATOR_STATUS_FLAG = 4 + // Generator is charging the batteries (generating enough power to charge and provide the load). + MAV_GENERATOR_STATUS_FLAG_CHARGING MAV_GENERATOR_STATUS_FLAG = 8 + // Generator is operating at a reduced maximum power. + MAV_GENERATOR_STATUS_FLAG_REDUCED_POWER MAV_GENERATOR_STATUS_FLAG = 16 + // Generator is providing the maximum output. + MAV_GENERATOR_STATUS_FLAG_MAXPOWER MAV_GENERATOR_STATUS_FLAG = 32 + // Generator is near the maximum operating temperature, cooling is insufficient. + MAV_GENERATOR_STATUS_FLAG_OVERTEMP_WARNING MAV_GENERATOR_STATUS_FLAG = 64 + // Generator hit the maximum operating temperature and shutdown. + MAV_GENERATOR_STATUS_FLAG_OVERTEMP_FAULT MAV_GENERATOR_STATUS_FLAG = 128 + // Power electronics are near the maximum operating temperature, cooling is insufficient. + MAV_GENERATOR_STATUS_FLAG_ELECTRONICS_OVERTEMP_WARNING MAV_GENERATOR_STATUS_FLAG = 256 + // Power electronics hit the maximum operating temperature and shutdown. + MAV_GENERATOR_STATUS_FLAG_ELECTRONICS_OVERTEMP_FAULT MAV_GENERATOR_STATUS_FLAG = 512 + // Power electronics experienced a fault and shutdown. + MAV_GENERATOR_STATUS_FLAG_ELECTRONICS_FAULT MAV_GENERATOR_STATUS_FLAG = 1024 + // The power source supplying the generator failed e.g. mechanical generator stopped, tether is no longer providing power, solar cell is in shade, hydrogen reaction no longer happening. + MAV_GENERATOR_STATUS_FLAG_POWERSOURCE_FAULT MAV_GENERATOR_STATUS_FLAG = 2048 + // Generator controller having communication problems. + MAV_GENERATOR_STATUS_FLAG_COMMUNICATION_WARNING MAV_GENERATOR_STATUS_FLAG = 4096 + // Power electronic or generator cooling system error. + MAV_GENERATOR_STATUS_FLAG_COOLING_WARNING MAV_GENERATOR_STATUS_FLAG = 8192 + // Generator controller power rail experienced a fault. + MAV_GENERATOR_STATUS_FLAG_POWER_RAIL_FAULT MAV_GENERATOR_STATUS_FLAG = 16384 + // Generator controller exceeded the overcurrent threshold and shutdown to prevent damage. + MAV_GENERATOR_STATUS_FLAG_OVERCURRENT_FAULT MAV_GENERATOR_STATUS_FLAG = 32768 + // Generator controller detected a high current going into the batteries and shutdown to prevent battery damage. + MAV_GENERATOR_STATUS_FLAG_BATTERY_OVERCHARGE_CURRENT_FAULT MAV_GENERATOR_STATUS_FLAG = 65536 + // Generator controller exceeded it's overvoltage threshold and shutdown to prevent it exceeding the voltage rating. + MAV_GENERATOR_STATUS_FLAG_OVERVOLTAGE_FAULT MAV_GENERATOR_STATUS_FLAG = 131072 + // Batteries are under voltage (generator will not start). + MAV_GENERATOR_STATUS_FLAG_BATTERY_UNDERVOLT_FAULT MAV_GENERATOR_STATUS_FLAG = 262144 + // Generator start is inhibited by e.g. a safety switch. + MAV_GENERATOR_STATUS_FLAG_START_INHIBITED MAV_GENERATOR_STATUS_FLAG = 524288 + // Generator requires maintenance. + MAV_GENERATOR_STATUS_FLAG_MAINTENANCE_REQUIRED MAV_GENERATOR_STATUS_FLAG = 1048576 + // Generator is not ready to generate yet. + MAV_GENERATOR_STATUS_FLAG_WARMING_UP MAV_GENERATOR_STATUS_FLAG = 2097152 + // Generator is idle. + MAV_GENERATOR_STATUS_FLAG_IDLE MAV_GENERATOR_STATUS_FLAG = 4194304 +) + +var labels_MAV_GENERATOR_STATUS_FLAG = map[MAV_GENERATOR_STATUS_FLAG]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAV_GENERATOR_STATUS_FLAG) MarshalText() ([]byte, error) { + if l, ok := labels_MAV_GENERATOR_STATUS_FLAG[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAV_GENERATOR_STATUS_FLAG = map[string]MAV_GENERATOR_STATUS_FLAG{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAV_GENERATOR_STATUS_FLAG) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAV_GENERATOR_STATUS_FLAG[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAV_GENERATOR_STATUS_FLAG) String() string { + if l, ok := labels_MAV_GENERATOR_STATUS_FLAG[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/storm32/enum_mav_goto.go b/pkg/dialects/storm32/enum_mav_goto.go new file mode 100644 index 000000000..f6d107d60 --- /dev/null +++ b/pkg/dialects/storm32/enum_mav_goto.go @@ -0,0 +1,50 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package storm32 + +import ( + "errors" +) + +// Actions that may be specified in MAV_CMD_OVERRIDE_GOTO to override mission execution. +type MAV_GOTO int + +const ( + // Hold at the current position. + MAV_GOTO_DO_HOLD MAV_GOTO = 0 + // Continue with the next item in mission execution. + MAV_GOTO_DO_CONTINUE MAV_GOTO = 1 + // Hold at the current position of the system + MAV_GOTO_HOLD_AT_CURRENT_POSITION MAV_GOTO = 2 + // Hold at the position specified in the parameters of the DO_HOLD action + MAV_GOTO_HOLD_AT_SPECIFIED_POSITION MAV_GOTO = 3 +) + +var labels_MAV_GOTO = map[MAV_GOTO]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAV_GOTO) MarshalText() ([]byte, error) { + if l, ok := labels_MAV_GOTO[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAV_GOTO = map[string]MAV_GOTO{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAV_GOTO) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAV_GOTO[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAV_GOTO) String() string { + if l, ok := labels_MAV_GOTO[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/storm32/enum_mav_landed_state.go b/pkg/dialects/storm32/enum_mav_landed_state.go new file mode 100644 index 000000000..9d2fad860 --- /dev/null +++ b/pkg/dialects/storm32/enum_mav_landed_state.go @@ -0,0 +1,52 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package storm32 + +import ( + "errors" +) + +// Enumeration of landed detector states +type MAV_LANDED_STATE int + +const ( + // MAV landed state is unknown + MAV_LANDED_STATE_UNDEFINED MAV_LANDED_STATE = 0 + // MAV is landed (on ground) + MAV_LANDED_STATE_ON_GROUND MAV_LANDED_STATE = 1 + // MAV is in air + MAV_LANDED_STATE_IN_AIR MAV_LANDED_STATE = 2 + // MAV currently taking off + MAV_LANDED_STATE_TAKEOFF MAV_LANDED_STATE = 3 + // MAV currently landing + MAV_LANDED_STATE_LANDING MAV_LANDED_STATE = 4 +) + +var labels_MAV_LANDED_STATE = map[MAV_LANDED_STATE]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAV_LANDED_STATE) MarshalText() ([]byte, error) { + if l, ok := labels_MAV_LANDED_STATE[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAV_LANDED_STATE = map[string]MAV_LANDED_STATE{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAV_LANDED_STATE) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAV_LANDED_STATE[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAV_LANDED_STATE) String() string { + if l, ok := labels_MAV_LANDED_STATE[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/storm32/enum_mav_mission_result.go b/pkg/dialects/storm32/enum_mav_mission_result.go new file mode 100644 index 000000000..a99a9d7a7 --- /dev/null +++ b/pkg/dialects/storm32/enum_mav_mission_result.go @@ -0,0 +1,74 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package storm32 + +import ( + "errors" +) + +// Result of mission operation (in a MISSION_ACK message). +type MAV_MISSION_RESULT int + +const ( + // mission accepted OK + MAV_MISSION_ACCEPTED MAV_MISSION_RESULT = 0 + // Generic error / not accepting mission commands at all right now. + MAV_MISSION_ERROR MAV_MISSION_RESULT = 1 + // Coordinate frame is not supported. + MAV_MISSION_UNSUPPORTED_FRAME MAV_MISSION_RESULT = 2 + // Command is not supported. + MAV_MISSION_UNSUPPORTED MAV_MISSION_RESULT = 3 + // Mission items exceed storage space. + MAV_MISSION_NO_SPACE MAV_MISSION_RESULT = 4 + // One of the parameters has an invalid value. + MAV_MISSION_INVALID MAV_MISSION_RESULT = 5 + // param1 has an invalid value. + MAV_MISSION_INVALID_PARAM1 MAV_MISSION_RESULT = 6 + // param2 has an invalid value. + MAV_MISSION_INVALID_PARAM2 MAV_MISSION_RESULT = 7 + // param3 has an invalid value. + MAV_MISSION_INVALID_PARAM3 MAV_MISSION_RESULT = 8 + // param4 has an invalid value. + MAV_MISSION_INVALID_PARAM4 MAV_MISSION_RESULT = 9 + // x / param5 has an invalid value. + MAV_MISSION_INVALID_PARAM5_X MAV_MISSION_RESULT = 10 + // y / param6 has an invalid value. + MAV_MISSION_INVALID_PARAM6_Y MAV_MISSION_RESULT = 11 + // z / param7 has an invalid value. + MAV_MISSION_INVALID_PARAM7 MAV_MISSION_RESULT = 12 + // Mission item received out of sequence + MAV_MISSION_INVALID_SEQUENCE MAV_MISSION_RESULT = 13 + // Not accepting any mission commands from this communication partner. + MAV_MISSION_DENIED MAV_MISSION_RESULT = 14 + // Current mission operation cancelled (e.g. mission upload, mission download). + MAV_MISSION_OPERATION_CANCELLED MAV_MISSION_RESULT = 15 +) + +var labels_MAV_MISSION_RESULT = map[MAV_MISSION_RESULT]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAV_MISSION_RESULT) MarshalText() ([]byte, error) { + if l, ok := labels_MAV_MISSION_RESULT[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAV_MISSION_RESULT = map[string]MAV_MISSION_RESULT{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAV_MISSION_RESULT) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAV_MISSION_RESULT[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAV_MISSION_RESULT) String() string { + if l, ok := labels_MAV_MISSION_RESULT[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/storm32/enum_mav_mission_type.go b/pkg/dialects/storm32/enum_mav_mission_type.go new file mode 100644 index 000000000..6c3447f59 --- /dev/null +++ b/pkg/dialects/storm32/enum_mav_mission_type.go @@ -0,0 +1,50 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package storm32 + +import ( + "errors" +) + +// Type of mission items being requested/sent in mission protocol. +type MAV_MISSION_TYPE int + +const ( + // Items are mission commands for main mission. + MAV_MISSION_TYPE_MISSION MAV_MISSION_TYPE = 0 + // Specifies GeoFence area(s). Items are MAV_CMD_NAV_FENCE_ GeoFence items. + MAV_MISSION_TYPE_FENCE MAV_MISSION_TYPE = 1 + // Specifies the rally points for the vehicle. Rally points are alternative RTL points. Items are MAV_CMD_NAV_RALLY_POINT rally point items. + MAV_MISSION_TYPE_RALLY MAV_MISSION_TYPE = 2 + // Only used in MISSION_CLEAR_ALL to clear all mission types. + MAV_MISSION_TYPE_ALL MAV_MISSION_TYPE = 255 +) + +var labels_MAV_MISSION_TYPE = map[MAV_MISSION_TYPE]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAV_MISSION_TYPE) MarshalText() ([]byte, error) { + if l, ok := labels_MAV_MISSION_TYPE[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAV_MISSION_TYPE = map[string]MAV_MISSION_TYPE{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAV_MISSION_TYPE) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAV_MISSION_TYPE[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAV_MISSION_TYPE) String() string { + if l, ok := labels_MAV_MISSION_TYPE[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/storm32/enum_mav_mode.go b/pkg/dialects/storm32/enum_mav_mode.go new file mode 100644 index 000000000..4379eaed7 --- /dev/null +++ b/pkg/dialects/storm32/enum_mav_mode.go @@ -0,0 +1,65 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package storm32 + +import ( + "errors" +) + +// These defines are predefined OR-combined mode flags. There is no need to use values from this enum, but it +// simplifies the use of the mode flags. Note that manual input is enabled in all modes as a safety override. +type MAV_MODE int + +const ( + // System is not ready to fly, booting, calibrating, etc. No flag is set. + MAV_MODE_PREFLIGHT MAV_MODE = 0 + // System is allowed to be active, under assisted RC control. + MAV_MODE_STABILIZE_DISARMED MAV_MODE = 80 + // System is allowed to be active, under assisted RC control. + MAV_MODE_STABILIZE_ARMED MAV_MODE = 208 + // System is allowed to be active, under manual (RC) control, no stabilization + MAV_MODE_MANUAL_DISARMED MAV_MODE = 64 + // System is allowed to be active, under manual (RC) control, no stabilization + MAV_MODE_MANUAL_ARMED MAV_MODE = 192 + // System is allowed to be active, under autonomous control, manual setpoint + MAV_MODE_GUIDED_DISARMED MAV_MODE = 88 + // System is allowed to be active, under autonomous control, manual setpoint + MAV_MODE_GUIDED_ARMED MAV_MODE = 216 + // System is allowed to be active, under autonomous control and navigation (the trajectory is decided onboard and not pre-programmed by waypoints) + MAV_MODE_AUTO_DISARMED MAV_MODE = 92 + // System is allowed to be active, under autonomous control and navigation (the trajectory is decided onboard and not pre-programmed by waypoints) + MAV_MODE_AUTO_ARMED MAV_MODE = 220 + // UNDEFINED mode. This solely depends on the autopilot - use with caution, intended for developers only. + MAV_MODE_TEST_DISARMED MAV_MODE = 66 + // UNDEFINED mode. This solely depends on the autopilot - use with caution, intended for developers only. + MAV_MODE_TEST_ARMED MAV_MODE = 194 +) + +var labels_MAV_MODE = map[MAV_MODE]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAV_MODE) MarshalText() ([]byte, error) { + if l, ok := labels_MAV_MODE[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAV_MODE = map[string]MAV_MODE{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAV_MODE) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAV_MODE[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAV_MODE) String() string { + if l, ok := labels_MAV_MODE[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/storm32/enum_mav_mode_flag.go b/pkg/dialects/storm32/enum_mav_mode_flag.go new file mode 100644 index 000000000..bd1c0d8e4 --- /dev/null +++ b/pkg/dialects/storm32/enum_mav_mode_flag.go @@ -0,0 +1,58 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package storm32 + +import ( + "errors" +) + +// These flags encode the MAV mode. +type MAV_MODE_FLAG int + +const ( + // 0b10000000 MAV safety set to armed. Motors are enabled / running / can start. Ready to fly. Additional note: this flag is to be ignore when sent in the command MAV_CMD_DO_SET_MODE and MAV_CMD_COMPONENT_ARM_DISARM shall be used instead. The flag can still be used to report the armed state. + MAV_MODE_FLAG_SAFETY_ARMED MAV_MODE_FLAG = 128 + // 0b01000000 remote control input is enabled. + MAV_MODE_FLAG_MANUAL_INPUT_ENABLED MAV_MODE_FLAG = 64 + // 0b00100000 hardware in the loop simulation. All motors / actuators are blocked, but internal software is full operational. + MAV_MODE_FLAG_HIL_ENABLED MAV_MODE_FLAG = 32 + // 0b00010000 system stabilizes electronically its attitude (and optionally position). It needs however further control inputs to move around. + MAV_MODE_FLAG_STABILIZE_ENABLED MAV_MODE_FLAG = 16 + // 0b00001000 guided mode enabled, system flies waypoints / mission items. + MAV_MODE_FLAG_GUIDED_ENABLED MAV_MODE_FLAG = 8 + // 0b00000100 autonomous mode enabled, system finds its own goal positions. Guided flag can be set or not, depends on the actual implementation. + MAV_MODE_FLAG_AUTO_ENABLED MAV_MODE_FLAG = 4 + // 0b00000010 system has a test mode enabled. This flag is intended for temporary system tests and should not be used for stable implementations. + MAV_MODE_FLAG_TEST_ENABLED MAV_MODE_FLAG = 2 + // 0b00000001 Reserved for future use. + MAV_MODE_FLAG_CUSTOM_MODE_ENABLED MAV_MODE_FLAG = 1 +) + +var labels_MAV_MODE_FLAG = map[MAV_MODE_FLAG]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAV_MODE_FLAG) MarshalText() ([]byte, error) { + if l, ok := labels_MAV_MODE_FLAG[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAV_MODE_FLAG = map[string]MAV_MODE_FLAG{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAV_MODE_FLAG) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAV_MODE_FLAG[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAV_MODE_FLAG) String() string { + if l, ok := labels_MAV_MODE_FLAG[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/storm32/enum_mav_mode_flag_decode_position.go b/pkg/dialects/storm32/enum_mav_mode_flag_decode_position.go new file mode 100644 index 000000000..ffb92ef18 --- /dev/null +++ b/pkg/dialects/storm32/enum_mav_mode_flag_decode_position.go @@ -0,0 +1,58 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package storm32 + +import ( + "errors" +) + +// These values encode the bit positions of the decode position. These values can be used to read the value of a flag bit by combining the base_mode variable with AND with the flag position value. The result will be either 0 or 1, depending on if the flag is set or not. +type MAV_MODE_FLAG_DECODE_POSITION int + +const ( + // First bit: 10000000 + MAV_MODE_FLAG_DECODE_POSITION_SAFETY MAV_MODE_FLAG_DECODE_POSITION = 128 + // Second bit: 01000000 + MAV_MODE_FLAG_DECODE_POSITION_MANUAL MAV_MODE_FLAG_DECODE_POSITION = 64 + // Third bit: 00100000 + MAV_MODE_FLAG_DECODE_POSITION_HIL MAV_MODE_FLAG_DECODE_POSITION = 32 + // Fourth bit: 00010000 + MAV_MODE_FLAG_DECODE_POSITION_STABILIZE MAV_MODE_FLAG_DECODE_POSITION = 16 + // Fifth bit: 00001000 + MAV_MODE_FLAG_DECODE_POSITION_GUIDED MAV_MODE_FLAG_DECODE_POSITION = 8 + // Sixth bit: 00000100 + MAV_MODE_FLAG_DECODE_POSITION_AUTO MAV_MODE_FLAG_DECODE_POSITION = 4 + // Seventh bit: 00000010 + MAV_MODE_FLAG_DECODE_POSITION_TEST MAV_MODE_FLAG_DECODE_POSITION = 2 + // Eighth bit: 00000001 + MAV_MODE_FLAG_DECODE_POSITION_CUSTOM_MODE MAV_MODE_FLAG_DECODE_POSITION = 1 +) + +var labels_MAV_MODE_FLAG_DECODE_POSITION = map[MAV_MODE_FLAG_DECODE_POSITION]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAV_MODE_FLAG_DECODE_POSITION) MarshalText() ([]byte, error) { + if l, ok := labels_MAV_MODE_FLAG_DECODE_POSITION[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAV_MODE_FLAG_DECODE_POSITION = map[string]MAV_MODE_FLAG_DECODE_POSITION{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAV_MODE_FLAG_DECODE_POSITION) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAV_MODE_FLAG_DECODE_POSITION[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAV_MODE_FLAG_DECODE_POSITION) String() string { + if l, ok := labels_MAV_MODE_FLAG_DECODE_POSITION[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/storm32/enum_mav_mode_gimbal.go b/pkg/dialects/storm32/enum_mav_mode_gimbal.go new file mode 100644 index 000000000..8904a263d --- /dev/null +++ b/pkg/dialects/storm32/enum_mav_mode_gimbal.go @@ -0,0 +1,55 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package storm32 + +import ( + "errors" +) + +type MAV_MODE_GIMBAL int + +const ( + // Gimbal is powered on but has not started initializing yet. + MAV_MODE_GIMBAL_UNINITIALIZED MAV_MODE_GIMBAL = 0 + // Gimbal is currently running calibration on the pitch axis. + MAV_MODE_GIMBAL_CALIBRATING_PITCH MAV_MODE_GIMBAL = 1 + // Gimbal is currently running calibration on the roll axis. + MAV_MODE_GIMBAL_CALIBRATING_ROLL MAV_MODE_GIMBAL = 2 + // Gimbal is currently running calibration on the yaw axis. + MAV_MODE_GIMBAL_CALIBRATING_YAW MAV_MODE_GIMBAL = 3 + // Gimbal has finished calibrating and initializing, but is relaxed pending reception of first rate command from copter. + MAV_MODE_GIMBAL_INITIALIZED MAV_MODE_GIMBAL = 4 + // Gimbal is actively stabilizing. + MAV_MODE_GIMBAL_ACTIVE MAV_MODE_GIMBAL = 5 + // Gimbal is relaxed because it missed more than 10 expected rate command messages in a row. Gimbal will move back to active mode when it receives a new rate command. + MAV_MODE_GIMBAL_RATE_CMD_TIMEOUT MAV_MODE_GIMBAL = 6 +) + +var labels_MAV_MODE_GIMBAL = map[MAV_MODE_GIMBAL]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAV_MODE_GIMBAL) MarshalText() ([]byte, error) { + if l, ok := labels_MAV_MODE_GIMBAL[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAV_MODE_GIMBAL = map[string]MAV_MODE_GIMBAL{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAV_MODE_GIMBAL) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAV_MODE_GIMBAL[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAV_MODE_GIMBAL) String() string { + if l, ok := labels_MAV_MODE_GIMBAL[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/storm32/enum_mav_mount_mode.go b/pkg/dialects/storm32/enum_mav_mount_mode.go new file mode 100644 index 000000000..54aae88c0 --- /dev/null +++ b/pkg/dialects/storm32/enum_mav_mount_mode.go @@ -0,0 +1,56 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package storm32 + +import ( + "errors" +) + +// Enumeration of possible mount operation modes. This message is used by obsolete/deprecated gimbal messages. +type MAV_MOUNT_MODE int + +const ( + // Load and keep safe position (Roll,Pitch,Yaw) from permant memory and stop stabilization + MAV_MOUNT_MODE_RETRACT MAV_MOUNT_MODE = 0 + // Load and keep neutral position (Roll,Pitch,Yaw) from permanent memory. + MAV_MOUNT_MODE_NEUTRAL MAV_MOUNT_MODE = 1 + // Load neutral position and start MAVLink Roll,Pitch,Yaw control with stabilization + MAV_MOUNT_MODE_MAVLINK_TARGETING MAV_MOUNT_MODE = 2 + // Load neutral position and start RC Roll,Pitch,Yaw control with stabilization + MAV_MOUNT_MODE_RC_TARGETING MAV_MOUNT_MODE = 3 + // Load neutral position and start to point to Lat,Lon,Alt + MAV_MOUNT_MODE_GPS_POINT MAV_MOUNT_MODE = 4 + // Gimbal tracks system with specified system ID + MAV_MOUNT_MODE_SYSID_TARGET MAV_MOUNT_MODE = 5 + // Gimbal tracks home location + MAV_MOUNT_MODE_HOME_LOCATION MAV_MOUNT_MODE = 6 +) + +var labels_MAV_MOUNT_MODE = map[MAV_MOUNT_MODE]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAV_MOUNT_MODE) MarshalText() ([]byte, error) { + if l, ok := labels_MAV_MOUNT_MODE[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAV_MOUNT_MODE = map[string]MAV_MOUNT_MODE{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAV_MOUNT_MODE) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAV_MOUNT_MODE[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAV_MOUNT_MODE) String() string { + if l, ok := labels_MAV_MOUNT_MODE[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/storm32/enum_mav_odid_auth_type.go b/pkg/dialects/storm32/enum_mav_odid_auth_type.go new file mode 100644 index 000000000..281db630d --- /dev/null +++ b/pkg/dialects/storm32/enum_mav_odid_auth_type.go @@ -0,0 +1,53 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package storm32 + +import ( + "errors" +) + +type MAV_ODID_AUTH_TYPE int + +const ( + // No authentication type is specified. + MAV_ODID_AUTH_TYPE_NONE MAV_ODID_AUTH_TYPE = 0 + // Signature for the UAS (Unmanned Aircraft System) ID. + MAV_ODID_AUTH_TYPE_UAS_ID_SIGNATURE MAV_ODID_AUTH_TYPE = 1 + // Signature for the Operator ID. + MAV_ODID_AUTH_TYPE_OPERATOR_ID_SIGNATURE MAV_ODID_AUTH_TYPE = 2 + // Signature for the entire message set. + MAV_ODID_AUTH_TYPE_MESSAGE_SET_SIGNATURE MAV_ODID_AUTH_TYPE = 3 + // Authentication is provided by Network Remote ID. + MAV_ODID_AUTH_TYPE_NETWORK_REMOTE_ID MAV_ODID_AUTH_TYPE = 4 + // The exact authentication type is indicated by the first byte of authentication_data and these type values are managed by ICAO. + MAV_ODID_AUTH_TYPE_SPECIFIC_AUTHENTICATION MAV_ODID_AUTH_TYPE = 5 +) + +var labels_MAV_ODID_AUTH_TYPE = map[MAV_ODID_AUTH_TYPE]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAV_ODID_AUTH_TYPE) MarshalText() ([]byte, error) { + if l, ok := labels_MAV_ODID_AUTH_TYPE[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAV_ODID_AUTH_TYPE = map[string]MAV_ODID_AUTH_TYPE{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAV_ODID_AUTH_TYPE) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAV_ODID_AUTH_TYPE[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAV_ODID_AUTH_TYPE) String() string { + if l, ok := labels_MAV_ODID_AUTH_TYPE[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/storm32/enum_mav_odid_category_eu.go b/pkg/dialects/storm32/enum_mav_odid_category_eu.go new file mode 100644 index 000000000..3702ef1fc --- /dev/null +++ b/pkg/dialects/storm32/enum_mav_odid_category_eu.go @@ -0,0 +1,49 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package storm32 + +import ( + "errors" +) + +type MAV_ODID_CATEGORY_EU int + +const ( + // The category for the UA, according to the EU specification, is undeclared. + MAV_ODID_CATEGORY_EU_UNDECLARED MAV_ODID_CATEGORY_EU = 0 + // The category for the UA, according to the EU specification, is the Open category. + MAV_ODID_CATEGORY_EU_OPEN MAV_ODID_CATEGORY_EU = 1 + // The category for the UA, according to the EU specification, is the Specific category. + MAV_ODID_CATEGORY_EU_SPECIFIC MAV_ODID_CATEGORY_EU = 2 + // The category for the UA, according to the EU specification, is the Certified category. + MAV_ODID_CATEGORY_EU_CERTIFIED MAV_ODID_CATEGORY_EU = 3 +) + +var labels_MAV_ODID_CATEGORY_EU = map[MAV_ODID_CATEGORY_EU]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAV_ODID_CATEGORY_EU) MarshalText() ([]byte, error) { + if l, ok := labels_MAV_ODID_CATEGORY_EU[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAV_ODID_CATEGORY_EU = map[string]MAV_ODID_CATEGORY_EU{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAV_ODID_CATEGORY_EU) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAV_ODID_CATEGORY_EU[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAV_ODID_CATEGORY_EU) String() string { + if l, ok := labels_MAV_ODID_CATEGORY_EU[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/storm32/enum_mav_odid_class_eu.go b/pkg/dialects/storm32/enum_mav_odid_class_eu.go new file mode 100644 index 000000000..1de9fa719 --- /dev/null +++ b/pkg/dialects/storm32/enum_mav_odid_class_eu.go @@ -0,0 +1,57 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package storm32 + +import ( + "errors" +) + +type MAV_ODID_CLASS_EU int + +const ( + // The class for the UA, according to the EU specification, is undeclared. + MAV_ODID_CLASS_EU_UNDECLARED MAV_ODID_CLASS_EU = 0 + // The class for the UA, according to the EU specification, is Class 0. + MAV_ODID_CLASS_EU_CLASS_0 MAV_ODID_CLASS_EU = 1 + // The class for the UA, according to the EU specification, is Class 1. + MAV_ODID_CLASS_EU_CLASS_1 MAV_ODID_CLASS_EU = 2 + // The class for the UA, according to the EU specification, is Class 2. + MAV_ODID_CLASS_EU_CLASS_2 MAV_ODID_CLASS_EU = 3 + // The class for the UA, according to the EU specification, is Class 3. + MAV_ODID_CLASS_EU_CLASS_3 MAV_ODID_CLASS_EU = 4 + // The class for the UA, according to the EU specification, is Class 4. + MAV_ODID_CLASS_EU_CLASS_4 MAV_ODID_CLASS_EU = 5 + // The class for the UA, according to the EU specification, is Class 5. + MAV_ODID_CLASS_EU_CLASS_5 MAV_ODID_CLASS_EU = 6 + // The class for the UA, according to the EU specification, is Class 6. + MAV_ODID_CLASS_EU_CLASS_6 MAV_ODID_CLASS_EU = 7 +) + +var labels_MAV_ODID_CLASS_EU = map[MAV_ODID_CLASS_EU]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAV_ODID_CLASS_EU) MarshalText() ([]byte, error) { + if l, ok := labels_MAV_ODID_CLASS_EU[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAV_ODID_CLASS_EU = map[string]MAV_ODID_CLASS_EU{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAV_ODID_CLASS_EU) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAV_ODID_CLASS_EU[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAV_ODID_CLASS_EU) String() string { + if l, ok := labels_MAV_ODID_CLASS_EU[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/storm32/enum_mav_odid_classification_type.go b/pkg/dialects/storm32/enum_mav_odid_classification_type.go new file mode 100644 index 000000000..66df44f99 --- /dev/null +++ b/pkg/dialects/storm32/enum_mav_odid_classification_type.go @@ -0,0 +1,45 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package storm32 + +import ( + "errors" +) + +type MAV_ODID_CLASSIFICATION_TYPE int + +const ( + // The classification type for the UA is undeclared. + MAV_ODID_CLASSIFICATION_TYPE_UNDECLARED MAV_ODID_CLASSIFICATION_TYPE = 0 + // The classification type for the UA follows EU (European Union) specifications. + MAV_ODID_CLASSIFICATION_TYPE_EU MAV_ODID_CLASSIFICATION_TYPE = 1 +) + +var labels_MAV_ODID_CLASSIFICATION_TYPE = map[MAV_ODID_CLASSIFICATION_TYPE]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAV_ODID_CLASSIFICATION_TYPE) MarshalText() ([]byte, error) { + if l, ok := labels_MAV_ODID_CLASSIFICATION_TYPE[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAV_ODID_CLASSIFICATION_TYPE = map[string]MAV_ODID_CLASSIFICATION_TYPE{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAV_ODID_CLASSIFICATION_TYPE) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAV_ODID_CLASSIFICATION_TYPE[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAV_ODID_CLASSIFICATION_TYPE) String() string { + if l, ok := labels_MAV_ODID_CLASSIFICATION_TYPE[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/storm32/enum_mav_odid_desc_type.go b/pkg/dialects/storm32/enum_mav_odid_desc_type.go new file mode 100644 index 000000000..36eac4a52 --- /dev/null +++ b/pkg/dialects/storm32/enum_mav_odid_desc_type.go @@ -0,0 +1,43 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package storm32 + +import ( + "errors" +) + +type MAV_ODID_DESC_TYPE int + +const ( + // Free-form text description of the purpose of the flight. + MAV_ODID_DESC_TYPE_TEXT MAV_ODID_DESC_TYPE = 0 +) + +var labels_MAV_ODID_DESC_TYPE = map[MAV_ODID_DESC_TYPE]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAV_ODID_DESC_TYPE) MarshalText() ([]byte, error) { + if l, ok := labels_MAV_ODID_DESC_TYPE[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAV_ODID_DESC_TYPE = map[string]MAV_ODID_DESC_TYPE{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAV_ODID_DESC_TYPE) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAV_ODID_DESC_TYPE[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAV_ODID_DESC_TYPE) String() string { + if l, ok := labels_MAV_ODID_DESC_TYPE[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/storm32/enum_mav_odid_height_ref.go b/pkg/dialects/storm32/enum_mav_odid_height_ref.go new file mode 100644 index 000000000..016adcdec --- /dev/null +++ b/pkg/dialects/storm32/enum_mav_odid_height_ref.go @@ -0,0 +1,45 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package storm32 + +import ( + "errors" +) + +type MAV_ODID_HEIGHT_REF int + +const ( + // The height field is relative to the take-off location. + MAV_ODID_HEIGHT_REF_OVER_TAKEOFF MAV_ODID_HEIGHT_REF = 0 + // The height field is relative to ground. + MAV_ODID_HEIGHT_REF_OVER_GROUND MAV_ODID_HEIGHT_REF = 1 +) + +var labels_MAV_ODID_HEIGHT_REF = map[MAV_ODID_HEIGHT_REF]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAV_ODID_HEIGHT_REF) MarshalText() ([]byte, error) { + if l, ok := labels_MAV_ODID_HEIGHT_REF[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAV_ODID_HEIGHT_REF = map[string]MAV_ODID_HEIGHT_REF{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAV_ODID_HEIGHT_REF) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAV_ODID_HEIGHT_REF[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAV_ODID_HEIGHT_REF) String() string { + if l, ok := labels_MAV_ODID_HEIGHT_REF[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/storm32/enum_mav_odid_hor_acc.go b/pkg/dialects/storm32/enum_mav_odid_hor_acc.go new file mode 100644 index 000000000..a4d4cd65f --- /dev/null +++ b/pkg/dialects/storm32/enum_mav_odid_hor_acc.go @@ -0,0 +1,67 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package storm32 + +import ( + "errors" +) + +type MAV_ODID_HOR_ACC int + +const ( + // The horizontal accuracy is unknown. + MAV_ODID_HOR_ACC_UNKNOWN MAV_ODID_HOR_ACC = 0 + // The horizontal accuracy is smaller than 10 Nautical Miles. 18.52 km. + MAV_ODID_HOR_ACC_10NM MAV_ODID_HOR_ACC = 1 + // The horizontal accuracy is smaller than 4 Nautical Miles. 7.408 km. + MAV_ODID_HOR_ACC_4NM MAV_ODID_HOR_ACC = 2 + // The horizontal accuracy is smaller than 2 Nautical Miles. 3.704 km. + MAV_ODID_HOR_ACC_2NM MAV_ODID_HOR_ACC = 3 + // The horizontal accuracy is smaller than 1 Nautical Miles. 1.852 km. + MAV_ODID_HOR_ACC_1NM MAV_ODID_HOR_ACC = 4 + // The horizontal accuracy is smaller than 0.5 Nautical Miles. 926 m. + MAV_ODID_HOR_ACC_0_5NM MAV_ODID_HOR_ACC = 5 + // The horizontal accuracy is smaller than 0.3 Nautical Miles. 555.6 m. + MAV_ODID_HOR_ACC_0_3NM MAV_ODID_HOR_ACC = 6 + // The horizontal accuracy is smaller than 0.1 Nautical Miles. 185.2 m. + MAV_ODID_HOR_ACC_0_1NM MAV_ODID_HOR_ACC = 7 + // The horizontal accuracy is smaller than 0.05 Nautical Miles. 92.6 m. + MAV_ODID_HOR_ACC_0_05NM MAV_ODID_HOR_ACC = 8 + // The horizontal accuracy is smaller than 30 meter. + MAV_ODID_HOR_ACC_30_METER MAV_ODID_HOR_ACC = 9 + // The horizontal accuracy is smaller than 10 meter. + MAV_ODID_HOR_ACC_10_METER MAV_ODID_HOR_ACC = 10 + // The horizontal accuracy is smaller than 3 meter. + MAV_ODID_HOR_ACC_3_METER MAV_ODID_HOR_ACC = 11 + // The horizontal accuracy is smaller than 1 meter. + MAV_ODID_HOR_ACC_1_METER MAV_ODID_HOR_ACC = 12 +) + +var labels_MAV_ODID_HOR_ACC = map[MAV_ODID_HOR_ACC]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAV_ODID_HOR_ACC) MarshalText() ([]byte, error) { + if l, ok := labels_MAV_ODID_HOR_ACC[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAV_ODID_HOR_ACC = map[string]MAV_ODID_HOR_ACC{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAV_ODID_HOR_ACC) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAV_ODID_HOR_ACC[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAV_ODID_HOR_ACC) String() string { + if l, ok := labels_MAV_ODID_HOR_ACC[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/storm32/enum_mav_odid_id_type.go b/pkg/dialects/storm32/enum_mav_odid_id_type.go new file mode 100644 index 000000000..452985da9 --- /dev/null +++ b/pkg/dialects/storm32/enum_mav_odid_id_type.go @@ -0,0 +1,51 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package storm32 + +import ( + "errors" +) + +type MAV_ODID_ID_TYPE int + +const ( + // No type defined. + MAV_ODID_ID_TYPE_NONE MAV_ODID_ID_TYPE = 0 + // Manufacturer Serial Number (ANSI/CTA-2063 format). + MAV_ODID_ID_TYPE_SERIAL_NUMBER MAV_ODID_ID_TYPE = 1 + // CAA (Civil Aviation Authority) registered ID. Format: [ICAO Country Code].[CAA Assigned ID]. + MAV_ODID_ID_TYPE_CAA_REGISTRATION_ID MAV_ODID_ID_TYPE = 2 + // UTM (Unmanned Traffic Management) assigned UUID (RFC4122). + MAV_ODID_ID_TYPE_UTM_ASSIGNED_UUID MAV_ODID_ID_TYPE = 3 + // A 20 byte ID for a specific flight/session. The exact ID type is indicated by the first byte of uas_id and these type values are managed by ICAO. + MAV_ODID_ID_TYPE_SPECIFIC_SESSION_ID MAV_ODID_ID_TYPE = 4 +) + +var labels_MAV_ODID_ID_TYPE = map[MAV_ODID_ID_TYPE]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAV_ODID_ID_TYPE) MarshalText() ([]byte, error) { + if l, ok := labels_MAV_ODID_ID_TYPE[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAV_ODID_ID_TYPE = map[string]MAV_ODID_ID_TYPE{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAV_ODID_ID_TYPE) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAV_ODID_ID_TYPE[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAV_ODID_ID_TYPE) String() string { + if l, ok := labels_MAV_ODID_ID_TYPE[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/storm32/enum_mav_odid_operator_id_type.go b/pkg/dialects/storm32/enum_mav_odid_operator_id_type.go new file mode 100644 index 000000000..0a32b8fa9 --- /dev/null +++ b/pkg/dialects/storm32/enum_mav_odid_operator_id_type.go @@ -0,0 +1,43 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package storm32 + +import ( + "errors" +) + +type MAV_ODID_OPERATOR_ID_TYPE int + +const ( + // CAA (Civil Aviation Authority) registered operator ID. + MAV_ODID_OPERATOR_ID_TYPE_CAA MAV_ODID_OPERATOR_ID_TYPE = 0 +) + +var labels_MAV_ODID_OPERATOR_ID_TYPE = map[MAV_ODID_OPERATOR_ID_TYPE]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAV_ODID_OPERATOR_ID_TYPE) MarshalText() ([]byte, error) { + if l, ok := labels_MAV_ODID_OPERATOR_ID_TYPE[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAV_ODID_OPERATOR_ID_TYPE = map[string]MAV_ODID_OPERATOR_ID_TYPE{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAV_ODID_OPERATOR_ID_TYPE) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAV_ODID_OPERATOR_ID_TYPE[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAV_ODID_OPERATOR_ID_TYPE) String() string { + if l, ok := labels_MAV_ODID_OPERATOR_ID_TYPE[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/storm32/enum_mav_odid_operator_location_type.go b/pkg/dialects/storm32/enum_mav_odid_operator_location_type.go new file mode 100644 index 000000000..5aee5fdb7 --- /dev/null +++ b/pkg/dialects/storm32/enum_mav_odid_operator_location_type.go @@ -0,0 +1,47 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package storm32 + +import ( + "errors" +) + +type MAV_ODID_OPERATOR_LOCATION_TYPE int + +const ( + // The location of the operator is the same as the take-off location. + MAV_ODID_OPERATOR_LOCATION_TYPE_TAKEOFF MAV_ODID_OPERATOR_LOCATION_TYPE = 0 + // The location of the operator is based on live GNSS data. + MAV_ODID_OPERATOR_LOCATION_TYPE_LIVE_GNSS MAV_ODID_OPERATOR_LOCATION_TYPE = 1 + // The location of the operator is a fixed location. + MAV_ODID_OPERATOR_LOCATION_TYPE_FIXED MAV_ODID_OPERATOR_LOCATION_TYPE = 2 +) + +var labels_MAV_ODID_OPERATOR_LOCATION_TYPE = map[MAV_ODID_OPERATOR_LOCATION_TYPE]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAV_ODID_OPERATOR_LOCATION_TYPE) MarshalText() ([]byte, error) { + if l, ok := labels_MAV_ODID_OPERATOR_LOCATION_TYPE[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAV_ODID_OPERATOR_LOCATION_TYPE = map[string]MAV_ODID_OPERATOR_LOCATION_TYPE{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAV_ODID_OPERATOR_LOCATION_TYPE) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAV_ODID_OPERATOR_LOCATION_TYPE[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAV_ODID_OPERATOR_LOCATION_TYPE) String() string { + if l, ok := labels_MAV_ODID_OPERATOR_LOCATION_TYPE[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/storm32/enum_mav_odid_speed_acc.go b/pkg/dialects/storm32/enum_mav_odid_speed_acc.go new file mode 100644 index 000000000..e6774bc31 --- /dev/null +++ b/pkg/dialects/storm32/enum_mav_odid_speed_acc.go @@ -0,0 +1,51 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package storm32 + +import ( + "errors" +) + +type MAV_ODID_SPEED_ACC int + +const ( + // The speed accuracy is unknown. + MAV_ODID_SPEED_ACC_UNKNOWN MAV_ODID_SPEED_ACC = 0 + // The speed accuracy is smaller than 10 meters per second. + MAV_ODID_SPEED_ACC_10_METERS_PER_SECOND MAV_ODID_SPEED_ACC = 1 + // The speed accuracy is smaller than 3 meters per second. + MAV_ODID_SPEED_ACC_3_METERS_PER_SECOND MAV_ODID_SPEED_ACC = 2 + // The speed accuracy is smaller than 1 meters per second. + MAV_ODID_SPEED_ACC_1_METERS_PER_SECOND MAV_ODID_SPEED_ACC = 3 + // The speed accuracy is smaller than 0.3 meters per second. + MAV_ODID_SPEED_ACC_0_3_METERS_PER_SECOND MAV_ODID_SPEED_ACC = 4 +) + +var labels_MAV_ODID_SPEED_ACC = map[MAV_ODID_SPEED_ACC]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAV_ODID_SPEED_ACC) MarshalText() ([]byte, error) { + if l, ok := labels_MAV_ODID_SPEED_ACC[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAV_ODID_SPEED_ACC = map[string]MAV_ODID_SPEED_ACC{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAV_ODID_SPEED_ACC) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAV_ODID_SPEED_ACC[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAV_ODID_SPEED_ACC) String() string { + if l, ok := labels_MAV_ODID_SPEED_ACC[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/storm32/enum_mav_odid_status.go b/pkg/dialects/storm32/enum_mav_odid_status.go new file mode 100644 index 000000000..a1148bf76 --- /dev/null +++ b/pkg/dialects/storm32/enum_mav_odid_status.go @@ -0,0 +1,49 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package storm32 + +import ( + "errors" +) + +type MAV_ODID_STATUS int + +const ( + // The status of the (UA) Unmanned Aircraft is undefined. + MAV_ODID_STATUS_UNDECLARED MAV_ODID_STATUS = 0 + // The UA is on the ground. + MAV_ODID_STATUS_GROUND MAV_ODID_STATUS = 1 + // The UA is in the air. + MAV_ODID_STATUS_AIRBORNE MAV_ODID_STATUS = 2 + // The UA is having an emergency. + MAV_ODID_STATUS_EMERGENCY MAV_ODID_STATUS = 3 +) + +var labels_MAV_ODID_STATUS = map[MAV_ODID_STATUS]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAV_ODID_STATUS) MarshalText() ([]byte, error) { + if l, ok := labels_MAV_ODID_STATUS[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAV_ODID_STATUS = map[string]MAV_ODID_STATUS{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAV_ODID_STATUS) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAV_ODID_STATUS[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAV_ODID_STATUS) String() string { + if l, ok := labels_MAV_ODID_STATUS[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/storm32/enum_mav_odid_time_acc.go b/pkg/dialects/storm32/enum_mav_odid_time_acc.go new file mode 100644 index 000000000..7a94fe9bc --- /dev/null +++ b/pkg/dialects/storm32/enum_mav_odid_time_acc.go @@ -0,0 +1,73 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package storm32 + +import ( + "errors" +) + +type MAV_ODID_TIME_ACC int + +const ( + // The timestamp accuracy is unknown. + MAV_ODID_TIME_ACC_UNKNOWN MAV_ODID_TIME_ACC = 0 + // The timestamp accuracy is smaller than or equal to 0.1 second. + MAV_ODID_TIME_ACC_0_1_SECOND MAV_ODID_TIME_ACC = 1 + // The timestamp accuracy is smaller than or equal to 0.2 second. + MAV_ODID_TIME_ACC_0_2_SECOND MAV_ODID_TIME_ACC = 2 + // The timestamp accuracy is smaller than or equal to 0.3 second. + MAV_ODID_TIME_ACC_0_3_SECOND MAV_ODID_TIME_ACC = 3 + // The timestamp accuracy is smaller than or equal to 0.4 second. + MAV_ODID_TIME_ACC_0_4_SECOND MAV_ODID_TIME_ACC = 4 + // The timestamp accuracy is smaller than or equal to 0.5 second. + MAV_ODID_TIME_ACC_0_5_SECOND MAV_ODID_TIME_ACC = 5 + // The timestamp accuracy is smaller than or equal to 0.6 second. + MAV_ODID_TIME_ACC_0_6_SECOND MAV_ODID_TIME_ACC = 6 + // The timestamp accuracy is smaller than or equal to 0.7 second. + MAV_ODID_TIME_ACC_0_7_SECOND MAV_ODID_TIME_ACC = 7 + // The timestamp accuracy is smaller than or equal to 0.8 second. + MAV_ODID_TIME_ACC_0_8_SECOND MAV_ODID_TIME_ACC = 8 + // The timestamp accuracy is smaller than or equal to 0.9 second. + MAV_ODID_TIME_ACC_0_9_SECOND MAV_ODID_TIME_ACC = 9 + // The timestamp accuracy is smaller than or equal to 1.0 second. + MAV_ODID_TIME_ACC_1_0_SECOND MAV_ODID_TIME_ACC = 10 + // The timestamp accuracy is smaller than or equal to 1.1 second. + MAV_ODID_TIME_ACC_1_1_SECOND MAV_ODID_TIME_ACC = 11 + // The timestamp accuracy is smaller than or equal to 1.2 second. + MAV_ODID_TIME_ACC_1_2_SECOND MAV_ODID_TIME_ACC = 12 + // The timestamp accuracy is smaller than or equal to 1.3 second. + MAV_ODID_TIME_ACC_1_3_SECOND MAV_ODID_TIME_ACC = 13 + // The timestamp accuracy is smaller than or equal to 1.4 second. + MAV_ODID_TIME_ACC_1_4_SECOND MAV_ODID_TIME_ACC = 14 + // The timestamp accuracy is smaller than or equal to 1.5 second. + MAV_ODID_TIME_ACC_1_5_SECOND MAV_ODID_TIME_ACC = 15 +) + +var labels_MAV_ODID_TIME_ACC = map[MAV_ODID_TIME_ACC]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAV_ODID_TIME_ACC) MarshalText() ([]byte, error) { + if l, ok := labels_MAV_ODID_TIME_ACC[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAV_ODID_TIME_ACC = map[string]MAV_ODID_TIME_ACC{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAV_ODID_TIME_ACC) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAV_ODID_TIME_ACC[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAV_ODID_TIME_ACC) String() string { + if l, ok := labels_MAV_ODID_TIME_ACC[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/storm32/enum_mav_odid_ua_type.go b/pkg/dialects/storm32/enum_mav_odid_ua_type.go new file mode 100644 index 000000000..eda2e717e --- /dev/null +++ b/pkg/dialects/storm32/enum_mav_odid_ua_type.go @@ -0,0 +1,73 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package storm32 + +import ( + "errors" +) + +type MAV_ODID_UA_TYPE int + +const ( + // No UA (Unmanned Aircraft) type defined. + MAV_ODID_UA_TYPE_NONE MAV_ODID_UA_TYPE = 0 + // Aeroplane/Airplane. Fixed wing. + MAV_ODID_UA_TYPE_AEROPLANE MAV_ODID_UA_TYPE = 1 + // Helicopter or multirotor. + MAV_ODID_UA_TYPE_HELICOPTER_OR_MULTIROTOR MAV_ODID_UA_TYPE = 2 + // Gyroplane. + MAV_ODID_UA_TYPE_GYROPLANE MAV_ODID_UA_TYPE = 3 + // VTOL (Vertical Take-Off and Landing). Fixed wing aircraft that can take off vertically. + MAV_ODID_UA_TYPE_HYBRID_LIFT MAV_ODID_UA_TYPE = 4 + // Ornithopter. + MAV_ODID_UA_TYPE_ORNITHOPTER MAV_ODID_UA_TYPE = 5 + // Glider. + MAV_ODID_UA_TYPE_GLIDER MAV_ODID_UA_TYPE = 6 + // Kite. + MAV_ODID_UA_TYPE_KITE MAV_ODID_UA_TYPE = 7 + // Free Balloon. + MAV_ODID_UA_TYPE_FREE_BALLOON MAV_ODID_UA_TYPE = 8 + // Captive Balloon. + MAV_ODID_UA_TYPE_CAPTIVE_BALLOON MAV_ODID_UA_TYPE = 9 + // Airship. E.g. a blimp. + MAV_ODID_UA_TYPE_AIRSHIP MAV_ODID_UA_TYPE = 10 + // Free Fall/Parachute (unpowered). + MAV_ODID_UA_TYPE_FREE_FALL_PARACHUTE MAV_ODID_UA_TYPE = 11 + // Rocket. + MAV_ODID_UA_TYPE_ROCKET MAV_ODID_UA_TYPE = 12 + // Tethered powered aircraft. + MAV_ODID_UA_TYPE_TETHERED_POWERED_AIRCRAFT MAV_ODID_UA_TYPE = 13 + // Ground Obstacle. + MAV_ODID_UA_TYPE_GROUND_OBSTACLE MAV_ODID_UA_TYPE = 14 + // Other type of aircraft not listed earlier. + MAV_ODID_UA_TYPE_OTHER MAV_ODID_UA_TYPE = 15 +) + +var labels_MAV_ODID_UA_TYPE = map[MAV_ODID_UA_TYPE]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAV_ODID_UA_TYPE) MarshalText() ([]byte, error) { + if l, ok := labels_MAV_ODID_UA_TYPE[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAV_ODID_UA_TYPE = map[string]MAV_ODID_UA_TYPE{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAV_ODID_UA_TYPE) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAV_ODID_UA_TYPE[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAV_ODID_UA_TYPE) String() string { + if l, ok := labels_MAV_ODID_UA_TYPE[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/storm32/enum_mav_odid_ver_acc.go b/pkg/dialects/storm32/enum_mav_odid_ver_acc.go new file mode 100644 index 000000000..7e6e17386 --- /dev/null +++ b/pkg/dialects/storm32/enum_mav_odid_ver_acc.go @@ -0,0 +1,55 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package storm32 + +import ( + "errors" +) + +type MAV_ODID_VER_ACC int + +const ( + // The vertical accuracy is unknown. + MAV_ODID_VER_ACC_UNKNOWN MAV_ODID_VER_ACC = 0 + // The vertical accuracy is smaller than 150 meter. + MAV_ODID_VER_ACC_150_METER MAV_ODID_VER_ACC = 1 + // The vertical accuracy is smaller than 45 meter. + MAV_ODID_VER_ACC_45_METER MAV_ODID_VER_ACC = 2 + // The vertical accuracy is smaller than 25 meter. + MAV_ODID_VER_ACC_25_METER MAV_ODID_VER_ACC = 3 + // The vertical accuracy is smaller than 10 meter. + MAV_ODID_VER_ACC_10_METER MAV_ODID_VER_ACC = 4 + // The vertical accuracy is smaller than 3 meter. + MAV_ODID_VER_ACC_3_METER MAV_ODID_VER_ACC = 5 + // The vertical accuracy is smaller than 1 meter. + MAV_ODID_VER_ACC_1_METER MAV_ODID_VER_ACC = 6 +) + +var labels_MAV_ODID_VER_ACC = map[MAV_ODID_VER_ACC]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAV_ODID_VER_ACC) MarshalText() ([]byte, error) { + if l, ok := labels_MAV_ODID_VER_ACC[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAV_ODID_VER_ACC = map[string]MAV_ODID_VER_ACC{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAV_ODID_VER_ACC) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAV_ODID_VER_ACC[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAV_ODID_VER_ACC) String() string { + if l, ok := labels_MAV_ODID_VER_ACC[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/storm32/enum_mav_param_ext_type.go b/pkg/dialects/storm32/enum_mav_param_ext_type.go new file mode 100644 index 000000000..21f15add9 --- /dev/null +++ b/pkg/dialects/storm32/enum_mav_param_ext_type.go @@ -0,0 +1,64 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package storm32 + +import ( + "errors" +) + +// Specifies the datatype of a MAVLink extended parameter. +type MAV_PARAM_EXT_TYPE int + +const ( + // 8-bit unsigned integer + MAV_PARAM_EXT_TYPE_UINT8 MAV_PARAM_EXT_TYPE = 1 + // 8-bit signed integer + MAV_PARAM_EXT_TYPE_INT8 MAV_PARAM_EXT_TYPE = 2 + // 16-bit unsigned integer + MAV_PARAM_EXT_TYPE_UINT16 MAV_PARAM_EXT_TYPE = 3 + // 16-bit signed integer + MAV_PARAM_EXT_TYPE_INT16 MAV_PARAM_EXT_TYPE = 4 + // 32-bit unsigned integer + MAV_PARAM_EXT_TYPE_UINT32 MAV_PARAM_EXT_TYPE = 5 + // 32-bit signed integer + MAV_PARAM_EXT_TYPE_INT32 MAV_PARAM_EXT_TYPE = 6 + // 64-bit unsigned integer + MAV_PARAM_EXT_TYPE_UINT64 MAV_PARAM_EXT_TYPE = 7 + // 64-bit signed integer + MAV_PARAM_EXT_TYPE_INT64 MAV_PARAM_EXT_TYPE = 8 + // 32-bit floating-point + MAV_PARAM_EXT_TYPE_REAL32 MAV_PARAM_EXT_TYPE = 9 + // 64-bit floating-point + MAV_PARAM_EXT_TYPE_REAL64 MAV_PARAM_EXT_TYPE = 10 + // Custom Type + MAV_PARAM_EXT_TYPE_CUSTOM MAV_PARAM_EXT_TYPE = 11 +) + +var labels_MAV_PARAM_EXT_TYPE = map[MAV_PARAM_EXT_TYPE]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAV_PARAM_EXT_TYPE) MarshalText() ([]byte, error) { + if l, ok := labels_MAV_PARAM_EXT_TYPE[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAV_PARAM_EXT_TYPE = map[string]MAV_PARAM_EXT_TYPE{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAV_PARAM_EXT_TYPE) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAV_PARAM_EXT_TYPE[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAV_PARAM_EXT_TYPE) String() string { + if l, ok := labels_MAV_PARAM_EXT_TYPE[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/storm32/enum_mav_param_type.go b/pkg/dialects/storm32/enum_mav_param_type.go new file mode 100644 index 000000000..0c89b37d5 --- /dev/null +++ b/pkg/dialects/storm32/enum_mav_param_type.go @@ -0,0 +1,62 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package storm32 + +import ( + "errors" +) + +// Specifies the datatype of a MAVLink parameter. +type MAV_PARAM_TYPE int + +const ( + // 8-bit unsigned integer + MAV_PARAM_TYPE_UINT8 MAV_PARAM_TYPE = 1 + // 8-bit signed integer + MAV_PARAM_TYPE_INT8 MAV_PARAM_TYPE = 2 + // 16-bit unsigned integer + MAV_PARAM_TYPE_UINT16 MAV_PARAM_TYPE = 3 + // 16-bit signed integer + MAV_PARAM_TYPE_INT16 MAV_PARAM_TYPE = 4 + // 32-bit unsigned integer + MAV_PARAM_TYPE_UINT32 MAV_PARAM_TYPE = 5 + // 32-bit signed integer + MAV_PARAM_TYPE_INT32 MAV_PARAM_TYPE = 6 + // 64-bit unsigned integer + MAV_PARAM_TYPE_UINT64 MAV_PARAM_TYPE = 7 + // 64-bit signed integer + MAV_PARAM_TYPE_INT64 MAV_PARAM_TYPE = 8 + // 32-bit floating-point + MAV_PARAM_TYPE_REAL32 MAV_PARAM_TYPE = 9 + // 64-bit floating-point + MAV_PARAM_TYPE_REAL64 MAV_PARAM_TYPE = 10 +) + +var labels_MAV_PARAM_TYPE = map[MAV_PARAM_TYPE]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAV_PARAM_TYPE) MarshalText() ([]byte, error) { + if l, ok := labels_MAV_PARAM_TYPE[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAV_PARAM_TYPE = map[string]MAV_PARAM_TYPE{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAV_PARAM_TYPE) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAV_PARAM_TYPE[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAV_PARAM_TYPE) String() string { + if l, ok := labels_MAV_PARAM_TYPE[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/storm32/enum_mav_power_status.go b/pkg/dialects/storm32/enum_mav_power_status.go new file mode 100644 index 000000000..fd59e209f --- /dev/null +++ b/pkg/dialects/storm32/enum_mav_power_status.go @@ -0,0 +1,54 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package storm32 + +import ( + "errors" +) + +// Power supply status flags (bitmask) +type MAV_POWER_STATUS int + +const ( + // main brick power supply valid + MAV_POWER_STATUS_BRICK_VALID MAV_POWER_STATUS = 1 + // main servo power supply valid for FMU + MAV_POWER_STATUS_SERVO_VALID MAV_POWER_STATUS = 2 + // USB power is connected + MAV_POWER_STATUS_USB_CONNECTED MAV_POWER_STATUS = 4 + // peripheral supply is in over-current state + MAV_POWER_STATUS_PERIPH_OVERCURRENT MAV_POWER_STATUS = 8 + // hi-power peripheral supply is in over-current state + MAV_POWER_STATUS_PERIPH_HIPOWER_OVERCURRENT MAV_POWER_STATUS = 16 + // Power status has changed since boot + MAV_POWER_STATUS_CHANGED MAV_POWER_STATUS = 32 +) + +var labels_MAV_POWER_STATUS = map[MAV_POWER_STATUS]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAV_POWER_STATUS) MarshalText() ([]byte, error) { + if l, ok := labels_MAV_POWER_STATUS[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAV_POWER_STATUS = map[string]MAV_POWER_STATUS{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAV_POWER_STATUS) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAV_POWER_STATUS[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAV_POWER_STATUS) String() string { + if l, ok := labels_MAV_POWER_STATUS[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/storm32/enum_mav_protocol_capability.go b/pkg/dialects/storm32/enum_mav_protocol_capability.go new file mode 100644 index 000000000..3b5c8c4c2 --- /dev/null +++ b/pkg/dialects/storm32/enum_mav_protocol_capability.go @@ -0,0 +1,78 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package storm32 + +import ( + "errors" +) + +// Bitmask of (optional) autopilot capabilities (64 bit). If a bit is set, the autopilot supports this capability. +type MAV_PROTOCOL_CAPABILITY int + +const ( + // Autopilot supports the MISSION_ITEM float message type. + // Note that MISSION_ITEM is deprecated, and autopilots should use MISSION_INT instead. + MAV_PROTOCOL_CAPABILITY_MISSION_FLOAT MAV_PROTOCOL_CAPABILITY = 1 + // Autopilot supports the new param float message type. + MAV_PROTOCOL_CAPABILITY_PARAM_FLOAT MAV_PROTOCOL_CAPABILITY = 2 + // Autopilot supports MISSION_ITEM_INT scaled integer message type. + // Note that this flag must always be set if missions are supported, because missions must always use MISSION_ITEM_INT (rather than MISSION_ITEM, which is deprecated). + MAV_PROTOCOL_CAPABILITY_MISSION_INT MAV_PROTOCOL_CAPABILITY = 4 + // Autopilot supports COMMAND_INT scaled integer message type. + MAV_PROTOCOL_CAPABILITY_COMMAND_INT MAV_PROTOCOL_CAPABILITY = 8 + // Reserved for future use. + MAV_PROTOCOL_CAPABILITY_RESERVED1 MAV_PROTOCOL_CAPABILITY = 16 + // Autopilot supports the new FILE_TRANSFER_PROTOCOL message type. + MAV_PROTOCOL_CAPABILITY_FTP MAV_PROTOCOL_CAPABILITY = 32 + // Autopilot supports commanding attitude offboard. + MAV_PROTOCOL_CAPABILITY_SET_ATTITUDE_TARGET MAV_PROTOCOL_CAPABILITY = 64 + // Autopilot supports commanding position and velocity targets in local NED frame. + MAV_PROTOCOL_CAPABILITY_SET_POSITION_TARGET_LOCAL_NED MAV_PROTOCOL_CAPABILITY = 128 + // Autopilot supports commanding position and velocity targets in global scaled integers. + MAV_PROTOCOL_CAPABILITY_SET_POSITION_TARGET_GLOBAL_INT MAV_PROTOCOL_CAPABILITY = 256 + // Autopilot supports terrain protocol / data handling. + MAV_PROTOCOL_CAPABILITY_TERRAIN MAV_PROTOCOL_CAPABILITY = 512 + // Autopilot supports direct actuator control. + MAV_PROTOCOL_CAPABILITY_SET_ACTUATOR_TARGET MAV_PROTOCOL_CAPABILITY = 1024 + // Autopilot supports the flight termination command. + MAV_PROTOCOL_CAPABILITY_FLIGHT_TERMINATION MAV_PROTOCOL_CAPABILITY = 2048 + // Autopilot supports onboard compass calibration. + MAV_PROTOCOL_CAPABILITY_COMPASS_CALIBRATION MAV_PROTOCOL_CAPABILITY = 4096 + // Autopilot supports MAVLink version 2. + MAV_PROTOCOL_CAPABILITY_MAVLINK2 MAV_PROTOCOL_CAPABILITY = 8192 + // Autopilot supports mission fence protocol. + MAV_PROTOCOL_CAPABILITY_MISSION_FENCE MAV_PROTOCOL_CAPABILITY = 16384 + // Autopilot supports mission rally point protocol. + MAV_PROTOCOL_CAPABILITY_MISSION_RALLY MAV_PROTOCOL_CAPABILITY = 32768 + // Reserved for future use. + MAV_PROTOCOL_CAPABILITY_RESERVED2 MAV_PROTOCOL_CAPABILITY = 65536 +) + +var labels_MAV_PROTOCOL_CAPABILITY = map[MAV_PROTOCOL_CAPABILITY]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAV_PROTOCOL_CAPABILITY) MarshalText() ([]byte, error) { + if l, ok := labels_MAV_PROTOCOL_CAPABILITY[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAV_PROTOCOL_CAPABILITY = map[string]MAV_PROTOCOL_CAPABILITY{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAV_PROTOCOL_CAPABILITY) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAV_PROTOCOL_CAPABILITY[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAV_PROTOCOL_CAPABILITY) String() string { + if l, ok := labels_MAV_PROTOCOL_CAPABILITY[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/storm32/enum_mav_qshot_mode.go b/pkg/dialects/storm32/enum_mav_qshot_mode.go new file mode 100644 index 000000000..bc064c597 --- /dev/null +++ b/pkg/dialects/storm32/enum_mav_qshot_mode.go @@ -0,0 +1,62 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package storm32 + +import ( + "errors" +) + +// Enumeration of possible shot modes. +type MAV_QSHOT_MODE int + +const ( + // Undefined shot mode. Can be used to determine if qshots should be used or not. + MAV_QSHOT_MODE_UNDEFINED MAV_QSHOT_MODE = 0 + // Start normal gimbal operation. Is usally used to return back from a shot. + MAV_QSHOT_MODE_DEFAULT MAV_QSHOT_MODE = 1 + // Load and keep safe gimbal position and stop stabilization. + MAV_QSHOT_MODE_GIMBAL_RETRACT MAV_QSHOT_MODE = 2 + // Load neutral gimbal position and keep it while stabilizing. + MAV_QSHOT_MODE_GIMBAL_NEUTRAL MAV_QSHOT_MODE = 3 + // Start mission with gimbal control. + MAV_QSHOT_MODE_GIMBAL_MISSION MAV_QSHOT_MODE = 4 + // Start RC gimbal control. + MAV_QSHOT_MODE_GIMBAL_RC_CONTROL MAV_QSHOT_MODE = 5 + // Start gimbal tracking the point specified by Lat, Lon, Alt. + MAV_QSHOT_MODE_POI_TARGETING MAV_QSHOT_MODE = 6 + // Start gimbal tracking the system with specified system ID. + MAV_QSHOT_MODE_SYSID_TARGETING MAV_QSHOT_MODE = 7 + // Start 2-point cable cam quick shot. + MAV_QSHOT_MODE_CABLECAM_2POINT MAV_QSHOT_MODE = 8 + // Start gimbal tracking the home location. + MAV_QSHOT_MODE_HOME_TARGETING MAV_QSHOT_MODE = 9 +) + +var labels_MAV_QSHOT_MODE = map[MAV_QSHOT_MODE]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAV_QSHOT_MODE) MarshalText() ([]byte, error) { + if l, ok := labels_MAV_QSHOT_MODE[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAV_QSHOT_MODE = map[string]MAV_QSHOT_MODE{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAV_QSHOT_MODE) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAV_QSHOT_MODE[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAV_QSHOT_MODE) String() string { + if l, ok := labels_MAV_QSHOT_MODE[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/storm32/enum_mav_remote_log_data_block_commands.go b/pkg/dialects/storm32/enum_mav_remote_log_data_block_commands.go new file mode 100644 index 000000000..7000fe5e4 --- /dev/null +++ b/pkg/dialects/storm32/enum_mav_remote_log_data_block_commands.go @@ -0,0 +1,46 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package storm32 + +import ( + "errors" +) + +// Special ACK block numbers control activation of dataflash log streaming. +type MAV_REMOTE_LOG_DATA_BLOCK_COMMANDS int + +const ( + // UAV to stop sending DataFlash blocks. + MAV_REMOTE_LOG_DATA_BLOCK_STOP MAV_REMOTE_LOG_DATA_BLOCK_COMMANDS = 2147483645 + // UAV to start sending DataFlash blocks. + MAV_REMOTE_LOG_DATA_BLOCK_START MAV_REMOTE_LOG_DATA_BLOCK_COMMANDS = 2147483646 +) + +var labels_MAV_REMOTE_LOG_DATA_BLOCK_COMMANDS = map[MAV_REMOTE_LOG_DATA_BLOCK_COMMANDS]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAV_REMOTE_LOG_DATA_BLOCK_COMMANDS) MarshalText() ([]byte, error) { + if l, ok := labels_MAV_REMOTE_LOG_DATA_BLOCK_COMMANDS[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAV_REMOTE_LOG_DATA_BLOCK_COMMANDS = map[string]MAV_REMOTE_LOG_DATA_BLOCK_COMMANDS{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAV_REMOTE_LOG_DATA_BLOCK_COMMANDS) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAV_REMOTE_LOG_DATA_BLOCK_COMMANDS[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAV_REMOTE_LOG_DATA_BLOCK_COMMANDS) String() string { + if l, ok := labels_MAV_REMOTE_LOG_DATA_BLOCK_COMMANDS[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/storm32/enum_mav_remote_log_data_block_statuses.go b/pkg/dialects/storm32/enum_mav_remote_log_data_block_statuses.go new file mode 100644 index 000000000..d2ea3f6e4 --- /dev/null +++ b/pkg/dialects/storm32/enum_mav_remote_log_data_block_statuses.go @@ -0,0 +1,46 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package storm32 + +import ( + "errors" +) + +// Possible remote log data block statuses. +type MAV_REMOTE_LOG_DATA_BLOCK_STATUSES int + +const ( + // This block has NOT been received. + MAV_REMOTE_LOG_DATA_BLOCK_NACK MAV_REMOTE_LOG_DATA_BLOCK_STATUSES = 0 + // This block has been received. + MAV_REMOTE_LOG_DATA_BLOCK_ACK MAV_REMOTE_LOG_DATA_BLOCK_STATUSES = 1 +) + +var labels_MAV_REMOTE_LOG_DATA_BLOCK_STATUSES = map[MAV_REMOTE_LOG_DATA_BLOCK_STATUSES]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAV_REMOTE_LOG_DATA_BLOCK_STATUSES) MarshalText() ([]byte, error) { + if l, ok := labels_MAV_REMOTE_LOG_DATA_BLOCK_STATUSES[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAV_REMOTE_LOG_DATA_BLOCK_STATUSES = map[string]MAV_REMOTE_LOG_DATA_BLOCK_STATUSES{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAV_REMOTE_LOG_DATA_BLOCK_STATUSES) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAV_REMOTE_LOG_DATA_BLOCK_STATUSES[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAV_REMOTE_LOG_DATA_BLOCK_STATUSES) String() string { + if l, ok := labels_MAV_REMOTE_LOG_DATA_BLOCK_STATUSES[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/storm32/enum_mav_result.go b/pkg/dialects/storm32/enum_mav_result.go new file mode 100644 index 000000000..85eb85e0b --- /dev/null +++ b/pkg/dialects/storm32/enum_mav_result.go @@ -0,0 +1,56 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package storm32 + +import ( + "errors" +) + +// Result from a MAVLink command (MAV_CMD) +type MAV_RESULT int + +const ( + // Command is valid (is supported and has valid parameters), and was executed. + MAV_RESULT_ACCEPTED MAV_RESULT = 0 + // Command is valid, but cannot be executed at this time. This is used to indicate a problem that should be fixed just by waiting (e.g. a state machine is busy, can't arm because have not got GPS lock, etc.). Retrying later should work. + MAV_RESULT_TEMPORARILY_REJECTED MAV_RESULT = 1 + // Command is invalid (is supported but has invalid parameters). Retrying same command and parameters will not work. + MAV_RESULT_DENIED MAV_RESULT = 2 + // Command is not supported (unknown). + MAV_RESULT_UNSUPPORTED MAV_RESULT = 3 + // Command is valid, but execution has failed. This is used to indicate any non-temporary or unexpected problem, i.e. any problem that must be fixed before the command can succeed/be retried. For example, attempting to write a file when out of memory, attempting to arm when sensors are not calibrated, etc. + MAV_RESULT_FAILED MAV_RESULT = 4 + // Command is valid and is being executed. This will be followed by further progress updates, i.e. the component may send further COMMAND_ACK messages with result MAV_RESULT_IN_PROGRESS (at a rate decided by the implementation), and must terminate by sending a COMMAND_ACK message with final result of the operation. The COMMAND_ACK.progress field can be used to indicate the progress of the operation. + MAV_RESULT_IN_PROGRESS MAV_RESULT = 5 + // Command has been cancelled (as a result of receiving a COMMAND_CANCEL message). + MAV_RESULT_CANCELLED MAV_RESULT = 6 +) + +var labels_MAV_RESULT = map[MAV_RESULT]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAV_RESULT) MarshalText() ([]byte, error) { + if l, ok := labels_MAV_RESULT[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAV_RESULT = map[string]MAV_RESULT{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAV_RESULT) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAV_RESULT[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAV_RESULT) String() string { + if l, ok := labels_MAV_RESULT[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/storm32/enum_mav_roi.go b/pkg/dialects/storm32/enum_mav_roi.go new file mode 100644 index 000000000..0fb47d339 --- /dev/null +++ b/pkg/dialects/storm32/enum_mav_roi.go @@ -0,0 +1,54 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package storm32 + +import ( + "errors" +) + +// The ROI (region of interest) for the vehicle. This can be +// be used by the vehicle for camera/vehicle attitude alignment (see +// MAV_CMD_NAV_ROI). +type MAV_ROI int + +const ( + // No region of interest. + MAV_ROI_NONE MAV_ROI = 0 + // Point toward next waypoint, with optional pitch/roll/yaw offset. + MAV_ROI_WPNEXT MAV_ROI = 1 + // Point toward given waypoint. + MAV_ROI_WPINDEX MAV_ROI = 2 + // Point toward fixed location. + MAV_ROI_LOCATION MAV_ROI = 3 + // Point toward of given id. + MAV_ROI_TARGET MAV_ROI = 4 +) + +var labels_MAV_ROI = map[MAV_ROI]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAV_ROI) MarshalText() ([]byte, error) { + if l, ok := labels_MAV_ROI[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAV_ROI = map[string]MAV_ROI{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAV_ROI) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAV_ROI[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAV_ROI) String() string { + if l, ok := labels_MAV_ROI[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/storm32/enum_mav_sensor_orientation.go b/pkg/dialects/storm32/enum_mav_sensor_orientation.go new file mode 100644 index 000000000..931271d9c --- /dev/null +++ b/pkg/dialects/storm32/enum_mav_sensor_orientation.go @@ -0,0 +1,126 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package storm32 + +import ( + "errors" +) + +// Enumeration of sensor orientation, according to its rotations +type MAV_SENSOR_ORIENTATION int + +const ( + // Roll: 0, Pitch: 0, Yaw: 0 + MAV_SENSOR_ROTATION_NONE MAV_SENSOR_ORIENTATION = 0 + // Roll: 0, Pitch: 0, Yaw: 45 + MAV_SENSOR_ROTATION_YAW_45 MAV_SENSOR_ORIENTATION = 1 + // Roll: 0, Pitch: 0, Yaw: 90 + MAV_SENSOR_ROTATION_YAW_90 MAV_SENSOR_ORIENTATION = 2 + // Roll: 0, Pitch: 0, Yaw: 135 + MAV_SENSOR_ROTATION_YAW_135 MAV_SENSOR_ORIENTATION = 3 + // Roll: 0, Pitch: 0, Yaw: 180 + MAV_SENSOR_ROTATION_YAW_180 MAV_SENSOR_ORIENTATION = 4 + // Roll: 0, Pitch: 0, Yaw: 225 + MAV_SENSOR_ROTATION_YAW_225 MAV_SENSOR_ORIENTATION = 5 + // Roll: 0, Pitch: 0, Yaw: 270 + MAV_SENSOR_ROTATION_YAW_270 MAV_SENSOR_ORIENTATION = 6 + // Roll: 0, Pitch: 0, Yaw: 315 + MAV_SENSOR_ROTATION_YAW_315 MAV_SENSOR_ORIENTATION = 7 + // Roll: 180, Pitch: 0, Yaw: 0 + MAV_SENSOR_ROTATION_ROLL_180 MAV_SENSOR_ORIENTATION = 8 + // Roll: 180, Pitch: 0, Yaw: 45 + MAV_SENSOR_ROTATION_ROLL_180_YAW_45 MAV_SENSOR_ORIENTATION = 9 + // Roll: 180, Pitch: 0, Yaw: 90 + MAV_SENSOR_ROTATION_ROLL_180_YAW_90 MAV_SENSOR_ORIENTATION = 10 + // Roll: 180, Pitch: 0, Yaw: 135 + MAV_SENSOR_ROTATION_ROLL_180_YAW_135 MAV_SENSOR_ORIENTATION = 11 + // Roll: 0, Pitch: 180, Yaw: 0 + MAV_SENSOR_ROTATION_PITCH_180 MAV_SENSOR_ORIENTATION = 12 + // Roll: 180, Pitch: 0, Yaw: 225 + MAV_SENSOR_ROTATION_ROLL_180_YAW_225 MAV_SENSOR_ORIENTATION = 13 + // Roll: 180, Pitch: 0, Yaw: 270 + MAV_SENSOR_ROTATION_ROLL_180_YAW_270 MAV_SENSOR_ORIENTATION = 14 + // Roll: 180, Pitch: 0, Yaw: 315 + MAV_SENSOR_ROTATION_ROLL_180_YAW_315 MAV_SENSOR_ORIENTATION = 15 + // Roll: 90, Pitch: 0, Yaw: 0 + MAV_SENSOR_ROTATION_ROLL_90 MAV_SENSOR_ORIENTATION = 16 + // Roll: 90, Pitch: 0, Yaw: 45 + MAV_SENSOR_ROTATION_ROLL_90_YAW_45 MAV_SENSOR_ORIENTATION = 17 + // Roll: 90, Pitch: 0, Yaw: 90 + MAV_SENSOR_ROTATION_ROLL_90_YAW_90 MAV_SENSOR_ORIENTATION = 18 + // Roll: 90, Pitch: 0, Yaw: 135 + MAV_SENSOR_ROTATION_ROLL_90_YAW_135 MAV_SENSOR_ORIENTATION = 19 + // Roll: 270, Pitch: 0, Yaw: 0 + MAV_SENSOR_ROTATION_ROLL_270 MAV_SENSOR_ORIENTATION = 20 + // Roll: 270, Pitch: 0, Yaw: 45 + MAV_SENSOR_ROTATION_ROLL_270_YAW_45 MAV_SENSOR_ORIENTATION = 21 + // Roll: 270, Pitch: 0, Yaw: 90 + MAV_SENSOR_ROTATION_ROLL_270_YAW_90 MAV_SENSOR_ORIENTATION = 22 + // Roll: 270, Pitch: 0, Yaw: 135 + MAV_SENSOR_ROTATION_ROLL_270_YAW_135 MAV_SENSOR_ORIENTATION = 23 + // Roll: 0, Pitch: 90, Yaw: 0 + MAV_SENSOR_ROTATION_PITCH_90 MAV_SENSOR_ORIENTATION = 24 + // Roll: 0, Pitch: 270, Yaw: 0 + MAV_SENSOR_ROTATION_PITCH_270 MAV_SENSOR_ORIENTATION = 25 + // Roll: 0, Pitch: 180, Yaw: 90 + MAV_SENSOR_ROTATION_PITCH_180_YAW_90 MAV_SENSOR_ORIENTATION = 26 + // Roll: 0, Pitch: 180, Yaw: 270 + MAV_SENSOR_ROTATION_PITCH_180_YAW_270 MAV_SENSOR_ORIENTATION = 27 + // Roll: 90, Pitch: 90, Yaw: 0 + MAV_SENSOR_ROTATION_ROLL_90_PITCH_90 MAV_SENSOR_ORIENTATION = 28 + // Roll: 180, Pitch: 90, Yaw: 0 + MAV_SENSOR_ROTATION_ROLL_180_PITCH_90 MAV_SENSOR_ORIENTATION = 29 + // Roll: 270, Pitch: 90, Yaw: 0 + MAV_SENSOR_ROTATION_ROLL_270_PITCH_90 MAV_SENSOR_ORIENTATION = 30 + // Roll: 90, Pitch: 180, Yaw: 0 + MAV_SENSOR_ROTATION_ROLL_90_PITCH_180 MAV_SENSOR_ORIENTATION = 31 + // Roll: 270, Pitch: 180, Yaw: 0 + MAV_SENSOR_ROTATION_ROLL_270_PITCH_180 MAV_SENSOR_ORIENTATION = 32 + // Roll: 90, Pitch: 270, Yaw: 0 + MAV_SENSOR_ROTATION_ROLL_90_PITCH_270 MAV_SENSOR_ORIENTATION = 33 + // Roll: 180, Pitch: 270, Yaw: 0 + MAV_SENSOR_ROTATION_ROLL_180_PITCH_270 MAV_SENSOR_ORIENTATION = 34 + // Roll: 270, Pitch: 270, Yaw: 0 + MAV_SENSOR_ROTATION_ROLL_270_PITCH_270 MAV_SENSOR_ORIENTATION = 35 + // Roll: 90, Pitch: 180, Yaw: 90 + MAV_SENSOR_ROTATION_ROLL_90_PITCH_180_YAW_90 MAV_SENSOR_ORIENTATION = 36 + // Roll: 90, Pitch: 0, Yaw: 270 + MAV_SENSOR_ROTATION_ROLL_90_YAW_270 MAV_SENSOR_ORIENTATION = 37 + // Roll: 90, Pitch: 68, Yaw: 293 + MAV_SENSOR_ROTATION_ROLL_90_PITCH_68_YAW_293 MAV_SENSOR_ORIENTATION = 38 + // Pitch: 315 + MAV_SENSOR_ROTATION_PITCH_315 MAV_SENSOR_ORIENTATION = 39 + // Roll: 90, Pitch: 315 + MAV_SENSOR_ROTATION_ROLL_90_PITCH_315 MAV_SENSOR_ORIENTATION = 40 + // Custom orientation + MAV_SENSOR_ROTATION_CUSTOM MAV_SENSOR_ORIENTATION = 100 +) + +var labels_MAV_SENSOR_ORIENTATION = map[MAV_SENSOR_ORIENTATION]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAV_SENSOR_ORIENTATION) MarshalText() ([]byte, error) { + if l, ok := labels_MAV_SENSOR_ORIENTATION[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAV_SENSOR_ORIENTATION = map[string]MAV_SENSOR_ORIENTATION{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAV_SENSOR_ORIENTATION) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAV_SENSOR_ORIENTATION[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAV_SENSOR_ORIENTATION) String() string { + if l, ok := labels_MAV_SENSOR_ORIENTATION[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/storm32/enum_mav_severity.go b/pkg/dialects/storm32/enum_mav_severity.go new file mode 100644 index 000000000..a4450195b --- /dev/null +++ b/pkg/dialects/storm32/enum_mav_severity.go @@ -0,0 +1,58 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package storm32 + +import ( + "errors" +) + +// Indicates the severity level, generally used for status messages to indicate their relative urgency. Based on RFC-5424 using expanded definitions at: http://www.kiwisyslog.com/kb/info:-syslog-message-levels/. +type MAV_SEVERITY int + +const ( + // System is unusable. This is a "panic" condition. + MAV_SEVERITY_EMERGENCY MAV_SEVERITY = 0 + // Action should be taken immediately. Indicates error in non-critical systems. + MAV_SEVERITY_ALERT MAV_SEVERITY = 1 + // Action must be taken immediately. Indicates failure in a primary system. + MAV_SEVERITY_CRITICAL MAV_SEVERITY = 2 + // Indicates an error in secondary/redundant systems. + MAV_SEVERITY_ERROR MAV_SEVERITY = 3 + // Indicates about a possible future error if this is not resolved within a given timeframe. Example would be a low battery warning. + MAV_SEVERITY_WARNING MAV_SEVERITY = 4 + // An unusual event has occurred, though not an error condition. This should be investigated for the root cause. + MAV_SEVERITY_NOTICE MAV_SEVERITY = 5 + // Normal operational messages. Useful for logging. No action is required for these messages. + MAV_SEVERITY_INFO MAV_SEVERITY = 6 + // Useful non-operational messages that can assist in debugging. These should not occur during normal operation. + MAV_SEVERITY_DEBUG MAV_SEVERITY = 7 +) + +var labels_MAV_SEVERITY = map[MAV_SEVERITY]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAV_SEVERITY) MarshalText() ([]byte, error) { + if l, ok := labels_MAV_SEVERITY[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAV_SEVERITY = map[string]MAV_SEVERITY{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAV_SEVERITY) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAV_SEVERITY[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAV_SEVERITY) String() string { + if l, ok := labels_MAV_SEVERITY[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/storm32/enum_mav_state.go b/pkg/dialects/storm32/enum_mav_state.go new file mode 100644 index 000000000..37911092f --- /dev/null +++ b/pkg/dialects/storm32/enum_mav_state.go @@ -0,0 +1,59 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package storm32 + +import ( + "errors" +) + +type MAV_STATE int + +const ( + // Uninitialized system, state is unknown. + MAV_STATE_UNINIT MAV_STATE = 0 + // System is booting up. + MAV_STATE_BOOT MAV_STATE = 1 + // System is calibrating and not flight-ready. + MAV_STATE_CALIBRATING MAV_STATE = 2 + // System is grounded and on standby. It can be launched any time. + MAV_STATE_STANDBY MAV_STATE = 3 + // System is active and might be already airborne. Motors are engaged. + MAV_STATE_ACTIVE MAV_STATE = 4 + // System is in a non-normal flight mode. It can however still navigate. + MAV_STATE_CRITICAL MAV_STATE = 5 + // System is in a non-normal flight mode. It lost control over parts or over the whole airframe. It is in mayday and going down. + MAV_STATE_EMERGENCY MAV_STATE = 6 + // System just initialized its power-down sequence, will shut down now. + MAV_STATE_POWEROFF MAV_STATE = 7 + // System is terminating itself. + MAV_STATE_FLIGHT_TERMINATION MAV_STATE = 8 +) + +var labels_MAV_STATE = map[MAV_STATE]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAV_STATE) MarshalText() ([]byte, error) { + if l, ok := labels_MAV_STATE[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAV_STATE = map[string]MAV_STATE{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAV_STATE) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAV_STATE[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAV_STATE) String() string { + if l, ok := labels_MAV_STATE[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/storm32/enum_mav_storm32_camera_prearm_flags.go b/pkg/dialects/storm32/enum_mav_storm32_camera_prearm_flags.go new file mode 100644 index 000000000..8dccf2abb --- /dev/null +++ b/pkg/dialects/storm32/enum_mav_storm32_camera_prearm_flags.go @@ -0,0 +1,44 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package storm32 + +import ( + "errors" +) + +// STorM32 camera prearm check flags. +type MAV_STORM32_CAMERA_PREARM_FLAGS int + +const ( + // The camera has been found and is connected. + MAV_STORM32_CAMERA_PREARM_FLAGS_CONNECTED MAV_STORM32_CAMERA_PREARM_FLAGS = 1 +) + +var labels_MAV_STORM32_CAMERA_PREARM_FLAGS = map[MAV_STORM32_CAMERA_PREARM_FLAGS]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAV_STORM32_CAMERA_PREARM_FLAGS) MarshalText() ([]byte, error) { + if l, ok := labels_MAV_STORM32_CAMERA_PREARM_FLAGS[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAV_STORM32_CAMERA_PREARM_FLAGS = map[string]MAV_STORM32_CAMERA_PREARM_FLAGS{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAV_STORM32_CAMERA_PREARM_FLAGS) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAV_STORM32_CAMERA_PREARM_FLAGS[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAV_STORM32_CAMERA_PREARM_FLAGS) String() string { + if l, ok := labels_MAV_STORM32_CAMERA_PREARM_FLAGS[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/storm32/enum_mav_storm32_gimbal_action.go b/pkg/dialects/storm32/enum_mav_storm32_gimbal_action.go new file mode 100644 index 000000000..065922871 --- /dev/null +++ b/pkg/dialects/storm32/enum_mav_storm32_gimbal_action.go @@ -0,0 +1,48 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package storm32 + +import ( + "errors" +) + +// Gimbal actions. +type MAV_STORM32_GIMBAL_ACTION int + +const ( + // Trigger the gimbal device to recenter the gimbal. + MAV_STORM32_GIMBAL_ACTION_RECENTER MAV_STORM32_GIMBAL_ACTION = 1 + // Trigger the gimbal device to run a calibration. + MAV_STORM32_GIMBAL_ACTION_CALIBRATION MAV_STORM32_GIMBAL_ACTION = 2 + // Trigger gimbal device to (re)discover the gimbal manager during run time. + MAV_STORM32_GIMBAL_ACTION_DISCOVER_MANAGER MAV_STORM32_GIMBAL_ACTION = 3 +) + +var labels_MAV_STORM32_GIMBAL_ACTION = map[MAV_STORM32_GIMBAL_ACTION]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAV_STORM32_GIMBAL_ACTION) MarshalText() ([]byte, error) { + if l, ok := labels_MAV_STORM32_GIMBAL_ACTION[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAV_STORM32_GIMBAL_ACTION = map[string]MAV_STORM32_GIMBAL_ACTION{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAV_STORM32_GIMBAL_ACTION) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAV_STORM32_GIMBAL_ACTION[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAV_STORM32_GIMBAL_ACTION) String() string { + if l, ok := labels_MAV_STORM32_GIMBAL_ACTION[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/storm32/enum_mav_storm32_gimbal_device_cap_flags.go b/pkg/dialects/storm32/enum_mav_storm32_gimbal_device_cap_flags.go new file mode 100644 index 000000000..32d0cd40a --- /dev/null +++ b/pkg/dialects/storm32/enum_mav_storm32_gimbal_device_cap_flags.go @@ -0,0 +1,70 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package storm32 + +import ( + "errors" +) + +// Gimbal device capability flags. +type MAV_STORM32_GIMBAL_DEVICE_CAP_FLAGS int + +const ( + // Gimbal device supports a retracted position. + MAV_STORM32_GIMBAL_DEVICE_CAP_FLAGS_HAS_RETRACT MAV_STORM32_GIMBAL_DEVICE_CAP_FLAGS = 1 + // Gimbal device supports a horizontal, forward looking position, stabilized. Can also be used to reset the gimbal's orientation. + MAV_STORM32_GIMBAL_DEVICE_CAP_FLAGS_HAS_NEUTRAL MAV_STORM32_GIMBAL_DEVICE_CAP_FLAGS = 2 + // Gimbal device supports rotating around roll axis. + MAV_STORM32_GIMBAL_DEVICE_CAP_FLAGS_HAS_ROLL_AXIS MAV_STORM32_GIMBAL_DEVICE_CAP_FLAGS = 4 + // Gimbal device supports to follow a roll angle relative to the vehicle. + MAV_STORM32_GIMBAL_DEVICE_CAP_FLAGS_HAS_ROLL_FOLLOW MAV_STORM32_GIMBAL_DEVICE_CAP_FLAGS = 8 + // Gimbal device supports locking to an roll angle (generally that's the default). + MAV_STORM32_GIMBAL_DEVICE_CAP_FLAGS_HAS_ROLL_LOCK MAV_STORM32_GIMBAL_DEVICE_CAP_FLAGS = 16 + // Gimbal device supports rotating around pitch axis. + MAV_STORM32_GIMBAL_DEVICE_CAP_FLAGS_HAS_PITCH_AXIS MAV_STORM32_GIMBAL_DEVICE_CAP_FLAGS = 32 + // Gimbal device supports to follow a pitch angle relative to the vehicle. + MAV_STORM32_GIMBAL_DEVICE_CAP_FLAGS_HAS_PITCH_FOLLOW MAV_STORM32_GIMBAL_DEVICE_CAP_FLAGS = 64 + // Gimbal device supports locking to an pitch angle (generally that's the default). + MAV_STORM32_GIMBAL_DEVICE_CAP_FLAGS_HAS_PITCH_LOCK MAV_STORM32_GIMBAL_DEVICE_CAP_FLAGS = 128 + // Gimbal device supports rotating around yaw axis. + MAV_STORM32_GIMBAL_DEVICE_CAP_FLAGS_HAS_YAW_AXIS MAV_STORM32_GIMBAL_DEVICE_CAP_FLAGS = 256 + // Gimbal device supports to follow a yaw angle relative to the vehicle (generally that's the default). + MAV_STORM32_GIMBAL_DEVICE_CAP_FLAGS_HAS_YAW_FOLLOW MAV_STORM32_GIMBAL_DEVICE_CAP_FLAGS = 512 + // Gimbal device supports locking to a heading angle. + MAV_STORM32_GIMBAL_DEVICE_CAP_FLAGS_HAS_YAW_LOCK MAV_STORM32_GIMBAL_DEVICE_CAP_FLAGS = 1024 + // Gimbal device supports yawing/panning infinitely (e.g. using a slip ring). + MAV_STORM32_GIMBAL_DEVICE_CAP_FLAGS_HAS_INFINITE_YAW MAV_STORM32_GIMBAL_DEVICE_CAP_FLAGS = 2048 + // Gimbal device supports absolute yaw angles (this usually requires support by an autopilot, and can be dynamic, i.e., go on and off during runtime). + MAV_STORM32_GIMBAL_DEVICE_CAP_FLAGS_HAS_ABSOLUTE_YAW MAV_STORM32_GIMBAL_DEVICE_CAP_FLAGS = 65536 + // Gimbal device supports control via an RC input signal. + MAV_STORM32_GIMBAL_DEVICE_CAP_FLAGS_HAS_RC MAV_STORM32_GIMBAL_DEVICE_CAP_FLAGS = 131072 +) + +var labels_MAV_STORM32_GIMBAL_DEVICE_CAP_FLAGS = map[MAV_STORM32_GIMBAL_DEVICE_CAP_FLAGS]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAV_STORM32_GIMBAL_DEVICE_CAP_FLAGS) MarshalText() ([]byte, error) { + if l, ok := labels_MAV_STORM32_GIMBAL_DEVICE_CAP_FLAGS[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAV_STORM32_GIMBAL_DEVICE_CAP_FLAGS = map[string]MAV_STORM32_GIMBAL_DEVICE_CAP_FLAGS{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAV_STORM32_GIMBAL_DEVICE_CAP_FLAGS) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAV_STORM32_GIMBAL_DEVICE_CAP_FLAGS[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAV_STORM32_GIMBAL_DEVICE_CAP_FLAGS) String() string { + if l, ok := labels_MAV_STORM32_GIMBAL_DEVICE_CAP_FLAGS[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/storm32/enum_mav_storm32_gimbal_device_error_flags.go b/pkg/dialects/storm32/enum_mav_storm32_gimbal_device_error_flags.go new file mode 100644 index 000000000..00349bd56 --- /dev/null +++ b/pkg/dialects/storm32/enum_mav_storm32_gimbal_device_error_flags.go @@ -0,0 +1,62 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package storm32 + +import ( + "errors" +) + +// Gimbal device error and condition flags (0 means no error or other condition). +type MAV_STORM32_GIMBAL_DEVICE_ERROR_FLAGS int + +const ( + // Gimbal device is limited by hardware roll limit. + MAV_STORM32_GIMBAL_DEVICE_ERROR_FLAGS_AT_ROLL_LIMIT MAV_STORM32_GIMBAL_DEVICE_ERROR_FLAGS = 1 + // Gimbal device is limited by hardware pitch limit. + MAV_STORM32_GIMBAL_DEVICE_ERROR_FLAGS_AT_PITCH_LIMIT MAV_STORM32_GIMBAL_DEVICE_ERROR_FLAGS = 2 + // Gimbal device is limited by hardware yaw limit. + MAV_STORM32_GIMBAL_DEVICE_ERROR_FLAGS_AT_YAW_LIMIT MAV_STORM32_GIMBAL_DEVICE_ERROR_FLAGS = 4 + // There is an error with the gimbal device's encoders. + MAV_STORM32_GIMBAL_DEVICE_ERROR_FLAGS_ENCODER_ERROR MAV_STORM32_GIMBAL_DEVICE_ERROR_FLAGS = 8 + // There is an error with the gimbal device's power source. + MAV_STORM32_GIMBAL_DEVICE_ERROR_FLAGS_POWER_ERROR MAV_STORM32_GIMBAL_DEVICE_ERROR_FLAGS = 16 + // There is an error with the gimbal device's motors. + MAV_STORM32_GIMBAL_DEVICE_ERROR_FLAGS_MOTOR_ERROR MAV_STORM32_GIMBAL_DEVICE_ERROR_FLAGS = 32 + // There is an error with the gimbal device's software. + MAV_STORM32_GIMBAL_DEVICE_ERROR_FLAGS_SOFTWARE_ERROR MAV_STORM32_GIMBAL_DEVICE_ERROR_FLAGS = 64 + // There is an error with the gimbal device's communication. + MAV_STORM32_GIMBAL_DEVICE_ERROR_FLAGS_COMMS_ERROR MAV_STORM32_GIMBAL_DEVICE_ERROR_FLAGS = 128 + // Gimbal device is currently calibrating (not an error). + MAV_STORM32_GIMBAL_DEVICE_ERROR_FLAGS_CALIBRATION_RUNNING MAV_STORM32_GIMBAL_DEVICE_ERROR_FLAGS = 256 + // Gimbal device is not assigned to a gimbal manager (not an error). + MAV_STORM32_GIMBAL_DEVICE_ERROR_FLAGS_NO_MANAGER MAV_STORM32_GIMBAL_DEVICE_ERROR_FLAGS = 32768 +) + +var labels_MAV_STORM32_GIMBAL_DEVICE_ERROR_FLAGS = map[MAV_STORM32_GIMBAL_DEVICE_ERROR_FLAGS]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAV_STORM32_GIMBAL_DEVICE_ERROR_FLAGS) MarshalText() ([]byte, error) { + if l, ok := labels_MAV_STORM32_GIMBAL_DEVICE_ERROR_FLAGS[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAV_STORM32_GIMBAL_DEVICE_ERROR_FLAGS = map[string]MAV_STORM32_GIMBAL_DEVICE_ERROR_FLAGS{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAV_STORM32_GIMBAL_DEVICE_ERROR_FLAGS) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAV_STORM32_GIMBAL_DEVICE_ERROR_FLAGS[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAV_STORM32_GIMBAL_DEVICE_ERROR_FLAGS) String() string { + if l, ok := labels_MAV_STORM32_GIMBAL_DEVICE_ERROR_FLAGS[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/storm32/enum_mav_storm32_gimbal_device_flags.go b/pkg/dialects/storm32/enum_mav_storm32_gimbal_device_flags.go new file mode 100644 index 000000000..04a802966 --- /dev/null +++ b/pkg/dialects/storm32/enum_mav_storm32_gimbal_device_flags.go @@ -0,0 +1,62 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package storm32 + +import ( + "errors" +) + +// Flags for gimbal device operation. Used for setting and reporting, unless specified otherwise. Settings which are in violation of the capability flags are ignored by the gimbal device. +type MAV_STORM32_GIMBAL_DEVICE_FLAGS int + +const ( + // Retracted safe position (no stabilization), takes presedence over NEUTRAL flag. If supported by the gimbal, the angles in the retracted position can be set in addition. + MAV_STORM32_GIMBAL_DEVICE_FLAGS_RETRACT MAV_STORM32_GIMBAL_DEVICE_FLAGS = 1 + // Neutral position (horizontal, forward looking, with stabiliziation). + MAV_STORM32_GIMBAL_DEVICE_FLAGS_NEUTRAL MAV_STORM32_GIMBAL_DEVICE_FLAGS = 2 + // Lock roll angle to absolute angle relative to horizon (not relative to drone). This is generally the default. + MAV_STORM32_GIMBAL_DEVICE_FLAGS_ROLL_LOCK MAV_STORM32_GIMBAL_DEVICE_FLAGS = 4 + // Lock pitch angle to absolute angle relative to horizon (not relative to drone). This is generally the default. + MAV_STORM32_GIMBAL_DEVICE_FLAGS_PITCH_LOCK MAV_STORM32_GIMBAL_DEVICE_FLAGS = 8 + // Lock yaw angle to absolute angle relative to earth (not relative to drone). When the YAW_ABSOLUTE flag is set, the quaternion is in the Earth frame with the x-axis pointing North (yaw absolute), else it is in the Earth frame rotated so that the x-axis is pointing forward (yaw relative to vehicle). + MAV_STORM32_GIMBAL_DEVICE_FLAGS_YAW_LOCK MAV_STORM32_GIMBAL_DEVICE_FLAGS = 16 + // Gimbal device can accept absolute yaw angle input. This flag cannot be set, is only for reporting (attempts to set it are rejected by the gimbal device). + MAV_STORM32_GIMBAL_DEVICE_FLAGS_CAN_ACCEPT_YAW_ABSOLUTE MAV_STORM32_GIMBAL_DEVICE_FLAGS = 256 + // Yaw angle is absolute (is only accepted if CAN_ACCEPT_YAW_ABSOLUTE is set). If this flag is set, the quaternion is in the Earth frame with the x-axis pointing North (yaw absolute), else it is in the Earth frame rotated so that the x-axis is pointing forward (yaw relative to vehicle). + MAV_STORM32_GIMBAL_DEVICE_FLAGS_YAW_ABSOLUTE MAV_STORM32_GIMBAL_DEVICE_FLAGS = 512 + // RC control. The RC input signal fed to the gimbal device exclusively controls the gimbal's orientation. Overrides RC_MIXED flag if that is also set. + MAV_STORM32_GIMBAL_DEVICE_FLAGS_RC_EXCLUSIVE MAV_STORM32_GIMBAL_DEVICE_FLAGS = 1024 + // RC control. The RC input signal fed to the gimbal device is mixed into the gimbal's orientation. Is overriden by RC_EXCLUSIVE flag if that is also set. + MAV_STORM32_GIMBAL_DEVICE_FLAGS_RC_MIXED MAV_STORM32_GIMBAL_DEVICE_FLAGS = 2048 + // UINT16_MAX = ignore. + MAV_STORM32_GIMBAL_DEVICE_FLAGS_NONE MAV_STORM32_GIMBAL_DEVICE_FLAGS = 65535 +) + +var labels_MAV_STORM32_GIMBAL_DEVICE_FLAGS = map[MAV_STORM32_GIMBAL_DEVICE_FLAGS]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAV_STORM32_GIMBAL_DEVICE_FLAGS) MarshalText() ([]byte, error) { + if l, ok := labels_MAV_STORM32_GIMBAL_DEVICE_FLAGS[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAV_STORM32_GIMBAL_DEVICE_FLAGS = map[string]MAV_STORM32_GIMBAL_DEVICE_FLAGS{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAV_STORM32_GIMBAL_DEVICE_FLAGS) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAV_STORM32_GIMBAL_DEVICE_FLAGS[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAV_STORM32_GIMBAL_DEVICE_FLAGS) String() string { + if l, ok := labels_MAV_STORM32_GIMBAL_DEVICE_FLAGS[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/storm32/enum_mav_storm32_gimbal_manager_cap_flags.go b/pkg/dialects/storm32/enum_mav_storm32_gimbal_manager_cap_flags.go new file mode 100644 index 000000000..773304b21 --- /dev/null +++ b/pkg/dialects/storm32/enum_mav_storm32_gimbal_manager_cap_flags.go @@ -0,0 +1,46 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package storm32 + +import ( + "errors" +) + +// Gimbal manager capability flags. +type MAV_STORM32_GIMBAL_MANAGER_CAP_FLAGS int + +const ( + // The gimbal manager supports several profiles. + MAV_STORM32_GIMBAL_MANAGER_CAP_FLAGS_HAS_PROFILES MAV_STORM32_GIMBAL_MANAGER_CAP_FLAGS = 1 + // The gimbal manager supports changing the gimbal manager during run time, i.e. can be enabled/disabled. + MAV_STORM32_GIMBAL_MANAGER_CAP_FLAGS_SUPPORTS_CHANGE MAV_STORM32_GIMBAL_MANAGER_CAP_FLAGS = 2 +) + +var labels_MAV_STORM32_GIMBAL_MANAGER_CAP_FLAGS = map[MAV_STORM32_GIMBAL_MANAGER_CAP_FLAGS]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAV_STORM32_GIMBAL_MANAGER_CAP_FLAGS) MarshalText() ([]byte, error) { + if l, ok := labels_MAV_STORM32_GIMBAL_MANAGER_CAP_FLAGS[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAV_STORM32_GIMBAL_MANAGER_CAP_FLAGS = map[string]MAV_STORM32_GIMBAL_MANAGER_CAP_FLAGS{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAV_STORM32_GIMBAL_MANAGER_CAP_FLAGS) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAV_STORM32_GIMBAL_MANAGER_CAP_FLAGS[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAV_STORM32_GIMBAL_MANAGER_CAP_FLAGS) String() string { + if l, ok := labels_MAV_STORM32_GIMBAL_MANAGER_CAP_FLAGS[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/storm32/enum_mav_storm32_gimbal_manager_client.go b/pkg/dialects/storm32/enum_mav_storm32_gimbal_manager_client.go new file mode 100644 index 000000000..b5daee5be --- /dev/null +++ b/pkg/dialects/storm32/enum_mav_storm32_gimbal_manager_client.go @@ -0,0 +1,60 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package storm32 + +import ( + "errors" +) + +// Gimbal manager client ID. In a prioritizing profile, the priorities are determined by the implementation; they could e.g. be custom1 > onboard > GCS > autopilot/camera > GCS2 > custom2. +type MAV_STORM32_GIMBAL_MANAGER_CLIENT int + +const ( + // For convenience. + MAV_STORM32_GIMBAL_MANAGER_CLIENT_NONE MAV_STORM32_GIMBAL_MANAGER_CLIENT = 0 + // This is the onboard/companion computer client. + MAV_STORM32_GIMBAL_MANAGER_CLIENT_ONBOARD MAV_STORM32_GIMBAL_MANAGER_CLIENT = 1 + // This is the autopilot client. + MAV_STORM32_GIMBAL_MANAGER_CLIENT_AUTOPILOT MAV_STORM32_GIMBAL_MANAGER_CLIENT = 2 + // This is the GCS client. + MAV_STORM32_GIMBAL_MANAGER_CLIENT_GCS MAV_STORM32_GIMBAL_MANAGER_CLIENT = 3 + // This is the camera client. + MAV_STORM32_GIMBAL_MANAGER_CLIENT_CAMERA MAV_STORM32_GIMBAL_MANAGER_CLIENT = 4 + // This is the GCS2 client. + MAV_STORM32_GIMBAL_MANAGER_CLIENT_GCS2 MAV_STORM32_GIMBAL_MANAGER_CLIENT = 5 + // This is the camera2 client. + MAV_STORM32_GIMBAL_MANAGER_CLIENT_CAMERA2 MAV_STORM32_GIMBAL_MANAGER_CLIENT = 6 + // This is the custom client. + MAV_STORM32_GIMBAL_MANAGER_CLIENT_CUSTOM MAV_STORM32_GIMBAL_MANAGER_CLIENT = 7 + // This is the custom2 client. + MAV_STORM32_GIMBAL_MANAGER_CLIENT_CUSTOM2 MAV_STORM32_GIMBAL_MANAGER_CLIENT = 8 +) + +var labels_MAV_STORM32_GIMBAL_MANAGER_CLIENT = map[MAV_STORM32_GIMBAL_MANAGER_CLIENT]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAV_STORM32_GIMBAL_MANAGER_CLIENT) MarshalText() ([]byte, error) { + if l, ok := labels_MAV_STORM32_GIMBAL_MANAGER_CLIENT[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAV_STORM32_GIMBAL_MANAGER_CLIENT = map[string]MAV_STORM32_GIMBAL_MANAGER_CLIENT{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAV_STORM32_GIMBAL_MANAGER_CLIENT) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAV_STORM32_GIMBAL_MANAGER_CLIENT[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAV_STORM32_GIMBAL_MANAGER_CLIENT) String() string { + if l, ok := labels_MAV_STORM32_GIMBAL_MANAGER_CLIENT[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/storm32/enum_mav_storm32_gimbal_manager_flags.go b/pkg/dialects/storm32/enum_mav_storm32_gimbal_manager_flags.go new file mode 100644 index 000000000..3e1bdd857 --- /dev/null +++ b/pkg/dialects/storm32/enum_mav_storm32_gimbal_manager_flags.go @@ -0,0 +1,66 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package storm32 + +import ( + "errors" +) + +// Flags for gimbal manager operation. Used for setting and reporting, unless specified otherwise. If a setting is accepted by the gimbal manger, is reported in the STORM32_GIMBAL_MANAGER_STATUS message. +type MAV_STORM32_GIMBAL_MANAGER_FLAGS int + +const ( + // 0 = ignore. + MAV_STORM32_GIMBAL_MANAGER_FLAGS_NONE MAV_STORM32_GIMBAL_MANAGER_FLAGS = 0 + // Request to set RC input to active, or report RC input is active. Implies RC mixed. RC exclusive is achieved by setting all clients to inactive. + MAV_STORM32_GIMBAL_MANAGER_FLAGS_RC_ACTIVE MAV_STORM32_GIMBAL_MANAGER_FLAGS = 1 + // Request to set onboard/companion computer client to active, or report this client is active. + MAV_STORM32_GIMBAL_MANAGER_FLAGS_CLIENT_ONBOARD_ACTIVE MAV_STORM32_GIMBAL_MANAGER_FLAGS = 2 + // Request to set autopliot client to active, or report this client is active. + MAV_STORM32_GIMBAL_MANAGER_FLAGS_CLIENT_AUTOPILOT_ACTIVE MAV_STORM32_GIMBAL_MANAGER_FLAGS = 4 + // Request to set GCS client to active, or report this client is active. + MAV_STORM32_GIMBAL_MANAGER_FLAGS_CLIENT_GCS_ACTIVE MAV_STORM32_GIMBAL_MANAGER_FLAGS = 8 + // Request to set camera client to active, or report this client is active. + MAV_STORM32_GIMBAL_MANAGER_FLAGS_CLIENT_CAMERA_ACTIVE MAV_STORM32_GIMBAL_MANAGER_FLAGS = 16 + // Request to set GCS2 client to active, or report this client is active. + MAV_STORM32_GIMBAL_MANAGER_FLAGS_CLIENT_GCS2_ACTIVE MAV_STORM32_GIMBAL_MANAGER_FLAGS = 32 + // Request to set camera2 client to active, or report this client is active. + MAV_STORM32_GIMBAL_MANAGER_FLAGS_CLIENT_CAMERA2_ACTIVE MAV_STORM32_GIMBAL_MANAGER_FLAGS = 64 + // Request to set custom client to active, or report this client is active. + MAV_STORM32_GIMBAL_MANAGER_FLAGS_CLIENT_CUSTOM_ACTIVE MAV_STORM32_GIMBAL_MANAGER_FLAGS = 128 + // Request to set custom2 client to active, or report this client is active. + MAV_STORM32_GIMBAL_MANAGER_FLAGS_CLIENT_CUSTOM2_ACTIVE MAV_STORM32_GIMBAL_MANAGER_FLAGS = 256 + // Request supervision. This flag is only for setting, it is not reported. + MAV_STORM32_GIMBAL_MANAGER_FLAGS_SET_SUPERVISON MAV_STORM32_GIMBAL_MANAGER_FLAGS = 512 + // Release supervision. This flag is only for setting, it is not reported. + MAV_STORM32_GIMBAL_MANAGER_FLAGS_SET_RELEASE MAV_STORM32_GIMBAL_MANAGER_FLAGS = 1024 +) + +var labels_MAV_STORM32_GIMBAL_MANAGER_FLAGS = map[MAV_STORM32_GIMBAL_MANAGER_FLAGS]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAV_STORM32_GIMBAL_MANAGER_FLAGS) MarshalText() ([]byte, error) { + if l, ok := labels_MAV_STORM32_GIMBAL_MANAGER_FLAGS[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAV_STORM32_GIMBAL_MANAGER_FLAGS = map[string]MAV_STORM32_GIMBAL_MANAGER_FLAGS{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAV_STORM32_GIMBAL_MANAGER_FLAGS) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAV_STORM32_GIMBAL_MANAGER_FLAGS[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAV_STORM32_GIMBAL_MANAGER_FLAGS) String() string { + if l, ok := labels_MAV_STORM32_GIMBAL_MANAGER_FLAGS[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/storm32/enum_mav_storm32_gimbal_manager_profile.go b/pkg/dialects/storm32/enum_mav_storm32_gimbal_manager_profile.go new file mode 100644 index 000000000..87b7f454d --- /dev/null +++ b/pkg/dialects/storm32/enum_mav_storm32_gimbal_manager_profile.go @@ -0,0 +1,54 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package storm32 + +import ( + "errors" +) + +// Gimbal manager profiles. Only standard profiles are defined. Any implementation can define it's own profile in addition, and should use enum values > 16. +type MAV_STORM32_GIMBAL_MANAGER_PROFILE int + +const ( + // Default profile. Implementation specific. + MAV_STORM32_GIMBAL_MANAGER_PROFILE_DEFAULT MAV_STORM32_GIMBAL_MANAGER_PROFILE = 0 + // Custom profile. Configurable profile according to the STorM32 definition. Is configured with STORM32_GIMBAL_MANAGER_PROFIL. + MAV_STORM32_GIMBAL_MANAGER_PROFILE_CUSTOM MAV_STORM32_GIMBAL_MANAGER_PROFILE = 1 + // Default cooperative profile. Uses STorM32 custom profile with default settings to achieve cooperative behavior. + MAV_STORM32_GIMBAL_MANAGER_PROFILE_COOPERATIVE MAV_STORM32_GIMBAL_MANAGER_PROFILE = 2 + // Default exclusive profile. Uses STorM32 custom profile with default settings to achieve exclusive behavior. + MAV_STORM32_GIMBAL_MANAGER_PROFILE_EXCLUSIVE MAV_STORM32_GIMBAL_MANAGER_PROFILE = 3 + // Default priority profile with cooperative behavior for equal priority. Uses STorM32 custom profile with default settings to achieve priority-based behavior. + MAV_STORM32_GIMBAL_MANAGER_PROFILE_PRIORITY_COOPERATIVE MAV_STORM32_GIMBAL_MANAGER_PROFILE = 4 + // Default priority profile with exclusive behavior for equal priority. Uses STorM32 custom profile with default settings to achieve priority-based behavior. + MAV_STORM32_GIMBAL_MANAGER_PROFILE_PRIORITY_EXCLUSIVE MAV_STORM32_GIMBAL_MANAGER_PROFILE = 5 +) + +var labels_MAV_STORM32_GIMBAL_MANAGER_PROFILE = map[MAV_STORM32_GIMBAL_MANAGER_PROFILE]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAV_STORM32_GIMBAL_MANAGER_PROFILE) MarshalText() ([]byte, error) { + if l, ok := labels_MAV_STORM32_GIMBAL_MANAGER_PROFILE[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAV_STORM32_GIMBAL_MANAGER_PROFILE = map[string]MAV_STORM32_GIMBAL_MANAGER_PROFILE{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAV_STORM32_GIMBAL_MANAGER_PROFILE) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAV_STORM32_GIMBAL_MANAGER_PROFILE[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAV_STORM32_GIMBAL_MANAGER_PROFILE) String() string { + if l, ok := labels_MAV_STORM32_GIMBAL_MANAGER_PROFILE[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/storm32/enum_mav_storm32_gimbal_manager_setup_flags.go b/pkg/dialects/storm32/enum_mav_storm32_gimbal_manager_setup_flags.go new file mode 100644 index 000000000..967c2dc19 --- /dev/null +++ b/pkg/dialects/storm32/enum_mav_storm32_gimbal_manager_setup_flags.go @@ -0,0 +1,46 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package storm32 + +import ( + "errors" +) + +// Flags for gimbal manager set up. Used for setting and reporting, unless specified otherwise. +type MAV_STORM32_GIMBAL_MANAGER_SETUP_FLAGS int + +const ( + // Enable gimbal manager. This flag is only for setting, is not reported. + MAV_STORM32_GIMBAL_MANAGER_SETUP_FLAGS_ENABLE MAV_STORM32_GIMBAL_MANAGER_SETUP_FLAGS = 16384 + // Disable gimbal manager. This flag is only for setting, is not reported. + MAV_STORM32_GIMBAL_MANAGER_SETUP_FLAGS_DISABLE MAV_STORM32_GIMBAL_MANAGER_SETUP_FLAGS = 32768 +) + +var labels_MAV_STORM32_GIMBAL_MANAGER_SETUP_FLAGS = map[MAV_STORM32_GIMBAL_MANAGER_SETUP_FLAGS]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAV_STORM32_GIMBAL_MANAGER_SETUP_FLAGS) MarshalText() ([]byte, error) { + if l, ok := labels_MAV_STORM32_GIMBAL_MANAGER_SETUP_FLAGS[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAV_STORM32_GIMBAL_MANAGER_SETUP_FLAGS = map[string]MAV_STORM32_GIMBAL_MANAGER_SETUP_FLAGS{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAV_STORM32_GIMBAL_MANAGER_SETUP_FLAGS) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAV_STORM32_GIMBAL_MANAGER_SETUP_FLAGS[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAV_STORM32_GIMBAL_MANAGER_SETUP_FLAGS) String() string { + if l, ok := labels_MAV_STORM32_GIMBAL_MANAGER_SETUP_FLAGS[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/storm32/enum_mav_storm32_gimbal_prearm_flags.go b/pkg/dialects/storm32/enum_mav_storm32_gimbal_prearm_flags.go new file mode 100644 index 000000000..ef73cb216 --- /dev/null +++ b/pkg/dialects/storm32/enum_mav_storm32_gimbal_prearm_flags.go @@ -0,0 +1,68 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package storm32 + +import ( + "errors" +) + +// STorM32 gimbal prearm check flags. +type MAV_STORM32_GIMBAL_PREARM_FLAGS int + +const ( + // STorM32 gimbal is in normal state. + MAV_STORM32_GIMBAL_PREARM_FLAGS_IS_NORMAL MAV_STORM32_GIMBAL_PREARM_FLAGS = 1 + // The IMUs are healthy and working normally. + MAV_STORM32_GIMBAL_PREARM_FLAGS_IMUS_WORKING MAV_STORM32_GIMBAL_PREARM_FLAGS = 2 + // The motors are active and working normally. + MAV_STORM32_GIMBAL_PREARM_FLAGS_MOTORS_WORKING MAV_STORM32_GIMBAL_PREARM_FLAGS = 4 + // The encoders are healthy and working normally. + MAV_STORM32_GIMBAL_PREARM_FLAGS_ENCODERS_WORKING MAV_STORM32_GIMBAL_PREARM_FLAGS = 8 + // A battery voltage is applied and is in range. + MAV_STORM32_GIMBAL_PREARM_FLAGS_VOLTAGE_OK MAV_STORM32_GIMBAL_PREARM_FLAGS = 16 + // ???. + MAV_STORM32_GIMBAL_PREARM_FLAGS_VIRTUALCHANNELS_RECEIVING MAV_STORM32_GIMBAL_PREARM_FLAGS = 32 + // Mavlink messages are being received. + MAV_STORM32_GIMBAL_PREARM_FLAGS_MAVLINK_RECEIVING MAV_STORM32_GIMBAL_PREARM_FLAGS = 64 + // The STorM32Link data indicates QFix. + MAV_STORM32_GIMBAL_PREARM_FLAGS_STORM32LINK_QFIX MAV_STORM32_GIMBAL_PREARM_FLAGS = 128 + // The STorM32Link is working. + MAV_STORM32_GIMBAL_PREARM_FLAGS_STORM32LINK_WORKING MAV_STORM32_GIMBAL_PREARM_FLAGS = 256 + // The camera has been found and is connected. + MAV_STORM32_GIMBAL_PREARM_FLAGS_CAMERA_CONNECTED MAV_STORM32_GIMBAL_PREARM_FLAGS = 512 + // The signal on the AUX0 input pin is low. + MAV_STORM32_GIMBAL_PREARM_FLAGS_AUX0_LOW MAV_STORM32_GIMBAL_PREARM_FLAGS = 1024 + // The signal on the AUX1 input pin is low. + MAV_STORM32_GIMBAL_PREARM_FLAGS_AUX1_LOW MAV_STORM32_GIMBAL_PREARM_FLAGS = 2048 + // The NTLogger is working normally. + MAV_STORM32_GIMBAL_PREARM_FLAGS_NTLOGGER_WORKING MAV_STORM32_GIMBAL_PREARM_FLAGS = 4096 +) + +var labels_MAV_STORM32_GIMBAL_PREARM_FLAGS = map[MAV_STORM32_GIMBAL_PREARM_FLAGS]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAV_STORM32_GIMBAL_PREARM_FLAGS) MarshalText() ([]byte, error) { + if l, ok := labels_MAV_STORM32_GIMBAL_PREARM_FLAGS[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAV_STORM32_GIMBAL_PREARM_FLAGS = map[string]MAV_STORM32_GIMBAL_PREARM_FLAGS{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAV_STORM32_GIMBAL_PREARM_FLAGS) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAV_STORM32_GIMBAL_PREARM_FLAGS[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAV_STORM32_GIMBAL_PREARM_FLAGS) String() string { + if l, ok := labels_MAV_STORM32_GIMBAL_PREARM_FLAGS[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/storm32/enum_mav_storm32_tunnel_payload_type.go b/pkg/dialects/storm32/enum_mav_storm32_tunnel_payload_type.go new file mode 100644 index 000000000..b0b4d4647 --- /dev/null +++ b/pkg/dialects/storm32/enum_mav_storm32_tunnel_payload_type.go @@ -0,0 +1,61 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package storm32 + +import ( + "errors" +) + +type MAV_STORM32_TUNNEL_PAYLOAD_TYPE int + +const ( + // Registered for STorM32 gimbal controller. + MAV_STORM32_TUNNEL_PAYLOAD_TYPE_STORM32_CH1_IN MAV_STORM32_TUNNEL_PAYLOAD_TYPE = 200 + // Registered for STorM32 gimbal controller. + MAV_STORM32_TUNNEL_PAYLOAD_TYPE_STORM32_CH1_OUT MAV_STORM32_TUNNEL_PAYLOAD_TYPE = 201 + // Registered for STorM32 gimbal controller. + MAV_STORM32_TUNNEL_PAYLOAD_TYPE_STORM32_CH2_IN MAV_STORM32_TUNNEL_PAYLOAD_TYPE = 202 + // Registered for STorM32 gimbal controller. + MAV_STORM32_TUNNEL_PAYLOAD_TYPE_STORM32_CH2_OUT MAV_STORM32_TUNNEL_PAYLOAD_TYPE = 203 + // Registered for STorM32 gimbal controller. + MAV_STORM32_TUNNEL_PAYLOAD_TYPE_STORM32_CH3_IN MAV_STORM32_TUNNEL_PAYLOAD_TYPE = 204 + // Registered for STorM32 gimbal controller. + MAV_STORM32_TUNNEL_PAYLOAD_TYPE_STORM32_CH3_OUT MAV_STORM32_TUNNEL_PAYLOAD_TYPE = 205 + // Registered for STorM32 gimbal controller. + MAV_STORM32_TUNNEL_PAYLOAD_TYPE_STORM32_RESERVED6 MAV_STORM32_TUNNEL_PAYLOAD_TYPE = 206 + // Registered for STorM32 gimbal controller. + MAV_STORM32_TUNNEL_PAYLOAD_TYPE_STORM32_RESERVED7 MAV_STORM32_TUNNEL_PAYLOAD_TYPE = 207 + // Registered for STorM32 gimbal controller. + MAV_STORM32_TUNNEL_PAYLOAD_TYPE_STORM32_RESERVED8 MAV_STORM32_TUNNEL_PAYLOAD_TYPE = 208 + // Registered for STorM32 gimbal controller. + MAV_STORM32_TUNNEL_PAYLOAD_TYPE_STORM32_RESERVED9 MAV_STORM32_TUNNEL_PAYLOAD_TYPE = 209 +) + +var labels_MAV_STORM32_TUNNEL_PAYLOAD_TYPE = map[MAV_STORM32_TUNNEL_PAYLOAD_TYPE]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAV_STORM32_TUNNEL_PAYLOAD_TYPE) MarshalText() ([]byte, error) { + if l, ok := labels_MAV_STORM32_TUNNEL_PAYLOAD_TYPE[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAV_STORM32_TUNNEL_PAYLOAD_TYPE = map[string]MAV_STORM32_TUNNEL_PAYLOAD_TYPE{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAV_STORM32_TUNNEL_PAYLOAD_TYPE) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAV_STORM32_TUNNEL_PAYLOAD_TYPE[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAV_STORM32_TUNNEL_PAYLOAD_TYPE) String() string { + if l, ok := labels_MAV_STORM32_TUNNEL_PAYLOAD_TYPE[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/storm32/enum_mav_sys_status_sensor.go b/pkg/dialects/storm32/enum_mav_sys_status_sensor.go new file mode 100644 index 000000000..5a97f66ee --- /dev/null +++ b/pkg/dialects/storm32/enum_mav_sys_status_sensor.go @@ -0,0 +1,106 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package storm32 + +import ( + "errors" +) + +// These encode the sensors whose status is sent as part of the SYS_STATUS message. +type MAV_SYS_STATUS_SENSOR int + +const ( + // 0x01 3D gyro + MAV_SYS_STATUS_SENSOR_3D_GYRO MAV_SYS_STATUS_SENSOR = 1 + // 0x02 3D accelerometer + MAV_SYS_STATUS_SENSOR_3D_ACCEL MAV_SYS_STATUS_SENSOR = 2 + // 0x04 3D magnetometer + MAV_SYS_STATUS_SENSOR_3D_MAG MAV_SYS_STATUS_SENSOR = 4 + // 0x08 absolute pressure + MAV_SYS_STATUS_SENSOR_ABSOLUTE_PRESSURE MAV_SYS_STATUS_SENSOR = 8 + // 0x10 differential pressure + MAV_SYS_STATUS_SENSOR_DIFFERENTIAL_PRESSURE MAV_SYS_STATUS_SENSOR = 16 + // 0x20 GPS + MAV_SYS_STATUS_SENSOR_GPS MAV_SYS_STATUS_SENSOR = 32 + // 0x40 optical flow + MAV_SYS_STATUS_SENSOR_OPTICAL_FLOW MAV_SYS_STATUS_SENSOR = 64 + // 0x80 computer vision position + MAV_SYS_STATUS_SENSOR_VISION_POSITION MAV_SYS_STATUS_SENSOR = 128 + // 0x100 laser based position + MAV_SYS_STATUS_SENSOR_LASER_POSITION MAV_SYS_STATUS_SENSOR = 256 + // 0x200 external ground truth (Vicon or Leica) + MAV_SYS_STATUS_SENSOR_EXTERNAL_GROUND_TRUTH MAV_SYS_STATUS_SENSOR = 512 + // 0x400 3D angular rate control + MAV_SYS_STATUS_SENSOR_ANGULAR_RATE_CONTROL MAV_SYS_STATUS_SENSOR = 1024 + // 0x800 attitude stabilization + MAV_SYS_STATUS_SENSOR_ATTITUDE_STABILIZATION MAV_SYS_STATUS_SENSOR = 2048 + // 0x1000 yaw position + MAV_SYS_STATUS_SENSOR_YAW_POSITION MAV_SYS_STATUS_SENSOR = 4096 + // 0x2000 z/altitude control + MAV_SYS_STATUS_SENSOR_Z_ALTITUDE_CONTROL MAV_SYS_STATUS_SENSOR = 8192 + // 0x4000 x/y position control + MAV_SYS_STATUS_SENSOR_XY_POSITION_CONTROL MAV_SYS_STATUS_SENSOR = 16384 + // 0x8000 motor outputs / control + MAV_SYS_STATUS_SENSOR_MOTOR_OUTPUTS MAV_SYS_STATUS_SENSOR = 32768 + // 0x10000 rc receiver + MAV_SYS_STATUS_SENSOR_RC_RECEIVER MAV_SYS_STATUS_SENSOR = 65536 + // 0x20000 2nd 3D gyro + MAV_SYS_STATUS_SENSOR_3D_GYRO2 MAV_SYS_STATUS_SENSOR = 131072 + // 0x40000 2nd 3D accelerometer + MAV_SYS_STATUS_SENSOR_3D_ACCEL2 MAV_SYS_STATUS_SENSOR = 262144 + // 0x80000 2nd 3D magnetometer + MAV_SYS_STATUS_SENSOR_3D_MAG2 MAV_SYS_STATUS_SENSOR = 524288 + // 0x100000 geofence + MAV_SYS_STATUS_GEOFENCE MAV_SYS_STATUS_SENSOR = 1048576 + // 0x200000 AHRS subsystem health + MAV_SYS_STATUS_AHRS MAV_SYS_STATUS_SENSOR = 2097152 + // 0x400000 Terrain subsystem health + MAV_SYS_STATUS_TERRAIN MAV_SYS_STATUS_SENSOR = 4194304 + // 0x800000 Motors are reversed + MAV_SYS_STATUS_REVERSE_MOTOR MAV_SYS_STATUS_SENSOR = 8388608 + // 0x1000000 Logging + MAV_SYS_STATUS_LOGGING MAV_SYS_STATUS_SENSOR = 16777216 + // 0x2000000 Battery + MAV_SYS_STATUS_SENSOR_BATTERY MAV_SYS_STATUS_SENSOR = 33554432 + // 0x4000000 Proximity + MAV_SYS_STATUS_SENSOR_PROXIMITY MAV_SYS_STATUS_SENSOR = 67108864 + // 0x8000000 Satellite Communication + MAV_SYS_STATUS_SENSOR_SATCOM MAV_SYS_STATUS_SENSOR = 134217728 + // 0x10000000 pre-arm check status. Always healthy when armed + MAV_SYS_STATUS_PREARM_CHECK MAV_SYS_STATUS_SENSOR = 268435456 + // 0x20000000 Avoidance/collision prevention + MAV_SYS_STATUS_OBSTACLE_AVOIDANCE MAV_SYS_STATUS_SENSOR = 536870912 + // 0x40000000 propulsion (actuator, esc, motor or propellor) + MAV_SYS_STATUS_SENSOR_PROPULSION MAV_SYS_STATUS_SENSOR = 1073741824 + // 0x80000000 Extended bit-field are used for further sensor status bits (needs to be set in onboard_control_sensors_present only) + MAV_SYS_STATUS_EXTENSION_USED MAV_SYS_STATUS_SENSOR = 2147483648 +) + +var labels_MAV_SYS_STATUS_SENSOR = map[MAV_SYS_STATUS_SENSOR]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAV_SYS_STATUS_SENSOR) MarshalText() ([]byte, error) { + if l, ok := labels_MAV_SYS_STATUS_SENSOR[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAV_SYS_STATUS_SENSOR = map[string]MAV_SYS_STATUS_SENSOR{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAV_SYS_STATUS_SENSOR) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAV_SYS_STATUS_SENSOR[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAV_SYS_STATUS_SENSOR) String() string { + if l, ok := labels_MAV_SYS_STATUS_SENSOR[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/storm32/enum_mav_sys_status_sensor_extended.go b/pkg/dialects/storm32/enum_mav_sys_status_sensor_extended.go new file mode 100644 index 000000000..97eb90d0e --- /dev/null +++ b/pkg/dialects/storm32/enum_mav_sys_status_sensor_extended.go @@ -0,0 +1,44 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package storm32 + +import ( + "errors" +) + +// These encode the sensors whose status is sent as part of the SYS_STATUS message in the extended fields. +type MAV_SYS_STATUS_SENSOR_EXTENDED int + +const ( + // 0x01 Recovery system (parachute, balloon, retracts etc) + MAV_SYS_STATUS_RECOVERY_SYSTEM MAV_SYS_STATUS_SENSOR_EXTENDED = 1 +) + +var labels_MAV_SYS_STATUS_SENSOR_EXTENDED = map[MAV_SYS_STATUS_SENSOR_EXTENDED]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAV_SYS_STATUS_SENSOR_EXTENDED) MarshalText() ([]byte, error) { + if l, ok := labels_MAV_SYS_STATUS_SENSOR_EXTENDED[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAV_SYS_STATUS_SENSOR_EXTENDED = map[string]MAV_SYS_STATUS_SENSOR_EXTENDED{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAV_SYS_STATUS_SENSOR_EXTENDED) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAV_SYS_STATUS_SENSOR_EXTENDED[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAV_SYS_STATUS_SENSOR_EXTENDED) String() string { + if l, ok := labels_MAV_SYS_STATUS_SENSOR_EXTENDED[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/storm32/enum_mav_tunnel_payload_type.go b/pkg/dialects/storm32/enum_mav_tunnel_payload_type.go new file mode 100644 index 000000000..bcb2c745a --- /dev/null +++ b/pkg/dialects/storm32/enum_mav_tunnel_payload_type.go @@ -0,0 +1,63 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package storm32 + +import ( + "errors" +) + +type MAV_TUNNEL_PAYLOAD_TYPE int + +const ( + // Encoding of payload unknown. + MAV_TUNNEL_PAYLOAD_TYPE_UNKNOWN MAV_TUNNEL_PAYLOAD_TYPE = 0 + // Registered for STorM32 gimbal controller. + MAV_TUNNEL_PAYLOAD_TYPE_STORM32_RESERVED0 MAV_TUNNEL_PAYLOAD_TYPE = 200 + // Registered for STorM32 gimbal controller. + MAV_TUNNEL_PAYLOAD_TYPE_STORM32_RESERVED1 MAV_TUNNEL_PAYLOAD_TYPE = 201 + // Registered for STorM32 gimbal controller. + MAV_TUNNEL_PAYLOAD_TYPE_STORM32_RESERVED2 MAV_TUNNEL_PAYLOAD_TYPE = 202 + // Registered for STorM32 gimbal controller. + MAV_TUNNEL_PAYLOAD_TYPE_STORM32_RESERVED3 MAV_TUNNEL_PAYLOAD_TYPE = 203 + // Registered for STorM32 gimbal controller. + MAV_TUNNEL_PAYLOAD_TYPE_STORM32_RESERVED4 MAV_TUNNEL_PAYLOAD_TYPE = 204 + // Registered for STorM32 gimbal controller. + MAV_TUNNEL_PAYLOAD_TYPE_STORM32_RESERVED5 MAV_TUNNEL_PAYLOAD_TYPE = 205 + // Registered for STorM32 gimbal controller. + MAV_TUNNEL_PAYLOAD_TYPE_STORM32_RESERVED6 MAV_TUNNEL_PAYLOAD_TYPE = 206 + // Registered for STorM32 gimbal controller. + MAV_TUNNEL_PAYLOAD_TYPE_STORM32_RESERVED7 MAV_TUNNEL_PAYLOAD_TYPE = 207 + // Registered for STorM32 gimbal controller. + MAV_TUNNEL_PAYLOAD_TYPE_STORM32_RESERVED8 MAV_TUNNEL_PAYLOAD_TYPE = 208 + // Registered for STorM32 gimbal controller. + MAV_TUNNEL_PAYLOAD_TYPE_STORM32_RESERVED9 MAV_TUNNEL_PAYLOAD_TYPE = 209 +) + +var labels_MAV_TUNNEL_PAYLOAD_TYPE = map[MAV_TUNNEL_PAYLOAD_TYPE]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAV_TUNNEL_PAYLOAD_TYPE) MarshalText() ([]byte, error) { + if l, ok := labels_MAV_TUNNEL_PAYLOAD_TYPE[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAV_TUNNEL_PAYLOAD_TYPE = map[string]MAV_TUNNEL_PAYLOAD_TYPE{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAV_TUNNEL_PAYLOAD_TYPE) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAV_TUNNEL_PAYLOAD_TYPE[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAV_TUNNEL_PAYLOAD_TYPE) String() string { + if l, ok := labels_MAV_TUNNEL_PAYLOAD_TYPE[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/storm32/enum_mav_type.go b/pkg/dialects/storm32/enum_mav_type.go new file mode 100644 index 000000000..22a9e1654 --- /dev/null +++ b/pkg/dialects/storm32/enum_mav_type.go @@ -0,0 +1,126 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package storm32 + +import ( + "errors" +) + +// MAVLINK component type reported in HEARTBEAT message. Flight controllers must report the type of the vehicle on which they are mounted (e.g. MAV_TYPE_OCTOROTOR). All other components must report a value appropriate for their type (e.g. a camera must use MAV_TYPE_CAMERA). +type MAV_TYPE int + +const ( + // Generic micro air vehicle + MAV_TYPE_GENERIC MAV_TYPE = 0 + // Fixed wing aircraft. + MAV_TYPE_FIXED_WING MAV_TYPE = 1 + // Quadrotor + MAV_TYPE_QUADROTOR MAV_TYPE = 2 + // Coaxial helicopter + MAV_TYPE_COAXIAL MAV_TYPE = 3 + // Normal helicopter with tail rotor. + MAV_TYPE_HELICOPTER MAV_TYPE = 4 + // Ground installation + MAV_TYPE_ANTENNA_TRACKER MAV_TYPE = 5 + // Operator control unit / ground control station + MAV_TYPE_GCS MAV_TYPE = 6 + // Airship, controlled + MAV_TYPE_AIRSHIP MAV_TYPE = 7 + // Free balloon, uncontrolled + MAV_TYPE_FREE_BALLOON MAV_TYPE = 8 + // Rocket + MAV_TYPE_ROCKET MAV_TYPE = 9 + // Ground rover + MAV_TYPE_GROUND_ROVER MAV_TYPE = 10 + // Surface vessel, boat, ship + MAV_TYPE_SURFACE_BOAT MAV_TYPE = 11 + // Submarine + MAV_TYPE_SUBMARINE MAV_TYPE = 12 + // Hexarotor + MAV_TYPE_HEXAROTOR MAV_TYPE = 13 + // Octorotor + MAV_TYPE_OCTOROTOR MAV_TYPE = 14 + // Tricopter + MAV_TYPE_TRICOPTER MAV_TYPE = 15 + // Flapping wing + MAV_TYPE_FLAPPING_WING MAV_TYPE = 16 + // Kite + MAV_TYPE_KITE MAV_TYPE = 17 + // Onboard companion controller + MAV_TYPE_ONBOARD_CONTROLLER MAV_TYPE = 18 + // Two-rotor VTOL using control surfaces in vertical operation in addition. Tailsitter. + MAV_TYPE_VTOL_DUOROTOR MAV_TYPE = 19 + // Quad-rotor VTOL using a V-shaped quad config in vertical operation. Tailsitter. + MAV_TYPE_VTOL_QUADROTOR MAV_TYPE = 20 + // Tiltrotor VTOL + MAV_TYPE_VTOL_TILTROTOR MAV_TYPE = 21 + // VTOL reserved 2 + MAV_TYPE_VTOL_RESERVED2 MAV_TYPE = 22 + // VTOL reserved 3 + MAV_TYPE_VTOL_RESERVED3 MAV_TYPE = 23 + // VTOL reserved 4 + MAV_TYPE_VTOL_RESERVED4 MAV_TYPE = 24 + // VTOL reserved 5 + MAV_TYPE_VTOL_RESERVED5 MAV_TYPE = 25 + // Gimbal + MAV_TYPE_GIMBAL MAV_TYPE = 26 + // ADSB system + MAV_TYPE_ADSB MAV_TYPE = 27 + // Steerable, nonrigid airfoil + MAV_TYPE_PARAFOIL MAV_TYPE = 28 + // Dodecarotor + MAV_TYPE_DODECAROTOR MAV_TYPE = 29 + // Camera + MAV_TYPE_CAMERA MAV_TYPE = 30 + // Charging station + MAV_TYPE_CHARGING_STATION MAV_TYPE = 31 + // FLARM collision avoidance system + MAV_TYPE_FLARM MAV_TYPE = 32 + // Servo + MAV_TYPE_SERVO MAV_TYPE = 33 + // Open Drone ID. See https://mavlink.io/en/services/opendroneid.html. + MAV_TYPE_ODID MAV_TYPE = 34 + // Decarotor + MAV_TYPE_DECAROTOR MAV_TYPE = 35 + // Battery + MAV_TYPE_BATTERY MAV_TYPE = 36 + // Parachute + MAV_TYPE_PARACHUTE MAV_TYPE = 37 + // Log + MAV_TYPE_LOG MAV_TYPE = 38 + // OSD + MAV_TYPE_OSD MAV_TYPE = 39 + // IMU + MAV_TYPE_IMU MAV_TYPE = 40 + // GPS + MAV_TYPE_GPS MAV_TYPE = 41 +) + +var labels_MAV_TYPE = map[MAV_TYPE]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAV_TYPE) MarshalText() ([]byte, error) { + if l, ok := labels_MAV_TYPE[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAV_TYPE = map[string]MAV_TYPE{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAV_TYPE) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAV_TYPE[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAV_TYPE) String() string { + if l, ok := labels_MAV_TYPE[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/storm32/enum_mav_vtol_state.go b/pkg/dialects/storm32/enum_mav_vtol_state.go new file mode 100644 index 000000000..6ddbe3056 --- /dev/null +++ b/pkg/dialects/storm32/enum_mav_vtol_state.go @@ -0,0 +1,52 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package storm32 + +import ( + "errors" +) + +// Enumeration of VTOL states +type MAV_VTOL_STATE int + +const ( + // MAV is not configured as VTOL + MAV_VTOL_STATE_UNDEFINED MAV_VTOL_STATE = 0 + // VTOL is in transition from multicopter to fixed-wing + MAV_VTOL_STATE_TRANSITION_TO_FW MAV_VTOL_STATE = 1 + // VTOL is in transition from fixed-wing to multicopter + MAV_VTOL_STATE_TRANSITION_TO_MC MAV_VTOL_STATE = 2 + // VTOL is in multicopter state + MAV_VTOL_STATE_MC MAV_VTOL_STATE = 3 + // VTOL is in fixed-wing state + MAV_VTOL_STATE_FW MAV_VTOL_STATE = 4 +) + +var labels_MAV_VTOL_STATE = map[MAV_VTOL_STATE]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAV_VTOL_STATE) MarshalText() ([]byte, error) { + if l, ok := labels_MAV_VTOL_STATE[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAV_VTOL_STATE = map[string]MAV_VTOL_STATE{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAV_VTOL_STATE) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAV_VTOL_STATE[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAV_VTOL_STATE) String() string { + if l, ok := labels_MAV_VTOL_STATE[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/storm32/enum_mav_winch_status_flag.go b/pkg/dialects/storm32/enum_mav_winch_status_flag.go new file mode 100644 index 000000000..9ffae5eaf --- /dev/null +++ b/pkg/dialects/storm32/enum_mav_winch_status_flag.go @@ -0,0 +1,64 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package storm32 + +import ( + "errors" +) + +// Winch status flags used in WINCH_STATUS +type MAV_WINCH_STATUS_FLAG int + +const ( + // Winch is healthy + MAV_WINCH_STATUS_HEALTHY MAV_WINCH_STATUS_FLAG = 1 + // Winch line is fully retracted + MAV_WINCH_STATUS_FULLY_RETRACTED MAV_WINCH_STATUS_FLAG = 2 + // Winch motor is moving + MAV_WINCH_STATUS_MOVING MAV_WINCH_STATUS_FLAG = 4 + // Winch clutch is engaged allowing motor to move freely. + MAV_WINCH_STATUS_CLUTCH_ENGAGED MAV_WINCH_STATUS_FLAG = 8 + // Winch is locked by locking mechanism. + MAV_WINCH_STATUS_LOCKED MAV_WINCH_STATUS_FLAG = 16 + // Winch is gravity dropping payload. + MAV_WINCH_STATUS_DROPPING MAV_WINCH_STATUS_FLAG = 32 + // Winch is arresting payload descent. + MAV_WINCH_STATUS_ARRESTING MAV_WINCH_STATUS_FLAG = 64 + // Winch is using torque measurements to sense the ground. + MAV_WINCH_STATUS_GROUND_SENSE MAV_WINCH_STATUS_FLAG = 128 + // Winch is returning to the fully retracted position. + MAV_WINCH_STATUS_RETRACTING MAV_WINCH_STATUS_FLAG = 256 + // Winch is redelivering the payload. This is a failover state if the line tension goes above a threshold during RETRACTING. + MAV_WINCH_STATUS_REDELIVER MAV_WINCH_STATUS_FLAG = 512 + // Winch is abandoning the line and possibly payload. Winch unspools the entire calculated line length. This is a failover state from REDELIVER if the number of attemps exceeds a threshold. + MAV_WINCH_STATUS_ABANDON_LINE MAV_WINCH_STATUS_FLAG = 1024 +) + +var labels_MAV_WINCH_STATUS_FLAG = map[MAV_WINCH_STATUS_FLAG]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAV_WINCH_STATUS_FLAG) MarshalText() ([]byte, error) { + if l, ok := labels_MAV_WINCH_STATUS_FLAG[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAV_WINCH_STATUS_FLAG = map[string]MAV_WINCH_STATUS_FLAG{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAV_WINCH_STATUS_FLAG) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAV_WINCH_STATUS_FLAG[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAV_WINCH_STATUS_FLAG) String() string { + if l, ok := labels_MAV_WINCH_STATUS_FLAG[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/storm32/enum_mavlink_data_stream_type.go b/pkg/dialects/storm32/enum_mavlink_data_stream_type.go new file mode 100644 index 000000000..469507761 --- /dev/null +++ b/pkg/dialects/storm32/enum_mavlink_data_stream_type.go @@ -0,0 +1,47 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package storm32 + +import ( + "errors" +) + +type MAVLINK_DATA_STREAM_TYPE int + +const ( + MAVLINK_DATA_STREAM_IMG_JPEG MAVLINK_DATA_STREAM_TYPE = 0 + MAVLINK_DATA_STREAM_IMG_BMP MAVLINK_DATA_STREAM_TYPE = 1 + MAVLINK_DATA_STREAM_IMG_RAW8U MAVLINK_DATA_STREAM_TYPE = 2 + MAVLINK_DATA_STREAM_IMG_RAW32U MAVLINK_DATA_STREAM_TYPE = 3 + MAVLINK_DATA_STREAM_IMG_PGM MAVLINK_DATA_STREAM_TYPE = 4 + MAVLINK_DATA_STREAM_IMG_PNG MAVLINK_DATA_STREAM_TYPE = 5 +) + +var labels_MAVLINK_DATA_STREAM_TYPE = map[MAVLINK_DATA_STREAM_TYPE]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MAVLINK_DATA_STREAM_TYPE) MarshalText() ([]byte, error) { + if l, ok := labels_MAVLINK_DATA_STREAM_TYPE[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MAVLINK_DATA_STREAM_TYPE = map[string]MAVLINK_DATA_STREAM_TYPE{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MAVLINK_DATA_STREAM_TYPE) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MAVLINK_DATA_STREAM_TYPE[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MAVLINK_DATA_STREAM_TYPE) String() string { + if l, ok := labels_MAVLINK_DATA_STREAM_TYPE[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/storm32/enum_motor_test_order.go b/pkg/dialects/storm32/enum_motor_test_order.go new file mode 100644 index 000000000..2493f344a --- /dev/null +++ b/pkg/dialects/storm32/enum_motor_test_order.go @@ -0,0 +1,48 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package storm32 + +import ( + "errors" +) + +// Sequence that motors are tested when using MAV_CMD_DO_MOTOR_TEST. +type MOTOR_TEST_ORDER int + +const ( + // Default autopilot motor test method. + MOTOR_TEST_ORDER_DEFAULT MOTOR_TEST_ORDER = 0 + // Motor numbers are specified as their index in a predefined vehicle-specific sequence. + MOTOR_TEST_ORDER_SEQUENCE MOTOR_TEST_ORDER = 1 + // Motor numbers are specified as the output as labeled on the board. + MOTOR_TEST_ORDER_BOARD MOTOR_TEST_ORDER = 2 +) + +var labels_MOTOR_TEST_ORDER = map[MOTOR_TEST_ORDER]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MOTOR_TEST_ORDER) MarshalText() ([]byte, error) { + if l, ok := labels_MOTOR_TEST_ORDER[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MOTOR_TEST_ORDER = map[string]MOTOR_TEST_ORDER{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MOTOR_TEST_ORDER) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MOTOR_TEST_ORDER[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MOTOR_TEST_ORDER) String() string { + if l, ok := labels_MOTOR_TEST_ORDER[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/storm32/enum_motor_test_throttle_type.go b/pkg/dialects/storm32/enum_motor_test_throttle_type.go new file mode 100644 index 000000000..eadb1a232 --- /dev/null +++ b/pkg/dialects/storm32/enum_motor_test_throttle_type.go @@ -0,0 +1,50 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package storm32 + +import ( + "errors" +) + +// Defines how throttle value is represented in MAV_CMD_DO_MOTOR_TEST. +type MOTOR_TEST_THROTTLE_TYPE int + +const ( + // Throttle as a percentage (0 ~ 100) + MOTOR_TEST_THROTTLE_PERCENT MOTOR_TEST_THROTTLE_TYPE = 0 + // Throttle as an absolute PWM value (normally in range of 1000~2000). + MOTOR_TEST_THROTTLE_PWM MOTOR_TEST_THROTTLE_TYPE = 1 + // Throttle pass-through from pilot's transmitter. + MOTOR_TEST_THROTTLE_PILOT MOTOR_TEST_THROTTLE_TYPE = 2 + // Per-motor compass calibration test. + MOTOR_TEST_COMPASS_CAL MOTOR_TEST_THROTTLE_TYPE = 3 +) + +var labels_MOTOR_TEST_THROTTLE_TYPE = map[MOTOR_TEST_THROTTLE_TYPE]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e MOTOR_TEST_THROTTLE_TYPE) MarshalText() ([]byte, error) { + if l, ok := labels_MOTOR_TEST_THROTTLE_TYPE[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_MOTOR_TEST_THROTTLE_TYPE = map[string]MOTOR_TEST_THROTTLE_TYPE{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *MOTOR_TEST_THROTTLE_TYPE) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_MOTOR_TEST_THROTTLE_TYPE[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e MOTOR_TEST_THROTTLE_TYPE) String() string { + if l, ok := labels_MOTOR_TEST_THROTTLE_TYPE[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/storm32/enum_nav_vtol_land_options.go b/pkg/dialects/storm32/enum_nav_vtol_land_options.go new file mode 100644 index 000000000..84cb977c0 --- /dev/null +++ b/pkg/dialects/storm32/enum_nav_vtol_land_options.go @@ -0,0 +1,48 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package storm32 + +import ( + "errors" +) + +type NAV_VTOL_LAND_OPTIONS int + +const ( + // Default autopilot landing behaviour. + NAV_VTOL_LAND_OPTIONS_DEFAULT NAV_VTOL_LAND_OPTIONS = 0 + // Descend in fixed wing mode, transitioning to multicopter mode for vertical landing when close to the ground. + // The fixed wing descent pattern is at the discretion of the vehicle (e.g. transition altitude, loiter direction, radius, and speed, etc.). + NAV_VTOL_LAND_OPTIONS_FW_DESCENT NAV_VTOL_LAND_OPTIONS = 1 + // Land in multicopter mode on reaching the landing co-ordinates (the whole landing is by "hover descent"). + NAV_VTOL_LAND_OPTIONS_HOVER_DESCENT NAV_VTOL_LAND_OPTIONS = 2 +) + +var labels_NAV_VTOL_LAND_OPTIONS = map[NAV_VTOL_LAND_OPTIONS]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e NAV_VTOL_LAND_OPTIONS) MarshalText() ([]byte, error) { + if l, ok := labels_NAV_VTOL_LAND_OPTIONS[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_NAV_VTOL_LAND_OPTIONS = map[string]NAV_VTOL_LAND_OPTIONS{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *NAV_VTOL_LAND_OPTIONS) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_NAV_VTOL_LAND_OPTIONS[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e NAV_VTOL_LAND_OPTIONS) String() string { + if l, ok := labels_NAV_VTOL_LAND_OPTIONS[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/storm32/enum_orbit_yaw_behaviour.go b/pkg/dialects/storm32/enum_orbit_yaw_behaviour.go new file mode 100644 index 000000000..3dcbe1e93 --- /dev/null +++ b/pkg/dialects/storm32/enum_orbit_yaw_behaviour.go @@ -0,0 +1,52 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package storm32 + +import ( + "errors" +) + +// Yaw behaviour during orbit flight. +type ORBIT_YAW_BEHAVIOUR int + +const ( + // Vehicle front points to the center (default). + ORBIT_YAW_BEHAVIOUR_HOLD_FRONT_TO_CIRCLE_CENTER ORBIT_YAW_BEHAVIOUR = 0 + // Vehicle front holds heading when message received. + ORBIT_YAW_BEHAVIOUR_HOLD_INITIAL_HEADING ORBIT_YAW_BEHAVIOUR = 1 + // Yaw uncontrolled. + ORBIT_YAW_BEHAVIOUR_UNCONTROLLED ORBIT_YAW_BEHAVIOUR = 2 + // Vehicle front follows flight path (tangential to circle). + ORBIT_YAW_BEHAVIOUR_HOLD_FRONT_TANGENT_TO_CIRCLE ORBIT_YAW_BEHAVIOUR = 3 + // Yaw controlled by RC input. + ORBIT_YAW_BEHAVIOUR_RC_CONTROLLED ORBIT_YAW_BEHAVIOUR = 4 +) + +var labels_ORBIT_YAW_BEHAVIOUR = map[ORBIT_YAW_BEHAVIOUR]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e ORBIT_YAW_BEHAVIOUR) MarshalText() ([]byte, error) { + if l, ok := labels_ORBIT_YAW_BEHAVIOUR[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_ORBIT_YAW_BEHAVIOUR = map[string]ORBIT_YAW_BEHAVIOUR{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *ORBIT_YAW_BEHAVIOUR) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_ORBIT_YAW_BEHAVIOUR[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e ORBIT_YAW_BEHAVIOUR) String() string { + if l, ok := labels_ORBIT_YAW_BEHAVIOUR[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/storm32/enum_osd_param_config_error.go b/pkg/dialects/storm32/enum_osd_param_config_error.go new file mode 100644 index 000000000..9e06dd236 --- /dev/null +++ b/pkg/dialects/storm32/enum_osd_param_config_error.go @@ -0,0 +1,46 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package storm32 + +import ( + "errors" +) + +// The error type for the OSD parameter editor. +type OSD_PARAM_CONFIG_ERROR int + +const ( + OSD_PARAM_SUCCESS OSD_PARAM_CONFIG_ERROR = 0 + OSD_PARAM_INVALID_SCREEN OSD_PARAM_CONFIG_ERROR = 1 + OSD_PARAM_INVALID_PARAMETER_INDEX OSD_PARAM_CONFIG_ERROR = 2 + OSD_PARAM_INVALID_PARAMETER OSD_PARAM_CONFIG_ERROR = 3 +) + +var labels_OSD_PARAM_CONFIG_ERROR = map[OSD_PARAM_CONFIG_ERROR]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e OSD_PARAM_CONFIG_ERROR) MarshalText() ([]byte, error) { + if l, ok := labels_OSD_PARAM_CONFIG_ERROR[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_OSD_PARAM_CONFIG_ERROR = map[string]OSD_PARAM_CONFIG_ERROR{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *OSD_PARAM_CONFIG_ERROR) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_OSD_PARAM_CONFIG_ERROR[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e OSD_PARAM_CONFIG_ERROR) String() string { + if l, ok := labels_OSD_PARAM_CONFIG_ERROR[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/storm32/enum_osd_param_config_type.go b/pkg/dialects/storm32/enum_osd_param_config_type.go new file mode 100644 index 000000000..2e69edcfc --- /dev/null +++ b/pkg/dialects/storm32/enum_osd_param_config_type.go @@ -0,0 +1,51 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package storm32 + +import ( + "errors" +) + +// The type of parameter for the OSD parameter editor. +type OSD_PARAM_CONFIG_TYPE int + +const ( + OSD_PARAM_NONE OSD_PARAM_CONFIG_TYPE = 0 + OSD_PARAM_SERIAL_PROTOCOL OSD_PARAM_CONFIG_TYPE = 1 + OSD_PARAM_SERVO_FUNCTION OSD_PARAM_CONFIG_TYPE = 2 + OSD_PARAM_AUX_FUNCTION OSD_PARAM_CONFIG_TYPE = 3 + OSD_PARAM_FLIGHT_MODE OSD_PARAM_CONFIG_TYPE = 4 + OSD_PARAM_FAILSAFE_ACTION OSD_PARAM_CONFIG_TYPE = 5 + OSD_PARAM_FAILSAFE_ACTION_1 OSD_PARAM_CONFIG_TYPE = 6 + OSD_PARAM_FAILSAFE_ACTION_2 OSD_PARAM_CONFIG_TYPE = 7 + OSD_PARAM_NUM_TYPES OSD_PARAM_CONFIG_TYPE = 8 +) + +var labels_OSD_PARAM_CONFIG_TYPE = map[OSD_PARAM_CONFIG_TYPE]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e OSD_PARAM_CONFIG_TYPE) MarshalText() ([]byte, error) { + if l, ok := labels_OSD_PARAM_CONFIG_TYPE[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_OSD_PARAM_CONFIG_TYPE = map[string]OSD_PARAM_CONFIG_TYPE{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *OSD_PARAM_CONFIG_TYPE) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_OSD_PARAM_CONFIG_TYPE[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e OSD_PARAM_CONFIG_TYPE) String() string { + if l, ok := labels_OSD_PARAM_CONFIG_TYPE[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/storm32/enum_parachute_action.go b/pkg/dialects/storm32/enum_parachute_action.go new file mode 100644 index 000000000..9bed53d3f --- /dev/null +++ b/pkg/dialects/storm32/enum_parachute_action.go @@ -0,0 +1,48 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package storm32 + +import ( + "errors" +) + +// Parachute actions. Trigger release and enable/disable auto-release. +type PARACHUTE_ACTION int + +const ( + // Disable auto-release of parachute (i.e. release triggered by crash detectors). + PARACHUTE_DISABLE PARACHUTE_ACTION = 0 + // Enable auto-release of parachute. + PARACHUTE_ENABLE PARACHUTE_ACTION = 1 + // Release parachute and kill motors. + PARACHUTE_RELEASE PARACHUTE_ACTION = 2 +) + +var labels_PARACHUTE_ACTION = map[PARACHUTE_ACTION]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e PARACHUTE_ACTION) MarshalText() ([]byte, error) { + if l, ok := labels_PARACHUTE_ACTION[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_PARACHUTE_ACTION = map[string]PARACHUTE_ACTION{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *PARACHUTE_ACTION) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_PARACHUTE_ACTION[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e PARACHUTE_ACTION) String() string { + if l, ok := labels_PARACHUTE_ACTION[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/storm32/enum_param_ack.go b/pkg/dialects/storm32/enum_param_ack.go new file mode 100644 index 000000000..f762f8b82 --- /dev/null +++ b/pkg/dialects/storm32/enum_param_ack.go @@ -0,0 +1,50 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package storm32 + +import ( + "errors" +) + +// Result from PARAM_EXT_SET message (or a PARAM_SET within a transaction). +type PARAM_ACK int + +const ( + // Parameter value ACCEPTED and SET + PARAM_ACK_ACCEPTED PARAM_ACK = 0 + // Parameter value UNKNOWN/UNSUPPORTED + PARAM_ACK_VALUE_UNSUPPORTED PARAM_ACK = 1 + // Parameter failed to set + PARAM_ACK_FAILED PARAM_ACK = 2 + // Parameter value received but not yet set/accepted. A subsequent PARAM_ACK_TRANSACTION or PARAM_EXT_ACK with the final result will follow once operation is completed. This is returned immediately for parameters that take longer to set, indicating taht the the parameter was recieved and does not need to be resent. + PARAM_ACK_IN_PROGRESS PARAM_ACK = 3 +) + +var labels_PARAM_ACK = map[PARAM_ACK]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e PARAM_ACK) MarshalText() ([]byte, error) { + if l, ok := labels_PARAM_ACK[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_PARAM_ACK = map[string]PARAM_ACK{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *PARAM_ACK) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_PARAM_ACK[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e PARAM_ACK) String() string { + if l, ok := labels_PARAM_ACK[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/storm32/enum_pid_tuning_axis.go b/pkg/dialects/storm32/enum_pid_tuning_axis.go new file mode 100644 index 000000000..6394b2faf --- /dev/null +++ b/pkg/dialects/storm32/enum_pid_tuning_axis.go @@ -0,0 +1,47 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package storm32 + +import ( + "errors" +) + +type PID_TUNING_AXIS int + +const ( + PID_TUNING_ROLL PID_TUNING_AXIS = 1 + PID_TUNING_PITCH PID_TUNING_AXIS = 2 + PID_TUNING_YAW PID_TUNING_AXIS = 3 + PID_TUNING_ACCZ PID_TUNING_AXIS = 4 + PID_TUNING_STEER PID_TUNING_AXIS = 5 + PID_TUNING_LANDING PID_TUNING_AXIS = 6 +) + +var labels_PID_TUNING_AXIS = map[PID_TUNING_AXIS]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e PID_TUNING_AXIS) MarshalText() ([]byte, error) { + if l, ok := labels_PID_TUNING_AXIS[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_PID_TUNING_AXIS = map[string]PID_TUNING_AXIS{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *PID_TUNING_AXIS) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_PID_TUNING_AXIS[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e PID_TUNING_AXIS) String() string { + if l, ok := labels_PID_TUNING_AXIS[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/storm32/enum_plane_mode.go b/pkg/dialects/storm32/enum_plane_mode.go new file mode 100644 index 000000000..08ac0f0d6 --- /dev/null +++ b/pkg/dialects/storm32/enum_plane_mode.go @@ -0,0 +1,66 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package storm32 + +import ( + "errors" +) + +// A mapping of plane flight modes for custom_mode field of heartbeat. +type PLANE_MODE int + +const ( + PLANE_MODE_MANUAL PLANE_MODE = 0 + PLANE_MODE_CIRCLE PLANE_MODE = 1 + PLANE_MODE_STABILIZE PLANE_MODE = 2 + PLANE_MODE_TRAINING PLANE_MODE = 3 + PLANE_MODE_ACRO PLANE_MODE = 4 + PLANE_MODE_FLY_BY_WIRE_A PLANE_MODE = 5 + PLANE_MODE_FLY_BY_WIRE_B PLANE_MODE = 6 + PLANE_MODE_CRUISE PLANE_MODE = 7 + PLANE_MODE_AUTOTUNE PLANE_MODE = 8 + PLANE_MODE_AUTO PLANE_MODE = 10 + PLANE_MODE_RTL PLANE_MODE = 11 + PLANE_MODE_LOITER PLANE_MODE = 12 + PLANE_MODE_TAKEOFF PLANE_MODE = 13 + PLANE_MODE_AVOID_ADSB PLANE_MODE = 14 + PLANE_MODE_GUIDED PLANE_MODE = 15 + PLANE_MODE_INITIALIZING PLANE_MODE = 16 + PLANE_MODE_QSTABILIZE PLANE_MODE = 17 + PLANE_MODE_QHOVER PLANE_MODE = 18 + PLANE_MODE_QLOITER PLANE_MODE = 19 + PLANE_MODE_QLAND PLANE_MODE = 20 + PLANE_MODE_QRTL PLANE_MODE = 21 + PLANE_MODE_QAUTOTUNE PLANE_MODE = 22 + PLANE_MODE_QACRO PLANE_MODE = 23 + PLANE_MODE_THERMAL PLANE_MODE = 24 +) + +var labels_PLANE_MODE = map[PLANE_MODE]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e PLANE_MODE) MarshalText() ([]byte, error) { + if l, ok := labels_PLANE_MODE[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_PLANE_MODE = map[string]PLANE_MODE{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *PLANE_MODE) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_PLANE_MODE[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e PLANE_MODE) String() string { + if l, ok := labels_PLANE_MODE[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/storm32/enum_position_target_typemask.go b/pkg/dialects/storm32/enum_position_target_typemask.go new file mode 100644 index 000000000..ece21c409 --- /dev/null +++ b/pkg/dialects/storm32/enum_position_target_typemask.go @@ -0,0 +1,66 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package storm32 + +import ( + "errors" +) + +// Bitmap to indicate which dimensions should be ignored by the vehicle: a value of 0b0000000000000000 or 0b0000001000000000 indicates that none of the setpoint dimensions should be ignored. If bit 9 is set the floats afx afy afz should be interpreted as force instead of acceleration. +type POSITION_TARGET_TYPEMASK int + +const ( + // Ignore position x + POSITION_TARGET_TYPEMASK_X_IGNORE POSITION_TARGET_TYPEMASK = 1 + // Ignore position y + POSITION_TARGET_TYPEMASK_Y_IGNORE POSITION_TARGET_TYPEMASK = 2 + // Ignore position z + POSITION_TARGET_TYPEMASK_Z_IGNORE POSITION_TARGET_TYPEMASK = 4 + // Ignore velocity x + POSITION_TARGET_TYPEMASK_VX_IGNORE POSITION_TARGET_TYPEMASK = 8 + // Ignore velocity y + POSITION_TARGET_TYPEMASK_VY_IGNORE POSITION_TARGET_TYPEMASK = 16 + // Ignore velocity z + POSITION_TARGET_TYPEMASK_VZ_IGNORE POSITION_TARGET_TYPEMASK = 32 + // Ignore acceleration x + POSITION_TARGET_TYPEMASK_AX_IGNORE POSITION_TARGET_TYPEMASK = 64 + // Ignore acceleration y + POSITION_TARGET_TYPEMASK_AY_IGNORE POSITION_TARGET_TYPEMASK = 128 + // Ignore acceleration z + POSITION_TARGET_TYPEMASK_AZ_IGNORE POSITION_TARGET_TYPEMASK = 256 + // Use force instead of acceleration + POSITION_TARGET_TYPEMASK_FORCE_SET POSITION_TARGET_TYPEMASK = 512 + // Ignore yaw + POSITION_TARGET_TYPEMASK_YAW_IGNORE POSITION_TARGET_TYPEMASK = 1024 + // Ignore yaw rate + POSITION_TARGET_TYPEMASK_YAW_RATE_IGNORE POSITION_TARGET_TYPEMASK = 2048 +) + +var labels_POSITION_TARGET_TYPEMASK = map[POSITION_TARGET_TYPEMASK]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e POSITION_TARGET_TYPEMASK) MarshalText() ([]byte, error) { + if l, ok := labels_POSITION_TARGET_TYPEMASK[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_POSITION_TARGET_TYPEMASK = map[string]POSITION_TARGET_TYPEMASK{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *POSITION_TARGET_TYPEMASK) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_POSITION_TARGET_TYPEMASK[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e POSITION_TARGET_TYPEMASK) String() string { + if l, ok := labels_POSITION_TARGET_TYPEMASK[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/storm32/enum_precision_land_mode.go b/pkg/dialects/storm32/enum_precision_land_mode.go new file mode 100644 index 000000000..26caf4d44 --- /dev/null +++ b/pkg/dialects/storm32/enum_precision_land_mode.go @@ -0,0 +1,48 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package storm32 + +import ( + "errors" +) + +// Precision land modes (used in MAV_CMD_NAV_LAND). +type PRECISION_LAND_MODE int + +const ( + // Normal (non-precision) landing. + PRECISION_LAND_MODE_DISABLED PRECISION_LAND_MODE = 0 + // Use precision landing if beacon detected when land command accepted, otherwise land normally. + PRECISION_LAND_MODE_OPPORTUNISTIC PRECISION_LAND_MODE = 1 + // Use precision landing, searching for beacon if not found when land command accepted (land normally if beacon cannot be found). + PRECISION_LAND_MODE_REQUIRED PRECISION_LAND_MODE = 2 +) + +var labels_PRECISION_LAND_MODE = map[PRECISION_LAND_MODE]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e PRECISION_LAND_MODE) MarshalText() ([]byte, error) { + if l, ok := labels_PRECISION_LAND_MODE[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_PRECISION_LAND_MODE = map[string]PRECISION_LAND_MODE{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *PRECISION_LAND_MODE) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_PRECISION_LAND_MODE[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e PRECISION_LAND_MODE) String() string { + if l, ok := labels_PRECISION_LAND_MODE[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/storm32/enum_rally_flags.go b/pkg/dialects/storm32/enum_rally_flags.go new file mode 100644 index 000000000..d5aa2d41f --- /dev/null +++ b/pkg/dialects/storm32/enum_rally_flags.go @@ -0,0 +1,46 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package storm32 + +import ( + "errors" +) + +// Flags in RALLY_POINT message. +type RALLY_FLAGS int + +const ( + // Flag set when requiring favorable winds for landing. + FAVORABLE_WIND RALLY_FLAGS = 1 + // Flag set when plane is to immediately descend to break altitude and land without GCS intervention. Flag not set when plane is to loiter at Rally point until commanded to land. + LAND_IMMEDIATELY RALLY_FLAGS = 2 +) + +var labels_RALLY_FLAGS = map[RALLY_FLAGS]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e RALLY_FLAGS) MarshalText() ([]byte, error) { + if l, ok := labels_RALLY_FLAGS[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_RALLY_FLAGS = map[string]RALLY_FLAGS{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *RALLY_FLAGS) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_RALLY_FLAGS[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e RALLY_FLAGS) String() string { + if l, ok := labels_RALLY_FLAGS[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/storm32/enum_rc_type.go b/pkg/dialects/storm32/enum_rc_type.go new file mode 100644 index 000000000..5ddbe1c7f --- /dev/null +++ b/pkg/dialects/storm32/enum_rc_type.go @@ -0,0 +1,46 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package storm32 + +import ( + "errors" +) + +// RC type +type RC_TYPE int + +const ( + // Spektrum DSM2 + RC_TYPE_SPEKTRUM_DSM2 RC_TYPE = 0 + // Spektrum DSMX + RC_TYPE_SPEKTRUM_DSMX RC_TYPE = 1 +) + +var labels_RC_TYPE = map[RC_TYPE]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e RC_TYPE) MarshalText() ([]byte, error) { + if l, ok := labels_RC_TYPE[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_RC_TYPE = map[string]RC_TYPE{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *RC_TYPE) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_RC_TYPE[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e RC_TYPE) String() string { + if l, ok := labels_RC_TYPE[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/storm32/enum_rover_mode.go b/pkg/dialects/storm32/enum_rover_mode.go new file mode 100644 index 000000000..78a56872a --- /dev/null +++ b/pkg/dialects/storm32/enum_rover_mode.go @@ -0,0 +1,54 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package storm32 + +import ( + "errors" +) + +// A mapping of rover flight modes for custom_mode field of heartbeat. +type ROVER_MODE int + +const ( + ROVER_MODE_MANUAL ROVER_MODE = 0 + ROVER_MODE_ACRO ROVER_MODE = 1 + ROVER_MODE_STEERING ROVER_MODE = 3 + ROVER_MODE_HOLD ROVER_MODE = 4 + ROVER_MODE_LOITER ROVER_MODE = 5 + ROVER_MODE_FOLLOW ROVER_MODE = 6 + ROVER_MODE_SIMPLE ROVER_MODE = 7 + ROVER_MODE_AUTO ROVER_MODE = 10 + ROVER_MODE_RTL ROVER_MODE = 11 + ROVER_MODE_SMART_RTL ROVER_MODE = 12 + ROVER_MODE_GUIDED ROVER_MODE = 15 + ROVER_MODE_INITIALIZING ROVER_MODE = 16 +) + +var labels_ROVER_MODE = map[ROVER_MODE]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e ROVER_MODE) MarshalText() ([]byte, error) { + if l, ok := labels_ROVER_MODE[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_ROVER_MODE = map[string]ROVER_MODE{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *ROVER_MODE) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_ROVER_MODE[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e ROVER_MODE) String() string { + if l, ok := labels_ROVER_MODE[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/storm32/enum_rtk_baseline_coordinate_system.go b/pkg/dialects/storm32/enum_rtk_baseline_coordinate_system.go new file mode 100644 index 000000000..846dcf5c6 --- /dev/null +++ b/pkg/dialects/storm32/enum_rtk_baseline_coordinate_system.go @@ -0,0 +1,46 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package storm32 + +import ( + "errors" +) + +// RTK GPS baseline coordinate system, used for RTK corrections +type RTK_BASELINE_COORDINATE_SYSTEM int + +const ( + // Earth-centered, Earth-fixed + RTK_BASELINE_COORDINATE_SYSTEM_ECEF RTK_BASELINE_COORDINATE_SYSTEM = 0 + // RTK basestation centered, north, east, down + RTK_BASELINE_COORDINATE_SYSTEM_NED RTK_BASELINE_COORDINATE_SYSTEM = 1 +) + +var labels_RTK_BASELINE_COORDINATE_SYSTEM = map[RTK_BASELINE_COORDINATE_SYSTEM]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e RTK_BASELINE_COORDINATE_SYSTEM) MarshalText() ([]byte, error) { + if l, ok := labels_RTK_BASELINE_COORDINATE_SYSTEM[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_RTK_BASELINE_COORDINATE_SYSTEM = map[string]RTK_BASELINE_COORDINATE_SYSTEM{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *RTK_BASELINE_COORDINATE_SYSTEM) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_RTK_BASELINE_COORDINATE_SYSTEM[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e RTK_BASELINE_COORDINATE_SYSTEM) String() string { + if l, ok := labels_RTK_BASELINE_COORDINATE_SYSTEM[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/storm32/enum_scripting_cmd.go b/pkg/dialects/storm32/enum_scripting_cmd.go new file mode 100644 index 000000000..1a441c04a --- /dev/null +++ b/pkg/dialects/storm32/enum_scripting_cmd.go @@ -0,0 +1,49 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package storm32 + +import ( + "errors" +) + +type SCRIPTING_CMD int + +const ( + // Start a REPL session. + SCRIPTING_CMD_REPL_START SCRIPTING_CMD = 0 + // End a REPL session. + SCRIPTING_CMD_REPL_STOP SCRIPTING_CMD = 1 + // Stop execution of scripts. + SCRIPTING_CMD_STOP SCRIPTING_CMD = 2 + // Stop execution of scripts and restart. + SCRIPTING_CMD_STOP_AND_RESTART SCRIPTING_CMD = 3 +) + +var labels_SCRIPTING_CMD = map[SCRIPTING_CMD]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e SCRIPTING_CMD) MarshalText() ([]byte, error) { + if l, ok := labels_SCRIPTING_CMD[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_SCRIPTING_CMD = map[string]SCRIPTING_CMD{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *SCRIPTING_CMD) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_SCRIPTING_CMD[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e SCRIPTING_CMD) String() string { + if l, ok := labels_SCRIPTING_CMD[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/storm32/enum_serial_control_dev.go b/pkg/dialects/storm32/enum_serial_control_dev.go new file mode 100644 index 000000000..e2202b1d1 --- /dev/null +++ b/pkg/dialects/storm32/enum_serial_control_dev.go @@ -0,0 +1,72 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package storm32 + +import ( + "errors" +) + +// SERIAL_CONTROL device types +type SERIAL_CONTROL_DEV int + +const ( + // First telemetry port + SERIAL_CONTROL_DEV_TELEM1 SERIAL_CONTROL_DEV = 0 + // Second telemetry port + SERIAL_CONTROL_DEV_TELEM2 SERIAL_CONTROL_DEV = 1 + // First GPS port + SERIAL_CONTROL_DEV_GPS1 SERIAL_CONTROL_DEV = 2 + // Second GPS port + SERIAL_CONTROL_DEV_GPS2 SERIAL_CONTROL_DEV = 3 + // system shell + SERIAL_CONTROL_DEV_SHELL SERIAL_CONTROL_DEV = 10 + // SERIAL0 + SERIAL_CONTROL_SERIAL0 SERIAL_CONTROL_DEV = 100 + // SERIAL1 + SERIAL_CONTROL_SERIAL1 SERIAL_CONTROL_DEV = 101 + // SERIAL2 + SERIAL_CONTROL_SERIAL2 SERIAL_CONTROL_DEV = 102 + // SERIAL3 + SERIAL_CONTROL_SERIAL3 SERIAL_CONTROL_DEV = 103 + // SERIAL4 + SERIAL_CONTROL_SERIAL4 SERIAL_CONTROL_DEV = 104 + // SERIAL5 + SERIAL_CONTROL_SERIAL5 SERIAL_CONTROL_DEV = 105 + // SERIAL6 + SERIAL_CONTROL_SERIAL6 SERIAL_CONTROL_DEV = 106 + // SERIAL7 + SERIAL_CONTROL_SERIAL7 SERIAL_CONTROL_DEV = 107 + // SERIAL8 + SERIAL_CONTROL_SERIAL8 SERIAL_CONTROL_DEV = 108 + // SERIAL9 + SERIAL_CONTROL_SERIAL9 SERIAL_CONTROL_DEV = 109 +) + +var labels_SERIAL_CONTROL_DEV = map[SERIAL_CONTROL_DEV]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e SERIAL_CONTROL_DEV) MarshalText() ([]byte, error) { + if l, ok := labels_SERIAL_CONTROL_DEV[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_SERIAL_CONTROL_DEV = map[string]SERIAL_CONTROL_DEV{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *SERIAL_CONTROL_DEV) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_SERIAL_CONTROL_DEV[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e SERIAL_CONTROL_DEV) String() string { + if l, ok := labels_SERIAL_CONTROL_DEV[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/storm32/enum_serial_control_flag.go b/pkg/dialects/storm32/enum_serial_control_flag.go new file mode 100644 index 000000000..bb5ebdc1d --- /dev/null +++ b/pkg/dialects/storm32/enum_serial_control_flag.go @@ -0,0 +1,52 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package storm32 + +import ( + "errors" +) + +// SERIAL_CONTROL flags (bitmask) +type SERIAL_CONTROL_FLAG int + +const ( + // Set if this is a reply + SERIAL_CONTROL_FLAG_REPLY SERIAL_CONTROL_FLAG = 1 + // Set if the sender wants the receiver to send a response as another SERIAL_CONTROL message + SERIAL_CONTROL_FLAG_RESPOND SERIAL_CONTROL_FLAG = 2 + // Set if access to the serial port should be removed from whatever driver is currently using it, giving exclusive access to the SERIAL_CONTROL protocol. The port can be handed back by sending a request without this flag set + SERIAL_CONTROL_FLAG_EXCLUSIVE SERIAL_CONTROL_FLAG = 4 + // Block on writes to the serial port + SERIAL_CONTROL_FLAG_BLOCKING SERIAL_CONTROL_FLAG = 8 + // Send multiple replies until port is drained + SERIAL_CONTROL_FLAG_MULTI SERIAL_CONTROL_FLAG = 16 +) + +var labels_SERIAL_CONTROL_FLAG = map[SERIAL_CONTROL_FLAG]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e SERIAL_CONTROL_FLAG) MarshalText() ([]byte, error) { + if l, ok := labels_SERIAL_CONTROL_FLAG[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_SERIAL_CONTROL_FLAG = map[string]SERIAL_CONTROL_FLAG{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *SERIAL_CONTROL_FLAG) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_SERIAL_CONTROL_FLAG[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e SERIAL_CONTROL_FLAG) String() string { + if l, ok := labels_SERIAL_CONTROL_FLAG[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/storm32/enum_set_focus_type.go b/pkg/dialects/storm32/enum_set_focus_type.go new file mode 100644 index 000000000..ec4393e99 --- /dev/null +++ b/pkg/dialects/storm32/enum_set_focus_type.go @@ -0,0 +1,56 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package storm32 + +import ( + "errors" +) + +// Focus types for MAV_CMD_SET_CAMERA_FOCUS +type SET_FOCUS_TYPE int + +const ( + // Focus one step increment (-1 for focusing in, 1 for focusing out towards infinity). + FOCUS_TYPE_STEP SET_FOCUS_TYPE = 0 + // Continuous focus up/down until stopped (-1 for focusing in, 1 for focusing out towards infinity, 0 to stop focusing) + FOCUS_TYPE_CONTINUOUS SET_FOCUS_TYPE = 1 + // Focus value as proportion of full camera focus range (a value between 0.0 and 100.0) + FOCUS_TYPE_RANGE SET_FOCUS_TYPE = 2 + // Focus value in metres. Note that there is no message to get the valid focus range of the camera, so this can type can only be used for cameras where the range is known (implying that this cannot reliably be used in a GCS for an arbitrary camera). + FOCUS_TYPE_METERS SET_FOCUS_TYPE = 3 + // Focus automatically. + FOCUS_TYPE_AUTO SET_FOCUS_TYPE = 4 + // Single auto focus. Mainly used for still pictures. Usually abbreviated as AF-S. + FOCUS_TYPE_AUTO_SINGLE SET_FOCUS_TYPE = 5 + // Continuous auto focus. Mainly used for dynamic scenes. Abbreviated as AF-C. + FOCUS_TYPE_AUTO_CONTINUOUS SET_FOCUS_TYPE = 6 +) + +var labels_SET_FOCUS_TYPE = map[SET_FOCUS_TYPE]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e SET_FOCUS_TYPE) MarshalText() ([]byte, error) { + if l, ok := labels_SET_FOCUS_TYPE[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_SET_FOCUS_TYPE = map[string]SET_FOCUS_TYPE{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *SET_FOCUS_TYPE) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_SET_FOCUS_TYPE[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e SET_FOCUS_TYPE) String() string { + if l, ok := labels_SET_FOCUS_TYPE[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/storm32/enum_speed_type.go b/pkg/dialects/storm32/enum_speed_type.go new file mode 100644 index 000000000..f9355e445 --- /dev/null +++ b/pkg/dialects/storm32/enum_speed_type.go @@ -0,0 +1,43 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package storm32 + +import ( + "errors" +) + +type SPEED_TYPE int + +const ( + SPEED_TYPE_AIRSPEED SPEED_TYPE = 0 + SPEED_TYPE_GROUNDSPEED SPEED_TYPE = 1 +) + +var labels_SPEED_TYPE = map[SPEED_TYPE]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e SPEED_TYPE) MarshalText() ([]byte, error) { + if l, ok := labels_SPEED_TYPE[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_SPEED_TYPE = map[string]SPEED_TYPE{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *SPEED_TYPE) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_SPEED_TYPE[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e SPEED_TYPE) String() string { + if l, ok := labels_SPEED_TYPE[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/storm32/enum_storage_status.go b/pkg/dialects/storm32/enum_storage_status.go new file mode 100644 index 000000000..86047272d --- /dev/null +++ b/pkg/dialects/storm32/enum_storage_status.go @@ -0,0 +1,50 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package storm32 + +import ( + "errors" +) + +// Flags to indicate the status of camera storage. +type STORAGE_STATUS int + +const ( + // Storage is missing (no microSD card loaded for example.) + STORAGE_STATUS_EMPTY STORAGE_STATUS = 0 + // Storage present but unformatted. + STORAGE_STATUS_UNFORMATTED STORAGE_STATUS = 1 + // Storage present and ready. + STORAGE_STATUS_READY STORAGE_STATUS = 2 + // Camera does not supply storage status information. Capacity information in STORAGE_INFORMATION fields will be ignored. + STORAGE_STATUS_NOT_SUPPORTED STORAGE_STATUS = 3 +) + +var labels_STORAGE_STATUS = map[STORAGE_STATUS]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e STORAGE_STATUS) MarshalText() ([]byte, error) { + if l, ok := labels_STORAGE_STATUS[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_STORAGE_STATUS = map[string]STORAGE_STATUS{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *STORAGE_STATUS) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_STORAGE_STATUS[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e STORAGE_STATUS) String() string { + if l, ok := labels_STORAGE_STATUS[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/storm32/enum_storage_type.go b/pkg/dialects/storm32/enum_storage_type.go new file mode 100644 index 000000000..8f20a03bc --- /dev/null +++ b/pkg/dialects/storm32/enum_storage_type.go @@ -0,0 +1,60 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package storm32 + +import ( + "errors" +) + +// Flags to indicate the type of storage. +type STORAGE_TYPE int + +const ( + // Storage type is not known. + STORAGE_TYPE_UNKNOWN STORAGE_TYPE = 0 + // Storage type is USB device. + STORAGE_TYPE_USB_STICK STORAGE_TYPE = 1 + // Storage type is SD card. + STORAGE_TYPE_SD STORAGE_TYPE = 2 + // Storage type is microSD card. + STORAGE_TYPE_MICROSD STORAGE_TYPE = 3 + // Storage type is CFast. + STORAGE_TYPE_CF STORAGE_TYPE = 4 + // Storage type is CFexpress. + STORAGE_TYPE_CFE STORAGE_TYPE = 5 + // Storage type is XQD. + STORAGE_TYPE_XQD STORAGE_TYPE = 6 + // Storage type is HD mass storage type. + STORAGE_TYPE_HD STORAGE_TYPE = 7 + // Storage type is other, not listed type. + STORAGE_TYPE_OTHER STORAGE_TYPE = 254 +) + +var labels_STORAGE_TYPE = map[STORAGE_TYPE]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e STORAGE_TYPE) MarshalText() ([]byte, error) { + if l, ok := labels_STORAGE_TYPE[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_STORAGE_TYPE = map[string]STORAGE_TYPE{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *STORAGE_TYPE) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_STORAGE_TYPE[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e STORAGE_TYPE) String() string { + if l, ok := labels_STORAGE_TYPE[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/storm32/enum_storage_usage_flag.go b/pkg/dialects/storm32/enum_storage_usage_flag.go new file mode 100644 index 000000000..912cf49c5 --- /dev/null +++ b/pkg/dialects/storm32/enum_storage_usage_flag.go @@ -0,0 +1,50 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package storm32 + +import ( + "errors" +) + +// Flags to indicate usage for a particular storage (see STORAGE_INFORMATION.storage_usage and MAV_CMD_SET_STORAGE_USAGE). +type STORAGE_USAGE_FLAG int + +const ( + // Always set to 1 (indicates STORAGE_INFORMATION.storage_usage is supported). + STORAGE_USAGE_FLAG_SET STORAGE_USAGE_FLAG = 1 + // Storage for saving photos. + STORAGE_USAGE_FLAG_PHOTO STORAGE_USAGE_FLAG = 2 + // Storage for saving videos. + STORAGE_USAGE_FLAG_VIDEO STORAGE_USAGE_FLAG = 4 + // Storage for saving logs. + STORAGE_USAGE_FLAG_LOGS STORAGE_USAGE_FLAG = 8 +) + +var labels_STORAGE_USAGE_FLAG = map[STORAGE_USAGE_FLAG]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e STORAGE_USAGE_FLAG) MarshalText() ([]byte, error) { + if l, ok := labels_STORAGE_USAGE_FLAG[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_STORAGE_USAGE_FLAG = map[string]STORAGE_USAGE_FLAG{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *STORAGE_USAGE_FLAG) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_STORAGE_USAGE_FLAG[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e STORAGE_USAGE_FLAG) String() string { + if l, ok := labels_STORAGE_USAGE_FLAG[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/storm32/enum_sub_mode.go b/pkg/dialects/storm32/enum_sub_mode.go new file mode 100644 index 000000000..61d00e269 --- /dev/null +++ b/pkg/dialects/storm32/enum_sub_mode.go @@ -0,0 +1,51 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package storm32 + +import ( + "errors" +) + +// A mapping of sub flight modes for custom_mode field of heartbeat. +type SUB_MODE int + +const ( + SUB_MODE_STABILIZE SUB_MODE = 0 + SUB_MODE_ACRO SUB_MODE = 1 + SUB_MODE_ALT_HOLD SUB_MODE = 2 + SUB_MODE_AUTO SUB_MODE = 3 + SUB_MODE_GUIDED SUB_MODE = 4 + SUB_MODE_CIRCLE SUB_MODE = 7 + SUB_MODE_SURFACE SUB_MODE = 9 + SUB_MODE_POSHOLD SUB_MODE = 16 + SUB_MODE_MANUAL SUB_MODE = 19 +) + +var labels_SUB_MODE = map[SUB_MODE]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e SUB_MODE) MarshalText() ([]byte, error) { + if l, ok := labels_SUB_MODE[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_SUB_MODE = map[string]SUB_MODE{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *SUB_MODE) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_SUB_MODE[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e SUB_MODE) String() string { + if l, ok := labels_SUB_MODE[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/storm32/enum_tracker_mode.go b/pkg/dialects/storm32/enum_tracker_mode.go new file mode 100644 index 000000000..05bebc5f6 --- /dev/null +++ b/pkg/dialects/storm32/enum_tracker_mode.go @@ -0,0 +1,48 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package storm32 + +import ( + "errors" +) + +// A mapping of antenna tracker flight modes for custom_mode field of heartbeat. +type TRACKER_MODE int + +const ( + TRACKER_MODE_MANUAL TRACKER_MODE = 0 + TRACKER_MODE_STOP TRACKER_MODE = 1 + TRACKER_MODE_SCAN TRACKER_MODE = 2 + TRACKER_MODE_SERVO_TEST TRACKER_MODE = 3 + TRACKER_MODE_AUTO TRACKER_MODE = 10 + TRACKER_MODE_INITIALIZING TRACKER_MODE = 16 +) + +var labels_TRACKER_MODE = map[TRACKER_MODE]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e TRACKER_MODE) MarshalText() ([]byte, error) { + if l, ok := labels_TRACKER_MODE[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_TRACKER_MODE = map[string]TRACKER_MODE{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *TRACKER_MODE) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_TRACKER_MODE[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e TRACKER_MODE) String() string { + if l, ok := labels_TRACKER_MODE[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/storm32/enum_tune_format.go b/pkg/dialects/storm32/enum_tune_format.go new file mode 100644 index 000000000..79cd968a6 --- /dev/null +++ b/pkg/dialects/storm32/enum_tune_format.go @@ -0,0 +1,46 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package storm32 + +import ( + "errors" +) + +// Tune formats (used for vehicle buzzer/tone generation). +type TUNE_FORMAT int + +const ( + // Format is QBasic 1.1 Play: https://www.qbasic.net/en/reference/qb11/Statement/PLAY-006.htm. + TUNE_FORMAT_QBASIC1_1 TUNE_FORMAT = 1 + // Format is Modern Music Markup Language (MML): https://en.wikipedia.org/wiki/Music_Macro_Language#Modern_MML. + TUNE_FORMAT_MML_MODERN TUNE_FORMAT = 2 +) + +var labels_TUNE_FORMAT = map[TUNE_FORMAT]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e TUNE_FORMAT) MarshalText() ([]byte, error) { + if l, ok := labels_TUNE_FORMAT[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_TUNE_FORMAT = map[string]TUNE_FORMAT{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *TUNE_FORMAT) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_TUNE_FORMAT[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e TUNE_FORMAT) String() string { + if l, ok := labels_TUNE_FORMAT[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/storm32/enum_uavcan_node_health.go b/pkg/dialects/storm32/enum_uavcan_node_health.go new file mode 100644 index 000000000..5082c378f --- /dev/null +++ b/pkg/dialects/storm32/enum_uavcan_node_health.go @@ -0,0 +1,50 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package storm32 + +import ( + "errors" +) + +// Generalized UAVCAN node health +type UAVCAN_NODE_HEALTH int + +const ( + // The node is functioning properly. + UAVCAN_NODE_HEALTH_OK UAVCAN_NODE_HEALTH = 0 + // A critical parameter went out of range or the node has encountered a minor failure. + UAVCAN_NODE_HEALTH_WARNING UAVCAN_NODE_HEALTH = 1 + // The node has encountered a major failure. + UAVCAN_NODE_HEALTH_ERROR UAVCAN_NODE_HEALTH = 2 + // The node has suffered a fatal malfunction. + UAVCAN_NODE_HEALTH_CRITICAL UAVCAN_NODE_HEALTH = 3 +) + +var labels_UAVCAN_NODE_HEALTH = map[UAVCAN_NODE_HEALTH]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e UAVCAN_NODE_HEALTH) MarshalText() ([]byte, error) { + if l, ok := labels_UAVCAN_NODE_HEALTH[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_UAVCAN_NODE_HEALTH = map[string]UAVCAN_NODE_HEALTH{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *UAVCAN_NODE_HEALTH) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_UAVCAN_NODE_HEALTH[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e UAVCAN_NODE_HEALTH) String() string { + if l, ok := labels_UAVCAN_NODE_HEALTH[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/storm32/enum_uavcan_node_mode.go b/pkg/dialects/storm32/enum_uavcan_node_mode.go new file mode 100644 index 000000000..586cd70bf --- /dev/null +++ b/pkg/dialects/storm32/enum_uavcan_node_mode.go @@ -0,0 +1,52 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package storm32 + +import ( + "errors" +) + +// Generalized UAVCAN node mode +type UAVCAN_NODE_MODE int + +const ( + // The node is performing its primary functions. + UAVCAN_NODE_MODE_OPERATIONAL UAVCAN_NODE_MODE = 0 + // The node is initializing; this mode is entered immediately after startup. + UAVCAN_NODE_MODE_INITIALIZATION UAVCAN_NODE_MODE = 1 + // The node is under maintenance. + UAVCAN_NODE_MODE_MAINTENANCE UAVCAN_NODE_MODE = 2 + // The node is in the process of updating its software. + UAVCAN_NODE_MODE_SOFTWARE_UPDATE UAVCAN_NODE_MODE = 3 + // The node is no longer available online. + UAVCAN_NODE_MODE_OFFLINE UAVCAN_NODE_MODE = 7 +) + +var labels_UAVCAN_NODE_MODE = map[UAVCAN_NODE_MODE]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e UAVCAN_NODE_MODE) MarshalText() ([]byte, error) { + if l, ok := labels_UAVCAN_NODE_MODE[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_UAVCAN_NODE_MODE = map[string]UAVCAN_NODE_MODE{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *UAVCAN_NODE_MODE) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_UAVCAN_NODE_MODE[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e UAVCAN_NODE_MODE) String() string { + if l, ok := labels_UAVCAN_NODE_MODE[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/storm32/enum_uavionix_adsb_emergency_status.go b/pkg/dialects/storm32/enum_uavionix_adsb_emergency_status.go new file mode 100644 index 000000000..01b828be8 --- /dev/null +++ b/pkg/dialects/storm32/enum_uavionix_adsb_emergency_status.go @@ -0,0 +1,50 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package storm32 + +import ( + "errors" +) + +// Emergency status encoding +type UAVIONIX_ADSB_EMERGENCY_STATUS int + +const ( + UAVIONIX_ADSB_OUT_NO_EMERGENCY UAVIONIX_ADSB_EMERGENCY_STATUS = 0 + UAVIONIX_ADSB_OUT_GENERAL_EMERGENCY UAVIONIX_ADSB_EMERGENCY_STATUS = 1 + UAVIONIX_ADSB_OUT_LIFEGUARD_EMERGENCY UAVIONIX_ADSB_EMERGENCY_STATUS = 2 + UAVIONIX_ADSB_OUT_MINIMUM_FUEL_EMERGENCY UAVIONIX_ADSB_EMERGENCY_STATUS = 3 + UAVIONIX_ADSB_OUT_NO_COMM_EMERGENCY UAVIONIX_ADSB_EMERGENCY_STATUS = 4 + UAVIONIX_ADSB_OUT_UNLAWFUL_INTERFERANCE_EMERGENCY UAVIONIX_ADSB_EMERGENCY_STATUS = 5 + UAVIONIX_ADSB_OUT_DOWNED_AIRCRAFT_EMERGENCY UAVIONIX_ADSB_EMERGENCY_STATUS = 6 + UAVIONIX_ADSB_OUT_RESERVED UAVIONIX_ADSB_EMERGENCY_STATUS = 7 +) + +var labels_UAVIONIX_ADSB_EMERGENCY_STATUS = map[UAVIONIX_ADSB_EMERGENCY_STATUS]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e UAVIONIX_ADSB_EMERGENCY_STATUS) MarshalText() ([]byte, error) { + if l, ok := labels_UAVIONIX_ADSB_EMERGENCY_STATUS[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_UAVIONIX_ADSB_EMERGENCY_STATUS = map[string]UAVIONIX_ADSB_EMERGENCY_STATUS{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *UAVIONIX_ADSB_EMERGENCY_STATUS) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_UAVIONIX_ADSB_EMERGENCY_STATUS[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e UAVIONIX_ADSB_EMERGENCY_STATUS) String() string { + if l, ok := labels_UAVIONIX_ADSB_EMERGENCY_STATUS[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/storm32/enum_uavionix_adsb_out_cfg_aircraft_size.go b/pkg/dialects/storm32/enum_uavionix_adsb_out_cfg_aircraft_size.go new file mode 100644 index 000000000..01ebe1da4 --- /dev/null +++ b/pkg/dialects/storm32/enum_uavionix_adsb_out_cfg_aircraft_size.go @@ -0,0 +1,58 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package storm32 + +import ( + "errors" +) + +// Definitions for aircraft size +type UAVIONIX_ADSB_OUT_CFG_AIRCRAFT_SIZE int + +const ( + UAVIONIX_ADSB_OUT_CFG_AIRCRAFT_SIZE_NO_DATA UAVIONIX_ADSB_OUT_CFG_AIRCRAFT_SIZE = 0 + UAVIONIX_ADSB_OUT_CFG_AIRCRAFT_SIZE_L15M_W23M UAVIONIX_ADSB_OUT_CFG_AIRCRAFT_SIZE = 1 + UAVIONIX_ADSB_OUT_CFG_AIRCRAFT_SIZE_L25M_W28P5M UAVIONIX_ADSB_OUT_CFG_AIRCRAFT_SIZE = 2 + UAVIONIX_ADSB_OUT_CFG_AIRCRAFT_SIZE_L25_34M UAVIONIX_ADSB_OUT_CFG_AIRCRAFT_SIZE = 3 + UAVIONIX_ADSB_OUT_CFG_AIRCRAFT_SIZE_L35_33M UAVIONIX_ADSB_OUT_CFG_AIRCRAFT_SIZE = 4 + UAVIONIX_ADSB_OUT_CFG_AIRCRAFT_SIZE_L35_38M UAVIONIX_ADSB_OUT_CFG_AIRCRAFT_SIZE = 5 + UAVIONIX_ADSB_OUT_CFG_AIRCRAFT_SIZE_L45_39P5M UAVIONIX_ADSB_OUT_CFG_AIRCRAFT_SIZE = 6 + UAVIONIX_ADSB_OUT_CFG_AIRCRAFT_SIZE_L45_45M UAVIONIX_ADSB_OUT_CFG_AIRCRAFT_SIZE = 7 + UAVIONIX_ADSB_OUT_CFG_AIRCRAFT_SIZE_L55_45M UAVIONIX_ADSB_OUT_CFG_AIRCRAFT_SIZE = 8 + UAVIONIX_ADSB_OUT_CFG_AIRCRAFT_SIZE_L55_52M UAVIONIX_ADSB_OUT_CFG_AIRCRAFT_SIZE = 9 + UAVIONIX_ADSB_OUT_CFG_AIRCRAFT_SIZE_L65_59P5M UAVIONIX_ADSB_OUT_CFG_AIRCRAFT_SIZE = 10 + UAVIONIX_ADSB_OUT_CFG_AIRCRAFT_SIZE_L65_67M UAVIONIX_ADSB_OUT_CFG_AIRCRAFT_SIZE = 11 + UAVIONIX_ADSB_OUT_CFG_AIRCRAFT_SIZE_L75_W72P5M UAVIONIX_ADSB_OUT_CFG_AIRCRAFT_SIZE = 12 + UAVIONIX_ADSB_OUT_CFG_AIRCRAFT_SIZE_L75_W80M UAVIONIX_ADSB_OUT_CFG_AIRCRAFT_SIZE = 13 + UAVIONIX_ADSB_OUT_CFG_AIRCRAFT_SIZE_L85_W80M UAVIONIX_ADSB_OUT_CFG_AIRCRAFT_SIZE = 14 + UAVIONIX_ADSB_OUT_CFG_AIRCRAFT_SIZE_L85_W90M UAVIONIX_ADSB_OUT_CFG_AIRCRAFT_SIZE = 15 +) + +var labels_UAVIONIX_ADSB_OUT_CFG_AIRCRAFT_SIZE = map[UAVIONIX_ADSB_OUT_CFG_AIRCRAFT_SIZE]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e UAVIONIX_ADSB_OUT_CFG_AIRCRAFT_SIZE) MarshalText() ([]byte, error) { + if l, ok := labels_UAVIONIX_ADSB_OUT_CFG_AIRCRAFT_SIZE[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_UAVIONIX_ADSB_OUT_CFG_AIRCRAFT_SIZE = map[string]UAVIONIX_ADSB_OUT_CFG_AIRCRAFT_SIZE{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *UAVIONIX_ADSB_OUT_CFG_AIRCRAFT_SIZE) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_UAVIONIX_ADSB_OUT_CFG_AIRCRAFT_SIZE[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e UAVIONIX_ADSB_OUT_CFG_AIRCRAFT_SIZE) String() string { + if l, ok := labels_UAVIONIX_ADSB_OUT_CFG_AIRCRAFT_SIZE[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/storm32/enum_uavionix_adsb_out_cfg_gps_offset_lat.go b/pkg/dialects/storm32/enum_uavionix_adsb_out_cfg_gps_offset_lat.go new file mode 100644 index 000000000..d34d9cdc2 --- /dev/null +++ b/pkg/dialects/storm32/enum_uavionix_adsb_out_cfg_gps_offset_lat.go @@ -0,0 +1,50 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package storm32 + +import ( + "errors" +) + +// GPS lataral offset encoding +type UAVIONIX_ADSB_OUT_CFG_GPS_OFFSET_LAT int + +const ( + UAVIONIX_ADSB_OUT_CFG_GPS_OFFSET_LAT_NO_DATA UAVIONIX_ADSB_OUT_CFG_GPS_OFFSET_LAT = 0 + UAVIONIX_ADSB_OUT_CFG_GPS_OFFSET_LAT_LEFT_2M UAVIONIX_ADSB_OUT_CFG_GPS_OFFSET_LAT = 1 + UAVIONIX_ADSB_OUT_CFG_GPS_OFFSET_LAT_LEFT_4M UAVIONIX_ADSB_OUT_CFG_GPS_OFFSET_LAT = 2 + UAVIONIX_ADSB_OUT_CFG_GPS_OFFSET_LAT_LEFT_6M UAVIONIX_ADSB_OUT_CFG_GPS_OFFSET_LAT = 3 + UAVIONIX_ADSB_OUT_CFG_GPS_OFFSET_LAT_RIGHT_0M UAVIONIX_ADSB_OUT_CFG_GPS_OFFSET_LAT = 4 + UAVIONIX_ADSB_OUT_CFG_GPS_OFFSET_LAT_RIGHT_2M UAVIONIX_ADSB_OUT_CFG_GPS_OFFSET_LAT = 5 + UAVIONIX_ADSB_OUT_CFG_GPS_OFFSET_LAT_RIGHT_4M UAVIONIX_ADSB_OUT_CFG_GPS_OFFSET_LAT = 6 + UAVIONIX_ADSB_OUT_CFG_GPS_OFFSET_LAT_RIGHT_6M UAVIONIX_ADSB_OUT_CFG_GPS_OFFSET_LAT = 7 +) + +var labels_UAVIONIX_ADSB_OUT_CFG_GPS_OFFSET_LAT = map[UAVIONIX_ADSB_OUT_CFG_GPS_OFFSET_LAT]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e UAVIONIX_ADSB_OUT_CFG_GPS_OFFSET_LAT) MarshalText() ([]byte, error) { + if l, ok := labels_UAVIONIX_ADSB_OUT_CFG_GPS_OFFSET_LAT[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_UAVIONIX_ADSB_OUT_CFG_GPS_OFFSET_LAT = map[string]UAVIONIX_ADSB_OUT_CFG_GPS_OFFSET_LAT{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *UAVIONIX_ADSB_OUT_CFG_GPS_OFFSET_LAT) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_UAVIONIX_ADSB_OUT_CFG_GPS_OFFSET_LAT[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e UAVIONIX_ADSB_OUT_CFG_GPS_OFFSET_LAT) String() string { + if l, ok := labels_UAVIONIX_ADSB_OUT_CFG_GPS_OFFSET_LAT[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/storm32/enum_uavionix_adsb_out_cfg_gps_offset_lon.go b/pkg/dialects/storm32/enum_uavionix_adsb_out_cfg_gps_offset_lon.go new file mode 100644 index 000000000..425b9ecb5 --- /dev/null +++ b/pkg/dialects/storm32/enum_uavionix_adsb_out_cfg_gps_offset_lon.go @@ -0,0 +1,44 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package storm32 + +import ( + "errors" +) + +// GPS longitudinal offset encoding +type UAVIONIX_ADSB_OUT_CFG_GPS_OFFSET_LON int + +const ( + UAVIONIX_ADSB_OUT_CFG_GPS_OFFSET_LON_NO_DATA UAVIONIX_ADSB_OUT_CFG_GPS_OFFSET_LON = 0 + UAVIONIX_ADSB_OUT_CFG_GPS_OFFSET_LON_APPLIED_BY_SENSOR UAVIONIX_ADSB_OUT_CFG_GPS_OFFSET_LON = 1 +) + +var labels_UAVIONIX_ADSB_OUT_CFG_GPS_OFFSET_LON = map[UAVIONIX_ADSB_OUT_CFG_GPS_OFFSET_LON]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e UAVIONIX_ADSB_OUT_CFG_GPS_OFFSET_LON) MarshalText() ([]byte, error) { + if l, ok := labels_UAVIONIX_ADSB_OUT_CFG_GPS_OFFSET_LON[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_UAVIONIX_ADSB_OUT_CFG_GPS_OFFSET_LON = map[string]UAVIONIX_ADSB_OUT_CFG_GPS_OFFSET_LON{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *UAVIONIX_ADSB_OUT_CFG_GPS_OFFSET_LON) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_UAVIONIX_ADSB_OUT_CFG_GPS_OFFSET_LON[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e UAVIONIX_ADSB_OUT_CFG_GPS_OFFSET_LON) String() string { + if l, ok := labels_UAVIONIX_ADSB_OUT_CFG_GPS_OFFSET_LON[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/storm32/enum_uavionix_adsb_out_dynamic_gps_fix.go b/pkg/dialects/storm32/enum_uavionix_adsb_out_dynamic_gps_fix.go new file mode 100644 index 000000000..d719c7747 --- /dev/null +++ b/pkg/dialects/storm32/enum_uavionix_adsb_out_dynamic_gps_fix.go @@ -0,0 +1,48 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package storm32 + +import ( + "errors" +) + +// Status for ADS-B transponder dynamic input +type UAVIONIX_ADSB_OUT_DYNAMIC_GPS_FIX int + +const ( + UAVIONIX_ADSB_OUT_DYNAMIC_GPS_FIX_NONE_0 UAVIONIX_ADSB_OUT_DYNAMIC_GPS_FIX = 0 + UAVIONIX_ADSB_OUT_DYNAMIC_GPS_FIX_NONE_1 UAVIONIX_ADSB_OUT_DYNAMIC_GPS_FIX = 1 + UAVIONIX_ADSB_OUT_DYNAMIC_GPS_FIX_2D UAVIONIX_ADSB_OUT_DYNAMIC_GPS_FIX = 2 + UAVIONIX_ADSB_OUT_DYNAMIC_GPS_FIX_3D UAVIONIX_ADSB_OUT_DYNAMIC_GPS_FIX = 3 + UAVIONIX_ADSB_OUT_DYNAMIC_GPS_FIX_DGPS UAVIONIX_ADSB_OUT_DYNAMIC_GPS_FIX = 4 + UAVIONIX_ADSB_OUT_DYNAMIC_GPS_FIX_RTK UAVIONIX_ADSB_OUT_DYNAMIC_GPS_FIX = 5 +) + +var labels_UAVIONIX_ADSB_OUT_DYNAMIC_GPS_FIX = map[UAVIONIX_ADSB_OUT_DYNAMIC_GPS_FIX]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e UAVIONIX_ADSB_OUT_DYNAMIC_GPS_FIX) MarshalText() ([]byte, error) { + if l, ok := labels_UAVIONIX_ADSB_OUT_DYNAMIC_GPS_FIX[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_UAVIONIX_ADSB_OUT_DYNAMIC_GPS_FIX = map[string]UAVIONIX_ADSB_OUT_DYNAMIC_GPS_FIX{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *UAVIONIX_ADSB_OUT_DYNAMIC_GPS_FIX) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_UAVIONIX_ADSB_OUT_DYNAMIC_GPS_FIX[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e UAVIONIX_ADSB_OUT_DYNAMIC_GPS_FIX) String() string { + if l, ok := labels_UAVIONIX_ADSB_OUT_DYNAMIC_GPS_FIX[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/storm32/enum_uavionix_adsb_out_dynamic_state.go b/pkg/dialects/storm32/enum_uavionix_adsb_out_dynamic_state.go new file mode 100644 index 000000000..1f6164921 --- /dev/null +++ b/pkg/dialects/storm32/enum_uavionix_adsb_out_dynamic_state.go @@ -0,0 +1,47 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package storm32 + +import ( + "errors" +) + +// State flags for ADS-B transponder dynamic report +type UAVIONIX_ADSB_OUT_DYNAMIC_STATE int + +const ( + UAVIONIX_ADSB_OUT_DYNAMIC_STATE_INTENT_CHANGE UAVIONIX_ADSB_OUT_DYNAMIC_STATE = 1 + UAVIONIX_ADSB_OUT_DYNAMIC_STATE_AUTOPILOT_ENABLED UAVIONIX_ADSB_OUT_DYNAMIC_STATE = 2 + UAVIONIX_ADSB_OUT_DYNAMIC_STATE_NICBARO_CROSSCHECKED UAVIONIX_ADSB_OUT_DYNAMIC_STATE = 4 + UAVIONIX_ADSB_OUT_DYNAMIC_STATE_ON_GROUND UAVIONIX_ADSB_OUT_DYNAMIC_STATE = 8 + UAVIONIX_ADSB_OUT_DYNAMIC_STATE_IDENT UAVIONIX_ADSB_OUT_DYNAMIC_STATE = 16 +) + +var labels_UAVIONIX_ADSB_OUT_DYNAMIC_STATE = map[UAVIONIX_ADSB_OUT_DYNAMIC_STATE]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e UAVIONIX_ADSB_OUT_DYNAMIC_STATE) MarshalText() ([]byte, error) { + if l, ok := labels_UAVIONIX_ADSB_OUT_DYNAMIC_STATE[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_UAVIONIX_ADSB_OUT_DYNAMIC_STATE = map[string]UAVIONIX_ADSB_OUT_DYNAMIC_STATE{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *UAVIONIX_ADSB_OUT_DYNAMIC_STATE) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_UAVIONIX_ADSB_OUT_DYNAMIC_STATE[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e UAVIONIX_ADSB_OUT_DYNAMIC_STATE) String() string { + if l, ok := labels_UAVIONIX_ADSB_OUT_DYNAMIC_STATE[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/storm32/enum_uavionix_adsb_out_rf_select.go b/pkg/dialects/storm32/enum_uavionix_adsb_out_rf_select.go new file mode 100644 index 000000000..c5c808907 --- /dev/null +++ b/pkg/dialects/storm32/enum_uavionix_adsb_out_rf_select.go @@ -0,0 +1,45 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package storm32 + +import ( + "errors" +) + +// Transceiver RF control flags for ADS-B transponder dynamic reports +type UAVIONIX_ADSB_OUT_RF_SELECT int + +const ( + UAVIONIX_ADSB_OUT_RF_SELECT_STANDBY UAVIONIX_ADSB_OUT_RF_SELECT = 0 + UAVIONIX_ADSB_OUT_RF_SELECT_RX_ENABLED UAVIONIX_ADSB_OUT_RF_SELECT = 1 + UAVIONIX_ADSB_OUT_RF_SELECT_TX_ENABLED UAVIONIX_ADSB_OUT_RF_SELECT = 2 +) + +var labels_UAVIONIX_ADSB_OUT_RF_SELECT = map[UAVIONIX_ADSB_OUT_RF_SELECT]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e UAVIONIX_ADSB_OUT_RF_SELECT) MarshalText() ([]byte, error) { + if l, ok := labels_UAVIONIX_ADSB_OUT_RF_SELECT[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_UAVIONIX_ADSB_OUT_RF_SELECT = map[string]UAVIONIX_ADSB_OUT_RF_SELECT{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *UAVIONIX_ADSB_OUT_RF_SELECT) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_UAVIONIX_ADSB_OUT_RF_SELECT[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e UAVIONIX_ADSB_OUT_RF_SELECT) String() string { + if l, ok := labels_UAVIONIX_ADSB_OUT_RF_SELECT[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/storm32/enum_uavionix_adsb_rf_health.go b/pkg/dialects/storm32/enum_uavionix_adsb_rf_health.go new file mode 100644 index 000000000..6e92005b1 --- /dev/null +++ b/pkg/dialects/storm32/enum_uavionix_adsb_rf_health.go @@ -0,0 +1,46 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package storm32 + +import ( + "errors" +) + +// Status flags for ADS-B transponder dynamic output +type UAVIONIX_ADSB_RF_HEALTH int + +const ( + UAVIONIX_ADSB_RF_HEALTH_INITIALIZING UAVIONIX_ADSB_RF_HEALTH = 0 + UAVIONIX_ADSB_RF_HEALTH_OK UAVIONIX_ADSB_RF_HEALTH = 1 + UAVIONIX_ADSB_RF_HEALTH_FAIL_TX UAVIONIX_ADSB_RF_HEALTH = 2 + UAVIONIX_ADSB_RF_HEALTH_FAIL_RX UAVIONIX_ADSB_RF_HEALTH = 16 +) + +var labels_UAVIONIX_ADSB_RF_HEALTH = map[UAVIONIX_ADSB_RF_HEALTH]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e UAVIONIX_ADSB_RF_HEALTH) MarshalText() ([]byte, error) { + if l, ok := labels_UAVIONIX_ADSB_RF_HEALTH[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_UAVIONIX_ADSB_RF_HEALTH = map[string]UAVIONIX_ADSB_RF_HEALTH{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *UAVIONIX_ADSB_RF_HEALTH) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_UAVIONIX_ADSB_RF_HEALTH[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e UAVIONIX_ADSB_RF_HEALTH) String() string { + if l, ok := labels_UAVIONIX_ADSB_RF_HEALTH[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/storm32/enum_utm_data_avail_flags.go b/pkg/dialects/storm32/enum_utm_data_avail_flags.go new file mode 100644 index 000000000..49a3ad265 --- /dev/null +++ b/pkg/dialects/storm32/enum_utm_data_avail_flags.go @@ -0,0 +1,58 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package storm32 + +import ( + "errors" +) + +// Flags for the global position report. +type UTM_DATA_AVAIL_FLAGS int + +const ( + // The field time contains valid data. + UTM_DATA_AVAIL_FLAGS_TIME_VALID UTM_DATA_AVAIL_FLAGS = 1 + // The field uas_id contains valid data. + UTM_DATA_AVAIL_FLAGS_UAS_ID_AVAILABLE UTM_DATA_AVAIL_FLAGS = 2 + // The fields lat, lon and h_acc contain valid data. + UTM_DATA_AVAIL_FLAGS_POSITION_AVAILABLE UTM_DATA_AVAIL_FLAGS = 4 + // The fields alt and v_acc contain valid data. + UTM_DATA_AVAIL_FLAGS_ALTITUDE_AVAILABLE UTM_DATA_AVAIL_FLAGS = 8 + // The field relative_alt contains valid data. + UTM_DATA_AVAIL_FLAGS_RELATIVE_ALTITUDE_AVAILABLE UTM_DATA_AVAIL_FLAGS = 16 + // The fields vx and vy contain valid data. + UTM_DATA_AVAIL_FLAGS_HORIZONTAL_VELO_AVAILABLE UTM_DATA_AVAIL_FLAGS = 32 + // The field vz contains valid data. + UTM_DATA_AVAIL_FLAGS_VERTICAL_VELO_AVAILABLE UTM_DATA_AVAIL_FLAGS = 64 + // The fields next_lat, next_lon and next_alt contain valid data. + UTM_DATA_AVAIL_FLAGS_NEXT_WAYPOINT_AVAILABLE UTM_DATA_AVAIL_FLAGS = 128 +) + +var labels_UTM_DATA_AVAIL_FLAGS = map[UTM_DATA_AVAIL_FLAGS]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e UTM_DATA_AVAIL_FLAGS) MarshalText() ([]byte, error) { + if l, ok := labels_UTM_DATA_AVAIL_FLAGS[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_UTM_DATA_AVAIL_FLAGS = map[string]UTM_DATA_AVAIL_FLAGS{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *UTM_DATA_AVAIL_FLAGS) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_UTM_DATA_AVAIL_FLAGS[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e UTM_DATA_AVAIL_FLAGS) String() string { + if l, ok := labels_UTM_DATA_AVAIL_FLAGS[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/storm32/enum_utm_flight_state.go b/pkg/dialects/storm32/enum_utm_flight_state.go new file mode 100644 index 000000000..81f9f71ae --- /dev/null +++ b/pkg/dialects/storm32/enum_utm_flight_state.go @@ -0,0 +1,52 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package storm32 + +import ( + "errors" +) + +// Airborne status of UAS. +type UTM_FLIGHT_STATE int + +const ( + // The flight state can't be determined. + UTM_FLIGHT_STATE_UNKNOWN UTM_FLIGHT_STATE = 1 + // UAS on ground. + UTM_FLIGHT_STATE_GROUND UTM_FLIGHT_STATE = 2 + // UAS airborne. + UTM_FLIGHT_STATE_AIRBORNE UTM_FLIGHT_STATE = 3 + // UAS is in an emergency flight state. + UTM_FLIGHT_STATE_EMERGENCY UTM_FLIGHT_STATE = 16 + // UAS has no active controls. + UTM_FLIGHT_STATE_NOCTRL UTM_FLIGHT_STATE = 32 +) + +var labels_UTM_FLIGHT_STATE = map[UTM_FLIGHT_STATE]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e UTM_FLIGHT_STATE) MarshalText() ([]byte, error) { + if l, ok := labels_UTM_FLIGHT_STATE[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_UTM_FLIGHT_STATE = map[string]UTM_FLIGHT_STATE{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *UTM_FLIGHT_STATE) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_UTM_FLIGHT_STATE[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e UTM_FLIGHT_STATE) String() string { + if l, ok := labels_UTM_FLIGHT_STATE[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/storm32/enum_video_stream_status_flags.go b/pkg/dialects/storm32/enum_video_stream_status_flags.go new file mode 100644 index 000000000..c859a86da --- /dev/null +++ b/pkg/dialects/storm32/enum_video_stream_status_flags.go @@ -0,0 +1,46 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package storm32 + +import ( + "errors" +) + +// Stream status flags (Bitmap) +type VIDEO_STREAM_STATUS_FLAGS int + +const ( + // Stream is active (running) + VIDEO_STREAM_STATUS_FLAGS_RUNNING VIDEO_STREAM_STATUS_FLAGS = 1 + // Stream is thermal imaging + VIDEO_STREAM_STATUS_FLAGS_THERMAL VIDEO_STREAM_STATUS_FLAGS = 2 +) + +var labels_VIDEO_STREAM_STATUS_FLAGS = map[VIDEO_STREAM_STATUS_FLAGS]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e VIDEO_STREAM_STATUS_FLAGS) MarshalText() ([]byte, error) { + if l, ok := labels_VIDEO_STREAM_STATUS_FLAGS[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_VIDEO_STREAM_STATUS_FLAGS = map[string]VIDEO_STREAM_STATUS_FLAGS{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *VIDEO_STREAM_STATUS_FLAGS) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_VIDEO_STREAM_STATUS_FLAGS[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e VIDEO_STREAM_STATUS_FLAGS) String() string { + if l, ok := labels_VIDEO_STREAM_STATUS_FLAGS[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/storm32/enum_video_stream_type.go b/pkg/dialects/storm32/enum_video_stream_type.go new file mode 100644 index 000000000..d3e5cca91 --- /dev/null +++ b/pkg/dialects/storm32/enum_video_stream_type.go @@ -0,0 +1,50 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package storm32 + +import ( + "errors" +) + +// Video stream types +type VIDEO_STREAM_TYPE int + +const ( + // Stream is RTSP + VIDEO_STREAM_TYPE_RTSP VIDEO_STREAM_TYPE = 0 + // Stream is RTP UDP (URI gives the port number) + VIDEO_STREAM_TYPE_RTPUDP VIDEO_STREAM_TYPE = 1 + // Stream is MPEG on TCP + VIDEO_STREAM_TYPE_TCP_MPEG VIDEO_STREAM_TYPE = 2 + // Stream is h.264 on MPEG TS (URI gives the port number) + VIDEO_STREAM_TYPE_MPEG_TS_H264 VIDEO_STREAM_TYPE = 3 +) + +var labels_VIDEO_STREAM_TYPE = map[VIDEO_STREAM_TYPE]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e VIDEO_STREAM_TYPE) MarshalText() ([]byte, error) { + if l, ok := labels_VIDEO_STREAM_TYPE[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_VIDEO_STREAM_TYPE = map[string]VIDEO_STREAM_TYPE{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *VIDEO_STREAM_TYPE) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_VIDEO_STREAM_TYPE[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e VIDEO_STREAM_TYPE) String() string { + if l, ok := labels_VIDEO_STREAM_TYPE[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/storm32/enum_vtol_transition_heading.go b/pkg/dialects/storm32/enum_vtol_transition_heading.go new file mode 100644 index 000000000..3c86dc04f --- /dev/null +++ b/pkg/dialects/storm32/enum_vtol_transition_heading.go @@ -0,0 +1,52 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package storm32 + +import ( + "errors" +) + +// Direction of VTOL transition +type VTOL_TRANSITION_HEADING int + +const ( + // Respect the heading configuration of the vehicle. + VTOL_TRANSITION_HEADING_VEHICLE_DEFAULT VTOL_TRANSITION_HEADING = 0 + // Use the heading pointing towards the next waypoint. + VTOL_TRANSITION_HEADING_NEXT_WAYPOINT VTOL_TRANSITION_HEADING = 1 + // Use the heading on takeoff (while sitting on the ground). + VTOL_TRANSITION_HEADING_TAKEOFF VTOL_TRANSITION_HEADING = 2 + // Use the specified heading in parameter 4. + VTOL_TRANSITION_HEADING_SPECIFIED VTOL_TRANSITION_HEADING = 3 + // Use the current heading when reaching takeoff altitude (potentially facing the wind when weather-vaning is active). + VTOL_TRANSITION_HEADING_ANY VTOL_TRANSITION_HEADING = 4 +) + +var labels_VTOL_TRANSITION_HEADING = map[VTOL_TRANSITION_HEADING]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e VTOL_TRANSITION_HEADING) MarshalText() ([]byte, error) { + if l, ok := labels_VTOL_TRANSITION_HEADING[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_VTOL_TRANSITION_HEADING = map[string]VTOL_TRANSITION_HEADING{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *VTOL_TRANSITION_HEADING) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_VTOL_TRANSITION_HEADING[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e VTOL_TRANSITION_HEADING) String() string { + if l, ok := labels_VTOL_TRANSITION_HEADING[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/storm32/enum_wifi_config_ap_mode.go b/pkg/dialects/storm32/enum_wifi_config_ap_mode.go new file mode 100644 index 000000000..2d4316671 --- /dev/null +++ b/pkg/dialects/storm32/enum_wifi_config_ap_mode.go @@ -0,0 +1,50 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package storm32 + +import ( + "errors" +) + +// WiFi Mode. +type WIFI_CONFIG_AP_MODE int + +const ( + // WiFi mode is undefined. + WIFI_CONFIG_AP_MODE_UNDEFINED WIFI_CONFIG_AP_MODE = 0 + // WiFi configured as an access point. + WIFI_CONFIG_AP_MODE_AP WIFI_CONFIG_AP_MODE = 1 + // WiFi configured as a station connected to an existing local WiFi network. + WIFI_CONFIG_AP_MODE_STATION WIFI_CONFIG_AP_MODE = 2 + // WiFi disabled. + WIFI_CONFIG_AP_MODE_DISABLED WIFI_CONFIG_AP_MODE = 3 +) + +var labels_WIFI_CONFIG_AP_MODE = map[WIFI_CONFIG_AP_MODE]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e WIFI_CONFIG_AP_MODE) MarshalText() ([]byte, error) { + if l, ok := labels_WIFI_CONFIG_AP_MODE[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_WIFI_CONFIG_AP_MODE = map[string]WIFI_CONFIG_AP_MODE{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *WIFI_CONFIG_AP_MODE) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_WIFI_CONFIG_AP_MODE[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e WIFI_CONFIG_AP_MODE) String() string { + if l, ok := labels_WIFI_CONFIG_AP_MODE[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/storm32/enum_wifi_config_ap_response.go b/pkg/dialects/storm32/enum_wifi_config_ap_response.go new file mode 100644 index 000000000..bea8a44f0 --- /dev/null +++ b/pkg/dialects/storm32/enum_wifi_config_ap_response.go @@ -0,0 +1,54 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package storm32 + +import ( + "errors" +) + +// Possible responses from a WIFI_CONFIG_AP message. +type WIFI_CONFIG_AP_RESPONSE int + +const ( + // Undefined response. Likely an indicative of a system that doesn't support this request. + WIFI_CONFIG_AP_RESPONSE_UNDEFINED WIFI_CONFIG_AP_RESPONSE = 0 + // Changes accepted. + WIFI_CONFIG_AP_RESPONSE_ACCEPTED WIFI_CONFIG_AP_RESPONSE = 1 + // Changes rejected. + WIFI_CONFIG_AP_RESPONSE_REJECTED WIFI_CONFIG_AP_RESPONSE = 2 + // Invalid Mode. + WIFI_CONFIG_AP_RESPONSE_MODE_ERROR WIFI_CONFIG_AP_RESPONSE = 3 + // Invalid SSID. + WIFI_CONFIG_AP_RESPONSE_SSID_ERROR WIFI_CONFIG_AP_RESPONSE = 4 + // Invalid Password. + WIFI_CONFIG_AP_RESPONSE_PASSWORD_ERROR WIFI_CONFIG_AP_RESPONSE = 5 +) + +var labels_WIFI_CONFIG_AP_RESPONSE = map[WIFI_CONFIG_AP_RESPONSE]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e WIFI_CONFIG_AP_RESPONSE) MarshalText() ([]byte, error) { + if l, ok := labels_WIFI_CONFIG_AP_RESPONSE[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_WIFI_CONFIG_AP_RESPONSE = map[string]WIFI_CONFIG_AP_RESPONSE{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *WIFI_CONFIG_AP_RESPONSE) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_WIFI_CONFIG_AP_RESPONSE[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e WIFI_CONFIG_AP_RESPONSE) String() string { + if l, ok := labels_WIFI_CONFIG_AP_RESPONSE[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/storm32/enum_winch_actions.go b/pkg/dialects/storm32/enum_winch_actions.go new file mode 100644 index 000000000..8ae60dabe --- /dev/null +++ b/pkg/dialects/storm32/enum_winch_actions.go @@ -0,0 +1,60 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll,dupl +package storm32 + +import ( + "errors" +) + +// Winch actions. +type WINCH_ACTIONS int + +const ( + // Allow motor to freewheel. + WINCH_RELAXED WINCH_ACTIONS = 0 + // Wind or unwind specified length of line, optionally using specified rate. + WINCH_RELATIVE_LENGTH_CONTROL WINCH_ACTIONS = 1 + // Wind or unwind line at specified rate. + WINCH_RATE_CONTROL WINCH_ACTIONS = 2 + // Perform the locking sequence to relieve motor while in the fully retracted position. Only action and instance command parameters are used, others are ignored. + WINCH_LOCK WINCH_ACTIONS = 3 + // Sequence of drop, slow down, touch down, reel up, lock. Only action and instance command parameters are used, others are ignored. + WINCH_DELIVER WINCH_ACTIONS = 4 + // Engage motor and hold current position. Only action and instance command parameters are used, others are ignored. + WINCH_HOLD WINCH_ACTIONS = 5 + // Return the reel to the fully retracted position. Only action and instance command parameters are used, others are ignored. + WINCH_RETRACT WINCH_ACTIONS = 6 + // Load the reel with line. The winch will calculate the total loaded length and stop when the tension exceeds a threshold. Only action and instance command parameters are used, others are ignored. + WINCH_LOAD_LINE WINCH_ACTIONS = 7 + // Spool out the entire length of the line. Only action and instance command parameters are used, others are ignored. + WINCH_ABANDON_LINE WINCH_ACTIONS = 8 +) + +var labels_WINCH_ACTIONS = map[WINCH_ACTIONS]string{} + +// MarshalText implements the encoding.TextMarshaler interface. +func (e WINCH_ACTIONS) MarshalText() ([]byte, error) { + if l, ok := labels_WINCH_ACTIONS[e]; ok { + return []byte(l), nil + } + return nil, errors.New("invalid value") +} + +var reverseLabels_WINCH_ACTIONS = map[string]WINCH_ACTIONS{} + +// UnmarshalText implements the encoding.TextUnmarshaler interface. +func (e *WINCH_ACTIONS) UnmarshalText(text []byte) error { + if rl, ok := reverseLabels_WINCH_ACTIONS[string(text)]; ok { + *e = rl + return nil + } + return errors.New("invalid value") +} + +// String implements the fmt.Stringer interface. +func (e WINCH_ACTIONS) String() string { + if l, ok := labels_WINCH_ACTIONS[e]; ok { + return l + } + return "invalid value" +} diff --git a/pkg/dialects/storm32/msg_actuator_control_target.go b/pkg/dialects/storm32/msg_actuator_control_target.go new file mode 100644 index 000000000..d92a6e103 --- /dev/null +++ b/pkg/dialects/storm32/msg_actuator_control_target.go @@ -0,0 +1,18 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// Set the vehicle attitude and body angular rates. +type MessageActuatorControlTarget struct { + // Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. + TimeUsec uint64 + // Actuator group. The "_mlx" indicates this is a multi-instance message and a MAVLink parser should use this field to difference between instances. + GroupMlx uint8 + // Actuator controls. Normed to -1..+1 where 0 is neutral position. Throttle for single rotation direction motors is 0..1, negative range for reverse direction. Standard mapping for attitude controls (group 0): (index 0-7): roll, pitch, yaw, throttle, flaps, spoilers, airbrakes, landing gear. Load a pass-through mixer to repurpose them as generic outputs. + Controls [8]float32 +} + +// GetID implements the msg.Message interface. +func (*MessageActuatorControlTarget) GetID() uint32 { + return 140 +} diff --git a/pkg/dialects/storm32/msg_actuator_output_status.go b/pkg/dialects/storm32/msg_actuator_output_status.go new file mode 100644 index 000000000..272c68645 --- /dev/null +++ b/pkg/dialects/storm32/msg_actuator_output_status.go @@ -0,0 +1,18 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// The raw values of the actuator outputs (e.g. on Pixhawk, from MAIN, AUX ports). This message supersedes SERVO_OUTPUT_RAW. +type MessageActuatorOutputStatus struct { + // Timestamp (since system boot). + TimeUsec uint64 + // Active outputs + Active uint32 + // Servo / motor output array values. Zero values indicate unused channels. + Actuator [32]float32 +} + +// GetID implements the msg.Message interface. +func (*MessageActuatorOutputStatus) GetID() uint32 { + return 375 +} diff --git a/pkg/dialects/storm32/msg_adap_tuning.go b/pkg/dialects/storm32/msg_adap_tuning.go new file mode 100644 index 000000000..3fac04e93 --- /dev/null +++ b/pkg/dialects/storm32/msg_adap_tuning.go @@ -0,0 +1,38 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// Adaptive Controller tuning information. +type MessageAdapTuning struct { + // Axis. + Axis PID_TUNING_AXIS `mavenum:"uint8"` + // Desired rate. + Desired float32 + // Achieved rate. + Achieved float32 + // Error between model and vehicle. + Error float32 + // Theta estimated state predictor. + Theta float32 + // Omega estimated state predictor. + Omega float32 + // Sigma estimated state predictor. + Sigma float32 + // Theta derivative. + ThetaDot float32 + // Omega derivative. + OmegaDot float32 + // Sigma derivative. + SigmaDot float32 + // Projection operator value. + F float32 + // Projection operator derivative. + FDot float32 + // u adaptive controlled output command. + U float32 +} + +// GetID implements the msg.Message interface. +func (*MessageAdapTuning) GetID() uint32 { + return 11010 +} diff --git a/pkg/dialects/storm32/msg_adsb_vehicle.go b/pkg/dialects/storm32/msg_adsb_vehicle.go new file mode 100644 index 000000000..b230f73c3 --- /dev/null +++ b/pkg/dialects/storm32/msg_adsb_vehicle.go @@ -0,0 +1,38 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// The location and information of an ADSB vehicle +type MessageAdsbVehicle struct { + // ICAO address + IcaoAddress uint32 `mavname:"ICAO_address"` + // Latitude + Lat int32 + // Longitude + Lon int32 + // ADSB altitude type. + AltitudeType ADSB_ALTITUDE_TYPE `mavenum:"uint8"` + // Altitude(ASL) + Altitude int32 + // Course over ground + Heading uint16 + // The horizontal velocity + HorVelocity uint16 + // The vertical velocity. Positive is up + VerVelocity int16 + // The callsign, 8+null + Callsign string `mavlen:"9"` + // ADSB emitter type. + EmitterType ADSB_EMITTER_TYPE `mavenum:"uint8"` + // Time since last communication in seconds + Tslc uint8 + // Bitmap to indicate various statuses including valid data fields + Flags ADSB_FLAGS `mavenum:"uint16"` + // Squawk code + Squawk uint16 +} + +// GetID implements the msg.Message interface. +func (*MessageAdsbVehicle) GetID() uint32 { + return 246 +} diff --git a/pkg/dialects/storm32/msg_ahrs.go b/pkg/dialects/storm32/msg_ahrs.go new file mode 100644 index 000000000..7ec56855a --- /dev/null +++ b/pkg/dialects/storm32/msg_ahrs.go @@ -0,0 +1,26 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// Status of DCM attitude estimator. +type MessageAhrs struct { + // X gyro drift estimate. + Omegaix float32 `mavname:"omegaIx"` + // Y gyro drift estimate. + Omegaiy float32 `mavname:"omegaIy"` + // Z gyro drift estimate. + Omegaiz float32 `mavname:"omegaIz"` + // Average accel_weight. + AccelWeight float32 + // Average renormalisation value. + RenormVal float32 + // Average error_roll_pitch value. + ErrorRp float32 + // Average error_yaw value. + ErrorYaw float32 +} + +// GetID implements the msg.Message interface. +func (*MessageAhrs) GetID() uint32 { + return 163 +} diff --git a/pkg/dialects/storm32/msg_ahrs2.go b/pkg/dialects/storm32/msg_ahrs2.go new file mode 100644 index 000000000..a1067b478 --- /dev/null +++ b/pkg/dialects/storm32/msg_ahrs2.go @@ -0,0 +1,24 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// Status of secondary AHRS filter if available. +type MessageAhrs2 struct { + // Roll angle. + Roll float32 + // Pitch angle. + Pitch float32 + // Yaw angle. + Yaw float32 + // Altitude (MSL). + Altitude float32 + // Latitude. + Lat int32 + // Longitude. + Lng int32 +} + +// GetID implements the msg.Message interface. +func (*MessageAhrs2) GetID() uint32 { + return 178 +} diff --git a/pkg/dialects/storm32/msg_ahrs3.go b/pkg/dialects/storm32/msg_ahrs3.go new file mode 100644 index 000000000..48147eb0a --- /dev/null +++ b/pkg/dialects/storm32/msg_ahrs3.go @@ -0,0 +1,32 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// Status of third AHRS filter if available. This is for ANU research group (Ali and Sean). +type MessageAhrs3 struct { + // Roll angle. + Roll float32 + // Pitch angle. + Pitch float32 + // Yaw angle. + Yaw float32 + // Altitude (MSL). + Altitude float32 + // Latitude. + Lat int32 + // Longitude. + Lng int32 + // Test variable1. + V1 float32 + // Test variable2. + V2 float32 + // Test variable3. + V3 float32 + // Test variable4. + V4 float32 +} + +// GetID implements the msg.Message interface. +func (*MessageAhrs3) GetID() uint32 { + return 182 +} diff --git a/pkg/dialects/storm32/msg_airspeed_autocal.go b/pkg/dialects/storm32/msg_airspeed_autocal.go new file mode 100644 index 000000000..ccff11d66 --- /dev/null +++ b/pkg/dialects/storm32/msg_airspeed_autocal.go @@ -0,0 +1,36 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// Airspeed auto-calibration. +type MessageAirspeedAutocal struct { + // GPS velocity north. + Vx float32 + // GPS velocity east. + Vy float32 + // GPS velocity down. + Vz float32 + // Differential pressure. + DiffPressure float32 + // Estimated to true airspeed ratio. + Eas2tas float32 `mavname:"EAS2TAS"` + // Airspeed ratio. + Ratio float32 + // EKF state x. + StateX float32 + // EKF state y. + StateY float32 + // EKF state z. + StateZ float32 + // EKF Pax. + Pax float32 `mavname:"Pax"` + // EKF Pby. + Pby float32 `mavname:"Pby"` + // EKF Pcz. + Pcz float32 `mavname:"Pcz"` +} + +// GetID implements the msg.Message interface. +func (*MessageAirspeedAutocal) GetID() uint32 { + return 174 +} diff --git a/pkg/dialects/storm32/msg_ais_vessel.go b/pkg/dialects/storm32/msg_ais_vessel.go new file mode 100644 index 000000000..781435e49 --- /dev/null +++ b/pkg/dialects/storm32/msg_ais_vessel.go @@ -0,0 +1,46 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// The location and information of an AIS vessel +type MessageAisVessel struct { + // Mobile Marine Service Identifier, 9 decimal digits + Mmsi uint32 `mavname:"MMSI"` + // Latitude + Lat int32 + // Longitude + Lon int32 + // Course over ground + Cog uint16 `mavname:"COG"` + // True heading + Heading uint16 + // Speed over ground + Velocity uint16 + // Turn rate + TurnRate int8 + // Navigational status + NavigationalStatus AIS_NAV_STATUS `mavenum:"uint8"` + // Type of vessels + Type AIS_TYPE `mavenum:"uint8"` + // Distance from lat/lon location to bow + DimensionBow uint16 + // Distance from lat/lon location to stern + DimensionStern uint16 + // Distance from lat/lon location to port side + DimensionPort uint8 + // Distance from lat/lon location to starboard side + DimensionStarboard uint8 + // The vessel callsign + Callsign string `mavlen:"7"` + // The vessel name + Name string `mavlen:"20"` + // Time since last communication in seconds + Tslc uint16 + // Bitmask to indicate various statuses including valid data fields + Flags AIS_FLAGS `mavenum:"uint16"` +} + +// GetID implements the msg.Message interface. +func (*MessageAisVessel) GetID() uint32 { + return 301 +} diff --git a/pkg/dialects/storm32/msg_altitude.go b/pkg/dialects/storm32/msg_altitude.go new file mode 100644 index 000000000..7aed50e5d --- /dev/null +++ b/pkg/dialects/storm32/msg_altitude.go @@ -0,0 +1,26 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// The current system altitude. +type MessageAltitude struct { + // Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. + TimeUsec uint64 + // This altitude measure is initialized on system boot and monotonic (it is never reset, but represents the local altitude change). The only guarantee on this field is that it will never be reset and is consistent within a flight. The recommended value for this field is the uncorrected barometric altitude at boot time. This altitude will also drift and vary between flights. + AltitudeMonotonic float32 + // This altitude measure is strictly above mean sea level and might be non-monotonic (it might reset on events like GPS lock or when a new QNH value is set). It should be the altitude to which global altitude waypoints are compared to. Note that it is *not* the GPS altitude, however, most GPS modules already output MSL by default and not the WGS84 altitude. + AltitudeAmsl float32 + // This is the local altitude in the local coordinate frame. It is not the altitude above home, but in reference to the coordinate origin (0, 0, 0). It is up-positive. + AltitudeLocal float32 + // This is the altitude above the home position. It resets on each change of the current home position. + AltitudeRelative float32 + // This is the altitude above terrain. It might be fed by a terrain database or an altimeter. Values smaller than -1000 should be interpreted as unknown. + AltitudeTerrain float32 + // This is not the altitude, but the clear space below the system according to the fused clearance estimate. It generally should max out at the maximum range of e.g. the laser altimeter. It is generally a moving target. A negative value indicates no measurement available. + BottomClearance float32 +} + +// GetID implements the msg.Message interface. +func (*MessageAltitude) GetID() uint32 { + return 141 +} diff --git a/pkg/dialects/storm32/msg_aoa_ssa.go b/pkg/dialects/storm32/msg_aoa_ssa.go new file mode 100644 index 000000000..c6f5e9c49 --- /dev/null +++ b/pkg/dialects/storm32/msg_aoa_ssa.go @@ -0,0 +1,18 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// Angle of Attack and Side Slip Angle. +type MessageAoaSsa struct { + // Timestamp (since boot or Unix epoch). + TimeUsec uint64 + // Angle of Attack. + Aoa float32 `mavname:"AOA"` + // Side Slip Angle. + Ssa float32 `mavname:"SSA"` +} + +// GetID implements the msg.Message interface. +func (*MessageAoaSsa) GetID() uint32 { + return 11020 +} diff --git a/pkg/dialects/storm32/msg_ap_adc.go b/pkg/dialects/storm32/msg_ap_adc.go new file mode 100644 index 000000000..c58e3e8fc --- /dev/null +++ b/pkg/dialects/storm32/msg_ap_adc.go @@ -0,0 +1,24 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// Raw ADC output. +type MessageApAdc struct { + // ADC output 1. + Adc1 uint16 + // ADC output 2. + Adc2 uint16 + // ADC output 3. + Adc3 uint16 + // ADC output 4. + Adc4 uint16 + // ADC output 5. + Adc5 uint16 + // ADC output 6. + Adc6 uint16 +} + +// GetID implements the msg.Message interface. +func (*MessageApAdc) GetID() uint32 { + return 153 +} diff --git a/pkg/dialects/storm32/msg_att_pos_mocap.go b/pkg/dialects/storm32/msg_att_pos_mocap.go new file mode 100644 index 000000000..41c03624b --- /dev/null +++ b/pkg/dialects/storm32/msg_att_pos_mocap.go @@ -0,0 +1,24 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// Motion capture attitude and position +type MessageAttPosMocap struct { + // Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. + TimeUsec uint64 + // Attitude quaternion (w, x, y, z order, zero-rotation is 1, 0, 0, 0) + Q [4]float32 + // X position (NED) + X float32 + // Y position (NED) + Y float32 + // Z position (NED) + Z float32 + // Row-major representation of a pose 6x6 cross-covariance matrix upper right triangle (states: x, y, z, roll, pitch, yaw; first six entries are the first ROW, next five entries are the second ROW, etc.). If unknown, assign NaN value to first element in the array. + Covariance [21]float32 `mavext:"true"` +} + +// GetID implements the msg.Message interface. +func (*MessageAttPosMocap) GetID() uint32 { + return 138 +} diff --git a/pkg/dialects/storm32/msg_attitude.go b/pkg/dialects/storm32/msg_attitude.go new file mode 100644 index 000000000..0a6882203 --- /dev/null +++ b/pkg/dialects/storm32/msg_attitude.go @@ -0,0 +1,26 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// The attitude in the aeronautical frame (right-handed, Z-down, X-front, Y-right). +type MessageAttitude struct { + // Timestamp (time since system boot). + TimeBootMs uint32 + // Roll angle (-pi..+pi) + Roll float32 + // Pitch angle (-pi..+pi) + Pitch float32 + // Yaw angle (-pi..+pi) + Yaw float32 + // Roll angular speed + Rollspeed float32 + // Pitch angular speed + Pitchspeed float32 + // Yaw angular speed + Yawspeed float32 +} + +// GetID implements the msg.Message interface. +func (*MessageAttitude) GetID() uint32 { + return 30 +} diff --git a/pkg/dialects/storm32/msg_attitude_quaternion.go b/pkg/dialects/storm32/msg_attitude_quaternion.go new file mode 100644 index 000000000..5515a065f --- /dev/null +++ b/pkg/dialects/storm32/msg_attitude_quaternion.go @@ -0,0 +1,30 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// The attitude in the aeronautical frame (right-handed, Z-down, X-front, Y-right), expressed as quaternion. Quaternion order is w, x, y, z and a zero rotation would be expressed as (1 0 0 0). +type MessageAttitudeQuaternion struct { + // Timestamp (time since system boot). + TimeBootMs uint32 + // Quaternion component 1, w (1 in null-rotation) + Q1 float32 + // Quaternion component 2, x (0 in null-rotation) + Q2 float32 + // Quaternion component 3, y (0 in null-rotation) + Q3 float32 + // Quaternion component 4, z (0 in null-rotation) + Q4 float32 + // Roll angular speed + Rollspeed float32 + // Pitch angular speed + Pitchspeed float32 + // Yaw angular speed + Yawspeed float32 + // Rotation offset by which the attitude quaternion and angular speed vector should be rotated for user display (quaternion with [w, x, y, z] order, zero-rotation is [1, 0, 0, 0], send [0, 0, 0, 0] if field not supported). This field is intended for systems in which the reference attitude may change during flight. For example, tailsitters VTOLs rotate their reference attitude by 90 degrees between hover mode and fixed wing mode, thus repr_offset_q is equal to [1, 0, 0, 0] in hover mode and equal to [0.7071, 0, 0.7071, 0] in fixed wing mode. + ReprOffsetQ [4]float32 `mavext:"true"` +} + +// GetID implements the msg.Message interface. +func (*MessageAttitudeQuaternion) GetID() uint32 { + return 31 +} diff --git a/pkg/dialects/storm32/msg_attitude_quaternion_cov.go b/pkg/dialects/storm32/msg_attitude_quaternion_cov.go new file mode 100644 index 000000000..b61692f3f --- /dev/null +++ b/pkg/dialects/storm32/msg_attitude_quaternion_cov.go @@ -0,0 +1,24 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// The attitude in the aeronautical frame (right-handed, Z-down, X-front, Y-right), expressed as quaternion. Quaternion order is w, x, y, z and a zero rotation would be expressed as (1 0 0 0). +type MessageAttitudeQuaternionCov struct { + // Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. + TimeUsec uint64 + // Quaternion components, w, x, y, z (1 0 0 0 is the null-rotation) + Q [4]float32 + // Roll angular speed + Rollspeed float32 + // Pitch angular speed + Pitchspeed float32 + // Yaw angular speed + Yawspeed float32 + // Row-major representation of a 3x3 attitude covariance matrix (states: roll, pitch, yaw; first three entries are the first ROW, next three entries are the second row, etc.). If unknown, assign NaN value to first element in the array. + Covariance [9]float32 +} + +// GetID implements the msg.Message interface. +func (*MessageAttitudeQuaternionCov) GetID() uint32 { + return 61 +} diff --git a/pkg/dialects/storm32/msg_attitude_target.go b/pkg/dialects/storm32/msg_attitude_target.go new file mode 100644 index 000000000..c873e618f --- /dev/null +++ b/pkg/dialects/storm32/msg_attitude_target.go @@ -0,0 +1,26 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// Reports the current commanded attitude of the vehicle as specified by the autopilot. This should match the commands sent in a SET_ATTITUDE_TARGET message if the vehicle is being controlled this way. +type MessageAttitudeTarget struct { + // Timestamp (time since system boot). + TimeBootMs uint32 + // Bitmap to indicate which dimensions should be ignored by the vehicle. + TypeMask ATTITUDE_TARGET_TYPEMASK `mavenum:"uint8"` + // Attitude quaternion (w, x, y, z order, zero-rotation is 1, 0, 0, 0) + Q [4]float32 + // Body roll rate + BodyRollRate float32 + // Body pitch rate + BodyPitchRate float32 + // Body yaw rate + BodyYawRate float32 + // Collective thrust, normalized to 0 .. 1 (-1 .. 1 for vehicles capable of reverse trust) + Thrust float32 +} + +// GetID implements the msg.Message interface. +func (*MessageAttitudeTarget) GetID() uint32 { + return 83 +} diff --git a/pkg/dialects/storm32/msg_auth_key.go b/pkg/dialects/storm32/msg_auth_key.go new file mode 100644 index 000000000..f7d517bea --- /dev/null +++ b/pkg/dialects/storm32/msg_auth_key.go @@ -0,0 +1,14 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// Emit an encrypted signature / key identifying this system. PLEASE NOTE: This protocol has been kept simple, so transmitting the key requires an encrypted channel for true safety. +type MessageAuthKey struct { + // key + Key string `mavlen:"32"` +} + +// GetID implements the msg.Message interface. +func (*MessageAuthKey) GetID() uint32 { + return 7 +} diff --git a/pkg/dialects/storm32/msg_autopilot_state_for_gimbal_device.go b/pkg/dialects/storm32/msg_autopilot_state_for_gimbal_device.go new file mode 100644 index 000000000..bda05fdeb --- /dev/null +++ b/pkg/dialects/storm32/msg_autopilot_state_for_gimbal_device.go @@ -0,0 +1,36 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// Low level message containing autopilot state relevant for a gimbal device. This message is to be sent from the gimbal manager to the gimbal device component. The data of this message server for the gimbal's estimator corrections in particular horizon compensation, as well as the autopilot's control intention e.g. feed forward angular control in z-axis. +type MessageAutopilotStateForGimbalDevice struct { + // System ID + TargetSystem uint8 + // Component ID + TargetComponent uint8 + // Timestamp (time since system boot). + TimeBootUs uint64 + // Quaternion components of autopilot attitude: w, x, y, z (1 0 0 0 is the null-rotation, Hamilton convention). + Q [4]float32 + // Estimated delay of the attitude data. + QEstimatedDelayUs uint32 + // X Speed in NED (North, East, Down). + Vx float32 + // Y Speed in NED (North, East, Down). + Vy float32 + // Z Speed in NED (North, East, Down). + Vz float32 + // Estimated delay of the speed data. + VEstimatedDelayUs uint32 + // Feed forward Z component of angular velocity, positive is yawing to the right, NaN to be ignored. This is to indicate if the autopilot is actively yawing. + FeedForwardAngularVelocityZ float32 + // Bitmap indicating which estimator outputs are valid. + EstimatorStatus ESTIMATOR_STATUS_FLAGS `mavenum:"uint16"` + // The landed state. Is set to MAV_LANDED_STATE_UNDEFINED if landed state is unknown. + LandedState MAV_LANDED_STATE `mavenum:"uint8"` +} + +// GetID implements the msg.Message interface. +func (*MessageAutopilotStateForGimbalDevice) GetID() uint32 { + return 286 +} diff --git a/pkg/dialects/storm32/msg_autopilot_version.go b/pkg/dialects/storm32/msg_autopilot_version.go new file mode 100644 index 000000000..6d10bfe26 --- /dev/null +++ b/pkg/dialects/storm32/msg_autopilot_version.go @@ -0,0 +1,36 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// Version and capability of autopilot software. This should be emitted in response to a request with MAV_CMD_REQUEST_MESSAGE. +type MessageAutopilotVersion struct { + // Bitmap of capabilities + Capabilities MAV_PROTOCOL_CAPABILITY `mavenum:"uint64"` + // Firmware version number + FlightSwVersion uint32 + // Middleware version number + MiddlewareSwVersion uint32 + // Operating system version number + OsSwVersion uint32 + // HW / board version (last 8 bits should be silicon ID, if any). The first 16 bits of this field specify https://github.com/PX4/PX4-Bootloader/blob/master/board_types.txt + BoardVersion uint32 + // Custom version field, commonly the first 8 bytes of the git hash. This is not an unique identifier, but should allow to identify the commit using the main version number even for very large code bases. + FlightCustomVersion [8]uint8 + // Custom version field, commonly the first 8 bytes of the git hash. This is not an unique identifier, but should allow to identify the commit using the main version number even for very large code bases. + MiddlewareCustomVersion [8]uint8 + // Custom version field, commonly the first 8 bytes of the git hash. This is not an unique identifier, but should allow to identify the commit using the main version number even for very large code bases. + OsCustomVersion [8]uint8 + // ID of the board vendor + VendorId uint16 + // ID of the product + ProductId uint16 + // UID if provided by hardware (see uid2) + Uid uint64 + // UID if provided by hardware (supersedes the uid field. If this is non-zero, use this field, otherwise use uid) + Uid2 [18]uint8 `mavext:"true"` +} + +// GetID implements the msg.Message interface. +func (*MessageAutopilotVersion) GetID() uint32 { + return 148 +} diff --git a/pkg/dialects/storm32/msg_autopilot_version_request.go b/pkg/dialects/storm32/msg_autopilot_version_request.go new file mode 100644 index 000000000..d2c5bed9b --- /dev/null +++ b/pkg/dialects/storm32/msg_autopilot_version_request.go @@ -0,0 +1,16 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// Request the autopilot version from the system/component. +type MessageAutopilotVersionRequest struct { + // System ID. + TargetSystem uint8 + // Component ID. + TargetComponent uint8 +} + +// GetID implements the msg.Message interface. +func (*MessageAutopilotVersionRequest) GetID() uint32 { + return 183 +} diff --git a/pkg/dialects/storm32/msg_battery2.go b/pkg/dialects/storm32/msg_battery2.go new file mode 100644 index 000000000..9e6d9d293 --- /dev/null +++ b/pkg/dialects/storm32/msg_battery2.go @@ -0,0 +1,16 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// 2nd Battery status +type MessageBattery2 struct { + // Voltage. + Voltage uint16 + // Battery current, -1: autopilot does not measure the current. + CurrentBattery int16 +} + +// GetID implements the msg.Message interface. +func (*MessageBattery2) GetID() uint32 { + return 181 +} diff --git a/pkg/dialects/storm32/msg_battery_status.go b/pkg/dialects/storm32/msg_battery_status.go new file mode 100644 index 000000000..9366c6517 --- /dev/null +++ b/pkg/dialects/storm32/msg_battery_status.go @@ -0,0 +1,40 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// Battery information. Updates GCS with flight controller battery status. Smart batteries also use this message, but may additionally send SMART_BATTERY_INFO. +type MessageBatteryStatus struct { + // Battery ID + Id uint8 + // Function of the battery + BatteryFunction MAV_BATTERY_FUNCTION `mavenum:"uint8"` + // Type (chemistry) of the battery + Type MAV_BATTERY_TYPE `mavenum:"uint8"` + // Temperature of the battery. INT16_MAX for unknown temperature. + Temperature int16 + // Battery voltage of cells 1 to 10 (see voltages_ext for cells 11-14). Cells in this field above the valid cell count for this battery should have the UINT16_MAX value. If individual cell voltages are unknown or not measured for this battery, then the overall battery voltage should be filled in cell 0, with all others set to UINT16_MAX. If the voltage of the battery is greater than (UINT16_MAX - 1), then cell 0 should be set to (UINT16_MAX - 1), and cell 1 to the remaining voltage. This can be extended to multiple cells if the total voltage is greater than 2 * (UINT16_MAX - 1). + Voltages [10]uint16 + // Battery current, -1: autopilot does not measure the current + CurrentBattery int16 + // Consumed charge, -1: autopilot does not provide consumption estimate + CurrentConsumed int32 + // Consumed energy, -1: autopilot does not provide energy consumption estimate + EnergyConsumed int32 + // Remaining battery energy. Values: [0-100], -1: autopilot does not estimate the remaining battery. + BatteryRemaining int8 + // Remaining battery time, 0: autopilot does not provide remaining battery time estimate + TimeRemaining int32 `mavext:"true"` + // State for extent of discharge, provided by autopilot for warning or external reactions + ChargeState MAV_BATTERY_CHARGE_STATE `mavenum:"uint8" mavext:"true"` + // Battery voltages for cells 11 to 14. Cells above the valid cell count for this battery should have a value of 0, where zero indicates not supported (note, this is different than for the voltages field and allows empty byte truncation). If the measured value is 0 then 1 should be sent instead. + VoltagesExt [4]uint16 `mavext:"true"` + // Battery mode. Default (0) is that battery mode reporting is not supported or battery is in normal-use mode. + Mode MAV_BATTERY_MODE `mavenum:"uint8" mavext:"true"` + // Fault/health indications. These should be set when charge_state is MAV_BATTERY_CHARGE_STATE_FAILED or MAV_BATTERY_CHARGE_STATE_UNHEALTHY (if not, fault reporting is not supported). + FaultBitmask MAV_BATTERY_FAULT `mavenum:"uint32" mavext:"true"` +} + +// GetID implements the msg.Message interface. +func (*MessageBatteryStatus) GetID() uint32 { + return 147 +} diff --git a/pkg/dialects/storm32/msg_button_change.go b/pkg/dialects/storm32/msg_button_change.go new file mode 100644 index 000000000..d3f3306c5 --- /dev/null +++ b/pkg/dialects/storm32/msg_button_change.go @@ -0,0 +1,18 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// Report button state change. +type MessageButtonChange struct { + // Timestamp (time since system boot). + TimeBootMs uint32 + // Time of last change of button state. + LastChangeMs uint32 + // Bitmap for state of buttons. + State uint8 +} + +// GetID implements the msg.Message interface. +func (*MessageButtonChange) GetID() uint32 { + return 257 +} diff --git a/pkg/dialects/storm32/msg_camera_capture_status.go b/pkg/dialects/storm32/msg_camera_capture_status.go new file mode 100644 index 000000000..fc75a8077 --- /dev/null +++ b/pkg/dialects/storm32/msg_camera_capture_status.go @@ -0,0 +1,26 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// Information about the status of a capture. Can be requested with a MAV_CMD_REQUEST_MESSAGE command. +type MessageCameraCaptureStatus struct { + // Timestamp (time since system boot). + TimeBootMs uint32 + // Current status of image capturing (0: idle, 1: capture in progress, 2: interval set but idle, 3: interval set and capture in progress) + ImageStatus uint8 + // Current status of video capturing (0: idle, 1: capture in progress) + VideoStatus uint8 + // Image capture interval + ImageInterval float32 + // Elapsed time since recording started (0: Not supported/available). A GCS should compute recording time and use non-zero values of this field to correct any discrepancy. + RecordingTimeMs uint32 + // Available storage capacity. + AvailableCapacity float32 + // Total number of images captured ('forever', or until reset using MAV_CMD_STORAGE_FORMAT). + ImageCount int32 `mavext:"true"` +} + +// GetID implements the msg.Message interface. +func (*MessageCameraCaptureStatus) GetID() uint32 { + return 262 +} diff --git a/pkg/dialects/storm32/msg_camera_feedback.go b/pkg/dialects/storm32/msg_camera_feedback.go new file mode 100644 index 000000000..238ab3766 --- /dev/null +++ b/pkg/dialects/storm32/msg_camera_feedback.go @@ -0,0 +1,40 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// Camera Capture Feedback. +type MessageCameraFeedback struct { + // Image timestamp (since UNIX epoch), as passed in by CAMERA_STATUS message (or autopilot if no CCB). + TimeUsec uint64 + // System ID. + TargetSystem uint8 + // Camera ID. + CamIdx uint8 + // Image index. + ImgIdx uint16 + // Latitude. + Lat int32 + // Longitude. + Lng int32 + // Altitude (MSL). + AltMsl float32 + // Altitude (Relative to HOME location). + AltRel float32 + // Camera Roll angle (earth frame, +-180). + Roll float32 + // Camera Pitch angle (earth frame, +-180). + Pitch float32 + // Camera Yaw (earth frame, 0-360, true). + Yaw float32 + // Focal Length. + FocLen float32 + // Feedback flags. + Flags CAMERA_FEEDBACK_FLAGS `mavenum:"uint8"` + // Completed image captures. + CompletedCaptures uint16 `mavext:"true"` +} + +// GetID implements the msg.Message interface. +func (*MessageCameraFeedback) GetID() uint32 { + return 180 +} diff --git a/pkg/dialects/storm32/msg_camera_fov_status.go b/pkg/dialects/storm32/msg_camera_fov_status.go new file mode 100644 index 000000000..4bf32e6b5 --- /dev/null +++ b/pkg/dialects/storm32/msg_camera_fov_status.go @@ -0,0 +1,32 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// Information about the field of view of a camera. Can be requested with a MAV_CMD_REQUEST_MESSAGE command. +type MessageCameraFovStatus struct { + // Timestamp (time since system boot). + TimeBootMs uint32 + // Latitude of camera (INT32_MAX if unknown). + LatCamera int32 + // Longitude of camera (INT32_MAX if unknown). + LonCamera int32 + // Altitude (MSL) of camera (INT32_MAX if unknown). + AltCamera int32 + // Latitude of center of image (INT32_MAX if unknown, INT32_MIN if at infinity, not intersecting with horizon). + LatImage int32 + // Longitude of center of image (INT32_MAX if unknown, INT32_MIN if at infinity, not intersecting with horizon). + LonImage int32 + // Altitude (MSL) of center of image (INT32_MAX if unknown, INT32_MIN if at infinity, not intersecting with horizon). + AltImage int32 + // Quaternion of camera orientation (w, x, y, z order, zero-rotation is 1, 0, 0, 0) + Q [4]float32 + // Horizontal field of view (NaN if unknown). + Hfov float32 + // Vertical field of view (NaN if unknown). + Vfov float32 +} + +// GetID implements the msg.Message interface. +func (*MessageCameraFovStatus) GetID() uint32 { + return 271 +} diff --git a/pkg/dialects/storm32/msg_camera_image_captured.go b/pkg/dialects/storm32/msg_camera_image_captured.go new file mode 100644 index 000000000..ca0f26056 --- /dev/null +++ b/pkg/dialects/storm32/msg_camera_image_captured.go @@ -0,0 +1,40 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// Information about a captured image. This is emitted every time a message is captured. +// MAV_CMD_REQUEST_MESSAGE can be used to (re)request this message for a specific sequence number or range of sequence numbers: +// MAV_CMD_REQUEST_MESSAGE.param2 indicates the sequence number the first image to send, or set to -1 to send the message for all sequence numbers. +// MAV_CMD_REQUEST_MESSAGE.param3 is used to specify a range of messages to send: +// set to 0 (default) to send just the the message for the sequence number in param 2, +// set to -1 to send the message for the sequence number in param 2 and all the following sequence numbers, +// set to the sequence number of the final message in the range. +type MessageCameraImageCaptured struct { + // Timestamp (time since system boot). + TimeBootMs uint32 + // Timestamp (time since UNIX epoch) in UTC. 0 for unknown. + TimeUtc uint64 + // Deprecated/unused. Component IDs are used to differentiate multiple cameras. + CameraId uint8 + // Latitude where image was taken + Lat int32 + // Longitude where capture was taken + Lon int32 + // Altitude (MSL) where image was taken + Alt int32 + // Altitude above ground + RelativeAlt int32 + // Quaternion of camera orientation (w, x, y, z order, zero-rotation is 1, 0, 0, 0) + Q [4]float32 + // Zero based index of this image (i.e. a new image will have index CAMERA_CAPTURE_STATUS.image count -1) + ImageIndex int32 + // Boolean indicating success (1) or failure (0) while capturing this image. + CaptureResult int8 + // URL of image taken. Either local storage or http://foo.jpg if camera provides an HTTP interface. + FileUrl string `mavlen:"205"` +} + +// GetID implements the msg.Message interface. +func (*MessageCameraImageCaptured) GetID() uint32 { + return 263 +} diff --git a/pkg/dialects/storm32/msg_camera_information.go b/pkg/dialects/storm32/msg_camera_information.go new file mode 100644 index 000000000..446064b24 --- /dev/null +++ b/pkg/dialects/storm32/msg_camera_information.go @@ -0,0 +1,38 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// Information about a camera. Can be requested with a MAV_CMD_REQUEST_MESSAGE command. +type MessageCameraInformation struct { + // Timestamp (time since system boot). + TimeBootMs uint32 + // Name of the camera vendor + VendorName [32]uint8 + // Name of the camera model + ModelName [32]uint8 + // Version of the camera firmware, encoded as: (Dev & 0xff) << 24 | (Patch & 0xff) << 16 | (Minor & 0xff) << 8 | (Major & 0xff) + FirmwareVersion uint32 + // Focal length + FocalLength float32 + // Image sensor size horizontal + SensorSizeH float32 + // Image sensor size vertical + SensorSizeV float32 + // Horizontal image resolution + ResolutionH uint16 + // Vertical image resolution + ResolutionV uint16 + // Reserved for a lens ID + LensId uint8 + // Bitmap of camera capability flags. + Flags CAMERA_CAP_FLAGS `mavenum:"uint32"` + // Camera definition version (iteration) + CamDefinitionVersion uint16 + // Camera definition URI (if any, otherwise only basic functions will be available). HTTP- (http://) and MAVLink FTP- (mavlinkftp://) formatted URIs are allowed (and both must be supported by any GCS that implements the Camera Protocol). The definition file may be xz compressed, which will be indicated by the file extension .xml.xz (a GCS that implements the protocol must support decompressing the file). + CamDefinitionUri string `mavlen:"140"` +} + +// GetID implements the msg.Message interface. +func (*MessageCameraInformation) GetID() uint32 { + return 259 +} diff --git a/pkg/dialects/storm32/msg_camera_settings.go b/pkg/dialects/storm32/msg_camera_settings.go new file mode 100644 index 000000000..39a623ba3 --- /dev/null +++ b/pkg/dialects/storm32/msg_camera_settings.go @@ -0,0 +1,20 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// Settings of a camera. Can be requested with a MAV_CMD_REQUEST_MESSAGE command. +type MessageCameraSettings struct { + // Timestamp (time since system boot). + TimeBootMs uint32 + // Camera mode + ModeId CAMERA_MODE `mavenum:"uint8"` + // Current zoom level (0.0 to 100.0, NaN if not known) + Zoomlevel float32 `mavext:"true" mavname:"zoomLevel"` + // Current focus level (0.0 to 100.0, NaN if not known) + Focuslevel float32 `mavext:"true" mavname:"focusLevel"` +} + +// GetID implements the msg.Message interface. +func (*MessageCameraSettings) GetID() uint32 { + return 260 +} diff --git a/pkg/dialects/storm32/msg_camera_status.go b/pkg/dialects/storm32/msg_camera_status.go new file mode 100644 index 000000000..720162af8 --- /dev/null +++ b/pkg/dialects/storm32/msg_camera_status.go @@ -0,0 +1,30 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// Camera Event. +type MessageCameraStatus struct { + // Image timestamp (since UNIX epoch, according to camera clock). + TimeUsec uint64 + // System ID. + TargetSystem uint8 + // Camera ID. + CamIdx uint8 + // Image index. + ImgIdx uint16 + // Event type. + EventId CAMERA_STATUS_TYPES `mavenum:"uint8"` + // Parameter 1 (meaning depends on event_id, see CAMERA_STATUS_TYPES enum). + P1 float32 + // Parameter 2 (meaning depends on event_id, see CAMERA_STATUS_TYPES enum). + P2 float32 + // Parameter 3 (meaning depends on event_id, see CAMERA_STATUS_TYPES enum). + P3 float32 + // Parameter 4 (meaning depends on event_id, see CAMERA_STATUS_TYPES enum). + P4 float32 +} + +// GetID implements the msg.Message interface. +func (*MessageCameraStatus) GetID() uint32 { + return 179 +} diff --git a/pkg/dialects/storm32/msg_camera_tracking_geo_status.go b/pkg/dialects/storm32/msg_camera_tracking_geo_status.go new file mode 100644 index 000000000..2534be055 --- /dev/null +++ b/pkg/dialects/storm32/msg_camera_tracking_geo_status.go @@ -0,0 +1,38 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// Camera tracking status, sent while in active tracking. Use MAV_CMD_SET_MESSAGE_INTERVAL to define message interval. +type MessageCameraTrackingGeoStatus struct { + // Current tracking status + TrackingStatus CAMERA_TRACKING_STATUS_FLAGS `mavenum:"uint8"` + // Latitude of tracked object + Lat int32 + // Longitude of tracked object + Lon int32 + // Altitude of tracked object(AMSL, WGS84) + Alt float32 + // Horizontal accuracy. NAN if unknown + HAcc float32 + // Vertical accuracy. NAN if unknown + VAcc float32 + // North velocity of tracked object. NAN if unknown + VelN float32 + // East velocity of tracked object. NAN if unknown + VelE float32 + // Down velocity of tracked object. NAN if unknown + VelD float32 + // Velocity accuracy. NAN if unknown + VelAcc float32 + // Distance between camera and tracked object. NAN if unknown + Dist float32 + // Heading in radians, in NED. NAN if unknown + Hdg float32 + // Accuracy of heading, in NED. NAN if unknown + HdgAcc float32 +} + +// GetID implements the msg.Message interface. +func (*MessageCameraTrackingGeoStatus) GetID() uint32 { + return 276 +} diff --git a/pkg/dialects/storm32/msg_camera_tracking_image_status.go b/pkg/dialects/storm32/msg_camera_tracking_image_status.go new file mode 100644 index 000000000..6dea72575 --- /dev/null +++ b/pkg/dialects/storm32/msg_camera_tracking_image_status.go @@ -0,0 +1,32 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// Camera tracking status, sent while in active tracking. Use MAV_CMD_SET_MESSAGE_INTERVAL to define message interval. +type MessageCameraTrackingImageStatus struct { + // Current tracking status + TrackingStatus CAMERA_TRACKING_STATUS_FLAGS `mavenum:"uint8"` + // Current tracking mode + TrackingMode CAMERA_TRACKING_MODE `mavenum:"uint8"` + // Defines location of target data + TargetData CAMERA_TRACKING_TARGET_DATA `mavenum:"uint8"` + // Current tracked point x value if CAMERA_TRACKING_MODE_POINT (normalized 0..1, 0 is left, 1 is right), NAN if unknown + PointX float32 + // Current tracked point y value if CAMERA_TRACKING_MODE_POINT (normalized 0..1, 0 is top, 1 is bottom), NAN if unknown + PointY float32 + // Current tracked radius if CAMERA_TRACKING_MODE_POINT (normalized 0..1, 0 is image left, 1 is image right), NAN if unknown + Radius float32 + // Current tracked rectangle top x value if CAMERA_TRACKING_MODE_RECTANGLE (normalized 0..1, 0 is left, 1 is right), NAN if unknown + RecTopX float32 + // Current tracked rectangle top y value if CAMERA_TRACKING_MODE_RECTANGLE (normalized 0..1, 0 is top, 1 is bottom), NAN if unknown + RecTopY float32 + // Current tracked rectangle bottom x value if CAMERA_TRACKING_MODE_RECTANGLE (normalized 0..1, 0 is left, 1 is right), NAN if unknown + RecBottomX float32 + // Current tracked rectangle bottom y value if CAMERA_TRACKING_MODE_RECTANGLE (normalized 0..1, 0 is top, 1 is bottom), NAN if unknown + RecBottomY float32 +} + +// GetID implements the msg.Message interface. +func (*MessageCameraTrackingImageStatus) GetID() uint32 { + return 275 +} diff --git a/pkg/dialects/storm32/msg_camera_trigger.go b/pkg/dialects/storm32/msg_camera_trigger.go new file mode 100644 index 000000000..28c6bbca6 --- /dev/null +++ b/pkg/dialects/storm32/msg_camera_trigger.go @@ -0,0 +1,16 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// Camera-IMU triggering and synchronisation message. +type MessageCameraTrigger struct { + // Timestamp for image frame (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. + TimeUsec uint64 + // Image frame sequence + Seq uint32 +} + +// GetID implements the msg.Message interface. +func (*MessageCameraTrigger) GetID() uint32 { + return 112 +} diff --git a/pkg/dialects/storm32/msg_cellular_config.go b/pkg/dialects/storm32/msg_cellular_config.go new file mode 100644 index 000000000..e407bd41e --- /dev/null +++ b/pkg/dialects/storm32/msg_cellular_config.go @@ -0,0 +1,30 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// Configure cellular modems. +// This message is re-emitted as an acknowledgement by the modem. +// The message may also be explicitly requested using MAV_CMD_REQUEST_MESSAGE. +type MessageCellularConfig struct { + // Enable/disable LTE. 0: setting unchanged, 1: disabled, 2: enabled. Current setting when sent back as a response. + EnableLte uint8 + // Enable/disable PIN on the SIM card. 0: setting unchanged, 1: disabled, 2: enabled. Current setting when sent back as a response. + EnablePin uint8 + // PIN sent to the SIM card. Blank when PIN is disabled. Empty when message is sent back as a response. + Pin string `mavlen:"16"` + // New PIN when changing the PIN. Blank to leave it unchanged. Empty when message is sent back as a response. + NewPin string `mavlen:"16"` + // Name of the cellular APN. Blank to leave it unchanged. Current APN when sent back as a response. + Apn string `mavlen:"32"` + // Required PUK code in case the user failed to authenticate 3 times with the PIN. Empty when message is sent back as a response. + Puk string `mavlen:"16"` + // Enable/disable roaming. 0: setting unchanged, 1: disabled, 2: enabled. Current setting when sent back as a response. + Roaming uint8 + // Message acceptance response (sent back to GS). + Response CELLULAR_CONFIG_RESPONSE `mavenum:"uint8"` +} + +// GetID implements the msg.Message interface. +func (*MessageCellularConfig) GetID() uint32 { + return 336 +} diff --git a/pkg/dialects/storm32/msg_cellular_status.go b/pkg/dialects/storm32/msg_cellular_status.go new file mode 100644 index 000000000..7579bd4e2 --- /dev/null +++ b/pkg/dialects/storm32/msg_cellular_status.go @@ -0,0 +1,26 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// Report current used cellular network status +type MessageCellularStatus struct { + // Cellular modem status + Status CELLULAR_STATUS_FLAG `mavenum:"uint8"` + // Failure reason when status in in CELLUAR_STATUS_FAILED + FailureReason CELLULAR_NETWORK_FAILED_REASON `mavenum:"uint8"` + // Cellular network radio type: gsm, cdma, lte... + Type CELLULAR_NETWORK_RADIO_TYPE `mavenum:"uint8"` + // Signal quality in percent. If unknown, set to UINT8_MAX + Quality uint8 + // Mobile country code. If unknown, set to UINT16_MAX + Mcc uint16 + // Mobile network code. If unknown, set to UINT16_MAX + Mnc uint16 + // Location area code. If unknown, set to 0 + Lac uint16 +} + +// GetID implements the msg.Message interface. +func (*MessageCellularStatus) GetID() uint32 { + return 334 +} diff --git a/pkg/dialects/storm32/msg_change_operator_control.go b/pkg/dialects/storm32/msg_change_operator_control.go new file mode 100644 index 000000000..d5c9b2f7f --- /dev/null +++ b/pkg/dialects/storm32/msg_change_operator_control.go @@ -0,0 +1,20 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// Request to control this MAV +type MessageChangeOperatorControl struct { + // System the GCS requests control for + TargetSystem uint8 + // 0: request control of this MAV, 1: Release control of this MAV + ControlRequest uint8 + // 0: key as plaintext, 1-255: future, different hashing/encryption variants. The GCS should in general use the safest mode possible initially and then gradually move down the encryption level if it gets a NACK message indicating an encryption mismatch. + Version uint8 + // Password / Key, depending on version plaintext or encrypted. 25 or less characters, NULL terminated. The characters may involve A-Z, a-z, 0-9, and "!?,.-" + Passkey string `mavlen:"25"` +} + +// GetID implements the msg.Message interface. +func (*MessageChangeOperatorControl) GetID() uint32 { + return 5 +} diff --git a/pkg/dialects/storm32/msg_change_operator_control_ack.go b/pkg/dialects/storm32/msg_change_operator_control_ack.go new file mode 100644 index 000000000..56a8feb0c --- /dev/null +++ b/pkg/dialects/storm32/msg_change_operator_control_ack.go @@ -0,0 +1,18 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// Accept / deny control of this MAV +type MessageChangeOperatorControlAck struct { + // ID of the GCS this message + GcsSystemId uint8 + // 0: request control of this MAV, 1: Release control of this MAV + ControlRequest uint8 + // 0: ACK, 1: NACK: Wrong passkey, 2: NACK: Unsupported passkey encryption method, 3: NACK: Already under control + Ack uint8 +} + +// GetID implements the msg.Message interface. +func (*MessageChangeOperatorControlAck) GetID() uint32 { + return 6 +} diff --git a/pkg/dialects/storm32/msg_collision.go b/pkg/dialects/storm32/msg_collision.go new file mode 100644 index 000000000..73e3f9b05 --- /dev/null +++ b/pkg/dialects/storm32/msg_collision.go @@ -0,0 +1,26 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// Information about a potential collision +type MessageCollision struct { + // Collision data source + Src MAV_COLLISION_SRC `mavenum:"uint8"` + // Unique identifier, domain based on src field + Id uint32 + // Action that is being taken to avoid this collision + Action MAV_COLLISION_ACTION `mavenum:"uint8"` + // How concerned the aircraft is about this collision + ThreatLevel MAV_COLLISION_THREAT_LEVEL `mavenum:"uint8"` + // Estimated time until collision occurs + TimeToMinimumDelta float32 + // Closest vertical distance between vehicle and object + AltitudeMinimumDelta float32 + // Closest horizontal distance between vehicle and object + HorizontalMinimumDelta float32 +} + +// GetID implements the msg.Message interface. +func (*MessageCollision) GetID() uint32 { + return 247 +} diff --git a/pkg/dialects/storm32/msg_command_ack.go b/pkg/dialects/storm32/msg_command_ack.go new file mode 100644 index 000000000..6f6e888ef --- /dev/null +++ b/pkg/dialects/storm32/msg_command_ack.go @@ -0,0 +1,24 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// Report status of a command. Includes feedback whether the command was executed. The command microservice is documented at https://mavlink.io/en/services/command.html +type MessageCommandAck struct { + // Command ID (of acknowledged command). + Command MAV_CMD `mavenum:"uint16"` + // Result of command. + Result MAV_RESULT `mavenum:"uint8"` + // Also used as result_param1, it can be set with an enum containing the errors reasons of why the command was denied, or the progress percentage when result is MAV_RESULT_IN_PROGRESS (UINT8_MAX if the progress is unknown). + Progress uint8 `mavext:"true"` + // Additional parameter of the result, example: which parameter of MAV_CMD_NAV_WAYPOINT caused it to be denied. + ResultParam2 int32 `mavext:"true"` + // System ID of the target recipient. This is the ID of the system that sent the command for which this COMMAND_ACK is an acknowledgement. + TargetSystem uint8 `mavext:"true"` + // Component ID of the target recipient. This is the ID of the system that sent the command for which this COMMAND_ACK is an acknowledgement. + TargetComponent uint8 `mavext:"true"` +} + +// GetID implements the msg.Message interface. +func (*MessageCommandAck) GetID() uint32 { + return 77 +} diff --git a/pkg/dialects/storm32/msg_command_cancel.go b/pkg/dialects/storm32/msg_command_cancel.go new file mode 100644 index 000000000..fb27b94f8 --- /dev/null +++ b/pkg/dialects/storm32/msg_command_cancel.go @@ -0,0 +1,18 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// Cancel a long running command. The target system should respond with a COMMAND_ACK to the original command with result=MAV_RESULT_CANCELLED if the long running process was cancelled. If it has already completed, the cancel action can be ignored. The cancel action can be retried until some sort of acknowledgement to the original command has been received. The command microservice is documented at https://mavlink.io/en/services/command.html +type MessageCommandCancel struct { + // System executing long running command. Should not be broadcast (0). + TargetSystem uint8 + // Component executing long running command. + TargetComponent uint8 + // Command ID (of command to cancel). + Command MAV_CMD `mavenum:"uint16"` +} + +// GetID implements the msg.Message interface. +func (*MessageCommandCancel) GetID() uint32 { + return 80 +} diff --git a/pkg/dialects/storm32/msg_command_int.go b/pkg/dialects/storm32/msg_command_int.go new file mode 100644 index 000000000..3cb7f5854 --- /dev/null +++ b/pkg/dialects/storm32/msg_command_int.go @@ -0,0 +1,38 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// Message encoding a command with parameters as scaled integers. Scaling depends on the actual command value. NaN or INT32_MAX may be used in float/integer params (respectively) to indicate optional/default values (e.g. to use the component's current latitude, yaw rather than a specific value). The command microservice is documented at https://mavlink.io/en/services/command.html +type MessageCommandInt struct { + // System ID + TargetSystem uint8 + // Component ID + TargetComponent uint8 + // The coordinate system of the COMMAND. + Frame MAV_FRAME `mavenum:"uint8"` + // The scheduled action for the mission item. + Command MAV_CMD `mavenum:"uint16"` + // Not used. + Current uint8 + // Not used (set 0). + Autocontinue uint8 + // PARAM1, see MAV_CMD enum + Param1 float32 + // PARAM2, see MAV_CMD enum + Param2 float32 + // PARAM3, see MAV_CMD enum + Param3 float32 + // PARAM4, see MAV_CMD enum + Param4 float32 + // PARAM5 / local: x position in meters * 1e4, global: latitude in degrees * 10^7 + X int32 + // PARAM6 / local: y position in meters * 1e4, global: longitude in degrees * 10^7 + Y int32 + // PARAM7 / z position: global: altitude in meters (relative or absolute, depending on frame). + Z float32 +} + +// GetID implements the msg.Message interface. +func (*MessageCommandInt) GetID() uint32 { + return 75 +} diff --git a/pkg/dialects/storm32/msg_command_long.go b/pkg/dialects/storm32/msg_command_long.go new file mode 100644 index 000000000..4907b9580 --- /dev/null +++ b/pkg/dialects/storm32/msg_command_long.go @@ -0,0 +1,34 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// Send a command with up to seven parameters to the MAV. The command microservice is documented at https://mavlink.io/en/services/command.html +type MessageCommandLong struct { + // System which should execute the command + TargetSystem uint8 + // Component which should execute the command, 0 for all components + TargetComponent uint8 + // Command ID (of command to send). + Command MAV_CMD `mavenum:"uint16"` + // 0: First transmission of this command. 1-255: Confirmation transmissions (e.g. for kill command) + Confirmation uint8 + // Parameter 1 (for the specific command). + Param1 float32 + // Parameter 2 (for the specific command). + Param2 float32 + // Parameter 3 (for the specific command). + Param3 float32 + // Parameter 4 (for the specific command). + Param4 float32 + // Parameter 5 (for the specific command). + Param5 float32 + // Parameter 6 (for the specific command). + Param6 float32 + // Parameter 7 (for the specific command). + Param7 float32 +} + +// GetID implements the msg.Message interface. +func (*MessageCommandLong) GetID() uint32 { + return 76 +} diff --git a/pkg/dialects/storm32/msg_compassmot_status.go b/pkg/dialects/storm32/msg_compassmot_status.go new file mode 100644 index 000000000..460f0d0c7 --- /dev/null +++ b/pkg/dialects/storm32/msg_compassmot_status.go @@ -0,0 +1,24 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// Status of compassmot calibration. +type MessageCompassmotStatus struct { + // Throttle. + Throttle uint16 + // Current. + Current float32 + // Interference. + Interference uint16 + // Motor Compensation X. + Compensationx float32 `mavname:"CompensationX"` + // Motor Compensation Y. + Compensationy float32 `mavname:"CompensationY"` + // Motor Compensation Z. + Compensationz float32 `mavname:"CompensationZ"` +} + +// GetID implements the msg.Message interface. +func (*MessageCompassmotStatus) GetID() uint32 { + return 177 +} diff --git a/pkg/dialects/storm32/msg_component_information.go b/pkg/dialects/storm32/msg_component_information.go new file mode 100644 index 000000000..74d2fef13 --- /dev/null +++ b/pkg/dialects/storm32/msg_component_information.go @@ -0,0 +1,22 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// Information about a component. For camera components instead use CAMERA_INFORMATION, and for autopilots additionally use AUTOPILOT_VERSION. Components including GCSes should consider supporting requests of this message via MAV_CMD_REQUEST_MESSAGE. +type MessageComponentInformation struct { + // Timestamp (time since system boot). + TimeBootMs uint32 + // CRC32 of the TYPE_GENERAL file (can be used by a GCS for file caching). The general metadata file contains URLs to other files of different type according to COMP_METADATA_TYPE. + GeneralMetadataFileCrc uint32 + // Component definition URI for TYPE_GENERAL. This must be a MAVLink FTP URI and the file might be compressed with xz. + GeneralMetadataUri string `mavlen:"100"` + // CRC32 of the TYPE_PERIPHERALS file (can be used by a GCS for file caching). + PeripheralsMetadataFileCrc uint32 + // (Optional) Component definition URI for TYPE_PERIPHERALS. This must be a MAVLink FTP URI and the file might be compressed with xz. Peripherals are listed as a separate URL and not included in the general metadata file because it will likely be generated at runtime while the general (and other referenced files) might be generated at compile time. + PeripheralsMetadataUri string `mavlen:"100"` +} + +// GetID implements the msg.Message interface. +func (*MessageComponentInformation) GetID() uint32 { + return 395 +} diff --git a/pkg/dialects/storm32/msg_component_prearm_status.go b/pkg/dialects/storm32/msg_component_prearm_status.go new file mode 100644 index 000000000..7a13fec09 --- /dev/null +++ b/pkg/dialects/storm32/msg_component_prearm_status.go @@ -0,0 +1,20 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// Message reporting the status of the prearm checks. The flags are component specific. +type MessageComponentPrearmStatus struct { + // System ID + TargetSystem uint8 + // Component ID + TargetComponent uint8 + // Currently enabled prearm checks. 0 means no checks are being performed, UINT32_MAX means not known. + EnabledFlags uint32 + // Currently not passed prearm checks. 0 means all checks have been passed. + FailFlags uint32 +} + +// GetID implements the msg.Message interface. +func (*MessageComponentPrearmStatus) GetID() uint32 { + return 60025 +} diff --git a/pkg/dialects/storm32/msg_control_system_state.go b/pkg/dialects/storm32/msg_control_system_state.go new file mode 100644 index 000000000..f3e0c3632 --- /dev/null +++ b/pkg/dialects/storm32/msg_control_system_state.go @@ -0,0 +1,46 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// The smoothed, monotonic system state used to feed the control loops of the system. +type MessageControlSystemState struct { + // Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. + TimeUsec uint64 + // X acceleration in body frame + XAcc float32 + // Y acceleration in body frame + YAcc float32 + // Z acceleration in body frame + ZAcc float32 + // X velocity in body frame + XVel float32 + // Y velocity in body frame + YVel float32 + // Z velocity in body frame + ZVel float32 + // X position in local frame + XPos float32 + // Y position in local frame + YPos float32 + // Z position in local frame + ZPos float32 + // Airspeed, set to -1 if unknown + Airspeed float32 + // Variance of body velocity estimate + VelVariance [3]float32 + // Variance in local position + PosVariance [3]float32 + // The attitude, represented as Quaternion + Q [4]float32 + // Angular rate in roll axis + RollRate float32 + // Angular rate in pitch axis + PitchRate float32 + // Angular rate in yaw axis + YawRate float32 +} + +// GetID implements the msg.Message interface. +func (*MessageControlSystemState) GetID() uint32 { + return 146 +} diff --git a/pkg/dialects/storm32/msg_current_event_sequence.go b/pkg/dialects/storm32/msg_current_event_sequence.go new file mode 100644 index 000000000..22969af95 --- /dev/null +++ b/pkg/dialects/storm32/msg_current_event_sequence.go @@ -0,0 +1,16 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// Regular broadcast for the current latest event sequence number for a component. This is used to check for dropped events. +type MessageCurrentEventSequence struct { + // Sequence number. + Sequence uint16 + // Flag bitset. + Flags MAV_EVENT_CURRENT_SEQUENCE_FLAGS `mavenum:"uint8"` +} + +// GetID implements the msg.Message interface. +func (*MessageCurrentEventSequence) GetID() uint32 { + return 411 +} diff --git a/pkg/dialects/storm32/msg_data16.go b/pkg/dialects/storm32/msg_data16.go new file mode 100644 index 000000000..ec405ac56 --- /dev/null +++ b/pkg/dialects/storm32/msg_data16.go @@ -0,0 +1,18 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// Data packet, size 16. +type MessageData16 struct { + // Data type. + Type uint8 + // Data length. + Len uint8 + // Raw data. + Data [16]uint8 +} + +// GetID implements the msg.Message interface. +func (*MessageData16) GetID() uint32 { + return 169 +} diff --git a/pkg/dialects/storm32/msg_data32.go b/pkg/dialects/storm32/msg_data32.go new file mode 100644 index 000000000..c55e8d9ba --- /dev/null +++ b/pkg/dialects/storm32/msg_data32.go @@ -0,0 +1,18 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// Data packet, size 32. +type MessageData32 struct { + // Data type. + Type uint8 + // Data length. + Len uint8 + // Raw data. + Data [32]uint8 +} + +// GetID implements the msg.Message interface. +func (*MessageData32) GetID() uint32 { + return 170 +} diff --git a/pkg/dialects/storm32/msg_data64.go b/pkg/dialects/storm32/msg_data64.go new file mode 100644 index 000000000..d0b6628ce --- /dev/null +++ b/pkg/dialects/storm32/msg_data64.go @@ -0,0 +1,18 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// Data packet, size 64. +type MessageData64 struct { + // Data type. + Type uint8 + // Data length. + Len uint8 + // Raw data. + Data [64]uint8 +} + +// GetID implements the msg.Message interface. +func (*MessageData64) GetID() uint32 { + return 171 +} diff --git a/pkg/dialects/storm32/msg_data96.go b/pkg/dialects/storm32/msg_data96.go new file mode 100644 index 000000000..cd730cdd4 --- /dev/null +++ b/pkg/dialects/storm32/msg_data96.go @@ -0,0 +1,18 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// Data packet, size 96. +type MessageData96 struct { + // Data type. + Type uint8 + // Data length. + Len uint8 + // Raw data. + Data [96]uint8 +} + +// GetID implements the msg.Message interface. +func (*MessageData96) GetID() uint32 { + return 172 +} diff --git a/pkg/dialects/storm32/msg_data_stream.go b/pkg/dialects/storm32/msg_data_stream.go new file mode 100644 index 000000000..d8d1569f2 --- /dev/null +++ b/pkg/dialects/storm32/msg_data_stream.go @@ -0,0 +1,18 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// Data stream status information. +type MessageDataStream struct { + // The ID of the requested data stream + StreamId uint8 + // The message rate + MessageRate uint16 + // 1 stream is enabled, 0 stream is stopped. + OnOff uint8 +} + +// GetID implements the msg.Message interface. +func (*MessageDataStream) GetID() uint32 { + return 67 +} diff --git a/pkg/dialects/storm32/msg_data_transmission_handshake.go b/pkg/dialects/storm32/msg_data_transmission_handshake.go new file mode 100644 index 000000000..9e78b8d64 --- /dev/null +++ b/pkg/dialects/storm32/msg_data_transmission_handshake.go @@ -0,0 +1,26 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// Handshake message to initiate, control and stop image streaming when using the Image Transmission Protocol: https://mavlink.io/en/services/image_transmission.html. +type MessageDataTransmissionHandshake struct { + // Type of requested/acknowledged data. + Type MAVLINK_DATA_STREAM_TYPE `mavenum:"uint8"` + // total data size (set on ACK only). + Size uint32 + // Width of a matrix or image. + Width uint16 + // Height of a matrix or image. + Height uint16 + // Number of packets being sent (set on ACK only). + Packets uint16 + // Payload size per packet (normally 253 byte, see DATA field size in message ENCAPSULATED_DATA) (set on ACK only). + Payload uint8 + // JPEG quality. Values: [1-100]. + JpgQuality uint8 +} + +// GetID implements the msg.Message interface. +func (*MessageDataTransmissionHandshake) GetID() uint32 { + return 130 +} diff --git a/pkg/dialects/storm32/msg_debug.go b/pkg/dialects/storm32/msg_debug.go new file mode 100644 index 000000000..a11278a88 --- /dev/null +++ b/pkg/dialects/storm32/msg_debug.go @@ -0,0 +1,18 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// Send a debug value. The index is used to discriminate between values. These values show up in the plot of QGroundControl as DEBUG N. +type MessageDebug struct { + // Timestamp (time since system boot). + TimeBootMs uint32 + // index of debug variable + Ind uint8 + // DEBUG value + Value float32 +} + +// GetID implements the msg.Message interface. +func (*MessageDebug) GetID() uint32 { + return 254 +} diff --git a/pkg/dialects/storm32/msg_debug_float_array.go b/pkg/dialects/storm32/msg_debug_float_array.go new file mode 100644 index 000000000..ab3240adf --- /dev/null +++ b/pkg/dialects/storm32/msg_debug_float_array.go @@ -0,0 +1,20 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// Large debug/prototyping array. The message uses the maximum available payload for data. The array_id and name fields are used to discriminate between messages in code and in user interfaces (respectively). Do not use in production code. +type MessageDebugFloatArray struct { + // Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. + TimeUsec uint64 + // Name, for human-friendly display in a Ground Control Station + Name string `mavlen:"10"` + // Unique ID used to discriminate between arrays + ArrayId uint16 + // data + Data [58]float32 `mavext:"true"` +} + +// GetID implements the msg.Message interface. +func (*MessageDebugFloatArray) GetID() uint32 { + return 350 +} diff --git a/pkg/dialects/storm32/msg_debug_vect.go b/pkg/dialects/storm32/msg_debug_vect.go new file mode 100644 index 000000000..1ca567ed0 --- /dev/null +++ b/pkg/dialects/storm32/msg_debug_vect.go @@ -0,0 +1,22 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// To debug something using a named 3D vector. +type MessageDebugVect struct { + // Name + Name string `mavlen:"10"` + // Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. + TimeUsec uint64 + // x + X float32 + // y + Y float32 + // z + Z float32 +} + +// GetID implements the msg.Message interface. +func (*MessageDebugVect) GetID() uint32 { + return 250 +} diff --git a/pkg/dialects/storm32/msg_deepstall.go b/pkg/dialects/storm32/msg_deepstall.go new file mode 100644 index 000000000..fd8717062 --- /dev/null +++ b/pkg/dialects/storm32/msg_deepstall.go @@ -0,0 +1,32 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// Deepstall path planning. +type MessageDeepstall struct { + // Landing latitude. + LandingLat int32 + // Landing longitude. + LandingLon int32 + // Final heading start point, latitude. + PathLat int32 + // Final heading start point, longitude. + PathLon int32 + // Arc entry point, latitude. + ArcEntryLat int32 + // Arc entry point, longitude. + ArcEntryLon int32 + // Altitude. + Altitude float32 + // Distance the aircraft expects to travel during the deepstall. + ExpectedTravelDistance float32 + // Deepstall cross track error (only valid when in DEEPSTALL_STAGE_LAND). + CrossTrackError float32 + // Deepstall stage. + Stage DEEPSTALL_STAGE `mavenum:"uint8"` +} + +// GetID implements the msg.Message interface. +func (*MessageDeepstall) GetID() uint32 { + return 195 +} diff --git a/pkg/dialects/storm32/msg_device_op_read.go b/pkg/dialects/storm32/msg_device_op_read.go new file mode 100644 index 000000000..e113080d2 --- /dev/null +++ b/pkg/dialects/storm32/msg_device_op_read.go @@ -0,0 +1,32 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// Read registers for a device. +type MessageDeviceOpRead struct { + // System ID. + TargetSystem uint8 + // Component ID. + TargetComponent uint8 + // Request ID - copied to reply. + RequestId uint32 + // The bus type. + Bustype DEVICE_OP_BUSTYPE `mavenum:"uint8"` + // Bus number. + Bus uint8 + // Bus address. + Address uint8 + // Name of device on bus (for SPI). + Busname string `mavlen:"40"` + // First register to read. + Regstart uint8 + // Count of registers to read. + Count uint8 + // Bank number. + Bank uint8 `mavext:"true"` +} + +// GetID implements the msg.Message interface. +func (*MessageDeviceOpRead) GetID() uint32 { + return 11000 +} diff --git a/pkg/dialects/storm32/msg_device_op_read_reply.go b/pkg/dialects/storm32/msg_device_op_read_reply.go new file mode 100644 index 000000000..ec2d66e38 --- /dev/null +++ b/pkg/dialects/storm32/msg_device_op_read_reply.go @@ -0,0 +1,24 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// Read registers reply. +type MessageDeviceOpReadReply struct { + // Request ID - copied from request. + RequestId uint32 + // 0 for success, anything else is failure code. + Result uint8 + // Starting register. + Regstart uint8 + // Count of bytes read. + Count uint8 + // Reply data. + Data [128]uint8 + // Bank number. + Bank uint8 `mavext:"true"` +} + +// GetID implements the msg.Message interface. +func (*MessageDeviceOpReadReply) GetID() uint32 { + return 11001 +} diff --git a/pkg/dialects/storm32/msg_device_op_write.go b/pkg/dialects/storm32/msg_device_op_write.go new file mode 100644 index 000000000..aba122258 --- /dev/null +++ b/pkg/dialects/storm32/msg_device_op_write.go @@ -0,0 +1,34 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// Write registers for a device. +type MessageDeviceOpWrite struct { + // System ID. + TargetSystem uint8 + // Component ID. + TargetComponent uint8 + // Request ID - copied to reply. + RequestId uint32 + // The bus type. + Bustype DEVICE_OP_BUSTYPE `mavenum:"uint8"` + // Bus number. + Bus uint8 + // Bus address. + Address uint8 + // Name of device on bus (for SPI). + Busname string `mavlen:"40"` + // First register to write. + Regstart uint8 + // Count of registers to write. + Count uint8 + // Write data. + Data [128]uint8 + // Bank number. + Bank uint8 `mavext:"true"` +} + +// GetID implements the msg.Message interface. +func (*MessageDeviceOpWrite) GetID() uint32 { + return 11002 +} diff --git a/pkg/dialects/storm32/msg_device_op_write_reply.go b/pkg/dialects/storm32/msg_device_op_write_reply.go new file mode 100644 index 000000000..0ab396b16 --- /dev/null +++ b/pkg/dialects/storm32/msg_device_op_write_reply.go @@ -0,0 +1,16 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// Write registers reply. +type MessageDeviceOpWriteReply struct { + // Request ID - copied from request. + RequestId uint32 + // 0 for success, anything else is failure code. + Result uint8 +} + +// GetID implements the msg.Message interface. +func (*MessageDeviceOpWriteReply) GetID() uint32 { + return 11003 +} diff --git a/pkg/dialects/storm32/msg_digicam_configure.go b/pkg/dialects/storm32/msg_digicam_configure.go new file mode 100644 index 000000000..ce10b2ed2 --- /dev/null +++ b/pkg/dialects/storm32/msg_digicam_configure.go @@ -0,0 +1,34 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// Configure on-board Camera Control System. +type MessageDigicamConfigure struct { + // System ID. + TargetSystem uint8 + // Component ID. + TargetComponent uint8 + // Mode enumeration from 1 to N //P, TV, AV, M, etc. (0 means ignore). + Mode uint8 + // Divisor number //e.g. 1000 means 1/1000 (0 means ignore). + ShutterSpeed uint16 + // F stop number x 10 //e.g. 28 means 2.8 (0 means ignore). + Aperture uint8 + // ISO enumeration from 1 to N //e.g. 80, 100, 200, Etc (0 means ignore). + Iso uint8 + // Exposure type enumeration from 1 to N (0 means ignore). + ExposureType uint8 + // Command Identity (incremental loop: 0 to 255). //A command sent multiple times will be executed or pooled just once. + CommandId uint8 + // Main engine cut-off time before camera trigger (0 means no cut-off). + EngineCutOff uint8 + // Extra parameters enumeration (0 means ignore). + ExtraParam uint8 + // Correspondent value to given extra_param. + ExtraValue float32 +} + +// GetID implements the msg.Message interface. +func (*MessageDigicamConfigure) GetID() uint32 { + return 154 +} diff --git a/pkg/dialects/storm32/msg_digicam_control.go b/pkg/dialects/storm32/msg_digicam_control.go new file mode 100644 index 000000000..fa8961182 --- /dev/null +++ b/pkg/dialects/storm32/msg_digicam_control.go @@ -0,0 +1,32 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// Control on-board Camera Control System to take shots. +type MessageDigicamControl struct { + // System ID. + TargetSystem uint8 + // Component ID. + TargetComponent uint8 + // 0: stop, 1: start or keep it up //Session control e.g. show/hide lens. + Session uint8 + // 1 to N //Zoom's absolute position (0 means ignore). + ZoomPos uint8 + // -100 to 100 //Zooming step value to offset zoom from the current position. + ZoomStep int8 + // 0: unlock focus or keep unlocked, 1: lock focus or keep locked, 3: re-lock focus. + FocusLock uint8 + // 0: ignore, 1: shot or start filming. + Shot uint8 + // Command Identity (incremental loop: 0 to 255)//A command sent multiple times will be executed or pooled just once. + CommandId uint8 + // Extra parameters enumeration (0 means ignore). + ExtraParam uint8 + // Correspondent value to given extra_param. + ExtraValue float32 +} + +// GetID implements the msg.Message interface. +func (*MessageDigicamControl) GetID() uint32 { + return 155 +} diff --git a/pkg/dialects/storm32/msg_distance_sensor.go b/pkg/dialects/storm32/msg_distance_sensor.go new file mode 100644 index 000000000..21c8d33f8 --- /dev/null +++ b/pkg/dialects/storm32/msg_distance_sensor.go @@ -0,0 +1,36 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// Distance sensor information for an onboard rangefinder. +type MessageDistanceSensor struct { + // Timestamp (time since system boot). + TimeBootMs uint32 + // Minimum distance the sensor can measure + MinDistance uint16 + // Maximum distance the sensor can measure + MaxDistance uint16 + // Current distance reading + CurrentDistance uint16 + // Type of distance sensor. + Type MAV_DISTANCE_SENSOR `mavenum:"uint8"` + // Onboard ID of the sensor + Id uint8 + // Direction the sensor faces. downward-facing: ROTATION_PITCH_270, upward-facing: ROTATION_PITCH_90, backward-facing: ROTATION_PITCH_180, forward-facing: ROTATION_NONE, left-facing: ROTATION_YAW_90, right-facing: ROTATION_YAW_270 + Orientation MAV_SENSOR_ORIENTATION `mavenum:"uint8"` + // Measurement variance. Max standard deviation is 6cm. UINT8_MAX if unknown. + Covariance uint8 + // Horizontal Field of View (angle) where the distance measurement is valid and the field of view is known. Otherwise this is set to 0. + HorizontalFov float32 `mavext:"true"` + // Vertical Field of View (angle) where the distance measurement is valid and the field of view is known. Otherwise this is set to 0. + VerticalFov float32 `mavext:"true"` + // Quaternion of the sensor orientation in vehicle body frame (w, x, y, z order, zero-rotation is 1, 0, 0, 0). Zero-rotation is along the vehicle body x-axis. This field is required if the orientation is set to MAV_SENSOR_ROTATION_CUSTOM. Set it to 0 if invalid." + Quaternion [4]float32 `mavext:"true"` + // Signal quality of the sensor. Specific to each sensor type, representing the relation of the signal strength with the target reflectivity, distance, size or aspect, but normalised as a percentage. 0 = unknown/unset signal quality, 1 = invalid signal, 100 = perfect signal. + SignalQuality uint8 `mavext:"true"` +} + +// GetID implements the msg.Message interface. +func (*MessageDistanceSensor) GetID() uint32 { + return 132 +} diff --git a/pkg/dialects/storm32/msg_efi_status.go b/pkg/dialects/storm32/msg_efi_status.go new file mode 100644 index 000000000..f82731b5e --- /dev/null +++ b/pkg/dialects/storm32/msg_efi_status.go @@ -0,0 +1,46 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// EFI status output +type MessageEfiStatus struct { + // EFI health status + Health uint8 + // ECU index + EcuIndex float32 + // RPM + Rpm float32 + // Fuel consumed + FuelConsumed float32 + // Fuel flow rate + FuelFlow float32 + // Engine load + EngineLoad float32 + // Throttle position + ThrottlePosition float32 + // Spark dwell time + SparkDwellTime float32 + // Barometric pressure + BarometricPressure float32 + // Intake manifold pressure( + IntakeManifoldPressure float32 + // Intake manifold temperature + IntakeManifoldTemperature float32 + // Cylinder head temperature + CylinderHeadTemperature float32 + // Ignition timing (Crank angle degrees) + IgnitionTiming float32 + // Injection time + InjectionTime float32 + // Exhaust gas temperature + ExhaustGasTemperature float32 + // Output throttle + ThrottleOut float32 + // Pressure/temperature compensation + PtCompensation float32 +} + +// GetID implements the msg.Message interface. +func (*MessageEfiStatus) GetID() uint32 { + return 225 +} diff --git a/pkg/dialects/storm32/msg_ekf_status_report.go b/pkg/dialects/storm32/msg_ekf_status_report.go new file mode 100644 index 000000000..0259d8172 --- /dev/null +++ b/pkg/dialects/storm32/msg_ekf_status_report.go @@ -0,0 +1,26 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// EKF Status message including flags and variances. +type MessageEkfStatusReport struct { + // Flags. + Flags EKF_STATUS_FLAGS `mavenum:"uint16"` + // Velocity variance. + VelocityVariance float32 + // Horizontal Position variance. + PosHorizVariance float32 + // Vertical Position variance. + PosVertVariance float32 + // Compass variance. + CompassVariance float32 + // Terrain Altitude variance. + TerrainAltVariance float32 + // Airspeed variance. + AirspeedVariance float32 `mavext:"true"` +} + +// GetID implements the msg.Message interface. +func (*MessageEkfStatusReport) GetID() uint32 { + return 193 +} diff --git a/pkg/dialects/storm32/msg_encapsulated_data.go b/pkg/dialects/storm32/msg_encapsulated_data.go new file mode 100644 index 000000000..a03f85a01 --- /dev/null +++ b/pkg/dialects/storm32/msg_encapsulated_data.go @@ -0,0 +1,16 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// Data packet for images sent using the Image Transmission Protocol: https://mavlink.io/en/services/image_transmission.html. +type MessageEncapsulatedData struct { + // sequence number (starting with 0 on every transmission) + Seqnr uint16 + // image data bytes + Data [253]uint8 +} + +// GetID implements the msg.Message interface. +func (*MessageEncapsulatedData) GetID() uint32 { + return 131 +} diff --git a/pkg/dialects/storm32/msg_esc_info.go b/pkg/dialects/storm32/msg_esc_info.go new file mode 100644 index 000000000..1dc448d02 --- /dev/null +++ b/pkg/dialects/storm32/msg_esc_info.go @@ -0,0 +1,30 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// ESC information for lower rate streaming. Recommended streaming rate 1Hz. See ESC_STATUS for higher-rate ESC data. +type MessageEscInfo struct { + // Index of the first ESC in this message. minValue = 0, maxValue = 60, increment = 4. + Index uint8 + // Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude the number. + TimeUsec uint64 + // Counter of data packets received. + Counter uint16 + // Total number of ESCs in all messages of this type. Message fields with an index higher than this should be ignored because they contain invalid data. + Count uint8 + // Connection type protocol for all ESC. + ConnectionType ESC_CONNECTION_TYPE `mavenum:"uint8"` + // Information regarding online/offline status of each ESC. + Info uint8 + // Bitmap of ESC failure flags. + FailureFlags [4]ESC_FAILURE_FLAGS `mavenum:"uint16"` + // Number of reported errors by each ESC since boot. + ErrorCount [4]uint32 + // Temperature of each ESC. INT16_MAX: if data not supplied by ESC. + Temperature [4]int16 +} + +// GetID implements the msg.Message interface. +func (*MessageEscInfo) GetID() uint32 { + return 290 +} diff --git a/pkg/dialects/storm32/msg_esc_status.go b/pkg/dialects/storm32/msg_esc_status.go new file mode 100644 index 000000000..249acaa7f --- /dev/null +++ b/pkg/dialects/storm32/msg_esc_status.go @@ -0,0 +1,22 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// ESC information for higher rate streaming. Recommended streaming rate is ~10 Hz. Information that changes more slowly is sent in ESC_INFO. It should typically only be streamed on high-bandwidth links (i.e. to a companion computer). +type MessageEscStatus struct { + // Index of the first ESC in this message. minValue = 0, maxValue = 60, increment = 4. + Index uint8 + // Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude the number. + TimeUsec uint64 + // Reported motor RPM from each ESC (negative for reverse rotation). + Rpm [4]int32 + // Voltage measured from each ESC. + Voltage [4]float32 + // Current measured from each ESC. + Current [4]float32 +} + +// GetID implements the msg.Message interface. +func (*MessageEscStatus) GetID() uint32 { + return 291 +} diff --git a/pkg/dialects/storm32/msg_esc_telemetry_1_to_4.go b/pkg/dialects/storm32/msg_esc_telemetry_1_to_4.go new file mode 100644 index 000000000..6349161f4 --- /dev/null +++ b/pkg/dialects/storm32/msg_esc_telemetry_1_to_4.go @@ -0,0 +1,24 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// ESC Telemetry Data for ESCs 1 to 4, matching data sent by BLHeli ESCs. +type MessageEscTelemetry_1To_4 struct { + // Temperature. + Temperature [4]uint8 + // Voltage. + Voltage [4]uint16 + // Current. + Current [4]uint16 + // Total current. + Totalcurrent [4]uint16 + // RPM (eRPM). + Rpm [4]uint16 + // count of telemetry packets received (wraps at 65535). + Count [4]uint16 +} + +// GetID implements the msg.Message interface. +func (*MessageEscTelemetry_1To_4) GetID() uint32 { + return 11030 +} diff --git a/pkg/dialects/storm32/msg_esc_telemetry_5_to_8.go b/pkg/dialects/storm32/msg_esc_telemetry_5_to_8.go new file mode 100644 index 000000000..d053368db --- /dev/null +++ b/pkg/dialects/storm32/msg_esc_telemetry_5_to_8.go @@ -0,0 +1,24 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// ESC Telemetry Data for ESCs 5 to 8, matching data sent by BLHeli ESCs. +type MessageEscTelemetry_5To_8 struct { + // Temperature. + Temperature [4]uint8 + // Voltage. + Voltage [4]uint16 + // Current. + Current [4]uint16 + // Total current. + Totalcurrent [4]uint16 + // RPM (eRPM). + Rpm [4]uint16 + // count of telemetry packets received (wraps at 65535). + Count [4]uint16 +} + +// GetID implements the msg.Message interface. +func (*MessageEscTelemetry_5To_8) GetID() uint32 { + return 11031 +} diff --git a/pkg/dialects/storm32/msg_esc_telemetry_9_to_12.go b/pkg/dialects/storm32/msg_esc_telemetry_9_to_12.go new file mode 100644 index 000000000..5f408b867 --- /dev/null +++ b/pkg/dialects/storm32/msg_esc_telemetry_9_to_12.go @@ -0,0 +1,24 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// ESC Telemetry Data for ESCs 9 to 12, matching data sent by BLHeli ESCs. +type MessageEscTelemetry_9To_12 struct { + // Temperature. + Temperature [4]uint8 + // Voltage. + Voltage [4]uint16 + // Current. + Current [4]uint16 + // Total current. + Totalcurrent [4]uint16 + // RPM (eRPM). + Rpm [4]uint16 + // count of telemetry packets received (wraps at 65535). + Count [4]uint16 +} + +// GetID implements the msg.Message interface. +func (*MessageEscTelemetry_9To_12) GetID() uint32 { + return 11032 +} diff --git a/pkg/dialects/storm32/msg_estimator_status.go b/pkg/dialects/storm32/msg_estimator_status.go new file mode 100644 index 000000000..66d414f68 --- /dev/null +++ b/pkg/dialects/storm32/msg_estimator_status.go @@ -0,0 +1,32 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// Estimator status message including flags, innovation test ratios and estimated accuracies. The flags message is an integer bitmask containing information on which EKF outputs are valid. See the ESTIMATOR_STATUS_FLAGS enum definition for further information. The innovation test ratios show the magnitude of the sensor innovation divided by the innovation check threshold. Under normal operation the innovation test ratios should be below 0.5 with occasional values up to 1.0. Values greater than 1.0 should be rare under normal operation and indicate that a measurement has been rejected by the filter. The user should be notified if an innovation test ratio greater than 1.0 is recorded. Notifications for values in the range between 0.5 and 1.0 should be optional and controllable by the user. +type MessageEstimatorStatus struct { + // Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. + TimeUsec uint64 + // Bitmap indicating which EKF outputs are valid. + Flags ESTIMATOR_STATUS_FLAGS `mavenum:"uint16"` + // Velocity innovation test ratio + VelRatio float32 + // Horizontal position innovation test ratio + PosHorizRatio float32 + // Vertical position innovation test ratio + PosVertRatio float32 + // Magnetometer innovation test ratio + MagRatio float32 + // Height above terrain innovation test ratio + HaglRatio float32 + // True airspeed innovation test ratio + TasRatio float32 + // Horizontal position 1-STD accuracy relative to the EKF local origin + PosHorizAccuracy float32 + // Vertical position 1-STD accuracy relative to the EKF local origin + PosVertAccuracy float32 +} + +// GetID implements the msg.Message interface. +func (*MessageEstimatorStatus) GetID() uint32 { + return 230 +} diff --git a/pkg/dialects/storm32/msg_event.go b/pkg/dialects/storm32/msg_event.go new file mode 100644 index 000000000..b1948f091 --- /dev/null +++ b/pkg/dialects/storm32/msg_event.go @@ -0,0 +1,26 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// Event message. Each new event from a particular component gets a new sequence number. The same message might be sent multiple times if (re-)requested. Most events are broadcast, some can be specific to a target component (as receivers keep track of the sequence for missed events, all events need to be broadcast. Thus we use destination_component instead of target_component). +type MessageEvent struct { + // Component ID + DestinationComponent uint8 + // System ID + DestinationSystem uint8 + // Event ID (as defined in the component metadata) + Id uint32 + // Timestamp (time since system boot when the event happened). + EventTimeBootMs uint32 + // Sequence number. + Sequence uint16 + // Log levels: 4 bits MSB: internal (for logging purposes), 4 bits LSB: external. Levels: Emergency = 0, Alert = 1, Critical = 2, Error = 3, Warning = 4, Notice = 5, Info = 6, Debug = 7, Protocol = 8, Disabled = 9 + LogLevels uint8 + // Arguments (depend on event ID). + Arguments [40]uint8 +} + +// GetID implements the msg.Message interface. +func (*MessageEvent) GetID() uint32 { + return 410 +} diff --git a/pkg/dialects/storm32/msg_extended_sys_state.go b/pkg/dialects/storm32/msg_extended_sys_state.go new file mode 100644 index 000000000..fdf6afa99 --- /dev/null +++ b/pkg/dialects/storm32/msg_extended_sys_state.go @@ -0,0 +1,16 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// Provides state for additional features +type MessageExtendedSysState struct { + // The VTOL state if applicable. Is set to MAV_VTOL_STATE_UNDEFINED if UAV is not in VTOL configuration. + VtolState MAV_VTOL_STATE `mavenum:"uint8"` + // The landed state. Is set to MAV_LANDED_STATE_UNDEFINED if landed state is unknown. + LandedState MAV_LANDED_STATE `mavenum:"uint8"` +} + +// GetID implements the msg.Message interface. +func (*MessageExtendedSysState) GetID() uint32 { + return 245 +} diff --git a/pkg/dialects/storm32/msg_fence_fetch_point.go b/pkg/dialects/storm32/msg_fence_fetch_point.go new file mode 100644 index 000000000..a980f6ae9 --- /dev/null +++ b/pkg/dialects/storm32/msg_fence_fetch_point.go @@ -0,0 +1,18 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// Request a current fence point from MAV. +type MessageFenceFetchPoint struct { + // System ID. + TargetSystem uint8 + // Component ID. + TargetComponent uint8 + // Point index (first point is 1, 0 is for return point). + Idx uint8 +} + +// GetID implements the msg.Message interface. +func (*MessageFenceFetchPoint) GetID() uint32 { + return 161 +} diff --git a/pkg/dialects/storm32/msg_fence_point.go b/pkg/dialects/storm32/msg_fence_point.go new file mode 100644 index 000000000..8b0726cb3 --- /dev/null +++ b/pkg/dialects/storm32/msg_fence_point.go @@ -0,0 +1,24 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// A fence point. Used to set a point when from GCS -> MAV. Also used to return a point from MAV -> GCS. +type MessageFencePoint struct { + // System ID. + TargetSystem uint8 + // Component ID. + TargetComponent uint8 + // Point index (first point is 1, 0 is for return point). + Idx uint8 + // Total number of points (for sanity checking). + Count uint8 + // Latitude of point. + Lat float32 + // Longitude of point. + Lng float32 +} + +// GetID implements the msg.Message interface. +func (*MessageFencePoint) GetID() uint32 { + return 160 +} diff --git a/pkg/dialects/storm32/msg_fence_status.go b/pkg/dialects/storm32/msg_fence_status.go new file mode 100644 index 000000000..525053cf6 --- /dev/null +++ b/pkg/dialects/storm32/msg_fence_status.go @@ -0,0 +1,22 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// Status of geo-fencing. Sent in extended status stream when fencing enabled. +type MessageFenceStatus struct { + // Breach status (0 if currently inside fence, 1 if outside). + BreachStatus uint8 + // Number of fence breaches. + BreachCount uint16 + // Last breach type. + BreachType FENCE_BREACH `mavenum:"uint8"` + // Time (since boot) of last breach. + BreachTime uint32 + // Active action to prevent fence breach + BreachMitigation FENCE_MITIGATE `mavenum:"uint8" mavext:"true"` +} + +// GetID implements the msg.Message interface. +func (*MessageFenceStatus) GetID() uint32 { + return 162 +} diff --git a/pkg/dialects/storm32/msg_file_transfer_protocol.go b/pkg/dialects/storm32/msg_file_transfer_protocol.go new file mode 100644 index 000000000..d98d419d0 --- /dev/null +++ b/pkg/dialects/storm32/msg_file_transfer_protocol.go @@ -0,0 +1,20 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// File transfer message +type MessageFileTransferProtocol struct { + // Network ID (0 for broadcast) + TargetNetwork uint8 + // System ID (0 for broadcast) + TargetSystem uint8 + // Component ID (0 for broadcast) + TargetComponent uint8 + // Variable length payload. The length is defined by the remaining message length when subtracting the header and other fields. The entire content of this block is opaque unless you understand any the encoding message_type. The particular encoding used can be extension specific and might not always be documented as part of the mavlink specification. + Payload [251]uint8 +} + +// GetID implements the msg.Message interface. +func (*MessageFileTransferProtocol) GetID() uint32 { + return 110 +} diff --git a/pkg/dialects/storm32/msg_flight_information.go b/pkg/dialects/storm32/msg_flight_information.go new file mode 100644 index 000000000..f4ddcde1a --- /dev/null +++ b/pkg/dialects/storm32/msg_flight_information.go @@ -0,0 +1,21 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// Information about flight since last arming. +// This can be requested using MAV_CMD_REQUEST_MESSAGE. +type MessageFlightInformation struct { + // Timestamp (time since system boot). + TimeBootMs uint32 + // Timestamp at arming (time since UNIX epoch) in UTC, 0 for unknown + ArmingTimeUtc uint64 + // Timestamp at takeoff (time since UNIX epoch) in UTC, 0 for unknown + TakeoffTimeUtc uint64 + // Universally unique identifier (UUID) of flight, should correspond to name of log files + FlightUuid uint64 +} + +// GetID implements the msg.Message interface. +func (*MessageFlightInformation) GetID() uint32 { + return 264 +} diff --git a/pkg/dialects/storm32/msg_follow_target.go b/pkg/dialects/storm32/msg_follow_target.go new file mode 100644 index 000000000..a6d5df60e --- /dev/null +++ b/pkg/dialects/storm32/msg_follow_target.go @@ -0,0 +1,34 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// Current motion information from a designated system +type MessageFollowTarget struct { + // Timestamp (time since system boot). + Timestamp uint64 + // bit positions for tracker reporting capabilities (POS = 0, VEL = 1, ACCEL = 2, ATT + RATES = 3) + EstCapabilities uint8 + // Latitude (WGS84) + Lat int32 + // Longitude (WGS84) + Lon int32 + // Altitude (MSL) + Alt float32 + // target velocity (0,0,0) for unknown + Vel [3]float32 + // linear target acceleration (0,0,0) for unknown + Acc [3]float32 + // (0 0 0 0 for unknown) + AttitudeQ [4]float32 + // (0 0 0 for unknown) + Rates [3]float32 + // eph epv + PositionCov [3]float32 + // button states or switches of a tracker device + CustomState uint64 +} + +// GetID implements the msg.Message interface. +func (*MessageFollowTarget) GetID() uint32 { + return 144 +} diff --git a/pkg/dialects/storm32/msg_generator_status.go b/pkg/dialects/storm32/msg_generator_status.go new file mode 100644 index 000000000..b431f7827 --- /dev/null +++ b/pkg/dialects/storm32/msg_generator_status.go @@ -0,0 +1,34 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// Telemetry of power generation system. Alternator or mechanical generator. +type MessageGeneratorStatus struct { + // Status flags. + Status MAV_GENERATOR_STATUS_FLAG `mavenum:"uint64"` + // Speed of electrical generator or alternator. UINT16_MAX: field not provided. + GeneratorSpeed uint16 + // Current into/out of battery. Positive for out. Negative for in. NaN: field not provided. + BatteryCurrent float32 + // Current going to the UAV. If battery current not available this is the DC current from the generator. Positive for out. Negative for in. NaN: field not provided + LoadCurrent float32 + // The power being generated. NaN: field not provided + PowerGenerated float32 + // Voltage of the bus seen at the generator, or battery bus if battery bus is controlled by generator and at a different voltage to main bus. + BusVoltage float32 + // The temperature of the rectifier or power converter. INT16_MAX: field not provided. + RectifierTemperature int16 + // The target battery current. Positive for out. Negative for in. NaN: field not provided + BatCurrentSetpoint float32 + // The temperature of the mechanical motor, fuel cell core or generator. INT16_MAX: field not provided. + GeneratorTemperature int16 + // Seconds this generator has run since it was rebooted. UINT32_MAX: field not provided. + Runtime uint32 + // Seconds until this generator requires maintenance. A negative value indicates maintenance is past-due. INT32_MAX: field not provided. + TimeUntilMaintenance int32 +} + +// GetID implements the msg.Message interface. +func (*MessageGeneratorStatus) GetID() uint32 { + return 373 +} diff --git a/pkg/dialects/storm32/msg_gimbal_control.go b/pkg/dialects/storm32/msg_gimbal_control.go new file mode 100644 index 000000000..b172db5c2 --- /dev/null +++ b/pkg/dialects/storm32/msg_gimbal_control.go @@ -0,0 +1,22 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// Control message for rate gimbal. +type MessageGimbalControl struct { + // System ID. + TargetSystem uint8 + // Component ID. + TargetComponent uint8 + // Demanded angular rate X. + DemandedRateX float32 + // Demanded angular rate Y. + DemandedRateY float32 + // Demanded angular rate Z. + DemandedRateZ float32 +} + +// GetID implements the msg.Message interface. +func (*MessageGimbalControl) GetID() uint32 { + return 201 +} diff --git a/pkg/dialects/storm32/msg_gimbal_device_attitude_status.go b/pkg/dialects/storm32/msg_gimbal_device_attitude_status.go new file mode 100644 index 000000000..7dc78abeb --- /dev/null +++ b/pkg/dialects/storm32/msg_gimbal_device_attitude_status.go @@ -0,0 +1,30 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// Message reporting the status of a gimbal device. This message should be broadcasted by a gimbal device component. The angles encoded in the quaternion are relative to absolute North if the flag GIMBAL_DEVICE_FLAGS_YAW_LOCK is set (roll: positive is rolling to the right, pitch: positive is pitching up, yaw is turn to the right) or relative to the vehicle heading if the flag is not set. This message should be broadcast at a low regular rate (e.g. 10Hz). +type MessageGimbalDeviceAttitudeStatus struct { + // System ID + TargetSystem uint8 + // Component ID + TargetComponent uint8 + // Timestamp (time since system boot). + TimeBootMs uint32 + // Current gimbal flags set. + Flags GIMBAL_DEVICE_FLAGS `mavenum:"uint16"` + // Quaternion components, w, x, y, z (1 0 0 0 is the null-rotation, the frame is depends on whether the flag GIMBAL_DEVICE_FLAGS_YAW_LOCK is set) + Q [4]float32 + // X component of angular velocity (NaN if unknown) + AngularVelocityX float32 + // Y component of angular velocity (NaN if unknown) + AngularVelocityY float32 + // Z component of angular velocity (NaN if unknown) + AngularVelocityZ float32 + // Failure flags (0 for no failure) + FailureFlags GIMBAL_DEVICE_ERROR_FLAGS `mavenum:"uint32"` +} + +// GetID implements the msg.Message interface. +func (*MessageGimbalDeviceAttitudeStatus) GetID() uint32 { + return 285 +} diff --git a/pkg/dialects/storm32/msg_gimbal_device_information.go b/pkg/dialects/storm32/msg_gimbal_device_information.go new file mode 100644 index 000000000..cabd712ee --- /dev/null +++ b/pkg/dialects/storm32/msg_gimbal_device_information.go @@ -0,0 +1,42 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// Information about a low level gimbal. This message should be requested by the gimbal manager or a ground station using MAV_CMD_REQUEST_MESSAGE. The maximum angles and rates are the limits by hardware. However, the limits by software used are likely different/smaller and dependent on mode/settings/etc.. +type MessageGimbalDeviceInformation struct { + // Timestamp (time since system boot). + TimeBootMs uint32 + // Name of the gimbal vendor. + VendorName string `mavlen:"32"` + // Name of the gimbal model. + ModelName string `mavlen:"32"` + // Custom name of the gimbal given to it by the user. + CustomName string `mavlen:"32"` + // Version of the gimbal firmware, encoded as: (Dev & 0xff) << 24 | (Patch & 0xff) << 16 | (Minor & 0xff) << 8 | (Major & 0xff). + FirmwareVersion uint32 + // Version of the gimbal hardware, encoded as: (Dev & 0xff) << 24 | (Patch & 0xff) << 16 | (Minor & 0xff) << 8 | (Major & 0xff). + HardwareVersion uint32 + // UID of gimbal hardware (0 if unknown). + Uid uint64 + // Bitmap of gimbal capability flags. + CapFlags GIMBAL_DEVICE_CAP_FLAGS `mavenum:"uint16"` + // Bitmap for use for gimbal-specific capability flags. + CustomCapFlags uint16 + // Minimum hardware roll angle (positive: rolling to the right, negative: rolling to the left) + RollMin float32 + // Maximum hardware roll angle (positive: rolling to the right, negative: rolling to the left) + RollMax float32 + // Minimum hardware pitch angle (positive: up, negative: down) + PitchMin float32 + // Maximum hardware pitch angle (positive: up, negative: down) + PitchMax float32 + // Minimum hardware yaw angle (positive: to the right, negative: to the left) + YawMin float32 + // Maximum hardware yaw angle (positive: to the right, negative: to the left) + YawMax float32 +} + +// GetID implements the msg.Message interface. +func (*MessageGimbalDeviceInformation) GetID() uint32 { + return 283 +} diff --git a/pkg/dialects/storm32/msg_gimbal_device_set_attitude.go b/pkg/dialects/storm32/msg_gimbal_device_set_attitude.go new file mode 100644 index 000000000..bc2c4d611 --- /dev/null +++ b/pkg/dialects/storm32/msg_gimbal_device_set_attitude.go @@ -0,0 +1,26 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// Low level message to control a gimbal device's attitude. This message is to be sent from the gimbal manager to the gimbal device component. Angles and rates can be set to NaN according to use case. +type MessageGimbalDeviceSetAttitude struct { + // System ID + TargetSystem uint8 + // Component ID + TargetComponent uint8 + // Low level gimbal flags. + Flags GIMBAL_DEVICE_FLAGS `mavenum:"uint16"` + // Quaternion components, w, x, y, z (1 0 0 0 is the null-rotation, the frame is depends on whether the flag GIMBAL_DEVICE_FLAGS_YAW_LOCK is set, set all fields to NaN if only angular velocity should be used) + Q [4]float32 + // X component of angular velocity, positive is rolling to the right, NaN to be ignored. + AngularVelocityX float32 + // Y component of angular velocity, positive is pitching up, NaN to be ignored. + AngularVelocityY float32 + // Z component of angular velocity, positive is yawing to the right, NaN to be ignored. + AngularVelocityZ float32 +} + +// GetID implements the msg.Message interface. +func (*MessageGimbalDeviceSetAttitude) GetID() uint32 { + return 284 +} diff --git a/pkg/dialects/storm32/msg_gimbal_manager_information.go b/pkg/dialects/storm32/msg_gimbal_manager_information.go new file mode 100644 index 000000000..e655bd6fa --- /dev/null +++ b/pkg/dialects/storm32/msg_gimbal_manager_information.go @@ -0,0 +1,30 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// Information about a high level gimbal manager. This message should be requested by a ground station using MAV_CMD_REQUEST_MESSAGE. +type MessageGimbalManagerInformation struct { + // Timestamp (time since system boot). + TimeBootMs uint32 + // Bitmap of gimbal capability flags. + CapFlags GIMBAL_MANAGER_CAP_FLAGS `mavenum:"uint32"` + // Gimbal device ID that this gimbal manager is responsible for. + GimbalDeviceId uint8 + // Minimum hardware roll angle (positive: rolling to the right, negative: rolling to the left) + RollMin float32 + // Maximum hardware roll angle (positive: rolling to the right, negative: rolling to the left) + RollMax float32 + // Minimum pitch angle (positive: up, negative: down) + PitchMin float32 + // Maximum pitch angle (positive: up, negative: down) + PitchMax float32 + // Minimum yaw angle (positive: to the right, negative: to the left) + YawMin float32 + // Maximum yaw angle (positive: to the right, negative: to the left) + YawMax float32 +} + +// GetID implements the msg.Message interface. +func (*MessageGimbalManagerInformation) GetID() uint32 { + return 280 +} diff --git a/pkg/dialects/storm32/msg_gimbal_manager_set_attitude.go b/pkg/dialects/storm32/msg_gimbal_manager_set_attitude.go new file mode 100644 index 000000000..9492770e1 --- /dev/null +++ b/pkg/dialects/storm32/msg_gimbal_manager_set_attitude.go @@ -0,0 +1,28 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// High level message to control a gimbal's attitude. This message is to be sent to the gimbal manager (e.g. from a ground station). Angles and rates can be set to NaN according to use case. +type MessageGimbalManagerSetAttitude struct { + // System ID + TargetSystem uint8 + // Component ID + TargetComponent uint8 + // High level gimbal manager flags to use. + Flags GIMBAL_MANAGER_FLAGS `mavenum:"uint32"` + // Component ID of gimbal device to address (or 1-6 for non-MAVLink gimbal), 0 for all gimbal device components. Send command multiple times for more than one gimbal (but not all gimbals). + GimbalDeviceId uint8 + // Quaternion components, w, x, y, z (1 0 0 0 is the null-rotation, the frame is depends on whether the flag GIMBAL_MANAGER_FLAGS_YAW_LOCK is set) + Q [4]float32 + // X component of angular velocity, positive is rolling to the right, NaN to be ignored. + AngularVelocityX float32 + // Y component of angular velocity, positive is pitching up, NaN to be ignored. + AngularVelocityY float32 + // Z component of angular velocity, positive is yawing to the right, NaN to be ignored. + AngularVelocityZ float32 +} + +// GetID implements the msg.Message interface. +func (*MessageGimbalManagerSetAttitude) GetID() uint32 { + return 282 +} diff --git a/pkg/dialects/storm32/msg_gimbal_manager_set_manual_control.go b/pkg/dialects/storm32/msg_gimbal_manager_set_manual_control.go new file mode 100644 index 000000000..f70a5a911 --- /dev/null +++ b/pkg/dialects/storm32/msg_gimbal_manager_set_manual_control.go @@ -0,0 +1,28 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// High level message to control a gimbal manually. The angles or angular rates are unitless; the actual rates will depend on internal gimbal manager settings/configuration (e.g. set by parameters). This message is to be sent to the gimbal manager (e.g. from a ground station). Angles and rates can be set to NaN according to use case. +type MessageGimbalManagerSetManualControl struct { + // System ID + TargetSystem uint8 + // Component ID + TargetComponent uint8 + // High level gimbal manager flags. + Flags GIMBAL_MANAGER_FLAGS `mavenum:"uint32"` + // Component ID of gimbal device to address (or 1-6 for non-MAVLink gimbal), 0 for all gimbal device components. Send command multiple times for more than one gimbal (but not all gimbals). + GimbalDeviceId uint8 + // Pitch angle unitless (-1..1, positive: up, negative: down, NaN to be ignored). + Pitch float32 + // Yaw angle unitless (-1..1, positive: to the right, negative: to the left, NaN to be ignored). + Yaw float32 + // Pitch angular rate unitless (-1..1, positive: up, negative: down, NaN to be ignored). + PitchRate float32 + // Yaw angular rate unitless (-1..1, positive: to the right, negative: to the left, NaN to be ignored). + YawRate float32 +} + +// GetID implements the msg.Message interface. +func (*MessageGimbalManagerSetManualControl) GetID() uint32 { + return 288 +} diff --git a/pkg/dialects/storm32/msg_gimbal_manager_set_pitchyaw.go b/pkg/dialects/storm32/msg_gimbal_manager_set_pitchyaw.go new file mode 100644 index 000000000..4d4c2527f --- /dev/null +++ b/pkg/dialects/storm32/msg_gimbal_manager_set_pitchyaw.go @@ -0,0 +1,28 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// High level message to control a gimbal's pitch and yaw angles. This message is to be sent to the gimbal manager (e.g. from a ground station). Angles and rates can be set to NaN according to use case. +type MessageGimbalManagerSetPitchyaw struct { + // System ID + TargetSystem uint8 + // Component ID + TargetComponent uint8 + // High level gimbal manager flags to use. + Flags GIMBAL_MANAGER_FLAGS `mavenum:"uint32"` + // Component ID of gimbal device to address (or 1-6 for non-MAVLink gimbal), 0 for all gimbal device components. Send command multiple times for more than one gimbal (but not all gimbals). + GimbalDeviceId uint8 + // Pitch angle (positive: up, negative: down, NaN to be ignored). + Pitch float32 + // Yaw angle (positive: to the right, negative: to the left, NaN to be ignored). + Yaw float32 + // Pitch angular rate (positive: up, negative: down, NaN to be ignored). + PitchRate float32 + // Yaw angular rate (positive: to the right, negative: to the left, NaN to be ignored). + YawRate float32 +} + +// GetID implements the msg.Message interface. +func (*MessageGimbalManagerSetPitchyaw) GetID() uint32 { + return 287 +} diff --git a/pkg/dialects/storm32/msg_gimbal_manager_status.go b/pkg/dialects/storm32/msg_gimbal_manager_status.go new file mode 100644 index 000000000..89c88ee06 --- /dev/null +++ b/pkg/dialects/storm32/msg_gimbal_manager_status.go @@ -0,0 +1,26 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// Current status about a high level gimbal manager. This message should be broadcast at a low regular rate (e.g. 5Hz). +type MessageGimbalManagerStatus struct { + // Timestamp (time since system boot). + TimeBootMs uint32 + // High level gimbal manager flags currently applied. + Flags GIMBAL_MANAGER_FLAGS `mavenum:"uint32"` + // Gimbal device ID that this gimbal manager is responsible for. + GimbalDeviceId uint8 + // System ID of MAVLink component with primary control, 0 for none. + PrimaryControlSysid uint8 + // Component ID of MAVLink component with primary control, 0 for none. + PrimaryControlCompid uint8 + // System ID of MAVLink component with secondary control, 0 for none. + SecondaryControlSysid uint8 + // Component ID of MAVLink component with secondary control, 0 for none. + SecondaryControlCompid uint8 +} + +// GetID implements the msg.Message interface. +func (*MessageGimbalManagerStatus) GetID() uint32 { + return 281 +} diff --git a/pkg/dialects/storm32/msg_gimbal_report.go b/pkg/dialects/storm32/msg_gimbal_report.go new file mode 100644 index 000000000..0e7b87db6 --- /dev/null +++ b/pkg/dialects/storm32/msg_gimbal_report.go @@ -0,0 +1,36 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// 3 axis gimbal measurements. +type MessageGimbalReport struct { + // System ID. + TargetSystem uint8 + // Component ID. + TargetComponent uint8 + // Time since last update. + DeltaTime float32 + // Delta angle X. + DeltaAngleX float32 + // Delta angle Y. + DeltaAngleY float32 + // Delta angle X. + DeltaAngleZ float32 + // Delta velocity X. + DeltaVelocityX float32 + // Delta velocity Y. + DeltaVelocityY float32 + // Delta velocity Z. + DeltaVelocityZ float32 + // Joint ROLL. + JointRoll float32 + // Joint EL. + JointEl float32 + // Joint AZ. + JointAz float32 +} + +// GetID implements the msg.Message interface. +func (*MessageGimbalReport) GetID() uint32 { + return 200 +} diff --git a/pkg/dialects/storm32/msg_gimbal_torque_cmd_report.go b/pkg/dialects/storm32/msg_gimbal_torque_cmd_report.go new file mode 100644 index 000000000..7c1ea21e9 --- /dev/null +++ b/pkg/dialects/storm32/msg_gimbal_torque_cmd_report.go @@ -0,0 +1,22 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// 100 Hz gimbal torque command telemetry. +type MessageGimbalTorqueCmdReport struct { + // System ID. + TargetSystem uint8 + // Component ID. + TargetComponent uint8 + // Roll Torque Command. + RlTorqueCmd int16 + // Elevation Torque Command. + ElTorqueCmd int16 + // Azimuth Torque Command. + AzTorqueCmd int16 +} + +// GetID implements the msg.Message interface. +func (*MessageGimbalTorqueCmdReport) GetID() uint32 { + return 214 +} diff --git a/pkg/dialects/storm32/msg_global_position_int.go b/pkg/dialects/storm32/msg_global_position_int.go new file mode 100644 index 000000000..ad41a1c69 --- /dev/null +++ b/pkg/dialects/storm32/msg_global_position_int.go @@ -0,0 +1,31 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// The filtered global position (e.g. fused GPS and accelerometers). The position is in GPS-frame (right-handed, Z-up). It +// is designed as scaled integer message since the resolution of float is not sufficient. +type MessageGlobalPositionInt struct { + // Timestamp (time since system boot). + TimeBootMs uint32 + // Latitude, expressed + Lat int32 + // Longitude, expressed + Lon int32 + // Altitude (MSL). Note that virtually all GPS modules provide both WGS84 and MSL. + Alt int32 + // Altitude above ground + RelativeAlt int32 + // Ground X Speed (Latitude, positive north) + Vx int16 + // Ground Y Speed (Longitude, positive east) + Vy int16 + // Ground Z Speed (Altitude, positive down) + Vz int16 + // Vehicle heading (yaw angle), 0.0..359.99 degrees. If unknown, set to: UINT16_MAX + Hdg uint16 +} + +// GetID implements the msg.Message interface. +func (*MessageGlobalPositionInt) GetID() uint32 { + return 33 +} diff --git a/pkg/dialects/storm32/msg_global_position_int_cov.go b/pkg/dialects/storm32/msg_global_position_int_cov.go new file mode 100644 index 000000000..ea3ac957f --- /dev/null +++ b/pkg/dialects/storm32/msg_global_position_int_cov.go @@ -0,0 +1,32 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// The filtered global position (e.g. fused GPS and accelerometers). The position is in GPS-frame (right-handed, Z-up). It is designed as scaled integer message since the resolution of float is not sufficient. NOTE: This message is intended for onboard networks / companion computers and higher-bandwidth links and optimized for accuracy and completeness. Please use the GLOBAL_POSITION_INT message for a minimal subset. +type MessageGlobalPositionIntCov struct { + // Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. + TimeUsec uint64 + // Class id of the estimator this estimate originated from. + EstimatorType MAV_ESTIMATOR_TYPE `mavenum:"uint8"` + // Latitude + Lat int32 + // Longitude + Lon int32 + // Altitude in meters above MSL + Alt int32 + // Altitude above ground + RelativeAlt int32 + // Ground X Speed (Latitude) + Vx float32 + // Ground Y Speed (Longitude) + Vy float32 + // Ground Z Speed (Altitude) + Vz float32 + // Row-major representation of a 6x6 position and velocity 6x6 cross-covariance matrix (states: lat, lon, alt, vx, vy, vz; first six entries are the first ROW, next six entries are the second row, etc.). If unknown, assign NaN value to first element in the array. + Covariance [36]float32 +} + +// GetID implements the msg.Message interface. +func (*MessageGlobalPositionIntCov) GetID() uint32 { + return 63 +} diff --git a/pkg/dialects/storm32/msg_global_vision_position_estimate.go b/pkg/dialects/storm32/msg_global_vision_position_estimate.go new file mode 100644 index 000000000..2526ab3b4 --- /dev/null +++ b/pkg/dialects/storm32/msg_global_vision_position_estimate.go @@ -0,0 +1,30 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// Global position/attitude estimate from a vision source. +type MessageGlobalVisionPositionEstimate struct { + // Timestamp (UNIX time or since system boot) + Usec uint64 + // Global X position + X float32 + // Global Y position + Y float32 + // Global Z position + Z float32 + // Roll angle + Roll float32 + // Pitch angle + Pitch float32 + // Yaw angle + Yaw float32 + // Row-major representation of pose 6x6 cross-covariance matrix upper right triangle (states: x_global, y_global, z_global, roll, pitch, yaw; first six entries are the first ROW, next five entries are the second ROW, etc.). If unknown, assign NaN value to first element in the array. + Covariance [21]float32 `mavext:"true"` + // Estimate reset counter. This should be incremented when the estimate resets in any of the dimensions (position, velocity, attitude, angular speed). This is designed to be used when e.g an external SLAM system detects a loop-closure and the estimate jumps. + ResetCounter uint8 `mavext:"true"` +} + +// GetID implements the msg.Message interface. +func (*MessageGlobalVisionPositionEstimate) GetID() uint32 { + return 101 +} diff --git a/pkg/dialects/storm32/msg_gopro_get_request.go b/pkg/dialects/storm32/msg_gopro_get_request.go new file mode 100644 index 000000000..d3cf9abcc --- /dev/null +++ b/pkg/dialects/storm32/msg_gopro_get_request.go @@ -0,0 +1,18 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// Request a GOPRO_COMMAND response from the GoPro. +type MessageGoproGetRequest struct { + // System ID. + TargetSystem uint8 + // Component ID. + TargetComponent uint8 + // Command ID. + CmdId GOPRO_COMMAND `mavenum:"uint8"` +} + +// GetID implements the msg.Message interface. +func (*MessageGoproGetRequest) GetID() uint32 { + return 216 +} diff --git a/pkg/dialects/storm32/msg_gopro_get_response.go b/pkg/dialects/storm32/msg_gopro_get_response.go new file mode 100644 index 000000000..f9215da41 --- /dev/null +++ b/pkg/dialects/storm32/msg_gopro_get_response.go @@ -0,0 +1,18 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// Response from a GOPRO_COMMAND get request. +type MessageGoproGetResponse struct { + // Command ID. + CmdId GOPRO_COMMAND `mavenum:"uint8"` + // Status. + Status GOPRO_REQUEST_STATUS `mavenum:"uint8"` + // Value. + Value [4]uint8 +} + +// GetID implements the msg.Message interface. +func (*MessageGoproGetResponse) GetID() uint32 { + return 217 +} diff --git a/pkg/dialects/storm32/msg_gopro_heartbeat.go b/pkg/dialects/storm32/msg_gopro_heartbeat.go new file mode 100644 index 000000000..d3a84d4f3 --- /dev/null +++ b/pkg/dialects/storm32/msg_gopro_heartbeat.go @@ -0,0 +1,18 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// Heartbeat from a HeroBus attached GoPro. +type MessageGoproHeartbeat struct { + // Status. + Status GOPRO_HEARTBEAT_STATUS `mavenum:"uint8"` + // Current capture mode. + CaptureMode GOPRO_CAPTURE_MODE `mavenum:"uint8"` + // Additional status bits. + Flags GOPRO_HEARTBEAT_FLAGS `mavenum:"uint8"` +} + +// GetID implements the msg.Message interface. +func (*MessageGoproHeartbeat) GetID() uint32 { + return 215 +} diff --git a/pkg/dialects/storm32/msg_gopro_set_request.go b/pkg/dialects/storm32/msg_gopro_set_request.go new file mode 100644 index 000000000..edb9fe2be --- /dev/null +++ b/pkg/dialects/storm32/msg_gopro_set_request.go @@ -0,0 +1,20 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// Request to set a GOPRO_COMMAND with a desired. +type MessageGoproSetRequest struct { + // System ID. + TargetSystem uint8 + // Component ID. + TargetComponent uint8 + // Command ID. + CmdId GOPRO_COMMAND `mavenum:"uint8"` + // Value. + Value [4]uint8 +} + +// GetID implements the msg.Message interface. +func (*MessageGoproSetRequest) GetID() uint32 { + return 218 +} diff --git a/pkg/dialects/storm32/msg_gopro_set_response.go b/pkg/dialects/storm32/msg_gopro_set_response.go new file mode 100644 index 000000000..61970617a --- /dev/null +++ b/pkg/dialects/storm32/msg_gopro_set_response.go @@ -0,0 +1,16 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// Response from a GOPRO_COMMAND set request. +type MessageGoproSetResponse struct { + // Command ID. + CmdId GOPRO_COMMAND `mavenum:"uint8"` + // Status. + Status GOPRO_REQUEST_STATUS `mavenum:"uint8"` +} + +// GetID implements the msg.Message interface. +func (*MessageGoproSetResponse) GetID() uint32 { + return 219 +} diff --git a/pkg/dialects/storm32/msg_gps2_raw.go b/pkg/dialects/storm32/msg_gps2_raw.go new file mode 100644 index 000000000..3fd51132f --- /dev/null +++ b/pkg/dialects/storm32/msg_gps2_raw.go @@ -0,0 +1,48 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// Second GPS data. +type MessageGps2Raw struct { + // Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. + TimeUsec uint64 + // GPS fix type. + FixType GPS_FIX_TYPE `mavenum:"uint8"` + // Latitude (WGS84) + Lat int32 + // Longitude (WGS84) + Lon int32 + // Altitude (MSL). Positive for up. + Alt int32 + // GPS HDOP horizontal dilution of position (unitless * 100). If unknown, set to: UINT16_MAX + Eph uint16 + // GPS VDOP vertical dilution of position (unitless * 100). If unknown, set to: UINT16_MAX + Epv uint16 + // GPS ground speed. If unknown, set to: UINT16_MAX + Vel uint16 + // Course over ground (NOT heading, but direction of movement): 0.0..359.99 degrees. If unknown, set to: UINT16_MAX + Cog uint16 + // Number of satellites visible. If unknown, set to UINT8_MAX + SatellitesVisible uint8 + // Number of DGPS satellites + DgpsNumch uint8 + // Age of DGPS info + DgpsAge uint32 + // Yaw in earth frame from north. Use 0 if this GPS does not provide yaw. Use UINT16_MAX if this GPS is configured to provide yaw and is currently unable to provide it. Use 36000 for north. + Yaw uint16 `mavext:"true"` + // Altitude (above WGS84, EGM96 ellipsoid). Positive for up. + AltEllipsoid int32 `mavext:"true"` + // Position uncertainty. + HAcc uint32 `mavext:"true"` + // Altitude uncertainty. + VAcc uint32 `mavext:"true"` + // Speed uncertainty. + VelAcc uint32 `mavext:"true"` + // Heading / track uncertainty + HdgAcc uint32 `mavext:"true"` +} + +// GetID implements the msg.Message interface. +func (*MessageGps2Raw) GetID() uint32 { + return 124 +} diff --git a/pkg/dialects/storm32/msg_gps2_rtk.go b/pkg/dialects/storm32/msg_gps2_rtk.go new file mode 100644 index 000000000..c9c74648a --- /dev/null +++ b/pkg/dialects/storm32/msg_gps2_rtk.go @@ -0,0 +1,38 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// RTK GPS data. Gives information on the relative baseline calculation the GPS is reporting +type MessageGps2Rtk struct { + // Time since boot of last baseline message received. + TimeLastBaselineMs uint32 + // Identification of connected RTK receiver. + RtkReceiverId uint8 + // GPS Week Number of last baseline + Wn uint16 + // GPS Time of Week of last baseline + Tow uint32 + // GPS-specific health report for RTK data. + RtkHealth uint8 + // Rate of baseline messages being received by GPS + RtkRate uint8 + // Current number of sats used for RTK calculation. + Nsats uint8 + // Coordinate system of baseline + BaselineCoordsType RTK_BASELINE_COORDINATE_SYSTEM `mavenum:"uint8"` + // Current baseline in ECEF x or NED north component. + BaselineAMm int32 + // Current baseline in ECEF y or NED east component. + BaselineBMm int32 + // Current baseline in ECEF z or NED down component. + BaselineCMm int32 + // Current estimate of baseline accuracy. + Accuracy uint32 + // Current number of integer ambiguity hypotheses. + IarNumHypotheses int32 +} + +// GetID implements the msg.Message interface. +func (*MessageGps2Rtk) GetID() uint32 { + return 128 +} diff --git a/pkg/dialects/storm32/msg_gps_global_origin.go b/pkg/dialects/storm32/msg_gps_global_origin.go new file mode 100644 index 000000000..461d37420 --- /dev/null +++ b/pkg/dialects/storm32/msg_gps_global_origin.go @@ -0,0 +1,20 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// Publishes the GPS co-ordinates of the vehicle local origin (0,0,0) position. Emitted whenever a new GPS-Local position mapping is requested or set - e.g. following SET_GPS_GLOBAL_ORIGIN message. +type MessageGpsGlobalOrigin struct { + // Latitude (WGS84) + Latitude int32 + // Longitude (WGS84) + Longitude int32 + // Altitude (MSL). Positive for up. + Altitude int32 + // Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. + TimeUsec uint64 `mavext:"true"` +} + +// GetID implements the msg.Message interface. +func (*MessageGpsGlobalOrigin) GetID() uint32 { + return 49 +} diff --git a/pkg/dialects/storm32/msg_gps_inject_data.go b/pkg/dialects/storm32/msg_gps_inject_data.go new file mode 100644 index 000000000..369101a73 --- /dev/null +++ b/pkg/dialects/storm32/msg_gps_inject_data.go @@ -0,0 +1,20 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// Data for injecting into the onboard GPS (used for DGPS) +type MessageGpsInjectData struct { + // System ID + TargetSystem uint8 + // Component ID + TargetComponent uint8 + // Data length + Len uint8 + // Raw data (110 is enough for 12 satellites of RTCMv2) + Data [110]uint8 +} + +// GetID implements the msg.Message interface. +func (*MessageGpsInjectData) GetID() uint32 { + return 123 +} diff --git a/pkg/dialects/storm32/msg_gps_input.go b/pkg/dialects/storm32/msg_gps_input.go new file mode 100644 index 000000000..1d1de4561 --- /dev/null +++ b/pkg/dialects/storm32/msg_gps_input.go @@ -0,0 +1,50 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// GPS sensor input message. This is a raw sensor value sent by the GPS. This is NOT the global position estimate of the system. +type MessageGpsInput struct { + // Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. + TimeUsec uint64 + // ID of the GPS for multiple GPS inputs + GpsId uint8 + // Bitmap indicating which GPS input flags fields to ignore. All other fields must be provided. + IgnoreFlags GPS_INPUT_IGNORE_FLAGS `mavenum:"uint16"` + // GPS time (from start of GPS week) + TimeWeekMs uint32 + // GPS week number + TimeWeek uint16 + // 0-1: no fix, 2: 2D fix, 3: 3D fix. 4: 3D with DGPS. 5: 3D with RTK + FixType uint8 + // Latitude (WGS84) + Lat int32 + // Longitude (WGS84) + Lon int32 + // Altitude (MSL). Positive for up. + Alt float32 + // GPS HDOP horizontal dilution of position (unitless). If unknown, set to: UINT16_MAX + Hdop float32 + // GPS VDOP vertical dilution of position (unitless). If unknown, set to: UINT16_MAX + Vdop float32 + // GPS velocity in north direction in earth-fixed NED frame + Vn float32 + // GPS velocity in east direction in earth-fixed NED frame + Ve float32 + // GPS velocity in down direction in earth-fixed NED frame + Vd float32 + // GPS speed accuracy + SpeedAccuracy float32 + // GPS horizontal accuracy + HorizAccuracy float32 + // GPS vertical accuracy + VertAccuracy float32 + // Number of satellites visible. + SatellitesVisible uint8 + // Yaw of vehicle relative to Earth's North, zero means not available, use 36000 for north + Yaw uint16 `mavext:"true"` +} + +// GetID implements the msg.Message interface. +func (*MessageGpsInput) GetID() uint32 { + return 232 +} diff --git a/pkg/dialects/storm32/msg_gps_raw_int.go b/pkg/dialects/storm32/msg_gps_raw_int.go new file mode 100644 index 000000000..b40f1df5a --- /dev/null +++ b/pkg/dialects/storm32/msg_gps_raw_int.go @@ -0,0 +1,45 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// The global position, as returned by the Global Positioning System (GPS). This is +// NOT the global position estimate of the system, but rather a RAW sensor value. See message GLOBAL_POSITION_INT for the global position estimate. +type MessageGpsRawInt struct { + // Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. + TimeUsec uint64 + // GPS fix type. + FixType GPS_FIX_TYPE `mavenum:"uint8"` + // Latitude (WGS84, EGM96 ellipsoid) + Lat int32 + // Longitude (WGS84, EGM96 ellipsoid) + Lon int32 + // Altitude (MSL). Positive for up. Note that virtually all GPS modules provide the MSL altitude in addition to the WGS84 altitude. + Alt int32 + // GPS HDOP horizontal dilution of position (unitless * 100). If unknown, set to: UINT16_MAX + Eph uint16 + // GPS VDOP vertical dilution of position (unitless * 100). If unknown, set to: UINT16_MAX + Epv uint16 + // GPS ground speed. If unknown, set to: UINT16_MAX + Vel uint16 + // Course over ground (NOT heading, but direction of movement) in degrees * 100, 0.0..359.99 degrees. If unknown, set to: UINT16_MAX + Cog uint16 + // Number of satellites visible. If unknown, set to UINT8_MAX + SatellitesVisible uint8 + // Altitude (above WGS84, EGM96 ellipsoid). Positive for up. + AltEllipsoid int32 `mavext:"true"` + // Position uncertainty. + HAcc uint32 `mavext:"true"` + // Altitude uncertainty. + VAcc uint32 `mavext:"true"` + // Speed uncertainty. + VelAcc uint32 `mavext:"true"` + // Heading / track uncertainty + HdgAcc uint32 `mavext:"true"` + // Yaw in earth frame from north. Use 0 if this GPS does not provide yaw. Use UINT16_MAX if this GPS is configured to provide yaw and is currently unable to provide it. Use 36000 for north. + Yaw uint16 `mavext:"true"` +} + +// GetID implements the msg.Message interface. +func (*MessageGpsRawInt) GetID() uint32 { + return 24 +} diff --git a/pkg/dialects/storm32/msg_gps_rtcm_data.go b/pkg/dialects/storm32/msg_gps_rtcm_data.go new file mode 100644 index 000000000..1f9af219c --- /dev/null +++ b/pkg/dialects/storm32/msg_gps_rtcm_data.go @@ -0,0 +1,18 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// RTCM message for injecting into the onboard GPS (used for DGPS) +type MessageGpsRtcmData struct { + // LSB: 1 means message is fragmented, next 2 bits are the fragment ID, the remaining 5 bits are used for the sequence ID. Messages are only to be flushed to the GPS when the entire message has been reconstructed on the autopilot. The fragment ID specifies which order the fragments should be assembled into a buffer, while the sequence ID is used to detect a mismatch between different buffers. The buffer is considered fully reconstructed when either all 4 fragments are present, or all the fragments before the first fragment with a non full payload is received. This management is used to ensure that normal GPS operation doesn't corrupt RTCM data, and to recover from a unreliable transport delivery order. + Flags uint8 + // data length + Len uint8 + // RTCM message (may be fragmented) + Data [180]uint8 +} + +// GetID implements the msg.Message interface. +func (*MessageGpsRtcmData) GetID() uint32 { + return 233 +} diff --git a/pkg/dialects/storm32/msg_gps_rtk.go b/pkg/dialects/storm32/msg_gps_rtk.go new file mode 100644 index 000000000..0fda19faa --- /dev/null +++ b/pkg/dialects/storm32/msg_gps_rtk.go @@ -0,0 +1,38 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// RTK GPS data. Gives information on the relative baseline calculation the GPS is reporting +type MessageGpsRtk struct { + // Time since boot of last baseline message received. + TimeLastBaselineMs uint32 + // Identification of connected RTK receiver. + RtkReceiverId uint8 + // GPS Week Number of last baseline + Wn uint16 + // GPS Time of Week of last baseline + Tow uint32 + // GPS-specific health report for RTK data. + RtkHealth uint8 + // Rate of baseline messages being received by GPS + RtkRate uint8 + // Current number of sats used for RTK calculation. + Nsats uint8 + // Coordinate system of baseline + BaselineCoordsType RTK_BASELINE_COORDINATE_SYSTEM `mavenum:"uint8"` + // Current baseline in ECEF x or NED north component. + BaselineAMm int32 + // Current baseline in ECEF y or NED east component. + BaselineBMm int32 + // Current baseline in ECEF z or NED down component. + BaselineCMm int32 + // Current estimate of baseline accuracy. + Accuracy uint32 + // Current number of integer ambiguity hypotheses. + IarNumHypotheses int32 +} + +// GetID implements the msg.Message interface. +func (*MessageGpsRtk) GetID() uint32 { + return 127 +} diff --git a/pkg/dialects/storm32/msg_gps_status.go b/pkg/dialects/storm32/msg_gps_status.go new file mode 100644 index 000000000..6ebe5a1ec --- /dev/null +++ b/pkg/dialects/storm32/msg_gps_status.go @@ -0,0 +1,24 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// The positioning status, as reported by GPS. This message is intended to display status information about each satellite visible to the receiver. See message GLOBAL_POSITION_INT for the global position estimate. This message can contain information for up to 20 satellites. +type MessageGpsStatus struct { + // Number of satellites visible + SatellitesVisible uint8 + // Global satellite ID + SatellitePrn [20]uint8 + // 0: Satellite not used, 1: used for localization + SatelliteUsed [20]uint8 + // Elevation (0: right on top of receiver, 90: on the horizon) of satellite + SatelliteElevation [20]uint8 + // Direction of satellite, 0: 0 deg, 255: 360 deg. + SatelliteAzimuth [20]uint8 + // Signal to noise ratio of satellite + SatelliteSnr [20]uint8 +} + +// GetID implements the msg.Message interface. +func (*MessageGpsStatus) GetID() uint32 { + return 25 +} diff --git a/pkg/dialects/storm32/msg_heartbeat.go b/pkg/dialects/storm32/msg_heartbeat.go new file mode 100644 index 000000000..c49597663 --- /dev/null +++ b/pkg/dialects/storm32/msg_heartbeat.go @@ -0,0 +1,24 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// The heartbeat message shows that a system or component is present and responding. The type and autopilot fields (along with the message component id), allow the receiving system to treat further messages from this system appropriately (e.g. by laying out the user interface based on the autopilot). This microservice is documented at https://mavlink.io/en/services/heartbeat.html +type MessageHeartbeat struct { + // Vehicle or component type. For a flight controller component the vehicle type (quadrotor, helicopter, etc.). For other components the component type (e.g. camera, gimbal, etc.). This should be used in preference to component id for identifying the component type. + Type MAV_TYPE `mavenum:"uint8"` + // Autopilot type / class. Use MAV_AUTOPILOT_INVALID for components that are not flight controllers. + Autopilot MAV_AUTOPILOT `mavenum:"uint8"` + // System mode bitmap. + BaseMode MAV_MODE_FLAG `mavenum:"uint8"` + // A bitfield for use for autopilot-specific flags + CustomMode uint32 + // System status flag. + SystemStatus MAV_STATE `mavenum:"uint8"` + // MAVLink version, not writable by user, gets added by protocol because of magic data type: uint8_t_mavlink_version + MavlinkVersion uint8 +} + +// GetID implements the msg.Message interface. +func (*MessageHeartbeat) GetID() uint32 { + return 0 +} diff --git a/pkg/dialects/storm32/msg_high_latency.go b/pkg/dialects/storm32/msg_high_latency.go new file mode 100644 index 000000000..4d336e5b9 --- /dev/null +++ b/pkg/dialects/storm32/msg_high_latency.go @@ -0,0 +1,60 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// Message appropriate for high latency connections like Iridium +type MessageHighLatency struct { + // Bitmap of enabled system modes. + BaseMode MAV_MODE_FLAG `mavenum:"uint8"` + // A bitfield for use for autopilot-specific flags. + CustomMode uint32 + // The landed state. Is set to MAV_LANDED_STATE_UNDEFINED if landed state is unknown. + LandedState MAV_LANDED_STATE `mavenum:"uint8"` + // roll + Roll int16 + // pitch + Pitch int16 + // heading + Heading uint16 + // throttle (percentage) + Throttle int8 + // heading setpoint + HeadingSp int16 + // Latitude + Latitude int32 + // Longitude + Longitude int32 + // Altitude above mean sea level + AltitudeAmsl int16 + // Altitude setpoint relative to the home position + AltitudeSp int16 + // airspeed + Airspeed uint8 + // airspeed setpoint + AirspeedSp uint8 + // groundspeed + Groundspeed uint8 + // climb rate + ClimbRate int8 + // Number of satellites visible. If unknown, set to UINT8_MAX + GpsNsat uint8 + // GPS Fix type. + GpsFixType GPS_FIX_TYPE `mavenum:"uint8"` + // Remaining battery (percentage) + BatteryRemaining uint8 + // Autopilot temperature (degrees C) + Temperature int8 + // Air temperature (degrees C) from airspeed sensor + TemperatureAir int8 + // failsafe (each bit represents a failsafe where 0=ok, 1=failsafe active (bit0:RC, bit1:batt, bit2:GPS, bit3:GCS, bit4:fence) + Failsafe uint8 + // current waypoint number + WpNum uint8 + // distance to target + WpDistance uint16 +} + +// GetID implements the msg.Message interface. +func (*MessageHighLatency) GetID() uint32 { + return 234 +} diff --git a/pkg/dialects/storm32/msg_high_latency2.go b/pkg/dialects/storm32/msg_high_latency2.go new file mode 100644 index 000000000..e4f3ca103 --- /dev/null +++ b/pkg/dialects/storm32/msg_high_latency2.go @@ -0,0 +1,66 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// Message appropriate for high latency connections like Iridium (version 2) +type MessageHighLatency2 struct { + // Timestamp (milliseconds since boot or Unix epoch) + Timestamp uint32 + // Type of the MAV (quadrotor, helicopter, etc.) + Type MAV_TYPE `mavenum:"uint8"` + // Autopilot type / class. Use MAV_AUTOPILOT_INVALID for components that are not flight controllers. + Autopilot MAV_AUTOPILOT `mavenum:"uint8"` + // A bitfield for use for autopilot-specific flags (2 byte version). + CustomMode uint16 + // Latitude + Latitude int32 + // Longitude + Longitude int32 + // Altitude above mean sea level + Altitude int16 + // Altitude setpoint + TargetAltitude int16 + // Heading + Heading uint8 + // Heading setpoint + TargetHeading uint8 + // Distance to target waypoint or position + TargetDistance uint16 + // Throttle + Throttle uint8 + // Airspeed + Airspeed uint8 + // Airspeed setpoint + AirspeedSp uint8 + // Groundspeed + Groundspeed uint8 + // Windspeed + Windspeed uint8 + // Wind heading + WindHeading uint8 + // Maximum error horizontal position since last message + Eph uint8 + // Maximum error vertical position since last message + Epv uint8 + // Air temperature from airspeed sensor + TemperatureAir int8 + // Maximum climb rate magnitude since last message + ClimbRate int8 + // Battery level (-1 if field not provided). + Battery int8 + // Current waypoint number + WpNum uint16 + // Bitmap of failure flags. + FailureFlags HL_FAILURE_FLAG `mavenum:"uint16"` + // Field for custom payload. + Custom0 int8 + // Field for custom payload. + Custom1 int8 + // Field for custom payload. + Custom2 int8 +} + +// GetID implements the msg.Message interface. +func (*MessageHighLatency2) GetID() uint32 { + return 235 +} diff --git a/pkg/dialects/storm32/msg_highres_imu.go b/pkg/dialects/storm32/msg_highres_imu.go new file mode 100644 index 000000000..44eaab58a --- /dev/null +++ b/pkg/dialects/storm32/msg_highres_imu.go @@ -0,0 +1,44 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// The IMU readings in SI units in NED body frame +type MessageHighresImu struct { + // Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. + TimeUsec uint64 + // X acceleration + Xacc float32 + // Y acceleration + Yacc float32 + // Z acceleration + Zacc float32 + // Angular speed around X axis + Xgyro float32 + // Angular speed around Y axis + Ygyro float32 + // Angular speed around Z axis + Zgyro float32 + // X Magnetic field + Xmag float32 + // Y Magnetic field + Ymag float32 + // Z Magnetic field + Zmag float32 + // Absolute pressure + AbsPressure float32 + // Differential pressure + DiffPressure float32 + // Altitude calculated from pressure + PressureAlt float32 + // Temperature + Temperature float32 + // Bitmap for fields that have updated since last message + FieldsUpdated HIGHRES_IMU_UPDATED_FLAGS `mavenum:"uint16"` + // Id. Ids are numbered from 0 and map to IMUs numbered from 1 (e.g. IMU1 will have a message with id=0) + Id uint8 `mavext:"true"` +} + +// GetID implements the msg.Message interface. +func (*MessageHighresImu) GetID() uint32 { + return 105 +} diff --git a/pkg/dialects/storm32/msg_hil_actuator_controls.go b/pkg/dialects/storm32/msg_hil_actuator_controls.go new file mode 100644 index 000000000..5ab885547 --- /dev/null +++ b/pkg/dialects/storm32/msg_hil_actuator_controls.go @@ -0,0 +1,20 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// Sent from autopilot to simulation. Hardware in the loop control outputs (replacement for HIL_CONTROLS) +type MessageHilActuatorControls struct { + // Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. + TimeUsec uint64 + // Control outputs -1 .. 1. Channel assignment depends on the simulated hardware. + Controls [16]float32 + // System mode. Includes arming state. + Mode MAV_MODE_FLAG `mavenum:"uint8"` + // Flags as bitfield, 1: indicate simulation using lockstep. + Flags uint64 +} + +// GetID implements the msg.Message interface. +func (*MessageHilActuatorControls) GetID() uint32 { + return 93 +} diff --git a/pkg/dialects/storm32/msg_hil_controls.go b/pkg/dialects/storm32/msg_hil_controls.go new file mode 100644 index 000000000..cb21f21cb --- /dev/null +++ b/pkg/dialects/storm32/msg_hil_controls.go @@ -0,0 +1,34 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// Sent from autopilot to simulation. Hardware in the loop control outputs +type MessageHilControls struct { + // Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. + TimeUsec uint64 + // Control output -1 .. 1 + RollAilerons float32 + // Control output -1 .. 1 + PitchElevator float32 + // Control output -1 .. 1 + YawRudder float32 + // Throttle 0 .. 1 + Throttle float32 + // Aux 1, -1 .. 1 + Aux1 float32 + // Aux 2, -1 .. 1 + Aux2 float32 + // Aux 3, -1 .. 1 + Aux3 float32 + // Aux 4, -1 .. 1 + Aux4 float32 + // System mode. + Mode MAV_MODE `mavenum:"uint8"` + // Navigation mode (MAV_NAV_MODE) + NavMode uint8 +} + +// GetID implements the msg.Message interface. +func (*MessageHilControls) GetID() uint32 { + return 91 +} diff --git a/pkg/dialects/storm32/msg_hil_gps.go b/pkg/dialects/storm32/msg_hil_gps.go new file mode 100644 index 000000000..49336008f --- /dev/null +++ b/pkg/dialects/storm32/msg_hil_gps.go @@ -0,0 +1,43 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// The global position, as returned by the Global Positioning System (GPS). This is +// NOT the global position estimate of the sytem, but rather a RAW sensor value. See message GLOBAL_POSITION_INT for the global position estimate. +type MessageHilGps struct { + // Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. + TimeUsec uint64 + // 0-1: no fix, 2: 2D fix, 3: 3D fix. Some applications will not use the value of this field unless it is at least two, so always correctly fill in the fix. + FixType uint8 + // Latitude (WGS84) + Lat int32 + // Longitude (WGS84) + Lon int32 + // Altitude (MSL). Positive for up. + Alt int32 + // GPS HDOP horizontal dilution of position (unitless * 100). If unknown, set to: UINT16_MAX + Eph uint16 + // GPS VDOP vertical dilution of position (unitless * 100). If unknown, set to: UINT16_MAX + Epv uint16 + // GPS ground speed. If unknown, set to: UINT16_MAX + Vel uint16 + // GPS velocity in north direction in earth-fixed NED frame + Vn int16 + // GPS velocity in east direction in earth-fixed NED frame + Ve int16 + // GPS velocity in down direction in earth-fixed NED frame + Vd int16 + // Course over ground (NOT heading, but direction of movement), 0.0..359.99 degrees. If unknown, set to: UINT16_MAX + Cog uint16 + // Number of satellites visible. If unknown, set to UINT8_MAX + SatellitesVisible uint8 + // GPS ID (zero indexed). Used for multiple GPS inputs + Id uint8 `mavext:"true"` + // Yaw of vehicle relative to Earth's North, zero means not available, use 36000 for north + Yaw uint16 `mavext:"true"` +} + +// GetID implements the msg.Message interface. +func (*MessageHilGps) GetID() uint32 { + return 113 +} diff --git a/pkg/dialects/storm32/msg_hil_optical_flow.go b/pkg/dialects/storm32/msg_hil_optical_flow.go new file mode 100644 index 000000000..17ed28ea9 --- /dev/null +++ b/pkg/dialects/storm32/msg_hil_optical_flow.go @@ -0,0 +1,36 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// Simulated optical flow from a flow sensor (e.g. PX4FLOW or optical mouse sensor) +type MessageHilOpticalFlow struct { + // Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. + TimeUsec uint64 + // Sensor ID + SensorId uint8 + // Integration time. Divide integrated_x and integrated_y by the integration time to obtain average flow. The integration time also indicates the. + IntegrationTimeUs uint32 + // Flow in radians around X axis (Sensor RH rotation about the X axis induces a positive flow. Sensor linear motion along the positive Y axis induces a negative flow.) + IntegratedX float32 + // Flow in radians around Y axis (Sensor RH rotation about the Y axis induces a positive flow. Sensor linear motion along the positive X axis induces a positive flow.) + IntegratedY float32 + // RH rotation around X axis + IntegratedXgyro float32 + // RH rotation around Y axis + IntegratedYgyro float32 + // RH rotation around Z axis + IntegratedZgyro float32 + // Temperature + Temperature int16 + // Optical flow quality / confidence. 0: no valid flow, 255: maximum quality + Quality uint8 + // Time since the distance was sampled. + TimeDeltaDistanceUs uint32 + // Distance to the center of the flow field. Positive value (including zero): distance known. Negative value: Unknown distance. + Distance float32 +} + +// GetID implements the msg.Message interface. +func (*MessageHilOpticalFlow) GetID() uint32 { + return 114 +} diff --git a/pkg/dialects/storm32/msg_hil_rc_inputs_raw.go b/pkg/dialects/storm32/msg_hil_rc_inputs_raw.go new file mode 100644 index 000000000..8c53e6f79 --- /dev/null +++ b/pkg/dialects/storm32/msg_hil_rc_inputs_raw.go @@ -0,0 +1,40 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// Sent from simulation to autopilot. The RAW values of the RC channels received. The standard PPM modulation is as follows: 1000 microseconds: 0%, 2000 microseconds: 100%. Individual receivers/transmitters might violate this specification. +type MessageHilRcInputsRaw struct { + // Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. + TimeUsec uint64 + // RC channel 1 value + Chan1Raw uint16 + // RC channel 2 value + Chan2Raw uint16 + // RC channel 3 value + Chan3Raw uint16 + // RC channel 4 value + Chan4Raw uint16 + // RC channel 5 value + Chan5Raw uint16 + // RC channel 6 value + Chan6Raw uint16 + // RC channel 7 value + Chan7Raw uint16 + // RC channel 8 value + Chan8Raw uint16 + // RC channel 9 value + Chan9Raw uint16 + // RC channel 10 value + Chan10Raw uint16 + // RC channel 11 value + Chan11Raw uint16 + // RC channel 12 value + Chan12Raw uint16 + // Receive signal strength indicator in device-dependent units/scale. Values: [0-254], UINT8_MAX: invalid/unknown. + Rssi uint8 +} + +// GetID implements the msg.Message interface. +func (*MessageHilRcInputsRaw) GetID() uint32 { + return 92 +} diff --git a/pkg/dialects/storm32/msg_hil_sensor.go b/pkg/dialects/storm32/msg_hil_sensor.go new file mode 100644 index 000000000..0562c20df --- /dev/null +++ b/pkg/dialects/storm32/msg_hil_sensor.go @@ -0,0 +1,44 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// The IMU readings in SI units in NED body frame +type MessageHilSensor struct { + // Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. + TimeUsec uint64 + // X acceleration + Xacc float32 + // Y acceleration + Yacc float32 + // Z acceleration + Zacc float32 + // Angular speed around X axis in body frame + Xgyro float32 + // Angular speed around Y axis in body frame + Ygyro float32 + // Angular speed around Z axis in body frame + Zgyro float32 + // X Magnetic field + Xmag float32 + // Y Magnetic field + Ymag float32 + // Z Magnetic field + Zmag float32 + // Absolute pressure + AbsPressure float32 + // Differential pressure (airspeed) + DiffPressure float32 + // Altitude calculated from pressure + PressureAlt float32 + // Temperature + Temperature float32 + // Bitmap for fields that have updated since last message + FieldsUpdated HIL_SENSOR_UPDATED_FLAGS `mavenum:"uint32"` + // Sensor ID (zero indexed). Used for multiple sensor inputs + Id uint8 `mavext:"true"` +} + +// GetID implements the msg.Message interface. +func (*MessageHilSensor) GetID() uint32 { + return 107 +} diff --git a/pkg/dialects/storm32/msg_hil_state.go b/pkg/dialects/storm32/msg_hil_state.go new file mode 100644 index 000000000..b7a4f0668 --- /dev/null +++ b/pkg/dialects/storm32/msg_hil_state.go @@ -0,0 +1,44 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// Sent from simulation to autopilot. This packet is useful for high throughput applications such as hardware in the loop simulations. +type MessageHilState struct { + // Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. + TimeUsec uint64 + // Roll angle + Roll float32 + // Pitch angle + Pitch float32 + // Yaw angle + Yaw float32 + // Body frame roll / phi angular speed + Rollspeed float32 + // Body frame pitch / theta angular speed + Pitchspeed float32 + // Body frame yaw / psi angular speed + Yawspeed float32 + // Latitude + Lat int32 + // Longitude + Lon int32 + // Altitude + Alt int32 + // Ground X Speed (Latitude) + Vx int16 + // Ground Y Speed (Longitude) + Vy int16 + // Ground Z Speed (Altitude) + Vz int16 + // X acceleration + Xacc int16 + // Y acceleration + Yacc int16 + // Z acceleration + Zacc int16 +} + +// GetID implements the msg.Message interface. +func (*MessageHilState) GetID() uint32 { + return 90 +} diff --git a/pkg/dialects/storm32/msg_hil_state_quaternion.go b/pkg/dialects/storm32/msg_hil_state_quaternion.go new file mode 100644 index 000000000..7339839f9 --- /dev/null +++ b/pkg/dialects/storm32/msg_hil_state_quaternion.go @@ -0,0 +1,44 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// Sent from simulation to autopilot, avoids in contrast to HIL_STATE singularities. This packet is useful for high throughput applications such as hardware in the loop simulations. +type MessageHilStateQuaternion struct { + // Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. + TimeUsec uint64 + // Vehicle attitude expressed as normalized quaternion in w, x, y, z order (with 1 0 0 0 being the null-rotation) + AttitudeQuaternion [4]float32 + // Body frame roll / phi angular speed + Rollspeed float32 + // Body frame pitch / theta angular speed + Pitchspeed float32 + // Body frame yaw / psi angular speed + Yawspeed float32 + // Latitude + Lat int32 + // Longitude + Lon int32 + // Altitude + Alt int32 + // Ground X Speed (Latitude) + Vx int16 + // Ground Y Speed (Longitude) + Vy int16 + // Ground Z Speed (Altitude) + Vz int16 + // Indicated airspeed + IndAirspeed uint16 + // True airspeed + TrueAirspeed uint16 + // X acceleration + Xacc int16 + // Y acceleration + Yacc int16 + // Z acceleration + Zacc int16 +} + +// GetID implements the msg.Message interface. +func (*MessageHilStateQuaternion) GetID() uint32 { + return 115 +} diff --git a/pkg/dialects/storm32/msg_home_position.go b/pkg/dialects/storm32/msg_home_position.go new file mode 100644 index 000000000..27c4f1ab2 --- /dev/null +++ b/pkg/dialects/storm32/msg_home_position.go @@ -0,0 +1,34 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// This message can be requested by sending the MAV_CMD_GET_HOME_POSITION command. The position the system will return to and land on. The position is set automatically by the system during the takeoff in case it was not explicitly set by the operator before or after. The global and local positions encode the position in the respective coordinate frames, while the q parameter encodes the orientation of the surface. Under normal conditions it describes the heading and terrain slope, which can be used by the aircraft to adjust the approach. The approach 3D vector describes the point to which the system should fly in normal flight mode and then perform a landing sequence along the vector. +type MessageHomePosition struct { + // Latitude (WGS84) + Latitude int32 + // Longitude (WGS84) + Longitude int32 + // Altitude (MSL). Positive for up. + Altitude int32 + // Local X position of this position in the local coordinate frame + X float32 + // Local Y position of this position in the local coordinate frame + Y float32 + // Local Z position of this position in the local coordinate frame + Z float32 + // World to surface normal and heading transformation of the takeoff position. Used to indicate the heading and slope of the ground + Q [4]float32 + // Local X position of the end of the approach vector. Multicopters should set this position based on their takeoff path. Grass-landing fixed wing aircraft should set it the same way as multicopters. Runway-landing fixed wing aircraft should set it to the opposite direction of the takeoff, assuming the takeoff happened from the threshold / touchdown zone. + ApproachX float32 + // Local Y position of the end of the approach vector. Multicopters should set this position based on their takeoff path. Grass-landing fixed wing aircraft should set it the same way as multicopters. Runway-landing fixed wing aircraft should set it to the opposite direction of the takeoff, assuming the takeoff happened from the threshold / touchdown zone. + ApproachY float32 + // Local Z position of the end of the approach vector. Multicopters should set this position based on their takeoff path. Grass-landing fixed wing aircraft should set it the same way as multicopters. Runway-landing fixed wing aircraft should set it to the opposite direction of the takeoff, assuming the takeoff happened from the threshold / touchdown zone. + ApproachZ float32 + // Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. + TimeUsec uint64 `mavext:"true"` +} + +// GetID implements the msg.Message interface. +func (*MessageHomePosition) GetID() uint32 { + return 242 +} diff --git a/pkg/dialects/storm32/msg_hwstatus.go b/pkg/dialects/storm32/msg_hwstatus.go new file mode 100644 index 000000000..a18ba33d3 --- /dev/null +++ b/pkg/dialects/storm32/msg_hwstatus.go @@ -0,0 +1,16 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// Status of key hardware. +type MessageHwstatus struct { + // Board voltage. + Vcc uint16 `mavname:"Vcc"` + // I2C error count. + I2cerr uint8 `mavname:"I2Cerr"` +} + +// GetID implements the msg.Message interface. +func (*MessageHwstatus) GetID() uint32 { + return 165 +} diff --git a/pkg/dialects/storm32/msg_hygrometer_sensor.go b/pkg/dialects/storm32/msg_hygrometer_sensor.go new file mode 100644 index 000000000..8899402bf --- /dev/null +++ b/pkg/dialects/storm32/msg_hygrometer_sensor.go @@ -0,0 +1,18 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// Temperature and humidity from hygrometer. +type MessageHygrometerSensor struct { + // Hygrometer ID + Id uint8 + // Temperature + Temperature int16 + // Humidity + Humidity uint16 +} + +// GetID implements the msg.Message interface. +func (*MessageHygrometerSensor) GetID() uint32 { + return 12920 +} diff --git a/pkg/dialects/storm32/msg_icarous_heartbeat.go b/pkg/dialects/storm32/msg_icarous_heartbeat.go new file mode 100644 index 000000000..1eb1f69ca --- /dev/null +++ b/pkg/dialects/storm32/msg_icarous_heartbeat.go @@ -0,0 +1,14 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// ICAROUS heartbeat +type MessageIcarousHeartbeat struct { + // See the FMS_STATE enum. + Status ICAROUS_FMS_STATE `mavenum:"uint8"` +} + +// GetID implements the msg.Message interface. +func (*MessageIcarousHeartbeat) GetID() uint32 { + return 42000 +} diff --git a/pkg/dialects/storm32/msg_icarous_kinematic_bands.go b/pkg/dialects/storm32/msg_icarous_kinematic_bands.go new file mode 100644 index 000000000..3de51d9c2 --- /dev/null +++ b/pkg/dialects/storm32/msg_icarous_kinematic_bands.go @@ -0,0 +1,44 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// Kinematic multi bands (track) output from Daidalus +type MessageIcarousKinematicBands struct { + // Number of track bands + Numbands int8 `mavname:"numBands"` + // See the TRACK_BAND_TYPES enum. + Type1 ICAROUS_TRACK_BAND_TYPES `mavenum:"uint8"` + // min angle (degrees) + Min1 float32 + // max angle (degrees) + Max1 float32 + // See the TRACK_BAND_TYPES enum. + Type2 ICAROUS_TRACK_BAND_TYPES `mavenum:"uint8"` + // min angle (degrees) + Min2 float32 + // max angle (degrees) + Max2 float32 + // See the TRACK_BAND_TYPES enum. + Type3 ICAROUS_TRACK_BAND_TYPES `mavenum:"uint8"` + // min angle (degrees) + Min3 float32 + // max angle (degrees) + Max3 float32 + // See the TRACK_BAND_TYPES enum. + Type4 ICAROUS_TRACK_BAND_TYPES `mavenum:"uint8"` + // min angle (degrees) + Min4 float32 + // max angle (degrees) + Max4 float32 + // See the TRACK_BAND_TYPES enum. + Type5 ICAROUS_TRACK_BAND_TYPES `mavenum:"uint8"` + // min angle (degrees) + Min5 float32 + // max angle (degrees) + Max5 float32 +} + +// GetID implements the msg.Message interface. +func (*MessageIcarousKinematicBands) GetID() uint32 { + return 42001 +} diff --git a/pkg/dialects/storm32/msg_isbd_link_status.go b/pkg/dialects/storm32/msg_isbd_link_status.go new file mode 100644 index 000000000..72655afa9 --- /dev/null +++ b/pkg/dialects/storm32/msg_isbd_link_status.go @@ -0,0 +1,28 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// Status of the Iridium SBD link. +type MessageIsbdLinkStatus struct { + // Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. + Timestamp uint64 + // Timestamp of the last successful sbd session. The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. + LastHeartbeat uint64 + // Number of failed SBD sessions. + FailedSessions uint16 + // Number of successful SBD sessions. + SuccessfulSessions uint16 + // Signal quality equal to the number of bars displayed on the ISU signal strength indicator. Range is 0 to 5, where 0 indicates no signal and 5 indicates maximum signal strength. + SignalQuality uint8 + // 1: Ring call pending, 0: No call pending. + RingPending uint8 + // 1: Transmission session pending, 0: No transmission session pending. + TxSessionPending uint8 + // 1: Receiving session pending, 0: No receiving session pending. + RxSessionPending uint8 +} + +// GetID implements the msg.Message interface. +func (*MessageIsbdLinkStatus) GetID() uint32 { + return 335 +} diff --git a/pkg/dialects/storm32/msg_landing_target.go b/pkg/dialects/storm32/msg_landing_target.go new file mode 100644 index 000000000..d3e82422f --- /dev/null +++ b/pkg/dialects/storm32/msg_landing_target.go @@ -0,0 +1,40 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// The location of a landing target. See: https://mavlink.io/en/services/landing_target.html +type MessageLandingTarget struct { + // Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. + TimeUsec uint64 + // The ID of the target if multiple targets are present + TargetNum uint8 + // Coordinate frame used for following fields. + Frame MAV_FRAME `mavenum:"uint8"` + // X-axis angular offset of the target from the center of the image + AngleX float32 + // Y-axis angular offset of the target from the center of the image + AngleY float32 + // Distance to the target from the vehicle + Distance float32 + // Size of target along x-axis + SizeX float32 + // Size of target along y-axis + SizeY float32 + // X Position of the landing target in MAV_FRAME + X float32 `mavext:"true"` + // Y Position of the landing target in MAV_FRAME + Y float32 `mavext:"true"` + // Z Position of the landing target in MAV_FRAME + Z float32 `mavext:"true"` + // Quaternion of landing target orientation (w, x, y, z order, zero-rotation is 1, 0, 0, 0) + Q [4]float32 `mavext:"true"` + // Type of landing target + Type LANDING_TARGET_TYPE `mavenum:"uint8" mavext:"true"` + // Boolean indicating whether the position fields (x, y, z, q, type) contain valid target position information (valid: 1, invalid: 0). Default is 0 (invalid). + PositionValid uint8 `mavext:"true"` +} + +// GetID implements the msg.Message interface. +func (*MessageLandingTarget) GetID() uint32 { + return 149 +} diff --git a/pkg/dialects/storm32/msg_led_control.go b/pkg/dialects/storm32/msg_led_control.go new file mode 100644 index 000000000..a687f2aa3 --- /dev/null +++ b/pkg/dialects/storm32/msg_led_control.go @@ -0,0 +1,24 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// Control vehicle LEDs. +type MessageLedControl struct { + // System ID. + TargetSystem uint8 + // Component ID. + TargetComponent uint8 + // Instance (LED instance to control or 255 for all LEDs). + Instance uint8 + // Pattern (see LED_PATTERN_ENUM). + Pattern uint8 + // Custom Byte Length. + CustomLen uint8 + // Custom Bytes. + CustomBytes [24]uint8 +} + +// GetID implements the msg.Message interface. +func (*MessageLedControl) GetID() uint32 { + return 186 +} diff --git a/pkg/dialects/storm32/msg_limits_status.go b/pkg/dialects/storm32/msg_limits_status.go new file mode 100644 index 000000000..d5455f3c7 --- /dev/null +++ b/pkg/dialects/storm32/msg_limits_status.go @@ -0,0 +1,30 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// Status of AP_Limits. Sent in extended status stream when AP_Limits is enabled. +type MessageLimitsStatus struct { + // State of AP_Limits. + LimitsState LIMITS_STATE `mavenum:"uint8"` + // Time (since boot) of last breach. + LastTrigger uint32 + // Time (since boot) of last recovery action. + LastAction uint32 + // Time (since boot) of last successful recovery. + LastRecovery uint32 + // Time (since boot) of last all-clear. + LastClear uint32 + // Number of fence breaches. + BreachCount uint16 + // AP_Limit_Module bitfield of enabled modules. + ModsEnabled LIMIT_MODULE `mavenum:"uint8"` + // AP_Limit_Module bitfield of required modules. + ModsRequired LIMIT_MODULE `mavenum:"uint8"` + // AP_Limit_Module bitfield of triggered modules. + ModsTriggered LIMIT_MODULE `mavenum:"uint8"` +} + +// GetID implements the msg.Message interface. +func (*MessageLimitsStatus) GetID() uint32 { + return 167 +} diff --git a/pkg/dialects/storm32/msg_link_node_status.go b/pkg/dialects/storm32/msg_link_node_status.go new file mode 100644 index 000000000..97e006560 --- /dev/null +++ b/pkg/dialects/storm32/msg_link_node_status.go @@ -0,0 +1,34 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// Status generated in each node in the communication chain and injected into MAVLink stream. +type MessageLinkNodeStatus struct { + // Timestamp (time since system boot). + Timestamp uint64 + // Remaining free transmit buffer space + TxBuf uint8 + // Remaining free receive buffer space + RxBuf uint8 + // Transmit rate + TxRate uint32 + // Receive rate + RxRate uint32 + // Number of bytes that could not be parsed correctly. + RxParseErr uint16 + // Transmit buffer overflows. This number wraps around as it reaches UINT16_MAX + TxOverflows uint16 + // Receive buffer overflows. This number wraps around as it reaches UINT16_MAX + RxOverflows uint16 + // Messages sent + MessagesSent uint32 + // Messages received (estimated from counting seq) + MessagesReceived uint32 + // Messages lost (estimated from counting seq) + MessagesLost uint32 +} + +// GetID implements the msg.Message interface. +func (*MessageLinkNodeStatus) GetID() uint32 { + return 8 +} diff --git a/pkg/dialects/storm32/msg_local_position_ned.go b/pkg/dialects/storm32/msg_local_position_ned.go new file mode 100644 index 000000000..8e080595c --- /dev/null +++ b/pkg/dialects/storm32/msg_local_position_ned.go @@ -0,0 +1,26 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// The filtered local position (e.g. fused computer vision and accelerometers). Coordinate frame is right-handed, Z-axis down (aeronautical frame, NED / north-east-down convention) +type MessageLocalPositionNed struct { + // Timestamp (time since system boot). + TimeBootMs uint32 + // X Position + X float32 + // Y Position + Y float32 + // Z Position + Z float32 + // X Speed + Vx float32 + // Y Speed + Vy float32 + // Z Speed + Vz float32 +} + +// GetID implements the msg.Message interface. +func (*MessageLocalPositionNed) GetID() uint32 { + return 32 +} diff --git a/pkg/dialects/storm32/msg_local_position_ned_cov.go b/pkg/dialects/storm32/msg_local_position_ned_cov.go new file mode 100644 index 000000000..c720c29fd --- /dev/null +++ b/pkg/dialects/storm32/msg_local_position_ned_cov.go @@ -0,0 +1,36 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// The filtered local position (e.g. fused computer vision and accelerometers). Coordinate frame is right-handed, Z-axis down (aeronautical frame, NED / north-east-down convention) +type MessageLocalPositionNedCov struct { + // Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. + TimeUsec uint64 + // Class id of the estimator this estimate originated from. + EstimatorType MAV_ESTIMATOR_TYPE `mavenum:"uint8"` + // X Position + X float32 + // Y Position + Y float32 + // Z Position + Z float32 + // X Speed + Vx float32 + // Y Speed + Vy float32 + // Z Speed + Vz float32 + // X Acceleration + Ax float32 + // Y Acceleration + Ay float32 + // Z Acceleration + Az float32 + // Row-major representation of position, velocity and acceleration 9x9 cross-covariance matrix upper right triangle (states: x, y, z, vx, vy, vz, ax, ay, az; first nine entries are the first ROW, next eight entries are the second row, etc.). If unknown, assign NaN value to first element in the array. + Covariance [45]float32 +} + +// GetID implements the msg.Message interface. +func (*MessageLocalPositionNedCov) GetID() uint32 { + return 64 +} diff --git a/pkg/dialects/storm32/msg_local_position_ned_system_global_offset.go b/pkg/dialects/storm32/msg_local_position_ned_system_global_offset.go new file mode 100644 index 000000000..275029104 --- /dev/null +++ b/pkg/dialects/storm32/msg_local_position_ned_system_global_offset.go @@ -0,0 +1,26 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// The offset in X, Y, Z and yaw between the LOCAL_POSITION_NED messages of MAV X and the global coordinate frame in NED coordinates. Coordinate frame is right-handed, Z-axis down (aeronautical frame, NED / north-east-down convention) +type MessageLocalPositionNedSystemGlobalOffset struct { + // Timestamp (time since system boot). + TimeBootMs uint32 + // X Position + X float32 + // Y Position + Y float32 + // Z Position + Z float32 + // Roll + Roll float32 + // Pitch + Pitch float32 + // Yaw + Yaw float32 +} + +// GetID implements the msg.Message interface. +func (*MessageLocalPositionNedSystemGlobalOffset) GetID() uint32 { + return 89 +} diff --git a/pkg/dialects/storm32/msg_log_data.go b/pkg/dialects/storm32/msg_log_data.go new file mode 100644 index 000000000..cf73f8307 --- /dev/null +++ b/pkg/dialects/storm32/msg_log_data.go @@ -0,0 +1,20 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// Reply to LOG_REQUEST_DATA +type MessageLogData struct { + // Log id (from LOG_ENTRY reply) + Id uint16 + // Offset into the log + Ofs uint32 + // Number of bytes (zero for end of log) + Count uint8 + // log data + Data [90]uint8 +} + +// GetID implements the msg.Message interface. +func (*MessageLogData) GetID() uint32 { + return 120 +} diff --git a/pkg/dialects/storm32/msg_log_entry.go b/pkg/dialects/storm32/msg_log_entry.go new file mode 100644 index 000000000..b163c6561 --- /dev/null +++ b/pkg/dialects/storm32/msg_log_entry.go @@ -0,0 +1,22 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// Reply to LOG_REQUEST_LIST +type MessageLogEntry struct { + // Log id + Id uint16 + // Total number of logs + NumLogs uint16 + // High log number + LastLogNum uint16 + // UTC timestamp of log since 1970, or 0 if not available + TimeUtc uint32 + // Size of the log (may be approximate) + Size uint32 +} + +// GetID implements the msg.Message interface. +func (*MessageLogEntry) GetID() uint32 { + return 118 +} diff --git a/pkg/dialects/storm32/msg_log_erase.go b/pkg/dialects/storm32/msg_log_erase.go new file mode 100644 index 000000000..f6031243c --- /dev/null +++ b/pkg/dialects/storm32/msg_log_erase.go @@ -0,0 +1,16 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// Erase all logs +type MessageLogErase struct { + // System ID + TargetSystem uint8 + // Component ID + TargetComponent uint8 +} + +// GetID implements the msg.Message interface. +func (*MessageLogErase) GetID() uint32 { + return 121 +} diff --git a/pkg/dialects/storm32/msg_log_request_data.go b/pkg/dialects/storm32/msg_log_request_data.go new file mode 100644 index 000000000..68b0b8e36 --- /dev/null +++ b/pkg/dialects/storm32/msg_log_request_data.go @@ -0,0 +1,22 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// Request a chunk of a log +type MessageLogRequestData struct { + // System ID + TargetSystem uint8 + // Component ID + TargetComponent uint8 + // Log id (from LOG_ENTRY reply) + Id uint16 + // Offset into the log + Ofs uint32 + // Number of bytes + Count uint32 +} + +// GetID implements the msg.Message interface. +func (*MessageLogRequestData) GetID() uint32 { + return 119 +} diff --git a/pkg/dialects/storm32/msg_log_request_end.go b/pkg/dialects/storm32/msg_log_request_end.go new file mode 100644 index 000000000..31a311413 --- /dev/null +++ b/pkg/dialects/storm32/msg_log_request_end.go @@ -0,0 +1,16 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// Stop log transfer and resume normal logging +type MessageLogRequestEnd struct { + // System ID + TargetSystem uint8 + // Component ID + TargetComponent uint8 +} + +// GetID implements the msg.Message interface. +func (*MessageLogRequestEnd) GetID() uint32 { + return 122 +} diff --git a/pkg/dialects/storm32/msg_log_request_list.go b/pkg/dialects/storm32/msg_log_request_list.go new file mode 100644 index 000000000..cb94e8845 --- /dev/null +++ b/pkg/dialects/storm32/msg_log_request_list.go @@ -0,0 +1,20 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// Request a list of available logs. On some systems calling this may stop on-board logging until LOG_REQUEST_END is called. If there are no log files available this request shall be answered with one LOG_ENTRY message with id = 0 and num_logs = 0. +type MessageLogRequestList struct { + // System ID + TargetSystem uint8 + // Component ID + TargetComponent uint8 + // First log id (0 for first available) + Start uint16 + // Last log id (0xffff for last available) + End uint16 +} + +// GetID implements the msg.Message interface. +func (*MessageLogRequestList) GetID() uint32 { + return 117 +} diff --git a/pkg/dialects/storm32/msg_logging_ack.go b/pkg/dialects/storm32/msg_logging_ack.go new file mode 100644 index 000000000..063765570 --- /dev/null +++ b/pkg/dialects/storm32/msg_logging_ack.go @@ -0,0 +1,18 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// An ack for a LOGGING_DATA_ACKED message +type MessageLoggingAck struct { + // system ID of the target + TargetSystem uint8 + // component ID of the target + TargetComponent uint8 + // sequence number (must match the one in LOGGING_DATA_ACKED) + Sequence uint16 +} + +// GetID implements the msg.Message interface. +func (*MessageLoggingAck) GetID() uint32 { + return 268 +} diff --git a/pkg/dialects/storm32/msg_logging_data.go b/pkg/dialects/storm32/msg_logging_data.go new file mode 100644 index 000000000..8ad3fcab2 --- /dev/null +++ b/pkg/dialects/storm32/msg_logging_data.go @@ -0,0 +1,24 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// A message containing logged data (see also MAV_CMD_LOGGING_START) +type MessageLoggingData struct { + // system ID of the target + TargetSystem uint8 + // component ID of the target + TargetComponent uint8 + // sequence number (can wrap) + Sequence uint16 + // data length + Length uint8 + // offset into data where first message starts. This can be used for recovery, when a previous message got lost (set to UINT8_MAX if no start exists). + FirstMessageOffset uint8 + // logged data + Data [249]uint8 +} + +// GetID implements the msg.Message interface. +func (*MessageLoggingData) GetID() uint32 { + return 266 +} diff --git a/pkg/dialects/storm32/msg_logging_data_acked.go b/pkg/dialects/storm32/msg_logging_data_acked.go new file mode 100644 index 000000000..130fb1e19 --- /dev/null +++ b/pkg/dialects/storm32/msg_logging_data_acked.go @@ -0,0 +1,24 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// A message containing logged data which requires a LOGGING_ACK to be sent back +type MessageLoggingDataAcked struct { + // system ID of the target + TargetSystem uint8 + // component ID of the target + TargetComponent uint8 + // sequence number (can wrap) + Sequence uint16 + // data length + Length uint8 + // offset into data where first message starts. This can be used for recovery, when a previous message got lost (set to UINT8_MAX if no start exists). + FirstMessageOffset uint8 + // logged data + Data [249]uint8 +} + +// GetID implements the msg.Message interface. +func (*MessageLoggingDataAcked) GetID() uint32 { + return 267 +} diff --git a/pkg/dialects/storm32/msg_mag_cal_progress.go b/pkg/dialects/storm32/msg_mag_cal_progress.go new file mode 100644 index 000000000..5e4c74c96 --- /dev/null +++ b/pkg/dialects/storm32/msg_mag_cal_progress.go @@ -0,0 +1,30 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// Reports progress of compass calibration. +type MessageMagCalProgress struct { + // Compass being calibrated. + CompassId uint8 + // Bitmask of compasses being calibrated. + CalMask uint8 + // Calibration Status. + CalStatus MAG_CAL_STATUS `mavenum:"uint8"` + // Attempt number. + Attempt uint8 + // Completion percentage. + CompletionPct uint8 + // Bitmask of sphere sections (see http://en.wikipedia.org/wiki/Geodesic_grid). + CompletionMask [10]uint8 + // Body frame direction vector for display. + DirectionX float32 + // Body frame direction vector for display. + DirectionY float32 + // Body frame direction vector for display. + DirectionZ float32 +} + +// GetID implements the msg.Message interface. +func (*MessageMagCalProgress) GetID() uint32 { + return 191 +} diff --git a/pkg/dialects/storm32/msg_mag_cal_report.go b/pkg/dialects/storm32/msg_mag_cal_report.go new file mode 100644 index 000000000..711d5b050 --- /dev/null +++ b/pkg/dialects/storm32/msg_mag_cal_report.go @@ -0,0 +1,48 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// Reports results of completed compass calibration. Sent until MAG_CAL_ACK received. +type MessageMagCalReport struct { + // Compass being calibrated. + CompassId uint8 + // Bitmask of compasses being calibrated. + CalMask uint8 + // Calibration Status. + CalStatus MAG_CAL_STATUS `mavenum:"uint8"` + // 0=requires a MAV_CMD_DO_ACCEPT_MAG_CAL, 1=saved to parameters. + Autosaved uint8 + // RMS milligauss residuals. + Fitness float32 + // X offset. + OfsX float32 + // Y offset. + OfsY float32 + // Z offset. + OfsZ float32 + // X diagonal (matrix 11). + DiagX float32 + // Y diagonal (matrix 22). + DiagY float32 + // Z diagonal (matrix 33). + DiagZ float32 + // X off-diagonal (matrix 12 and 21). + OffdiagX float32 + // Y off-diagonal (matrix 13 and 31). + OffdiagY float32 + // Z off-diagonal (matrix 32 and 23). + OffdiagZ float32 + // Confidence in orientation (higher is better). + OrientationConfidence float32 `mavext:"true"` + // orientation before calibration. + OldOrientation MAV_SENSOR_ORIENTATION `mavenum:"uint8" mavext:"true"` + // orientation after calibration. + NewOrientation MAV_SENSOR_ORIENTATION `mavenum:"uint8" mavext:"true"` + // field radius correction factor + ScaleFactor float32 `mavext:"true"` +} + +// GetID implements the msg.Message interface. +func (*MessageMagCalReport) GetID() uint32 { + return 192 +} diff --git a/pkg/dialects/storm32/msg_manual_control.go b/pkg/dialects/storm32/msg_manual_control.go new file mode 100644 index 000000000..2c57824f5 --- /dev/null +++ b/pkg/dialects/storm32/msg_manual_control.go @@ -0,0 +1,32 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// This message provides an API for manually controlling the vehicle using standard joystick axes nomenclature, along with a joystick-like input device. Unused axes can be disabled and buttons states are transmitted as individual on/off bits of a bitmask +type MessageManualControl struct { + // The system to be controlled. + Target uint8 + // X-axis, normalized to the range [-1000,1000]. A value of INT16_MAX indicates that this axis is invalid. Generally corresponds to forward(1000)-backward(-1000) movement on a joystick and the pitch of a vehicle. + X int16 + // Y-axis, normalized to the range [-1000,1000]. A value of INT16_MAX indicates that this axis is invalid. Generally corresponds to left(-1000)-right(1000) movement on a joystick and the roll of a vehicle. + Y int16 + // Z-axis, normalized to the range [-1000,1000]. A value of INT16_MAX indicates that this axis is invalid. Generally corresponds to a separate slider movement with maximum being 1000 and minimum being -1000 on a joystick and the thrust of a vehicle. Positive values are positive thrust, negative values are negative thrust. + Z int16 + // R-axis, normalized to the range [-1000,1000]. A value of INT16_MAX indicates that this axis is invalid. Generally corresponds to a twisting of the joystick, with counter-clockwise being 1000 and clockwise being -1000, and the yaw of a vehicle. + R int16 + // A bitfield corresponding to the joystick buttons' 0-15 current state, 1 for pressed, 0 for released. The lowest bit corresponds to Button 1. + Buttons uint16 + // A bitfield corresponding to the joystick buttons' 16-31 current state, 1 for pressed, 0 for released. The lowest bit corresponds to Button 16. + Buttons2 uint16 `mavext:"true"` + // Set bits to 1 to indicate which of the following extension fields contain valid data: bit 0: pitch, bit 1: roll. + EnabledExtensions uint8 `mavext:"true"` + // Pitch-only-axis, normalized to the range [-1000,1000]. Generally corresponds to pitch on vehicles with additional degrees of freedom. Valid if bit 0 of enabled_extensions field is set. Set to 0 if invalid. + S int16 `mavext:"true"` + // Roll-only-axis, normalized to the range [-1000,1000]. Generally corresponds to roll on vehicles with additional degrees of freedom. Valid if bit 1 of enabled_extensions field is set. Set to 0 if invalid. + T int16 `mavext:"true"` +} + +// GetID implements the msg.Message interface. +func (*MessageManualControl) GetID() uint32 { + return 69 +} diff --git a/pkg/dialects/storm32/msg_manual_setpoint.go b/pkg/dialects/storm32/msg_manual_setpoint.go new file mode 100644 index 000000000..4b7c2befe --- /dev/null +++ b/pkg/dialects/storm32/msg_manual_setpoint.go @@ -0,0 +1,26 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// Setpoint in roll, pitch, yaw and thrust from the operator +type MessageManualSetpoint struct { + // Timestamp (time since system boot). + TimeBootMs uint32 + // Desired roll rate + Roll float32 + // Desired pitch rate + Pitch float32 + // Desired yaw rate + Yaw float32 + // Collective thrust, normalized to 0 .. 1 + Thrust float32 + // Flight mode switch position, 0.. 255 + ModeSwitch uint8 + // Override mode switch position, 0.. 255 + ManualOverrideSwitch uint8 +} + +// GetID implements the msg.Message interface. +func (*MessageManualSetpoint) GetID() uint32 { + return 81 +} diff --git a/pkg/dialects/storm32/msg_mcu_status.go b/pkg/dialects/storm32/msg_mcu_status.go new file mode 100644 index 000000000..5839515a4 --- /dev/null +++ b/pkg/dialects/storm32/msg_mcu_status.go @@ -0,0 +1,22 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// The MCU status, giving MCU temperature and voltage. The min and max voltages are to allow for detecting power supply instability. +type MessageMcuStatus struct { + // MCU instance + Id uint8 + // MCU Internal temperature + McuTemperature int16 `mavname:"MCU_temperature"` + // MCU voltage + McuVoltage uint16 `mavname:"MCU_voltage"` + // MCU voltage minimum + McuVoltageMin uint16 `mavname:"MCU_voltage_min"` + // MCU voltage maximum + McuVoltageMax uint16 `mavname:"MCU_voltage_max"` +} + +// GetID implements the msg.Message interface. +func (*MessageMcuStatus) GetID() uint32 { + return 11039 +} diff --git a/pkg/dialects/storm32/msg_meminfo.go b/pkg/dialects/storm32/msg_meminfo.go new file mode 100644 index 000000000..506a97acb --- /dev/null +++ b/pkg/dialects/storm32/msg_meminfo.go @@ -0,0 +1,18 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// State of autopilot RAM. +type MessageMeminfo struct { + // Heap top. + Brkval uint16 + // Free memory. + Freemem uint16 + // Free memory (32 bit). + Freemem32 uint32 `mavext:"true"` +} + +// GetID implements the msg.Message interface. +func (*MessageMeminfo) GetID() uint32 { + return 152 +} diff --git a/pkg/dialects/storm32/msg_memory_vect.go b/pkg/dialects/storm32/msg_memory_vect.go new file mode 100644 index 000000000..3f7b92574 --- /dev/null +++ b/pkg/dialects/storm32/msg_memory_vect.go @@ -0,0 +1,20 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// Send raw controller memory. The use of this message is discouraged for normal packets, but a quite efficient way for testing new messages and getting experimental debug output. +type MessageMemoryVect struct { + // Starting address of the debug variables + Address uint16 + // Version code of the type variable. 0=unknown, type ignored and assumed int16_t. 1=as below + Ver uint8 + // Type code of the memory variables. for ver = 1: 0=16 x int16_t, 1=16 x uint16_t, 2=16 x Q15, 3=16 x 1Q14 + Type uint8 + // Memory contents at specified address + Value [32]int8 +} + +// GetID implements the msg.Message interface. +func (*MessageMemoryVect) GetID() uint32 { + return 249 +} diff --git a/pkg/dialects/storm32/msg_message_interval.go b/pkg/dialects/storm32/msg_message_interval.go new file mode 100644 index 000000000..4fcafe4e9 --- /dev/null +++ b/pkg/dialects/storm32/msg_message_interval.go @@ -0,0 +1,16 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// The interval between messages for a particular MAVLink message ID. This message is the response to the MAV_CMD_GET_MESSAGE_INTERVAL command. This interface replaces DATA_STREAM. +type MessageMessageInterval struct { + // The ID of the requested MAVLink message. v1.0 is limited to 254 messages. + MessageId uint16 + // The interval between two messages. A value of -1 indicates this stream is disabled, 0 indicates it is not available, > 0 indicates the interval at which it is sent. + IntervalUs int32 +} + +// GetID implements the msg.Message interface. +func (*MessageMessageInterval) GetID() uint32 { + return 244 +} diff --git a/pkg/dialects/storm32/msg_mission_ack.go b/pkg/dialects/storm32/msg_mission_ack.go new file mode 100644 index 000000000..bfc3d3bb9 --- /dev/null +++ b/pkg/dialects/storm32/msg_mission_ack.go @@ -0,0 +1,20 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// Acknowledgment message during waypoint handling. The type field states if this message is a positive ack (type=0) or if an error happened (type=non-zero). +type MessageMissionAck struct { + // System ID + TargetSystem uint8 + // Component ID + TargetComponent uint8 + // Mission result. + Type MAV_MISSION_RESULT `mavenum:"uint8"` + // Mission type. + MissionType MAV_MISSION_TYPE `mavenum:"uint8" mavext:"true"` +} + +// GetID implements the msg.Message interface. +func (*MessageMissionAck) GetID() uint32 { + return 47 +} diff --git a/pkg/dialects/storm32/msg_mission_clear_all.go b/pkg/dialects/storm32/msg_mission_clear_all.go new file mode 100644 index 000000000..87caef8f8 --- /dev/null +++ b/pkg/dialects/storm32/msg_mission_clear_all.go @@ -0,0 +1,18 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// Delete all mission items at once. +type MessageMissionClearAll struct { + // System ID + TargetSystem uint8 + // Component ID + TargetComponent uint8 + // Mission type. + MissionType MAV_MISSION_TYPE `mavenum:"uint8" mavext:"true"` +} + +// GetID implements the msg.Message interface. +func (*MessageMissionClearAll) GetID() uint32 { + return 45 +} diff --git a/pkg/dialects/storm32/msg_mission_count.go b/pkg/dialects/storm32/msg_mission_count.go new file mode 100644 index 000000000..b57a18f50 --- /dev/null +++ b/pkg/dialects/storm32/msg_mission_count.go @@ -0,0 +1,20 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// This message is emitted as response to MISSION_REQUEST_LIST by the MAV and to initiate a write transaction. The GCS can then request the individual mission item based on the knowledge of the total number of waypoints. +type MessageMissionCount struct { + // System ID + TargetSystem uint8 + // Component ID + TargetComponent uint8 + // Number of mission items in the sequence + Count uint16 + // Mission type. + MissionType MAV_MISSION_TYPE `mavenum:"uint8" mavext:"true"` +} + +// GetID implements the msg.Message interface. +func (*MessageMissionCount) GetID() uint32 { + return 44 +} diff --git a/pkg/dialects/storm32/msg_mission_current.go b/pkg/dialects/storm32/msg_mission_current.go new file mode 100644 index 000000000..fecab8664 --- /dev/null +++ b/pkg/dialects/storm32/msg_mission_current.go @@ -0,0 +1,14 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// Message that announces the sequence number of the current active mission item. The MAV will fly towards this mission item. +type MessageMissionCurrent struct { + // Sequence + Seq uint16 +} + +// GetID implements the msg.Message interface. +func (*MessageMissionCurrent) GetID() uint32 { + return 42 +} diff --git a/pkg/dialects/storm32/msg_mission_item.go b/pkg/dialects/storm32/msg_mission_item.go new file mode 100644 index 000000000..6d23afa9e --- /dev/null +++ b/pkg/dialects/storm32/msg_mission_item.go @@ -0,0 +1,43 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// Message encoding a mission item. This message is emitted to announce +// the presence of a mission item and to set a mission item on the system. The mission item can be either in x, y, z meters (type: LOCAL) or x:lat, y:lon, z:altitude. Local frame is Z-down, right handed (NED), global frame is Z-up, right handed (ENU). NaN may be used to indicate an optional/default value (e.g. to use the system's current latitude or yaw rather than a specific value). See also https://mavlink.io/en/services/mission.html. +type MessageMissionItem struct { + // System ID + TargetSystem uint8 + // Component ID + TargetComponent uint8 + // Sequence + Seq uint16 + // The coordinate system of the waypoint. + Frame MAV_FRAME `mavenum:"uint8"` + // The scheduled action for the waypoint. + Command MAV_CMD `mavenum:"uint16"` + // false:0, true:1 + Current uint8 + // Autocontinue to next waypoint + Autocontinue uint8 + // PARAM1, see MAV_CMD enum + Param1 float32 + // PARAM2, see MAV_CMD enum + Param2 float32 + // PARAM3, see MAV_CMD enum + Param3 float32 + // PARAM4, see MAV_CMD enum + Param4 float32 + // PARAM5 / local: X coordinate, global: latitude + X float32 + // PARAM6 / local: Y coordinate, global: longitude + Y float32 + // PARAM7 / local: Z coordinate, global: altitude (relative or absolute, depending on frame). + Z float32 + // Mission type. + MissionType MAV_MISSION_TYPE `mavenum:"uint8" mavext:"true"` +} + +// GetID implements the msg.Message interface. +func (*MessageMissionItem) GetID() uint32 { + return 39 +} diff --git a/pkg/dialects/storm32/msg_mission_item_int.go b/pkg/dialects/storm32/msg_mission_item_int.go new file mode 100644 index 000000000..8b3dc7982 --- /dev/null +++ b/pkg/dialects/storm32/msg_mission_item_int.go @@ -0,0 +1,43 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// Message encoding a mission item. This message is emitted to announce +// the presence of a mission item and to set a mission item on the system. The mission item can be either in x, y, z meters (type: LOCAL) or x:lat, y:lon, z:altitude. Local frame is Z-down, right handed (NED), global frame is Z-up, right handed (ENU). NaN or INT32_MAX may be used in float/integer params (respectively) to indicate optional/default values (e.g. to use the component's current latitude, yaw rather than a specific value). See also https://mavlink.io/en/services/mission.html. +type MessageMissionItemInt struct { + // System ID + TargetSystem uint8 + // Component ID + TargetComponent uint8 + // Waypoint ID (sequence number). Starts at zero. Increases monotonically for each waypoint, no gaps in the sequence (0,1,2,3,4). + Seq uint16 + // The coordinate system of the waypoint. + Frame MAV_FRAME `mavenum:"uint8"` + // The scheduled action for the waypoint. + Command MAV_CMD `mavenum:"uint16"` + // false:0, true:1 + Current uint8 + // Autocontinue to next waypoint + Autocontinue uint8 + // PARAM1, see MAV_CMD enum + Param1 float32 + // PARAM2, see MAV_CMD enum + Param2 float32 + // PARAM3, see MAV_CMD enum + Param3 float32 + // PARAM4, see MAV_CMD enum + Param4 float32 + // PARAM5 / local: x position in meters * 1e4, global: latitude in degrees * 10^7 + X int32 + // PARAM6 / y position: local: x position in meters * 1e4, global: longitude in degrees *10^7 + Y int32 + // PARAM7 / z position: global: altitude in meters (relative or absolute, depending on frame. + Z float32 + // Mission type. + MissionType MAV_MISSION_TYPE `mavenum:"uint8" mavext:"true"` +} + +// GetID implements the msg.Message interface. +func (*MessageMissionItemInt) GetID() uint32 { + return 73 +} diff --git a/pkg/dialects/storm32/msg_mission_item_reached.go b/pkg/dialects/storm32/msg_mission_item_reached.go new file mode 100644 index 000000000..2413cdabe --- /dev/null +++ b/pkg/dialects/storm32/msg_mission_item_reached.go @@ -0,0 +1,14 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// A certain mission item has been reached. The system will either hold this position (or circle on the orbit) or (if the autocontinue on the WP was set) continue to the next waypoint. +type MessageMissionItemReached struct { + // Sequence + Seq uint16 +} + +// GetID implements the msg.Message interface. +func (*MessageMissionItemReached) GetID() uint32 { + return 46 +} diff --git a/pkg/dialects/storm32/msg_mission_request.go b/pkg/dialects/storm32/msg_mission_request.go new file mode 100644 index 000000000..d669628a0 --- /dev/null +++ b/pkg/dialects/storm32/msg_mission_request.go @@ -0,0 +1,20 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// Request the information of the mission item with the sequence number seq. The response of the system to this message should be a MISSION_ITEM message. https://mavlink.io/en/services/mission.html +type MessageMissionRequest struct { + // System ID + TargetSystem uint8 + // Component ID + TargetComponent uint8 + // Sequence + Seq uint16 + // Mission type. + MissionType MAV_MISSION_TYPE `mavenum:"uint8" mavext:"true"` +} + +// GetID implements the msg.Message interface. +func (*MessageMissionRequest) GetID() uint32 { + return 40 +} diff --git a/pkg/dialects/storm32/msg_mission_request_int.go b/pkg/dialects/storm32/msg_mission_request_int.go new file mode 100644 index 000000000..87b66a726 --- /dev/null +++ b/pkg/dialects/storm32/msg_mission_request_int.go @@ -0,0 +1,20 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// Request the information of the mission item with the sequence number seq. The response of the system to this message should be a MISSION_ITEM_INT message. https://mavlink.io/en/services/mission.html +type MessageMissionRequestInt struct { + // System ID + TargetSystem uint8 + // Component ID + TargetComponent uint8 + // Sequence + Seq uint16 + // Mission type. + MissionType MAV_MISSION_TYPE `mavenum:"uint8" mavext:"true"` +} + +// GetID implements the msg.Message interface. +func (*MessageMissionRequestInt) GetID() uint32 { + return 51 +} diff --git a/pkg/dialects/storm32/msg_mission_request_list.go b/pkg/dialects/storm32/msg_mission_request_list.go new file mode 100644 index 000000000..8a014441c --- /dev/null +++ b/pkg/dialects/storm32/msg_mission_request_list.go @@ -0,0 +1,18 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// Request the overall list of mission items from the system/component. +type MessageMissionRequestList struct { + // System ID + TargetSystem uint8 + // Component ID + TargetComponent uint8 + // Mission type. + MissionType MAV_MISSION_TYPE `mavenum:"uint8" mavext:"true"` +} + +// GetID implements the msg.Message interface. +func (*MessageMissionRequestList) GetID() uint32 { + return 43 +} diff --git a/pkg/dialects/storm32/msg_mission_request_partial_list.go b/pkg/dialects/storm32/msg_mission_request_partial_list.go new file mode 100644 index 000000000..96241958a --- /dev/null +++ b/pkg/dialects/storm32/msg_mission_request_partial_list.go @@ -0,0 +1,22 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// Request a partial list of mission items from the system/component. https://mavlink.io/en/services/mission.html. If start and end index are the same, just send one waypoint. +type MessageMissionRequestPartialList struct { + // System ID + TargetSystem uint8 + // Component ID + TargetComponent uint8 + // Start index + StartIndex int16 + // End index, -1 by default (-1: send list to end). Else a valid index of the list + EndIndex int16 + // Mission type. + MissionType MAV_MISSION_TYPE `mavenum:"uint8" mavext:"true"` +} + +// GetID implements the msg.Message interface. +func (*MessageMissionRequestPartialList) GetID() uint32 { + return 37 +} diff --git a/pkg/dialects/storm32/msg_mission_set_current.go b/pkg/dialects/storm32/msg_mission_set_current.go new file mode 100644 index 000000000..804a10d7e --- /dev/null +++ b/pkg/dialects/storm32/msg_mission_set_current.go @@ -0,0 +1,18 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// Set the mission item with sequence number seq as current item. This means that the MAV will continue to this mission item on the shortest path (not following the mission items in-between). +type MessageMissionSetCurrent struct { + // System ID + TargetSystem uint8 + // Component ID + TargetComponent uint8 + // Sequence + Seq uint16 +} + +// GetID implements the msg.Message interface. +func (*MessageMissionSetCurrent) GetID() uint32 { + return 41 +} diff --git a/pkg/dialects/storm32/msg_mission_write_partial_list.go b/pkg/dialects/storm32/msg_mission_write_partial_list.go new file mode 100644 index 000000000..4bd62ce7d --- /dev/null +++ b/pkg/dialects/storm32/msg_mission_write_partial_list.go @@ -0,0 +1,22 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// This message is sent to the MAV to write a partial list. If start index == end index, only one item will be transmitted / updated. If the start index is NOT 0 and above the current list size, this request should be REJECTED! +type MessageMissionWritePartialList struct { + // System ID + TargetSystem uint8 + // Component ID + TargetComponent uint8 + // Start index. Must be smaller / equal to the largest index of the current onboard list. + StartIndex int16 + // End index, equal or greater than start index. + EndIndex int16 + // Mission type. + MissionType MAV_MISSION_TYPE `mavenum:"uint8" mavext:"true"` +} + +// GetID implements the msg.Message interface. +func (*MessageMissionWritePartialList) GetID() uint32 { + return 38 +} diff --git a/pkg/dialects/storm32/msg_mount_configure.go b/pkg/dialects/storm32/msg_mount_configure.go new file mode 100644 index 000000000..f7a27cfcb --- /dev/null +++ b/pkg/dialects/storm32/msg_mount_configure.go @@ -0,0 +1,24 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// Message to configure a camera mount, directional antenna, etc. +type MessageMountConfigure struct { + // System ID. + TargetSystem uint8 + // Component ID. + TargetComponent uint8 + // Mount operating mode. + MountMode MAV_MOUNT_MODE `mavenum:"uint8"` + // (1 = yes, 0 = no). + StabRoll uint8 + // (1 = yes, 0 = no). + StabPitch uint8 + // (1 = yes, 0 = no). + StabYaw uint8 +} + +// GetID implements the msg.Message interface. +func (*MessageMountConfigure) GetID() uint32 { + return 156 +} diff --git a/pkg/dialects/storm32/msg_mount_control.go b/pkg/dialects/storm32/msg_mount_control.go new file mode 100644 index 000000000..07635098c --- /dev/null +++ b/pkg/dialects/storm32/msg_mount_control.go @@ -0,0 +1,24 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// Message to control a camera mount, directional antenna, etc. +type MessageMountControl struct { + // System ID. + TargetSystem uint8 + // Component ID. + TargetComponent uint8 + // Pitch (centi-degrees) or lat (degE7), depending on mount mode. + InputA int32 + // Roll (centi-degrees) or lon (degE7) depending on mount mode. + InputB int32 + // Yaw (centi-degrees) or alt (cm) depending on mount mode. + InputC int32 + // If "1" it will save current trimmed position on EEPROM (just valid for NEUTRAL and LANDING). + SavePosition uint8 +} + +// GetID implements the msg.Message interface. +func (*MessageMountControl) GetID() uint32 { + return 157 +} diff --git a/pkg/dialects/storm32/msg_mount_orientation.go b/pkg/dialects/storm32/msg_mount_orientation.go new file mode 100644 index 000000000..cee208b46 --- /dev/null +++ b/pkg/dialects/storm32/msg_mount_orientation.go @@ -0,0 +1,22 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// Orientation of a mount +type MessageMountOrientation struct { + // Timestamp (time since system boot). + TimeBootMs uint32 + // Roll in global frame (set to NaN for invalid). + Roll float32 + // Pitch in global frame (set to NaN for invalid). + Pitch float32 + // Yaw relative to vehicle (set to NaN for invalid). + Yaw float32 + // Yaw in absolute frame relative to Earth's North, north is 0 (set to NaN for invalid). + YawAbsolute float32 `mavext:"true"` +} + +// GetID implements the msg.Message interface. +func (*MessageMountOrientation) GetID() uint32 { + return 265 +} diff --git a/pkg/dialects/storm32/msg_mount_status.go b/pkg/dialects/storm32/msg_mount_status.go new file mode 100644 index 000000000..a790c56bf --- /dev/null +++ b/pkg/dialects/storm32/msg_mount_status.go @@ -0,0 +1,24 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// Message with some status from autopilot to GCS about camera or antenna mount. +type MessageMountStatus struct { + // System ID. + TargetSystem uint8 + // Component ID. + TargetComponent uint8 + // Pitch. + PointingA int32 + // Roll. + PointingB int32 + // Yaw. + PointingC int32 + // Mount operating mode. + MountMode MAV_MOUNT_MODE `mavenum:"uint8" mavext:"true"` +} + +// GetID implements the msg.Message interface. +func (*MessageMountStatus) GetID() uint32 { + return 158 +} diff --git a/pkg/dialects/storm32/msg_named_value_float.go b/pkg/dialects/storm32/msg_named_value_float.go new file mode 100644 index 000000000..db4939d0d --- /dev/null +++ b/pkg/dialects/storm32/msg_named_value_float.go @@ -0,0 +1,18 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// Send a key-value pair as float. The use of this message is discouraged for normal packets, but a quite efficient way for testing new messages and getting experimental debug output. +type MessageNamedValueFloat struct { + // Timestamp (time since system boot). + TimeBootMs uint32 + // Name of the debug variable + Name string `mavlen:"10"` + // Floating point value + Value float32 +} + +// GetID implements the msg.Message interface. +func (*MessageNamedValueFloat) GetID() uint32 { + return 251 +} diff --git a/pkg/dialects/storm32/msg_named_value_int.go b/pkg/dialects/storm32/msg_named_value_int.go new file mode 100644 index 000000000..b540b6730 --- /dev/null +++ b/pkg/dialects/storm32/msg_named_value_int.go @@ -0,0 +1,18 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// Send a key-value pair as integer. The use of this message is discouraged for normal packets, but a quite efficient way for testing new messages and getting experimental debug output. +type MessageNamedValueInt struct { + // Timestamp (time since system boot). + TimeBootMs uint32 + // Name of the debug variable + Name string `mavlen:"10"` + // Signed integer value + Value int32 +} + +// GetID implements the msg.Message interface. +func (*MessageNamedValueInt) GetID() uint32 { + return 252 +} diff --git a/pkg/dialects/storm32/msg_nav_controller_output.go b/pkg/dialects/storm32/msg_nav_controller_output.go new file mode 100644 index 000000000..76e1a00a8 --- /dev/null +++ b/pkg/dialects/storm32/msg_nav_controller_output.go @@ -0,0 +1,28 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// The state of the navigation and position controller. +type MessageNavControllerOutput struct { + // Current desired roll + NavRoll float32 + // Current desired pitch + NavPitch float32 + // Current desired heading + NavBearing int16 + // Bearing to current waypoint/target + TargetBearing int16 + // Distance to active waypoint + WpDist uint16 + // Current altitude error + AltError float32 + // Current airspeed error + AspdError float32 + // Current crosstrack error on x-y plane + XtrackError float32 +} + +// GetID implements the msg.Message interface. +func (*MessageNavControllerOutput) GetID() uint32 { + return 62 +} diff --git a/pkg/dialects/storm32/msg_obstacle_distance.go b/pkg/dialects/storm32/msg_obstacle_distance.go new file mode 100644 index 000000000..37d304f7b --- /dev/null +++ b/pkg/dialects/storm32/msg_obstacle_distance.go @@ -0,0 +1,30 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// Obstacle distances in front of the sensor, starting from the left in increment degrees to the right +type MessageObstacleDistance struct { + // Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. + TimeUsec uint64 + // Class id of the distance sensor type. + SensorType MAV_DISTANCE_SENSOR `mavenum:"uint8"` + // Distance of obstacles around the vehicle with index 0 corresponding to north + angle_offset, unless otherwise specified in the frame. A value of 0 is valid and means that the obstacle is practically touching the sensor. A value of max_distance +1 means no obstacle is present. A value of UINT16_MAX for unknown/not used. In a array element, one unit corresponds to 1cm. + Distances [72]uint16 + // Angular width in degrees of each array element. Increment direction is clockwise. This field is ignored if increment_f is non-zero. + Increment uint8 + // Minimum distance the sensor can measure. + MinDistance uint16 + // Maximum distance the sensor can measure. + MaxDistance uint16 + // Angular width in degrees of each array element as a float. If non-zero then this value is used instead of the uint8_t increment field. Positive is clockwise direction, negative is counter-clockwise. + IncrementF float32 `mavext:"true"` + // Relative angle offset of the 0-index element in the distances array. Value of 0 corresponds to forward. Positive is clockwise direction, negative is counter-clockwise. + AngleOffset float32 `mavext:"true"` + // Coordinate frame of reference for the yaw rotation and offset of the sensor data. Defaults to MAV_FRAME_GLOBAL, which is north aligned. For body-mounted sensors use MAV_FRAME_BODY_FRD, which is vehicle front aligned. + Frame MAV_FRAME `mavenum:"uint8" mavext:"true"` +} + +// GetID implements the msg.Message interface. +func (*MessageObstacleDistance) GetID() uint32 { + return 330 +} diff --git a/pkg/dialects/storm32/msg_obstacle_distance_3d.go b/pkg/dialects/storm32/msg_obstacle_distance_3d.go new file mode 100644 index 000000000..19adceaa3 --- /dev/null +++ b/pkg/dialects/storm32/msg_obstacle_distance_3d.go @@ -0,0 +1,30 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// Obstacle located as a 3D vector. +type MessageObstacleDistance_3d struct { + // Timestamp (time since system boot). + TimeBootMs uint32 + // Class id of the distance sensor type. + SensorType MAV_DISTANCE_SENSOR `mavenum:"uint8"` + // Coordinate frame of reference. + Frame MAV_FRAME `mavenum:"uint8"` + // Unique ID given to each obstacle so that its movement can be tracked. Use UINT16_MAX if object ID is unknown or cannot be determined. + ObstacleId uint16 + // X position of the obstacle. + X float32 + // Y position of the obstacle. + Y float32 + // Z position of the obstacle. + Z float32 + // Minimum distance the sensor can measure. + MinDistance float32 + // Maximum distance the sensor can measure. + MaxDistance float32 +} + +// GetID implements the msg.Message interface. +func (*MessageObstacleDistance_3d) GetID() uint32 { + return 11037 +} diff --git a/pkg/dialects/storm32/msg_odometry.go b/pkg/dialects/storm32/msg_odometry.go new file mode 100644 index 000000000..f77a5e70f --- /dev/null +++ b/pkg/dialects/storm32/msg_odometry.go @@ -0,0 +1,46 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// Odometry message to communicate odometry information with an external interface. Fits ROS REP 147 standard for aerial vehicles (http://www.ros.org/reps/rep-0147.html). +type MessageOdometry struct { + // Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. + TimeUsec uint64 + // Coordinate frame of reference for the pose data. + FrameId MAV_FRAME `mavenum:"uint8"` + // Coordinate frame of reference for the velocity in free space (twist) data. + ChildFrameId MAV_FRAME `mavenum:"uint8"` + // X Position + X float32 + // Y Position + Y float32 + // Z Position + Z float32 + // Quaternion components, w, x, y, z (1 0 0 0 is the null-rotation) + Q [4]float32 + // X linear speed + Vx float32 + // Y linear speed + Vy float32 + // Z linear speed + Vz float32 + // Roll angular speed + Rollspeed float32 + // Pitch angular speed + Pitchspeed float32 + // Yaw angular speed + Yawspeed float32 + // Row-major representation of a 6x6 pose cross-covariance matrix upper right triangle (states: x, y, z, roll, pitch, yaw; first six entries are the first ROW, next five entries are the second ROW, etc.). If unknown, assign NaN value to first element in the array. + PoseCovariance [21]float32 + // Row-major representation of a 6x6 velocity cross-covariance matrix upper right triangle (states: vx, vy, vz, rollspeed, pitchspeed, yawspeed; first six entries are the first ROW, next five entries are the second ROW, etc.). If unknown, assign NaN value to first element in the array. + VelocityCovariance [21]float32 + // Estimate reset counter. This should be incremented when the estimate resets in any of the dimensions (position, velocity, attitude, angular speed). This is designed to be used when e.g an external SLAM system detects a loop-closure and the estimate jumps. + ResetCounter uint8 `mavext:"true"` + // Type of estimator that is providing the odometry. + EstimatorType MAV_ESTIMATOR_TYPE `mavenum:"uint8" mavext:"true"` +} + +// GetID implements the msg.Message interface. +func (*MessageOdometry) GetID() uint32 { + return 331 +} diff --git a/pkg/dialects/storm32/msg_onboard_computer_status.go b/pkg/dialects/storm32/msg_onboard_computer_status.go new file mode 100644 index 000000000..7e898a93f --- /dev/null +++ b/pkg/dialects/storm32/msg_onboard_computer_status.go @@ -0,0 +1,52 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// Hardware status sent by an onboard computer. +type MessageOnboardComputerStatus struct { + // Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. + TimeUsec uint64 + // Time since system boot. + Uptime uint32 + // Type of the onboard computer: 0: Mission computer primary, 1: Mission computer backup 1, 2: Mission computer backup 2, 3: Compute node, 4-5: Compute spares, 6-9: Payload computers. + Type uint8 + // CPU usage on the component in percent (100 - idle). A value of UINT8_MAX implies the field is unused. + CpuCores [8]uint8 + // Combined CPU usage as the last 10 slices of 100 MS (a histogram). This allows to identify spikes in load that max out the system, but only for a short amount of time. A value of UINT8_MAX implies the field is unused. + CpuCombined [10]uint8 + // GPU usage on the component in percent (100 - idle). A value of UINT8_MAX implies the field is unused. + GpuCores [4]uint8 + // Combined GPU usage as the last 10 slices of 100 MS (a histogram). This allows to identify spikes in load that max out the system, but only for a short amount of time. A value of UINT8_MAX implies the field is unused. + GpuCombined [10]uint8 + // Temperature of the board. A value of INT8_MAX implies the field is unused. + TemperatureBoard int8 + // Temperature of the CPU core. A value of INT8_MAX implies the field is unused. + TemperatureCore [8]int8 + // Fan speeds. A value of INT16_MAX implies the field is unused. + FanSpeed [4]int16 + // Amount of used RAM on the component system. A value of UINT32_MAX implies the field is unused. + RamUsage uint32 + // Total amount of RAM on the component system. A value of UINT32_MAX implies the field is unused. + RamTotal uint32 + // Storage type: 0: HDD, 1: SSD, 2: EMMC, 3: SD card (non-removable), 4: SD card (removable). A value of UINT32_MAX implies the field is unused. + StorageType [4]uint32 + // Amount of used storage space on the component system. A value of UINT32_MAX implies the field is unused. + StorageUsage [4]uint32 + // Total amount of storage space on the component system. A value of UINT32_MAX implies the field is unused. + StorageTotal [4]uint32 + // Link type: 0-9: UART, 10-19: Wired network, 20-29: Wifi, 30-39: Point-to-point proprietary, 40-49: Mesh proprietary + LinkType [6]uint32 + // Network traffic from the component system. A value of UINT32_MAX implies the field is unused. + LinkTxRate [6]uint32 + // Network traffic to the component system. A value of UINT32_MAX implies the field is unused. + LinkRxRate [6]uint32 + // Network capacity from the component system. A value of UINT32_MAX implies the field is unused. + LinkTxMax [6]uint32 + // Network capacity to the component system. A value of UINT32_MAX implies the field is unused. + LinkRxMax [6]uint32 +} + +// GetID implements the msg.Message interface. +func (*MessageOnboardComputerStatus) GetID() uint32 { + return 390 +} diff --git a/pkg/dialects/storm32/msg_open_drone_id_authentication.go b/pkg/dialects/storm32/msg_open_drone_id_authentication.go new file mode 100644 index 000000000..a5dc4242d --- /dev/null +++ b/pkg/dialects/storm32/msg_open_drone_id_authentication.go @@ -0,0 +1,30 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// Data for filling the OpenDroneID Authentication message. The Authentication Message defines a field that can provide a means of authenticity for the identity of the UAS (Unmanned Aircraft System). The Authentication message can have two different formats. Five data pages are supported. For data page 0, the fields PageCount, Length and TimeStamp are present and AuthData is only 17 bytes. For data page 1 through 15, PageCount, Length and TimeStamp are not present and the size of AuthData is 23 bytes. +type MessageOpenDroneIdAuthentication struct { + // System ID (0 for broadcast). + TargetSystem uint8 + // Component ID (0 for broadcast). + TargetComponent uint8 + // Only used for drone ID data received from other UAs. See detailed description at https://mavlink.io/en/services/opendroneid.html. + IdOrMac [20]uint8 + // Indicates the type of authentication. + AuthenticationType MAV_ODID_AUTH_TYPE `mavenum:"uint8"` + // Allowed range is 0 - 15. + DataPage uint8 + // This field is only present for page 0. Allowed range is 0 - 15. See the description of struct ODID_Auth_data at https://github.com/opendroneid/opendroneid-core-c/blob/master/libopendroneid/opendroneid.h. + LastPageIndex uint8 + // This field is only present for page 0. Total bytes of authentication_data from all data pages. See the description of struct ODID_Auth_data at https://github.com/opendroneid/opendroneid-core-c/blob/master/libopendroneid/opendroneid.h. + Length uint8 + // This field is only present for page 0. 32 bit Unix Timestamp in seconds since 00:00:00 01/01/2019. + Timestamp uint32 + // Opaque authentication data. For page 0, the size is only 17 bytes. For other pages, the size is 23 bytes. Shall be filled with nulls in the unused portion of the field. + AuthenticationData [23]uint8 +} + +// GetID implements the msg.Message interface. +func (*MessageOpenDroneIdAuthentication) GetID() uint32 { + return 12902 +} diff --git a/pkg/dialects/storm32/msg_open_drone_id_basic_id.go b/pkg/dialects/storm32/msg_open_drone_id_basic_id.go new file mode 100644 index 000000000..5472f35f5 --- /dev/null +++ b/pkg/dialects/storm32/msg_open_drone_id_basic_id.go @@ -0,0 +1,24 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// Data for filling the OpenDroneID Basic ID message. This and the below messages are primarily meant for feeding data to/from an OpenDroneID implementation. E.g. https://github.com/opendroneid/opendroneid-core-c. These messages are compatible with the ASTM Remote ID standard at https://www.astm.org/Standards/F3411.htm and the ASD-STAN Direct Remote ID standard. The usage of these messages is documented at https://mavlink.io/en/services/opendroneid.html. +type MessageOpenDroneIdBasicId struct { + // System ID (0 for broadcast). + TargetSystem uint8 + // Component ID (0 for broadcast). + TargetComponent uint8 + // Only used for drone ID data received from other UAs. See detailed description at https://mavlink.io/en/services/opendroneid.html. + IdOrMac [20]uint8 + // Indicates the format for the uas_id field of this message. + IdType MAV_ODID_ID_TYPE `mavenum:"uint8"` + // Indicates the type of UA (Unmanned Aircraft). + UaType MAV_ODID_UA_TYPE `mavenum:"uint8"` + // UAS (Unmanned Aircraft System) ID following the format specified by id_type. Shall be filled with nulls in the unused portion of the field. + UasId [20]uint8 +} + +// GetID implements the msg.Message interface. +func (*MessageOpenDroneIdBasicId) GetID() uint32 { + return 12900 +} diff --git a/pkg/dialects/storm32/msg_open_drone_id_location.go b/pkg/dialects/storm32/msg_open_drone_id_location.go new file mode 100644 index 000000000..741bef52a --- /dev/null +++ b/pkg/dialects/storm32/msg_open_drone_id_location.go @@ -0,0 +1,50 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// Data for filling the OpenDroneID Location message. The float data types are 32-bit IEEE 754. The Location message provides the location, altitude, direction and speed of the aircraft. +type MessageOpenDroneIdLocation struct { + // System ID (0 for broadcast). + TargetSystem uint8 + // Component ID (0 for broadcast). + TargetComponent uint8 + // Only used for drone ID data received from other UAs. See detailed description at https://mavlink.io/en/services/opendroneid.html. + IdOrMac [20]uint8 + // Indicates whether the unmanned aircraft is on the ground or in the air. + Status MAV_ODID_STATUS `mavenum:"uint8"` + // Direction over ground (not heading, but direction of movement) measured clockwise from true North: 0 - 35999 centi-degrees. If unknown: 36100 centi-degrees. + Direction uint16 + // Ground speed. Positive only. If unknown: 25500 cm/s. If speed is larger than 25425 cm/s, use 25425 cm/s. + SpeedHorizontal uint16 + // The vertical speed. Up is positive. If unknown: 6300 cm/s. If speed is larger than 6200 cm/s, use 6200 cm/s. If lower than -6200 cm/s, use -6200 cm/s. + SpeedVertical int16 + // Current latitude of the unmanned aircraft. If unknown: 0 (both Lat/Lon). + Latitude int32 + // Current longitude of the unmanned aircraft. If unknown: 0 (both Lat/Lon). + Longitude int32 + // The altitude calculated from the barometric pressue. Reference is against 29.92inHg or 1013.2mb. If unknown: -1000 m. + AltitudeBarometric float32 + // The geodetic altitude as defined by WGS84. If unknown: -1000 m. + AltitudeGeodetic float32 + // Indicates the reference point for the height field. + HeightReference MAV_ODID_HEIGHT_REF `mavenum:"uint8"` + // The current height of the unmanned aircraft above the take-off location or the ground as indicated by height_reference. If unknown: -1000 m. + Height float32 + // The accuracy of the horizontal position. + HorizontalAccuracy MAV_ODID_HOR_ACC `mavenum:"uint8"` + // The accuracy of the vertical position. + VerticalAccuracy MAV_ODID_VER_ACC `mavenum:"uint8"` + // The accuracy of the barometric altitude. + BarometerAccuracy MAV_ODID_VER_ACC `mavenum:"uint8"` + // The accuracy of the horizontal and vertical speed. + SpeedAccuracy MAV_ODID_SPEED_ACC `mavenum:"uint8"` + // Seconds after the full hour with reference to UTC time. Typically the GPS outputs a time-of-week value in milliseconds. First convert that to UTC and then convert for this field using ((float) (time_week_ms % (60*60*1000))) / 1000. If unknown: 0xFFFF. + Timestamp float32 + // The accuracy of the timestamps. + TimestampAccuracy MAV_ODID_TIME_ACC `mavenum:"uint8"` +} + +// GetID implements the msg.Message interface. +func (*MessageOpenDroneIdLocation) GetID() uint32 { + return 12901 +} diff --git a/pkg/dialects/storm32/msg_open_drone_id_message_pack.go b/pkg/dialects/storm32/msg_open_drone_id_message_pack.go new file mode 100644 index 000000000..993cc306b --- /dev/null +++ b/pkg/dialects/storm32/msg_open_drone_id_message_pack.go @@ -0,0 +1,24 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// An OpenDroneID message pack is a container for multiple encoded OpenDroneID messages (i.e. not in the format given for the above messages descriptions but after encoding into the compressed OpenDroneID byte format). Used e.g. when transmitting on Bluetooth 5.0 Long Range/Extended Advertising or on WiFi Neighbor Aware Networking. +type MessageOpenDroneIdMessagePack struct { + // System ID (0 for broadcast). + TargetSystem uint8 + // Component ID (0 for broadcast). + TargetComponent uint8 + // Only used for drone ID data received from other UAs. See detailed description at https://mavlink.io/en/services/opendroneid.html. + IdOrMac [20]uint8 + // This field must currently always be equal to 25 (bytes), since all encoded OpenDroneID messages are specificed to have this length. + SingleMessageSize uint8 + // Number of encoded messages in the pack (not the number of bytes). Allowed range is 1 - 9. + MsgPackSize uint8 + // Concatenation of encoded OpenDroneID messages. Shall be filled with nulls in the unused portion of the field. + Messages [225]uint8 +} + +// GetID implements the msg.Message interface. +func (*MessageOpenDroneIdMessagePack) GetID() uint32 { + return 12915 +} diff --git a/pkg/dialects/storm32/msg_open_drone_id_operator_id.go b/pkg/dialects/storm32/msg_open_drone_id_operator_id.go new file mode 100644 index 000000000..e2681d0e2 --- /dev/null +++ b/pkg/dialects/storm32/msg_open_drone_id_operator_id.go @@ -0,0 +1,22 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// Data for filling the OpenDroneID Operator ID message, which contains the CAA (Civil Aviation Authority) issued operator ID. +type MessageOpenDroneIdOperatorId struct { + // System ID (0 for broadcast). + TargetSystem uint8 + // Component ID (0 for broadcast). + TargetComponent uint8 + // Only used for drone ID data received from other UAs. See detailed description at https://mavlink.io/en/services/opendroneid.html. + IdOrMac [20]uint8 + // Indicates the type of the operator_id field. + OperatorIdType MAV_ODID_OPERATOR_ID_TYPE `mavenum:"uint8"` + // Text description or numeric value expressed as ASCII characters. Shall be filled with nulls in the unused portion of the field. + OperatorId string `mavlen:"20"` +} + +// GetID implements the msg.Message interface. +func (*MessageOpenDroneIdOperatorId) GetID() uint32 { + return 12905 +} diff --git a/pkg/dialects/storm32/msg_open_drone_id_self_id.go b/pkg/dialects/storm32/msg_open_drone_id_self_id.go new file mode 100644 index 000000000..b41e655db --- /dev/null +++ b/pkg/dialects/storm32/msg_open_drone_id_self_id.go @@ -0,0 +1,22 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// Data for filling the OpenDroneID Self ID message. The Self ID Message is an opportunity for the operator to (optionally) declare their identity and purpose of the flight. This message can provide additional information that could reduce the threat profile of a UA (Unmanned Aircraft) flying in a particular area or manner. +type MessageOpenDroneIdSelfId struct { + // System ID (0 for broadcast). + TargetSystem uint8 + // Component ID (0 for broadcast). + TargetComponent uint8 + // Only used for drone ID data received from other UAs. See detailed description at https://mavlink.io/en/services/opendroneid.html. + IdOrMac [20]uint8 + // Indicates the type of the description field. + DescriptionType MAV_ODID_DESC_TYPE `mavenum:"uint8"` + // Text description or numeric value expressed as ASCII characters. Shall be filled with nulls in the unused portion of the field. + Description string `mavlen:"23"` +} + +// GetID implements the msg.Message interface. +func (*MessageOpenDroneIdSelfId) GetID() uint32 { + return 12903 +} diff --git a/pkg/dialects/storm32/msg_open_drone_id_system.go b/pkg/dialects/storm32/msg_open_drone_id_system.go new file mode 100644 index 000000000..e03bcdc2b --- /dev/null +++ b/pkg/dialects/storm32/msg_open_drone_id_system.go @@ -0,0 +1,40 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// Data for filling the OpenDroneID System message. The System Message contains general system information including the operator location and possible aircraft group information. +type MessageOpenDroneIdSystem struct { + // System ID (0 for broadcast). + TargetSystem uint8 + // Component ID (0 for broadcast). + TargetComponent uint8 + // Only used for drone ID data received from other UAs. See detailed description at https://mavlink.io/en/services/opendroneid.html. + IdOrMac [20]uint8 + // Specifies the operator location type. + OperatorLocationType MAV_ODID_OPERATOR_LOCATION_TYPE `mavenum:"uint8"` + // Specifies the classification type of the UA. + ClassificationType MAV_ODID_CLASSIFICATION_TYPE `mavenum:"uint8"` + // Latitude of the operator. If unknown: 0 (both Lat/Lon). + OperatorLatitude int32 + // Longitude of the operator. If unknown: 0 (both Lat/Lon). + OperatorLongitude int32 + // Number of aircraft in the area, group or formation (default 1). + AreaCount uint16 + // Radius of the cylindrical area of the group or formation (default 0). + AreaRadius uint16 + // Area Operations Ceiling relative to WGS84. If unknown: -1000 m. + AreaCeiling float32 + // Area Operations Floor relative to WGS84. If unknown: -1000 m. + AreaFloor float32 + // When classification_type is MAV_ODID_CLASSIFICATION_TYPE_EU, specifies the category of the UA. + CategoryEu MAV_ODID_CATEGORY_EU `mavenum:"uint8"` + // When classification_type is MAV_ODID_CLASSIFICATION_TYPE_EU, specifies the class of the UA. + ClassEu MAV_ODID_CLASS_EU `mavenum:"uint8"` + // Geodetic altitude of the operator relative to WGS84. If unknown: -1000 m. + OperatorAltitudeGeo float32 +} + +// GetID implements the msg.Message interface. +func (*MessageOpenDroneIdSystem) GetID() uint32 { + return 12904 +} diff --git a/pkg/dialects/storm32/msg_optical_flow.go b/pkg/dialects/storm32/msg_optical_flow.go new file mode 100644 index 000000000..2bcf0d8aa --- /dev/null +++ b/pkg/dialects/storm32/msg_optical_flow.go @@ -0,0 +1,32 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// Optical flow from a flow sensor (e.g. optical mouse sensor) +type MessageOpticalFlow struct { + // Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. + TimeUsec uint64 + // Sensor ID + SensorId uint8 + // Flow in x-sensor direction + FlowX int16 + // Flow in y-sensor direction + FlowY int16 + // Flow in x-sensor direction, angular-speed compensated + FlowCompMX float32 + // Flow in y-sensor direction, angular-speed compensated + FlowCompMY float32 + // Optical flow quality / confidence. 0: bad, 255: maximum quality + Quality uint8 + // Ground distance. Positive value: distance known. Negative value: Unknown distance + GroundDistance float32 + // Flow rate about X axis + FlowRateX float32 `mavext:"true"` + // Flow rate about Y axis + FlowRateY float32 `mavext:"true"` +} + +// GetID implements the msg.Message interface. +func (*MessageOpticalFlow) GetID() uint32 { + return 100 +} diff --git a/pkg/dialects/storm32/msg_optical_flow_rad.go b/pkg/dialects/storm32/msg_optical_flow_rad.go new file mode 100644 index 000000000..8249e4f4c --- /dev/null +++ b/pkg/dialects/storm32/msg_optical_flow_rad.go @@ -0,0 +1,36 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// Optical flow from an angular rate flow sensor (e.g. PX4FLOW or mouse sensor) +type MessageOpticalFlowRad struct { + // Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. + TimeUsec uint64 + // Sensor ID + SensorId uint8 + // Integration time. Divide integrated_x and integrated_y by the integration time to obtain average flow. The integration time also indicates the. + IntegrationTimeUs uint32 + // Flow around X axis (Sensor RH rotation about the X axis induces a positive flow. Sensor linear motion along the positive Y axis induces a negative flow.) + IntegratedX float32 + // Flow around Y axis (Sensor RH rotation about the Y axis induces a positive flow. Sensor linear motion along the positive X axis induces a positive flow.) + IntegratedY float32 + // RH rotation around X axis + IntegratedXgyro float32 + // RH rotation around Y axis + IntegratedYgyro float32 + // RH rotation around Z axis + IntegratedZgyro float32 + // Temperature + Temperature int16 + // Optical flow quality / confidence. 0: no valid flow, 255: maximum quality + Quality uint8 + // Time since the distance was sampled. + TimeDeltaDistanceUs uint32 + // Distance to the center of the flow field. Positive value (including zero): distance known. Negative value: Unknown distance. + Distance float32 +} + +// GetID implements the msg.Message interface. +func (*MessageOpticalFlowRad) GetID() uint32 { + return 106 +} diff --git a/pkg/dialects/storm32/msg_orbit_execution_status.go b/pkg/dialects/storm32/msg_orbit_execution_status.go new file mode 100644 index 000000000..0791355db --- /dev/null +++ b/pkg/dialects/storm32/msg_orbit_execution_status.go @@ -0,0 +1,24 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// Vehicle status report that is sent out while orbit execution is in progress (see MAV_CMD_DO_ORBIT). +type MessageOrbitExecutionStatus struct { + // Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. + TimeUsec uint64 + // Radius of the orbit circle. Positive values orbit clockwise, negative values orbit counter-clockwise. + Radius float32 + // The coordinate system of the fields: x, y, z. + Frame MAV_FRAME `mavenum:"uint8"` + // X coordinate of center point. Coordinate system depends on frame field: local = x position in meters * 1e4, global = latitude in degrees * 1e7. + X int32 + // Y coordinate of center point. Coordinate system depends on frame field: local = x position in meters * 1e4, global = latitude in degrees * 1e7. + Y int32 + // Altitude of center point. Coordinate system depends on frame field. + Z float32 +} + +// GetID implements the msg.Message interface. +func (*MessageOrbitExecutionStatus) GetID() uint32 { + return 360 +} diff --git a/pkg/dialects/storm32/msg_osd_param_config.go b/pkg/dialects/storm32/msg_osd_param_config.go new file mode 100644 index 000000000..7439e305f --- /dev/null +++ b/pkg/dialects/storm32/msg_osd_param_config.go @@ -0,0 +1,32 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// Configure an OSD parameter slot. +type MessageOsdParamConfig struct { + // System ID. + TargetSystem uint8 + // Component ID. + TargetComponent uint8 + // Request ID - copied to reply. + RequestId uint32 + // OSD parameter screen index. + OsdScreen uint8 + // OSD parameter display index. + OsdIndex uint8 + // Onboard parameter id, terminated by NULL if the length is less than 16 human-readable chars and WITHOUT null termination (NULL) byte if the length is exactly 16 chars - applications have to provide 16+1 bytes storage if the ID is stored as string + ParamId string `mavlen:"16"` + // Config type. + ConfigType OSD_PARAM_CONFIG_TYPE `mavenum:"uint8"` + // OSD parameter minimum value. + MinValue float32 + // OSD parameter maximum value. + MaxValue float32 + // OSD parameter increment. + Increment float32 +} + +// GetID implements the msg.Message interface. +func (*MessageOsdParamConfig) GetID() uint32 { + return 11033 +} diff --git a/pkg/dialects/storm32/msg_osd_param_config_reply.go b/pkg/dialects/storm32/msg_osd_param_config_reply.go new file mode 100644 index 000000000..a601294ef --- /dev/null +++ b/pkg/dialects/storm32/msg_osd_param_config_reply.go @@ -0,0 +1,16 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// Configure OSD parameter reply. +type MessageOsdParamConfigReply struct { + // Request ID - copied from request. + RequestId uint32 + // Config error type. + Result OSD_PARAM_CONFIG_ERROR `mavenum:"uint8"` +} + +// GetID implements the msg.Message interface. +func (*MessageOsdParamConfigReply) GetID() uint32 { + return 11034 +} diff --git a/pkg/dialects/storm32/msg_osd_param_show_config.go b/pkg/dialects/storm32/msg_osd_param_show_config.go new file mode 100644 index 000000000..fc38d97b2 --- /dev/null +++ b/pkg/dialects/storm32/msg_osd_param_show_config.go @@ -0,0 +1,22 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// Read a configured an OSD parameter slot. +type MessageOsdParamShowConfig struct { + // System ID. + TargetSystem uint8 + // Component ID. + TargetComponent uint8 + // Request ID - copied to reply. + RequestId uint32 + // OSD parameter screen index. + OsdScreen uint8 + // OSD parameter display index. + OsdIndex uint8 +} + +// GetID implements the msg.Message interface. +func (*MessageOsdParamShowConfig) GetID() uint32 { + return 11035 +} diff --git a/pkg/dialects/storm32/msg_osd_param_show_config_reply.go b/pkg/dialects/storm32/msg_osd_param_show_config_reply.go new file mode 100644 index 000000000..5bdf6815c --- /dev/null +++ b/pkg/dialects/storm32/msg_osd_param_show_config_reply.go @@ -0,0 +1,26 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// Read configured OSD parameter reply. +type MessageOsdParamShowConfigReply struct { + // Request ID - copied from request. + RequestId uint32 + // Config error type. + Result OSD_PARAM_CONFIG_ERROR `mavenum:"uint8"` + // Onboard parameter id, terminated by NULL if the length is less than 16 human-readable chars and WITHOUT null termination (NULL) byte if the length is exactly 16 chars - applications have to provide 16+1 bytes storage if the ID is stored as string + ParamId string `mavlen:"16"` + // Config type. + ConfigType OSD_PARAM_CONFIG_TYPE `mavenum:"uint8"` + // OSD parameter minimum value. + MinValue float32 + // OSD parameter maximum value. + MaxValue float32 + // OSD parameter increment. + Increment float32 +} + +// GetID implements the msg.Message interface. +func (*MessageOsdParamShowConfigReply) GetID() uint32 { + return 11036 +} diff --git a/pkg/dialects/storm32/msg_param_ext_ack.go b/pkg/dialects/storm32/msg_param_ext_ack.go new file mode 100644 index 000000000..b1fa6bef3 --- /dev/null +++ b/pkg/dialects/storm32/msg_param_ext_ack.go @@ -0,0 +1,20 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// Response from a PARAM_EXT_SET message. +type MessageParamExtAck struct { + // Parameter id, terminated by NULL if the length is less than 16 human-readable chars and WITHOUT null termination (NULL) byte if the length is exactly 16 chars - applications have to provide 16+1 bytes storage if the ID is stored as string + ParamId string `mavlen:"16"` + // Parameter value (new value if PARAM_ACK_ACCEPTED, current value otherwise) + ParamValue string `mavlen:"128"` + // Parameter type. + ParamType MAV_PARAM_EXT_TYPE `mavenum:"uint8"` + // Result code. + ParamResult PARAM_ACK `mavenum:"uint8"` +} + +// GetID implements the msg.Message interface. +func (*MessageParamExtAck) GetID() uint32 { + return 324 +} diff --git a/pkg/dialects/storm32/msg_param_ext_request_list.go b/pkg/dialects/storm32/msg_param_ext_request_list.go new file mode 100644 index 000000000..b9bba03c0 --- /dev/null +++ b/pkg/dialects/storm32/msg_param_ext_request_list.go @@ -0,0 +1,16 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// Request all parameters of this component. All parameters should be emitted in response as PARAM_EXT_VALUE. +type MessageParamExtRequestList struct { + // System ID + TargetSystem uint8 + // Component ID + TargetComponent uint8 +} + +// GetID implements the msg.Message interface. +func (*MessageParamExtRequestList) GetID() uint32 { + return 321 +} diff --git a/pkg/dialects/storm32/msg_param_ext_request_read.go b/pkg/dialects/storm32/msg_param_ext_request_read.go new file mode 100644 index 000000000..58d2e2dfc --- /dev/null +++ b/pkg/dialects/storm32/msg_param_ext_request_read.go @@ -0,0 +1,20 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// Request to read the value of a parameter with either the param_id string id or param_index. PARAM_EXT_VALUE should be emitted in response. +type MessageParamExtRequestRead struct { + // System ID + TargetSystem uint8 + // Component ID + TargetComponent uint8 + // Parameter id, terminated by NULL if the length is less than 16 human-readable chars and WITHOUT null termination (NULL) byte if the length is exactly 16 chars - applications have to provide 16+1 bytes storage if the ID is stored as string + ParamId string `mavlen:"16"` + // Parameter index. Set to -1 to use the Parameter ID field as identifier (else param_id will be ignored) + ParamIndex int16 +} + +// GetID implements the msg.Message interface. +func (*MessageParamExtRequestRead) GetID() uint32 { + return 320 +} diff --git a/pkg/dialects/storm32/msg_param_ext_set.go b/pkg/dialects/storm32/msg_param_ext_set.go new file mode 100644 index 000000000..a538ef44e --- /dev/null +++ b/pkg/dialects/storm32/msg_param_ext_set.go @@ -0,0 +1,22 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// Set a parameter value. In order to deal with message loss (and retransmission of PARAM_EXT_SET), when setting a parameter value and the new value is the same as the current value, you will immediately get a PARAM_ACK_ACCEPTED response. If the current state is PARAM_ACK_IN_PROGRESS, you will accordingly receive a PARAM_ACK_IN_PROGRESS in response. +type MessageParamExtSet struct { + // System ID + TargetSystem uint8 + // Component ID + TargetComponent uint8 + // Parameter id, terminated by NULL if the length is less than 16 human-readable chars and WITHOUT null termination (NULL) byte if the length is exactly 16 chars - applications have to provide 16+1 bytes storage if the ID is stored as string + ParamId string `mavlen:"16"` + // Parameter value + ParamValue string `mavlen:"128"` + // Parameter type. + ParamType MAV_PARAM_EXT_TYPE `mavenum:"uint8"` +} + +// GetID implements the msg.Message interface. +func (*MessageParamExtSet) GetID() uint32 { + return 323 +} diff --git a/pkg/dialects/storm32/msg_param_ext_value.go b/pkg/dialects/storm32/msg_param_ext_value.go new file mode 100644 index 000000000..5efc1099c --- /dev/null +++ b/pkg/dialects/storm32/msg_param_ext_value.go @@ -0,0 +1,22 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// Emit the value of a parameter. The inclusion of param_count and param_index in the message allows the recipient to keep track of received parameters and allows them to re-request missing parameters after a loss or timeout. +type MessageParamExtValue struct { + // Parameter id, terminated by NULL if the length is less than 16 human-readable chars and WITHOUT null termination (NULL) byte if the length is exactly 16 chars - applications have to provide 16+1 bytes storage if the ID is stored as string + ParamId string `mavlen:"16"` + // Parameter value + ParamValue string `mavlen:"128"` + // Parameter type. + ParamType MAV_PARAM_EXT_TYPE `mavenum:"uint8"` + // Total number of parameters + ParamCount uint16 + // Index of this parameter + ParamIndex uint16 +} + +// GetID implements the msg.Message interface. +func (*MessageParamExtValue) GetID() uint32 { + return 322 +} diff --git a/pkg/dialects/storm32/msg_param_map_rc.go b/pkg/dialects/storm32/msg_param_map_rc.go new file mode 100644 index 000000000..d53e4cc9b --- /dev/null +++ b/pkg/dialects/storm32/msg_param_map_rc.go @@ -0,0 +1,30 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// Bind a RC channel to a parameter. The parameter should change according to the RC channel value. +type MessageParamMapRc struct { + // System ID + TargetSystem uint8 + // Component ID + TargetComponent uint8 + // Onboard parameter id, terminated by NULL if the length is less than 16 human-readable chars and WITHOUT null termination (NULL) byte if the length is exactly 16 chars - applications have to provide 16+1 bytes storage if the ID is stored as string + ParamId string `mavlen:"16"` + // Parameter index. Send -1 to use the param ID field as identifier (else the param id will be ignored), send -2 to disable any existing map for this rc_channel_index. + ParamIndex int16 + // Index of parameter RC channel. Not equal to the RC channel id. Typically corresponds to a potentiometer-knob on the RC. + ParameterRcChannelIndex uint8 + // Initial parameter value + ParamValue0 float32 + // Scale, maps the RC range [-1, 1] to a parameter value + Scale float32 + // Minimum param value. The protocol does not define if this overwrites an onboard minimum value. (Depends on implementation) + ParamValueMin float32 + // Maximum param value. The protocol does not define if this overwrites an onboard maximum value. (Depends on implementation) + ParamValueMax float32 +} + +// GetID implements the msg.Message interface. +func (*MessageParamMapRc) GetID() uint32 { + return 50 +} diff --git a/pkg/dialects/storm32/msg_param_request_list.go b/pkg/dialects/storm32/msg_param_request_list.go new file mode 100644 index 000000000..6d742f817 --- /dev/null +++ b/pkg/dialects/storm32/msg_param_request_list.go @@ -0,0 +1,16 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// Request all parameters of this component. After this request, all parameters are emitted. The parameter microservice is documented at https://mavlink.io/en/services/parameter.html +type MessageParamRequestList struct { + // System ID + TargetSystem uint8 + // Component ID + TargetComponent uint8 +} + +// GetID implements the msg.Message interface. +func (*MessageParamRequestList) GetID() uint32 { + return 21 +} diff --git a/pkg/dialects/storm32/msg_param_request_read.go b/pkg/dialects/storm32/msg_param_request_read.go new file mode 100644 index 000000000..66af9ce44 --- /dev/null +++ b/pkg/dialects/storm32/msg_param_request_read.go @@ -0,0 +1,20 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// Request to read the onboard parameter with the param_id string id. Onboard parameters are stored as key[const char*] -> value[float]. This allows to send a parameter to any other component (such as the GCS) without the need of previous knowledge of possible parameter names. Thus the same GCS can store different parameters for different autopilots. See also https://mavlink.io/en/services/parameter.html for a full documentation of QGroundControl and IMU code. +type MessageParamRequestRead struct { + // System ID + TargetSystem uint8 + // Component ID + TargetComponent uint8 + // Onboard parameter id, terminated by NULL if the length is less than 16 human-readable chars and WITHOUT null termination (NULL) byte if the length is exactly 16 chars - applications have to provide 16+1 bytes storage if the ID is stored as string + ParamId string `mavlen:"16"` + // Parameter index. Send -1 to use the param ID field as identifier (else the param id will be ignored) + ParamIndex int16 +} + +// GetID implements the msg.Message interface. +func (*MessageParamRequestRead) GetID() uint32 { + return 20 +} diff --git a/pkg/dialects/storm32/msg_param_set.go b/pkg/dialects/storm32/msg_param_set.go new file mode 100644 index 000000000..e7e0c71cd --- /dev/null +++ b/pkg/dialects/storm32/msg_param_set.go @@ -0,0 +1,24 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// Set a parameter value (write new value to permanent storage). +// The receiving component should acknowledge the new parameter value by broadcasting a PARAM_VALUE message (broadcasting ensures that multiple GCS all have an up-to-date list of all parameters). If the sending GCS did not receive a PARAM_VALUE within its timeout time, it should re-send the PARAM_SET message. The parameter microservice is documented at https://mavlink.io/en/services/parameter.html. +// PARAM_SET may also be called within the context of a transaction (started with MAV_CMD_PARAM_TRANSACTION). Within a transaction the receiving component should respond with PARAM_ACK_TRANSACTION to the setter component (instead of broadcasting PARAM_VALUE), and PARAM_SET should be re-sent if this is ACK not received. +type MessageParamSet struct { + // System ID + TargetSystem uint8 + // Component ID + TargetComponent uint8 + // Onboard parameter id, terminated by NULL if the length is less than 16 human-readable chars and WITHOUT null termination (NULL) byte if the length is exactly 16 chars - applications have to provide 16+1 bytes storage if the ID is stored as string + ParamId string `mavlen:"16"` + // Onboard parameter value + ParamValue float32 + // Onboard parameter type. + ParamType MAV_PARAM_TYPE `mavenum:"uint8"` +} + +// GetID implements the msg.Message interface. +func (*MessageParamSet) GetID() uint32 { + return 23 +} diff --git a/pkg/dialects/storm32/msg_param_value.go b/pkg/dialects/storm32/msg_param_value.go new file mode 100644 index 000000000..ab6477b1e --- /dev/null +++ b/pkg/dialects/storm32/msg_param_value.go @@ -0,0 +1,22 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// Emit the value of a onboard parameter. The inclusion of param_count and param_index in the message allows the recipient to keep track of received parameters and allows him to re-request missing parameters after a loss or timeout. The parameter microservice is documented at https://mavlink.io/en/services/parameter.html +type MessageParamValue struct { + // Onboard parameter id, terminated by NULL if the length is less than 16 human-readable chars and WITHOUT null termination (NULL) byte if the length is exactly 16 chars - applications have to provide 16+1 bytes storage if the ID is stored as string + ParamId string `mavlen:"16"` + // Onboard parameter value + ParamValue float32 + // Onboard parameter type. + ParamType MAV_PARAM_TYPE `mavenum:"uint8"` + // Total number of onboard parameters + ParamCount uint16 + // Index of this onboard parameter + ParamIndex uint16 +} + +// GetID implements the msg.Message interface. +func (*MessageParamValue) GetID() uint32 { + return 22 +} diff --git a/pkg/dialects/storm32/msg_pid_tuning.go b/pkg/dialects/storm32/msg_pid_tuning.go new file mode 100644 index 000000000..de7a831a1 --- /dev/null +++ b/pkg/dialects/storm32/msg_pid_tuning.go @@ -0,0 +1,30 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// PID tuning information. +type MessagePidTuning struct { + // Axis. + Axis PID_TUNING_AXIS `mavenum:"uint8"` + // Desired rate. + Desired float32 + // Achieved rate. + Achieved float32 + // FF component. + Ff float32 `mavname:"FF"` + // P component. + P float32 `mavname:"P"` + // I component. + I float32 `mavname:"I"` + // D component. + D float32 `mavname:"D"` + // Slew rate. + Srate float32 `mavext:"true" mavname:"SRate"` + // P/D oscillation modifier. + Pdmod float32 `mavext:"true" mavname:"PDmod"` +} + +// GetID implements the msg.Message interface. +func (*MessagePidTuning) GetID() uint32 { + return 194 +} diff --git a/pkg/dialects/storm32/msg_ping.go b/pkg/dialects/storm32/msg_ping.go new file mode 100644 index 000000000..9af3eaad7 --- /dev/null +++ b/pkg/dialects/storm32/msg_ping.go @@ -0,0 +1,20 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// A ping message either requesting or responding to a ping. This allows to measure the system latencies, including serial port, radio modem and UDP connections. The ping microservice is documented at https://mavlink.io/en/services/ping.html +type MessagePing struct { + // Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. + TimeUsec uint64 + // PING sequence + Seq uint32 + // 0: request ping from all receiving systems. If greater than 0: message is a ping response and number is the system id of the requesting system + TargetSystem uint8 + // 0: request ping from all receiving components. If greater than 0: message is a ping response and number is the component id of the requesting component. + TargetComponent uint8 +} + +// GetID implements the msg.Message interface. +func (*MessagePing) GetID() uint32 { + return 4 +} diff --git a/pkg/dialects/storm32/msg_play_tune.go b/pkg/dialects/storm32/msg_play_tune.go new file mode 100644 index 000000000..14eda6d74 --- /dev/null +++ b/pkg/dialects/storm32/msg_play_tune.go @@ -0,0 +1,20 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// Control vehicle tone generation (buzzer). +type MessagePlayTune struct { + // System ID + TargetSystem uint8 + // Component ID + TargetComponent uint8 + // tune in board specific format + Tune string `mavlen:"30"` + // tune extension (appended to tune) + Tune2 string `mavext:"true" mavlen:"200"` +} + +// GetID implements the msg.Message interface. +func (*MessagePlayTune) GetID() uint32 { + return 258 +} diff --git a/pkg/dialects/storm32/msg_play_tune_v2.go b/pkg/dialects/storm32/msg_play_tune_v2.go new file mode 100644 index 000000000..ff24d6d24 --- /dev/null +++ b/pkg/dialects/storm32/msg_play_tune_v2.go @@ -0,0 +1,20 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// Play vehicle tone/tune (buzzer). Supersedes message PLAY_TUNE. +type MessagePlayTuneV2 struct { + // System ID + TargetSystem uint8 + // Component ID + TargetComponent uint8 + // Tune format + Format TUNE_FORMAT `mavenum:"uint32"` + // Tune definition as a NULL-terminated string. + Tune string `mavlen:"248"` +} + +// GetID implements the msg.Message interface. +func (*MessagePlayTuneV2) GetID() uint32 { + return 400 +} diff --git a/pkg/dialects/storm32/msg_position_target_global_int.go b/pkg/dialects/storm32/msg_position_target_global_int.go new file mode 100644 index 000000000..dfb5ebf02 --- /dev/null +++ b/pkg/dialects/storm32/msg_position_target_global_int.go @@ -0,0 +1,40 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// Reports the current commanded vehicle position, velocity, and acceleration as specified by the autopilot. This should match the commands sent in SET_POSITION_TARGET_GLOBAL_INT if the vehicle is being controlled this way. +type MessagePositionTargetGlobalInt struct { + // Timestamp (time since system boot). The rationale for the timestamp in the setpoint is to allow the system to compensate for the transport delay of the setpoint. This allows the system to compensate processing latency. + TimeBootMs uint32 + // Valid options are: MAV_FRAME_GLOBAL_INT = 5, MAV_FRAME_GLOBAL_RELATIVE_ALT_INT = 6, MAV_FRAME_GLOBAL_TERRAIN_ALT_INT = 11 + CoordinateFrame MAV_FRAME `mavenum:"uint8"` + // Bitmap to indicate which dimensions should be ignored by the vehicle. + TypeMask POSITION_TARGET_TYPEMASK `mavenum:"uint16"` + // X Position in WGS84 frame + LatInt int32 + // Y Position in WGS84 frame + LonInt int32 + // Altitude (MSL, AGL or relative to home altitude, depending on frame) + Alt float32 + // X velocity in NED frame + Vx float32 + // Y velocity in NED frame + Vy float32 + // Z velocity in NED frame + Vz float32 + // X acceleration or force (if bit 10 of type_mask is set) in NED frame in meter / s^2 or N + Afx float32 + // Y acceleration or force (if bit 10 of type_mask is set) in NED frame in meter / s^2 or N + Afy float32 + // Z acceleration or force (if bit 10 of type_mask is set) in NED frame in meter / s^2 or N + Afz float32 + // yaw setpoint + Yaw float32 + // yaw rate setpoint + YawRate float32 +} + +// GetID implements the msg.Message interface. +func (*MessagePositionTargetGlobalInt) GetID() uint32 { + return 87 +} diff --git a/pkg/dialects/storm32/msg_position_target_local_ned.go b/pkg/dialects/storm32/msg_position_target_local_ned.go new file mode 100644 index 000000000..f059a291d --- /dev/null +++ b/pkg/dialects/storm32/msg_position_target_local_ned.go @@ -0,0 +1,40 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// Reports the current commanded vehicle position, velocity, and acceleration as specified by the autopilot. This should match the commands sent in SET_POSITION_TARGET_LOCAL_NED if the vehicle is being controlled this way. +type MessagePositionTargetLocalNed struct { + // Timestamp (time since system boot). + TimeBootMs uint32 + // Valid options are: MAV_FRAME_LOCAL_NED = 1, MAV_FRAME_LOCAL_OFFSET_NED = 7, MAV_FRAME_BODY_NED = 8, MAV_FRAME_BODY_OFFSET_NED = 9 + CoordinateFrame MAV_FRAME `mavenum:"uint8"` + // Bitmap to indicate which dimensions should be ignored by the vehicle. + TypeMask POSITION_TARGET_TYPEMASK `mavenum:"uint16"` + // X Position in NED frame + X float32 + // Y Position in NED frame + Y float32 + // Z Position in NED frame (note, altitude is negative in NED) + Z float32 + // X velocity in NED frame + Vx float32 + // Y velocity in NED frame + Vy float32 + // Z velocity in NED frame + Vz float32 + // X acceleration or force (if bit 10 of type_mask is set) in NED frame in meter / s^2 or N + Afx float32 + // Y acceleration or force (if bit 10 of type_mask is set) in NED frame in meter / s^2 or N + Afy float32 + // Z acceleration or force (if bit 10 of type_mask is set) in NED frame in meter / s^2 or N + Afz float32 + // yaw setpoint + Yaw float32 + // yaw rate setpoint + YawRate float32 +} + +// GetID implements the msg.Message interface. +func (*MessagePositionTargetLocalNed) GetID() uint32 { + return 85 +} diff --git a/pkg/dialects/storm32/msg_power_status.go b/pkg/dialects/storm32/msg_power_status.go new file mode 100644 index 000000000..01bc8770c --- /dev/null +++ b/pkg/dialects/storm32/msg_power_status.go @@ -0,0 +1,18 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// Power supply status +type MessagePowerStatus struct { + // 5V rail voltage. + Vcc uint16 `mavname:"Vcc"` + // Servo rail voltage. + Vservo uint16 `mavname:"Vservo"` + // Bitmap of power supply status flags. + Flags MAV_POWER_STATUS `mavenum:"uint16"` +} + +// GetID implements the msg.Message interface. +func (*MessagePowerStatus) GetID() uint32 { + return 125 +} diff --git a/pkg/dialects/storm32/msg_protocol_version.go b/pkg/dialects/storm32/msg_protocol_version.go new file mode 100644 index 000000000..1701beb37 --- /dev/null +++ b/pkg/dialects/storm32/msg_protocol_version.go @@ -0,0 +1,22 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// Version and capability of protocol version. This message can be requested with MAV_CMD_REQUEST_MESSAGE and is used as part of the handshaking to establish which MAVLink version should be used on the network. Every node should respond to a request for PROTOCOL_VERSION to enable the handshaking. Library implementers should consider adding this into the default decoding state machine to allow the protocol core to respond directly. +type MessageProtocolVersion struct { + // Currently active MAVLink version number * 100: v1.0 is 100, v2.0 is 200, etc. + Version uint16 + // Minimum MAVLink version supported + MinVersion uint16 + // Maximum MAVLink version supported (set to the same value as version by default) + MaxVersion uint16 + // The first 8 bytes (not characters printed in hex!) of the git hash. + SpecVersionHash [8]uint8 + // The first 8 bytes (not characters printed in hex!) of the git hash. + LibraryVersionHash [8]uint8 +} + +// GetID implements the msg.Message interface. +func (*MessageProtocolVersion) GetID() uint32 { + return 300 +} diff --git a/pkg/dialects/storm32/msg_qshot_status.go b/pkg/dialects/storm32/msg_qshot_status.go new file mode 100644 index 000000000..4efdf5763 --- /dev/null +++ b/pkg/dialects/storm32/msg_qshot_status.go @@ -0,0 +1,16 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// Information about the shot operation. +type MessageQshotStatus struct { + // Current shot mode. + Mode MAV_QSHOT_MODE `mavenum:"uint16"` + // Current state in the shot. States are specific to the selected shot mode. + ShotState uint16 +} + +// GetID implements the msg.Message interface. +func (*MessageQshotStatus) GetID() uint32 { + return 60020 +} diff --git a/pkg/dialects/storm32/msg_radio.go b/pkg/dialects/storm32/msg_radio.go new file mode 100644 index 000000000..2370882c9 --- /dev/null +++ b/pkg/dialects/storm32/msg_radio.go @@ -0,0 +1,26 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// Status generated by radio. +type MessageRadio struct { + // Local signal strength. + Rssi uint8 + // Remote signal strength. + Remrssi uint8 + // How full the tx buffer is. + Txbuf uint8 + // Background noise level. + Noise uint8 + // Remote background noise level. + Remnoise uint8 + // Receive errors. + Rxerrors uint16 + // Count of error corrected packets. + Fixed uint16 +} + +// GetID implements the msg.Message interface. +func (*MessageRadio) GetID() uint32 { + return 166 +} diff --git a/pkg/dialects/storm32/msg_radio_status.go b/pkg/dialects/storm32/msg_radio_status.go new file mode 100644 index 000000000..41b169134 --- /dev/null +++ b/pkg/dialects/storm32/msg_radio_status.go @@ -0,0 +1,26 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// Status generated by radio and injected into MAVLink stream. +type MessageRadioStatus struct { + // Local (message sender) recieved signal strength indication in device-dependent units/scale. Values: [0-254], UINT8_MAX: invalid/unknown. + Rssi uint8 + // Remote (message receiver) signal strength indication in device-dependent units/scale. Values: [0-254], UINT8_MAX: invalid/unknown. + Remrssi uint8 + // Remaining free transmitter buffer space. + Txbuf uint8 + // Local background noise level. These are device dependent RSSI values (scale as approx 2x dB on SiK radios). Values: [0-254], UINT8_MAX: invalid/unknown. + Noise uint8 + // Remote background noise level. These are device dependent RSSI values (scale as approx 2x dB on SiK radios). Values: [0-254], UINT8_MAX: invalid/unknown. + Remnoise uint8 + // Count of radio packet receive errors (since boot). + Rxerrors uint16 + // Count of error corrected radio packets (since boot). + Fixed uint16 +} + +// GetID implements the msg.Message interface. +func (*MessageRadioStatus) GetID() uint32 { + return 109 +} diff --git a/pkg/dialects/storm32/msg_rally_fetch_point.go b/pkg/dialects/storm32/msg_rally_fetch_point.go new file mode 100644 index 000000000..3898a0823 --- /dev/null +++ b/pkg/dialects/storm32/msg_rally_fetch_point.go @@ -0,0 +1,18 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// Request a current rally point from MAV. MAV should respond with a RALLY_POINT message. MAV should not respond if the request is invalid. +type MessageRallyFetchPoint struct { + // System ID. + TargetSystem uint8 + // Component ID. + TargetComponent uint8 + // Point index (first point is 0). + Idx uint8 +} + +// GetID implements the msg.Message interface. +func (*MessageRallyFetchPoint) GetID() uint32 { + return 176 +} diff --git a/pkg/dialects/storm32/msg_rally_point.go b/pkg/dialects/storm32/msg_rally_point.go new file mode 100644 index 000000000..bcbf2c04b --- /dev/null +++ b/pkg/dialects/storm32/msg_rally_point.go @@ -0,0 +1,32 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// A rally point. Used to set a point when from GCS -> MAV. Also used to return a point from MAV -> GCS. +type MessageRallyPoint struct { + // System ID. + TargetSystem uint8 + // Component ID. + TargetComponent uint8 + // Point index (first point is 0). + Idx uint8 + // Total number of points (for sanity checking). + Count uint8 + // Latitude of point. + Lat int32 + // Longitude of point. + Lng int32 + // Transit / loiter altitude relative to home. + Alt int16 + // Break altitude relative to home. + BreakAlt int16 + // Heading to aim for when landing. + LandDir uint16 + // Configuration flags. + Flags RALLY_FLAGS `mavenum:"uint8"` +} + +// GetID implements the msg.Message interface. +func (*MessageRallyPoint) GetID() uint32 { + return 175 +} diff --git a/pkg/dialects/storm32/msg_rangefinder.go b/pkg/dialects/storm32/msg_rangefinder.go new file mode 100644 index 000000000..81aad60f6 --- /dev/null +++ b/pkg/dialects/storm32/msg_rangefinder.go @@ -0,0 +1,16 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// Rangefinder reporting. +type MessageRangefinder struct { + // Distance. + Distance float32 + // Raw voltage if available, zero otherwise. + Voltage float32 +} + +// GetID implements the msg.Message interface. +func (*MessageRangefinder) GetID() uint32 { + return 173 +} diff --git a/pkg/dialects/storm32/msg_raw_imu.go b/pkg/dialects/storm32/msg_raw_imu.go new file mode 100644 index 000000000..5e73fe1b9 --- /dev/null +++ b/pkg/dialects/storm32/msg_raw_imu.go @@ -0,0 +1,36 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// The RAW IMU readings for a 9DOF sensor, which is identified by the id (default IMU1). This message should always contain the true raw values without any scaling to allow data capture and system debugging. +type MessageRawImu struct { + // Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. + TimeUsec uint64 + // X acceleration (raw) + Xacc int16 + // Y acceleration (raw) + Yacc int16 + // Z acceleration (raw) + Zacc int16 + // Angular speed around X axis (raw) + Xgyro int16 + // Angular speed around Y axis (raw) + Ygyro int16 + // Angular speed around Z axis (raw) + Zgyro int16 + // X Magnetic field (raw) + Xmag int16 + // Y Magnetic field (raw) + Ymag int16 + // Z Magnetic field (raw) + Zmag int16 + // Id. Ids are numbered from 0 and map to IMUs numbered from 1 (e.g. IMU1 will have a message with id=0) + Id uint8 `mavext:"true"` + // Temperature, 0: IMU does not provide temperature values. If the IMU is at 0C it must send 1 (0.01C). + Temperature int16 `mavext:"true"` +} + +// GetID implements the msg.Message interface. +func (*MessageRawImu) GetID() uint32 { + return 27 +} diff --git a/pkg/dialects/storm32/msg_raw_pressure.go b/pkg/dialects/storm32/msg_raw_pressure.go new file mode 100644 index 000000000..f4e85b7b0 --- /dev/null +++ b/pkg/dialects/storm32/msg_raw_pressure.go @@ -0,0 +1,22 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// The RAW pressure readings for the typical setup of one absolute pressure and one differential pressure sensor. The sensor values should be the raw, UNSCALED ADC values. +type MessageRawPressure struct { + // Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. + TimeUsec uint64 + // Absolute pressure (raw) + PressAbs int16 + // Differential pressure 1 (raw, 0 if nonexistent) + PressDiff1 int16 + // Differential pressure 2 (raw, 0 if nonexistent) + PressDiff2 int16 + // Raw Temperature measurement (raw) + Temperature int16 +} + +// GetID implements the msg.Message interface. +func (*MessageRawPressure) GetID() uint32 { + return 28 +} diff --git a/pkg/dialects/storm32/msg_raw_rpm.go b/pkg/dialects/storm32/msg_raw_rpm.go new file mode 100644 index 000000000..d6cb3dc4c --- /dev/null +++ b/pkg/dialects/storm32/msg_raw_rpm.go @@ -0,0 +1,16 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// RPM sensor data message. +type MessageRawRpm struct { + // Index of this RPM sensor (0-indexed) + Index uint8 + // Indicated rate + Frequency float32 +} + +// GetID implements the msg.Message interface. +func (*MessageRawRpm) GetID() uint32 { + return 339 +} diff --git a/pkg/dialects/storm32/msg_rc_channels.go b/pkg/dialects/storm32/msg_rc_channels.go new file mode 100644 index 000000000..c684dd47d --- /dev/null +++ b/pkg/dialects/storm32/msg_rc_channels.go @@ -0,0 +1,54 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// The PPM values of the RC channels received. The standard PPM modulation is as follows: 1000 microseconds: 0%, 2000 microseconds: 100%. A value of UINT16_MAX implies the channel is unused. Individual receivers/transmitters might violate this specification. +type MessageRcChannels struct { + // Timestamp (time since system boot). + TimeBootMs uint32 + // Total number of RC channels being received. This can be larger than 18, indicating that more channels are available but not given in this message. This value should be 0 when no RC channels are available. + Chancount uint8 + // RC channel 1 value. + Chan1Raw uint16 + // RC channel 2 value. + Chan2Raw uint16 + // RC channel 3 value. + Chan3Raw uint16 + // RC channel 4 value. + Chan4Raw uint16 + // RC channel 5 value. + Chan5Raw uint16 + // RC channel 6 value. + Chan6Raw uint16 + // RC channel 7 value. + Chan7Raw uint16 + // RC channel 8 value. + Chan8Raw uint16 + // RC channel 9 value. + Chan9Raw uint16 + // RC channel 10 value. + Chan10Raw uint16 + // RC channel 11 value. + Chan11Raw uint16 + // RC channel 12 value. + Chan12Raw uint16 + // RC channel 13 value. + Chan13Raw uint16 + // RC channel 14 value. + Chan14Raw uint16 + // RC channel 15 value. + Chan15Raw uint16 + // RC channel 16 value. + Chan16Raw uint16 + // RC channel 17 value. + Chan17Raw uint16 + // RC channel 18 value. + Chan18Raw uint16 + // Receive signal strength indicator in device-dependent units/scale. Values: [0-254], UINT8_MAX: invalid/unknown. + Rssi uint8 +} + +// GetID implements the msg.Message interface. +func (*MessageRcChannels) GetID() uint32 { + return 65 +} diff --git a/pkg/dialects/storm32/msg_rc_channels_override.go b/pkg/dialects/storm32/msg_rc_channels_override.go new file mode 100644 index 000000000..138959635 --- /dev/null +++ b/pkg/dialects/storm32/msg_rc_channels_override.go @@ -0,0 +1,52 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// The RAW values of the RC channels sent to the MAV to override info received from the RC radio. The standard PPM modulation is as follows: 1000 microseconds: 0%, 2000 microseconds: 100%. Individual receivers/transmitters might violate this specification. Note carefully the semantic differences between the first 8 channels and the subsequent channels +type MessageRcChannelsOverride struct { + // System ID + TargetSystem uint8 + // Component ID + TargetComponent uint8 + // RC channel 1 value. A value of UINT16_MAX means to ignore this field. A value of 0 means to release this channel back to the RC radio. + Chan1Raw uint16 + // RC channel 2 value. A value of UINT16_MAX means to ignore this field. A value of 0 means to release this channel back to the RC radio. + Chan2Raw uint16 + // RC channel 3 value. A value of UINT16_MAX means to ignore this field. A value of 0 means to release this channel back to the RC radio. + Chan3Raw uint16 + // RC channel 4 value. A value of UINT16_MAX means to ignore this field. A value of 0 means to release this channel back to the RC radio. + Chan4Raw uint16 + // RC channel 5 value. A value of UINT16_MAX means to ignore this field. A value of 0 means to release this channel back to the RC radio. + Chan5Raw uint16 + // RC channel 6 value. A value of UINT16_MAX means to ignore this field. A value of 0 means to release this channel back to the RC radio. + Chan6Raw uint16 + // RC channel 7 value. A value of UINT16_MAX means to ignore this field. A value of 0 means to release this channel back to the RC radio. + Chan7Raw uint16 + // RC channel 8 value. A value of UINT16_MAX means to ignore this field. A value of 0 means to release this channel back to the RC radio. + Chan8Raw uint16 + // RC channel 9 value. A value of 0 or UINT16_MAX means to ignore this field. A value of UINT16_MAX-1 means to release this channel back to the RC radio. + Chan9Raw uint16 `mavext:"true"` + // RC channel 10 value. A value of 0 or UINT16_MAX means to ignore this field. A value of UINT16_MAX-1 means to release this channel back to the RC radio. + Chan10Raw uint16 `mavext:"true"` + // RC channel 11 value. A value of 0 or UINT16_MAX means to ignore this field. A value of UINT16_MAX-1 means to release this channel back to the RC radio. + Chan11Raw uint16 `mavext:"true"` + // RC channel 12 value. A value of 0 or UINT16_MAX means to ignore this field. A value of UINT16_MAX-1 means to release this channel back to the RC radio. + Chan12Raw uint16 `mavext:"true"` + // RC channel 13 value. A value of 0 or UINT16_MAX means to ignore this field. A value of UINT16_MAX-1 means to release this channel back to the RC radio. + Chan13Raw uint16 `mavext:"true"` + // RC channel 14 value. A value of 0 or UINT16_MAX means to ignore this field. A value of UINT16_MAX-1 means to release this channel back to the RC radio. + Chan14Raw uint16 `mavext:"true"` + // RC channel 15 value. A value of 0 or UINT16_MAX means to ignore this field. A value of UINT16_MAX-1 means to release this channel back to the RC radio. + Chan15Raw uint16 `mavext:"true"` + // RC channel 16 value. A value of 0 or UINT16_MAX means to ignore this field. A value of UINT16_MAX-1 means to release this channel back to the RC radio. + Chan16Raw uint16 `mavext:"true"` + // RC channel 17 value. A value of 0 or UINT16_MAX means to ignore this field. A value of UINT16_MAX-1 means to release this channel back to the RC radio. + Chan17Raw uint16 `mavext:"true"` + // RC channel 18 value. A value of 0 or UINT16_MAX means to ignore this field. A value of UINT16_MAX-1 means to release this channel back to the RC radio. + Chan18Raw uint16 `mavext:"true"` +} + +// GetID implements the msg.Message interface. +func (*MessageRcChannelsOverride) GetID() uint32 { + return 70 +} diff --git a/pkg/dialects/storm32/msg_rc_channels_raw.go b/pkg/dialects/storm32/msg_rc_channels_raw.go new file mode 100644 index 000000000..4911cdc0b --- /dev/null +++ b/pkg/dialects/storm32/msg_rc_channels_raw.go @@ -0,0 +1,34 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// The RAW values of the RC channels received. The standard PPM modulation is as follows: 1000 microseconds: 0%, 2000 microseconds: 100%. A value of UINT16_MAX implies the channel is unused. Individual receivers/transmitters might violate this specification. +type MessageRcChannelsRaw struct { + // Timestamp (time since system boot). + TimeBootMs uint32 + // Servo output port (set of 8 outputs = 1 port). Flight stacks running on Pixhawk should use: 0 = MAIN, 1 = AUX. + Port uint8 + // RC channel 1 value. + Chan1Raw uint16 + // RC channel 2 value. + Chan2Raw uint16 + // RC channel 3 value. + Chan3Raw uint16 + // RC channel 4 value. + Chan4Raw uint16 + // RC channel 5 value. + Chan5Raw uint16 + // RC channel 6 value. + Chan6Raw uint16 + // RC channel 7 value. + Chan7Raw uint16 + // RC channel 8 value. + Chan8Raw uint16 + // Receive signal strength indicator in device-dependent units/scale. Values: [0-254], UINT8_MAX: invalid/unknown. + Rssi uint8 +} + +// GetID implements the msg.Message interface. +func (*MessageRcChannelsRaw) GetID() uint32 { + return 35 +} diff --git a/pkg/dialects/storm32/msg_rc_channels_scaled.go b/pkg/dialects/storm32/msg_rc_channels_scaled.go new file mode 100644 index 000000000..0ecacca21 --- /dev/null +++ b/pkg/dialects/storm32/msg_rc_channels_scaled.go @@ -0,0 +1,34 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// The scaled values of the RC channels received: (-100%) -10000, (0%) 0, (100%) 10000. Channels that are inactive should be set to UINT16_MAX. +type MessageRcChannelsScaled struct { + // Timestamp (time since system boot). + TimeBootMs uint32 + // Servo output port (set of 8 outputs = 1 port). Flight stacks running on Pixhawk should use: 0 = MAIN, 1 = AUX. + Port uint8 + // RC channel 1 value scaled. + Chan1Scaled int16 + // RC channel 2 value scaled. + Chan2Scaled int16 + // RC channel 3 value scaled. + Chan3Scaled int16 + // RC channel 4 value scaled. + Chan4Scaled int16 + // RC channel 5 value scaled. + Chan5Scaled int16 + // RC channel 6 value scaled. + Chan6Scaled int16 + // RC channel 7 value scaled. + Chan7Scaled int16 + // RC channel 8 value scaled. + Chan8Scaled int16 + // Receive signal strength indicator in device-dependent units/scale. Values: [0-254], UINT8_MAX: invalid/unknown. + Rssi uint8 +} + +// GetID implements the msg.Message interface. +func (*MessageRcChannelsScaled) GetID() uint32 { + return 34 +} diff --git a/pkg/dialects/storm32/msg_remote_log_block_status.go b/pkg/dialects/storm32/msg_remote_log_block_status.go new file mode 100644 index 000000000..f423b0c9a --- /dev/null +++ b/pkg/dialects/storm32/msg_remote_log_block_status.go @@ -0,0 +1,20 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// Send Status of each log block that autopilot board might have sent. +type MessageRemoteLogBlockStatus struct { + // System ID. + TargetSystem uint8 + // Component ID. + TargetComponent uint8 + // Log data block sequence number. + Seqno uint32 + // Log data block status. + Status MAV_REMOTE_LOG_DATA_BLOCK_STATUSES `mavenum:"uint8"` +} + +// GetID implements the msg.Message interface. +func (*MessageRemoteLogBlockStatus) GetID() uint32 { + return 185 +} diff --git a/pkg/dialects/storm32/msg_remote_log_data_block.go b/pkg/dialects/storm32/msg_remote_log_data_block.go new file mode 100644 index 000000000..3c68e190f --- /dev/null +++ b/pkg/dialects/storm32/msg_remote_log_data_block.go @@ -0,0 +1,20 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// Send a block of log data to remote location. +type MessageRemoteLogDataBlock struct { + // System ID. + TargetSystem uint8 + // Component ID. + TargetComponent uint8 + // Log data block sequence number. + Seqno MAV_REMOTE_LOG_DATA_BLOCK_COMMANDS `mavenum:"uint32"` + // Log data block. + Data [200]uint8 +} + +// GetID implements the msg.Message interface. +func (*MessageRemoteLogDataBlock) GetID() uint32 { + return 184 +} diff --git a/pkg/dialects/storm32/msg_request_data_stream.go b/pkg/dialects/storm32/msg_request_data_stream.go new file mode 100644 index 000000000..9c4f2ef89 --- /dev/null +++ b/pkg/dialects/storm32/msg_request_data_stream.go @@ -0,0 +1,22 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// Request a data stream. +type MessageRequestDataStream struct { + // The target requested to send the message stream. + TargetSystem uint8 + // The target requested to send the message stream. + TargetComponent uint8 + // The ID of the requested data stream + ReqStreamId uint8 + // The requested message rate + ReqMessageRate uint16 + // 1 to start sending, 0 to stop sending. + StartStop uint8 +} + +// GetID implements the msg.Message interface. +func (*MessageRequestDataStream) GetID() uint32 { + return 66 +} diff --git a/pkg/dialects/storm32/msg_request_event.go b/pkg/dialects/storm32/msg_request_event.go new file mode 100644 index 000000000..51033af4d --- /dev/null +++ b/pkg/dialects/storm32/msg_request_event.go @@ -0,0 +1,20 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// Request one or more events to be (re-)sent. If first_sequence==last_sequence, only a single event is requested. Note that first_sequence can be larger than last_sequence (because the sequence number can wrap). Each sequence will trigger an EVENT or EVENT_ERROR response. +type MessageRequestEvent struct { + // System ID + TargetSystem uint8 + // Component ID + TargetComponent uint8 + // First sequence number of the requested event. + FirstSequence uint16 + // Last sequence number of the requested event. + LastSequence uint16 +} + +// GetID implements the msg.Message interface. +func (*MessageRequestEvent) GetID() uint32 { + return 412 +} diff --git a/pkg/dialects/storm32/msg_resource_request.go b/pkg/dialects/storm32/msg_resource_request.go new file mode 100644 index 000000000..5be7e1533 --- /dev/null +++ b/pkg/dialects/storm32/msg_resource_request.go @@ -0,0 +1,22 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// The autopilot is requesting a resource (file, binary, other type of data) +type MessageResourceRequest struct { + // Request ID. This ID should be re-used when sending back URI contents + RequestId uint8 + // The type of requested URI. 0 = a file via URL. 1 = a UAVCAN binary + UriType uint8 + // The requested unique resource identifier (URI). It is not necessarily a straight domain name (depends on the URI type enum) + Uri [120]uint8 + // The way the autopilot wants to receive the URI. 0 = MAVLink FTP. 1 = binary stream. + TransferType uint8 + // The storage path the autopilot wants the URI to be stored in. Will only be valid if the transfer_type has a storage associated (e.g. MAVLink FTP). + Storage [120]uint8 +} + +// GetID implements the msg.Message interface. +func (*MessageResourceRequest) GetID() uint32 { + return 142 +} diff --git a/pkg/dialects/storm32/msg_response_event_error.go b/pkg/dialects/storm32/msg_response_event_error.go new file mode 100644 index 000000000..fddf6fc6a --- /dev/null +++ b/pkg/dialects/storm32/msg_response_event_error.go @@ -0,0 +1,22 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// Response to a REQUEST_EVENT in case of an error (e.g. the event is not available anymore). +type MessageResponseEventError struct { + // System ID + TargetSystem uint8 + // Component ID + TargetComponent uint8 + // Sequence number. + Sequence uint16 + // Oldest Sequence number that is still available after the sequence set in REQUEST_EVENT. + SequenceOldestAvailable uint16 + // Error reason. + Reason MAV_EVENT_ERROR_REASON `mavenum:"uint8"` +} + +// GetID implements the msg.Message interface. +func (*MessageResponseEventError) GetID() uint32 { + return 413 +} diff --git a/pkg/dialects/storm32/msg_rpm.go b/pkg/dialects/storm32/msg_rpm.go new file mode 100644 index 000000000..098a614f2 --- /dev/null +++ b/pkg/dialects/storm32/msg_rpm.go @@ -0,0 +1,16 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// RPM sensor output. +type MessageRpm struct { + // RPM Sensor1. + Rpm1 float32 + // RPM Sensor2. + Rpm2 float32 +} + +// GetID implements the msg.Message interface. +func (*MessageRpm) GetID() uint32 { + return 226 +} diff --git a/pkg/dialects/storm32/msg_safety_allowed_area.go b/pkg/dialects/storm32/msg_safety_allowed_area.go new file mode 100644 index 000000000..c1bb994fa --- /dev/null +++ b/pkg/dialects/storm32/msg_safety_allowed_area.go @@ -0,0 +1,26 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// Read out the safety zone the MAV currently assumes. +type MessageSafetyAllowedArea struct { + // Coordinate frame. Can be either global, GPS, right-handed with Z axis up or local, right handed, Z axis down. + Frame MAV_FRAME `mavenum:"uint8"` + // x position 1 / Latitude 1 + P1x float32 + // y position 1 / Longitude 1 + P1y float32 + // z position 1 / Altitude 1 + P1z float32 + // x position 2 / Latitude 2 + P2x float32 + // y position 2 / Longitude 2 + P2y float32 + // z position 2 / Altitude 2 + P2z float32 +} + +// GetID implements the msg.Message interface. +func (*MessageSafetyAllowedArea) GetID() uint32 { + return 55 +} diff --git a/pkg/dialects/storm32/msg_safety_set_allowed_area.go b/pkg/dialects/storm32/msg_safety_set_allowed_area.go new file mode 100644 index 000000000..d8179c81f --- /dev/null +++ b/pkg/dialects/storm32/msg_safety_set_allowed_area.go @@ -0,0 +1,30 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// Set a safety zone (volume), which is defined by two corners of a cube. This message can be used to tell the MAV which setpoints/waypoints to accept and which to reject. Safety areas are often enforced by national or competition regulations. +type MessageSafetySetAllowedArea struct { + // System ID + TargetSystem uint8 + // Component ID + TargetComponent uint8 + // Coordinate frame. Can be either global, GPS, right-handed with Z axis up or local, right handed, Z axis down. + Frame MAV_FRAME `mavenum:"uint8"` + // x position 1 / Latitude 1 + P1x float32 + // y position 1 / Longitude 1 + P1y float32 + // z position 1 / Altitude 1 + P1z float32 + // x position 2 / Latitude 2 + P2x float32 + // y position 2 / Longitude 2 + P2y float32 + // z position 2 / Altitude 2 + P2z float32 +} + +// GetID implements the msg.Message interface. +func (*MessageSafetySetAllowedArea) GetID() uint32 { + return 54 +} diff --git a/pkg/dialects/storm32/msg_scaled_imu.go b/pkg/dialects/storm32/msg_scaled_imu.go new file mode 100644 index 000000000..8fafb4595 --- /dev/null +++ b/pkg/dialects/storm32/msg_scaled_imu.go @@ -0,0 +1,34 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// The RAW IMU readings for the usual 9DOF sensor setup. This message should contain the scaled values to the described units +type MessageScaledImu struct { + // Timestamp (time since system boot). + TimeBootMs uint32 + // X acceleration + Xacc int16 + // Y acceleration + Yacc int16 + // Z acceleration + Zacc int16 + // Angular speed around X axis + Xgyro int16 + // Angular speed around Y axis + Ygyro int16 + // Angular speed around Z axis + Zgyro int16 + // X Magnetic field + Xmag int16 + // Y Magnetic field + Ymag int16 + // Z Magnetic field + Zmag int16 + // Temperature, 0: IMU does not provide temperature values. If the IMU is at 0C it must send 1 (0.01C). + Temperature int16 `mavext:"true"` +} + +// GetID implements the msg.Message interface. +func (*MessageScaledImu) GetID() uint32 { + return 26 +} diff --git a/pkg/dialects/storm32/msg_scaled_imu2.go b/pkg/dialects/storm32/msg_scaled_imu2.go new file mode 100644 index 000000000..c4a526cc2 --- /dev/null +++ b/pkg/dialects/storm32/msg_scaled_imu2.go @@ -0,0 +1,34 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// The RAW IMU readings for secondary 9DOF sensor setup. This message should contain the scaled values to the described units +type MessageScaledImu2 struct { + // Timestamp (time since system boot). + TimeBootMs uint32 + // X acceleration + Xacc int16 + // Y acceleration + Yacc int16 + // Z acceleration + Zacc int16 + // Angular speed around X axis + Xgyro int16 + // Angular speed around Y axis + Ygyro int16 + // Angular speed around Z axis + Zgyro int16 + // X Magnetic field + Xmag int16 + // Y Magnetic field + Ymag int16 + // Z Magnetic field + Zmag int16 + // Temperature, 0: IMU does not provide temperature values. If the IMU is at 0C it must send 1 (0.01C). + Temperature int16 `mavext:"true"` +} + +// GetID implements the msg.Message interface. +func (*MessageScaledImu2) GetID() uint32 { + return 116 +} diff --git a/pkg/dialects/storm32/msg_scaled_imu3.go b/pkg/dialects/storm32/msg_scaled_imu3.go new file mode 100644 index 000000000..0bf3e7237 --- /dev/null +++ b/pkg/dialects/storm32/msg_scaled_imu3.go @@ -0,0 +1,34 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// The RAW IMU readings for 3rd 9DOF sensor setup. This message should contain the scaled values to the described units +type MessageScaledImu3 struct { + // Timestamp (time since system boot). + TimeBootMs uint32 + // X acceleration + Xacc int16 + // Y acceleration + Yacc int16 + // Z acceleration + Zacc int16 + // Angular speed around X axis + Xgyro int16 + // Angular speed around Y axis + Ygyro int16 + // Angular speed around Z axis + Zgyro int16 + // X Magnetic field + Xmag int16 + // Y Magnetic field + Ymag int16 + // Z Magnetic field + Zmag int16 + // Temperature, 0: IMU does not provide temperature values. If the IMU is at 0C it must send 1 (0.01C). + Temperature int16 `mavext:"true"` +} + +// GetID implements the msg.Message interface. +func (*MessageScaledImu3) GetID() uint32 { + return 129 +} diff --git a/pkg/dialects/storm32/msg_scaled_pressure.go b/pkg/dialects/storm32/msg_scaled_pressure.go new file mode 100644 index 000000000..6b2bfe5d8 --- /dev/null +++ b/pkg/dialects/storm32/msg_scaled_pressure.go @@ -0,0 +1,22 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// The pressure readings for the typical setup of one absolute and differential pressure sensor. The units are as specified in each field. +type MessageScaledPressure struct { + // Timestamp (time since system boot). + TimeBootMs uint32 + // Absolute pressure + PressAbs float32 + // Differential pressure 1 + PressDiff float32 + // Absolute pressure temperature + Temperature int16 + // Differential pressure temperature (0, if not available). Report values of 0 (or 1) as 1 cdegC. + TemperaturePressDiff int16 `mavext:"true"` +} + +// GetID implements the msg.Message interface. +func (*MessageScaledPressure) GetID() uint32 { + return 29 +} diff --git a/pkg/dialects/storm32/msg_scaled_pressure2.go b/pkg/dialects/storm32/msg_scaled_pressure2.go new file mode 100644 index 000000000..63da535ec --- /dev/null +++ b/pkg/dialects/storm32/msg_scaled_pressure2.go @@ -0,0 +1,22 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// Barometer readings for 2nd barometer +type MessageScaledPressure2 struct { + // Timestamp (time since system boot). + TimeBootMs uint32 + // Absolute pressure + PressAbs float32 + // Differential pressure + PressDiff float32 + // Absolute pressure temperature + Temperature int16 + // Differential pressure temperature (0, if not available). Report values of 0 (or 1) as 1 cdegC. + TemperaturePressDiff int16 `mavext:"true"` +} + +// GetID implements the msg.Message interface. +func (*MessageScaledPressure2) GetID() uint32 { + return 137 +} diff --git a/pkg/dialects/storm32/msg_scaled_pressure3.go b/pkg/dialects/storm32/msg_scaled_pressure3.go new file mode 100644 index 000000000..7808d4b79 --- /dev/null +++ b/pkg/dialects/storm32/msg_scaled_pressure3.go @@ -0,0 +1,22 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// Barometer readings for 3rd barometer +type MessageScaledPressure3 struct { + // Timestamp (time since system boot). + TimeBootMs uint32 + // Absolute pressure + PressAbs float32 + // Differential pressure + PressDiff float32 + // Absolute pressure temperature + Temperature int16 + // Differential pressure temperature (0, if not available). Report values of 0 (or 1) as 1 cdegC. + TemperaturePressDiff int16 `mavext:"true"` +} + +// GetID implements the msg.Message interface. +func (*MessageScaledPressure3) GetID() uint32 { + return 143 +} diff --git a/pkg/dialects/storm32/msg_sensor_offsets.go b/pkg/dialects/storm32/msg_sensor_offsets.go new file mode 100644 index 000000000..d020c6b51 --- /dev/null +++ b/pkg/dialects/storm32/msg_sensor_offsets.go @@ -0,0 +1,36 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// Offsets and calibrations values for hardware sensors. This makes it easier to debug the calibration process. +type MessageSensorOffsets struct { + // Magnetometer X offset. + MagOfsX int16 + // Magnetometer Y offset. + MagOfsY int16 + // Magnetometer Z offset. + MagOfsZ int16 + // Magnetic declination. + MagDeclination float32 + // Raw pressure from barometer. + RawPress int32 + // Raw temperature from barometer. + RawTemp int32 + // Gyro X calibration. + GyroCalX float32 + // Gyro Y calibration. + GyroCalY float32 + // Gyro Z calibration. + GyroCalZ float32 + // Accel X calibration. + AccelCalX float32 + // Accel Y calibration. + AccelCalY float32 + // Accel Z calibration. + AccelCalZ float32 +} + +// GetID implements the msg.Message interface. +func (*MessageSensorOffsets) GetID() uint32 { + return 150 +} diff --git a/pkg/dialects/storm32/msg_serial_control.go b/pkg/dialects/storm32/msg_serial_control.go new file mode 100644 index 000000000..037d509a8 --- /dev/null +++ b/pkg/dialects/storm32/msg_serial_control.go @@ -0,0 +1,28 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// Control a serial port. This can be used for raw access to an onboard serial peripheral such as a GPS or telemetry radio. It is designed to make it possible to update the devices firmware via MAVLink messages or change the devices settings. A message with zero bytes can be used to change just the baudrate. +type MessageSerialControl struct { + // Serial control device type. + Device SERIAL_CONTROL_DEV `mavenum:"uint8"` + // Bitmap of serial control flags. + Flags SERIAL_CONTROL_FLAG `mavenum:"uint8"` + // Timeout for reply data + Timeout uint16 + // Baudrate of transfer. Zero means no change. + Baudrate uint32 + // how many bytes in this transfer + Count uint8 + // serial data + Data [70]uint8 + // System ID + TargetSystem uint8 `mavext:"true"` + // Component ID + TargetComponent uint8 `mavext:"true"` +} + +// GetID implements the msg.Message interface. +func (*MessageSerialControl) GetID() uint32 { + return 126 +} diff --git a/pkg/dialects/storm32/msg_servo_output_raw.go b/pkg/dialects/storm32/msg_servo_output_raw.go new file mode 100644 index 000000000..8fcbe3e28 --- /dev/null +++ b/pkg/dialects/storm32/msg_servo_output_raw.go @@ -0,0 +1,48 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// Superseded by ACTUATOR_OUTPUT_STATUS. The RAW values of the servo outputs (for RC input from the remote, use the RC_CHANNELS messages). The standard PPM modulation is as follows: 1000 microseconds: 0%, 2000 microseconds: 100%. +type MessageServoOutputRaw struct { + // Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. + TimeUsec uint32 + // Servo output port (set of 8 outputs = 1 port). Flight stacks running on Pixhawk should use: 0 = MAIN, 1 = AUX. + Port uint8 + // Servo output 1 value + Servo1Raw uint16 + // Servo output 2 value + Servo2Raw uint16 + // Servo output 3 value + Servo3Raw uint16 + // Servo output 4 value + Servo4Raw uint16 + // Servo output 5 value + Servo5Raw uint16 + // Servo output 6 value + Servo6Raw uint16 + // Servo output 7 value + Servo7Raw uint16 + // Servo output 8 value + Servo8Raw uint16 + // Servo output 9 value + Servo9Raw uint16 `mavext:"true"` + // Servo output 10 value + Servo10Raw uint16 `mavext:"true"` + // Servo output 11 value + Servo11Raw uint16 `mavext:"true"` + // Servo output 12 value + Servo12Raw uint16 `mavext:"true"` + // Servo output 13 value + Servo13Raw uint16 `mavext:"true"` + // Servo output 14 value + Servo14Raw uint16 `mavext:"true"` + // Servo output 15 value + Servo15Raw uint16 `mavext:"true"` + // Servo output 16 value + Servo16Raw uint16 `mavext:"true"` +} + +// GetID implements the msg.Message interface. +func (*MessageServoOutputRaw) GetID() uint32 { + return 36 +} diff --git a/pkg/dialects/storm32/msg_set_actuator_control_target.go b/pkg/dialects/storm32/msg_set_actuator_control_target.go new file mode 100644 index 000000000..d625ce2b5 --- /dev/null +++ b/pkg/dialects/storm32/msg_set_actuator_control_target.go @@ -0,0 +1,22 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// Set the vehicle attitude and body angular rates. +type MessageSetActuatorControlTarget struct { + // Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. + TimeUsec uint64 + // Actuator group. The "_mlx" indicates this is a multi-instance message and a MAVLink parser should use this field to difference between instances. + GroupMlx uint8 + // System ID + TargetSystem uint8 + // Component ID + TargetComponent uint8 + // Actuator controls. Normed to -1..+1 where 0 is neutral position. Throttle for single rotation direction motors is 0..1, negative range for reverse direction. Standard mapping for attitude controls (group 0): (index 0-7): roll, pitch, yaw, throttle, flaps, spoilers, airbrakes, landing gear. Load a pass-through mixer to repurpose them as generic outputs. + Controls [8]float32 +} + +// GetID implements the msg.Message interface. +func (*MessageSetActuatorControlTarget) GetID() uint32 { + return 139 +} diff --git a/pkg/dialects/storm32/msg_set_attitude_target.go b/pkg/dialects/storm32/msg_set_attitude_target.go new file mode 100644 index 000000000..7f750ff33 --- /dev/null +++ b/pkg/dialects/storm32/msg_set_attitude_target.go @@ -0,0 +1,32 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// Sets a desired vehicle attitude. Used by an external controller to command the vehicle (manual controller or other system). +type MessageSetAttitudeTarget struct { + // Timestamp (time since system boot). + TimeBootMs uint32 + // System ID + TargetSystem uint8 + // Component ID + TargetComponent uint8 + // Bitmap to indicate which dimensions should be ignored by the vehicle. + TypeMask ATTITUDE_TARGET_TYPEMASK `mavenum:"uint8"` + // Attitude quaternion (w, x, y, z order, zero-rotation is 1, 0, 0, 0) + Q [4]float32 + // Body roll rate + BodyRollRate float32 + // Body pitch rate + BodyPitchRate float32 + // Body yaw rate + BodyYawRate float32 + // Collective thrust, normalized to 0 .. 1 (-1 .. 1 for vehicles capable of reverse trust) + Thrust float32 + // 3D thrust setpoint in the body NED frame, normalized to -1 .. 1 + ThrustBody [3]float32 `mavext:"true"` +} + +// GetID implements the msg.Message interface. +func (*MessageSetAttitudeTarget) GetID() uint32 { + return 82 +} diff --git a/pkg/dialects/storm32/msg_set_gps_global_origin.go b/pkg/dialects/storm32/msg_set_gps_global_origin.go new file mode 100644 index 000000000..58cb057e4 --- /dev/null +++ b/pkg/dialects/storm32/msg_set_gps_global_origin.go @@ -0,0 +1,22 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// Sets the GPS co-ordinates of the vehicle local origin (0,0,0) position. Vehicle should emit GPS_GLOBAL_ORIGIN irrespective of whether the origin is changed. This enables transform between the local coordinate frame and the global (GPS) coordinate frame, which may be necessary when (for example) indoor and outdoor settings are connected and the MAV should move from in- to outdoor. +type MessageSetGpsGlobalOrigin struct { + // System ID + TargetSystem uint8 + // Latitude (WGS84) + Latitude int32 + // Longitude (WGS84) + Longitude int32 + // Altitude (MSL). Positive for up. + Altitude int32 + // Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. + TimeUsec uint64 `mavext:"true"` +} + +// GetID implements the msg.Message interface. +func (*MessageSetGpsGlobalOrigin) GetID() uint32 { + return 48 +} diff --git a/pkg/dialects/storm32/msg_set_home_position.go b/pkg/dialects/storm32/msg_set_home_position.go new file mode 100644 index 000000000..6fe37fc7a --- /dev/null +++ b/pkg/dialects/storm32/msg_set_home_position.go @@ -0,0 +1,36 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// The position the system will return to and land on. The position is set automatically by the system during the takeoff in case it was not explicitly set by the operator before or after. The global and local positions encode the position in the respective coordinate frames, while the q parameter encodes the orientation of the surface. Under normal conditions it describes the heading and terrain slope, which can be used by the aircraft to adjust the approach. The approach 3D vector describes the point to which the system should fly in normal flight mode and then perform a landing sequence along the vector. +type MessageSetHomePosition struct { + // System ID. + TargetSystem uint8 + // Latitude (WGS84) + Latitude int32 + // Longitude (WGS84) + Longitude int32 + // Altitude (MSL). Positive for up. + Altitude int32 + // Local X position of this position in the local coordinate frame + X float32 + // Local Y position of this position in the local coordinate frame + Y float32 + // Local Z position of this position in the local coordinate frame + Z float32 + // World to surface normal and heading transformation of the takeoff position. Used to indicate the heading and slope of the ground + Q [4]float32 + // Local X position of the end of the approach vector. Multicopters should set this position based on their takeoff path. Grass-landing fixed wing aircraft should set it the same way as multicopters. Runway-landing fixed wing aircraft should set it to the opposite direction of the takeoff, assuming the takeoff happened from the threshold / touchdown zone. + ApproachX float32 + // Local Y position of the end of the approach vector. Multicopters should set this position based on their takeoff path. Grass-landing fixed wing aircraft should set it the same way as multicopters. Runway-landing fixed wing aircraft should set it to the opposite direction of the takeoff, assuming the takeoff happened from the threshold / touchdown zone. + ApproachY float32 + // Local Z position of the end of the approach vector. Multicopters should set this position based on their takeoff path. Grass-landing fixed wing aircraft should set it the same way as multicopters. Runway-landing fixed wing aircraft should set it to the opposite direction of the takeoff, assuming the takeoff happened from the threshold / touchdown zone. + ApproachZ float32 + // Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. + TimeUsec uint64 `mavext:"true"` +} + +// GetID implements the msg.Message interface. +func (*MessageSetHomePosition) GetID() uint32 { + return 243 +} diff --git a/pkg/dialects/storm32/msg_set_mag_offsets.go b/pkg/dialects/storm32/msg_set_mag_offsets.go new file mode 100644 index 000000000..c2b579a93 --- /dev/null +++ b/pkg/dialects/storm32/msg_set_mag_offsets.go @@ -0,0 +1,22 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// Set the magnetometer offsets +type MessageSetMagOffsets struct { + // System ID. + TargetSystem uint8 + // Component ID. + TargetComponent uint8 + // Magnetometer X offset. + MagOfsX int16 + // Magnetometer Y offset. + MagOfsY int16 + // Magnetometer Z offset. + MagOfsZ int16 +} + +// GetID implements the msg.Message interface. +func (*MessageSetMagOffsets) GetID() uint32 { + return 151 +} diff --git a/pkg/dialects/storm32/msg_set_mode.go b/pkg/dialects/storm32/msg_set_mode.go new file mode 100644 index 000000000..941acb6fa --- /dev/null +++ b/pkg/dialects/storm32/msg_set_mode.go @@ -0,0 +1,18 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// Set the system mode, as defined by enum MAV_MODE. There is no target component id as the mode is by definition for the overall aircraft, not only for one component. +type MessageSetMode struct { + // The system setting the mode + TargetSystem uint8 + // The new base mode. + BaseMode MAV_MODE `mavenum:"uint8"` + // The new autopilot-specific mode. This field can be ignored by an autopilot. + CustomMode uint32 +} + +// GetID implements the msg.Message interface. +func (*MessageSetMode) GetID() uint32 { + return 11 +} diff --git a/pkg/dialects/storm32/msg_set_position_target_global_int.go b/pkg/dialects/storm32/msg_set_position_target_global_int.go new file mode 100644 index 000000000..0de90c5c5 --- /dev/null +++ b/pkg/dialects/storm32/msg_set_position_target_global_int.go @@ -0,0 +1,44 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// Sets a desired vehicle position, velocity, and/or acceleration in a global coordinate system (WGS84). Used by an external controller to command the vehicle (manual controller or other system). +type MessageSetPositionTargetGlobalInt struct { + // Timestamp (time since system boot). The rationale for the timestamp in the setpoint is to allow the system to compensate for the transport delay of the setpoint. This allows the system to compensate processing latency. + TimeBootMs uint32 + // System ID + TargetSystem uint8 + // Component ID + TargetComponent uint8 + // Valid options are: MAV_FRAME_GLOBAL_INT = 5, MAV_FRAME_GLOBAL_RELATIVE_ALT_INT = 6, MAV_FRAME_GLOBAL_TERRAIN_ALT_INT = 11 + CoordinateFrame MAV_FRAME `mavenum:"uint8"` + // Bitmap to indicate which dimensions should be ignored by the vehicle. + TypeMask POSITION_TARGET_TYPEMASK `mavenum:"uint16"` + // X Position in WGS84 frame + LatInt int32 + // Y Position in WGS84 frame + LonInt int32 + // Altitude (MSL, Relative to home, or AGL - depending on frame) + Alt float32 + // X velocity in NED frame + Vx float32 + // Y velocity in NED frame + Vy float32 + // Z velocity in NED frame + Vz float32 + // X acceleration or force (if bit 10 of type_mask is set) in NED frame in meter / s^2 or N + Afx float32 + // Y acceleration or force (if bit 10 of type_mask is set) in NED frame in meter / s^2 or N + Afy float32 + // Z acceleration or force (if bit 10 of type_mask is set) in NED frame in meter / s^2 or N + Afz float32 + // yaw setpoint + Yaw float32 + // yaw rate setpoint + YawRate float32 +} + +// GetID implements the msg.Message interface. +func (*MessageSetPositionTargetGlobalInt) GetID() uint32 { + return 86 +} diff --git a/pkg/dialects/storm32/msg_set_position_target_local_ned.go b/pkg/dialects/storm32/msg_set_position_target_local_ned.go new file mode 100644 index 000000000..1c063590b --- /dev/null +++ b/pkg/dialects/storm32/msg_set_position_target_local_ned.go @@ -0,0 +1,44 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// Sets a desired vehicle position in a local north-east-down coordinate frame. Used by an external controller to command the vehicle (manual controller or other system). +type MessageSetPositionTargetLocalNed struct { + // Timestamp (time since system boot). + TimeBootMs uint32 + // System ID + TargetSystem uint8 + // Component ID + TargetComponent uint8 + // Valid options are: MAV_FRAME_LOCAL_NED = 1, MAV_FRAME_LOCAL_OFFSET_NED = 7, MAV_FRAME_BODY_NED = 8, MAV_FRAME_BODY_OFFSET_NED = 9 + CoordinateFrame MAV_FRAME `mavenum:"uint8"` + // Bitmap to indicate which dimensions should be ignored by the vehicle. + TypeMask POSITION_TARGET_TYPEMASK `mavenum:"uint16"` + // X Position in NED frame + X float32 + // Y Position in NED frame + Y float32 + // Z Position in NED frame (note, altitude is negative in NED) + Z float32 + // X velocity in NED frame + Vx float32 + // Y velocity in NED frame + Vy float32 + // Z velocity in NED frame + Vz float32 + // X acceleration or force (if bit 10 of type_mask is set) in NED frame in meter / s^2 or N + Afx float32 + // Y acceleration or force (if bit 10 of type_mask is set) in NED frame in meter / s^2 or N + Afy float32 + // Z acceleration or force (if bit 10 of type_mask is set) in NED frame in meter / s^2 or N + Afz float32 + // yaw setpoint + Yaw float32 + // yaw rate setpoint + YawRate float32 +} + +// GetID implements the msg.Message interface. +func (*MessageSetPositionTargetLocalNed) GetID() uint32 { + return 84 +} diff --git a/pkg/dialects/storm32/msg_setup_signing.go b/pkg/dialects/storm32/msg_setup_signing.go new file mode 100644 index 000000000..e5848a714 --- /dev/null +++ b/pkg/dialects/storm32/msg_setup_signing.go @@ -0,0 +1,20 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// Setup a MAVLink2 signing key. If called with secret_key of all zero and zero initial_timestamp will disable signing +type MessageSetupSigning struct { + // system id of the target + TargetSystem uint8 + // component ID of the target + TargetComponent uint8 + // signing key + SecretKey [32]uint8 + // initial timestamp + InitialTimestamp uint64 +} + +// GetID implements the msg.Message interface. +func (*MessageSetupSigning) GetID() uint32 { + return 256 +} diff --git a/pkg/dialects/storm32/msg_sim_state.go b/pkg/dialects/storm32/msg_sim_state.go new file mode 100644 index 000000000..ebf66e061 --- /dev/null +++ b/pkg/dialects/storm32/msg_sim_state.go @@ -0,0 +1,54 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// Status of simulation environment, if used +type MessageSimState struct { + // True attitude quaternion component 1, w (1 in null-rotation) + Q1 float32 + // True attitude quaternion component 2, x (0 in null-rotation) + Q2 float32 + // True attitude quaternion component 3, y (0 in null-rotation) + Q3 float32 + // True attitude quaternion component 4, z (0 in null-rotation) + Q4 float32 + // Attitude roll expressed as Euler angles, not recommended except for human-readable outputs + Roll float32 + // Attitude pitch expressed as Euler angles, not recommended except for human-readable outputs + Pitch float32 + // Attitude yaw expressed as Euler angles, not recommended except for human-readable outputs + Yaw float32 + // X acceleration + Xacc float32 + // Y acceleration + Yacc float32 + // Z acceleration + Zacc float32 + // Angular speed around X axis + Xgyro float32 + // Angular speed around Y axis + Ygyro float32 + // Angular speed around Z axis + Zgyro float32 + // Latitude + Lat float32 + // Longitude + Lon float32 + // Altitude + Alt float32 + // Horizontal position standard deviation + StdDevHorz float32 + // Vertical position standard deviation + StdDevVert float32 + // True velocity in north direction in earth-fixed NED frame + Vn float32 + // True velocity in east direction in earth-fixed NED frame + Ve float32 + // True velocity in down direction in earth-fixed NED frame + Vd float32 +} + +// GetID implements the msg.Message interface. +func (*MessageSimState) GetID() uint32 { + return 108 +} diff --git a/pkg/dialects/storm32/msg_simstate.go b/pkg/dialects/storm32/msg_simstate.go new file mode 100644 index 000000000..7cf2b9aad --- /dev/null +++ b/pkg/dialects/storm32/msg_simstate.go @@ -0,0 +1,34 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// Status of simulation environment, if used. +type MessageSimstate struct { + // Roll angle. + Roll float32 + // Pitch angle. + Pitch float32 + // Yaw angle. + Yaw float32 + // X acceleration. + Xacc float32 + // Y acceleration. + Yacc float32 + // Z acceleration. + Zacc float32 + // Angular speed around X axis. + Xgyro float32 + // Angular speed around Y axis. + Ygyro float32 + // Angular speed around Z axis. + Zgyro float32 + // Latitude. + Lat int32 + // Longitude. + Lng int32 +} + +// GetID implements the msg.Message interface. +func (*MessageSimstate) GetID() uint32 { + return 164 +} diff --git a/pkg/dialects/storm32/msg_smart_battery_info.go b/pkg/dialects/storm32/msg_smart_battery_info.go new file mode 100644 index 000000000..afd246977 --- /dev/null +++ b/pkg/dialects/storm32/msg_smart_battery_info.go @@ -0,0 +1,46 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// Smart Battery information (static/infrequent update). Use for updates from: smart battery to flight stack, flight stack to GCS. Use BATTERY_STATUS for smart battery frequent updates. +type MessageSmartBatteryInfo struct { + // Battery ID + Id uint8 + // Function of the battery + BatteryFunction MAV_BATTERY_FUNCTION `mavenum:"uint8"` + // Type (chemistry) of the battery + Type MAV_BATTERY_TYPE `mavenum:"uint8"` + // Capacity when full according to manufacturer, -1: field not provided. + CapacityFullSpecification int32 + // Capacity when full (accounting for battery degradation), -1: field not provided. + CapacityFull int32 + // Charge/discharge cycle count. UINT16_MAX: field not provided. + CycleCount uint16 + // Serial number in ASCII characters, 0 terminated. All 0: field not provided. + SerialNumber string `mavlen:"16"` + // Static device name in ASCII characters, 0 terminated. All 0: field not provided. Encode as manufacturer name then product name separated using an underscore. + DeviceName string `mavlen:"50"` + // Battery weight. 0: field not provided. + Weight uint16 + // Minimum per-cell voltage when discharging. If not supplied set to UINT16_MAX value. + DischargeMinimumVoltage uint16 + // Minimum per-cell voltage when charging. If not supplied set to UINT16_MAX value. + ChargingMinimumVoltage uint16 + // Minimum per-cell voltage when resting. If not supplied set to UINT16_MAX value. + RestingMinimumVoltage uint16 + // Maximum per-cell voltage when charged. 0: field not provided. + ChargingMaximumVoltage uint16 `mavext:"true"` + // Number of battery cells in series. 0: field not provided. + CellsInSeries uint8 `mavext:"true"` + // Maximum pack discharge current. 0: field not provided. + DischargeMaximumCurrent uint32 `mavext:"true"` + // Maximum pack discharge burst current. 0: field not provided. + DischargeMaximumBurstCurrent uint32 `mavext:"true"` + // Manufacture date (DD/MM/YYYY) in ASCII characters, 0 terminated. All 0: field not provided. + ManufactureDate string `mavext:"true" mavlen:"11"` +} + +// GetID implements the msg.Message interface. +func (*MessageSmartBatteryInfo) GetID() uint32 { + return 370 +} diff --git a/pkg/dialects/storm32/msg_statustext.go b/pkg/dialects/storm32/msg_statustext.go new file mode 100644 index 000000000..5bf719bb9 --- /dev/null +++ b/pkg/dialects/storm32/msg_statustext.go @@ -0,0 +1,20 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// Status text message. These messages are printed in yellow in the COMM console of QGroundControl. WARNING: They consume quite some bandwidth, so use only for important status and error messages. If implemented wisely, these messages are buffered on the MCU and sent only at a limited rate (e.g. 10 Hz). +type MessageStatustext struct { + // Severity of status. Relies on the definitions within RFC-5424. + Severity MAV_SEVERITY `mavenum:"uint8"` + // Status text message, without null termination character + Text string `mavlen:"50"` + // Unique (opaque) identifier for this statustext message. May be used to reassemble a logical long-statustext message from a sequence of chunks. A value of zero indicates this is the only chunk in the sequence and the message can be emitted immediately. + Id uint16 `mavext:"true"` + // This chunk's sequence number; indexing is from zero. Any null character in the text field is taken to mean this was the last chunk. + ChunkSeq uint8 `mavext:"true"` +} + +// GetID implements the msg.Message interface. +func (*MessageStatustext) GetID() uint32 { + return 253 +} diff --git a/pkg/dialects/storm32/msg_storage_information.go b/pkg/dialects/storm32/msg_storage_information.go new file mode 100644 index 000000000..a3ccd8eaa --- /dev/null +++ b/pkg/dialects/storm32/msg_storage_information.go @@ -0,0 +1,39 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// Information about a storage medium. This message is sent in response to a request with MAV_CMD_REQUEST_MESSAGE and whenever the status of the storage changes (STORAGE_STATUS). Use MAV_CMD_REQUEST_MESSAGE.param2 to indicate the index/id of requested storage: 0 for all, 1 for first, 2 for second, etc. +type MessageStorageInformation struct { + // Timestamp (time since system boot). + TimeBootMs uint32 + // Storage ID (1 for first, 2 for second, etc.) + StorageId uint8 + // Number of storage devices + StorageCount uint8 + // Status of storage + Status STORAGE_STATUS `mavenum:"uint8"` + // Total capacity. If storage is not ready (STORAGE_STATUS_READY) value will be ignored. + TotalCapacity float32 + // Used capacity. If storage is not ready (STORAGE_STATUS_READY) value will be ignored. + UsedCapacity float32 + // Available storage capacity. If storage is not ready (STORAGE_STATUS_READY) value will be ignored. + AvailableCapacity float32 + // Read speed. + ReadSpeed float32 + // Write speed. + WriteSpeed float32 + // Type of storage + Type STORAGE_TYPE `mavenum:"uint8" mavext:"true"` + // Textual storage name to be used in UI (microSD 1, Internal Memory, etc.) This is a NULL terminated string. If it is exactly 32 characters long, add a terminating NULL. If this string is empty, the generic type is shown to the user. + Name string `mavext:"true" mavlen:"32"` + // Flags indicating whether this instance is preferred storage for photos, videos, etc. + // Note: Implementations should initially set the flags on the system-default storage id used for saving media (if possible/supported). + // This setting can then be overridden using MAV_CMD_SET_STORAGE_USAGE. + // If the media usage flags are not set, a GCS may assume storage ID 1 is the default storage for all media types. + StorageUsage STORAGE_USAGE_FLAG `mavenum:"uint8" mavext:"true"` +} + +// GetID implements the msg.Message interface. +func (*MessageStorageInformation) GetID() uint32 { + return 261 +} diff --git a/pkg/dialects/storm32/msg_storm32_gimbal_device_control.go b/pkg/dialects/storm32/msg_storm32_gimbal_device_control.go new file mode 100644 index 000000000..919553eb6 --- /dev/null +++ b/pkg/dialects/storm32/msg_storm32_gimbal_device_control.go @@ -0,0 +1,26 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// Message to a gimbal device to control its attitude. This message is to be sent from the gimbal manager to the gimbal device. Angles and rates can be set to NaN according to use case. +type MessageStorm32GimbalDeviceControl struct { + // System ID + TargetSystem uint8 + // Component ID + TargetComponent uint8 + // Gimbal device flags (UINT16_MAX to be ignored). + Flags MAV_STORM32_GIMBAL_DEVICE_FLAGS `mavenum:"uint16"` + // Quaternion components, w, x, y, z (1 0 0 0 is the null-rotation, the frame is determined by the STORM32_GIMBAL_DEVICE_FLAGS_YAW_ABSOLUTE flag, set first element to NaN to be ignored). + Q [4]float32 + // X component of angular velocity (positive: roll to the right, NaN to be ignored). + AngularVelocityX float32 + // Y component of angular velocity (positive: tilt up, NaN to be ignored). + AngularVelocityY float32 + // Z component of angular velocity (positive: pan to the right, the frame is determined by the STORM32_GIMBAL_DEVICE_FLAGS_YAW_ABSOLUTE flag, NaN to be ignored). + AngularVelocityZ float32 +} + +// GetID implements the msg.Message interface. +func (*MessageStorm32GimbalDeviceControl) GetID() uint32 { + return 60002 +} diff --git a/pkg/dialects/storm32/msg_storm32_gimbal_device_status.go b/pkg/dialects/storm32/msg_storm32_gimbal_device_status.go new file mode 100644 index 000000000..51e6c57d9 --- /dev/null +++ b/pkg/dialects/storm32/msg_storm32_gimbal_device_status.go @@ -0,0 +1,32 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// Message reporting the current status of a gimbal device. This message should be broadcasted by a gimbal device component at a low regular rate (e.g. 4 Hz). For higher rates it should be emitted with a target. +type MessageStorm32GimbalDeviceStatus struct { + // System ID + TargetSystem uint8 + // Component ID + TargetComponent uint8 + // Timestamp (time since system boot). + TimeBootMs uint32 + // Gimbal device flags currently applied. + Flags MAV_STORM32_GIMBAL_DEVICE_FLAGS `mavenum:"uint16"` + // Quaternion components, w, x, y, z (1 0 0 0 is the null-rotation). The frame depends on the STORM32_GIMBAL_DEVICE_FLAGS_YAW_ABSOLUTE flag. + Q [4]float32 + // X component of angular velocity (NaN if unknown). + AngularVelocityX float32 + // Y component of angular velocity (NaN if unknown). + AngularVelocityY float32 + // Z component of angular velocity (the frame depends on the STORM32_GIMBAL_DEVICE_FLAGS_YAW_ABSOLUTE flag, NaN if unknown). + AngularVelocityZ float32 + // Yaw in absolute frame relative to Earth's North, north is 0 (NaN if unknown). + YawAbsolute float32 + // Failure flags (0 for no failure). + FailureFlags GIMBAL_DEVICE_ERROR_FLAGS `mavenum:"uint16"` +} + +// GetID implements the msg.Message interface. +func (*MessageStorm32GimbalDeviceStatus) GetID() uint32 { + return 60001 +} diff --git a/pkg/dialects/storm32/msg_storm32_gimbal_manager_control.go b/pkg/dialects/storm32/msg_storm32_gimbal_manager_control.go new file mode 100644 index 000000000..22699254a --- /dev/null +++ b/pkg/dialects/storm32/msg_storm32_gimbal_manager_control.go @@ -0,0 +1,32 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// Message to a gimbal manager to control the gimbal attitude. Angles and rates can be set to NaN according to use case. A gimbal device is never to react to this message. +type MessageStorm32GimbalManagerControl struct { + // System ID + TargetSystem uint8 + // Component ID + TargetComponent uint8 + // Gimbal ID of the gimbal manager to address (component ID or 1-6 for non-MAVLink gimbal, 0 for all gimbals, send command multiple times for more than one but not all gimbals). + GimbalId uint8 + // Client which is contacting the gimbal manager (must be set). + Client MAV_STORM32_GIMBAL_MANAGER_CLIENT `mavenum:"uint8"` + // Gimbal device flags (UINT16_MAX to be ignored). + DeviceFlags MAV_STORM32_GIMBAL_DEVICE_FLAGS `mavenum:"uint16"` + // Gimbal manager flags (0 to be ignored). + ManagerFlags MAV_STORM32_GIMBAL_MANAGER_FLAGS `mavenum:"uint16"` + // Quaternion components, w, x, y, z (1 0 0 0 is the null-rotation, the frame is determined by the GIMBAL_MANAGER_FLAGS_ABSOLUTE_YAW flag, set first element to NaN to be ignored). + Q [4]float32 + // X component of angular velocity (positive: roll to the right, NaN to be ignored). + AngularVelocityX float32 + // Y component of angular velocity (positive: tilt up, NaN to be ignored). + AngularVelocityY float32 + // Z component of angular velocity (positive: pan to the right, the frame is determined by the STORM32_GIMBAL_DEVICE_FLAGS_YAW_ABSOLUTE flag, NaN to be ignored). + AngularVelocityZ float32 +} + +// GetID implements the msg.Message interface. +func (*MessageStorm32GimbalManagerControl) GetID() uint32 { + return 60012 +} diff --git a/pkg/dialects/storm32/msg_storm32_gimbal_manager_control_pitchyaw.go b/pkg/dialects/storm32/msg_storm32_gimbal_manager_control_pitchyaw.go new file mode 100644 index 000000000..ce035ea4e --- /dev/null +++ b/pkg/dialects/storm32/msg_storm32_gimbal_manager_control_pitchyaw.go @@ -0,0 +1,32 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// Message to a gimbal manager to control the gimbal tilt and pan angles. Angles and rates can be set to NaN according to use case. A gimbal device is never to react to this message. +type MessageStorm32GimbalManagerControlPitchyaw struct { + // System ID + TargetSystem uint8 + // Component ID + TargetComponent uint8 + // Gimbal ID of the gimbal manager to address (component ID or 1-6 for non-MAVLink gimbal, 0 for all gimbals, send command multiple times for more than one but not all gimbals). + GimbalId uint8 + // Client which is contacting the gimbal manager (must be set). + Client MAV_STORM32_GIMBAL_MANAGER_CLIENT `mavenum:"uint8"` + // Gimbal device flags (UINT16_MAX to be ignored). + DeviceFlags MAV_STORM32_GIMBAL_DEVICE_FLAGS `mavenum:"uint16"` + // Gimbal manager flags (0 to be ignored). + ManagerFlags MAV_STORM32_GIMBAL_MANAGER_FLAGS `mavenum:"uint16"` + // Pitch/tilt angle (positive: tilt up, NaN to be ignored). + Pitch float32 + // Yaw/pan angle (positive: pan the right, the frame is determined by the STORM32_GIMBAL_DEVICE_FLAGS_YAW_ABSOLUTE flag, NaN to be ignored). + Yaw float32 + // Pitch/tilt angular rate (positive: tilt up, NaN to be ignored). + PitchRate float32 + // Yaw/pan angular rate (positive: pan to the right, the frame is determined by the STORM32_GIMBAL_DEVICE_FLAGS_YAW_ABSOLUTE flag, NaN to be ignored). + YawRate float32 +} + +// GetID implements the msg.Message interface. +func (*MessageStorm32GimbalManagerControlPitchyaw) GetID() uint32 { + return 60013 +} diff --git a/pkg/dialects/storm32/msg_storm32_gimbal_manager_correct_roll.go b/pkg/dialects/storm32/msg_storm32_gimbal_manager_correct_roll.go new file mode 100644 index 000000000..db0944bd3 --- /dev/null +++ b/pkg/dialects/storm32/msg_storm32_gimbal_manager_correct_roll.go @@ -0,0 +1,22 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// Message to a gimbal manager to correct the gimbal roll angle. This message is typically used to manually correct for a tilted horizon in operation. A gimbal device is never to react to this message. +type MessageStorm32GimbalManagerCorrectRoll struct { + // System ID + TargetSystem uint8 + // Component ID + TargetComponent uint8 + // Gimbal ID of the gimbal manager to address (component ID or 1-6 for non-MAVLink gimbal, 0 for all gimbals, send command multiple times for more than one but not all gimbals). + GimbalId uint8 + // Client which is contacting the gimbal manager (must be set). + Client MAV_STORM32_GIMBAL_MANAGER_CLIENT `mavenum:"uint8"` + // Roll angle (positive to roll to the right). + Roll float32 +} + +// GetID implements the msg.Message interface. +func (*MessageStorm32GimbalManagerCorrectRoll) GetID() uint32 { + return 60014 +} diff --git a/pkg/dialects/storm32/msg_storm32_gimbal_manager_information.go b/pkg/dialects/storm32/msg_storm32_gimbal_manager_information.go new file mode 100644 index 000000000..a152fb487 --- /dev/null +++ b/pkg/dialects/storm32/msg_storm32_gimbal_manager_information.go @@ -0,0 +1,30 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// Information about a gimbal manager. This message should be requested by a ground station using MAV_CMD_REQUEST_MESSAGE. It mirrors some fields of the STORM32_GIMBAL_DEVICE_INFORMATION message, but not all. If the additional information is desired, also STORM32_GIMBAL_DEVICE_INFORMATION should be requested. +type MessageStorm32GimbalManagerInformation struct { + // Gimbal ID (component ID or 1-6 for non-MAVLink gimbal) that this gimbal manager is responsible for. + GimbalId uint8 + // Gimbal device capability flags. + DeviceCapFlags MAV_STORM32_GIMBAL_DEVICE_CAP_FLAGS `mavenum:"uint32"` + // Gimbal manager capability flags. + ManagerCapFlags MAV_STORM32_GIMBAL_MANAGER_CAP_FLAGS `mavenum:"uint32"` + // Hardware minimum roll angle (positive: roll to the right, NaN if unknown). + RollMin float32 + // Hardware maximum roll angle (positive: roll to the right, NaN if unknown). + RollMax float32 + // Hardware minimum pitch/tilt angle (positive: tilt up, NaN if unknown). + PitchMin float32 + // Hardware maximum pitch/tilt angle (positive: tilt up, NaN if unknown). + PitchMax float32 + // Hardware minimum yaw/pan angle (positive: pan to the right, relative to the vehicle/gimbal base, NaN if unknown). + YawMin float32 + // Hardware maximum yaw/pan angle (positive: pan to the right, relative to the vehicle/gimbal base, NaN if unknown). + YawMax float32 +} + +// GetID implements the msg.Message interface. +func (*MessageStorm32GimbalManagerInformation) GetID() uint32 { + return 60010 +} diff --git a/pkg/dialects/storm32/msg_storm32_gimbal_manager_profile.go b/pkg/dialects/storm32/msg_storm32_gimbal_manager_profile.go new file mode 100644 index 000000000..0ad5b2934 --- /dev/null +++ b/pkg/dialects/storm32/msg_storm32_gimbal_manager_profile.go @@ -0,0 +1,28 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// Message to set a gimbal manager profile. A gimbal device is never to react to this command. The selected profile is reported in the STORM32_GIMBAL_MANAGER_STATUS message. +type MessageStorm32GimbalManagerProfile struct { + // System ID + TargetSystem uint8 + // Component ID + TargetComponent uint8 + // Gimbal ID of the gimbal manager to address (component ID or 1-6 for non-MAVLink gimbal, 0 for all gimbals, send command multiple times for more than one but not all gimbals). + GimbalId uint8 + // Profile to be applied (0 = default). + Profile MAV_STORM32_GIMBAL_MANAGER_PROFILE `mavenum:"uint8"` + // Priorities for custom profile. + Priorities [8]uint8 + // Profile flags for custom profile (0 = default). + ProfileFlags uint8 + // Rc timeouts for custom profile (0 = infinite, in uints of 100 ms). + RcTimeout uint8 + // Timeouts for custom profile (0 = infinite, in uints of 100 ms). + Timeouts [8]uint8 +} + +// GetID implements the msg.Message interface. +func (*MessageStorm32GimbalManagerProfile) GetID() uint32 { + return 60015 +} diff --git a/pkg/dialects/storm32/msg_storm32_gimbal_manager_status.go b/pkg/dialects/storm32/msg_storm32_gimbal_manager_status.go new file mode 100644 index 000000000..30e090e8f --- /dev/null +++ b/pkg/dialects/storm32/msg_storm32_gimbal_manager_status.go @@ -0,0 +1,22 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// Message reporting the current status of a gimbal manager. This message should be broadcast at a low regular rate (e.g. 1 Hz, may be increase momentarily to e.g. 5 Hz for a period of 1 sec after a change). +type MessageStorm32GimbalManagerStatus struct { + // Gimbal ID (component ID or 1-6 for non-MAVLink gimbal) that this gimbal manager is responsible for. + GimbalId uint8 + // Client who is currently supervisor (0 = none). + Supervisor MAV_STORM32_GIMBAL_MANAGER_CLIENT `mavenum:"uint8"` + // Gimbal device flags currently applied. + DeviceFlags MAV_STORM32_GIMBAL_DEVICE_FLAGS `mavenum:"uint16"` + // Gimbal manager flags currently applied. + ManagerFlags MAV_STORM32_GIMBAL_MANAGER_FLAGS `mavenum:"uint16"` + // Profile currently applied (0 = default). + Profile MAV_STORM32_GIMBAL_MANAGER_PROFILE `mavenum:"uint8"` +} + +// GetID implements the msg.Message interface. +func (*MessageStorm32GimbalManagerStatus) GetID() uint32 { + return 60011 +} diff --git a/pkg/dialects/storm32/msg_supported_tunes.go b/pkg/dialects/storm32/msg_supported_tunes.go new file mode 100644 index 000000000..c06fe79f7 --- /dev/null +++ b/pkg/dialects/storm32/msg_supported_tunes.go @@ -0,0 +1,18 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// Tune formats supported by vehicle. This should be emitted as response to MAV_CMD_REQUEST_MESSAGE. +type MessageSupportedTunes struct { + // System ID + TargetSystem uint8 + // Component ID + TargetComponent uint8 + // Bitfield of supported tune formats. + Format TUNE_FORMAT `mavenum:"uint32"` +} + +// GetID implements the msg.Message interface. +func (*MessageSupportedTunes) GetID() uint32 { + return 401 +} diff --git a/pkg/dialects/storm32/msg_sys_status.go b/pkg/dialects/storm32/msg_sys_status.go new file mode 100644 index 000000000..478f9a408 --- /dev/null +++ b/pkg/dialects/storm32/msg_sys_status.go @@ -0,0 +1,44 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// The general system state. If the system is following the MAVLink standard, the system state is mainly defined by three orthogonal states/modes: The system mode, which is either LOCKED (motors shut down and locked), MANUAL (system under RC control), GUIDED (system with autonomous position control, position setpoint controlled manually) or AUTO (system guided by path/waypoint planner). The NAV_MODE defined the current flight state: LIFTOFF (often an open-loop maneuver), LANDING, WAYPOINTS or VECTOR. This represents the internal navigation state machine. The system status shows whether the system is currently active or not and if an emergency occurred. During the CRITICAL and EMERGENCY states the MAV is still considered to be active, but should start emergency procedures autonomously. After a failure occurred it should first move from active to critical to allow manual intervention and then move to emergency after a certain timeout. +type MessageSysStatus struct { + // Bitmap showing which onboard controllers and sensors are present. Value of 0: not present. Value of 1: present. + OnboardControlSensorsPresent MAV_SYS_STATUS_SENSOR `mavenum:"uint32"` + // Bitmap showing which onboard controllers and sensors are enabled: Value of 0: not enabled. Value of 1: enabled. + OnboardControlSensorsEnabled MAV_SYS_STATUS_SENSOR `mavenum:"uint32"` + // Bitmap showing which onboard controllers and sensors have an error (or are operational). Value of 0: error. Value of 1: healthy. + OnboardControlSensorsHealth MAV_SYS_STATUS_SENSOR `mavenum:"uint32"` + // Maximum usage in percent of the mainloop time. Values: [0-1000] - should always be below 1000 + Load uint16 + // Battery voltage, UINT16_MAX: Voltage not sent by autopilot + VoltageBattery uint16 + // Battery current, -1: Current not sent by autopilot + CurrentBattery int16 + // Battery energy remaining, -1: Battery remaining energy not sent by autopilot + BatteryRemaining int8 + // Communication drop rate, (UART, I2C, SPI, CAN), dropped packets on all links (packets that were corrupted on reception on the MAV) + DropRateComm uint16 + // Communication errors (UART, I2C, SPI, CAN), dropped packets on all links (packets that were corrupted on reception on the MAV) + ErrorsComm uint16 + // Autopilot-specific errors + ErrorsCount1 uint16 + // Autopilot-specific errors + ErrorsCount2 uint16 + // Autopilot-specific errors + ErrorsCount3 uint16 + // Autopilot-specific errors + ErrorsCount4 uint16 + // Bitmap showing which onboard controllers and sensors are present. Value of 0: not present. Value of 1: present. + OnboardControlSensorsPresentExtended MAV_SYS_STATUS_SENSOR_EXTENDED `mavenum:"uint32" mavext:"true"` + // Bitmap showing which onboard controllers and sensors are enabled: Value of 0: not enabled. Value of 1: enabled. + OnboardControlSensorsEnabledExtended MAV_SYS_STATUS_SENSOR_EXTENDED `mavenum:"uint32" mavext:"true"` + // Bitmap showing which onboard controllers and sensors have an error (or are operational). Value of 0: error. Value of 1: healthy. + OnboardControlSensorsHealthExtended MAV_SYS_STATUS_SENSOR_EXTENDED `mavenum:"uint32" mavext:"true"` +} + +// GetID implements the msg.Message interface. +func (*MessageSysStatus) GetID() uint32 { + return 1 +} diff --git a/pkg/dialects/storm32/msg_system_time.go b/pkg/dialects/storm32/msg_system_time.go new file mode 100644 index 000000000..997b59f81 --- /dev/null +++ b/pkg/dialects/storm32/msg_system_time.go @@ -0,0 +1,16 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// The system time is the time of the master clock, typically the computer clock of the main onboard computer. +type MessageSystemTime struct { + // Timestamp (UNIX epoch time). + TimeUnixUsec uint64 + // Timestamp (time since system boot). + TimeBootMs uint32 +} + +// GetID implements the msg.Message interface. +func (*MessageSystemTime) GetID() uint32 { + return 2 +} diff --git a/pkg/dialects/storm32/msg_terrain_check.go b/pkg/dialects/storm32/msg_terrain_check.go new file mode 100644 index 000000000..ce9124a3e --- /dev/null +++ b/pkg/dialects/storm32/msg_terrain_check.go @@ -0,0 +1,16 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// Request that the vehicle report terrain height at the given location (expected response is a TERRAIN_REPORT). Used by GCS to check if vehicle has all terrain data needed for a mission. +type MessageTerrainCheck struct { + // Latitude + Lat int32 + // Longitude + Lon int32 +} + +// GetID implements the msg.Message interface. +func (*MessageTerrainCheck) GetID() uint32 { + return 135 +} diff --git a/pkg/dialects/storm32/msg_terrain_data.go b/pkg/dialects/storm32/msg_terrain_data.go new file mode 100644 index 000000000..3f0063b23 --- /dev/null +++ b/pkg/dialects/storm32/msg_terrain_data.go @@ -0,0 +1,22 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// Terrain data sent from GCS. The lat/lon and grid_spacing must be the same as a lat/lon from a TERRAIN_REQUEST. See terrain protocol docs: https://mavlink.io/en/services/terrain.html +type MessageTerrainData struct { + // Latitude of SW corner of first grid + Lat int32 + // Longitude of SW corner of first grid + Lon int32 + // Grid spacing + GridSpacing uint16 + // bit within the terrain request mask + Gridbit uint8 + // Terrain data MSL + Data [16]int16 +} + +// GetID implements the msg.Message interface. +func (*MessageTerrainData) GetID() uint32 { + return 134 +} diff --git a/pkg/dialects/storm32/msg_terrain_report.go b/pkg/dialects/storm32/msg_terrain_report.go new file mode 100644 index 000000000..255ac72bd --- /dev/null +++ b/pkg/dialects/storm32/msg_terrain_report.go @@ -0,0 +1,26 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// Streamed from drone to report progress of terrain map download (initiated by TERRAIN_REQUEST), or sent as a response to a TERRAIN_CHECK request. See terrain protocol docs: https://mavlink.io/en/services/terrain.html +type MessageTerrainReport struct { + // Latitude + Lat int32 + // Longitude + Lon int32 + // grid spacing (zero if terrain at this location unavailable) + Spacing uint16 + // Terrain height MSL + TerrainHeight float32 + // Current vehicle height above lat/lon terrain height + CurrentHeight float32 + // Number of 4x4 terrain blocks waiting to be received or read from disk + Pending uint16 + // Number of 4x4 terrain blocks in memory + Loaded uint16 +} + +// GetID implements the msg.Message interface. +func (*MessageTerrainReport) GetID() uint32 { + return 136 +} diff --git a/pkg/dialects/storm32/msg_terrain_request.go b/pkg/dialects/storm32/msg_terrain_request.go new file mode 100644 index 000000000..c3b571b23 --- /dev/null +++ b/pkg/dialects/storm32/msg_terrain_request.go @@ -0,0 +1,20 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// Request for terrain data and terrain status. See terrain protocol docs: https://mavlink.io/en/services/terrain.html +type MessageTerrainRequest struct { + // Latitude of SW corner of first grid + Lat int32 + // Longitude of SW corner of first grid + Lon int32 + // Grid spacing + GridSpacing uint16 + // Bitmask of requested 4x4 grids (row major 8x7 array of grids, 56 bits) + Mask uint64 +} + +// GetID implements the msg.Message interface. +func (*MessageTerrainRequest) GetID() uint32 { + return 133 +} diff --git a/pkg/dialects/storm32/msg_time_estimate_to_target.go b/pkg/dialects/storm32/msg_time_estimate_to_target.go new file mode 100644 index 000000000..eeb14ba2c --- /dev/null +++ b/pkg/dialects/storm32/msg_time_estimate_to_target.go @@ -0,0 +1,22 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// Time/duration estimates for various events and actions given the current vehicle state and position. +type MessageTimeEstimateToTarget struct { + // Estimated time to complete the vehicle's configured "safe return" action from its current position (e.g. RTL, Smart RTL, etc.). -1 indicates that the vehicle is landed, or that no time estimate available. + SafeReturn int32 + // Estimated time for vehicle to complete the LAND action from its current position. -1 indicates that the vehicle is landed, or that no time estimate available. + Land int32 + // Estimated time for reaching/completing the currently active mission item. -1 means no time estimate available. + MissionNextItem int32 + // Estimated time for completing the current mission. -1 means no mission active and/or no estimate available. + MissionEnd int32 + // Estimated time for completing the current commanded action (i.e. Go To, Takeoff, Land, etc.). -1 means no action active and/or no estimate available. + CommandedAction int32 +} + +// GetID implements the msg.Message interface. +func (*MessageTimeEstimateToTarget) GetID() uint32 { + return 380 +} diff --git a/pkg/dialects/storm32/msg_timesync.go b/pkg/dialects/storm32/msg_timesync.go new file mode 100644 index 000000000..9b1197f3b --- /dev/null +++ b/pkg/dialects/storm32/msg_timesync.go @@ -0,0 +1,16 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// Time synchronization message. +type MessageTimesync struct { + // Time sync timestamp 1 + Tc1 int64 + // Time sync timestamp 2 + Ts1 int64 +} + +// GetID implements the msg.Message interface. +func (*MessageTimesync) GetID() uint32 { + return 111 +} diff --git a/pkg/dialects/storm32/msg_trajectory_representation_bezier.go b/pkg/dialects/storm32/msg_trajectory_representation_bezier.go new file mode 100644 index 000000000..c23f3077b --- /dev/null +++ b/pkg/dialects/storm32/msg_trajectory_representation_bezier.go @@ -0,0 +1,26 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// Describe a trajectory using an array of up-to 5 bezier control points in the local frame (MAV_FRAME_LOCAL_NED). +type MessageTrajectoryRepresentationBezier struct { + // Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. + TimeUsec uint64 + // Number of valid control points (up-to 5 points are possible) + ValidPoints uint8 + // X-coordinate of bezier control points. Set to NaN if not being used + PosX [5]float32 + // Y-coordinate of bezier control points. Set to NaN if not being used + PosY [5]float32 + // Z-coordinate of bezier control points. Set to NaN if not being used + PosZ [5]float32 + // Bezier time horizon. Set to NaN if velocity/acceleration should not be incorporated + Delta [5]float32 + // Yaw. Set to NaN for unchanged + PosYaw [5]float32 +} + +// GetID implements the msg.Message interface. +func (*MessageTrajectoryRepresentationBezier) GetID() uint32 { + return 333 +} diff --git a/pkg/dialects/storm32/msg_trajectory_representation_waypoints.go b/pkg/dialects/storm32/msg_trajectory_representation_waypoints.go new file mode 100644 index 000000000..53109c653 --- /dev/null +++ b/pkg/dialects/storm32/msg_trajectory_representation_waypoints.go @@ -0,0 +1,40 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// Describe a trajectory using an array of up-to 5 waypoints in the local frame (MAV_FRAME_LOCAL_NED). +type MessageTrajectoryRepresentationWaypoints struct { + // Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. + TimeUsec uint64 + // Number of valid points (up-to 5 waypoints are possible) + ValidPoints uint8 + // X-coordinate of waypoint, set to NaN if not being used + PosX [5]float32 + // Y-coordinate of waypoint, set to NaN if not being used + PosY [5]float32 + // Z-coordinate of waypoint, set to NaN if not being used + PosZ [5]float32 + // X-velocity of waypoint, set to NaN if not being used + VelX [5]float32 + // Y-velocity of waypoint, set to NaN if not being used + VelY [5]float32 + // Z-velocity of waypoint, set to NaN if not being used + VelZ [5]float32 + // X-acceleration of waypoint, set to NaN if not being used + AccX [5]float32 + // Y-acceleration of waypoint, set to NaN if not being used + AccY [5]float32 + // Z-acceleration of waypoint, set to NaN if not being used + AccZ [5]float32 + // Yaw angle, set to NaN if not being used + PosYaw [5]float32 + // Yaw rate, set to NaN if not being used + VelYaw [5]float32 + // MAV_CMD command id of waypoint, set to UINT16_MAX if not being used. + Command [5]MAV_CMD `mavenum:"uint16"` +} + +// GetID implements the msg.Message interface. +func (*MessageTrajectoryRepresentationWaypoints) GetID() uint32 { + return 332 +} diff --git a/pkg/dialects/storm32/msg_tunnel.go b/pkg/dialects/storm32/msg_tunnel.go new file mode 100644 index 000000000..10d8c7c75 --- /dev/null +++ b/pkg/dialects/storm32/msg_tunnel.go @@ -0,0 +1,22 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// Message for transporting "arbitrary" variable-length data from one component to another (broadcast is not forbidden, but discouraged). The encoding of the data is usually extension specific, i.e. determined by the source, and is usually not documented as part of the MAVLink specification. +type MessageTunnel struct { + // System ID (can be 0 for broadcast, but this is discouraged) + TargetSystem uint8 + // Component ID (can be 0 for broadcast, but this is discouraged) + TargetComponent uint8 + // A code that identifies the content of the payload (0 for unknown, which is the default). If this code is less than 32768, it is a 'registered' payload type and the corresponding code should be added to the MAV_TUNNEL_PAYLOAD_TYPE enum. Software creators can register blocks of types as needed. Codes greater than 32767 are considered local experiments and should not be checked in to any widely distributed codebase. + PayloadType MAV_TUNNEL_PAYLOAD_TYPE `mavenum:"uint16"` + // Length of the data transported in payload + PayloadLength uint8 + // Variable length payload. The payload length is defined by payload_length. The entire content of this block is opaque unless you understand the encoding specified by payload_type. + Payload [128]uint8 +} + +// GetID implements the msg.Message interface. +func (*MessageTunnel) GetID() uint32 { + return 385 +} diff --git a/pkg/dialects/storm32/msg_uavcan_node_info.go b/pkg/dialects/storm32/msg_uavcan_node_info.go new file mode 100644 index 000000000..35cdc6baf --- /dev/null +++ b/pkg/dialects/storm32/msg_uavcan_node_info.go @@ -0,0 +1,30 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// General information describing a particular UAVCAN node. Please refer to the definition of the UAVCAN service "uavcan.protocol.GetNodeInfo" for the background information. This message should be emitted by the system whenever a new node appears online, or an existing node reboots. Additionally, it can be emitted upon request from the other end of the MAVLink channel (see MAV_CMD_UAVCAN_GET_NODE_INFO). It is also not prohibited to emit this message unconditionally at a low frequency. The UAVCAN specification is available at http://uavcan.org. +type MessageUavcanNodeInfo struct { + // Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. + TimeUsec uint64 + // Time since the start-up of the node. + UptimeSec uint32 + // Node name string. For example, "sapog.px4.io". + Name string `mavlen:"80"` + // Hardware major version number. + HwVersionMajor uint8 + // Hardware minor version number. + HwVersionMinor uint8 + // Hardware unique 128-bit ID. + HwUniqueId [16]uint8 + // Software major version number. + SwVersionMajor uint8 + // Software minor version number. + SwVersionMinor uint8 + // Version control system (VCS) revision identifier (e.g. git short commit hash). 0 if unknown. + SwVcsCommit uint32 +} + +// GetID implements the msg.Message interface. +func (*MessageUavcanNodeInfo) GetID() uint32 { + return 311 +} diff --git a/pkg/dialects/storm32/msg_uavcan_node_status.go b/pkg/dialects/storm32/msg_uavcan_node_status.go new file mode 100644 index 000000000..e540fe8ea --- /dev/null +++ b/pkg/dialects/storm32/msg_uavcan_node_status.go @@ -0,0 +1,24 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// General status information of an UAVCAN node. Please refer to the definition of the UAVCAN message "uavcan.protocol.NodeStatus" for the background information. The UAVCAN specification is available at http://uavcan.org. +type MessageUavcanNodeStatus struct { + // Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. + TimeUsec uint64 + // Time since the start-up of the node. + UptimeSec uint32 + // Generalized node health status. + Health UAVCAN_NODE_HEALTH `mavenum:"uint8"` + // Generalized operating mode. + Mode UAVCAN_NODE_MODE `mavenum:"uint8"` + // Not used currently. + SubMode uint8 + // Vendor-specific status information. + VendorSpecificStatusCode uint16 +} + +// GetID implements the msg.Message interface. +func (*MessageUavcanNodeStatus) GetID() uint32 { + return 310 +} diff --git a/pkg/dialects/storm32/msg_uavionix_adsb_out_cfg.go b/pkg/dialects/storm32/msg_uavionix_adsb_out_cfg.go new file mode 100644 index 000000000..a6038a6ce --- /dev/null +++ b/pkg/dialects/storm32/msg_uavionix_adsb_out_cfg.go @@ -0,0 +1,28 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// Static data to configure the ADS-B transponder (send within 10 sec of a POR and every 10 sec thereafter) +type MessageUavionixAdsbOutCfg struct { + // Vehicle address (24 bit) + Icao uint32 `mavname:"ICAO"` + // Vehicle identifier (8 characters, null terminated, valid characters are A-Z, 0-9, " " only) + Callsign string `mavlen:"9"` + // Transmitting vehicle type. See ADSB_EMITTER_TYPE enum + Emittertype ADSB_EMITTER_TYPE `mavenum:"uint8" mavname:"emitterType"` + // Aircraft length and width encoding (table 2-35 of DO-282B) + Aircraftsize UAVIONIX_ADSB_OUT_CFG_AIRCRAFT_SIZE `mavenum:"uint8" mavname:"aircraftSize"` + // GPS antenna lateral offset (table 2-36 of DO-282B) + Gpsoffsetlat UAVIONIX_ADSB_OUT_CFG_GPS_OFFSET_LAT `mavenum:"uint8" mavname:"gpsOffsetLat"` + // GPS antenna longitudinal offset from nose [if non-zero, take position (in meters) divide by 2 and add one] (table 2-37 DO-282B) + Gpsoffsetlon UAVIONIX_ADSB_OUT_CFG_GPS_OFFSET_LON `mavenum:"uint8" mavname:"gpsOffsetLon"` + // Aircraft stall speed in cm/s + Stallspeed uint16 `mavname:"stallSpeed"` + // ADS-B transponder reciever and transmit enable flags + Rfselect UAVIONIX_ADSB_OUT_RF_SELECT `mavenum:"uint8" mavname:"rfSelect"` +} + +// GetID implements the msg.Message interface. +func (*MessageUavionixAdsbOutCfg) GetID() uint32 { + return 10001 +} diff --git a/pkg/dialects/storm32/msg_uavionix_adsb_out_dynamic.go b/pkg/dialects/storm32/msg_uavionix_adsb_out_dynamic.go new file mode 100644 index 000000000..9d4cbfebc --- /dev/null +++ b/pkg/dialects/storm32/msg_uavionix_adsb_out_dynamic.go @@ -0,0 +1,44 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// Dynamic data used to generate ADS-B out transponder data (send at 5Hz) +type MessageUavionixAdsbOutDynamic struct { + // UTC time in seconds since GPS epoch (Jan 6, 1980). If unknown set to UINT32_MAX + Utctime uint32 `mavname:"utcTime"` + // Latitude WGS84 (deg * 1E7). If unknown set to INT32_MAX + Gpslat int32 `mavname:"gpsLat"` + // Longitude WGS84 (deg * 1E7). If unknown set to INT32_MAX + Gpslon int32 `mavname:"gpsLon"` + // Altitude (WGS84). UP +ve. If unknown set to INT32_MAX + Gpsalt int32 `mavname:"gpsAlt"` + // 0-1: no fix, 2: 2D fix, 3: 3D fix, 4: DGPS, 5: RTK + Gpsfix UAVIONIX_ADSB_OUT_DYNAMIC_GPS_FIX `mavenum:"uint8" mavname:"gpsFix"` + // Number of satellites visible. If unknown set to UINT8_MAX + Numsats uint8 `mavname:"numSats"` + // Barometric pressure altitude (MSL) relative to a standard atmosphere of 1013.2 mBar and NOT bar corrected altitude (m * 1E-3). (up +ve). If unknown set to INT32_MAX + Baroaltmsl int32 `mavname:"baroAltMSL"` + // Horizontal accuracy in mm (m * 1E-3). If unknown set to UINT32_MAX + Accuracyhor uint32 `mavname:"accuracyHor"` + // Vertical accuracy in cm. If unknown set to UINT16_MAX + Accuracyvert uint16 `mavname:"accuracyVert"` + // Velocity accuracy in mm/s (m * 1E-3). If unknown set to UINT16_MAX + Accuracyvel uint16 `mavname:"accuracyVel"` + // GPS vertical speed in cm/s. If unknown set to INT16_MAX + Velvert int16 `mavname:"velVert"` + // North-South velocity over ground in cm/s North +ve. If unknown set to INT16_MAX + Velns int16 `mavname:"velNS"` + // East-West velocity over ground in cm/s East +ve. If unknown set to INT16_MAX + Velew int16 `mavname:"VelEW"` + // Emergency status + Emergencystatus UAVIONIX_ADSB_EMERGENCY_STATUS `mavenum:"uint8" mavname:"emergencyStatus"` + // ADS-B transponder dynamic input state flags + State UAVIONIX_ADSB_OUT_DYNAMIC_STATE `mavenum:"uint16"` + // Mode A code (typically 1200 [0x04B0] for VFR) + Squawk uint16 +} + +// GetID implements the msg.Message interface. +func (*MessageUavionixAdsbOutDynamic) GetID() uint32 { + return 10002 +} diff --git a/pkg/dialects/storm32/msg_uavionix_adsb_transceiver_health_report.go b/pkg/dialects/storm32/msg_uavionix_adsb_transceiver_health_report.go new file mode 100644 index 000000000..533c5f902 --- /dev/null +++ b/pkg/dialects/storm32/msg_uavionix_adsb_transceiver_health_report.go @@ -0,0 +1,14 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// Transceiver heartbeat with health report (updated every 10s) +type MessageUavionixAdsbTransceiverHealthReport struct { + // ADS-B transponder messages + Rfhealth UAVIONIX_ADSB_RF_HEALTH `mavenum:"uint8" mavname:"rfHealth"` +} + +// GetID implements the msg.Message interface. +func (*MessageUavionixAdsbTransceiverHealthReport) GetID() uint32 { + return 10003 +} diff --git a/pkg/dialects/storm32/msg_utm_global_position.go b/pkg/dialects/storm32/msg_utm_global_position.go new file mode 100644 index 000000000..6e163491f --- /dev/null +++ b/pkg/dialects/storm32/msg_utm_global_position.go @@ -0,0 +1,48 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// The global position resulting from GPS and sensor fusion. +type MessageUtmGlobalPosition struct { + // Time of applicability of position (microseconds since UNIX epoch). + Time uint64 + // Unique UAS ID. + UasId [18]uint8 + // Latitude (WGS84) + Lat int32 + // Longitude (WGS84) + Lon int32 + // Altitude (WGS84) + Alt int32 + // Altitude above ground + RelativeAlt int32 + // Ground X speed (latitude, positive north) + Vx int16 + // Ground Y speed (longitude, positive east) + Vy int16 + // Ground Z speed (altitude, positive down) + Vz int16 + // Horizontal position uncertainty (standard deviation) + HAcc uint16 + // Altitude uncertainty (standard deviation) + VAcc uint16 + // Speed uncertainty (standard deviation) + VelAcc uint16 + // Next waypoint, latitude (WGS84) + NextLat int32 + // Next waypoint, longitude (WGS84) + NextLon int32 + // Next waypoint, altitude (WGS84) + NextAlt int32 + // Time until next update. Set to 0 if unknown or in data driven mode. + UpdateRate uint16 + // Flight state + FlightState UTM_FLIGHT_STATE `mavenum:"uint8"` + // Bitwise OR combination of the data available flags. + Flags UTM_DATA_AVAIL_FLAGS `mavenum:"uint8"` +} + +// GetID implements the msg.Message interface. +func (*MessageUtmGlobalPosition) GetID() uint32 { + return 340 +} diff --git a/pkg/dialects/storm32/msg_v2_extension.go b/pkg/dialects/storm32/msg_v2_extension.go new file mode 100644 index 000000000..3cf59c9eb --- /dev/null +++ b/pkg/dialects/storm32/msg_v2_extension.go @@ -0,0 +1,22 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// Message implementing parts of the V2 payload specs in V1 frames for transitional support. +type MessageV2Extension struct { + // Network ID (0 for broadcast) + TargetNetwork uint8 + // System ID (0 for broadcast) + TargetSystem uint8 + // Component ID (0 for broadcast) + TargetComponent uint8 + // A code that identifies the software component that understands this message (analogous to USB device classes or mime type strings). If this code is less than 32768, it is considered a 'registered' protocol extension and the corresponding entry should be added to https://github.com/mavlink/mavlink/definition_files/extension_message_ids.xml. Software creators can register blocks of message IDs as needed (useful for GCS specific metadata, etc...). Message_types greater than 32767 are considered local experiments and should not be checked in to any widely distributed codebase. + MessageType uint16 + // Variable length payload. The length must be encoded in the payload as part of the message_type protocol, e.g. by including the length as payload data, or by terminating the payload data with a non-zero marker. This is required in order to reconstruct zero-terminated payloads that are (or otherwise would be) trimmed by MAVLink 2 empty-byte truncation. The entire content of the payload block is opaque unless you understand the encoding message_type. The particular encoding used can be extension specific and might not always be documented as part of the MAVLink specification. + Payload [249]uint8 +} + +// GetID implements the msg.Message interface. +func (*MessageV2Extension) GetID() uint32 { + return 248 +} diff --git a/pkg/dialects/storm32/msg_vfr_hud.go b/pkg/dialects/storm32/msg_vfr_hud.go new file mode 100644 index 000000000..f98dce142 --- /dev/null +++ b/pkg/dialects/storm32/msg_vfr_hud.go @@ -0,0 +1,24 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// Metrics typically displayed on a HUD for fixed wing aircraft. +type MessageVfrHud struct { + // Vehicle speed in form appropriate for vehicle type. For standard aircraft this is typically calibrated airspeed (CAS) or indicated airspeed (IAS) - either of which can be used by a pilot to estimate stall speed. + Airspeed float32 + // Current ground speed. + Groundspeed float32 + // Current heading in compass units (0-360, 0=north). + Heading int16 + // Current throttle setting (0 to 100). + Throttle uint16 + // Current altitude (MSL). + Alt float32 + // Current climb rate. + Climb float32 +} + +// GetID implements the msg.Message interface. +func (*MessageVfrHud) GetID() uint32 { + return 74 +} diff --git a/pkg/dialects/storm32/msg_vibration.go b/pkg/dialects/storm32/msg_vibration.go new file mode 100644 index 000000000..d09db8550 --- /dev/null +++ b/pkg/dialects/storm32/msg_vibration.go @@ -0,0 +1,26 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// Vibration levels and accelerometer clipping +type MessageVibration struct { + // Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. + TimeUsec uint64 + // Vibration levels on X-axis + VibrationX float32 + // Vibration levels on Y-axis + VibrationY float32 + // Vibration levels on Z-axis + VibrationZ float32 + // first accelerometer clipping count + Clipping_0 uint32 + // second accelerometer clipping count + Clipping_1 uint32 + // third accelerometer clipping count + Clipping_2 uint32 +} + +// GetID implements the msg.Message interface. +func (*MessageVibration) GetID() uint32 { + return 241 +} diff --git a/pkg/dialects/storm32/msg_vicon_position_estimate.go b/pkg/dialects/storm32/msg_vicon_position_estimate.go new file mode 100644 index 000000000..7c13abf6e --- /dev/null +++ b/pkg/dialects/storm32/msg_vicon_position_estimate.go @@ -0,0 +1,28 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// Global position estimate from a Vicon motion system source. +type MessageViconPositionEstimate struct { + // Timestamp (UNIX time or time since system boot) + Usec uint64 + // Global X position + X float32 + // Global Y position + Y float32 + // Global Z position + Z float32 + // Roll angle + Roll float32 + // Pitch angle + Pitch float32 + // Yaw angle + Yaw float32 + // Row-major representation of 6x6 pose cross-covariance matrix upper right triangle (states: x, y, z, roll, pitch, yaw; first six entries are the first ROW, next five entries are the second ROW, etc.). If unknown, assign NaN value to first element in the array. + Covariance [21]float32 `mavext:"true"` +} + +// GetID implements the msg.Message interface. +func (*MessageViconPositionEstimate) GetID() uint32 { + return 104 +} diff --git a/pkg/dialects/storm32/msg_video_stream_information.go b/pkg/dialects/storm32/msg_video_stream_information.go new file mode 100644 index 000000000..c5efd870e --- /dev/null +++ b/pkg/dialects/storm32/msg_video_stream_information.go @@ -0,0 +1,36 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// Information about video stream. It may be requested using MAV_CMD_REQUEST_MESSAGE, where param2 indicates the video stream id: 0 for all streams, 1 for first, 2 for second, etc. +type MessageVideoStreamInformation struct { + // Video Stream ID (1 for first, 2 for second, etc.) + StreamId uint8 + // Number of streams available. + Count uint8 + // Type of stream. + Type VIDEO_STREAM_TYPE `mavenum:"uint8"` + // Bitmap of stream status flags. + Flags VIDEO_STREAM_STATUS_FLAGS `mavenum:"uint16"` + // Frame rate. + Framerate float32 + // Horizontal resolution. + ResolutionH uint16 + // Vertical resolution. + ResolutionV uint16 + // Bit rate. + Bitrate uint32 + // Video image rotation clockwise. + Rotation uint16 + // Horizontal Field of view. + Hfov uint16 + // Stream name. + Name string `mavlen:"32"` + // Video stream URI (TCP or RTSP URI ground station should connect to) or port number (UDP port ground station should listen to). + Uri string `mavlen:"160"` +} + +// GetID implements the msg.Message interface. +func (*MessageVideoStreamInformation) GetID() uint32 { + return 269 +} diff --git a/pkg/dialects/storm32/msg_video_stream_status.go b/pkg/dialects/storm32/msg_video_stream_status.go new file mode 100644 index 000000000..2238fce7e --- /dev/null +++ b/pkg/dialects/storm32/msg_video_stream_status.go @@ -0,0 +1,28 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// Information about the status of a video stream. It may be requested using MAV_CMD_REQUEST_MESSAGE. +type MessageVideoStreamStatus struct { + // Video Stream ID (1 for first, 2 for second, etc.) + StreamId uint8 + // Bitmap of stream status flags + Flags VIDEO_STREAM_STATUS_FLAGS `mavenum:"uint16"` + // Frame rate + Framerate float32 + // Horizontal resolution + ResolutionH uint16 + // Vertical resolution + ResolutionV uint16 + // Bit rate + Bitrate uint32 + // Video image rotation clockwise + Rotation uint16 + // Horizontal Field of view + Hfov uint16 +} + +// GetID implements the msg.Message interface. +func (*MessageVideoStreamStatus) GetID() uint32 { + return 270 +} diff --git a/pkg/dialects/storm32/msg_vision_position_delta.go b/pkg/dialects/storm32/msg_vision_position_delta.go new file mode 100644 index 000000000..50b7e4673 --- /dev/null +++ b/pkg/dialects/storm32/msg_vision_position_delta.go @@ -0,0 +1,22 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// Camera vision based attitude and position deltas. +type MessageVisionPositionDelta struct { + // Timestamp (synced to UNIX time or since system boot). + TimeUsec uint64 + // Time since the last reported camera frame. + TimeDeltaUsec uint64 + // Defines a rotation vector [roll, pitch, yaw] to the current MAV_FRAME_BODY_FRD from the previous MAV_FRAME_BODY_FRD. + AngleDelta [3]float32 + // Change in position to the current MAV_FRAME_BODY_FRD from the previous FRAME_BODY_FRD rotated to the current MAV_FRAME_BODY_FRD. + PositionDelta [3]float32 + // Normalised confidence value from 0 to 100. + Confidence float32 +} + +// GetID implements the msg.Message interface. +func (*MessageVisionPositionDelta) GetID() uint32 { + return 11011 +} diff --git a/pkg/dialects/storm32/msg_vision_position_estimate.go b/pkg/dialects/storm32/msg_vision_position_estimate.go new file mode 100644 index 000000000..596ebccd0 --- /dev/null +++ b/pkg/dialects/storm32/msg_vision_position_estimate.go @@ -0,0 +1,30 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// Local position/attitude estimate from a vision source. +type MessageVisionPositionEstimate struct { + // Timestamp (UNIX time or time since system boot) + Usec uint64 + // Local X position + X float32 + // Local Y position + Y float32 + // Local Z position + Z float32 + // Roll angle + Roll float32 + // Pitch angle + Pitch float32 + // Yaw angle + Yaw float32 + // Row-major representation of pose 6x6 cross-covariance matrix upper right triangle (states: x, y, z, roll, pitch, yaw; first six entries are the first ROW, next five entries are the second ROW, etc.). If unknown, assign NaN value to first element in the array. + Covariance [21]float32 `mavext:"true"` + // Estimate reset counter. This should be incremented when the estimate resets in any of the dimensions (position, velocity, attitude, angular speed). This is designed to be used when e.g an external SLAM system detects a loop-closure and the estimate jumps. + ResetCounter uint8 `mavext:"true"` +} + +// GetID implements the msg.Message interface. +func (*MessageVisionPositionEstimate) GetID() uint32 { + return 102 +} diff --git a/pkg/dialects/storm32/msg_vision_speed_estimate.go b/pkg/dialects/storm32/msg_vision_speed_estimate.go new file mode 100644 index 000000000..f744a892d --- /dev/null +++ b/pkg/dialects/storm32/msg_vision_speed_estimate.go @@ -0,0 +1,24 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// Speed estimate from a vision source. +type MessageVisionSpeedEstimate struct { + // Timestamp (UNIX time or time since system boot) + Usec uint64 + // Global X speed + X float32 + // Global Y speed + Y float32 + // Global Z speed + Z float32 + // Row-major representation of 3x3 linear velocity covariance matrix (states: vx, vy, vz; 1st three entries - 1st row, etc.). If unknown, assign NaN value to first element in the array. + Covariance [9]float32 `mavext:"true"` + // Estimate reset counter. This should be incremented when the estimate resets in any of the dimensions (position, velocity, attitude, angular speed). This is designed to be used when e.g an external SLAM system detects a loop-closure and the estimate jumps. + ResetCounter uint8 `mavext:"true"` +} + +// GetID implements the msg.Message interface. +func (*MessageVisionSpeedEstimate) GetID() uint32 { + return 103 +} diff --git a/pkg/dialects/storm32/msg_water_depth.go b/pkg/dialects/storm32/msg_water_depth.go new file mode 100644 index 000000000..4ae85ef87 --- /dev/null +++ b/pkg/dialects/storm32/msg_water_depth.go @@ -0,0 +1,34 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// Water depth +type MessageWaterDepth struct { + // Timestamp (time since system boot) + TimeBootMs uint32 + // Onboard ID of the sensor + Id uint8 + // Sensor data healthy (0=unhealthy, 1=healthy) + Healthy uint8 + // Latitude + Lat int32 + // Longitude + Lng int32 + // Altitude (MSL) of vehicle + Alt float32 + // Roll angle + Roll float32 + // Pitch angle + Pitch float32 + // Yaw angle + Yaw float32 + // Distance (uncorrected) + Distance float32 + // Water temperature + Temperature float32 +} + +// GetID implements the msg.Message interface. +func (*MessageWaterDepth) GetID() uint32 { + return 11038 +} diff --git a/pkg/dialects/storm32/msg_wheel_distance.go b/pkg/dialects/storm32/msg_wheel_distance.go new file mode 100644 index 000000000..778f88842 --- /dev/null +++ b/pkg/dialects/storm32/msg_wheel_distance.go @@ -0,0 +1,18 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// Cumulative distance traveled for each reported wheel. +type MessageWheelDistance struct { + // Timestamp (synced to UNIX time or since system boot). + TimeUsec uint64 + // Number of wheels reported. + Count uint8 + // Distance reported by individual wheel encoders. Forward rotations increase values, reverse rotations decrease them. Not all wheels will necessarily have wheel encoders; the mapping of encoders to wheel positions must be agreed/understood by the endpoints. + Distance [16]float64 +} + +// GetID implements the msg.Message interface. +func (*MessageWheelDistance) GetID() uint32 { + return 9000 +} diff --git a/pkg/dialects/storm32/msg_wifi_config_ap.go b/pkg/dialects/storm32/msg_wifi_config_ap.go new file mode 100644 index 000000000..a50b91a25 --- /dev/null +++ b/pkg/dialects/storm32/msg_wifi_config_ap.go @@ -0,0 +1,20 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// Configure WiFi AP SSID, password, and mode. This message is re-emitted as an acknowledgement by the AP. The message may also be explicitly requested using MAV_CMD_REQUEST_MESSAGE +type MessageWifiConfigAp struct { + // Name of Wi-Fi network (SSID). Blank to leave it unchanged when setting. Current SSID when sent back as a response. + Ssid string `mavlen:"32"` + // Password. Blank for an open AP. MD5 hash when message is sent back as a response. + Password string `mavlen:"64"` + // WiFi Mode. + Mode WIFI_CONFIG_AP_MODE `mavenum:"int8" mavext:"true"` + // Message acceptance response (sent back to GS). + Response WIFI_CONFIG_AP_RESPONSE `mavenum:"int8" mavext:"true"` +} + +// GetID implements the msg.Message interface. +func (*MessageWifiConfigAp) GetID() uint32 { + return 299 +} diff --git a/pkg/dialects/storm32/msg_winch_status.go b/pkg/dialects/storm32/msg_winch_status.go new file mode 100644 index 000000000..82b3af84e --- /dev/null +++ b/pkg/dialects/storm32/msg_winch_status.go @@ -0,0 +1,28 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// Winch status. +type MessageWinchStatus struct { + // Timestamp (synced to UNIX time or since system boot). + TimeUsec uint64 + // Length of line released. NaN if unknown + LineLength float32 + // Speed line is being released or retracted. Positive values if being released, negative values if being retracted, NaN if unknown + Speed float32 + // Tension on the line. NaN if unknown + Tension float32 + // Voltage of the battery supplying the winch. NaN if unknown + Voltage float32 + // Current draw from the winch. NaN if unknown + Current float32 + // Temperature of the motor. INT16_MAX if unknown + Temperature int16 + // Status flags + Status MAV_WINCH_STATUS_FLAG `mavenum:"uint32"` +} + +// GetID implements the msg.Message interface. +func (*MessageWinchStatus) GetID() uint32 { + return 9005 +} diff --git a/pkg/dialects/storm32/msg_wind.go b/pkg/dialects/storm32/msg_wind.go new file mode 100644 index 000000000..e3139fba4 --- /dev/null +++ b/pkg/dialects/storm32/msg_wind.go @@ -0,0 +1,18 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// Wind estimation. +type MessageWind struct { + // Wind direction (that wind is coming from). + Direction float32 + // Wind speed in ground plane. + Speed float32 + // Vertical wind speed. + SpeedZ float32 +} + +// GetID implements the msg.Message interface. +func (*MessageWind) GetID() uint32 { + return 168 +} diff --git a/pkg/dialects/storm32/msg_wind_cov.go b/pkg/dialects/storm32/msg_wind_cov.go new file mode 100644 index 000000000..6b80b99d6 --- /dev/null +++ b/pkg/dialects/storm32/msg_wind_cov.go @@ -0,0 +1,30 @@ +//autogenerated:yes +//nolint:revive,misspell,govet,lll +package storm32 + +// Wind covariance estimate from vehicle. +type MessageWindCov struct { + // Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. + TimeUsec uint64 + // Wind in X (NED) direction + WindX float32 + // Wind in Y (NED) direction + WindY float32 + // Wind in Z (NED) direction + WindZ float32 + // Variability of the wind in XY. RMS of a 1 Hz lowpassed wind estimate. + VarHoriz float32 + // Variability of the wind in Z. RMS of a 1 Hz lowpassed wind estimate. + VarVert float32 + // Altitude (MSL) that this measurement was taken at + WindAlt float32 + // Horizontal speed 1-STD accuracy + HorizAccuracy float32 + // Vertical speed 1-STD accuracy + VertAccuracy float32 +} + +// GetID implements the msg.Message interface. +func (*MessageWindCov) GetID() uint32 { + return 231 +} diff --git a/pkg/dialects/ualberta/enum_mav_protocol_capability.go b/pkg/dialects/ualberta/enum_mav_protocol_capability.go index 609c72cfa..b019d2241 100644 --- a/pkg/dialects/ualberta/enum_mav_protocol_capability.go +++ b/pkg/dialects/ualberta/enum_mav_protocol_capability.go @@ -10,16 +10,18 @@ import ( type MAV_PROTOCOL_CAPABILITY int const ( - // Autopilot supports MISSION float message type. + // Autopilot supports the MISSION_ITEM float message type. + // Note that MISSION_ITEM is deprecated, and autopilots should use MISSION_INT instead. MAV_PROTOCOL_CAPABILITY_MISSION_FLOAT MAV_PROTOCOL_CAPABILITY = 1 // Autopilot supports the new param float message type. MAV_PROTOCOL_CAPABILITY_PARAM_FLOAT MAV_PROTOCOL_CAPABILITY = 2 // Autopilot supports MISSION_ITEM_INT scaled integer message type. + // Note that this flag must always be set if missions are supported, because missions must always use MISSION_ITEM_INT (rather than MISSION_ITEM, which is deprecated). MAV_PROTOCOL_CAPABILITY_MISSION_INT MAV_PROTOCOL_CAPABILITY = 4 // Autopilot supports COMMAND_INT scaled integer message type. MAV_PROTOCOL_CAPABILITY_COMMAND_INT MAV_PROTOCOL_CAPABILITY = 8 - // Autopilot supports the new param union message type. - MAV_PROTOCOL_CAPABILITY_PARAM_UNION MAV_PROTOCOL_CAPABILITY = 16 + // Reserved for future use. + MAV_PROTOCOL_CAPABILITY_RESERVED1 MAV_PROTOCOL_CAPABILITY = 16 // Autopilot supports the new FILE_TRANSFER_PROTOCOL message type. MAV_PROTOCOL_CAPABILITY_FTP MAV_PROTOCOL_CAPABILITY = 32 // Autopilot supports commanding attitude offboard. @@ -42,8 +44,8 @@ const ( MAV_PROTOCOL_CAPABILITY_MISSION_FENCE MAV_PROTOCOL_CAPABILITY = 16384 // Autopilot supports mission rally point protocol. MAV_PROTOCOL_CAPABILITY_MISSION_RALLY MAV_PROTOCOL_CAPABILITY = 32768 - // Autopilot supports the flight information protocol. - MAV_PROTOCOL_CAPABILITY_FLIGHT_INFORMATION MAV_PROTOCOL_CAPABILITY = 65536 + // Reserved for future use. + MAV_PROTOCOL_CAPABILITY_RESERVED2 MAV_PROTOCOL_CAPABILITY = 65536 ) var labels_MAV_PROTOCOL_CAPABILITY = map[MAV_PROTOCOL_CAPABILITY]string{} diff --git a/pkg/dialects/ualberta/msg_component_information.go b/pkg/dialects/ualberta/msg_component_information.go index e7b38ad31..367c0d615 100644 --- a/pkg/dialects/ualberta/msg_component_information.go +++ b/pkg/dialects/ualberta/msg_component_information.go @@ -6,13 +6,13 @@ package ualberta type MessageComponentInformation struct { // Timestamp (time since system boot). TimeBootMs uint32 - // CRC32 of the TYPE_GENERAL file (can be used by a GCS for file caching). + // CRC32 of the TYPE_GENERAL file (can be used by a GCS for file caching). The general metadata file contains URLs to other files of different type according to COMP_METADATA_TYPE. GeneralMetadataFileCrc uint32 // Component definition URI for TYPE_GENERAL. This must be a MAVLink FTP URI and the file might be compressed with xz. GeneralMetadataUri string `mavlen:"100"` // CRC32 of the TYPE_PERIPHERALS file (can be used by a GCS for file caching). PeripheralsMetadataFileCrc uint32 - // (Optional) Component definition URI for TYPE_PERIPHERALS. This must be a MAVLink FTP URI and the file might be compressed with xz. + // (Optional) Component definition URI for TYPE_PERIPHERALS. This must be a MAVLink FTP URI and the file might be compressed with xz. Peripherals are listed as a separate URL and not included in the general metadata file because it will likely be generated at runtime while the general (and other referenced files) might be generated at compile time. PeripheralsMetadataUri string `mavlen:"100"` } diff --git a/pkg/dialects/ualberta/msg_flight_information.go b/pkg/dialects/ualberta/msg_flight_information.go index 7b08de40b..958d5869f 100644 --- a/pkg/dialects/ualberta/msg_flight_information.go +++ b/pkg/dialects/ualberta/msg_flight_information.go @@ -3,6 +3,7 @@ package ualberta // Information about flight since last arming. +// This can be requested using MAV_CMD_REQUEST_MESSAGE. type MessageFlightInformation struct { // Timestamp (time since system boot). TimeBootMs uint32 diff --git a/pkg/dialects/uavionix/enum_mav_protocol_capability.go b/pkg/dialects/uavionix/enum_mav_protocol_capability.go index 801e1739e..8bdb2098a 100644 --- a/pkg/dialects/uavionix/enum_mav_protocol_capability.go +++ b/pkg/dialects/uavionix/enum_mav_protocol_capability.go @@ -10,16 +10,18 @@ import ( type MAV_PROTOCOL_CAPABILITY int const ( - // Autopilot supports MISSION float message type. + // Autopilot supports the MISSION_ITEM float message type. + // Note that MISSION_ITEM is deprecated, and autopilots should use MISSION_INT instead. MAV_PROTOCOL_CAPABILITY_MISSION_FLOAT MAV_PROTOCOL_CAPABILITY = 1 // Autopilot supports the new param float message type. MAV_PROTOCOL_CAPABILITY_PARAM_FLOAT MAV_PROTOCOL_CAPABILITY = 2 // Autopilot supports MISSION_ITEM_INT scaled integer message type. + // Note that this flag must always be set if missions are supported, because missions must always use MISSION_ITEM_INT (rather than MISSION_ITEM, which is deprecated). MAV_PROTOCOL_CAPABILITY_MISSION_INT MAV_PROTOCOL_CAPABILITY = 4 // Autopilot supports COMMAND_INT scaled integer message type. MAV_PROTOCOL_CAPABILITY_COMMAND_INT MAV_PROTOCOL_CAPABILITY = 8 - // Autopilot supports the new param union message type. - MAV_PROTOCOL_CAPABILITY_PARAM_UNION MAV_PROTOCOL_CAPABILITY = 16 + // Reserved for future use. + MAV_PROTOCOL_CAPABILITY_RESERVED1 MAV_PROTOCOL_CAPABILITY = 16 // Autopilot supports the new FILE_TRANSFER_PROTOCOL message type. MAV_PROTOCOL_CAPABILITY_FTP MAV_PROTOCOL_CAPABILITY = 32 // Autopilot supports commanding attitude offboard. @@ -42,8 +44,8 @@ const ( MAV_PROTOCOL_CAPABILITY_MISSION_FENCE MAV_PROTOCOL_CAPABILITY = 16384 // Autopilot supports mission rally point protocol. MAV_PROTOCOL_CAPABILITY_MISSION_RALLY MAV_PROTOCOL_CAPABILITY = 32768 - // Autopilot supports the flight information protocol. - MAV_PROTOCOL_CAPABILITY_FLIGHT_INFORMATION MAV_PROTOCOL_CAPABILITY = 65536 + // Reserved for future use. + MAV_PROTOCOL_CAPABILITY_RESERVED2 MAV_PROTOCOL_CAPABILITY = 65536 ) var labels_MAV_PROTOCOL_CAPABILITY = map[MAV_PROTOCOL_CAPABILITY]string{} diff --git a/pkg/dialects/uavionix/msg_component_information.go b/pkg/dialects/uavionix/msg_component_information.go index b9f3ebc63..fd3703b44 100644 --- a/pkg/dialects/uavionix/msg_component_information.go +++ b/pkg/dialects/uavionix/msg_component_information.go @@ -6,13 +6,13 @@ package uavionix type MessageComponentInformation struct { // Timestamp (time since system boot). TimeBootMs uint32 - // CRC32 of the TYPE_GENERAL file (can be used by a GCS for file caching). + // CRC32 of the TYPE_GENERAL file (can be used by a GCS for file caching). The general metadata file contains URLs to other files of different type according to COMP_METADATA_TYPE. GeneralMetadataFileCrc uint32 // Component definition URI for TYPE_GENERAL. This must be a MAVLink FTP URI and the file might be compressed with xz. GeneralMetadataUri string `mavlen:"100"` // CRC32 of the TYPE_PERIPHERALS file (can be used by a GCS for file caching). PeripheralsMetadataFileCrc uint32 - // (Optional) Component definition URI for TYPE_PERIPHERALS. This must be a MAVLink FTP URI and the file might be compressed with xz. + // (Optional) Component definition URI for TYPE_PERIPHERALS. This must be a MAVLink FTP URI and the file might be compressed with xz. Peripherals are listed as a separate URL and not included in the general metadata file because it will likely be generated at runtime while the general (and other referenced files) might be generated at compile time. PeripheralsMetadataUri string `mavlen:"100"` } diff --git a/pkg/dialects/uavionix/msg_flight_information.go b/pkg/dialects/uavionix/msg_flight_information.go index e17673909..14831d764 100644 --- a/pkg/dialects/uavionix/msg_flight_information.go +++ b/pkg/dialects/uavionix/msg_flight_information.go @@ -3,6 +3,7 @@ package uavionix // Information about flight since last arming. +// This can be requested using MAV_CMD_REQUEST_MESSAGE. type MessageFlightInformation struct { // Timestamp (time since system boot). TimeBootMs uint32