diff --git a/conf/firmwares/subsystems/shared/baro_board.makefile b/conf/firmwares/subsystems/shared/baro_board.makefile index 6478d0a04f..596ab7fbe1 100644 --- a/conf/firmwares/subsystems/shared/baro_board.makefile +++ b/conf/firmwares/subsystems/shared/baro_board.makefile @@ -27,6 +27,7 @@ else ifeq ($(BOARD), lisa_m) # defaults to i2c baro bmp085 on the board LISA_M_BARO ?= BARO_BOARD_BMP085 ifeq ($(LISA_M_BARO), BARO_MS5611_SPI) + ap.CFLAGS += -DBARO_BOARD=BARO_MS5611_SPI include $(CFG_SHARED)/spi_master.makefile ap.CFLAGS += -DUSE_SPI2 -DUSE_SPI_SLAVE3 ap.CFLAGS += -DBB_MS5611_SPI_DEV=spi2 @@ -35,12 +36,14 @@ LISA_M_BARO ?= BARO_BOARD_BMP085 ap.srcs += peripherals/ms5611_spi.c ap.srcs += boards/baro_board_ms5611_spi.c else ifeq ($(LISA_M_BARO), BARO_MS5611_I2C) + ap.CFLAGS += -DBARO_BOARD=BARO_MS5611_I2C ap.CFLAGS += -DUSE_I2C2 ap.CFLAGS += -DBB_MS5611_I2C_DEV=i2c2 ap.srcs += peripherals/ms5611.c ap.srcs += peripherals/ms5611_i2c.c ap.srcs += boards/baro_board_ms5611_i2c.c else ifeq ($(LISA_M_BARO), BARO_BOARD_BMP085) + ap.CFLAGS += -DBARO_BOARD=BARO_BOARD_BMP085 ap.CFLAGS += -DUSE_I2C2 ap.srcs += peripherals/bmp085.c ap.srcs += $(SRC_BOARD)/baro_board.c @@ -50,6 +53,7 @@ else ifeq ($(BOARD), lisa_mx) # defaults to MS5611 via SPI on Aspirin LISA_MX_BARO ?= BARO_MS5611_SPI ifeq ($(LISA_MX_BARO), BARO_MS5611_SPI) + ap.CFLAGS += -DBARO_BOARD=BARO_MS5611_SPI include $(CFG_SHARED)/spi_master.makefile ap.CFLAGS += -DUSE_SPI2 -DUSE_SPI_SLAVE3 ap.CFLAGS += -DBB_MS5611_SPI_DEV=spi2 @@ -58,12 +62,14 @@ LISA_MX_BARO ?= BARO_MS5611_SPI ap.srcs += peripherals/ms5611_spi.c ap.srcs += boards/baro_board_ms5611_spi.c else ifeq ($(LISA_MX_BARO), BARO_MS5611_I2C) + ap.CFLAGS += -DBARO_BOARD=BARO_MS5611_I2C ap.CFLAGS += -DUSE_I2C2 ap.CFLAGS += -DBB_MS5611_I2C_DEV=i2c2 ap.srcs += peripherals/ms5611.c ap.srcs += peripherals/ms5611_i2c.c ap.srcs += boards/baro_board_ms5611_i2c.c else ifeq ($(LISA_MX_BARO), BARO_BOARD_BMP085) + ap.CFLAGS += -DBARO_BOARD=BARO_BOARD_BMP085 ap.CFLAGS += -DUSE_I2C2 ap.srcs += peripherals/bmp085.c ap.srcs += $(SRC_BOARD)/baro_board.c @@ -85,6 +91,7 @@ else ifeq ($(BOARD), lia) # fixme, reuse the baro drivers in lisa_m dir LIA_BARO ?= BARO_MS5611_SPI ifeq ($(LIA_BARO), BARO_MS5611_SPI) + ap.CFLAGS += -DBARO_BOARD=BARO_MS5611_SPI include $(CFG_SHARED)/spi_master.makefile ap.CFLAGS += -DUSE_SPI2 -DUSE_SPI_SLAVE3 ap.CFLAGS += -DBB_MS5611_SPI_DEV=spi2 @@ -93,6 +100,7 @@ LIA_BARO ?= BARO_MS5611_SPI ap.srcs += peripherals/ms5611_spi.c ap.srcs += boards/baro_board_ms5611_spi.c else ifeq ($(LIA_BARO), BARO_MS5611_I2C) + ap.CFLAGS += -DBARO_BOARD=BARO_MS5611_I2C ap.CFLAGS += -DUSE_I2C2 ap.CFLAGS += -DBB_MS5611_I2C_DEV=i2c2 ap.srcs += peripherals/ms5611.c diff --git a/sw/airborne/boards/apogee/baro_board.h b/sw/airborne/boards/apogee/baro_board.h index 595a8a90cb..4b8c2779d6 100644 --- a/sw/airborne/boards/apogee/baro_board.h +++ b/sw/airborne/boards/apogee/baro_board.h @@ -29,6 +29,9 @@ #ifndef BOARDS_APOGEE_BARO_H #define BOARDS_APOGEE_BARO_H +// only for printing the baro type during compilation +#define BARO_BOARD BARO_BOARD_MPL3115 + extern void apogee_baro_event(void); #define BaroEvent apogee_baro_event diff --git a/sw/airborne/boards/krooz/baro_board.h b/sw/airborne/boards/krooz/baro_board.h index c12e63138c..ec571679cc 100644 --- a/sw/airborne/boards/krooz/baro_board.h +++ b/sw/airborne/boards/krooz/baro_board.h @@ -8,6 +8,9 @@ #ifndef BOARDS_KROOZ_BARO_H #define BOARDS_KROOZ_BARO_H +// only for printing the baro type during compilation +#define BARO_BOARD BARO_BOARD_MS5611_I2C + extern void baro_event(void); #define BaroEvent baro_event diff --git a/sw/airborne/boards/lisa_m/baro_board.h b/sw/airborne/boards/lisa_m/baro_board.h index bb080094ab..ddd0450544 100644 --- a/sw/airborne/boards/lisa_m/baro_board.h +++ b/sw/airborne/boards/lisa_m/baro_board.h @@ -7,6 +7,11 @@ #ifndef BOARDS_LISA_M_BARO_H #define BOARDS_LISA_M_BARO_H +// only for printing the baro type during compilation +#ifndef BARO_BOARD +#define BARO_BOARD BARO_BOARD_BMP085 +#endif + // for right now we abuse this file for the ms5611 baro on aspirin as well extern void baro_event(void); diff --git a/sw/airborne/boards/lisa_mx/baro_board.h b/sw/airborne/boards/lisa_mx/baro_board.h index 0457f69dff..77463b05bd 100644 --- a/sw/airborne/boards/lisa_mx/baro_board.h +++ b/sw/airborne/boards/lisa_mx/baro_board.h @@ -7,6 +7,11 @@ #ifndef BOARDS_LISA_MX_BARO_H #define BOARDS_LISA_MX_BARO_H +// only for printing the baro type during compilation +#ifndef BARO_BOARD +#define BARO_BOARD BARO_MS5611_SPI +#endif + extern void baro_event(void); #define BaroEvent baro_event diff --git a/sw/airborne/boards/lisa_s/baro_board.h b/sw/airborne/boards/lisa_s/baro_board.h index 8f41c8e3ca..599c05dee4 100644 --- a/sw/airborne/boards/lisa_s/baro_board.h +++ b/sw/airborne/boards/lisa_s/baro_board.h @@ -1,6 +1,6 @@ /* - * board specific functions for the lisa_m board + * board specific functions for the lisa_s board * */ @@ -9,6 +9,9 @@ #include "std.h" +// only for printing the baro type during compilation +#define BARO_BOARD BARO_MS5611_SPI + extern void baro_event(void); #define BaroEvent baro_event diff --git a/sw/airborne/boards/navgo/baro_board.h b/sw/airborne/boards/navgo/baro_board.h index bbd56ba3f7..dde5e64c4d 100644 --- a/sw/airborne/boards/navgo/baro_board.h +++ b/sw/airborne/boards/navgo/baro_board.h @@ -29,6 +29,9 @@ #ifndef BOARDS_NAVGO_BARO_H #define BOARDS_NAVGO_BARO_H +// only for printing the baro type during compilation +#define BARO_BOARD BARO_BOARD_MPC355X + extern void navgo_baro_event(void); // define BaroEvent macro diff --git a/sw/airborne/boards/px4fmu/baro_board.h b/sw/airborne/boards/px4fmu/baro_board.h index 8ef2dacaea..7cdd39b856 100644 --- a/sw/airborne/boards/px4fmu/baro_board.h +++ b/sw/airborne/boards/px4fmu/baro_board.h @@ -7,6 +7,9 @@ #ifndef BOARDS_PX4FMU_BARO_H #define BOARDS_PX4FMU_BARO_H +// only for printing the baro type during compilation +#define BARO_BOARD BARO_BOARD_MS5611_I2C + extern void baro_event(void); #define BaroEvent baro_event diff --git a/sw/airborne/boards/umarim/baro_board.h b/sw/airborne/boards/umarim/baro_board.h index b340417909..b6c79bc7e4 100644 --- a/sw/airborne/boards/umarim/baro_board.h +++ b/sw/airborne/boards/umarim/baro_board.h @@ -29,6 +29,9 @@ #ifndef BOARDS_UMARIM_BARO_H #define BOARDS_UMARIM_BARO_H +// only for printing the baro type during compilation +#define BARO_BOARD BARO_BOARD_MPXA6115 + extern void umarim_baro_event(void); #define BaroEvent umarim_baro_event diff --git a/sw/airborne/firmwares/fixedwing/main_ap.c b/sw/airborne/firmwares/fixedwing/main_ap.c index ea5eeac23a..92b3a70b15 100644 --- a/sw/airborne/firmwares/fixedwing/main_ap.c +++ b/sw/airborne/firmwares/fixedwing/main_ap.c @@ -55,8 +55,8 @@ #endif #include "subsystems/air_data.h" #if USE_BARO_BOARD -PRINT_CONFIG_MSG("USE_BARO_BOARD is TRUE: Reading onboard baro.") #include "subsystems/sensors/baro.h" +PRINT_CONFIG_MSG_VALUE("USE_BARO_BOARD is TRUE, reading onboard baro: ", BARO_BOARD) #endif #include "subsystems/ins.h" diff --git a/sw/airborne/firmwares/rotorcraft/main.c b/sw/airborne/firmwares/rotorcraft/main.c index 30410067b4..5dfd866d58 100644 --- a/sw/airborne/firmwares/rotorcraft/main.c +++ b/sw/airborne/firmwares/rotorcraft/main.c @@ -55,8 +55,8 @@ #include "subsystems/air_data.h" #if USE_BARO_BOARD -PRINT_CONFIG_MSG("USE_BARO_BOARD is TRUE: Reading onboard baro.") #include "subsystems/sensors/baro.h" +PRINT_CONFIG_MSG_VALUE("USE_BARO_BOARD is TRUE, reading onboard baro: ", BARO_BOARD) #endif #include "subsystems/electrical.h" diff --git a/sw/airborne/subsystems/sensors/baro.h b/sw/airborne/subsystems/sensors/baro.h index 643da7bbef..226d2b42b5 100644 --- a/sw/airborne/subsystems/sensors/baro.h +++ b/sw/airborne/subsystems/sensors/baro.h @@ -32,8 +32,12 @@ #define SUBSYSTEMS_SENSORS_BARO_H #include BOARD_CONFIG + #if USE_BARO_BOARD #include "baro_board.h" +#ifndef BARO_BOARD +#define BARO_BOARD BARO_BOARD_DEFAULT +#endif #endif extern void baro_init(void);