X-Git-Url: https://git.gag.com/?a=blobdiff_plain;f=src%2Fkernel%2Fao_config.h;h=41aafcca8cb5ae4151920bf7aeec34f6b514de0e;hb=HEAD;hp=3cfd0d0731574c71599c5946e012a6f0d6c642bc;hpb=3058ecdeafdee959b1103965f3df4ffcd59683e4;p=fw%2Faltos diff --git a/src/kernel/ao_config.h b/src/kernel/ao_config.h index 3cfd0d07..6896eaa9 100644 --- a/src/kernel/ao_config.h +++ b/src/kernel/ao_config.h @@ -19,7 +19,13 @@ #ifndef _AO_CONFIG_H_ #define _AO_CONFIG_H_ +#ifndef AO_FLIGHT_TEST +#include +#endif + +#if AO_PYRO_NUM #include +#endif #ifndef USE_STORAGE_CONFIG #define USE_STORAGE_CONFIG 1 @@ -58,7 +64,12 @@ #endif #define AO_CONFIG_MAJOR 1 -#define AO_CONFIG_MINOR 24 +#define AO_CONFIG_MINOR 26 + +/* All cc1200 devices support limiting TX power to 10mW */ +#if !defined(HAS_RADIO_10MW) && defined(AO_CC1200_SPI) +#define HAS_RADIO_10MW 1 +#endif #define AO_AES_LEN 16 @@ -92,7 +103,75 @@ struct ao_config { #if HAS_RADIO_AMP uint8_t radio_amp; /* minor version 14 */ #endif -#if HAS_GYRO +#if HAS_IMU + int16_t accel_zero_along; /* minor version 15 */ + int16_t accel_zero_across; /* minor version 15 */ + int16_t accel_zero_through; /* minor version 15 */ +#endif +#if HAS_BEEP + uint8_t mid_beep; /* minor version 16 */ +#endif +#if HAS_TRACKER + uint16_t tracker_motion; /* minor version 17 */ + uint8_t tracker_interval; /* minor version 17 */ +#endif +#if AO_PYRO_NUM + uint16_t pyro_time; /* minor version 18 */ +#endif +#if HAS_APRS + uint8_t aprs_ssid; /* minor version 19 */ +#endif +#if HAS_RADIO_RATE + uint8_t radio_rate; /* minor version 20 */ +#endif +#if HAS_RADIO_FORWARD + uint32_t send_frequency; /* minor version 21 */ +#endif +#if HAS_APRS + uint8_t aprs_format; /* minor version 22 */ +#endif +#if HAS_FIXED_PAD_BOX + uint8_t pad_box; /* minor version 22 */ + uint8_t pad_idle; /* minor version 23 */ +#endif +#if HAS_APRS + uint8_t aprs_offset; /* minor version 24 */ +#endif +#if HAS_RADIO_10MW + uint8_t radio_10mw; /* minor version 25 */ +#endif + uint8_t report_feet; /* minor version 26 */ +}; + +struct ao_config_1_24 { + uint8_t major; + uint8_t minor; + uint16_t main_deploy; + int16_t accel_plus_g; /* changed for minor version 2 */ + uint8_t _legacy_radio_channel; + char callsign[AO_MAX_CALLSIGN + 1]; + uint8_t apogee_delay; /* minor version 1 */ + int16_t accel_minus_g; /* minor version 2 */ + uint32_t radio_cal; /* minor version 3 */ + uint32_t flight_log_max; /* minor version 4 */ + uint8_t ignite_mode; /* minor version 5 */ + uint8_t pad_orientation; /* minor version 6 */ + uint32_t radio_setting; /* minor version 7 */ + uint8_t radio_enable; /* minor version 8 */ + uint8_t aes_key[AO_AES_LEN]; /* minor version 9 */ + uint32_t frequency; /* minor version 10 */ + uint16_t apogee_lockout; /* minor version 11 */ +#if AO_PYRO_NUM + struct ao_pyro_1_24 pyro[AO_PYRO_NUM]; /* minor version 12 */ +#endif + uint16_t aprs_interval; /* minor version 13 */ +#if HAS_RADIO_POWER + uint8_t radio_power; /* minor version 14 */ +#endif +#if HAS_RADIO_AMP + uint8_t radio_amp; /* minor version 14 */ +#endif +#if HAS_IMU int16_t accel_zero_along; /* minor version 15 */ int16_t accel_zero_across; /* minor version 15 */ int16_t accel_zero_through; /* minor version 15 */