#ifndef _AO_PINS_H_
#define _AO_PINS_H_
+#define AO_STACK_SIZE 352
+#define SLEEP_HASH_SIZE 3
+#define AO_NUM_TASKS 6
+
#define HAS_TASK_QUEUE 1
#define IS_FLASH_LOADER 0
#define PACKET_HAS_SLAVE 0
#define HAS_SERIAL 0
-#define USE_SERIAL_0_STDIN 1
-#define SERIAL_0_18_19 1
-#define SERIAL_0_14_15 0
-#define SERIAL_0_17_18 0
-#define SERIAL_0_26_27 0
#define AO_CONFIG_DEFAULT_FLIGHT_LOG_MAX (1984 * 1024)
#define AO_CONFIG_MAX_SIZE 1024
#define HAS_BEEP 1
#define HAS_BATTERY_REPORT 1
#define HAS_PAD_REPORT 1
-#define BEEPER_CHANNEL 3
-#define BEEPER_TIMER 2
-#define BEEPER_PORT (&stm_gpioa)
-#define BEEPER_PIN 2
-#define BEEPER_AFR STM_AFR_AF2
+
+/* Beeper is on pio0_1 ct32b0_mat2 */
+#define AO_LPC_BEEP_PORT 0
+#define AO_LPC_BEEP_PIN 1
+#define AO_LPC_BEEP_TIMER 0
+#define AO_LPC_BEEP_CHANNEL 2
#define HAS_RADIO 0
#define HAS_TELEMETRY 0
#define AO_ADC_0 1
#define AO_ADC_1 1
-#define AO_DATA_RING 64
+#define AO_DATA_RING 32
-struct ao_adc {
- int16_t v_batt;
- int16_t motor_pressure;
-};
#define AO_ADC_DUMP(p) \
- printf("tick: batt: %5d %5lu motor_pressure: %5d\n", \
+ printf("tick: %5lu batt: %5d motor_pressure: %5d\n", \
(p)->tick, \
- (p)->adc.v_batt);
- (p)->adc.motor_pressure, \
+ (p)->adc.v_batt, \
+ (p)->adc.motor_pressure);
/*
* Voltage divider on ADC battery sampler
/* SPI */
#define HAS_SPI_0 1
+#define SPI_0_MODE ((0 << LPC_SSP_CR0_CPOL) | (0 << LPC_SSP_CR0_CPHA))
#define SPI_SCK0_P0_6 1
#define HAS_SPI_1 1
#define SPI_SCK1_P1_15 1
#define SPI_MISO1_P0_22 1
#define SPI_MOSI1_P0_21 1
+#define SPI_1_MODE ((1 << LPC_SSP_CR0_CPOL) | (1 << LPC_SSP_CR0_CPHA))
/*
* SPI Flash memory
/* ADXL375 */
#define HAS_ADXL375 1
+#define AO_ADXL375_SPI_INDEX 1
#define AO_ADXL375_CS_PORT 0
-#define AO_ADXL375_CS_MASK (1 << 19)
-#define AO_ADXL375_SPI_BUS 1
+#define AO_ADXL375_CS_PIN 19
#define AO_ADXL375_AXIS x
#define AO_ADXL375_ACROSS_AXIS y
#define HAS_IMU 1
#define USE_ADXL375_IMU 1
+#define HAS_KALMAN 0
+
/* Motor pressure */
#define HAS_MOTOR_PRESSURE 1
#define ao_data_motor_pressure(packet) ((packet)->adc.motor_pressure)
typedef int16_t motor_pressure_t;
+/* want about 50psi, or 344kPa for boost and 30psi for coast */
+
+#define AO_FULL_SCALE_PRESSURE 11031612 /* 1600psi */
+#define AO_BOOST_DETECT_PRESSURE 344000 /* 50psi */
+#define AO_QUIET_DETECT_PRESSURE 207000 /* 30psi */
+
+#define AO_PRESSURE_VOLTS_BASE 0.5
+#define AO_PRESSURE_VOLTS_MAX 4.5
+
+struct ao_adc {
+ int16_t v_batt;
+ int16_t motor_pressure;
+};
+
#endif /* _AO_PINS_H_ */