+#ifdef TELESCIENCE
+ #define LEDS_AVAILABLE 0
+ #define HAS_USB 1
+ #define HAS_LOG 1
+ #define TEENSY 0
+ #define HAS_SERIAL_1 0
+ #define HAS_ADC 1
+ #define PACKET_HAS_SLAVE 0
+ #define HAS_BEEP 0
+ #define HAS_EEPROM 1
+ #define HAS_STORAGE_DEBUG 0
+
+ #define AVR_VCC_5V 0
+ #define AVR_VCC_3V3 1
+ #define AVR_CLOCK 8000000UL
+
+ #define SPI_CS_PORT PORTE
+ #define SPI_CS_DIR DDRE
+ #define M25_CS_MASK (1 << PORTE6)
+ #define M25_MAX_CHIPS 1
+
+ #define SPI_SLAVE_CS_PORT PORTB
+ #define SPI_SLAVE_CS_PIN PINB
+ #define SPI_SLAVE_CS_PIN_NO PINB0
+
+ #define SPI_SLAVE_PIN_0_3 1
+ #define SPI_SLAVE_PIN_2_5 0
+#endif
+
+#ifdef TELEPYRO
+ #define LEDS_AVAILABLE 0
+ #define HAS_USB 1
+ #define HAS_LOG 0
+ #define TEENSY 0
+ #define USE_SERIAL_1_STDIN 1
+ #define HAS_SERIAL_1 1
+ #define HAS_USB 1
+ #define HAS_ADC 1
+ #define PACKET_HAS_SLAVE 0
+ #define HAS_BEEP 0
+
+ #define AVR_VCC_5V 0
+ #define AVR_VCC_3V3 1
+ #define AVR_CLOCK 8000000UL
+
+ #define SPI_SLAVE_CS_PORT PORTB
+ #define SPI_SLAVE_CS_PIN PINB
+ #define SPI_SLAVE_CS_PIN_NO PINB0
+
+ #define SPI_SLAVE_PIN_0_3 1
+ #define SPI_SLAVE_PIN_2_5 0
+#endif
+
+#define AO_M25_SPI_CS_PORT SPI_CS_PORT
+#define AO_M25_SPI_CS_MASK M25_CS_MASK
+
+#define AO_TELESCIENCE_NUM_ADC 12
+
+struct ao_adc {
+ uint16_t adc[AO_TELESCIENCE_NUM_ADC]; /* samples */
+};
+
+#define AO_DATA_RING 16
+