altos: Eliminate 'pin' field from GPIO functions
[fw/altos] / src / telemega-v1.0 / ao_pins.h
index 95644dae03a1611b9e00197a980fa48e2af82f65..354da6a46210c07cfbb9eb28bea68858961977e5 100644 (file)
@@ -3,7 +3,8 @@
  *
  * This program is free software; you can redistribute it and/or modify
  * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; version 2 of the License.
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
  *
  * This program is distributed in the hope that it will be useful, but
  * WITHOUT ANY WARRANTY; without even the implied warranty of
 #define ao_gps_fifo            (ao_stm_usart3.rx_fifo)
 
 #define AO_CONFIG_DEFAULT_FLIGHT_LOG_MAX       (1024 * 1024)
+#define AO_CONFIG_MAX_SIZE                     1024
+#define LOG_ERASE_MARK                         0x55
+#define LOG_MAX_ERASE                          128
+#define AO_LOG_FORMAT                          AO_LOG_FORMAT_TELEMEGA
+
 #define HAS_EEPROM             1
 #define USE_INTERNAL_FLASH     0
 #define USE_EEPROM_CONFIG      1
 #define USE_STORAGE_CONFIG     0
 #define HAS_USB                        1
 #define HAS_BEEP               1
+#define HAS_BATTERY_REPORT     1
 #define HAS_RADIO              1
 #define HAS_TELEMETRY          1
 #define HAS_APRS               1
+#define HAS_COMPANION          1
 
 #define HAS_SPI_1              1
 #define SPI_1_PA5_PA6_PA7      1       /* Barometer */
 /* Number of general purpose pyro channels available */
 #define AO_PYRO_NUM    4
 
-#define AO_IGNITER_SET_DROGUE(v)       stm_gpio_set(AO_IGNITER_DROGUE_PORT, AO_IGNITER_DROGUE_PIN, v)
-#define AO_IGNITER_SET_MAIN(v)         stm_gpio_set(AO_IGNITER_MAIN_PORT, AO_IGNITER_MAIN_PIN, v)
-
 /*
  * ADC
  */
@@ -249,6 +254,23 @@ struct ao_adc {
 #define AO_ADC_SQ8             AO_ADC_V_PBATT
 #define AO_ADC_SQ9             AO_ADC_TEMP
 
+/*
+ * Voltage divider on ADC battery sampler
+ */
+#define AO_BATTERY_DIV_PLUS    56      /* 5.6k */
+#define AO_BATTERY_DIV_MINUS   100     /* 10k */
+
+/*
+ * Voltage divider on ADC igniter samplers
+ */
+#define AO_IGNITE_DIV_PLUS     100     /* 100k */
+#define AO_IGNITE_DIV_MINUS    27      /* 27k */
+
+/*
+ * ADC reference in decivolts
+ */
+#define AO_ADC_REFERENCE_DV    33
+
 /*
  * Pressure sensor settings
  */
@@ -284,7 +306,6 @@ struct ao_adc {
 #define AO_CC1120_SPI_CS_PORT  (&stm_gpioc)
 #define AO_CC1120_SPI_CS_PIN   5
 #define AO_CC1120_SPI_BUS      AO_SPI_2_PB13_PB14_PB15
-#define AO_CC1120_SPI          stm_spi2
 
 #define AO_CC1120_INT_PORT             (&stm_gpioe)
 #define AO_CC1120_INT_PIN              1
@@ -325,6 +346,7 @@ struct ao_adc {
  */
 
 #define HAS_MMA655X            1
+#define AO_MMA655X_INVERT      0
 #define AO_MMA655X_SPI_INDEX   AO_SPI_1_PE13_PE14_PE15
 #define AO_MMA655X_CS_PORT     (&stm_gpiod)
 #define AO_MMA655X_CS_PIN      4