diff --git a/Makefile.ac b/Makefile.ac
index 93e3c50fc1..02cf338b77 100644
--- a/Makefile.ac
+++ b/Makefile.ac
@@ -53,7 +53,6 @@ TUNING_H=$(AC_GENERATED)/tuning.h
SUPERVISION=./paparazzi
MAKE=make PAPARAZZI_SRC=$(PAPARAZZI_SRC) PAPARAZZI_HOME=$(PAPARAZZI_HOME)
MODULES_H=$(AC_GENERATED)/modules.h
-MODULES_DIR=$(PAPARAZZI_HOME)/conf/modules/
AIRCRAFT_MD5=$(AIRCRAFT_CONF_DIR)/aircraft.md5
# "make Q=''" to get full echo
@@ -132,7 +131,7 @@ $(TUNING_H) : $(SETTINGS_XMLS) $(CONF_XML) $(TOOLS)/gen_tuning.out
$(MODULES_H) : $(CONF)/$(AIRFRAME_XML) $(TOOLS)/gen_modules.out $(CONF)/modules/*.xml
$(Q)test -d $(AC_GENERATED) || mkdir -p $(AC_GENERATED)
@echo BUILD $@
- $(Q)$(TOOLS)/gen_modules.out $(MODULES_DIR) $(SETTINGS_MODULES) $< > $@
+ $(Q)$(TOOLS)/gen_modules.out $(SETTINGS_MODULES) $< > $@
$(Q)chmod a+r $@
$(SETTINGS_MODULES) : $(MODULES_H)
diff --git a/Makefile.install b/Makefile.install
index 978a38ec64..c973665dd3 100644
--- a/Makefile.install
+++ b/Makefile.install
@@ -37,17 +37,28 @@ install_conf:
$(INSTALLDATA) conf/gui.xml $(DESTDIR)/conf/
$(INSTALL) -d $(DESTDIR)/conf/airframes
$(INSTALLDATA) conf/airframes/airframe.dtd $(DESTDIR)/conf/airframes
- $(INSTALLDATA) conf/airframes/microjet5.xml $(DESTDIR)/conf/airframes
- $(INSTALLDATA) conf/airframes/twinstar1.xml $(DESTDIR)/conf/airframes
- $(INSTALLDATA) conf/airframes/twinjet1.xml $(DESTDIR)/conf/airframes
+ $(INSTALLDATA) conf/airframes/microjet_example.xml $(DESTDIR)/conf/airframes
+ $(INSTALLDATA) conf/airframes/twinstar_example.xml $(DESTDIR)/conf/airframes
+ $(INSTALLDATA) conf/airframes/twinjet_example.xml $(DESTDIR)/conf/airframes
$(INSTALLDATA) conf/airframes/tiny_hitl.xml $(DESTDIR)/conf/airframes
- $(INSTALLDATA) conf/airframes/booz2_a2.xml $(DESTDIR)/conf/airframes
+ $(INSTALLDATA) conf/airframes/example_twog_analogimu.xml $(DESTDIR)/conf/airframes
$(INSTALL) -d $(DESTDIR)/conf/autopilot
$(INSTALLDATA) conf/autopilot/*.makefile $(DESTDIR)/conf/autopilot
$(INSTALLDATA) conf/autopilot/*.h $(DESTDIR)/conf/autopilot
+ $(INSTALL) -d $(DESTDIR)/conf/autopilot/subsystems
+ $(INSTALLDATA) conf/autopilot/subsystems/*.makefile $(DESTDIR)/conf/autopilot/subsystems
+ $(INSTALL) -d $(DESTDIR)/conf/autopilot/subsystems/fixedwing
+ $(INSTALLDATA) conf/autopilot/subsystems/fixedwing/*.makefile $(DESTDIR)/conf/autopilot/subsystems/fixedwing
+ $(INSTALL) -d $(DESTDIR)/conf/autopilot/subsystems/rotorcraft
+ $(INSTALLDATA) conf/autopilot/subsystems/rotorcraft/*.makefile $(DESTDIR)/conf/autopilot/subsystems/rotorcraft
+ $(INSTALL) -d $(DESTDIR)/conf/autopilot/subsystems/shared
+ $(INSTALLDATA) conf/autopilot/subsystems/shared/*.makefile $(DESTDIR)/conf/autopilot/subsystems/shared
$(INSTALL) -d $(DESTDIR)/conf/flight_plans
$(INSTALLDATA) conf/flight_plans/*.dtd $(DESTDIR)/conf/flight_plans
$(INSTALLDATA) conf/flight_plans/*.xml $(DESTDIR)/conf/flight_plans
+ $(INSTALL) -d $(DESTDIR)/conf/modules
+ $(INSTALLDATA) conf/modules/*.dtd $(DESTDIR)/conf/modules
+ $(INSTALLDATA) conf/modules/*.xml $(DESTDIR)/conf/modules
$(INSTALL) -d $(DESTDIR)/conf/gps
$(INSTALLDATA) conf/gps/Makefile $(DESTDIR)/conf/gps
$(INSTALLDATA) conf/gps/ublox_conf.c $(DESTDIR)/conf/gps
@@ -111,16 +122,12 @@ install_libs:
install_tools:
$(INSTALLDATA) Makefile.ac $(DESTDIR)
- $(INSTALL) -d $(DESTDIR)/sw/tools/
$(INSTALLDATA) conf/Makefile* $(DESTDIR)/conf
+ $(INSTALL) -d $(DESTDIR)/sw/tools/
$(INSTALL) sw/tools/*.out $(DESTDIR)/sw/tools/
rm -f $(DESTDIR)/sw/tools/gen_flight_plan.out
- $(INSTALLDATA) sw/tools/fp_syntax.cmo $(DESTDIR)/sw/tools
- $(INSTALLDATA) sw/tools/fp_parser.cmo $(DESTDIR)/sw/tools
- $(INSTALLDATA) sw/tools/fp_lexer.cmo $(DESTDIR)/sw/tools
$(INSTALLDATA) sw/tools/fp_proc.cmo $(DESTDIR)/sw/tools
$(INSTALLDATA) sw/tools/gen_flight_plan.cmo $(DESTDIR)/sw/tools
- $(INSTALLDATA) sw/tools/extract_makefile.ml $(DESTDIR)/sw/tools/
$(INSTALLDATA) sw/tools/gen_aircraft.ml $(DESTDIR)/sw/tools/
$(INSTALLDATA) sw/tools/gen_airframe.ml $(DESTDIR)/sw/tools/
$(INSTALLDATA) sw/tools/gen_messages.ml $(DESTDIR)/sw/tools/
@@ -130,6 +137,14 @@ install_tools:
$(INSTALLDATA) sw/tools/gen_settings.ml $(DESTDIR)/sw/tools/
$(INSTALLDATA) sw/tools/gen_tuning.ml $(DESTDIR)/sw/tools/
$(INSTALLDATA) sw/tools/gen_ubx.ml $(DESTDIR)/sw/tools/
+ $(INSTALLDATA) sw/tools/gen_xsens.ml $(DESTDIR)/sw/tools/
+ $(INSTALLDATA) sw/tools/gen_modules.ml $(DESTDIR)/sw/tools/
+ $(INSTALLDATA) sw/tools/gen_common.cmo $(DESTDIR)/sw/tools/
+ $(INSTALL) -d $(DESTDIR)/sw/tools/calibration
+ $(INSTALLDATA) sw/tools/calibration/calibrate.py $(DESTDIR)/sw/tools/calibration
+ $(INSTALLDATA) sw/tools/calibration/calibrate_gyro.py $(DESTDIR)/sw/tools/calibration
+ $(INSTALLDATA) sw/tools/calibration/calibration_utils.py $(DESTDIR)/sw/tools/calibration
+ $(INSTALLDATA) sw/tools/calibration/README $(DESTDIR)/sw/tools/calibration
$(INSTALL) -d $(DESTDIR)/sw/ground_segment/lpc21iap
$(INSTALL) sw/ground_segment/lpc21iap/lpc21iap $(DESTDIR)/sw/ground_segment/lpc21iap/
$(INSTALL) -d $(DESTDIR)/sw/simulator
@@ -142,7 +157,7 @@ install_tools:
install_airborne_sources:
$(INSTALL) -d $(DESTDIR)/sw/
- tar --exclude=CVS -cf - sw/airborne/ | tar -C $(DESTDIR) -xf -
+ tar -cf - sw/airborne/ | tar -C $(DESTDIR) -xf -
$(INSTALL) -d $(DESTDIR)/sw/include
$(INSTALLDATA) sw/include/std.h $(DESTDIR)/sw/include
$(INSTALLDATA) var/include/*.h $(DESTDIR)/sw/include
diff --git a/conf/airframes/ENAC/fixed-wing/drops.xml b/conf/airframes/ENAC/fixed-wing/drops.xml
index cf7359cc92..289865ccae 100644
--- a/conf/airframes/ENAC/fixed-wing/drops.xml
+++ b/conf/airframes/ENAC/fixed-wing/drops.xml
@@ -221,7 +221,7 @@ include $(PAPARAZZI_SRC)/conf/autopilot/tiny.makefile
FLASH_MODE=IAP
-ap.CFLAGS += -DFBW -DAP -DBOARD_CONFIG=$(CONFIG) -DLED -DTIME_LED=1
+ap.CFLAGS += -DFBW -DAP -DBOARD_CONFIG=$(CONFIG) -DUSE_LED -DTIME_LED=1
ap.srcs = sys_time.c $(SRC_ARCH)/sys_time_hw.c $(SRC_ARCH)/armVIC.c main_fbw.c main_ap.c main.c
ap.srcs += commands.c
@@ -233,11 +233,11 @@ ap.CFLAGS += -DRADIO_CONTROL -DRADIO_CONTROL_AUTO1
ap.srcs += radio_control.c $(SRC_ARCH)/ppm_hw.c
ap.CFLAGS += -DDOWNLINK -DUSE_UART1 -DDOWNLINK_TRANSPORT=XBeeTransport -DXBEE_UART=Uart1 -DDATALINK=XBEE -DUART1_BAUD=B57600
-ap.srcs += downlink.c $(SRC_ARCH)/uart_hw.c datalink.c xbee.c
+ap.srcs += downlink.c $(SRC_ARCH)/mcu_periph/uart_arch.c datalink.c xbee.c
#TRANSPARENT
#ap.CFLAGS += -DDOWNLINK -DUSE_UART1 -DDOWNLINK_TRANSPORT=PprzTransport -DDOWNLINK_FBW_DEVICE=Uart1 -DDOWNLINK_AP_DEVICE=Uart1 -DPPRZ_UART=Uart1 -DDATALINK=PPRZ -DUART1_BAUD=B9600
-#ap.srcs += downlink.c $(SRC_ARCH)/uart_hw.c datalink.c pprz_transport.c
+#ap.srcs += downlink.c $(SRC_ARCH)/mcu_periph/uart_arch.c datalink.c pprz_transport.c
ap.CFLAGS += -DINTER_MCU
ap.srcs += inter_mcu.c
@@ -269,7 +269,7 @@ ap.srcs += subsystems/navigation/snav.c
# include $(PAPARAZZI_SRC)/conf/autopilot/sitl.makefile
sim.ARCHDIR = $(ARCHI)
sim.srcs = latlong.c radio_control.c downlink.c commands.c gps.c inter_mcu.c infrared.c fw_h_ctl_a.c fw_v_ctl.c subsystems/nav.c estimator.c sys_time.c main_fbw.c main_ap.c datalink.c $(SRC_ARCH)/ppm_hw.c $(SRC_ARCH)/sim_gps.c $(SRC_ARCH)/sim_ir.c $(SRC_ARCH)/sim_ap.c $(SRC_ARCH)/ivy_transport.c $(SRC_ARCH)/sim_adc_generic.c $(SRC_ARCH)/led_hw.c
-sim.CFLAGS += -DSITL -DAP -DFBW -DRADIO_CONTROL -DINTER_MCU -DDOWNLINK -DDOWNLINK_TRANSPORT=IvyTransport -DUSE_INFRARED -DNAV -DLED -DWIND_INFO
+sim.CFLAGS += -DSITL -DAP -DFBW -DRADIO_CONTROL -DINTER_MCU -DDOWNLINK -DDOWNLINK_TRANSPORT=IvyTransport -DUSE_INFRARED -DNAV -DUSE_LED -DWIND_INFO
sim.CFLAGS += -DBOARD_CONFIG=\"tiny.h\" -DAGR_CLIMB -DLOITER_TRIM -DALT_KALMAN
sim.srcs += subsystems/navigation/nav_line.c subsystems/navigation/nav_survey_rectangle.c
diff --git a/conf/airframes/ENAC/fixed-wing/firestorm.xml b/conf/airframes/ENAC/fixed-wing/firestorm.xml
index fa11fa8574..124a14b520 100644
--- a/conf/airframes/ENAC/fixed-wing/firestorm.xml
+++ b/conf/airframes/ENAC/fixed-wing/firestorm.xml
@@ -213,7 +213,7 @@ include $(PAPARAZZI_SRC)/conf/autopilot/tiny.makefile
FLASH_MODE=IAP
-ap.CFLAGS += -DFBW -DAP -DBOARD_CONFIG=$(CONFIG) -DLED -DTIME_LED=1
+ap.CFLAGS += -DFBW -DAP -DBOARD_CONFIG=$(CONFIG) -DUSE_LED -DTIME_LED=1
ap.srcs = sys_time.c $(SRC_ARCH)/sys_time_hw.c $(SRC_ARCH)/armVIC.c main_fbw.c main_ap.c main.c
ap.srcs += commands.c
@@ -225,7 +225,7 @@ ap.CFLAGS += -DRADIO_CONTROL
ap.srcs += radio_control.c $(SRC_ARCH)/ppm_hw.c
ap.CFLAGS += -DDOWNLINK -DUSE_UART0 -DDOWNLINK_TRANSPORT=PprzTransport -DDOWNLINK_FBW_DEVICE=Uart0 -DDOWNLINK_AP_DEVICE=Uart0 -DPPRZ_UART=Uart0 -DDATALINK=PPRZ -DUART0_BAUD=B9600
-ap.srcs += downlink.c $(SRC_ARCH)/uart_hw.c datalink.c pprz_transport.c
+ap.srcs += downlink.c $(SRC_ARCH)/mcu_periph/uart_arch.c datalink.c pprz_transport.c
ap.CFLAGS += -DINTER_MCU
ap.srcs += inter_mcu.c
@@ -262,7 +262,7 @@ ap.CFLAGS += -DUSE_MODULES
# Config for SITL simulation
#include $(PAPARAZZI_SRC)/conf/autopilot/sitl.makefile
sim.ARCHDIR = $(ARCHI)
-sim.CFLAGS += -DSITL -DAP -DFBW -DRADIO_CONTROL -DINTER_MCU -DDOWNLINK -DDOWNLINK_TRANSPORT=IvyTransport -DUSE_INFRARED -DNAV -DLED -DWIND_INFO
+sim.CFLAGS += -DSITL -DAP -DFBW -DRADIO_CONTROL -DINTER_MCU -DDOWNLINK -DDOWNLINK_TRANSPORT=IvyTransport -DUSE_INFRARED -DNAV -DUSE_LED -DWIND_INFO
sim.srcs = latlong.c radio_control.c downlink.c commands.c gps.c inter_mcu.c infrared.c fw_h_ctl.c fw_v_ctl.c subsystems/nav.c estimator.c sys_time.c main_fbw.c main_ap.c datalink.c $(SRC_ARCH)/ppm_hw.c $(SRC_ARCH)/sim_gps.c $(SRC_ARCH)/sim_ir.c $(SRC_ARCH)/sim_ap.c $(SRC_ARCH)/ivy_transport.c $(SRC_ARCH)/sim_adc_generic.c $(SRC_ARCH)/led_hw.c
sim.CFLAGS += -DBOARD_CONFIG=\"tiny.h\" -DAGR_CLIMB -DLOITER_TRIM -DALT_KALMAN
diff --git a/conf/airframes/ENAC/fixed-wing/funjet1.xml b/conf/airframes/ENAC/fixed-wing/funjet1.xml
index 80580c7832..47d29560c7 100644
--- a/conf/airframes/ENAC/fixed-wing/funjet1.xml
+++ b/conf/airframes/ENAC/fixed-wing/funjet1.xml
@@ -232,7 +232,7 @@ include $(PAPARAZZI_SRC)/conf/autopilot/tiny.makefile
FLASH_MODE=IAP
-ap.CFLAGS += -DFBW -DAP -DBOARD_CONFIG=$(CONFIG) -DLED -DTIME_LED=1
+ap.CFLAGS += -DFBW -DAP -DBOARD_CONFIG=$(CONFIG) -DUSE_LED -DTIME_LED=1
ap.srcs = sys_time.c $(SRC_ARCH)/sys_time_hw.c $(SRC_ARCH)/armVIC.c main_fbw.c main_ap.c main.c
ap.srcs += commands.c
@@ -244,11 +244,11 @@ ap.CFLAGS += -DRADIO_CONTROL
ap.srcs += radio_control.c $(SRC_ARCH)/ppm_hw.c
#ap.CFLAGS += -DDOWNLINK -DUSE_UART1 -DDOWNLINK_TRANSPORT=XBeeTransport -DXBEE_UART=Uart1 -DDATALINK=XBEE -DUART1_BAUD=B9600
-#ap.srcs += downlink.c $(SRC_ARCH)/uart_hw.c datalink.c xbee.c
+#ap.srcs += downlink.c $(SRC_ARCH)/mcu_periph/uart_arch.c datalink.c xbee.c
#TRANSPARENT
ap.CFLAGS += -DDOWNLINK -DUSE_UART1 -DDOWNLINK_TRANSPORT=PprzTransport -DDOWNLINK_FBW_DEVICE=Uart1 -DDOWNLINK_AP_DEVICE=Uart1 -DPPRZ_UART=Uart1 -DDATALINK=PPRZ -DUART1_BAUD=B9600
-ap.srcs += downlink.c $(SRC_ARCH)/uart_hw.c datalink.c pprz_transport.c
+ap.srcs += downlink.c $(SRC_ARCH)/mcu_periph/uart_arch.c datalink.c pprz_transport.c
ap.CFLAGS += -DINTER_MCU
@@ -298,7 +298,7 @@ ap.CFLAGS += -DUSE_I2C0 -DI2C0_SCLL=150 -DI2C0_SCLH=150
# Config for SITL simulation
#include $(PAPARAZZI_SRC)/conf/autopilot/sitl.makefile
sim.ARCHDIR = $(ARCHI)
-sim.CFLAGS += -DSITL -DAP -DFBW -DRADIO_CONTROL -DINTER_MCU -DDOWNLINK -DDOWNLINK_TRANSPORT=IvyTransport -DUSE_INFRARED -DNAV -DLED -DWIND_INFO
+sim.CFLAGS += -DSITL -DAP -DFBW -DRADIO_CONTROL -DINTER_MCU -DDOWNLINK -DDOWNLINK_TRANSPORT=IvyTransport -DUSE_INFRARED -DNAV -DUSE_LED -DWIND_INFO
sim.srcs = latlong.c radio_control.c downlink.c commands.c gps.c inter_mcu.c infrared.c fw_h_ctl.c fw_v_ctl.c subsystems/nav.c estimator.c sys_time.c main_fbw.c main_ap.c datalink.c $(SRC_ARCH)/ppm_hw.c $(SRC_ARCH)/sim_gps.c $(SRC_ARCH)/sim_ir.c $(SRC_ARCH)/sim_ap.c $(SRC_ARCH)/ivy_transport.c $(SRC_ARCH)/sim_adc_generic.c $(SRC_ARCH)/led_hw.c
sim.CFLAGS += -DBOARD_CONFIG=\"tiny.h\" -DAGR_CLIMB -DLOITER_TRIM -DALT_KALMAN
@@ -317,8 +317,8 @@ sim.srcs += subsystems/navigation/nav_line.c subsystems/navigation/nav_survey_re
# a test program to setup actuators
setup_actuators.ARCHDIR = $(ARCHI)
-setup_actuators.CFLAGS += -DFBW -DBOARD_CONFIG=\"tiny.h\" -DLED -DTIME_LED=1 -DACTUATORS=\"servos_4015_hw.h\" -DSERVOS_4015 -DUSE_UART1 -DUART1_BAUD=B9600 -DDATALINK=PPRZ -DPPRZ_UART=Uart1
-setup_actuators.srcs += sys_time.c $(SRC_ARCH)/sys_time_hw.c $(SRC_ARCH)/armVIC.c pprz_transport.c setup_actuators.c $(SRC_ARCH)/uart_hw.c $(SRC_ARCH)/servos_4015_hw.c main.c
+setup_actuators.CFLAGS += -DFBW -DBOARD_CONFIG=\"tiny.h\" -DUSE_LED -DTIME_LED=1 -DACTUATORS=\"servos_4015_hw.h\" -DSERVOS_4015 -DUSE_UART1 -DUART1_BAUD=B9600 -DDATALINK=PPRZ -DPPRZ_UART=Uart1
+setup_actuators.srcs += sys_time.c $(SRC_ARCH)/sys_time_hw.c $(SRC_ARCH)/armVIC.c pprz_transport.c setup_actuators.c $(SRC_ARCH)/mcu_periph/uart_arch.c $(SRC_ARCH)/servos_4015_hw.c main.c
diff --git a/conf/airframes/ENAC/fixed-wing/merlin.xml b/conf/airframes/ENAC/fixed-wing/merlin.xml
index 827fb19b8f..2ab3b975ac 100644
--- a/conf/airframes/ENAC/fixed-wing/merlin.xml
+++ b/conf/airframes/ENAC/fixed-wing/merlin.xml
@@ -19,7 +19,7 @@
-
+
@@ -29,6 +29,10 @@
+
+
+
+
diff --git a/conf/airframes/ENAC/fixed-wing/minimag1.xml b/conf/airframes/ENAC/fixed-wing/minimag1.xml
index 959e0eabdc..153f9e63bf 100644
--- a/conf/airframes/ENAC/fixed-wing/minimag1.xml
+++ b/conf/airframes/ENAC/fixed-wing/minimag1.xml
@@ -175,7 +175,7 @@ include $(PAPARAZZI_SRC)/conf/autopilot/tiny.makefile
FLASH_MODE=IAP
-ap.CFLAGS += -DFBW -DAP -DBOARD_CONFIG=\"tiny_0_99.h\" -DLED -DTIME_LED=1
+ap.CFLAGS += -DFBW -DAP -DBOARD_CONFIG=\"tiny_0_99.h\" -DUSE_LED -DTIME_LED=1
ap.srcs = sys_time.c $(SRC_ARCH)/sys_time_hw.c $(SRC_ARCH)/armVIC.c main_fbw.c main_ap.c main.c
ap.srcs += commands.c
@@ -187,10 +187,10 @@ ap.CFLAGS += -DRADIO_CONTROL
ap.srcs += radio_control.c $(SRC_ARCH)/ppm_hw.c
ap.CFLAGS += -DDOWNLINK -DUSE_UART0 -DDOWNLINK_TRANSPORT=XBeeTransport -DDOWNLINK_FBW_DEVICE=Uart0 -DDOWNLINK_AP_DEVICE=Uart0 -DXBEE_UART=Uart0 -DDATALINK=XBEE -DUART0_BAUD=B9600
-ap.srcs += downlink.c $(SRC_ARCH)/uart_hw.c datalink.c xbee.c
+ap.srcs += downlink.c $(SRC_ARCH)/mcu_periph/uart_arch.c datalink.c xbee.c
#TRANSPARENT ap.CFLAGS += -DDOWNLINK -DUSE_UART0 -DDOWNLINK_TRANSPORT=PprzTransport -DDOWNLINK_FBW_DEVICE=Uart0 -DDOWNLINK_AP_DEVICE=Uart0 -DPPRZ_UART=Uart0 -DDATALINK=PPRZ -DUART0_BAUD=B9600
-#TRANSPARENT ap.srcs += downlink.c $(SRC_ARCH)/uart_hw.c datalink.c pprz_transport.c
+#TRANSPARENT ap.srcs += downlink.c $(SRC_ARCH)/mcu_periph/uart_arch.c datalink.c pprz_transport.c
ap.CFLAGS += -DINTER_MCU
diff --git a/conf/airframes/ENAC/fixed-wing/slayer2.xml b/conf/airframes/ENAC/fixed-wing/slayer2.xml
index 4a74c62cd5..5be6b30153 100644
--- a/conf/airframes/ENAC/fixed-wing/slayer2.xml
+++ b/conf/airframes/ENAC/fixed-wing/slayer2.xml
@@ -201,7 +201,7 @@ include $(PAPARAZZI_SRC)/conf/autopilot/tiny.makefile
FLASH_MODE=IAP
-ap.CFLAGS += -DFBW -DAP -DBOARD_CONFIG=\"tiny_0_99.h\" -DLED -DTIME_LED=1
+ap.CFLAGS += -DFBW -DAP -DBOARD_CONFIG=\"tiny_0_99.h\" -DUSE_LED -DTIME_LED=1
ap.srcs = sys_time.c $(SRC_ARCH)/sys_time_hw.c $(SRC_ARCH)/armVIC.c main_fbw.c main_ap.c main.c
ap.srcs += commands.c
@@ -213,7 +213,7 @@ ap.CFLAGS += -DRADIO_CONTROL
ap.srcs += radio_control.c $(SRC_ARCH)/ppm_hw.c
#ap.CFLAGS += -DDOWNLINK -DUSE_UART0 -DDOWNLINK_TRANSPORT=XBeeTransport -DDOWNLINK_FBW_DEVICE=Uart0 -DDOWNLINK_AP_DEVICE=Uart0 -DXBEE_UART=Uart0 -DDATALINK=XBEE -DUART0_BAUD=B9600
-#ap.srcs += downlink.c $(SRC_ARCH)/uart_hw.c datalink.c xbee.c
+#ap.srcs += downlink.c $(SRC_ARCH)/mcu_periph/uart_arch.c datalink.c xbee.c
# AEROCOMM
# ap.CFLAGS += -DDOWNLINK -DUSE_UART0 -DDOWNLINK_TRANSPORT=PprzTransport -DDOWNLINK_FBW_DEVICE=Uart0 -DDOWNLINK_AP_DEVICE=Uart0 -DPPRZ_UART=Uart0 -DDATALINK=PPRZ -DUART0_BAUD=B57600
@@ -221,7 +221,7 @@ ap.srcs += radio_control.c $(SRC_ARCH)/ppm_hw.c
# RADIOTRONIX
ap.CFLAGS += -DDOWNLINK -DUSE_UART0 -DDOWNLINK_TRANSPORT=PprzTransport -DDOWNLINK_FBW_DEVICE=Uart0 -DDOWNLINK_AP_DEVICE=Uart0 -DPPRZ_UART=Uart0 -DDATALINK=PPRZ -DUART0_BAUD=B9600
-ap.srcs += downlink.c $(SRC_ARCH)/uart_hw.c datalink.c pprz_transport.c
+ap.srcs += downlink.c $(SRC_ARCH)/mcu_periph/uart_arch.c datalink.c pprz_transport.c
ap.CFLAGS += -DINTER_MCU
@@ -241,7 +241,7 @@ ap.CFLAGS += -DNAV -DAGR_CLIMB -DLOITER_TRIM
ap.srcs += subsystems/nav.c fw_h_ctl.c fw_v_ctl.c subsystems/navigation/nav_survey_rectangle.c subsystems/navigation/traffic_info.c subsystems/navigation/nav_line.c
# Camera power switch on ADC_7 pin
-ap.CFLAGS += -DLED_3_BANK=0 -DLED_3_PIN=10 -DPOWER_SWITCH_LED=3
+ap.CFLAGS += -DUSE_LED_3_BANK=0 -DUSE_LED_3_PIN=10 -DPOWER_SWITCH_LED=3
ap.CFLAGS += -DUSE_GYRO -DADXRS150
@@ -271,7 +271,7 @@ ap.CFLAGS += -D BARO_MS5534A_W1=0xAC20 -D BARO_MS5534A_W2=0x87D9 -D BARO_MS5534A
# Config for SITL simulation
#include $(PAPARAZZI_SRC)/conf/autopilot/sitl.makefile
sim.ARCHDIR = $(ARCHI)
-sim.CFLAGS += -DSITL -DAP -DFBW -DRADIO_CONTROL -DINTER_MCU -DDOWNLINK -DDOWNLINK_TRANSPORT=IvyTransport -DUSE_INFRARED -DNAV -DLED -DWIND_INFO
+sim.CFLAGS += -DSITL -DAP -DFBW -DRADIO_CONTROL -DINTER_MCU -DDOWNLINK -DDOWNLINK_TRANSPORT=IvyTransport -DUSE_INFRARED -DNAV -DUSE_LED -DWIND_INFO
sim.srcs = latlong.c radio_control.c downlink.c commands.c gps.c inter_mcu.c infrared.c fw_v_ctl.c subsystems/nav.c estimator.c sys_time.c main_fbw.c main_ap.c datalink.c $(SRC_ARCH)/ppm_hw.c $(SRC_ARCH)/sim_gps.c $(SRC_ARCH)/sim_ir.c $(SRC_ARCH)/sim_ap.c $(SRC_ARCH)/ivy_transport.c $(SRC_ARCH)/sim_adc_generic.c $(SRC_ARCH)/led_hw.c
sim.CFLAGS += -DBOARD_CONFIG=\"tiny.h\" -DAGR_CLIMB -DLOITER_TRIM -DALT_KALMAN -DUSE_BARO_MS5534A
diff --git a/conf/airframes/ENAC/fixed-wing/soarzi.xml b/conf/airframes/ENAC/fixed-wing/soarzi.xml
index 03f799119b..e0cf78c35f 100644
--- a/conf/airframes/ENAC/fixed-wing/soarzi.xml
+++ b/conf/airframes/ENAC/fixed-wing/soarzi.xml
@@ -179,7 +179,7 @@ include $(PAPARAZZI_SRC)/conf/autopilot/tiny.makefile
FLASH_MODE=IAP
-ap.CFLAGS += -DFBW -DAP -DBOARD_CONFIG=\"tiny_0_99.h\" -DLED -DTIME_LED=1
+ap.CFLAGS += -DFBW -DAP -DBOARD_CONFIG=\"tiny_0_99.h\" -DUSE_LED -DTIME_LED=1
ap.srcs = sys_time.c $(SRC_ARCH)/sys_time_hw.c $(SRC_ARCH)/armVIC.c main_fbw.c main_ap.c main.c
ap.srcs += commands.c
@@ -191,10 +191,10 @@ ap.CFLAGS += -DRADIO_CONTROL
ap.srcs += radio_control.c $(SRC_ARCH)/ppm_hw.c
#XBEE ap.CFLAGS += -DDOWNLINK -DUSE_UART0 -DDOWNLINK_TRANSPORT=XBeeTransport -DDOWNLINK_FBW_DEVICE=Uart0 -DDOWNLINK_AP_DEVICE=Uart0 -DXBEE_UART=Uart0 -DDATALINK=XBEE -DUART0_BAUD=B9600
-#XBEE ap.srcs += downlink.c $(SRC_ARCH)/uart_hw.c datalink.c xbee.c
+#XBEE ap.srcs += downlink.c $(SRC_ARCH)/mcu_periph/uart_arch.c datalink.c xbee.c
ap.CFLAGS += -DDOWNLINK -DUSE_UART0 -DDOWNLINK_TRANSPORT=PprzTransport -DDOWNLINK_FBW_DEVICE=Uart0 -DDOWNLINK_AP_DEVICE=Uart0 -DPPRZ_UART=Uart0 -DDATALINK=PPRZ -DUART0_BAUD=B9600
-ap.srcs += downlink.c $(SRC_ARCH)/uart_hw.c datalink.c pprz_transport.c
+ap.srcs += downlink.c $(SRC_ARCH)/mcu_periph/uart_arch.c datalink.c pprz_transport.c
ap.CFLAGS += -DINTER_MCU
diff --git a/conf/airframes/ENAC/fixed-wing/solarstorm.xml b/conf/airframes/ENAC/fixed-wing/solarstorm.xml
index 7c1cf6a949..ec953714e9 100644
--- a/conf/airframes/ENAC/fixed-wing/solarstorm.xml
+++ b/conf/airframes/ENAC/fixed-wing/solarstorm.xml
@@ -206,7 +206,7 @@ include $(PAPARAZZI_SRC)/conf/autopilot/tiny.makefile
FLASH_MODE=IAP
-ap.CFLAGS += -DFBW -DAP -DBOARD_CONFIG=$(CONFIG) -DLED -DTIME_LED=1
+ap.CFLAGS += -DFBW -DAP -DBOARD_CONFIG=$(CONFIG) -DUSE_LED -DTIME_LED=1
ap.srcs = sys_time.c $(SRC_ARCH)/sys_time_hw.c $(SRC_ARCH)/armVIC.c main_fbw.c main_ap.c main.c
ap.srcs += commands.c
@@ -218,7 +218,7 @@ ap.CFLAGS += -DRADIO_CONTROL
ap.srcs += radio_control.c $(SRC_ARCH)/ppm_hw.c
ap.CFLAGS += -DDOWNLINK -DUSE_UART0 -DDOWNLINK_TRANSPORT=PprzTransport -DDOWNLINK_FBW_DEVICE=Uart0 -DDOWNLINK_AP_DEVICE=Uart0 -DPPRZ_UART=Uart0 -DDATALINK=PPRZ -DUART0_BAUD=B9600
-ap.srcs += downlink.c $(SRC_ARCH)/uart_hw.c datalink.c pprz_transport.c
+ap.srcs += downlink.c $(SRC_ARCH)/mcu_periph/uart_arch.c datalink.c pprz_transport.c
ap.CFLAGS += -DINTER_MCU
ap.srcs += inter_mcu.c
@@ -253,7 +253,7 @@ ap.CFLAGS += -DUSE_MODULES
# Config for SITL simulation
#include $(PAPARAZZI_SRC)/conf/autopilot/sitl.makefile
sim.ARCHDIR = $(ARCHI)
-sim.CFLAGS += -DSITL -DAP -DFBW -DRADIO_CONTROL -DINTER_MCU -DDOWNLINK -DDOWNLINK_TRANSPORT=IvyTransport -DUSE_INFRARED -DNAV -DLED -DWIND_INFO
+sim.CFLAGS += -DSITL -DAP -DFBW -DRADIO_CONTROL -DINTER_MCU -DDOWNLINK -DDOWNLINK_TRANSPORT=IvyTransport -DUSE_INFRARED -DNAV -DUSE_LED -DWIND_INFO
sim.srcs = latlong.c radio_control.c downlink.c commands.c gps.c inter_mcu.c infrared.c fw_h_ctl_a.c fw_v_ctl.c subsystems/nav.c estimator.c sys_time.c main_fbw.c main_ap.c datalink.c $(SRC_ARCH)/ppm_hw.c $(SRC_ARCH)/sim_gps.c $(SRC_ARCH)/sim_ir.c $(SRC_ARCH)/sim_ap.c $(SRC_ARCH)/ivy_transport.c $(SRC_ARCH)/sim_adc_generic.c $(SRC_ARCH)/led_hw.c
sim.CFLAGS += -DBOARD_CONFIG=\"tiny.h\" -DAGR_CLIMB -DLOITER_TRIM -DALT_KALMAN
diff --git a/conf/airframes/ENAC/fixed-wing/spocII.xml b/conf/airframes/ENAC/fixed-wing/spocII.xml
index a0c71c742f..675df4be66 100644
--- a/conf/airframes/ENAC/fixed-wing/spocII.xml
+++ b/conf/airframes/ENAC/fixed-wing/spocII.xml
@@ -212,7 +212,7 @@ include $(PAPARAZZI_SRC)/conf/autopilot/tiny.makefile
FLASH_MODE=IAP
-ap.CFLAGS += -DFBW -DAP -DBOARD_CONFIG=$(CONFIG) -DLED -DTIME_LED=1
+ap.CFLAGS += -DFBW -DAP -DBOARD_CONFIG=$(CONFIG) -DUSE_LED -DTIME_LED=1
ap.srcs = sys_time.c $(SRC_ARCH)/sys_time_hw.c $(SRC_ARCH)/armVIC.c main_fbw.c main_ap.c main.c
ap.srcs += commands.c
@@ -225,7 +225,7 @@ ap.srcs += radio_control.c $(SRC_ARCH)/ppm_hw.c
#TRANSPARENT
ap.CFLAGS += -DDOWNLINK -DUSE_UART1 -DDOWNLINK_TRANSPORT=PprzTransport -DDOWNLINK_FBW_DEVICE=Uart1 -DDOWNLINK_AP_DEVICE=Uart1 -DPPRZ_UART=Uart1 -DDATALINK=PPRZ -DUART1_BAUD=B57600
-ap.srcs += downlink.c $(SRC_ARCH)/uart_hw.c datalink.c pprz_transport.c
+ap.srcs += downlink.c $(SRC_ARCH)/mcu_periph/uart_arch.c datalink.c pprz_transport.c
ap.CFLAGS += -DINTER_MCU
ap.srcs += inter_mcu.c
@@ -253,7 +253,7 @@ ap.CFLAGS += -DUSE_ADC_3 -DADC_CHANNEL_CURRENT=ADC_3
# Config for SITL simulation
#include $(PAPARAZZI_SRC)/conf/autopilot/sitl.makefile
sim.ARCHDIR = $(ARCHI)
-sim.CFLAGS += -DSITL -DAP -DFBW -DRADIO_CONTROL -DINTER_MCU -DDOWNLINK -DDOWNLINK_TRANSPORT=IvyTransport -DUSE_INFRARED -DNAV -DLED -DWIND_INFO
+sim.CFLAGS += -DSITL -DAP -DFBW -DRADIO_CONTROL -DINTER_MCU -DDOWNLINK -DDOWNLINK_TRANSPORT=IvyTransport -DUSE_INFRARED -DNAV -DUSE_LED -DWIND_INFO
sim.srcs = latlong.c radio_control.c downlink.c commands.c gps.c inter_mcu.c infrared.c fw_h_ctl.c fw_v_ctl.c subsystems/nav.c estimator.c sys_time.c main_fbw.c main_ap.c datalink.c $(SRC_ARCH)/ppm_hw.c $(SRC_ARCH)/sim_gps.c $(SRC_ARCH)/sim_ir.c $(SRC_ARCH)/sim_ap.c $(SRC_ARCH)/ivy_transport.c $(SRC_ARCH)/sim_adc_generic.c $(SRC_ARCH)/led_hw.c
sim.CFLAGS += -DBOARD_CONFIG=\"tiny.h\" -DAGR_CLIMB -DLOITER_TRIM -DALT_KALMAN
@@ -274,8 +274,8 @@ jsbsim.srcs += $(SIMDIR)/sim_ac_fw.c
# a test program to setup actuators
setup_actuators.ARCHDIR = $(ARCHI)
-setup_actuators.CFLAGS += -DFBW -DBOARD_CONFIG=\"tiny.h\" -DLED -DTIME_LED=1 -DACTUATORS=\"servos_4015_hw.h\" -DSERVOS_4015 -DUSE_UART1 -DUART1_BAUD=B9600 -DDATALINK=PPRZ -DPPRZ_UART=Uart1
-setup_actuators.srcs += sys_time.c $(SRC_ARCH)/sys_time_hw.c $(SRC_ARCH)/armVIC.c pprz_transport.c setup_actuators.c $(SRC_ARCH)/uart_hw.c $(SRC_ARCH)/servos_4015_hw.c main.c
+setup_actuators.CFLAGS += -DFBW -DBOARD_CONFIG=\"tiny.h\" -DUSE_LED -DTIME_LED=1 -DACTUATORS=\"servos_4015_hw.h\" -DSERVOS_4015 -DUSE_UART1 -DUART1_BAUD=B9600 -DDATALINK=PPRZ -DPPRZ_UART=Uart1
+setup_actuators.srcs += sys_time.c $(SRC_ARCH)/sys_time_hw.c $(SRC_ARCH)/armVIC.c pprz_transport.c setup_actuators.c $(SRC_ARCH)/mcu_periph/uart_arch.c $(SRC_ARCH)/servos_4015_hw.c main.c
diff --git a/conf/airframes/ENAC/fixed-wing/twinjet2.xml b/conf/airframes/ENAC/fixed-wing/twinjet2.xml
index 6197ff36a6..c118819f03 100644
--- a/conf/airframes/ENAC/fixed-wing/twinjet2.xml
+++ b/conf/airframes/ENAC/fixed-wing/twinjet2.xml
@@ -225,7 +225,7 @@ include $(PAPARAZZI_SRC)/conf/autopilot/tiny.makefile
FLASH_MODE=IAP
-ap.CFLAGS += -DFBW -DAP -DBOARD_CONFIG=$(CONFIG) -DLED -DTIME_LED=1
+ap.CFLAGS += -DFBW -DAP -DBOARD_CONFIG=$(CONFIG) -DUSE_LED -DTIME_LED=1
ap.srcs = sys_time.c $(SRC_ARCH)/sys_time_hw.c $(SRC_ARCH)/armVIC.c main_fbw.c main_ap.c main.c
ap.CFLAGS += -DINTER_MCU
@@ -242,11 +242,11 @@ ap.srcs += radio_control.c $(SRC_ARCH)/ppm_hw.c
########## Modems
ap.CFLAGS += -DDOWNLINK -DUSE_UART1 -DDOWNLINK_TRANSPORT=XBeeTransport -DXBEE_UART=Uart1 -DDATALINK=XBEE -DUART1_BAUD=B57600
-ap.srcs += downlink.c $(SRC_ARCH)/uart_hw.c datalink.c xbee.c
+ap.srcs += downlink.c $(SRC_ARCH)/mcu_periph/uart_arch.c datalink.c xbee.c
#TRANSPARENT
#ap.CFLAGS += -DDOWNLINK -DUSE_UART1 -DDOWNLINK_TRANSPORT=PprzTransport -DDOWNLINK_FBW_DEVICE=Uart1 -DDOWNLINK_AP_DEVICE=Uart1 -DPPRZ_UART=Uart1 -DDATALINK=PPRZ -DUART1_BAUD=B9600
-#ap.srcs += downlink.c $(SRC_ARCH)/uart_hw.c datalink.c pprz_transport.c
+#ap.srcs += downlink.c $(SRC_ARCH)/mcu_periph/uart_arch.c datalink.c pprz_transport.c
########## ADC
ap.CFLAGS += -DADC -DUSE_ADC_0 -DUSE_ADC_1 -DUSE_ADC_2 -DUSE_ADC_3
@@ -298,7 +298,7 @@ ap.CFLAGS += -DUSE_MODULES
#include $(PAPARAZZI_SRC)/conf/autopilot/sitl.makefile
sim.ARCHDIR = $(ARCHI)
-sim.CFLAGS += -DSITL -DAP -DFBW -DRADIO_CONTROL -DINTER_MCU -DDOWNLINK -DDOWNLINK_TRANSPORT=IvyTransport -DUSE_INFRARED -DNAV -DLED -DWIND_INFO
+sim.CFLAGS += -DSITL -DAP -DFBW -DRADIO_CONTROL -DINTER_MCU -DDOWNLINK -DDOWNLINK_TRANSPORT=IvyTransport -DUSE_INFRARED -DNAV -DUSE_LED -DWIND_INFO
sim.srcs = latlong.c radio_control.c downlink.c commands.c gps.c inter_mcu.c infrared.c fw_h_ctl_a.c fw_v_ctl_n.c subsystems/nav.c estimator.c sys_time.c main_fbw.c main_ap.c datalink.c $(SRC_ARCH)/ppm_hw.c $(SRC_ARCH)/sim_gps.c $(SRC_ARCH)/sim_ir.c $(SRC_ARCH)/sim_ap.c $(SRC_ARCH)/ivy_transport.c $(SRC_ARCH)/sim_adc_generic.c $(SRC_ARCH)/led_hw.c
sim.CFLAGS += -DBOARD_CONFIG=\"tiny.h\" -DAGR_CLIMB -DPITCH_TRIM -DALT_KALMAN
diff --git a/conf/airframes/PPZUAV/fixed-wing/kalscott_easystar.xml b/conf/airframes/PPZUAV/fixed-wing/kalscott_easystar.xml
index 4cf13bf2b8..2fddd20c7e 100644
--- a/conf/airframes/PPZUAV/fixed-wing/kalscott_easystar.xml
+++ b/conf/airframes/PPZUAV/fixed-wing/kalscott_easystar.xml
@@ -156,7 +156,7 @@ include $(PAPARAZZI_SRC)/conf/autopilot/tiny.makefile
FLASH_MODE=IAP
-ap.CFLAGS += -DFBW -DAP -DBOARD_CONFIG=$(CONFIG) -DLED -DTIME_LED=1 -DUSE_MODULES
+ap.CFLAGS += -DFBW -DAP -DBOARD_CONFIG=$(CONFIG) -DUSE_LED -DTIME_LED=1 -DUSE_MODULES
ap.srcs = sys_time.c $(SRC_ARCH)/sys_time_hw.c $(SRC_ARCH)/armVIC.c main_fbw.c main_ap.c main.c
ap.srcs += commands.c
@@ -171,7 +171,7 @@ ap.srcs += radio_control.c $(SRC_ARCH)/ppm_hw.c
# Telemetry configuration
ap.CFLAGS += -DDOWNLINK -DUSE_UART1 -DDOWNLINK_TRANSPORT=PprzTransport -DDOWNLINK_FBW_DEVICE=Uart1 -DDOWNLINK_AP_DEVICE=Uart1 -DPPRZ_UART=Uart1 -DDATALINK=PPRZ -DUART1_BAUD=B57600
-ap.srcs += downlink.c $(SRC_ARCH)/uart_hw.c datalink.c pprz_transport.c
+ap.srcs += downlink.c $(SRC_ARCH)/mcu_periph/uart_arch.c datalink.c pprz_transport.c
ap.CFLAGS += -DINTER_MCU
ap.srcs += inter_mcu.c
diff --git a/conf/airframes/Paul/minimag1.xml b/conf/airframes/Paul/minimag1.xml
index f16f2aca5f..cfe17c9d28 100644
--- a/conf/airframes/Paul/minimag1.xml
+++ b/conf/airframes/Paul/minimag1.xml
@@ -176,7 +176,7 @@ include $(PAPARAZZI_SRC)/conf/autopilot/tiny.makefile
FLASH_MODE=IAP
-ap.CFLAGS += -DFBW -DAP -DBOARD_CONFIG=\"tiny_2_1_1.h\" -DLED -DTIME_LED=1
+ap.CFLAGS += -DFBW -DAP -DBOARD_CONFIG=\"tiny_2_1_1.h\" -DUSE_LED -DTIME_LED=1
ap.srcs = sys_time.c $(SRC_ARCH)/sys_time_hw.c $(SRC_ARCH)/armVIC.c main_fbw.c main_ap.c main.c
ap.srcs += commands.c
@@ -188,7 +188,7 @@ ap.CFLAGS += -DRADIO_CONTROL -DRADIO_CONTROL_TYPE=RC_FUTABA
ap.srcs += radio_control.c $(SRC_ARCH)/ppm_hw.c
ap.CFLAGS += -DDOWNLINK -DUSE_UART1 -DDOWNLINK_TRANSPORT=PprzTransport -DDOWNLINK_FBW_DEVICE=Uart1 -DDOWNLINK_AP_DEVICE=Uart1 -DPPRZ_UART=Uart1 -DDATALINK=PPRZ -DUART1_BAUD=B57600
-ap.srcs += downlink.c $(SRC_ARCH)/uart_hw.c datalink.c pprz_transport.c
+ap.srcs += downlink.c $(SRC_ARCH)/mcu_periph/uart_arch.c datalink.c pprz_transport.c
ap.CFLAGS += -DINTER_MCU
ap.srcs += inter_mcu.c
diff --git a/conf/airframes/Poine/antenna.xml b/conf/airframes/Poine/antenna.xml
index 19a339e347..98d24b8294 100644
--- a/conf/airframes/Poine/antenna.xml
+++ b/conf/airframes/Poine/antenna.xml
@@ -23,10 +23,10 @@ ant.LOCK_FUSE = ff
ant.CFLAGS += -DBOARD_CONFIG=\"antenna.h\"
ant.srcs = main_antenna.c sys_time.c $(SRC_ARCH)/sys_time_hw.c
-ant.CFLAGS += -DLED
+ant.CFLAGS += -DUSE_LED
ant.CFLAGS += -DUSE_UART0 -DUART0_BAUD=B38400
-ant.srcs += $(SRC_ARCH)/uart_hw.c
+ant.srcs += $(SRC_ARCH)/mcu_periph/uart_arch.c
ant.CFLAGS += -DDOWNLINK -DDOWNLINK_TRANSPORT=PprzTransport -DDOWNLINK_DEVICE=Uart0
ant.srcs += downlink.c pprz_transport.c
diff --git a/conf/airframes/Poine/autoplato.xml b/conf/airframes/Poine/autoplato.xml
index b509daabbf..48a5844d0e 100644
--- a/conf/airframes/Poine/autoplato.xml
+++ b/conf/airframes/Poine/autoplato.xml
@@ -16,17 +16,17 @@ test_usb.CFLAGS += -DBOARD_CONFIG=$(BOARD_CFG) $(BOOZ_CFLAGS)
test_usb.srcs += $(SRC_BOOZ_TEST)/atpt_main.c
test_usb.CFLAGS += -DPERIODIC_TASK_PERIOD='SYS_TICS_OF_SEC((1./512.))'
# -DTIME_LED=1
-test_usb.CFLAGS += -DLED
+test_usb.CFLAGS += -DUSE_LED
test_usb.srcs += sys_time.c $(SRC_ARCH)/sys_time_hw.c $(SRC_ARCH)/armVIC.c
#test_usb.CFLAGS += -DUSE_UART1 -DUART1_BAUD=B57600
-#test_usb.srcs += $(SRC_ARCH)/uart_hw.c
+#test_usb.srcs += $(SRC_ARCH)/mcu_periph/uart_arch.c
#test_usb.CFLAGS += -DDOWNLINK -DDOWNLINK_TRANSPORT=PprzTransport -DDOWNLINK_DEVICE=Uart1
#test_usb.srcs += downlink.c pprz_transport.c
test_usb.CFLAGS += -DDOWNLINK -DDOWNLINK_TRANSPORT=PprzTransport -DUSE_USB_SERIAL
test_usb.CFLAGS += -DDOWNLINK_DEVICE=UsbS -DPPRZ_UART=UsbS -DDATALINK=PPRZ
-test_usb.srcs += downlink.c $(SRC_ARCH)/uart_hw.c $(SRC_ARCH)/usb_ser_hw.c pprz_transport.c
+test_usb.srcs += downlink.c $(SRC_ARCH)/mcu_periph/uart_arch.c $(SRC_ARCH)/usb_ser_hw.c pprz_transport.c
# datalink.c
test_usb.srcs += $(SRC_ARCH)/lpcusb/usbhw_lpc.c $(SRC_ARCH)/lpcusb/usbcontrol.c
test_usb.srcs += $(SRC_ARCH)/lpcusb/usbstdreq.c $(SRC_ARCH)/lpcusb/usbinit.c
diff --git a/conf/airframes/Poine/beth.xml b/conf/airframes/Poine/beth.xml
index ed7388ddb1..e8b8102ba5 100644
--- a/conf/airframes/Poine/beth.xml
+++ b/conf/airframes/Poine/beth.xml
@@ -114,7 +114,7 @@ main_stm32.CFLAGS += -DPERIODIC_TASK_PERIOD='SYS_TICS_OF_SEC(1./512.)'
main_stm32.srcs += sys_time.c $(SRC_ARCH)/sys_time_hw.c
main_stm32.CFLAGS += -DUSE_UART2 -DUART2_BAUD=B57600
-main_stm32.srcs += $(SRC_ARCH)/uart_hw.c
+main_stm32.srcs += $(SRC_ARCH)/mcu_periph/uart_arch.c
main_stm32.CFLAGS += -DDOWNLINK -DDOWNLINK_TRANSPORT=PprzTransport -DDOWNLINK_DEVICE=Uart2
main_stm32.srcs += downlink.c pprz_transport.c
@@ -186,7 +186,7 @@ main_coders.CFLAGS += -DPERIODIC_TASK_PERIOD='SYS_TICS_OF_SEC(1./512.)'
main_coders.srcs += sys_time.c $(SRC_ARCH)/sys_time_hw.c
main_coders.CFLAGS += -DUSE_UART1 -DUART1_BAUD=B57600
-main_coders.srcs += $(SRC_ARCH)/uart_hw.c
+main_coders.srcs += $(SRC_ARCH)/mcu_periph/uart_arch.c
main_coders.CFLAGS += -DDOWNLINK -DDOWNLINK_TRANSPORT=PprzTransport -DDOWNLINK_DEVICE=Uart1
main_coders.srcs += downlink.c pprz_transport.c
diff --git a/conf/airframes/Poine/bl_mc.xml b/conf/airframes/Poine/bl_mc.xml
index 51d00613d0..21d5e7adee 100644
--- a/conf/airframes/Poine/bl_mc.xml
+++ b/conf/airframes/Poine/bl_mc.xml
@@ -26,11 +26,11 @@ main.srcs = main_bl_mc.c
main.CFLAGS += -DPERIODIC_TASK_PERIOD='SYS_TICS_OF_SEC(1e-2)'
main.srcs += sys_time.c $(SRC_ARCH)/sys_time_hw.c
-main.CFLAGS += -DLED
+main.CFLAGS += -DUSE_LED
#-DTIME_LED=1
main.CFLAGS += -DUSE_UART1 -DUART1_BAUD=B38400
-main.srcs += $(SRC_ARCH)/uart_hw.c
+main.srcs += $(SRC_ARCH)/mcu_periph/uart_arch.c
main.CFLAGS += -DDOWNLINK -DDOWNLINK_TRANSPORT=PprzTransport -DDOWNLINK_DEVICE=Uart1
main.srcs += downlink.c pprz_transport.c
diff --git a/conf/airframes/Poine/easy_glider1.xml b/conf/airframes/Poine/easy_glider1.xml
index 44394d52a2..ab1f292c39 100644
--- a/conf/airframes/Poine/easy_glider1.xml
+++ b/conf/airframes/Poine/easy_glider1.xml
@@ -163,7 +163,7 @@ include $(PAPARAZZI_SRC)/conf/autopilot/tiny.makefile
FLASH_MODE=IAP
-ap.CFLAGS += -DFBW -DAP -DBOARD_CONFIG=$(CONFIG) -DLED -DTIME_LED=1
+ap.CFLAGS += -DFBW -DAP -DBOARD_CONFIG=$(CONFIG) -DUSE_LED -DTIME_LED=1
ap.srcs = sys_time.c $(SRC_ARCH)/sys_time_hw.c $(SRC_ARCH)/armVIC.c main_fbw.c main_ap.c main.c
ap.srcs += commands.c
@@ -177,7 +177,7 @@ ap.srcs += radio_control.c $(SRC_ARCH)/ppm_hw.c
# transparent
ap.CFLAGS += -DDOWNLINK -DUSE_UART0 -DDOWNLINK_TRANSPORT=PprzTransport -DDOWNLINK_FBW_DEVICE=Uart0 -DDOWNLINK_AP_DEVICE=Uart0 -DPPRZ_UART=Uart0 -DDATALINK=PPRZ -DUART0_BAUD=B9600
-ap.srcs += downlink.c $(SRC_ARCH)/uart_hw.c datalink.c pprz_transport.c
+ap.srcs += downlink.c $(SRC_ARCH)/mcu_periph/uart_arch.c datalink.c pprz_transport.c
ap.CFLAGS += -DINTER_MCU
ap.srcs += inter_mcu.c
diff --git a/conf/airframes/Poine/motor_bench.xml b/conf/airframes/Poine/motor_bench.xml
index 2cfb8b27a2..dca7fe4d33 100644
--- a/conf/airframes/Poine/motor_bench.xml
+++ b/conf/airframes/Poine/motor_bench.xml
@@ -17,12 +17,12 @@ main.CFLAGS += -DPERIODIC_TASK_FREQ='250.'
main.CFLAGS += -DPERIODIC_TASK_PERIOD='SYS_TICS_OF_SEC(1./PERIODIC_TASK_FREQ)'
main.srcs += sys_time.c $(SRC_ARCH)/sys_time_hw.c
-main.CFLAGS += -DLED
+main.CFLAGS += -DUSE_LED
main.srcs += $(SRC_ARCH)/armVIC.c
main.CFLAGS += -DUSE_UART0 -DUART0_BAUD=B115200
-main.srcs += $(SRC_ARCH)/uart_hw.c
+main.srcs += $(SRC_ARCH)/mcu_periph/uart_arch.c
main.CFLAGS += -DDOWNLINK -DDOWNLINK_TRANSPORT=PprzTransport -DDOWNLINK_DEVICE=Uart0
main.srcs += downlink.c pprz_transport.c
@@ -61,7 +61,7 @@ foo.CFLAGS += -DPERIODIC_TASK_FREQ='250.'
foo.CFLAGS += -DPERIODIC_TASK_PERIOD='SYS_TICS_OF_SEC(1./PERIODIC_TASK_FREQ)'
foo.srcs += sys_time.c $(SRC_ARCH)/sys_time_hw.c
-foo.CFLAGS += -DLED
+foo.CFLAGS += -DUSE_LED
foo.srcs += $(SRC_ARCH)/armVIC.c
foo.CFLAGS += -DUSE_I2C0 -DI2C0_SCLL=150 -DI2C0_SCLH=150 -DI2C0_VIC_SLOT=9
@@ -80,7 +80,7 @@ bar.CFLAGS += -DPERIODIC_TASK_FREQ='250.'
bar.CFLAGS += -DPERIODIC_TASK_PERIOD='SYS_TICS_OF_SEC(1./PERIODIC_TASK_FREQ)'
bar.srcs += sys_time.c $(SRC_ARCH)/sys_time_hw.c
-bar.CFLAGS += -DLED
+bar.CFLAGS += -DUSE_LED
bar.srcs += $(SRC_ARCH)/armVIC.c
bar.CFLAGS += -DUSE_I2C0 -DI2C0_SCLL=150 -DI2C0_SCLH=150 -DI2C0_VIC_SLOT=9
diff --git a/conf/airframes/Poine/pt_ant.xml b/conf/airframes/Poine/pt_ant.xml
index 93ade9c70e..765384cf20 100644
--- a/conf/airframes/Poine/pt_ant.xml
+++ b/conf/airframes/Poine/pt_ant.xml
@@ -10,7 +10,7 @@
tunnel.ARCHDIR = $(ARCH)
-tunnel.CFLAGS += -DFBW -DBOARD_CONFIG=\"conf_demo.h\" -DLED -DTIME_LED=1
+tunnel.CFLAGS += -DFBW -DBOARD_CONFIG=\"conf_demo.h\" -DUSE_LED -DTIME_LED=1
tunnel.srcs += $(SRC_ARCH)/uart_tunnel.c
ARCH=lpc21
@@ -26,12 +26,12 @@ main.srcs = $(PT_ANT)/pt_ant_main.c
main.CFLAGS += -DPERIODIC_TASK_PERIOD='SYS_TICS_OF_SEC(1.66666667e-2)'
main.srcs += sys_time.c $(SRC_ARCH)/sys_time_hw.c
-main.CFLAGS += -DLED
+main.CFLAGS += -DUSE_LED
main.srcs += $(SRC_ARCH)/armVIC.c
main.CFLAGS += -DUSE_UART0 -DUART0_BAUD=B38400
-main.srcs += $(SRC_ARCH)/uart_hw.c
+main.srcs += $(SRC_ARCH)/mcu_periph/uart_arch.c
main.CFLAGS += -DDOWNLINK -DDOWNLINK_TRANSPORT=PprzTransport -DDOWNLINK_DEVICE=Uart0
main.srcs += downlink.c pprz_transport.c $(PT_ANT)/pt_ant_telemetry.c
diff --git a/conf/airframes/Poine/turntable.xml b/conf/airframes/Poine/turntable.xml
index 77c99e020c..dc97e08e98 100644
--- a/conf/airframes/Poine/turntable.xml
+++ b/conf/airframes/Poine/turntable.xml
@@ -25,7 +25,7 @@ main.srcs += sys_time.c $(MB)/turntable_systime.c
#main.CFLAGS += -DDOWNLINK -DDOWNLINK_TRANSPORT=PprzTransport -DDOWNLINK_DEVICE=UsbS
main.CFLAGS += -DUSE_UART0 -DUART0_BAUD=B115200
-main.srcs += $(SRC_ARCH)/uart_hw.c
+main.srcs += $(SRC_ARCH)/mcu_periph/uart_arch.c
main.CFLAGS += -DDOWNLINK -DDOWNLINK_TRANSPORT=PprzTransport -DDOWNLINK_DEVICE=Uart0
main.srcs += downlink.c pprz_transport.c
diff --git a/conf/airframes/TU_Delft/MicrojetBR.xml b/conf/airframes/TU_Delft/MicrojetBR.xml
index ab356a2d2e..ee3384716b 100644
--- a/conf/airframes/TU_Delft/MicrojetBR.xml
+++ b/conf/airframes/TU_Delft/MicrojetBR.xml
@@ -258,7 +258,7 @@
diff --git a/conf/airframes/TU_Delft/Trip50A.xml b/conf/airframes/TU_Delft/Trip50A.xml
index 0a681fbb23..36081877f7 100644
--- a/conf/airframes/TU_Delft/Trip50A.xml
+++ b/conf/airframes/TU_Delft/Trip50A.xml
@@ -249,7 +249,7 @@ include $(PAPARAZZI_SRC)/conf/autopilot/tiny.makefile
FLASH_MODE=IAP
-ap.CFLAGS += -DFBW -DAP -DBOARD_CONFIG=$(CONFIG) -DLED -DTIME_LED=2
+ap.CFLAGS += -DFBW -DAP -DBOARD_CONFIG=$(CONFIG) -DUSE_LED -DTIME_LED=2
ap.srcs = sys_time.c $(SRC_ARCH)/sys_time_hw.c $(SRC_ARCH)/armVIC.c main_fbw.c main_ap.c main.c
ap.srcs += commands.c
@@ -261,15 +261,15 @@ ap.CFLAGS += -DRADIO_CONTROL
ap.srcs += radio_control.c $(SRC_ARCH)/ppm_hw.c
#ap.CFLAGS += -DDOWNLINK -DUSE_UART1 -DDOWNLINK_TRANSPORT=XBeeTransport -DXBEE_UART=Uart1 -DDATALINK=XBEE -DUART1_BAUD=B57600
-#ap.srcs += downlink.c $(SRC_ARCH)/uart_hw.c datalink.c xbee.c
+#ap.srcs += downlink.c $(SRC_ARCH)/mcu_periph/uart_arch.c datalink.c xbee.c
#TRANSPARENT
#ap.CFLAGS += -DDOWNLINK -DUSE_UART1 -DDOWNLINK_TRANSPORT=PprzTransport -DDOWNLINK_FBW_DEVICE=Uart1 -DDOWNLINK_AP_DEVICE=Uart1 -DPPRZ_UART=Uart1 -#DDATALINK=PPRZ -DUART1_BAUD=B9600
-#ap.srcs += downlink.c $(SRC_ARCH)/uart_hw.c datalink.c pprz_transport.c
+#ap.srcs += downlink.c $(SRC_ARCH)/mcu_periph/uart_arch.c datalink.c pprz_transport.c
# Maxstream API protocol
ap.CFLAGS += -DDOWNLINK -DUSE_UART1 -DDOWNLINK_TRANSPORT=XBeeTransport -DDOWNLINK_FBW_DEVICE=Uart1 -DDOWNLINK_AP_DEVICE=Uart1 -DXBEE_UART=Uart1 -DDATALINK=XBEE -DUART1_BAUD=B9600
-ap.srcs += downlink.c $(SRC_ARCH)/uart_hw.c datalink.c xbee.c
+ap.srcs += downlink.c $(SRC_ARCH)/mcu_periph/uart_arch.c datalink.c xbee.c
ap.CFLAGS += -DINTER_MCU
ap.srcs += inter_mcu.c
diff --git a/conf/airframes/TU_Delft/Trip50B.xml b/conf/airframes/TU_Delft/Trip50B.xml
index af557a6d57..1cbde06526 100644
--- a/conf/airframes/TU_Delft/Trip50B.xml
+++ b/conf/airframes/TU_Delft/Trip50B.xml
@@ -254,7 +254,7 @@ include $(PAPARAZZI_SRC)/conf/autopilot/tiny.makefile
FLASH_MODE=IAP
-ap.CFLAGS += -DFBW -DAP -DBOARD_CONFIG=$(CONFIG) -DLED -DTIME_LED=2
+ap.CFLAGS += -DFBW -DAP -DBOARD_CONFIG=$(CONFIG) -DUSE_LED -DTIME_LED=2
ap.srcs = sys_time.c $(SRC_ARCH)/sys_time_hw.c $(SRC_ARCH)/armVIC.c main_fbw.c main_ap.c main.c
ap.srcs += commands.c
@@ -266,15 +266,15 @@ ap.CFLAGS += -DRADIO_CONTROL
ap.srcs += radio_control.c $(SRC_ARCH)/ppm_hw.c
#ap.CFLAGS += -DDOWNLINK -DUSE_UART1 -DDOWNLINK_TRANSPORT=XBeeTransport -DXBEE_UART=Uart1 -DDATALINK=XBEE -DUART1_BAUD=B57600
-#ap.srcs += downlink.c $(SRC_ARCH)/uart_hw.c datalink.c xbee.c
+#ap.srcs += downlink.c $(SRC_ARCH)/mcu_periph/uart_arch.c datalink.c xbee.c
#TRANSPARENT
#ap.CFLAGS += -DDOWNLINK -DUSE_UART1 -DDOWNLINK_TRANSPORT=PprzTransport -DDOWNLINK_FBW_DEVICE=Uart1 -DDOWNLINK_AP_DEVICE=Uart1 -DPPRZ_UART=Uart1 -#DDATALINK=PPRZ -DUART1_BAUD=B9600
-#ap.srcs += downlink.c $(SRC_ARCH)/uart_hw.c datalink.c pprz_transport.c
+#ap.srcs += downlink.c $(SRC_ARCH)/mcu_periph/uart_arch.c datalink.c pprz_transport.c
# Maxstream API protocol
ap.CFLAGS += -DDOWNLINK -DUSE_UART1 -DDOWNLINK_TRANSPORT=XBeeTransport -DDOWNLINK_FBW_DEVICE=Uart1 -DDOWNLINK_AP_DEVICE=Uart1 -DXBEE_UART=Uart1 -DDATALINK=XBEE -DUART1_BAUD=B9600
-ap.srcs += downlink.c $(SRC_ARCH)/uart_hw.c datalink.c xbee.c
+ap.srcs += downlink.c $(SRC_ARCH)/mcu_periph/uart_arch.c datalink.c xbee.c
ap.CFLAGS += -DINTER_MCU
ap.srcs += inter_mcu.c
diff --git a/conf/airframes/TU_Delft/holiday50.xml b/conf/airframes/TU_Delft/holiday50.xml
index 3a1745e964..d95a52bb30 100644
--- a/conf/airframes/TU_Delft/holiday50.xml
+++ b/conf/airframes/TU_Delft/holiday50.xml
@@ -248,7 +248,7 @@ include $(PAPARAZZI_SRC)/conf/autopilot/tiny.makefile
FLASH_MODE=IAP
# main files (including the 60Hz timing)
-ap.CFLAGS += -DFBW -DAP -DBOARD_CONFIG=\"tiny_1_1.h\" -DLED -DTIME_LED=1
+ap.CFLAGS += -DFBW -DAP -DBOARD_CONFIG=\"tiny_1_1.h\" -DUSE_LED -DTIME_LED=1
ap.srcs = sys_time.c $(SRC_ARCH)/sys_time_hw.c $(SRC_ARCH)/armVIC.c main_fbw.c main_ap.c main.c
# Command allocation and Radio Mixers
@@ -264,7 +264,7 @@ ap.srcs += radio_control.c $(SRC_ARCH)/ppm_hw.c
# Paparazzi protocol on UART0 at 57600
ap.CFLAGS += -DDOWNLINK -DUSE_UART0 -DDOWNLINK_TRANSPORT=PprzTransport -DDOWNLINK_FBW_DEVICE=Uart0 -DDOWNLINK_AP_DEVICE=Uart0 -DPPRZ_UART=Uart0 -DDATALINK=PPRZ -DUART0_BAUD=B57600
-ap.srcs += downlink.c $(SRC_ARCH)/uart_hw.c datalink.c pprz_transport.c
+ap.srcs += downlink.c $(SRC_ARCH)/mcu_periph/uart_arch.c datalink.c pprz_transport.c
# communication from FBW and AP
ap.CFLAGS += -DINTER_MCU
diff --git a/conf/airframes/booz2_flixr.xml b/conf/airframes/booz2_flixr.xml
index a5201efd9e..3f3b051975 100644
--- a/conf/airframes/booz2_flixr.xml
+++ b/conf/airframes/booz2_flixr.xml
@@ -16,7 +16,9 @@
-
+
+
+
@@ -25,10 +27,11 @@
-
+
+
@@ -38,13 +41,6 @@
-
-
-
-
-
-
-
@@ -84,10 +80,6 @@
-
-
-
-
diff --git a/conf/airframes/booz2_s1.xml b/conf/airframes/booz2_s1.xml
index bc0035c8cb..844dbe70cf 100644
--- a/conf/airframes/booz2_s1.xml
+++ b/conf/airframes/booz2_s1.xml
@@ -196,7 +196,7 @@ BOARD_CFG = \"boards/booz2_v1_0.h\"
# Enables Canon Hack Development Kit features.
-ap.CFLAGS += -DLED -DCANON_CHDK
+ap.CFLAGS += -DUSE_LED -DCANON_CHDK
ap.srcs += $(PAPARAZZI_SRC)/sw/airborne/chdk.c
include $(PAPARAZZI_SRC)/conf/autopilot/booz2_common.makefile
diff --git a/conf/airframes/demo.xml b/conf/airframes/demo.xml
index e70c819f25..8fd502eaca 100644
--- a/conf/airframes/demo.xml
+++ b/conf/airframes/demo.xml
@@ -26,7 +26,7 @@ demo2.srcs = main_demo2.c
demo2.CFLAGS += -DPERIODIC_TASK_PERIOD='SYS_TICS_OF_SEC(10e-2)'
demo2.srcs += sys_time.c $(SRC_ARCH)/sys_time_hw.c
-demo2.CFLAGS += -DLED
+demo2.CFLAGS += -DUSE_LED
#
# UART (interrupts) and formated ascii printing
@@ -39,12 +39,12 @@ demo3.srcs = main_demo3.c
demo3.CFLAGS += -DPERIODIC_TASK_PERIOD='SYS_TICS_OF_SEC(1e-1)'
demo3.srcs += sys_time.c $(SRC_ARCH)/sys_time_hw.c
-demo3.CFLAGS += -DLED
+demo3.CFLAGS += -DUSE_LED
demo3.srcs += $(SRC_ARCH)/armVIC.c
demo3.CFLAGS += -DUSE_UART0 -DUART0_BAUD=B38400
-demo3.srcs += $(SRC_ARCH)/uart_hw.c
+demo3.srcs += $(SRC_ARCH)/mcu_periph/uart_arch.c
#
# DOWNLINK : send formated messages according to messages.xml description
@@ -58,12 +58,12 @@ demo4.srcs = main_demo4.c
demo4.CFLAGS += -DPERIODIC_TASK_PERIOD='SYS_TICS_OF_SEC(10e-2)'
demo4.srcs += sys_time.c $(SRC_ARCH)/sys_time_hw.c
-demo4.CFLAGS += -DLED
+demo4.CFLAGS += -DUSE_LED
demo4.srcs += $(SRC_ARCH)/armVIC.c
demo4.CFLAGS += -DUSE_UART0 -DUART0_BAUD=B38400
-demo4.srcs += $(SRC_ARCH)/uart_hw.c
+demo4.srcs += $(SRC_ARCH)/mcu_periph/uart_arch.c
demo4.CFLAGS += -DDOWNLINK -DDOWNLINK_TRANSPORT=PprzTransport -DDOWNLINK_DEVICE=Uart0
demo4.srcs += downlink.c pprz_transport.c
@@ -81,12 +81,12 @@ demo5.srcs = main_demo5.c
demo5.CFLAGS += -DPERIODIC_TASK_PERIOD='SYS_TICS_OF_SEC(10e-2)'
demo5.srcs += sys_time.c $(SRC_ARCH)/sys_time_hw.c
-demo5.CFLAGS += -DLED
+demo5.CFLAGS += -DUSE_LED
demo5.srcs += $(SRC_ARCH)/armVIC.c
demo5.CFLAGS += -DUSE_UART0 -DUART0_BAUD=B38400
-demo5.srcs += $(SRC_ARCH)/uart_hw.c
+demo5.srcs += $(SRC_ARCH)/mcu_periph/uart_arch.c
demo5.CFLAGS += -DDOWNLINK -DDOWNLINK_TRANSPORT=PprzTransport -DDOWNLINK_DEVICE=Uart0
demo5.srcs += downlink.c pprz_transport.c
@@ -105,7 +105,7 @@ demo6.srcs = main_demo6.c
demo6.CFLAGS += -DPERIODIC_TASK_PERIOD='SYS_TICS_OF_SEC(10e-2)'
demo6.srcs += sys_time.c $(SRC_ARCH)/sys_time_hw.c
-demo6.CFLAGS += -DLED
+demo6.CFLAGS += -DUSE_LED
demo6.srcs += $(SRC_ARCH)/armVIC.c
@@ -132,7 +132,7 @@ test_spk.srcs = main_test_spk.c
test_spk.CFLAGS += -DPERIODIC_TASK_PERIOD='SYS_TICS_OF_SEC(1./512.)'
test_spk.srcs += sys_time.c $(SRC_ARCH)/sys_time_hw.c
-test_spk.CFLAGS += -DLED
+test_spk.CFLAGS += -DUSE_LED
test_spk.srcs += $(SRC_ARCH)/armVIC.c
@@ -143,7 +143,7 @@ test_spk.srcs += $(SRC_ARCH)/lpcusb/usbhw_lpc.c $(SRC_ARCH)/lpcusb/usbcontrol.c
test_spk.srcs += $(SRC_ARCH)/lpcusb/usbstdreq.c $(SRC_ARCH)/lpcusb/usbinit.c
test_spk.CFLAGS += -DUSE_UART1 -DUART1_BAUD=B115200
-test_spk.srcs += $(SRC_ARCH)/uart_hw.c
+test_spk.srcs += $(SRC_ARCH)/mcu_periph/uart_arch.c
diff --git a/conf/airframes/demo_module.xml b/conf/airframes/demo_module.xml
index f8e4223226..fc3166cfd7 100644
--- a/conf/airframes/demo_module.xml
+++ b/conf/airframes/demo_module.xml
@@ -164,7 +164,7 @@ include $(PAPARAZZI_SRC)/conf/autopilot/tiny.makefile
FLASH_MODE=IAP
-ap.CFLAGS += -DFBW -DAP -DBOARD_CONFIG=$(CONFIG) -DLED -DTIME_LED=1
+ap.CFLAGS += -DFBW -DAP -DBOARD_CONFIG=$(CONFIG) -DUSE_LED -DTIME_LED=1
ap.srcs = sys_time.c $(SRC_ARCH)/sys_time_hw.c $(SRC_ARCH)/armVIC.c $(SRC_FIRMWARE)/main_fbw.c $(SRC_FIRMWARE)/main_ap.c $(SRC_FIRMWARE)/main.c
ap.CFLAGS += -DINTER_MCU
@@ -181,7 +181,7 @@ ap.srcs += radio_control.c $(SRC_ARCH)/ppm_hw.c
########## Modem
ap.CFLAGS += -DDOWNLINK -DUSE_UART1 -DDOWNLINK_TRANSPORT=PprzTransport -DDOWNLINK_FBW_DEVICE=Uart1 -DDOWNLINK_AP_DEVICE=Uart1 -DPPRZ_UART=Uart1 -DDATALINK=PPRZ -DUART1_BAUD=B9600
-ap.srcs += downlink.c $(SRC_ARCH)/uart_hw.c datalink.c pprz_transport.c
+ap.srcs += downlink.c $(SRC_ARCH)/mcu_periph/uart_arch.c datalink.c pprz_transport.c
########## ADC
ap.CFLAGS += -DADC -DUSE_ADC_0 -DUSE_ADC_1 -DUSE_ADC_2 -DUSE_ADC_3
diff --git a/conf/airframes/easy_glider_example.xml b/conf/airframes/easy_glider_example.xml
index b50f519ac1..313e793a84 100644
--- a/conf/airframes/easy_glider_example.xml
+++ b/conf/airframes/easy_glider_example.xml
@@ -180,8 +180,7 @@
-
-
+
diff --git a/conf/airframes/hitl_usb.xml b/conf/airframes/hitl_usb.xml
index 7108d6acf2..653b66330c 100644
--- a/conf/airframes/hitl_usb.xml
+++ b/conf/airframes/hitl_usb.xml
@@ -114,7 +114,7 @@ include $(PAPARAZZI_SRC)/conf/autopilot/tiny.makefile
FLASH_MODE=IAP
-ap.CFLAGS += -DFBW -DAP -DBOARD_CONFIG=$(CONFIG) -DLED -DTIME_LED=1
+ap.CFLAGS += -DFBW -DAP -DBOARD_CONFIG=$(CONFIG) -DUSE_LED -DTIME_LED=1
ap.srcs = sys_time.c $(SRC_ARCH)/sys_time_hw.c $(SRC_ARCH)/armVIC.c main_fbw.c main_ap.c main.c
ap.srcs += commands.c
@@ -129,7 +129,7 @@ ap.srcs += pprz_transport.c
#XBEE ap.srcs += xbee.c
-ap.srcs += downlink.c $(SRC_ARCH)/uart_hw.c $(SRC_ARCH)/usb_ser_hw.c datalink.c
+ap.srcs += downlink.c $(SRC_ARCH)/mcu_periph/uart_arch.c $(SRC_ARCH)/usb_ser_hw.c datalink.c
ap.srcs += $(SRC_ARCH)/lpcusb/usbhw_lpc.c $(SRC_ARCH)/lpcusb/usbcontrol.c
ap.srcs += $(SRC_ARCH)/lpcusb/usbstdreq.c $(SRC_ARCH)/lpcusb/usbinit.c
@@ -154,7 +154,7 @@ ap.CFLAGS += -DGPS_USE_LATLONG # simulating LEA 5H
# Config for SITL simulation
sim.ARCHDIR = $(ARCH)
-sim.CFLAGS += -DSITL -DAP -DFBW -DINTER_MCU -DDOWNLINK -DDOWNLINK_TRANSPORT=IvyTransport -DUSE_INFRARED -DNAV -DLED
+sim.CFLAGS += -DSITL -DAP -DFBW -DINTER_MCU -DDOWNLINK -DDOWNLINK_TRANSPORT=IvyTransport -DUSE_INFRARED -DNAV -DUSE_LED
sim.srcs = latlong.c downlink.c commands.c gps.c inter_mcu.c infrared.c fw_h_ctl.c fw_v_ctl.c subsystems/nav.c estimator.c sys_time.c main_fbw.c main_ap.c datalink.c $(SRC_ARCH)/ppm_hw.c $(SRC_ARCH)/sim_gps.c $(SRC_ARCH)/sim_ir.c $(SRC_ARCH)/sim_ap.c $(SRC_ARCH)/ivy_transport.c $(SRC_ARCH)/sim_adc_generic.c $(SRC_ARCH)/led_hw.c
sim.CFLAGS += -DBOARD_CONFIG=\"tiny.h\" -DAGR_CLIMB -DLOITER_TRIM -DALT_KALMAN
sim.srcs += subsystems/navigation/nav_survey_rectangle.c subsystems/navigation/nav_line.c subsystems/navigation/traffic_info.c
diff --git a/conf/airframes/logger_sd.xml b/conf/airframes/logger_sd.xml
index c310466dc7..0d6a3714b3 100644
--- a/conf/airframes/logger_sd.xml
+++ b/conf/airframes/logger_sd.xml
@@ -43,7 +43,7 @@ include $(PAPARAZZI_SRC)/conf/autopilot/tiny.makefile
FLASH_MODE=IAP
-ap.CFLAGS += -DBOARD_CONFIG=$(CONFIG) -DLED
+ap.CFLAGS += -DBOARD_CONFIG=$(CONFIG) -DUSE_LED
ap.srcs = sys_time.c $(SRC_ARCH)/sys_time_hw.c $(SRC_ARCH)/armVIC.c main_logger.c
#choose one
@@ -53,7 +53,7 @@ ap.CFLAGS += -DLOG_XBEE
#set the speed
ap.CFLAGS += -DUSE_UART0 -DUART0_BAUD=B9600 -DUSE_UART0_RX_ONLY
ap.CFLAGS += -DUSE_UART1 -DUART1_BAUD=B9600 -DUSE_UART1_RX_ONLY
-ap.srcs += $(SRC_ARCH)/uart_hw.c
+ap.srcs += $(SRC_ARCH)/mcu_periph/uart_arch.c
#set SPI interface for SD card (0 or 1)
ap.CFLAGS += -DHW_ENDPOINT_LPC2000_SPINUM=1
diff --git a/conf/airframes/mentor_tum.xml b/conf/airframes/mentor_tum.xml
index 9e4f2be2ed..4d00f9c4fa 100644
--- a/conf/airframes/mentor_tum.xml
+++ b/conf/airframes/mentor_tum.xml
@@ -29,8 +29,9 @@
-
-
+
+
+
diff --git a/conf/airframes/microjet_raw_makefile.xml b/conf/airframes/microjet_raw_makefile.xml
index 050277440c..28b71fef98 100644
--- a/conf/airframes/microjet_raw_makefile.xml
+++ b/conf/airframes/microjet_raw_makefile.xml
@@ -181,7 +181,7 @@
CONFIG=\"tiny_2_11.h\"
include $(PAPARAZZI_SRC)/conf/autopilot/tiny.makefile
FLASH_MODE=IAP
- ap.CFLAGS += -DFBW -DAP -DBOARD_CONFIG=$(CONFIG) -DLED -DTIME_LED=1
+ ap.CFLAGS += -DFBW -DAP -DBOARD_CONFIG=$(CONFIG) -DUSE_LED -DTIME_LED=1
ap.srcs = sys_time.c $(SRC_ARCH)/sys_time_hw.c $(SRC_ARCH)/armVIC.c main_fbw.c main_ap.c main.c
ap.srcs += commands.c
ap.CFLAGS += -DACTUATORS=\"servos_4015_MAT_hw.h\" -DSERVOS_4015_MAT
@@ -189,7 +189,7 @@
ap.CFLAGS += -DRADIO_CONTROL
ap.srcs += radio_control.c $(SRC_ARCH)/ppm_hw.c
ap.CFLAGS += -DDOWNLINK -DUSE_UART0 -DDOWNLINK_TRANSPORT=PprzTransport -DDOWNLINK_FBW_DEVICE=Uart0 -DDOWNLINK_AP_DEVICE=Uart0 -DPPRZ_UART=Uart0 -DDATALINK=PPRZ -DUART0_BAUD=B9600
- ap.srcs += downlink.c $(SRC_ARCH)/uart_hw.c datalink.c pprz_transport.c
+ ap.srcs += downlink.c $(SRC_ARCH)/mcu_periph/uart_arch.c datalink.c pprz_transport.c
ap.CFLAGS += -DINTER_MCU
ap.srcs += inter_mcu.c
ap.CFLAGS += -DADC -DUSE_ADC_0 -DUSE_ADC_1 -DUSE_ADC_2 -DUSE_ADC_3
diff --git a/conf/airframes/mm/extra/logger_sd_adc.xml b/conf/airframes/mm/extra/logger_sd_adc.xml
index 390fac3e6e..e7d5417246 100644
--- a/conf/airframes/mm/extra/logger_sd_adc.xml
+++ b/conf/airframes/mm/extra/logger_sd_adc.xml
@@ -60,7 +60,7 @@ include $(PAPARAZZI_SRC)/conf/autopilot/tiny.makefile
FLASH_MODE=IAP
-ap.CFLAGS += -DBOARD_CONFIG=$(CONFIG) -DLED -DLOGGER
+ap.CFLAGS += -DBOARD_CONFIG=$(CONFIG) -DUSE_LED -DLOGGER
ap.srcs = sys_time.c $(SRC_ARCH)/sys_time_hw.c $(SRC_ARCH)/armVIC.c main_logger.c
#choose one
@@ -70,7 +70,7 @@ ap.CFLAGS += -DLOG_XBEE
#set the speed
ap.CFLAGS += -DUSE_UART0 -DUART0_BAUD=B57600 -DUSE_UART0_RX_ONLY
ap.CFLAGS += -DUSE_UART1 -DUART1_BAUD=B57600 -DUSE_UART1_RX_ONLY
-ap.srcs += $(SRC_ARCH)/uart_hw.c
+ap.srcs += $(SRC_ARCH)/mcu_periph/uart_arch.c
#set SPI interface for SD card (0 or 1)
ap.CFLAGS += -DHW_ENDPOINT_LPC2000_SPINUM=0
diff --git a/conf/airframes/mm/extra/press_t.xml b/conf/airframes/mm/extra/press_t.xml
index 38dfec588a..8263abb2a4 100644
--- a/conf/airframes/mm/extra/press_t.xml
+++ b/conf/airframes/mm/extra/press_t.xml
@@ -227,7 +227,7 @@ include $(PAPARAZZI_SRC)/conf/autopilot/tiny.makefile
FLASH_MODE=IAP
-ap.CFLAGS += -DFBW -DAP -DBOARD_CONFIG=$(CONFIG) -DLED -DTIME_LED=1
+ap.CFLAGS += -DFBW -DAP -DBOARD_CONFIG=$(CONFIG) -DUSE_LED -DTIME_LED=1
ap.srcs = sys_time.c $(SRC_ARCH)/sys_time_hw.c $(SRC_ARCH)/armVIC.c main_fbw.c main_ap.c main.c
ap.srcs += commands.c
@@ -239,11 +239,11 @@ ap.CFLAGS += -DRADIO_CONTROL
ap.srcs += radio_control.c $(SRC_ARCH)/ppm_hw.c
ap.CFLAGS += -DDOWNLINK -DUSE_UART1 -DDOWNLINK_TRANSPORT=XBeeTransport -DXBEE_UART=Uart1 -DDATALINK=XBEE -DUART1_BAUD=B57600
-ap.srcs += downlink.c $(SRC_ARCH)/uart_hw.c datalink.c xbee.c
+ap.srcs += downlink.c $(SRC_ARCH)/mcu_periph/uart_arch.c datalink.c xbee.c
#TRANSPARENT
#ap.CFLAGS += -DDOWNLINK -DUSE_UART1 -DDOWNLINK_TRANSPORT=PprzTransport -DDOWNLINK_FBW_DEVICE=Uart1 -DDOWNLINK_AP_DEVICE=Uart1 -DPPRZ_UART=Uart1 -DDATALINK=PPRZ -DUART1_BAUD=B9600
-#ap.srcs += downlink.c $(SRC_ARCH)/uart_hw.c datalink.c pprz_transport.c
+#ap.srcs += downlink.c $(SRC_ARCH)/mcu_periph/uart_arch.c datalink.c pprz_transport.c
ap.CFLAGS += -DINTER_MCU
diff --git a/conf/airframes/mm/extra/quiet.xml b/conf/airframes/mm/extra/quiet.xml
index 0fac57e481..0d3754173d 100644
--- a/conf/airframes/mm/extra/quiet.xml
+++ b/conf/airframes/mm/extra/quiet.xml
@@ -23,7 +23,7 @@ ap.CFLAGS += -DLOG_XBEE
#set the speed
ap.CFLAGS += -DUSE_UART0 -DUART0_BAUD=B57600 -DUSE_UART0_RX_ONLY
ap.CFLAGS += -DUSE_UART1 -DUART1_BAUD=B57600 -DUSE_UART1_RX_ONLY
-ap.srcs += $(SRC_ARCH)/uart_hw.c
+ap.srcs += $(SRC_ARCH)/mcu_periph/uart_arch.c
diff --git a/conf/airframes/mm/extra/rctx.xml b/conf/airframes/mm/extra/rctx.xml
index 45f385c3c0..ec0c2d90d2 100644
--- a/conf/airframes/mm/extra/rctx.xml
+++ b/conf/airframes/mm/extra/rctx.xml
@@ -32,14 +32,14 @@ include $(PAPARAZZI_SRC)/conf/autopilot/tiny.makefile
FLASH_MODE=IAP
-ap.CFLAGS += -DFBW -DAP -DCONFIG=$(CONFIG) -DLED
+ap.CFLAGS += -DFBW -DAP -DCONFIG=$(CONFIG) -DUSE_LED
ap.srcs = sys_time.c $(SRC_ARCH)/sys_time_hw.c $(SRC_ARCH)/armVIC.c main_rctx.c
ap.CFLAGS += -DRADIO_CONTROL -DRADIO_CONTROL_TYPE=RC_FUTABA
ap.srcs += radio_control.c $(SRC_ARCH)/ppm_hw.c
ap.CFLAGS += -DDOWNLINK -DUSE_UART1 -DDOWNLINK_TRANSPORT=XBeeTransport -DXBEE_UART=Uart1 -DDATALINK=XBEE -DUART1_BAUD=B57600
-ap.srcs += downlink.c $(SRC_ARCH)/uart_hw.c xbee.c
+ap.srcs += downlink.c $(SRC_ARCH)/mcu_periph/uart_arch.c xbee.c
ap.CFLAGS += -DUSE_DOWNLINK_BROADCAST
diff --git a/conf/airframes/mm/fixed-wing/drops.xml b/conf/airframes/mm/fixed-wing/drops.xml
index 69dc6e5362..d725fffcde 100644
--- a/conf/airframes/mm/fixed-wing/drops.xml
+++ b/conf/airframes/mm/fixed-wing/drops.xml
@@ -243,7 +243,7 @@ include $(PAPARAZZI_SRC)/conf/autopilot/tiny.makefile
FLASH_MODE=IAP
-ap.CFLAGS += -DFBW -DAP -DBOARD_CONFIG=$(CONFIG) -DLED -DTIME_LED=1
+ap.CFLAGS += -DFBW -DAP -DBOARD_CONFIG=$(CONFIG) -DUSE_LED -DTIME_LED=1
ap.srcs = sys_time.c $(SRC_ARCH)/sys_time_hw.c $(SRC_ARCH)/armVIC.c main_fbw.c main_ap.c main.c
ap.srcs += commands.c
@@ -255,11 +255,11 @@ ap.CFLAGS += -DRADIO_CONTROL -DRADIO_CONTROL_AUTO1
ap.srcs += radio_control.c $(SRC_ARCH)/ppm_hw.c
ap.CFLAGS += -DDOWNLINK -DUSE_UART1 -DDOWNLINK_TRANSPORT=XBeeTransport -DXBEE_UART=Uart1 -DDATALINK=XBEE -DUART1_BAUD=B57600
-ap.srcs += downlink.c $(SRC_ARCH)/uart_hw.c datalink.c xbee.c
+ap.srcs += downlink.c $(SRC_ARCH)/mcu_periph/uart_arch.c datalink.c xbee.c
#TRANSPARENT
#ap.CFLAGS += -DDOWNLINK -DUSE_UART1 -DDOWNLINK_TRANSPORT=PprzTransport -DDOWNLINK_FBW_DEVICE=Uart1 -DDOWNLINK_AP_DEVICE=Uart1 -DPPRZ_UART=Uart1 -DDATALINK=PPRZ -DUART1_BAUD=B9600
-#ap.srcs += downlink.c $(SRC_ARCH)/uart_hw.c datalink.c pprz_transport.c
+#ap.srcs += downlink.c $(SRC_ARCH)/mcu_periph/uart_arch.c datalink.c pprz_transport.c
ap.CFLAGS += -DINTER_MCU
ap.srcs += inter_mcu.c
@@ -293,7 +293,7 @@ sim.ARCHDIR = $(ARCHI)
sim.ARCH = sitl
sim.TARGET = autopilot
sim.TARGETDIR = autopilot
-sim.CFLAGS += -DSITL -DAP -DFBW -DRADIO_CONTROL -DINTER_MCU -DDOWNLINK -DDOWNLINK_TRANSPORT=IvyTransport -DUSE_INFRARED -DNAV -DLED -DWIND_INFO
+sim.CFLAGS += -DSITL -DAP -DFBW -DRADIO_CONTROL -DINTER_MCU -DDOWNLINK -DDOWNLINK_TRANSPORT=IvyTransport -DUSE_INFRARED -DNAV -DUSE_LED -DWIND_INFO
sim.srcs = latlong.c radio_control.c downlink.c commands.c gps.c inter_mcu.c infrared.c fw_h_ctl_a.c fw_v_ctl.c subsystems/nav.c estimator.c sys_time.c main_fbw.c main_ap.c datalink.c $(SRC_ARCH)/ppm_hw.c $(SRC_ARCH)/sim_gps.c $(SRC_ARCH)/sim_ir.c $(SRC_ARCH)/sim_ap.c $(SRC_ARCH)/ivy_transport.c $(SRC_ARCH)/sim_adc_generic.c $(SRC_ARCH)/led_hw.c
sim.CFLAGS += -DBOARD_CONFIG=\"tiny.h\" -DAGR_CLIMB -DLOITER_TRIM -DALT_KALMAN
diff --git a/conf/airframes/mm/fixed-wing/funjeteth1.xml b/conf/airframes/mm/fixed-wing/funjeteth1.xml
index a0130847fa..b0e551ada1 100644
--- a/conf/airframes/mm/fixed-wing/funjeteth1.xml
+++ b/conf/airframes/mm/fixed-wing/funjeteth1.xml
@@ -204,7 +204,7 @@ include $(PAPARAZZI_SRC)/conf/autopilot/tiny.makefile
FLASH_MODE=IAP
-ap.CFLAGS += -DFBW -DAP -DBOARD_CONFIG=$(CONFIG) -DLED -DTIME_LED=1
+ap.CFLAGS += -DFBW -DAP -DBOARD_CONFIG=$(CONFIG) -DUSE_LED -DTIME_LED=1
ap.srcs = sys_time.c $(SRC_ARCH)/sys_time_hw.c $(SRC_ARCH)/armVIC.c main_fbw.c main_ap.c main.c
ap.srcs += commands.c
@@ -216,11 +216,11 @@ ap.CFLAGS += -DRADIO_CONTROL
ap.srcs += radio_control.c $(SRC_ARCH)/ppm_hw.c
ap.CFLAGS += -DDOWNLINK -DUSE_UART1 -DDOWNLINK_TRANSPORT=XBeeTransport -DXBEE_UART=Uart1 -DDATALINK=XBEE -DUART1_BAUD=B57600
-ap.srcs += downlink.c $(SRC_ARCH)/uart_hw.c datalink.c xbee.c
+ap.srcs += downlink.c $(SRC_ARCH)/mcu_periph/uart_arch.c datalink.c xbee.c
#TRANSPARENT
#ap.CFLAGS += -DDOWNLINK -DUSE_UART1 -DDOWNLINK_TRANSPORT=PprzTransport -DDOWNLINK_FBW_DEVICE=Uart1 -DDOWNLINK_AP_DEVICE=Uart1 -DPPRZ_UART=Uart1 -DDATALINK=PPRZ -DUART1_BAUD=B9600
-#ap.srcs += downlink.c $(SRC_ARCH)/uart_hw.c datalink.c pprz_transport.c
+#ap.srcs += downlink.c $(SRC_ARCH)/mcu_periph/uart_arch.c datalink.c pprz_transport.c
ap.CFLAGS += -DINTER_MCU
ap.srcs += inter_mcu.c
diff --git a/conf/airframes/mm/fixed-wing/funjeteth2.xml b/conf/airframes/mm/fixed-wing/funjeteth2.xml
index 6c092bac67..1aee3db2a0 100644
--- a/conf/airframes/mm/fixed-wing/funjeteth2.xml
+++ b/conf/airframes/mm/fixed-wing/funjeteth2.xml
@@ -205,7 +205,7 @@ include $(PAPARAZZI_SRC)/conf/autopilot/tiny.makefile
FLASH_MODE=IAP
-ap.CFLAGS += -DFBW -DAP -DBOARD_CONFIG=$(CONFIG) -DLED -DTIME_LED=1
+ap.CFLAGS += -DFBW -DAP -DBOARD_CONFIG=$(CONFIG) -DUSE_LED -DTIME_LED=1
ap.srcs = sys_time.c $(SRC_ARCH)/sys_time_hw.c $(SRC_ARCH)/armVIC.c main_fbw.c main_ap.c main.c
ap.srcs += commands.c
@@ -217,11 +217,11 @@ ap.CFLAGS += -DRADIO_CONTROL
ap.srcs += radio_control.c $(SRC_ARCH)/ppm_hw.c
ap.CFLAGS += -DDOWNLINK -DUSE_UART1 -DDOWNLINK_TRANSPORT=XBeeTransport -DXBEE_UART=Uart1 -DDATALINK=XBEE -DUART1_BAUD=B57600
-ap.srcs += downlink.c $(SRC_ARCH)/uart_hw.c datalink.c xbee.c
+ap.srcs += downlink.c $(SRC_ARCH)/mcu_periph/uart_arch.c datalink.c xbee.c
#TRANSPARENT
#ap.CFLAGS += -DDOWNLINK -DUSE_UART1 -DDOWNLINK_TRANSPORT=PprzTransport -DDOWNLINK_FBW_DEVICE=Uart1 -DDOWNLINK_AP_DEVICE=Uart1 -DPPRZ_UART=Uart1 -DDATALINK=PPRZ -DUART1_BAUD=B9600
-#ap.srcs += downlink.c $(SRC_ARCH)/uart_hw.c datalink.c pprz_transport.c
+#ap.srcs += downlink.c $(SRC_ARCH)/mcu_periph/uart_arch.c datalink.c pprz_transport.c
ap.CFLAGS += -DINTER_MCU
ap.srcs += inter_mcu.c
diff --git a/conf/airframes/mm/fixed-wing/funjetfmi1.xml b/conf/airframes/mm/fixed-wing/funjetfmi1.xml
index 190f934f62..183fe6112c 100644
--- a/conf/airframes/mm/fixed-wing/funjetfmi1.xml
+++ b/conf/airframes/mm/fixed-wing/funjetfmi1.xml
@@ -207,7 +207,7 @@ include $(PAPARAZZI_SRC)/conf/autopilot/tiny.makefile
FLASH_MODE=IAP
-ap.CFLAGS += -DFBW -DAP -DBOARD_CONFIG=$(CONFIG) -DLED -DTIME_LED=1
+ap.CFLAGS += -DFBW -DAP -DBOARD_CONFIG=$(CONFIG) -DUSE_LED -DTIME_LED=1
ap.srcs = sys_time.c $(SRC_ARCH)/sys_time_hw.c $(SRC_ARCH)/armVIC.c main_fbw.c main_ap.c main.c
ap.srcs += commands.c
@@ -219,11 +219,11 @@ ap.CFLAGS += -DRADIO_CONTROL
ap.srcs += radio_control.c $(SRC_ARCH)/ppm_hw.c
ap.CFLAGS += -DDOWNLINK -DUSE_UART1 -DDOWNLINK_TRANSPORT=XBeeTransport -DXBEE_UART=Uart1 -DDATALINK=XBEE -DUART1_BAUD=B57600
-ap.srcs += downlink.c $(SRC_ARCH)/uart_hw.c datalink.c xbee.c
+ap.srcs += downlink.c $(SRC_ARCH)/mcu_periph/uart_arch.c datalink.c xbee.c
#TRANSPARENT
#ap.CFLAGS += -DDOWNLINK -DUSE_UART1 -DDOWNLINK_TRANSPORT=PprzTransport -DDOWNLINK_FBW_DEVICE=Uart1 -DDOWNLINK_AP_DEVICE=Uart1 -DPPRZ_UART=Uart1 -DDATALINK=PPRZ -DUART1_BAUD=B9600
-#ap.srcs += downlink.c $(SRC_ARCH)/uart_hw.c datalink.c pprz_transport.c
+#ap.srcs += downlink.c $(SRC_ARCH)/mcu_periph/uart_arch.c datalink.c pprz_transport.c
ap.CFLAGS += -DINTER_MCU
diff --git a/conf/airframes/mm/fixed-wing/funjetfmi2.xml b/conf/airframes/mm/fixed-wing/funjetfmi2.xml
index 4147a894e9..0e006dc4e1 100644
--- a/conf/airframes/mm/fixed-wing/funjetfmi2.xml
+++ b/conf/airframes/mm/fixed-wing/funjetfmi2.xml
@@ -206,7 +206,7 @@ include $(PAPARAZZI_SRC)/conf/autopilot/tiny.makefile
FLASH_MODE=IAP
-ap.CFLAGS += -DFBW -DAP -DBOARD_CONFIG=$(CONFIG) -DLED -DTIME_LED=1
+ap.CFLAGS += -DFBW -DAP -DBOARD_CONFIG=$(CONFIG) -DUSE_LED -DTIME_LED=1
ap.srcs = sys_time.c $(SRC_ARCH)/sys_time_hw.c $(SRC_ARCH)/armVIC.c main_fbw.c main_ap.c main.c
ap.srcs += commands.c
@@ -218,11 +218,11 @@ ap.CFLAGS += -DRADIO_CONTROL
ap.srcs += radio_control.c $(SRC_ARCH)/ppm_hw.c
ap.CFLAGS += -DDOWNLINK -DUSE_UART1 -DDOWNLINK_TRANSPORT=XBeeTransport -DXBEE_UART=Uart1 -DDATALINK=XBEE -DUART1_BAUD=B57600
-ap.srcs += downlink.c $(SRC_ARCH)/uart_hw.c datalink.c xbee.c
+ap.srcs += downlink.c $(SRC_ARCH)/mcu_periph/uart_arch.c datalink.c xbee.c
#TRANSPARENT
#ap.CFLAGS += -DDOWNLINK -DUSE_UART1 -DDOWNLINK_TRANSPORT=PprzTransport -DDOWNLINK_FBW_DEVICE=Uart1 -DDOWNLINK_AP_DEVICE=Uart1 -DPPRZ_UART=Uart1 -DDATALINK=PPRZ -DUART1_BAUD=B9600
-#ap.srcs += downlink.c $(SRC_ARCH)/uart_hw.c datalink.c pprz_transport.c
+#ap.srcs += downlink.c $(SRC_ARCH)/mcu_periph/uart_arch.c datalink.c pprz_transport.c
ap.CFLAGS += -DINTER_MCU
diff --git a/conf/airframes/mm/fixed-wing/funjetfmi3.xml b/conf/airframes/mm/fixed-wing/funjetfmi3.xml
index 2f89ac7e7d..467eb62730 100644
--- a/conf/airframes/mm/fixed-wing/funjetfmi3.xml
+++ b/conf/airframes/mm/fixed-wing/funjetfmi3.xml
@@ -206,7 +206,7 @@ include $(PAPARAZZI_SRC)/conf/autopilot/tiny.makefile
FLASH_MODE=IAP
-ap.CFLAGS += -DFBW -DAP -DBOARD_CONFIG=$(CONFIG) -DLED -DTIME_LED=1
+ap.CFLAGS += -DFBW -DAP -DBOARD_CONFIG=$(CONFIG) -DUSE_LED -DTIME_LED=1
ap.srcs = sys_time.c $(SRC_ARCH)/sys_time_hw.c $(SRC_ARCH)/armVIC.c main_fbw.c main_ap.c main.c
ap.srcs += commands.c
@@ -218,11 +218,11 @@ ap.CFLAGS += -DRADIO_CONTROL
ap.srcs += radio_control.c $(SRC_ARCH)/ppm_hw.c
ap.CFLAGS += -DDOWNLINK -DUSE_UART1 -DDOWNLINK_TRANSPORT=XBeeTransport -DXBEE_UART=Uart1 -DDATALINK=XBEE -DUART1_BAUD=B57600
-ap.srcs += downlink.c $(SRC_ARCH)/uart_hw.c datalink.c xbee.c
+ap.srcs += downlink.c $(SRC_ARCH)/mcu_periph/uart_arch.c datalink.c xbee.c
#TRANSPARENT
#ap.CFLAGS += -DDOWNLINK -DUSE_UART1 -DDOWNLINK_TRANSPORT=PprzTransport -DDOWNLINK_FBW_DEVICE=Uart1 -DDOWNLINK_AP_DEVICE=Uart1 -DPPRZ_UART=Uart1 -DDATALINK=PPRZ -DUART1_BAUD=B9600
-#ap.srcs += downlink.c $(SRC_ARCH)/uart_hw.c datalink.c pprz_transport.c
+#ap.srcs += downlink.c $(SRC_ARCH)/mcu_periph/uart_arch.c datalink.c pprz_transport.c
ap.CFLAGS += -DINTER_MCU
diff --git a/conf/airframes/mm/fixed-wing/funjetgfi1.xml b/conf/airframes/mm/fixed-wing/funjetgfi1.xml
index 8f0fdbb206..402d3614d4 100644
--- a/conf/airframes/mm/fixed-wing/funjetgfi1.xml
+++ b/conf/airframes/mm/fixed-wing/funjetgfi1.xml
@@ -184,7 +184,7 @@ include $(PAPARAZZI_SRC)/conf/autopilot/tiny.makefile
FLASH_MODE=IAP
-ap.CFLAGS += -DFBW -DAP -DBOARD_CONFIG=$(CONFIG) -DLED -DTIME_LED=1
+ap.CFLAGS += -DFBW -DAP -DBOARD_CONFIG=$(CONFIG) -DUSE_LED -DTIME_LED=1
ap.srcs = sys_time.c $(SRC_ARCH)/sys_time_hw.c $(SRC_ARCH)/armVIC.c main_fbw.c main_ap.c main.c
ap.srcs += commands.c
@@ -196,11 +196,11 @@ ap.CFLAGS += -DRADIO_CONTROL
ap.srcs += radio_control.c $(SRC_ARCH)/ppm_hw.c
ap.CFLAGS += -DDOWNLINK -DUSE_UART1 -DDOWNLINK_TRANSPORT=XBeeTransport -DXBEE_UART=Uart1 -DDATALINK=XBEE -DUART1_BAUD=B57600
-ap.srcs += downlink.c $(SRC_ARCH)/uart_hw.c datalink.c xbee.c
+ap.srcs += downlink.c $(SRC_ARCH)/mcu_periph/uart_arch.c datalink.c xbee.c
#TRANSPARENT
#ap.CFLAGS += -DDOWNLINK -DUSE_UART1 -DDOWNLINK_TRANSPORT=PprzTransport -DDOWNLINK_FBW_DEVICE=Uart1 -DDOWNLINK_AP_DEVICE=Uart1 -DPPRZ_UART=Uart1 -DDATALINK=PPRZ -DUART1_BAUD=B9600
-#ap.srcs += downlink.c $(SRC_ARCH)/uart_hw.c datalink.c pprz_transport.c
+#ap.srcs += downlink.c $(SRC_ARCH)/mcu_periph/uart_arch.c datalink.c pprz_transport.c
ap.CFLAGS += -DINTER_MCU
diff --git a/conf/airframes/mm/fixed-wing/funjetgfi3.xml b/conf/airframes/mm/fixed-wing/funjetgfi3.xml
index f5d33639e7..3647cddfc0 100644
--- a/conf/airframes/mm/fixed-wing/funjetgfi3.xml
+++ b/conf/airframes/mm/fixed-wing/funjetgfi3.xml
@@ -196,7 +196,7 @@ include $(PAPARAZZI_SRC)/conf/autopilot/tiny.makefile
FLASH_MODE=IAP
-ap.CFLAGS += -DFBW -DAP -DBOARD_CONFIG=\"tiny_1_1.h\" -DLED -DTIME_LED=1
+ap.CFLAGS += -DFBW -DAP -DBOARD_CONFIG=\"tiny_1_1.h\" -DUSE_LED -DTIME_LED=1
ap.srcs = sys_time.c $(SRC_ARCH)/sys_time_hw.c $(SRC_ARCH)/armVIC.c main_fbw.c main_ap.c main.c
ap.srcs += commands.c
@@ -208,10 +208,10 @@ ap.CFLAGS += -DRADIO_CONTROL
ap.srcs += radio_control.c $(SRC_ARCH)/ppm_hw.c
ap.CFLAGS += -DDOWNLINK -DUSE_UART0 -DDOWNLINK_TRANSPORT=XBeeTransport -DDOWNLINK_FBW_DEVICE=Uart0 -DDOWNLINK_AP_DEVICE=Uart0 -DXBEE_UART=Uart0 -DDATALINK=XBEE -DUART0_BAUD=B57600
-ap.srcs += downlink.c $(SRC_ARCH)/uart_hw.c datalink.c xbee.c
+ap.srcs += downlink.c $(SRC_ARCH)/mcu_periph/uart_arch.c datalink.c xbee.c
#TRANSPARENT ap.CFLAGS += -DDOWNLINK -DUSE_UART0 -DDOWNLINK_TRANSPORT=PprzTransport -DDOWNLINK_FBW_DEVICE=Uart0 -DDOWNLINK_AP_DEVICE=Uart0 -DPPRZ_UART=Uart0 -DDATALINK=PPRZ -DUART0_BAUD=B9600
-#TRANSPARENT ap.srcs += downlink.c $(SRC_ARCH)/uart_hw.c datalink.c pprz_transport.c
+#TRANSPARENT ap.srcs += downlink.c $(SRC_ARCH)/mcu_periph/uart_arch.c datalink.c pprz_transport.c
ap.CFLAGS += -DINTER_MCU
diff --git a/conf/airframes/mm/fixed-wing/funjetgfi4.xml b/conf/airframes/mm/fixed-wing/funjetgfi4.xml
index a4bbe25fa9..dd100932fc 100644
--- a/conf/airframes/mm/fixed-wing/funjetgfi4.xml
+++ b/conf/airframes/mm/fixed-wing/funjetgfi4.xml
@@ -185,7 +185,7 @@ include $(PAPARAZZI_SRC)/conf/autopilot/tiny.makefile
FLASH_MODE=IAP
-ap.CFLAGS += -DFBW -DAP -DBOARD_CONFIG=$(CONFIG) -DLED -DTIME_LED=1
+ap.CFLAGS += -DFBW -DAP -DBOARD_CONFIG=$(CONFIG) -DUSE_LED -DTIME_LED=1
ap.srcs = sys_time.c $(SRC_ARCH)/sys_time_hw.c $(SRC_ARCH)/armVIC.c main_fbw.c main_ap.c main.c
ap.srcs += commands.c
@@ -197,11 +197,11 @@ ap.CFLAGS += -DRADIO_CONTROL
ap.srcs += radio_control.c $(SRC_ARCH)/ppm_hw.c
ap.CFLAGS += -DDOWNLINK -DUSE_UART1 -DDOWNLINK_TRANSPORT=XBeeTransport -DXBEE_UART=Uart1 -DDATALINK=XBEE -DUART1_BAUD=B57600
-ap.srcs += downlink.c $(SRC_ARCH)/uart_hw.c datalink.c xbee.c
+ap.srcs += downlink.c $(SRC_ARCH)/mcu_periph/uart_arch.c datalink.c xbee.c
#TRANSPARENT
#ap.CFLAGS += -DDOWNLINK -DUSE_UART1 -DDOWNLINK_TRANSPORT=PprzTransport -DDOWNLINK_FBW_DEVICE=Uart1 -DDOWNLINK_AP_DEVICE=Uart1 -DPPRZ_UART=Uart1 -DDATALINK=PPRZ -DUART1_BAUD=B9600
-#ap.srcs += downlink.c $(SRC_ARCH)/uart_hw.c datalink.c pprz_transport.c
+#ap.srcs += downlink.c $(SRC_ARCH)/mcu_periph/uart_arch.c datalink.c pprz_transport.c
ap.CFLAGS += -DINTER_MCU
diff --git a/conf/airframes/mm/fixed-wing/funjetgfi5.xml b/conf/airframes/mm/fixed-wing/funjetgfi5.xml
index a849c6653a..0731f33820 100644
--- a/conf/airframes/mm/fixed-wing/funjetgfi5.xml
+++ b/conf/airframes/mm/fixed-wing/funjetgfi5.xml
@@ -186,7 +186,7 @@ include $(PAPARAZZI_SRC)/conf/autopilot/tiny.makefile
FLASH_MODE=IAP
-ap.CFLAGS += -DFBW -DAP -DBOARD_CONFIG=$(CONFIG) -DLED -DTIME_LED=1
+ap.CFLAGS += -DFBW -DAP -DBOARD_CONFIG=$(CONFIG) -DUSE_LED -DTIME_LED=1
ap.srcs = sys_time.c $(SRC_ARCH)/sys_time_hw.c $(SRC_ARCH)/armVIC.c main_fbw.c main_ap.c main.c
ap.srcs += commands.c
@@ -198,11 +198,11 @@ ap.CFLAGS += -DRADIO_CONTROL
ap.srcs += radio_control.c $(SRC_ARCH)/ppm_hw.c
ap.CFLAGS += -DDOWNLINK -DUSE_UART1 -DDOWNLINK_TRANSPORT=XBeeTransport -DXBEE_UART=Uart1 -DDATALINK=XBEE -DUART1_BAUD=B57600
-ap.srcs += downlink.c $(SRC_ARCH)/uart_hw.c datalink.c xbee.c
+ap.srcs += downlink.c $(SRC_ARCH)/mcu_periph/uart_arch.c datalink.c xbee.c
#TRANSPARENT
#ap.CFLAGS += -DDOWNLINK -DUSE_UART1 -DDOWNLINK_TRANSPORT=PprzTransport -DDOWNLINK_FBW_DEVICE=Uart1 -DDOWNLINK_AP_DEVICE=Uart1 -DPPRZ_UART=Uart1 -DDATALINK=PPRZ -DUART1_BAUD=B9600
-#ap.srcs += downlink.c $(SRC_ARCH)/uart_hw.c datalink.c pprz_transport.c
+#ap.srcs += downlink.c $(SRC_ARCH)/mcu_periph/uart_arch.c datalink.c pprz_transport.c
ap.CFLAGS += -DINTER_MCU
diff --git a/conf/airframes/mm/fixed-wing/funjetgfi6.xml b/conf/airframes/mm/fixed-wing/funjetgfi6.xml
index 233c49573c..e4f607d80b 100644
--- a/conf/airframes/mm/fixed-wing/funjetgfi6.xml
+++ b/conf/airframes/mm/fixed-wing/funjetgfi6.xml
@@ -186,7 +186,7 @@ include $(PAPARAZZI_SRC)/conf/autopilot/tiny.makefile
FLASH_MODE=IAP
-ap.CFLAGS += -DFBW -DAP -DBOARD_CONFIG=$(CONFIG) -DLED -DTIME_LED=1
+ap.CFLAGS += -DFBW -DAP -DBOARD_CONFIG=$(CONFIG) -DUSE_LED -DTIME_LED=1
ap.srcs = sys_time.c $(SRC_ARCH)/sys_time_hw.c $(SRC_ARCH)/armVIC.c main_fbw.c main_ap.c main.c
ap.srcs += commands.c
@@ -198,11 +198,11 @@ ap.CFLAGS += -DRADIO_CONTROL
ap.srcs += radio_control.c $(SRC_ARCH)/ppm_hw.c
ap.CFLAGS += -DDOWNLINK -DUSE_UART1 -DDOWNLINK_TRANSPORT=XBeeTransport -DXBEE_UART=Uart1 -DDATALINK=XBEE -DUART1_BAUD=B57600
-ap.srcs += downlink.c $(SRC_ARCH)/uart_hw.c datalink.c xbee.c
+ap.srcs += downlink.c $(SRC_ARCH)/mcu_periph/uart_arch.c datalink.c xbee.c
#TRANSPARENT
#ap.CFLAGS += -DDOWNLINK -DUSE_UART1 -DDOWNLINK_TRANSPORT=PprzTransport -DDOWNLINK_FBW_DEVICE=Uart1 -DDOWNLINK_AP_DEVICE=Uart1 -DPPRZ_UART=Uart1 -DDATALINK=PPRZ -DUART1_BAUD=B9600
-#ap.srcs += downlink.c $(SRC_ARCH)/uart_hw.c datalink.c pprz_transport.c
+#ap.srcs += downlink.c $(SRC_ARCH)/mcu_periph/uart_arch.c datalink.c pprz_transport.c
ap.CFLAGS += -DINTER_MCU
diff --git a/conf/airframes/mm/fixed-wing/funjetgfi7.xml b/conf/airframes/mm/fixed-wing/funjetgfi7.xml
index 3e7abb3574..be48d15148 100644
--- a/conf/airframes/mm/fixed-wing/funjetgfi7.xml
+++ b/conf/airframes/mm/fixed-wing/funjetgfi7.xml
@@ -186,7 +186,7 @@ include $(PAPARAZZI_SRC)/conf/autopilot/tiny.makefile
FLASH_MODE=IAP
-ap.CFLAGS += -DFBW -DAP -DBOARD_CONFIG=$(CONFIG) -DLED -DTIME_LED=1
+ap.CFLAGS += -DFBW -DAP -DBOARD_CONFIG=$(CONFIG) -DUSE_LED -DTIME_LED=1
ap.srcs = sys_time.c $(SRC_ARCH)/sys_time_hw.c $(SRC_ARCH)/armVIC.c main_fbw.c main_ap.c main.c
ap.srcs += commands.c
@@ -198,11 +198,11 @@ ap.CFLAGS += -DRADIO_CONTROL
ap.srcs += radio_control.c $(SRC_ARCH)/ppm_hw.c
ap.CFLAGS += -DDOWNLINK -DUSE_UART1 -DDOWNLINK_TRANSPORT=XBeeTransport -DXBEE_UART=Uart1 -DDATALINK=XBEE -DUART1_BAUD=B57600
-ap.srcs += downlink.c $(SRC_ARCH)/uart_hw.c datalink.c xbee.c
+ap.srcs += downlink.c $(SRC_ARCH)/mcu_periph/uart_arch.c datalink.c xbee.c
#TRANSPARENT
#ap.CFLAGS += -DDOWNLINK -DUSE_UART1 -DDOWNLINK_TRANSPORT=PprzTransport -DDOWNLINK_FBW_DEVICE=Uart1 -DDOWNLINK_AP_DEVICE=Uart1 -DPPRZ_UART=Uart1 -DDATALINK=PPRZ -DUART1_BAUD=B9600
-#ap.srcs += downlink.c $(SRC_ARCH)/uart_hw.c datalink.c pprz_transport.c
+#ap.srcs += downlink.c $(SRC_ARCH)/mcu_periph/uart_arch.c datalink.c pprz_transport.c
ap.CFLAGS += -DINTER_MCU
diff --git a/conf/airframes/mm/fixed-wing/funjetgfi9.xml b/conf/airframes/mm/fixed-wing/funjetgfi9.xml
index 2a4de16260..aaacc21284 100644
--- a/conf/airframes/mm/fixed-wing/funjetgfi9.xml
+++ b/conf/airframes/mm/fixed-wing/funjetgfi9.xml
@@ -186,7 +186,7 @@ include $(PAPARAZZI_SRC)/conf/autopilot/tiny.makefile
FLASH_MODE=IAP
-ap.CFLAGS += -DFBW -DAP -DBOARD_CONFIG=$(CONFIG) -DLED -DTIME_LED=1
+ap.CFLAGS += -DFBW -DAP -DBOARD_CONFIG=$(CONFIG) -DUSE_LED -DTIME_LED=1
ap.srcs = sys_time.c $(SRC_ARCH)/sys_time_hw.c $(SRC_ARCH)/armVIC.c main_fbw.c main_ap.c main.c
ap.srcs += commands.c
@@ -198,11 +198,11 @@ ap.CFLAGS += -DRADIO_CONTROL
ap.srcs += radio_control.c $(SRC_ARCH)/ppm_hw.c
ap.CFLAGS += -DDOWNLINK -DUSE_UART1 -DDOWNLINK_TRANSPORT=XBeeTransport -DXBEE_UART=Uart1 -DDATALINK=XBEE -DUART1_BAUD=B57600
-ap.srcs += downlink.c $(SRC_ARCH)/uart_hw.c datalink.c xbee.c
+ap.srcs += downlink.c $(SRC_ARCH)/mcu_periph/uart_arch.c datalink.c xbee.c
#TRANSPARENT
#ap.CFLAGS += -DDOWNLINK -DUSE_UART1 -DDOWNLINK_TRANSPORT=PprzTransport -DDOWNLINK_FBW_DEVICE=Uart1 -DDOWNLINK_AP_DEVICE=Uart1 -DPPRZ_UART=Uart1 -DDATALINK=PPRZ -DUART1_BAUD=B9600
-#ap.srcs += downlink.c $(SRC_ARCH)/uart_hw.c datalink.c pprz_transport.c
+#ap.srcs += downlink.c $(SRC_ARCH)/mcu_periph/uart_arch.c datalink.c pprz_transport.c
ap.CFLAGS += -DINTER_MCU
diff --git a/conf/airframes/mm/fixed-wing/funjetmm2.xml b/conf/airframes/mm/fixed-wing/funjetmm2.xml
index 4485d2195a..b9dd882225 100644
--- a/conf/airframes/mm/fixed-wing/funjetmm2.xml
+++ b/conf/airframes/mm/fixed-wing/funjetmm2.xml
@@ -212,7 +212,7 @@ include $(PAPARAZZI_SRC)/conf/autopilot/tiny.makefile
FLASH_MODE=IAP
-ap.CFLAGS += -DFBW -DAP -DBOARD_CONFIG=$(CONFIG) -DLED -DTIME_LED=1
+ap.CFLAGS += -DFBW -DAP -DBOARD_CONFIG=$(CONFIG) -DUSE_LED -DTIME_LED=1
ap.srcs = sys_time.c $(SRC_ARCH)/sys_time_hw.c $(SRC_ARCH)/armVIC.c main_fbw.c main_ap.c main.c
ap.srcs += commands.c
@@ -224,11 +224,11 @@ ap.CFLAGS += -DRADIO_CONTROL
ap.srcs += radio_control.c $(SRC_ARCH)/ppm_hw.c
ap.CFLAGS += -DDOWNLINK -DUSE_UART1 -DDOWNLINK_TRANSPORT=XBeeTransport -DXBEE_UART=Uart1 -DDATALINK=XBEE -DUART1_BAUD=B57600
-ap.srcs += downlink.c $(SRC_ARCH)/uart_hw.c datalink.c xbee.c
+ap.srcs += downlink.c $(SRC_ARCH)/mcu_periph/uart_arch.c datalink.c xbee.c
#TRANSPARENT
#ap.CFLAGS += -DDOWNLINK -DUSE_UART1 -DDOWNLINK_TRANSPORT=PprzTransport -DDOWNLINK_FBW_DEVICE=Uart1 -DDOWNLINK_AP_DEVICE=Uart1 -DPPRZ_UART=Uart1 -DDATALINK=PPRZ -DUART1_BAUD=B9600
-#ap.srcs += downlink.c $(SRC_ARCH)/uart_hw.c datalink.c pprz_transport.c
+#ap.srcs += downlink.c $(SRC_ARCH)/mcu_periph/uart_arch.c datalink.c pprz_transport.c
ap.CFLAGS += -DINTER_MCU
diff --git a/conf/airframes/mm/fixed-wing/miniwing.xml b/conf/airframes/mm/fixed-wing/miniwing.xml
index 3e9f7d9597..68bee9865c 100644
--- a/conf/airframes/mm/fixed-wing/miniwing.xml
+++ b/conf/airframes/mm/fixed-wing/miniwing.xml
@@ -180,7 +180,7 @@ include $(PAPARAZZI_SRC)/conf/autopilot/tiny.makefile
FLASH_MODE=IAP
-ap.CFLAGS += -DFBW -DAP -DBOARD_CONFIG=$(CONFIG) -DLED -DTIME_LED=1
+ap.CFLAGS += -DFBW -DAP -DBOARD_CONFIG=$(CONFIG) -DUSE_LED -DTIME_LED=1
ap.srcs = sys_time.c $(SRC_ARCH)/sys_time_hw.c $(SRC_ARCH)/armVIC.c main_fbw.c main_ap.c main.c
ap.srcs += commands.c
@@ -192,7 +192,7 @@ ap.CFLAGS += -DRADIO_CONTROL -DUSE_RC_TELEMETRY
ap.srcs += radio_control.c ppm_telemetry.c
ap.CFLAGS += -DDOWNLINK -DUSE_UART1 -DDOWNLINK_TRANSPORT=XBeeTransport -DXBEE_UART=Uart1 -DDATALINK=XBEE -DUART1_BAUD=B57600
-ap.srcs += downlink.c $(SRC_ARCH)/uart_hw.c datalink.c xbee.c
+ap.srcs += downlink.c $(SRC_ARCH)/mcu_periph/uart_arch.c datalink.c xbee.c
ap.CFLAGS += -DINTER_MCU
ap.srcs += inter_mcu.c
diff --git a/conf/airframes/mm/fixed-wing/slowfast.xml b/conf/airframes/mm/fixed-wing/slowfast.xml
index ddf00fbd9a..13fca656e9 100644
--- a/conf/airframes/mm/fixed-wing/slowfast.xml
+++ b/conf/airframes/mm/fixed-wing/slowfast.xml
@@ -227,7 +227,7 @@ include $(PAPARAZZI_SRC)/conf/autopilot/tiny.makefile
FLASH_MODE=IAP
-ap.CFLAGS += -DFBW -DAP -DBOARD_CONFIG=$(CONFIG) -DLED -DTIME_LED=1
+ap.CFLAGS += -DFBW -DAP -DBOARD_CONFIG=$(CONFIG) -DUSE_LED -DTIME_LED=1
ap.srcs = sys_time.c $(SRC_ARCH)/sys_time_hw.c $(SRC_ARCH)/armVIC.c main_fbw.c main_ap.c main.c
ap.srcs += commands.c
@@ -239,11 +239,11 @@ ap.CFLAGS += -DRADIO_CONTROL
ap.srcs += radio_control.c $(SRC_ARCH)/ppm_hw.c
ap.CFLAGS += -DDOWNLINK -DUSE_UART1 -DDOWNLINK_TRANSPORT=XBeeTransport -DXBEE_UART=Uart1 -DDATALINK=XBEE -DUART1_BAUD=B57600
-ap.srcs += downlink.c $(SRC_ARCH)/uart_hw.c datalink.c xbee.c
+ap.srcs += downlink.c $(SRC_ARCH)/mcu_periph/uart_arch.c datalink.c xbee.c
#TRANSPARENT
#ap.CFLAGS += -DDOWNLINK -DUSE_UART1 -DDOWNLINK_TRANSPORT=PprzTransport -DDOWNLINK_FBW_DEVICE=Uart1 -DDOWNLINK_AP_DEVICE=Uart1 -DPPRZ_UART=Uart1 -DDATALINK=PPRZ -DUART1_BAUD=B9600
-#ap.srcs += downlink.c $(SRC_ARCH)/uart_hw.c datalink.c pprz_transport.c
+#ap.srcs += downlink.c $(SRC_ARCH)/mcu_periph/uart_arch.c datalink.c pprz_transport.c
ap.CFLAGS += -DINTER_MCU
diff --git a/conf/airframes/mm/fixed-wing/slowfast2.xml b/conf/airframes/mm/fixed-wing/slowfast2.xml
index 708cf98ac2..13db40d0c9 100644
--- a/conf/airframes/mm/fixed-wing/slowfast2.xml
+++ b/conf/airframes/mm/fixed-wing/slowfast2.xml
@@ -241,7 +241,7 @@ include $(PAPARAZZI_SRC)/conf/autopilot/tiny.makefile
FLASH_MODE=IAP
-ap.CFLAGS += -DFBW -DAP -DBOARD_CONFIG=$(CONFIG) -DLED -DTIME_LED=1
+ap.CFLAGS += -DFBW -DAP -DBOARD_CONFIG=$(CONFIG) -DUSE_LED -DTIME_LED=1
ap.srcs = sys_time.c $(SRC_ARCH)/sys_time_hw.c $(SRC_ARCH)/armVIC.c main_fbw.c main_ap.c main.c
ap.srcs += commands.c
@@ -253,11 +253,11 @@ ap.CFLAGS += -DRADIO_CONTROL
ap.srcs += radio_control.c $(SRC_ARCH)/ppm_hw.c
ap.CFLAGS += -DDOWNLINK -DUSE_UART1 -DDOWNLINK_TRANSPORT=XBeeTransport -DXBEE_UART=Uart1 -DDATALINK=XBEE -DUART1_BAUD=B57600
-ap.srcs += downlink.c $(SRC_ARCH)/uart_hw.c datalink.c xbee.c
+ap.srcs += downlink.c $(SRC_ARCH)/mcu_periph/uart_arch.c datalink.c xbee.c
#TRANSPARENT
#ap.CFLAGS += -DDOWNLINK -DUSE_UART1 -DDOWNLINK_TRANSPORT=PprzTransport -DDOWNLINK_FBW_DEVICE=Uart1 -DDOWNLINK_AP_DEVICE=Uart1 -DPPRZ_UART=Uart1 -DDATALINK=PPRZ -DUART1_BAUD=B9600
-#ap.srcs += downlink.c $(SRC_ARCH)/uart_hw.c datalink.c pprz_transport.c
+#ap.srcs += downlink.c $(SRC_ARCH)/mcu_periph/uart_arch.c datalink.c pprz_transport.c
ap.CFLAGS += -DINTER_MCU
diff --git a/conf/airframes/mm/fixed-wing/twinstarmm.xml b/conf/airframes/mm/fixed-wing/twinstarmm.xml
index 92db7ebddb..870947b36c 100644
--- a/conf/airframes/mm/fixed-wing/twinstarmm.xml
+++ b/conf/airframes/mm/fixed-wing/twinstarmm.xml
@@ -203,7 +203,7 @@ include $(PAPARAZZI_SRC)/conf/autopilot/tiny.makefile
FLASH_MODE=IAP
-ap.CFLAGS += -DFBW -DAP -DBOARD_CONFIG=$(CONFIG) -DLED -DTIME_LED=1
+ap.CFLAGS += -DFBW -DAP -DBOARD_CONFIG=$(CONFIG) -DUSE_LED -DTIME_LED=1
ap.srcs = sys_time.c $(SRC_ARCH)/sys_time_hw.c $(SRC_ARCH)/armVIC.c main_fbw.c main_ap.c main.c
ap.srcs += commands.c
@@ -216,11 +216,11 @@ ap.srcs += radio_control.c $(SRC_ARCH)/ppm_hw.c
#XBEE
#ap.CFLAGS += -DDOWNLINK -DUSE_UART1 -DDOWNLINK_TRANSPORT=XBeeTransport -DXBEE_UART=Uart1 -DDATALINK=XBEE -DUART1_BAUD=B57600
-#ap.srcs += downlink.c $(SRC_ARCH)/uart_hw.c datalink.c xbee.c
+#ap.srcs += downlink.c $(SRC_ARCH)/mcu_periph/uart_arch.c datalink.c xbee.c
#TRANSPARENT
ap.CFLAGS += -DDOWNLINK -DUSE_UART1 -DDOWNLINK_TRANSPORT=PprzTransport -DDOWNLINK_FBW_DEVICE=Uart1 -DDOWNLINK_AP_DEVICE=Uart1 -DPPRZ_UART=Uart1 -DDATALINK=PPRZ -DUART1_BAUD=B9600
-ap.srcs += downlink.c $(SRC_ARCH)/uart_hw.c datalink.c pprz_transport.c
+ap.srcs += downlink.c $(SRC_ARCH)/mcu_periph/uart_arch.c datalink.c pprz_transport.c
ap.CFLAGS += -DINTER_MCU
ap.srcs += inter_mcu.c
@@ -247,7 +247,7 @@ ap.srcs += subsystems/navigation/snav.c
# Config for SITL simulation
# include $(PAPARAZZI_SRC)/conf/autopilot/sitl.makefile
sim.ARCHDIR = $(ARCHI)
-sim.CFLAGS += -DSITL -DAP -DFBW -DRADIO_CONTROL -DINTER_MCU -DDOWNLINK -DDOWNLINK_TRANSPORT=IvyTransport -DUSE_INFRARED -DNAV -DLED -DWIND_INFO
+sim.CFLAGS += -DSITL -DAP -DFBW -DRADIO_CONTROL -DINTER_MCU -DDOWNLINK -DDOWNLINK_TRANSPORT=IvyTransport -DUSE_INFRARED -DNAV -DUSE_LED -DWIND_INFO
sim.srcs = latlong.c radio_control.c downlink.c commands.c gps.c inter_mcu.c infrared.c fw_h_ctl_a.c fw_v_ctl.c subsystems/nav.c estimator.c sys_time.c main_fbw.c main_ap.c datalink.c $(SRC_ARCH)/ppm_hw.c $(SRC_ARCH)/sim_gps.c $(SRC_ARCH)/sim_ir.c $(SRC_ARCH)/sim_ap.c $(SRC_ARCH)/ivy_transport.c $(SRC_ARCH)/sim_adc_generic.c $(SRC_ARCH)/led_hw.c
sim.CFLAGS += -DBOARD_CONFIG=\"tiny.h\" -DAGR_CLIMB -DLOITER_TRIM -DALT_KALMAN
diff --git a/conf/airframes/mm/hangar/black_one.xml b/conf/airframes/mm/hangar/black_one.xml
index fcb1f0398f..be9796bf51 100644
--- a/conf/airframes/mm/hangar/black_one.xml
+++ b/conf/airframes/mm/hangar/black_one.xml
@@ -216,7 +216,7 @@ include $(PAPARAZZI_SRC)/conf/autopilot/tiny.makefile
FLASH_MODE=IAP
-ap.CFLAGS += -DFBW -DAP -DBOARD_CONFIG=\"tiny.h\" -DLED -DTIME_LED=1
+ap.CFLAGS += -DFBW -DAP -DBOARD_CONFIG=\"tiny.h\" -DUSE_LED -DTIME_LED=1
ap.srcs = sys_time.c $(SRC_ARCH)/sys_time_hw.c $(SRC_ARCH)/armVIC.c main_fbw.c main_ap.c main.c
ap.srcs += commands.c
@@ -228,10 +228,10 @@ ap.CFLAGS += -DRADIO_CONTROL
ap.srcs += radio_control.c $(SRC_ARCH)/ppm_hw.c
#ap.CFLAGS += -DDOWNLINK -DUSE_UART0 -DDOWNLINK_TRANSPORT=XBeeTransport -DDOWNLINK_FBW_DEVICE=Uart0 -DDOWNLINK_AP_DEVICE=Uart0 -DXBEE_UART=Uart0 -DDATALINK=XBEE -DUART0_BAUD=B9600
-#ap.srcs += downlink.c $(SRC_ARCH)/uart_hw.c datalink.c xbee.c
+#ap.srcs += downlink.c $(SRC_ARCH)/mcu_periph/uart_arch.c datalink.c xbee.c
ap.CFLAGS += -DDOWNLINK -DUSE_UART0 -DDOWNLINK_TRANSPORT=PprzTransport -DDOWNLINK_FBW_DEVICE=Uart0 -DDOWNLINK_AP_DEVICE=Uart0 -DPPRZ_UART=Uart0 -DDATALINK=PPRZ -DUART0_BAUD=B9600
-ap.srcs += downlink.c $(SRC_ARCH)/uart_hw.c datalink.c pprz_transport.c
+ap.srcs += downlink.c $(SRC_ARCH)/mcu_periph/uart_arch.c datalink.c pprz_transport.c
ap.CFLAGS += -DINTER_MCU
ap.srcs += inter_mcu.c
diff --git a/conf/airframes/mm/hangar/glass_one1.xml b/conf/airframes/mm/hangar/glass_one1.xml
index c87a0f442c..e8bf7ff754 100644
--- a/conf/airframes/mm/hangar/glass_one1.xml
+++ b/conf/airframes/mm/hangar/glass_one1.xml
@@ -206,7 +206,7 @@ include $(PAPARAZZI_SRC)/conf/autopilot/tiny.makefile
FLASH_MODE=IAP
-ap.CFLAGS += -DFBW -DAP -DBOARD_CONFIG=\"tiny_1_1.h\" -DLED -DTIME_LED=1
+ap.CFLAGS += -DFBW -DAP -DBOARD_CONFIG=\"tiny_1_1.h\" -DUSE_LED -DTIME_LED=1
ap.srcs = sys_time.c $(SRC_ARCH)/sys_time_hw.c $(SRC_ARCH)/armVIC.c main_fbw.c main_ap.c main.c
ap.srcs += commands.c
@@ -218,10 +218,10 @@ ap.CFLAGS += -DRADIO_CONTROL
ap.srcs += radio_control.c $(SRC_ARCH)/ppm_hw.c
#ap.CFLAGS += -DDOWNLINK -DUSE_UART0 -DDOWNLINK_TRANSPORT=XBeeTransport -DDOWNLINK_FBW_DEVICE=Uart0 -DDOWNLINK_AP_DEVICE=Uart0 -DXBEE_UART=Uart0 -DDATALINK=XBEE -DUART0_BAUD=B9600
-#ap.srcs += downlink.c $(SRC_ARCH)/uart_hw.c datalink.c xbee.c
+#ap.srcs += downlink.c $(SRC_ARCH)/mcu_periph/uart_arch.c datalink.c xbee.c
ap.CFLAGS += -DDOWNLINK -DUSE_UART0 -DDOWNLINK_TRANSPORT=PprzTransport -DDOWNLINK_FBW_DEVICE=Uart0 -DDOWNLINK_AP_DEVICE=Uart0 -DPPRZ_UART=Uart0 -DDATALINK=PPRZ -DUART0_BAUD=B9600
-ap.srcs += downlink.c $(SRC_ARCH)/uart_hw.c datalink.c pprz_transport.c
+ap.srcs += downlink.c $(SRC_ARCH)/mcu_periph/uart_arch.c datalink.c pprz_transport.c
ap.CFLAGS += -DINTER_MCU
ap.srcs += inter_mcu.c
diff --git a/conf/airframes/mm/hangar/glass_one2.xml b/conf/airframes/mm/hangar/glass_one2.xml
index d1b53ac34e..2aa4cd4511 100644
--- a/conf/airframes/mm/hangar/glass_one2.xml
+++ b/conf/airframes/mm/hangar/glass_one2.xml
@@ -180,7 +180,7 @@ include $(PAPARAZZI_SRC)/conf/autopilot/tiny.makefile
FLASH_MODE=IAP
-ap.CFLAGS += -DFBW -DAP -DBOARD_CONFIG=\"tiny.h\" -DLED -DTIME_LED=1
+ap.CFLAGS += -DFBW -DAP -DBOARD_CONFIG=\"tiny.h\" -DUSE_LED -DTIME_LED=1
ap.srcs = sys_time.c $(SRC_ARCH)/sys_time_hw.c $(SRC_ARCH)/armVIC.c main_fbw.c main_ap.c main.c
ap.srcs += commands.c
@@ -192,10 +192,10 @@ ap.CFLAGS += -DRADIO_CONTROL
ap.srcs += radio_control.c $(SRC_ARCH)/ppm_hw.c
#ap.CFLAGS += -DDOWNLINK -DUSE_UART0 -DDOWNLINK_TRANSPORT=XBeeTransport -DDOWNLINK_FBW_DEVICE=Uart0 -DDOWNLINK_AP_DEVICE=Uart0 -DXBEE_UART=Uart0 -DDATALINK=XBEE -DUART0_BAUD=B9600
-#ap.srcs += downlink.c $(SRC_ARCH)/uart_hw.c datalink.c xbee.c
+#ap.srcs += downlink.c $(SRC_ARCH)/mcu_periph/uart_arch.c datalink.c xbee.c
ap.CFLAGS += -DDOWNLINK -DUSE_UART0 -DDOWNLINK_TRANSPORT=PprzTransport -DDOWNLINK_FBW_DEVICE=Uart0 -DDOWNLINK_AP_DEVICE=Uart0 -DPPRZ_UART=Uart0 -DDATALINK=PPRZ -DUART0_BAUD=B9600
-ap.srcs += downlink.c $(SRC_ARCH)/uart_hw.c datalink.c pprz_transport.c
+ap.srcs += downlink.c $(SRC_ARCH)/mcu_periph/uart_arch.c datalink.c pprz_transport.c
ap.CFLAGS += -DINTER_MCU
ap.srcs += inter_mcu.c
diff --git a/conf/airframes/mm/hangar/glass_one3.xml b/conf/airframes/mm/hangar/glass_one3.xml
index 8eb4e8755e..64c7c610fb 100644
--- a/conf/airframes/mm/hangar/glass_one3.xml
+++ b/conf/airframes/mm/hangar/glass_one3.xml
@@ -207,7 +207,7 @@ include $(PAPARAZZI_SRC)/conf/autopilot/tiny.makefile
FLASH_MODE=IAP
-ap.CFLAGS += -DFBW -DAP -DBOARD_CONFIG=\"tiny_1_1.h\" -DLED -DTIME_LED=1
+ap.CFLAGS += -DFBW -DAP -DBOARD_CONFIG=\"tiny_1_1.h\" -DUSE_LED -DTIME_LED=1
ap.srcs = sys_time.c $(SRC_ARCH)/sys_time_hw.c $(SRC_ARCH)/armVIC.c main_fbw.c main_ap.c main.c
ap.srcs += commands.c
@@ -219,10 +219,10 @@ ap.CFLAGS += -DRADIO_CONTROL
ap.srcs += radio_control.c $(SRC_ARCH)/ppm_hw.c
#ap.CFLAGS += -DDOWNLINK -DUSE_UART0 -DDOWNLINK_TRANSPORT=XBeeTransport -DDOWNLINK_FBW_DEVICE=Uart0 -DDOWNLINK_AP_DEVICE=Uart0 -DXBEE_UART=Uart0 -DDATALINK=XBEE -DUART0_BAUD=B9600
-#ap.srcs += downlink.c $(SRC_ARCH)/uart_hw.c datalink.c xbee.c
+#ap.srcs += downlink.c $(SRC_ARCH)/mcu_periph/uart_arch.c datalink.c xbee.c
ap.CFLAGS += -DDOWNLINK -DUSE_UART0 -DDOWNLINK_TRANSPORT=PprzTransport -DDOWNLINK_FBW_DEVICE=Uart0 -DDOWNLINK_AP_DEVICE=Uart0 -DPPRZ_UART=Uart0 -DDATALINK=PPRZ -DUART0_BAUD=B9600
-ap.srcs += downlink.c $(SRC_ARCH)/uart_hw.c datalink.c pprz_transport.c
+ap.srcs += downlink.c $(SRC_ARCH)/mcu_periph/uart_arch.c datalink.c pprz_transport.c
ap.CFLAGS += -DINTER_MCU
ap.srcs += inter_mcu.c
diff --git a/conf/airframes/mm/hangar/lila.xml b/conf/airframes/mm/hangar/lila.xml
index c93cca0366..1dd11c946a 100644
--- a/conf/airframes/mm/hangar/lila.xml
+++ b/conf/airframes/mm/hangar/lila.xml
@@ -203,7 +203,7 @@ include $(PAPARAZZI_SRC)/conf/autopilot/tiny.makefile
FLASH_MODE=IAP
-ap.CFLAGS += -DFBW -DAP -DBOARD_CONFIG=$(CONFIG) -DLED -DTIME_LED=1
+ap.CFLAGS += -DFBW -DAP -DBOARD_CONFIG=$(CONFIG) -DUSE_LED -DTIME_LED=1
ap.srcs = sys_time.c $(SRC_ARCH)/sys_time_hw.c $(SRC_ARCH)/armVIC.c main_fbw.c main_ap.c main.c
ap.srcs += commands.c
@@ -215,11 +215,11 @@ ap.CFLAGS += -DRADIO_CONTROL -DRADIO_CONTROL_TYPE=RC_FUTABA
ap.srcs += radio_control.c $(SRC_ARCH)/ppm_hw.c
ap.CFLAGS += -DDOWNLINK -DUSE_UART1 -DDOWNLINK_TRANSPORT=XBeeTransport -DXBEE_UART=Uart1 -DDATALINK=XBEE -DUART1_BAUD=B57600
-ap.srcs += downlink.c $(SRC_ARCH)/uart_hw.c datalink.c xbee.c
+ap.srcs += downlink.c $(SRC_ARCH)/mcu_periph/uart_arch.c datalink.c xbee.c
#TRANSPARENT
#ap.CFLAGS += -DDOWNLINK -DUSE_UART1 -DDOWNLINK_TRANSPORT=PprzTransport -DDOWNLINK_FBW_DEVICE=Uart1 -DDOWNLINK_AP_DEVICE=Uart1 -DPPRZ_UART=Uart1 -DDATALINK=PPRZ -DUART1_BAUD=B9600
-#ap.srcs += downlink.c $(SRC_ARCH)/uart_hw.c datalink.c pprz_transport.c
+#ap.srcs += downlink.c $(SRC_ARCH)/mcu_periph/uart_arch.c datalink.c pprz_transport.c
ap.CFLAGS += -DINTER_MCU
ap.srcs += inter_mcu.c
@@ -247,7 +247,7 @@ ap.srcs += subsystems/navigation/snav.c
# Config for SITL simulation
sim.ARCHDIR = $(ARCHI)
-sim.CFLAGS += -DSITL -DAP -DFBW -DRADIO_CONTROL -DINTER_MCU -DDOWNLINK -DDOWNLINK_TRANSPORT=IvyTransport -DUSE_INFRARED -DNAV -DLED -DWIND_INFO
+sim.CFLAGS += -DSITL -DAP -DFBW -DRADIO_CONTROL -DINTER_MCU -DDOWNLINK -DDOWNLINK_TRANSPORT=IvyTransport -DUSE_INFRARED -DNAV -DUSE_LED -DWIND_INFO
sim.srcs = latlong.c radio_control.c downlink.c commands.c gps.c inter_mcu.c infrared.c fw_h_ctl_a.c fw_v_ctl.c subsystems/nav.c estimator.c sys_time.c main_fbw.c main_ap.c datalink.c $(SRC_ARCH)/ppm_hw.c $(SRC_ARCH)/sim_gps.c $(SRC_ARCH)/sim_ir.c $(SRC_ARCH)/sim_ap.c $(SRC_ARCH)/ivy_transport.c $(SRC_ARCH)/sim_adc_generic.c $(SRC_ARCH)/led_hw.c
sim.CFLAGS += -DBOARD_CONFIG=\"tiny.h\" -DAGR_CLIMB -DLOITER_TRIM -DALT_KALMAN
diff --git a/conf/airframes/mm/hangar/mac06a.xml b/conf/airframes/mm/hangar/mac06a.xml
index e7e2240692..932014cd75 100644
--- a/conf/airframes/mm/hangar/mac06a.xml
+++ b/conf/airframes/mm/hangar/mac06a.xml
@@ -200,7 +200,7 @@ include $(PAPARAZZI_SRC)/conf/autopilot/tiny.makefile
FLASH_MODE=IAP
-ap.CFLAGS += -DFBW -DAP -DBOARD_CONFIG=\"tiny_1_1.h\" -DLED -DTIME_LED=1
+ap.CFLAGS += -DFBW -DAP -DBOARD_CONFIG=\"tiny_1_1.h\" -DUSE_LED -DTIME_LED=1
ap.srcs = sys_time.c $(SRC_ARCH)/sys_time_hw.c $(SRC_ARCH)/armVIC.c main_fbw.c main_ap.c main.c
ap.srcs += commands.c
@@ -212,10 +212,10 @@ ap.CFLAGS += -DRADIO_CONTROL
ap.srcs += radio_control.c $(SRC_ARCH)/ppm_hw.c
#XBEE ap.CFLAGS += -DDOWNLINK -DUSE_UART0 -DDOWNLINK_TRANSPORT=XBeeTransport -DDOWNLINK_FBW_DEVICE=Uart0 -DDOWNLINK_AP_DEVICE=Uart0 -DXBEE_UART=Uart0 -DDATALINK=XBEE -DUART0_BAUD=B9600
-#XBEE ap.srcs += downlink.c $(SRC_ARCH)/uart_hw.c datalink.c xbee.c
+#XBEE ap.srcs += downlink.c $(SRC_ARCH)/mcu_periph/uart_arch.c datalink.c xbee.c
ap.CFLAGS += -DDOWNLINK -DUSE_UART0 -DDOWNLINK_TRANSPORT=PprzTransport -DDOWNLINK_FBW_DEVICE=Uart0 -DDOWNLINK_AP_DEVICE=Uart0 -DPPRZ_UART=Uart0 -DDATALINK=PPRZ -DUART0_BAUD=B9600
-ap.srcs += downlink.c $(SRC_ARCH)/uart_hw.c datalink.c pprz_transport.c
+ap.srcs += downlink.c $(SRC_ARCH)/mcu_periph/uart_arch.c datalink.c pprz_transport.c
ap.CFLAGS += -DINTER_MCU
diff --git a/conf/airframes/mm/hangar/red_one.xml b/conf/airframes/mm/hangar/red_one.xml
index e2aca5ec54..887601c421 100644
--- a/conf/airframes/mm/hangar/red_one.xml
+++ b/conf/airframes/mm/hangar/red_one.xml
@@ -227,7 +227,7 @@ include $(PAPARAZZI_SRC)/conf/autopilot/tiny.makefile
FLASH_MODE=IAP
-ap.CFLAGS += -DFBW -DAP -DBOARD_CONFIG=\"tiny_1_1.h\" -DLED -DTIME_LED=1
+ap.CFLAGS += -DFBW -DAP -DBOARD_CONFIG=\"tiny_1_1.h\" -DUSE_LED -DTIME_LED=1
ap.srcs = sys_time.c $(SRC_ARCH)/sys_time_hw.c $(SRC_ARCH)/armVIC.c main_fbw.c main_ap.c main.c
ap.srcs += commands.c
@@ -239,10 +239,10 @@ ap.CFLAGS += -DRADIO_CONTROL
ap.srcs += radio_control.c $(SRC_ARCH)/ppm_hw.c
#ap.CFLAGS += -DDOWNLINK -DUSE_UART0 -DDOWNLINK_TRANSPORT=XBeeTransport -DDOWNLINK_FBW_DEVICE=Uart0 -DDOWNLINK_AP_DEVICE=Uart0 -DXBEE_UART=Uart0 -DDATALINK=XBEE -DUART0_BAUD=B9600
-#ap.srcs += downlink.c $(SRC_ARCH)/uart_hw.c datalink.c xbee.c
+#ap.srcs += downlink.c $(SRC_ARCH)/mcu_periph/uart_arch.c datalink.c xbee.c
ap.CFLAGS += -DDOWNLINK -DUSE_UART0 -DDOWNLINK_TRANSPORT=PprzTransport -DDOWNLINK_FBW_DEVICE=Uart0 -DDOWNLINK_AP_DEVICE=Uart0 -DPPRZ_UART=Uart0 -DDATALINK=PPRZ -DUART0_BAUD=B9600
-ap.srcs += downlink.c $(SRC_ARCH)/uart_hw.c datalink.c pprz_transport.c
+ap.srcs += downlink.c $(SRC_ARCH)/mcu_periph/uart_arch.c datalink.c pprz_transport.c
ap.CFLAGS += -DINTER_MCU
ap.srcs += inter_mcu.c
diff --git a/conf/airframes/obsolete/dc_mc.xml b/conf/airframes/obsolete/dc_mc.xml
index fa94047805..76e6aff207 100644
--- a/conf/airframes/obsolete/dc_mc.xml
+++ b/conf/airframes/obsolete/dc_mc.xml
@@ -20,11 +20,11 @@ main.srcs = main_dc_mc.c
main.CFLAGS += -DPERIODIC_TASK_PERIOD='SYS_TICS_OF_SEC(10e-2)'
main.srcs += sys_time.c $(SRC_ARCH)/sys_time_hw.c
-main.CFLAGS += -DLED
+main.CFLAGS += -DUSE_LED
#-DTIME_LED=1
main.CFLAGS += -DUSE_UART0 -DUART0_BAUD=B38400
-main.srcs += $(SRC_ARCH)/uart_hw.c
+main.srcs += $(SRC_ARCH)/mcu_periph/uart_arch.c
main.CFLAGS += -DDOWNLINK -DDOWNLINK_TRANSPORT=PprzTransport -DDOWNLINK_DEVICE=Uart0
main.srcs += downlink.c pprz_transport.c
diff --git a/conf/airframes/obsolete/easystar2.xml b/conf/airframes/obsolete/easystar2.xml
index 2ebf40831f..bc44601368 100644
--- a/conf/airframes/obsolete/easystar2.xml
+++ b/conf/airframes/obsolete/easystar2.xml
@@ -178,7 +178,7 @@ include $(PAPARAZZI_SRC)/conf/autopilot/tiny.makefile
FLASH_MODE=IAP
-ap.CFLAGS += -DFBW -DAP -DBOARD_CONFIG=$(CONFIG) -DLED -DTIME_LED=1 -DUSE_MODULES
+ap.CFLAGS += -DFBW -DAP -DBOARD_CONFIG=$(CONFIG) -DUSE_LED -DTIME_LED=1 -DUSE_MODULES
ap.srcs = sys_time.c $(SRC_ARCH)/sys_time_hw.c $(SRC_ARCH)/armVIC.c main_fbw.c main_ap.c main.c
ap.srcs += commands.c
@@ -193,7 +193,7 @@ ap.srcs += radio_control.c $(SRC_ARCH)/ppm_hw.c
# Telemetry configuration
ap.CFLAGS += -DDOWNLINK -DUSE_UART1 -DDOWNLINK_TRANSPORT=PprzTransport -DDOWNLINK_FBW_DEVICE=Uart1 -DDOWNLINK_AP_DEVICE=Uart1 -DPPRZ_UART=Uart1 -DDATALINK=PPRZ -DUART1_BAUD=B57600
-ap.srcs += downlink.c $(SRC_ARCH)/uart_hw.c datalink.c pprz_transport.c
+ap.srcs += downlink.c $(SRC_ARCH)/mcu_periph/uart_arch.c datalink.c pprz_transport.c
ap.CFLAGS += -DINTER_MCU
ap.srcs += inter_mcu.c
diff --git a/conf/airframes/obsolete/example.xml b/conf/airframes/obsolete/example.xml
index 81bd9b7c2b..e225a43a4d 100644
--- a/conf/airframes/obsolete/example.xml
+++ b/conf/airframes/obsolete/example.xml
@@ -20,12 +20,12 @@ example_gps.srcs = example/example_gps.c
example_gps.CFLAGS += -DPERIODIC_TASK_PERIOD='SYS_TICS_OF_SEC(10e-2)'
example_gps.srcs += sys_time.c $(SRC_ARCH)/sys_time_hw.c
-example_gps.CFLAGS += -DLED
+example_gps.CFLAGS += -DUSE_LED
example_gps.srcs += $(SRC_ARCH)/armVIC.c
example_gps.CFLAGS += -DUSE_UART0 -DUART0_BAUD=B38400
-example_gps.srcs += $(SRC_ARCH)/uart_hw.c
+example_gps.srcs += $(SRC_ARCH)/mcu_periph/uart_arch.c
example_gps.CFLAGS += -DDOWNLINK -DDOWNLINK_TRANSPORT=PprzTransport -DDOWNLINK_DEVICE=Uart0
example_gps.srcs += downlink.c pprz_transport.c
diff --git a/conf/airframes/obsolete/kalscott_easystar.xml b/conf/airframes/obsolete/kalscott_easystar.xml
index 6f5519ba87..b56de424ca 100644
--- a/conf/airframes/obsolete/kalscott_easystar.xml
+++ b/conf/airframes/obsolete/kalscott_easystar.xml
@@ -158,7 +158,7 @@ include $(PAPARAZZI_SRC)/conf/autopilot/tiny.makefile
FLASH_MODE=IAP
-ap.CFLAGS += -DFBW -DAP -DBOARD_CONFIG=$(CONFIG) -DLED -DTIME_LED=1 -DUSE_MODULES
+ap.CFLAGS += -DFBW -DAP -DBOARD_CONFIG=$(CONFIG) -DUSE_LED -DTIME_LED=1 -DUSE_MODULES
ap.srcs = sys_time.c $(SRC_ARCH)/sys_time_hw.c $(SRC_ARCH)/armVIC.c main_fbw.c main_ap.c main.c
ap.srcs += commands.c
@@ -173,7 +173,7 @@ ap.srcs += radio_control.c $(SRC_ARCH)/ppm_hw.c
# Telemetry configuration
ap.CFLAGS += -DDOWNLINK -DUSE_UART1 -DDOWNLINK_TRANSPORT=PprzTransport -DDOWNLINK_FBW_DEVICE=Uart1 -DDOWNLINK_AP_DEVICE=Uart1 -DPPRZ_UART=Uart1 -DDATALINK=PPRZ -DUART1_BAUD=B57600
-ap.srcs += downlink.c $(SRC_ARCH)/uart_hw.c datalink.c pprz_transport.c
+ap.srcs += downlink.c $(SRC_ARCH)/mcu_periph/uart_arch.c datalink.c pprz_transport.c
ap.CFLAGS += -DINTER_MCU
ap.srcs += inter_mcu.c
diff --git a/conf/airframes/obsolete/microjet5.xml b/conf/airframes/obsolete/microjet5.xml
index 418d2ba25f..5a7971bc76 100644
--- a/conf/airframes/obsolete/microjet5.xml
+++ b/conf/airframes/obsolete/microjet5.xml
@@ -175,7 +175,7 @@ include $(PAPARAZZI_SRC)/conf/autopilot/tiny.makefile
FLASH_MODE=IAP
-ap.CFLAGS += -DFBW -DAP -DBOARD_CONFIG=$(CONFIG) -DLED -DTIME_LED=1
+ap.CFLAGS += -DFBW -DAP -DBOARD_CONFIG=$(CONFIG) -DUSE_LED -DTIME_LED=1
ap.srcs = sys_time.c $(SRC_ARCH)/sys_time_hw.c $(SRC_ARCH)/armVIC.c main_fbw.c main_ap.c main.c
ap.srcs += commands.c
@@ -187,7 +187,7 @@ ap.CFLAGS += -DRADIO_CONTROL
ap.srcs += radio_control.c $(SRC_ARCH)/ppm_hw.c
ap.CFLAGS += -DDOWNLINK -DUSE_UART1 -DDOWNLINK_TRANSPORT=PprzTransport -DDOWNLINK_FBW_DEVICE=Uart1 -DDOWNLINK_AP_DEVICE=Uart1 -DPPRZ_UART=Uart1 -DDATALINK=PPRZ -DUART1_BAUD=B9600
-ap.srcs += downlink.c $(SRC_ARCH)/uart_hw.c datalink.c pprz_transport.c
+ap.srcs += downlink.c $(SRC_ARCH)/mcu_periph/uart_arch.c datalink.c pprz_transport.c
ap.CFLAGS += -DINTER_MCU
ap.srcs += inter_mcu.c
diff --git a/conf/airframes/obsolete/microjet5_tp_auto.xml b/conf/airframes/obsolete/microjet5_tp_auto.xml
index 2202e38386..5e2287cacd 100644
--- a/conf/airframes/obsolete/microjet5_tp_auto.xml
+++ b/conf/airframes/obsolete/microjet5_tp_auto.xml
@@ -177,10 +177,10 @@ include $(PAPARAZZI_SRC)/conf/autopilot/tiny.makefile
FLASH_MODE=IAP
-ap.CFLAGS += -DFBW -DAP -DBOARD_CONFIG=\"tiny.h\" -DLED -DTIME_LED=1
+ap.CFLAGS += -DFBW -DAP -DBOARD_CONFIG=\"tiny.h\" -DUSE_LED -DTIME_LED=1
ap.srcs = sys_time.c $(SRC_ARCH)/sys_time_hw.c $(SRC_ARCH)/armVIC.c main_fbw.c main_ap.c main.c
-ap.CFLAGS += -DLED_3_BANK=0 -DLED_3_PIN=17 -DLED_4_BANK=0 -DLED_4_PIN=18 -DLED_5_BANK=0 -DLED_5_PIN=19 -DLED_6_BANK=0 -DLED_6_PIN=20
+ap.CFLAGS += -DUSE_LED_3_BANK=0 -DUSE_LED_3_PIN=17 -DUSE_LED_4_BANK=0 -DUSE_LED_4_PIN=18 -DUSE_LED_5_BANK=0 -DUSE_LED_5_PIN=19 -DUSE_LED_6_BANK=0 -DUSE_LED_6_PIN=20
ap.srcs += commands.c
@@ -192,10 +192,10 @@ ap.CFLAGS += -DRADIO_CONTROL
ap.srcs += radio_control.c $(SRC_ARCH)/ppm_hw.c
#ap.CFLAGS += -DDOWNLINK -DUSE_UART0 -DDOWNLINK_TRANSPORT=XBeeTransport -DDOWNLINK_FBW_DEVICE=Uart0 -DDOWNLINK_AP_DEVICE=Uart0 -DXBEE_UART=Uart0 -DDATALINK=XBEE -DUART0_BAUD=B9600
-#ap.srcs += downlink.c $(SRC_ARCH)/uart_hw.c datalink.c xbee.c
+#ap.srcs += downlink.c $(SRC_ARCH)/mcu_periph/uart_arch.c datalink.c xbee.c
ap.CFLAGS += -DDOWNLINK -DUSE_UART0 -DDOWNLINK_TRANSPORT=PprzTransport -DDOWNLINK_FBW_DEVICE=Uart0 -DDOWNLINK_AP_DEVICE=Uart0 -DPPRZ_UART=Uart0 -DDATALINK=PPRZ -DUART0_BAUD=B57600
-ap.srcs += downlink.c $(SRC_ARCH)/uart_hw.c datalink.c pprz_transport.c latlong.c
+ap.srcs += downlink.c $(SRC_ARCH)/mcu_periph/uart_arch.c datalink.c pprz_transport.c latlong.c
ap.CFLAGS += -DINTER_MCU
diff --git a/conf/airframes/obsolete/microjet6.xml b/conf/airframes/obsolete/microjet6.xml
index b253366e0c..71f9184796 100644
--- a/conf/airframes/obsolete/microjet6.xml
+++ b/conf/airframes/obsolete/microjet6.xml
@@ -200,7 +200,7 @@ include $(PAPARAZZI_SRC)/conf/autopilot/tiny.makefile
FLASH_MODE=IAP
-ap.CFLAGS += -DFBW -DAP -DBOARD_CONFIG=\"tiny_1_1.h\" -DLED -DTIME_LED=1
+ap.CFLAGS += -DFBW -DAP -DBOARD_CONFIG=\"tiny_1_1.h\" -DUSE_LED -DTIME_LED=1
ap.srcs = sys_time.c $(SRC_ARCH)/sys_time_hw.c $(SRC_ARCH)/armVIC.c main_fbw.c main_ap.c main.c
ap.srcs += commands.c
@@ -213,11 +213,11 @@ ap.srcs += radio_control.c $(SRC_ARCH)/ppm_hw.c
# API mode
# ap.CFLAGS += -DDOWNLINK -DUSE_UART0 -DDOWNLINK_TRANSPORT=XBeeTransport -DDOWNLINK_FBW_DEVICE=Uart0 -DDOWNLINK_AP_DEVICE=Uart0 -DXBEE_UART=Uart0 -DDATALINK=XBEE -DUART0_BAUD=B57600
-# ap.srcs += downlink.c $(SRC_ARCH)/uart_hw.c datalink.c xbee.c
+# ap.srcs += downlink.c $(SRC_ARCH)/mcu_periph/uart_arch.c datalink.c xbee.c
# transparent
ap.CFLAGS += -DDOWNLINK -DUSE_UART0 -DDOWNLINK_TRANSPORT=PprzTransport -DDOWNLINK_FBW_DEVICE=Uart0 -DDOWNLINK_AP_DEVICE=Uart0 -DPPRZ_UART=Uart0 -DDATALINK=PPRZ -DUART0_BAUD=B9600
-ap.srcs += downlink.c $(SRC_ARCH)/uart_hw.c datalink.c pprz_transport.c
+ap.srcs += downlink.c $(SRC_ARCH)/mcu_periph/uart_arch.c datalink.c pprz_transport.c
ap.CFLAGS += -DINTER_MCU
diff --git a/conf/airframes/obsolete/microjetI.xml b/conf/airframes/obsolete/microjetI.xml
index ed08e55f50..1be67762ec 100644
--- a/conf/airframes/obsolete/microjetI.xml
+++ b/conf/airframes/obsolete/microjetI.xml
@@ -187,7 +187,7 @@ include $(PAPARAZZI_SRC)/conf/autopilot/tiny.makefile
FLASH_MODE=IAP
-ap.CFLAGS += -DFBW -DAP -DBOARD_CONFIG=\"tiny_1_1.h\" -DLED -DTIME_LED=1
+ap.CFLAGS += -DFBW -DAP -DBOARD_CONFIG=\"tiny_1_1.h\" -DUSE_LED -DTIME_LED=1
ap.srcs = sys_time.c $(SRC_ARCH)/sys_time_hw.c $(SRC_ARCH)/armVIC.c main_fbw.c main_ap.c main.c
ap.srcs += commands.c
@@ -200,11 +200,11 @@ ap.CFLAGS += -DRADIO_CONTROL
ap.srcs += radio_control.c $(SRC_ARCH)/ppm_hw.c
ap.CFLAGS += -DDOWNLINK -DUSE_UART0 -DDOWNLINK_TRANSPORT=XBeeTransport -DDOWNLINK_FBW_DEVICE=Uart0 -DDOWNLINK_AP_DEVICE=Uart0 -DXBEE_UART=Uart0 -DDATALINK=XBEE -DUART0_BAUD=B19200
-ap.srcs += downlink.c $(SRC_ARCH)/uart_hw.c datalink.c xbee.c
+ap.srcs += downlink.c $(SRC_ARCH)/mcu_periph/uart_arch.c datalink.c xbee.c
# transparent
# ap.CFLAGS += -DDOWNLINK -DUSE_UART0 -DDOWNLINK_TRANSPORT=PprzTransport -DDOWNLINK_FBW_DEVICE=Uart0 -DDOWNLINK_AP_DEVICE=Uart0 -DPPRZ_UART=Uart0 -DDATALINK=PPRZ -DUART0_BAUD=B9600
-# ap.srcs += downlink.c $(SRC_ARCH)/uart_hw.c datalink.c pprz_transport.c
+# ap.srcs += downlink.c $(SRC_ARCH)/mcu_periph/uart_arch.c datalink.c pprz_transport.c
ap.CFLAGS += -DINTER_MCU
diff --git a/conf/airframes/obsolete/microjetII.xml b/conf/airframes/obsolete/microjetII.xml
index 1948c1959d..913e68d99b 100644
--- a/conf/airframes/obsolete/microjetII.xml
+++ b/conf/airframes/obsolete/microjetII.xml
@@ -187,7 +187,7 @@ include $(PAPARAZZI_SRC)/conf/autopilot/tiny.makefile
FLASH_MODE=IAP
-ap.CFLAGS += -DFBW -DAP -DBOARD_CONFIG=\"tiny_1_1.h\" -DLED -DTIME_LED=1
+ap.CFLAGS += -DFBW -DAP -DBOARD_CONFIG=\"tiny_1_1.h\" -DUSE_LED -DTIME_LED=1
ap.srcs = sys_time.c $(SRC_ARCH)/sys_time_hw.c $(SRC_ARCH)/armVIC.c main_fbw.c main_ap.c main.c
ap.srcs += commands.c
@@ -200,11 +200,11 @@ ap.CFLAGS += -DRADIO_CONTROL
ap.srcs += radio_control.c $(SRC_ARCH)/ppm_hw.c
ap.CFLAGS += -DDOWNLINK -DUSE_UART0 -DDOWNLINK_TRANSPORT=XBeeTransport -DDOWNLINK_FBW_DEVICE=Uart0 -DDOWNLINK_AP_DEVICE=Uart0 -DXBEE_UART=Uart0 -DDATALINK=XBEE -DUART0_BAUD=B19200
-ap.srcs += downlink.c $(SRC_ARCH)/uart_hw.c datalink.c xbee.c
+ap.srcs += downlink.c $(SRC_ARCH)/mcu_periph/uart_arch.c datalink.c xbee.c
# transparent
#ap.CFLAGS += -DDOWNLINK -DUSE_UART0 -DDOWNLINK_TRANSPORT=PprzTransport -DDOWNLINK_FBW_DEVICE=Uart0 -DDOWNLINK_AP_DEVICE=Uart0 -DPPRZ_UART=Uart0 -DDATALINK=PPRZ -DUART0_BAUD=B9600
-#ap.srcs += downlink.c $(SRC_ARCH)/uart_hw.c datalink.c pprz_transport.c
+#ap.srcs += downlink.c $(SRC_ARCH)/mcu_periph/uart_arch.c datalink.c pprz_transport.c
ap.CFLAGS += -DINTER_MCU
diff --git a/conf/airframes/obsolete/microjetIII.xml b/conf/airframes/obsolete/microjetIII.xml
index 36df078b8c..4697f6e2cc 100644
--- a/conf/airframes/obsolete/microjetIII.xml
+++ b/conf/airframes/obsolete/microjetIII.xml
@@ -176,7 +176,7 @@ include $(PAPARAZZI_SRC)/conf/autopilot/tiny.makefile
FLASH_MODE=IAP
-ap.CFLAGS += -DFBW -DAP -DBOARD_CONFIG=$(CONFIG) -DLED -DTIME_LED=1
+ap.CFLAGS += -DFBW -DAP -DBOARD_CONFIG=$(CONFIG) -DUSE_LED -DTIME_LED=1
ap.srcs = sys_time.c $(SRC_ARCH)/sys_time_hw.c $(SRC_ARCH)/armVIC.c main_fbw.c main_ap.c main.c
ap.srcs += commands.c
@@ -189,11 +189,11 @@ ap.CFLAGS += -DRADIO_CONTROL
ap.srcs += radio_control.c $(SRC_ARCH)/ppm_hw.c
ap.CFLAGS += -DDOWNLINK -DUSE_UART0 -DDOWNLINK_TRANSPORT=XBeeTransport -DDOWNLINK_FBW_DEVICE=Uart0 -DDOWNLINK_AP_DEVICE=Uart0 -DXBEE_UART=Uart0 -DDATALINK=XBEE -DUART0_BAUD=B9600
-ap.srcs += downlink.c $(SRC_ARCH)/uart_hw.c datalink.c xbee.c
+ap.srcs += downlink.c $(SRC_ARCH)/mcu_periph/uart_arch.c datalink.c xbee.c
# transparent
#ap.CFLAGS += -DDOWNLINK -DUSE_UART0 -DDOWNLINK_TRANSPORT=PprzTransport -DDOWNLINK_FBW_DEVICE=Uart0 -DDOWNLINK_AP_DEVICE=Uart0 -DPPRZ_UART=Uart0 -DDATALINK=PPRZ -DUART0_BAUD=B57600
-#ap.srcs += downlink.c $(SRC_ARCH)/uart_hw.c datalink.c pprz_transport.c
+#ap.srcs += downlink.c $(SRC_ARCH)/mcu_periph/uart_arch.c datalink.c pprz_transport.c
ap.CFLAGS += -DINTER_MCU
diff --git a/conf/airframes/obsolete/minimag_fs.xml b/conf/airframes/obsolete/minimag_fs.xml
index 4e5aa431e1..2f73162216 100644
--- a/conf/airframes/obsolete/minimag_fs.xml
+++ b/conf/airframes/obsolete/minimag_fs.xml
@@ -182,7 +182,7 @@ include $(PAPARAZZI_SRC)/conf/autopilot/tiny.makefile
FLASH_MODE=IAP
-ap.CFLAGS += -DFBW -DAP -DBOARD_CONFIG=\"tiny_1_1.h\" -DLED -DTIME_LED=1
+ap.CFLAGS += -DFBW -DAP -DBOARD_CONFIG=\"tiny_1_1.h\" -DUSE_LED -DTIME_LED=1
ap.srcs = sys_time.c $(SRC_ARCH)/sys_time_hw.c $(SRC_ARCH)/armVIC.c main_fbw.c main_ap.c main.c
ap.srcs += commands.c
@@ -195,7 +195,7 @@ ap.srcs += radio_control.c $(SRC_ARCH)/ppm_hw.c
ap.CFLAGS += -DDOWNLINK -DUSE_UART0 -DDOWNLINK_TRANSPORT=PprzTransport -DDOWNLINK_FBW_DEVICE=Uart0 -DDOWNLINK_AP_DEVICE=Uart0 -DPPRZ_UART=Uart0 -DDATALINK=PPRZ -DUART0_BAUD=B57600
-ap.srcs += downlink.c $(SRC_ARCH)/uart_hw.c datalink.c pprz_transport.c
+ap.srcs += downlink.c $(SRC_ARCH)/mcu_periph/uart_arch.c datalink.c pprz_transport.c
ap.CFLAGS += -DINTER_MCU
diff --git a/conf/airframes/obsolete/nova.xml b/conf/airframes/obsolete/nova.xml
index 365565a847..256c6ae89e 100644
--- a/conf/airframes/obsolete/nova.xml
+++ b/conf/airframes/obsolete/nova.xml
@@ -11,10 +11,10 @@ timu.ARCHDIR = $(ARCHI)
timu.CFLAGS += -DBOARD_CONFIG=\"tiny_2_0.h\" -DPERIODIC_TASK_PERIOD='SYS_TICS_OF_SEC(1e-1)'
timu.srcs = nova_test_imu.c sys_time.c $(SRC_ARCH)/sys_time_hw.c $(SRC_ARCH)/armVIC.c
-timu.CFLAGS += -DLED -DLED -DTIME_LED=1
+timu.CFLAGS += -DUSE_LED -DUSE_LED -DTIME_LED=1
timu.CFLAGS += -DDOWNLINK -DUSE_UART1 -DDOWNLINK_TRANSPORT=PprzTransport -DDOWNLINK_DEVICE=Uart1 -DPPRZ_UART=Uart1 -DDATALINK=PPRZ -DUART1_BAUD=B9600
-timu.srcs += downlink.c $(SRC_ARCH)/uart_hw.c pprz_transport.c
+timu.srcs += downlink.c $(SRC_ARCH)/mcu_periph/uart_arch.c pprz_transport.c
timu.srcs += $(SRC_ARCH)/ADS8344.c
diff --git a/conf/airframes/obsolete/slayer1.xml b/conf/airframes/obsolete/slayer1.xml
index 086cbd8421..d44389ac6e 100644
--- a/conf/airframes/obsolete/slayer1.xml
+++ b/conf/airframes/obsolete/slayer1.xml
@@ -192,7 +192,7 @@ include $(PAPARAZZI_SRC)/conf/autopilot/tiny.makefile
FLASH_MODE=IAP
-ap.CFLAGS += -DFBW -DAP -DBOARD_CONFIG=\"tiny_1_1.h\" -DLED -DTIME_LED=1
+ap.CFLAGS += -DFBW -DAP -DBOARD_CONFIG=\"tiny_1_1.h\" -DUSE_LED -DTIME_LED=1
ap.srcs = sys_time.c $(SRC_ARCH)/sys_time_hw.c $(SRC_ARCH)/armVIC.c main_fbw.c main_ap.c main.c
ap.srcs += commands.c
@@ -204,10 +204,10 @@ ap.CFLAGS += -DRADIO_CONTROL
ap.srcs += radio_control.c $(SRC_ARCH)/ppm_hw.c
ap.CFLAGS += -DDOWNLINK -DUSE_UART0 -DDOWNLINK_TRANSPORT=XBeeTransport -DDOWNLINK_FBW_DEVICE=Uart0 -DDOWNLINK_AP_DEVICE=Uart0 -DXBEE_UART=Uart0 -DDATALINK=XBEE -DUART0_BAUD=B9600 -DXBEE868
-ap.srcs += downlink.c $(SRC_ARCH)/uart_hw.c datalink.c latlong.c xbee.c
+ap.srcs += downlink.c $(SRC_ARCH)/mcu_periph/uart_arch.c datalink.c latlong.c xbee.c
#transp ap.CFLAGS += -DDOWNLINK -DUSE_UART0 -DDOWNLINK_TRANSPORT=PprzTransport -DDOWNLINK_FBW_DEVICE=Uart0 -DDOWNLINK_AP_DEVICE=Uart0 -DPPRZ_UART=Uart0 -DDATALINK=PPRZ -DUART0_BAUD=B9600
-#transp ap.srcs += downlink.c $(SRC_ARCH)/uart_hw.c datalink.c pprz_transport.c
+#transp ap.srcs += downlink.c $(SRC_ARCH)/mcu_periph/uart_arch.c datalink.c pprz_transport.c
ap.CFLAGS += -DINTER_MCU
diff --git a/conf/airframes/obsolete/slayer3.xml b/conf/airframes/obsolete/slayer3.xml
index 928b3c88d8..b6f57d2451 100644
--- a/conf/airframes/obsolete/slayer3.xml
+++ b/conf/airframes/obsolete/slayer3.xml
@@ -194,7 +194,7 @@ include $(PAPARAZZI_SRC)/conf/autopilot/tiny.makefile
FLASH_MODE=IAP
-ap.CFLAGS += -DFBW -DAP -DBOARD_CONFIG=\"tiny.h\" -DLED -DTIME_LED=1
+ap.CFLAGS += -DFBW -DAP -DBOARD_CONFIG=\"tiny.h\" -DUSE_LED -DTIME_LED=1
ap.srcs = sys_time.c $(SRC_ARCH)/sys_time_hw.c $(SRC_ARCH)/armVIC.c main_fbw.c main_ap.c main.c
ap.srcs += commands.c
@@ -206,10 +206,10 @@ ap.CFLAGS += -DRADIO_CONTROL
ap.srcs += radio_control.c $(SRC_ARCH)/ppm_hw.c
ap.CFLAGS += -DDOWNLINK -DUSE_UART0 -DDOWNLINK_TRANSPORT=XBeeTransport -DDOWNLINK_FBW_DEVICE=Uart0 -DDOWNLINK_AP_DEVICE=Uart0 -DXBEE_UART=Uart0 -DDATALINK=XBEE -DUART0_BAUD=B9600
-ap.srcs += downlink.c $(SRC_ARCH)/uart_hw.c datalink.c xbee.c
+ap.srcs += downlink.c $(SRC_ARCH)/mcu_periph/uart_arch.c datalink.c xbee.c
#TRANSPARENT ap.CFLAGS += -DDOWNLINK -DUSE_UART0 -DDOWNLINK_TRANSPORT=PprzTransport -DDOWNLINK_FBW_DEVICE=Uart0 -DDOWNLINK_AP_DEVICE=Uart0 -DPPRZ_UART=Uart0 -DDATALINK=PPRZ -DUART0_BAUD=B9600
-#TRANSPARENT ap.srcs += downlink.c $(SRC_ARCH)/uart_hw.c datalink.c pprz_transport.c
+#TRANSPARENT ap.srcs += downlink.c $(SRC_ARCH)/mcu_periph/uart_arch.c datalink.c pprz_transport.c
ap.CFLAGS += -DINTER_MCU
diff --git a/conf/airframes/obsolete/slayerJH.xml b/conf/airframes/obsolete/slayerJH.xml
index 48b830b90b..2cec49a721 100644
--- a/conf/airframes/obsolete/slayerJH.xml
+++ b/conf/airframes/obsolete/slayerJH.xml
@@ -175,7 +175,7 @@ include $(PAPARAZZI_SRC)/conf/autopilot/tiny.makefile
FLASH_MODE=IAP
-ap.CFLAGS += -DFBW -DAP -DBOARD_CONFIG=\"tiny_1_1.h\" -DLED -DTIME_LED=1
+ap.CFLAGS += -DFBW -DAP -DBOARD_CONFIG=\"tiny_1_1.h\" -DUSE_LED -DTIME_LED=1
ap.srcs = sys_time.c $(SRC_ARCH)/sys_time_hw.c $(SRC_ARCH)/armVIC.c main_fbw.c main_ap.c main.c
ap.srcs += commands.c
@@ -188,11 +188,11 @@ ap.srcs += radio_control.c $(SRC_ARCH)/ppm_hw.c
#MAXSTREAM
#ap.CFLAGS += -DDOWNLINK -DUSE_UART0 -DDOWNLINK_TRANSPORT=XBeeTransport -DDOWNLINK_FBW_DEVICE=Uart0 -DDOWNLINK_AP_DEVICE=Uart0 -DXBEE_UART=Uart0 -DDATALINK=XBEE -DUART0_BAUD=B9600
-#ap.srcs += downlink.c $(SRC_ARCH)/uart_hw.c datalink.c xbee.c
+#ap.srcs += downlink.c $(SRC_ARCH)/mcu_periph/uart_arch.c datalink.c xbee.c
#TRANSPARENT
ap.CFLAGS += -DDOWNLINK -DUSE_UART0 -DDOWNLINK_TRANSPORT=PprzTransport -DDOWNLINK_FBW_DEVICE=Uart0 -DDOWNLINK_AP_DEVICE=Uart0 -DPPRZ_UART=Uart0 -DDATALINK=PPRZ -DUART0_BAUD=B57600
-ap.srcs += downlink.c $(SRC_ARCH)/uart_hw.c datalink.c pprz_transport.c
+ap.srcs += downlink.c $(SRC_ARCH)/mcu_periph/uart_arch.c datalink.c pprz_transport.c
ap.CFLAGS += -DINTER_MCU
diff --git a/conf/airframes/obsolete/slicer1.xml b/conf/airframes/obsolete/slicer1.xml
index 3cd8b34397..784f96a463 100644
--- a/conf/airframes/obsolete/slicer1.xml
+++ b/conf/airframes/obsolete/slicer1.xml
@@ -186,7 +186,7 @@ include $(PAPARAZZI_SRC)/conf/autopilot/tiny.makefile
FLASH_MODE=IAP
-ap.CFLAGS += -DFBW -DAP -DBOARD_CONFIG=$(CONFIG) -DLED -DTIME_LED=1
+ap.CFLAGS += -DFBW -DAP -DBOARD_CONFIG=$(CONFIG) -DUSE_LED -DTIME_LED=1
ap.srcs = sys_time.c $(SRC_ARCH)/sys_time_hw.c $(SRC_ARCH)/armVIC.c main_fbw.c main_ap.c main.c
ap.srcs += commands.c
@@ -200,7 +200,7 @@ ap.srcs += radio_control.c $(SRC_ARCH)/ppm_hw.c
# Radiotronix
ap.CFLAGS += -DDOWNLINK -DUSE_UART0 -DDOWNLINK_TRANSPORT=PprzTransport -DDOWNLINK_FBW_DEVICE=Uart0 -DDOWNLINK_AP_DEVICE=Uart0 -DPPRZ_UART=Uart0 -DDATALINK=PPRZ -DUART0_BAUD=B9600
-ap.srcs += downlink.c $(SRC_ARCH)/uart_hw.c datalink.c pprz_transport.c
+ap.srcs += downlink.c $(SRC_ARCH)/mcu_periph/uart_arch.c datalink.c pprz_transport.c
ap.CFLAGS += -DINTER_MCU
ap.srcs += inter_mcu.c
diff --git a/conf/airframes/obsolete/slicer2.xml b/conf/airframes/obsolete/slicer2.xml
index 0311507969..2705338724 100644
--- a/conf/airframes/obsolete/slicer2.xml
+++ b/conf/airframes/obsolete/slicer2.xml
@@ -168,7 +168,7 @@ include $(PAPARAZZI_SRC)/conf/autopilot/tiny.makefile
FLASH_MODE=IAP
-ap.CFLAGS += -DFBW -DAP -DBOARD_CONFIG=$(CONFIG) -DLED -DTIME_LED=1
+ap.CFLAGS += -DFBW -DAP -DBOARD_CONFIG=$(CONFIG) -DUSE_LED -DTIME_LED=1
ap.srcs = sys_time.c $(SRC_ARCH)/sys_time_hw.c $(SRC_ARCH)/armVIC.c main_fbw.c main_ap.c main.c
ap.srcs += commands.c
@@ -182,7 +182,7 @@ ap.srcs += radio_control.c $(SRC_ARCH)/ppm_hw.c
# Radiotronix
ap.CFLAGS += -DDOWNLINK -DUSE_UART0 -DDOWNLINK_TRANSPORT=PprzTransport -DDOWNLINK_FBW_DEVICE=Uart0 -DDOWNLINK_AP_DEVICE=Uart0 -DPPRZ_UART=Uart0 -DDATALINK=PPRZ -DUART0_BAUD=B9600
-ap.srcs += downlink.c $(SRC_ARCH)/uart_hw.c datalink.c pprz_transport.c
+ap.srcs += downlink.c $(SRC_ARCH)/mcu_periph/uart_arch.c datalink.c pprz_transport.c
ap.CFLAGS += -DINTER_MCU
ap.srcs += inter_mcu.c
diff --git a/conf/airframes/obsolete/spirit.xml b/conf/airframes/obsolete/spirit.xml
index 53c1dc9c9e..ed3b0b5b42 100644
--- a/conf/airframes/obsolete/spirit.xml
+++ b/conf/airframes/obsolete/spirit.xml
@@ -185,7 +185,7 @@ include $(PAPARAZZI_SRC)/conf/autopilot/tiny.makefile
FLASH_MODE=IAP
-ap.CFLAGS += -DFBW -DAP -DBOARD_CONFIG=$(CONFIG) -DLED -DTIME_LED=1
+ap.CFLAGS += -DFBW -DAP -DBOARD_CONFIG=$(CONFIG) -DUSE_LED -DTIME_LED=1
ap.srcs = sys_time.c $(SRC_ARCH)/sys_time_hw.c $(SRC_ARCH)/armVIC.c main_fbw.c main_ap.c main.c
ap.srcs += commands.c
@@ -199,7 +199,7 @@ ap.srcs += radio_control.c $(SRC_ARCH)/ppm_hw.c
# transparent
ap.CFLAGS += -DDOWNLINK -DUSE_UART0 -DDOWNLINK_TRANSPORT=PprzTransport -DDOWNLINK_FBW_DEVICE=Uart0 -DDOWNLINK_AP_DEVICE=Uart0 -DPPRZ_UART=Uart0 -DDATALINK=PPRZ -DUART0_BAUD=B9600
-ap.srcs += downlink.c $(SRC_ARCH)/uart_hw.c datalink.c pprz_transport.c
+ap.srcs += downlink.c $(SRC_ARCH)/mcu_periph/uart_arch.c datalink.c pprz_transport.c
ap.CFLAGS += -DINTER_MCU
ap.srcs += inter_mcu.c
diff --git a/conf/airframes/obsolete/spirit_proto.xml b/conf/airframes/obsolete/spirit_proto.xml
index 257a656625..108e8b940f 100644
--- a/conf/airframes/obsolete/spirit_proto.xml
+++ b/conf/airframes/obsolete/spirit_proto.xml
@@ -173,7 +173,7 @@ include $(PAPARAZZI_SRC)/conf/autopilot/tiny.makefile
FLASH_MODE=IAP
-ap.CFLAGS += -DFBW -DAP -DBOARD_CONFIG=$(CONFIG) -DLED -DTIME_LED=1
+ap.CFLAGS += -DFBW -DAP -DBOARD_CONFIG=$(CONFIG) -DUSE_LED -DTIME_LED=1
ap.srcs = sys_time.c $(SRC_ARCH)/sys_time_hw.c $(SRC_ARCH)/armVIC.c main_fbw.c main_ap.c main.c
ap.srcs += commands.c
@@ -187,7 +187,7 @@ ap.srcs += poradio_control.c $(SRC_ARCH)/ppm_hw.c
# transparent
ap.CFLAGS += -DDOWNLINK -DUSE_UART0 -DDOWNLINK_TRANSPORT=PprzTransport -DDOWNLINK_FBW_DEVICE=Uart0 -DDOWNLINK_AP_DEVICE=Uart0 -DPPRZ_UART=Uart0 -DDATALINK=PPRZ -DUART0_BAUD=B9600
-ap.srcs += downlink.c $(SRC_ARCH)/uart_hw.c datalink.c pprz_transport.c
+ap.srcs += downlink.c $(SRC_ARCH)/mcu_periph/uart_arch.c datalink.c pprz_transport.c
ap.CFLAGS += -DINTER_MCU
ap.srcs += inter_mcu.c
diff --git a/conf/airframes/obsolete/storm1.xml b/conf/airframes/obsolete/storm1.xml
index 99dc34336d..aa4eb82ea4 100644
--- a/conf/airframes/obsolete/storm1.xml
+++ b/conf/airframes/obsolete/storm1.xml
@@ -228,7 +228,7 @@ include $(PAPARAZZI_SRC)/conf/autopilot/tiny.makefile
FLASH_MODE=IAP
-ap.CFLAGS += -DFBW -DAP -DBOARD_CONFIG=\"tiny.h\" -DLED -DTIME_LED=1
+ap.CFLAGS += -DFBW -DAP -DBOARD_CONFIG=\"tiny.h\" -DUSE_LED -DTIME_LED=1
ap.srcs = sys_time.c $(SRC_ARCH)/sys_time_hw.c $(SRC_ARCH)/armVIC.c main_fbw.c main_ap.c main.c
ap.srcs += commands.c
@@ -241,17 +241,17 @@ ap.CFLAGS += -DRADIO_CONTROL
ap.srcs += radio_control.c $(SRC_ARCH)/ppm_hw.c
#ap.CFLAGS += -DDOWNLINK -DUSE_UART0 -DDOWNLINK_TRANSPORT=XBeeTransport -DDOWNLINK_FBW_DEVICE=Uart0 -#DDOWNLINK_AP_DEVICE=Uart0 -DXBEE_UART=Uart0 -DDATALINK=XBEE -DUART0_BAUD=B57600
-#ap.srcs += downlink.c $(SRC_ARCH)/uart_hw.c datalink.c xbee.c
+#ap.srcs += downlink.c $(SRC_ARCH)/mcu_periph/uart_arch.c datalink.c xbee.c
ap.CFLAGS += -DDOWNLINK -DUSE_UART0 -DDOWNLINK_TRANSPORT=PprzTransport -DDOWNLINK_FBW_DEVICE=Uart0 -DDOWNLINK_AP_DEVICE=Uart0 -DPPRZ_UART=Uart0 -DDATALINK=PPRZ -DUART0_BAUD=B9600
-ap.srcs += downlink.c $(SRC_ARCH)/uart_hw.c datalink.c pprz_transport.c
+ap.srcs += downlink.c $(SRC_ARCH)/mcu_periph/uart_arch.c datalink.c pprz_transport.c
ap.CFLAGS += -DTELEMETRY_MODE_FBW=1
#TRANSPARENT ap.CFLAGS += -DDOWNLINK -DUSE_UART0 -DDOWNLINK_TRANSPORT=PprzTransport -DDOWNLINK_FBW_DEVICE=Uart0 -DDOWNLINK_AP_DEVICE=Uart0 -DPPRZ_UART=Uart0 -DDATALINK=PPRZ -DUART0_BAUD=B9600
-#TRANSPARENT ap.srcs += downlink.c $(SRC_ARCH)/uart_hw.c datalink.c pprz_transport.c
+#TRANSPARENT ap.srcs += downlink.c $(SRC_ARCH)/mcu_periph/uart_arch.c datalink.c pprz_transport.c
ap.CFLAGS += -DINTER_MCU
diff --git a/conf/airframes/obsolete/tiny2.xml b/conf/airframes/obsolete/tiny2.xml
index 4220672e22..d18fb4a59b 100644
--- a/conf/airframes/obsolete/tiny2.xml
+++ b/conf/airframes/obsolete/tiny2.xml
@@ -199,7 +199,7 @@ include $(PAPARAZZI_SRC)/conf/autopilot/tiny.makefile
FLASH_MODE=IAP
-ap.CFLAGS += -DFBW -DAP -DBOARD_CONFIG=$(CONFIG) -DLED -DTIME_LED=1
+ap.CFLAGS += -DFBW -DAP -DBOARD_CONFIG=$(CONFIG) -DUSE_LED -DTIME_LED=1
ap.srcs = sys_time.c $(SRC_ARCH)/sys_time_hw.c $(SRC_ARCH)/armVIC.c main_fbw.c main_ap.c main.c
ap.srcs += commands.c
@@ -211,10 +211,10 @@ ap.CFLAGS += -DRADIO_CONTROL
ap.srcs += radio_control.c $(SRC_ARCH)/ppm_hw.c
#XBEE ap.CFLAGS += -DDOWNLINK -DUSE_UART1 -DDOWNLINK_TRANSPORT=XBeeTransport -DDOWNLINK_FBW_DEVICE=Uart1 -DDOWNLINK_AP_DEVICE=Uart1 -DXBEE_UART=Uart1 -DDATALINK=XBEE -DUART1_BAUD=B57600
-#XBEE ap.srcs += downlink.c $(SRC_ARCH)/uart_hw.c datalink.c xbee.c
+#XBEE ap.srcs += downlink.c $(SRC_ARCH)/mcu_periph/uart_arch.c datalink.c xbee.c
ap.CFLAGS += -DDOWNLINK -DUSE_UART1 -DDOWNLINK_TRANSPORT=PprzTransport -DDOWNLINK_FBW_DEVICE=Uart1 -DDOWNLINK_AP_DEVICE=Uart1 -DPPRZ_UART=Uart1 -DDATALINK=PPRZ -DUART1_BAUD=B9600
-ap.srcs += downlink.c $(SRC_ARCH)/uart_hw.c datalink.c pprz_transport.c
+ap.srcs += downlink.c $(SRC_ARCH)/mcu_periph/uart_arch.c datalink.c pprz_transport.c
ap.CFLAGS += -DINTER_MCU
diff --git a/conf/airframes/obsolete/tl.xml b/conf/airframes/obsolete/tl.xml
index 0787729120..9412650b8c 100644
--- a/conf/airframes/obsolete/tl.xml
+++ b/conf/airframes/obsolete/tl.xml
@@ -86,7 +86,7 @@ ap.ARCHDIR = $(ARCHI)
ap.CFLAGS += -DBOARD_CONFIG=\"tiny_1_1.h\" -DPERIODIC_TASK_PERIOD='SYS_TICS_OF_SEC(16.666e-3)' -I$(TL)
ap.srcs = $(TL)/tl_main.c sys_time.c $(SRC_ARCH)/sys_time_hw.c $(SRC_ARCH)/armVIC.c
-ap.CFLAGS += -DLED -DLED -DTIME_LED=1
+ap.CFLAGS += -DUSE_LED -DUSE_LED -DTIME_LED=1
ap.CFLAGS += -DADC
ap.srcs += $(SRC_ARCH)/adc_hw.c $(TL)/tl_bat.c
@@ -101,7 +101,7 @@ ap.srcs += radio_control.c $(SRC_ARCH)/ppm_hw.c
# transparent
ap.CFLAGS += -DDOWNLINK -DUSE_UART0 -DDOWNLINK_TRANSPORT=PprzTransport -DDOWNLINK_AP_DEVICE=Uart0 -DPPRZ_UART=Uart0 -DDATALINK=PPRZ -DUART0_BAUD=B57600
-ap.srcs += downlink.c $(SRC_ARCH)/uart_hw.c pprz_transport.c $(TL)/tl_telemetry.c datalink.c
+ap.srcs += downlink.c $(SRC_ARCH)/mcu_periph/uart_arch.c pprz_transport.c $(TL)/tl_telemetry.c datalink.c
ap.CFLAGS += -DTL_AP_MODE_AUTO=TL_AP_MODE_NAV -DDT_VFILTER="(1./60.)"
ap.srcs += $(TL)/tl_autopilot.c $(TL)/tl_control.c $(TL)/tl_estimator.c $(TL)/tl_vfilter.c
@@ -133,9 +133,9 @@ tmm.ARCHDIR = $(ARCHI)
tmm.CFLAGS += -DBOARD_CONFIG=\"tiny_1_1.h\" -DPERIODIC_TASK_PERIOD='SYS_TICS_OF_SEC(16.666e-3)'
tmm.srcs = $(TL)/tl_test_mm_main.c sys_time.c $(SRC_ARCH)/sys_time_hw.c $(SRC_ARCH)/armVIC.c
-tmm.CFLAGS += -DLED -DLED -DTIME_LED=1
+tmm.CFLAGS += -DUSE_LED -DUSE_LED -DTIME_LED=1
tmm.CFLAGS += -DDOWNLINK -DUSE_UART0 -DDOWNLINK_TRANSPORT=PprzTransport -DDOWNLINK_DEVICE=Uart0 -DPPRZ_UART=Uart0 -DUART0_BAUD=B57600
-tmm.srcs += downlink.c $(SRC_ARCH)/uart_hw.c pprz_transport.c
+tmm.srcs += downlink.c $(SRC_ARCH)/mcu_periph/uart_arch.c pprz_transport.c
tmm.srcs += micromag.c $(SRC_ARCH)/micromag_hw.c
@@ -148,9 +148,9 @@ timu.ARCHDIR = $(ARCHI)
timu.CFLAGS += -DBOARD_CONFIG=\"tiny_1_1.h\" -DPERIODIC_TASK_PERIOD='SYS_TICS_OF_SEC(16.666e-3)'
timu.srcs = $(TL)/tl_test_imu_main.c sys_time.c $(SRC_ARCH)/sys_time_hw.c $(SRC_ARCH)/armVIC.c
-timu.CFLAGS += -DLED -DLED -DTIME_LED=1
+timu.CFLAGS += -DUSE_LED -DUSE_LED -DTIME_LED=1
timu.CFLAGS += -DDOWNLINK -DUSE_UART0 -DDOWNLINK_TRANSPORT=PprzTransport -DDOWNLINK_DEVICE=Uart0 -DPPRZ_UART=Uart0 -DUART0_BAUD=B57600
-timu.srcs += downlink.c $(SRC_ARCH)/uart_hw.c pprz_transport.c
+timu.srcs += downlink.c $(SRC_ARCH)/mcu_periph/uart_arch.c pprz_transport.c
timu.srcs += $(TL)/tl_imu.c
timu.CFLAGS += -DADC -DUSE_ADC_5 -DADC_CHANNEL_GR=ADC_5 -DUSE_ADC_6 -DADC_CHANNEL_RM=ADC_6 -DUSE_ADC_7 -DADC_CHANNEL_ACCEL=ADC_7
diff --git a/conf/airframes/obsolete/twinjet1.xml b/conf/airframes/obsolete/twinjet1.xml
index 0721f67e8b..8c2450f8d4 100644
--- a/conf/airframes/obsolete/twinjet1.xml
+++ b/conf/airframes/obsolete/twinjet1.xml
@@ -172,7 +172,7 @@ include $(PAPARAZZI_SRC)/conf/autopilot/classix.makefile
# FLASH_MODE=ISP
FLASH_MODE=IAP
-fbw.CFLAGS += -DFBW -DBOARD_CONFIG=\"classix.h\" -DLED -DTIME_LED=1
+fbw.CFLAGS += -DFBW -DBOARD_CONFIG=\"classix.h\" -DUSE_LED -DTIME_LED=1
fbw.srcs = sys_time.c $(SRC_ARCH)/sys_time_hw.c $(SRC_ARCH)/armVIC.c main_fbw.c main.c
fbw.srcs += commands.c
@@ -184,7 +184,7 @@ fbw.CFLAGS += -DRADIO_CONTROL
fbw.srcs += radio_control.c $(SRC_ARCH)/ppm_hw.c
fbw.CFLAGS += -DDOWNLINK -DUSE_UART0 -DDOWNLINK_TRANSPORT=PprzTransport -DDOWNLINK_FBW_DEVICE=Uart0 -DUART0_BAUD=B9600
-fbw.srcs += downlink.c pprz_transport.c $(SRC_ARCH)/uart_hw.c
+fbw.srcs += downlink.c pprz_transport.c $(SRC_ARCH)/mcu_periph/uart_arch.c
fbw.CFLAGS += -DINTER_MCU -DMCU_SPI_LINK -DUSE_SPI -DSPI_SLAVE
fbw.srcs += inter_mcu.c link_mcu.c spi.c $(SRC_ARCH)/spi_hw.c
@@ -193,14 +193,14 @@ fbw.CFLAGS += -DADC -DUSE_AD0
fbw.srcs += $(SRC_ARCH)/adc_hw.c
-ap.CFLAGS += -DAP -DRADIO_CONTROL_AUTO1 -DBOARD_CONFIG=\"classix.h\" -DLED -DTIME_LED=2
+ap.CFLAGS += -DAP -DRADIO_CONTROL_AUTO1 -DBOARD_CONFIG=\"classix.h\" -DUSE_LED -DTIME_LED=2
ap.srcs = sys_time.c $(SRC_ARCH)/sys_time_hw.c $(SRC_ARCH)/armVIC.c main_ap.c main.c
#ap.CFLAGS += -DDOWNLINK -DUSE_UART0 -DDOWNLINK_TRANSPORT=XBeeTransport -DDOWNLINK_AP_DEVICE=Uart0 -DXBEE_UART=Uart0 -DDATALINK=XBEE -DUART0_BAUD=B9600
-#ap.srcs += downlink.c $(SRC_ARCH)/uart_hw.c datalink.c subsystems/navigation/traffic_info.c xbee.c
+#ap.srcs += downlink.c $(SRC_ARCH)/mcu_periph/uart_arch.c datalink.c subsystems/navigation/traffic_info.c xbee.c
ap.CFLAGS += -DDOWNLINK -DUSE_UART0 -DDOWNLINK_TRANSPORT=PprzTransport -DDOWNLINK_AP_DEVICE=Uart0 -DPPRZ_UART=Uart0 -DDATALINK=PPRZ -DUART0_BAUD=B57600
-ap.srcs += downlink.c $(SRC_ARCH)/uart_hw.c datalink.c pprz_transport.c
+ap.srcs += downlink.c $(SRC_ARCH)/mcu_periph/uart_arch.c datalink.c pprz_transport.c
ap.CFLAGS += -DINTER_MCU -DMCU_SPI_LINK -DUSE_SPI -DSPI_MASTER -DUSE_SPI_SLAVE0
ap.srcs += inter_mcu.c link_mcu.c spi.c $(SRC_ARCH)/spi_hw.c
@@ -237,8 +237,8 @@ ap.CFLAGS += -DUSE_LIGHT
-test.CFLAGS += -DFBW -DBOARD_CONFIG=\"classix.h\" -DLED -DTIME_LED=1 -DACTUATORS=\"servos_4017_hw.h\" -DSERVOS_4017 -DSERVOS_4017_CLOCK_FALLING -DUSE_UART0 -DDATALINK -DPPRZ_INPUT -DPPRZ_UART=Uart0 -DUART0_BAUD=B9600
-test.srcs += sys_time.c $(SRC_ARCH)/sys_time_hw.c $(SRC_ARCH)/armVIC.c pprz_transport.c setup_actuators.c $(SRC_ARCH)/uart_hw.c $(SRC_ARCH)/servos_4017_hw.c main.c
+test.CFLAGS += -DFBW -DBOARD_CONFIG=\"classix.h\" -DUSE_LED -DTIME_LED=1 -DACTUATORS=\"servos_4017_hw.h\" -DSERVOS_4017 -DSERVOS_4017_CLOCK_FALLING -DUSE_UART0 -DDATALINK -DPPRZ_INPUT -DPPRZ_UART=Uart0 -DUART0_BAUD=B9600
+test.srcs += sys_time.c $(SRC_ARCH)/sys_time_hw.c $(SRC_ARCH)/armVIC.c pprz_transport.c setup_actuators.c $(SRC_ARCH)/mcu_periph/uart_arch.c $(SRC_ARCH)/servos_4017_hw.c main.c
# Config for SITL simulation
include $(PAPARAZZI_SRC)/conf/autopilot/sitl.makefile
diff --git a/conf/airframes/obsolete/twinstar6.xml b/conf/airframes/obsolete/twinstar6.xml
index a7a381a4eb..30aeb79607 100644
--- a/conf/airframes/obsolete/twinstar6.xml
+++ b/conf/airframes/obsolete/twinstar6.xml
@@ -180,7 +180,7 @@ include $(PAPARAZZI_SRC)/conf/autopilot/classix.makefile
# FLASH_MODE=ISP
FLASH_MODE=IAP
-fbw.CFLAGS += -DFBW -DBOARD_CONFIG=\"classix.h\" -DLED -DTIME_LED=1
+fbw.CFLAGS += -DFBW -DBOARD_CONFIG=\"classix.h\" -DUSE_LED -DTIME_LED=1
fbw.srcs = sys_time.c $(SRC_ARCH)/sys_time_hw.c $(SRC_ARCH)/armVIC.c main_fbw.c main.c
fbw.srcs += commands.c
@@ -192,7 +192,7 @@ fbw.CFLAGS += -DRADIO_CONTROL
fbw.srcs += radio_control.c $(SRC_ARCH)/ppm_hw.c
fbw.CFLAGS += -DDOWNLINK -DUSE_UART0 -DDOWNLINK_TRANSPORT=PprzTransport -DDOWNLINK_FBW_DEVICE=Uart0 -DUART0_BAUD=B9600
-fbw.srcs += downlink.c pprz_transport.c $(SRC_ARCH)/uart_hw.c
+fbw.srcs += downlink.c pprz_transport.c $(SRC_ARCH)/mcu_periph/uart_arch.c
fbw.CFLAGS += -DINTER_MCU -DMCU_SPI_LINK -DUSE_SPI -DSPI_SLAVE
fbw.srcs += inter_mcu.c link_mcu.c spi.c $(SRC_ARCH)/spi_hw.c
@@ -201,11 +201,11 @@ fbw.CFLAGS += -DADC -DUSE_AD0
fbw.srcs += $(SRC_ARCH)/adc_hw.c
-ap.CFLAGS += -DAP -DRADIO_CONTROL_AUTO1 -DBOARD_CONFIG=\"classix.h\" -DLED -DTIME_LED=2
+ap.CFLAGS += -DAP -DRADIO_CONTROL_AUTO1 -DBOARD_CONFIG=\"classix.h\" -DUSE_LED -DTIME_LED=2
ap.srcs = sys_time.c $(SRC_ARCH)/sys_time_hw.c $(SRC_ARCH)/armVIC.c main_ap.c main.c
ap.CFLAGS += -DDOWNLINK -DUSE_UART0 -DDOWNLINK_TRANSPORT=PprzTransport -DDOWNLINK_AP_DEVICE=Uart0 -DPPRZ_UART=Uart0 -DDATALINK=PPRZ -DUART0_BAUD=B57600
-ap.srcs += downlink.c $(SRC_ARCH)/uart_hw.c datalink.c subsystems/navigation/traffic_info.c pprz_transport.c
+ap.srcs += downlink.c $(SRC_ARCH)/mcu_periph/uart_arch.c datalink.c subsystems/navigation/traffic_info.c pprz_transport.c
ap.CFLAGS += -DINTER_MCU -DMCU_SPI_LINK -DUSE_SPI -DSPI_MASTER
ap.srcs += inter_mcu.c link_mcu.c spi.c $(SRC_ARCH)/spi_hw.c
@@ -237,8 +237,8 @@ ap.CFLAGS += -DDIGITAL_CAM
ap.srcs += dc.c
-test.CFLAGS += -DFBW -DBOARD_CONFIG=\"classix.h\" -DLED -DTIME_LED=1 -DACTUATORS=\"servos_4017_hw.h\" -DSERVOS_4017 -DSERVOS_4017_CLOCK_FALLING -DUSE_UART0 -DDATALINK -DPPRZ_INPUT -DPPRZ_UART=Uart0 -DUART0_BAUD=B9600
-test.srcs += sys_time.c $(SRC_ARCH)/sys_time_hw.c $(SRC_ARCH)/armVIC.c pprz_transport.c setup_actuators.c $(SRC_ARCH)/uart_hw.c $(SRC_ARCH)/servos_4017_hw.c main.c
+test.CFLAGS += -DFBW -DBOARD_CONFIG=\"classix.h\" -DUSE_LED -DTIME_LED=1 -DACTUATORS=\"servos_4017_hw.h\" -DSERVOS_4017 -DSERVOS_4017_CLOCK_FALLING -DUSE_UART0 -DDATALINK -DPPRZ_INPUT -DPPRZ_UART=Uart0 -DUART0_BAUD=B9600
+test.srcs += sys_time.c $(SRC_ARCH)/sys_time_hw.c $(SRC_ARCH)/armVIC.c pprz_transport.c setup_actuators.c $(SRC_ARCH)/mcu_periph/uart_arch.c $(SRC_ARCH)/servos_4017_hw.c main.c
# Config for SITL simulation
include $(PAPARAZZI_SRC)/conf/autopilot/sitl.makefile
diff --git a/conf/airframes/obsolete/twisted.xml b/conf/airframes/obsolete/twisted.xml
index a9db415bc8..19ebf649b7 100644
--- a/conf/airframes/obsolete/twisted.xml
+++ b/conf/airframes/obsolete/twisted.xml
@@ -46,7 +46,7 @@ include $(PAPARAZZI_SRC)/conf/autopilot/tiny.makefile
FLASH_MODE=IAP
-ap.CFLAGS += -DFBW -DAP -DBOARD_CONFIG=\"tiny_1_1.h\" -DLED -DTIME_LED=1
+ap.CFLAGS += -DFBW -DAP -DBOARD_CONFIG=\"tiny_1_1.h\" -DUSE_LED -DTIME_LED=1
ap.srcs = sys_time.c $(SRC_ARCH)/sys_time_hw.c $(SRC_ARCH)/armVIC.c main_fbw.c main_coax.c main.c
ap.CFLAGS += -DACTUATORS=\"servos_4015_MAT_hw.h\" -DSERVOS_4015_MAT
@@ -56,7 +56,7 @@ ap.CFLAGS += -DRADIO_CONTROL
ap.srcs += radio_control.c $(SRC_ARCH)/ppm_hw.c
ap.CFLAGS += -DDOWNLINK -DUSE_UART0 -DDOWNLINK_TRANSPORT=PprzTransport -DDOWNLINK_FBW_DEVICE=Uart0 -DDOWNLINK_AP_DEVICE=Uart0 -DPPRZ_UART=Uart0 -DDATALINK=PPRZ -DUART0_BAUD=B19200
-ap.srcs += downlink.c $(SRC_ARCH)/uart_hw.c datalink.c pprz_transport.c
+ap.srcs += downlink.c $(SRC_ARCH)/mcu_periph/uart_arch.c datalink.c pprz_transport.c
ap.CFLAGS += -DUSE_SPI -DSPI_MASTER -DUSE_SPI_SLAVE0 -DUSE_BARO_MS5534A
ap.srcs += spi.c $(SRC_ARCH)/spi_hw.c $(SRC_ARCH)/baro_MS5534A.c
diff --git a/conf/airframes/obsolete/tyto1.xml b/conf/airframes/obsolete/tyto1.xml
index 15feae9864..049cea6a4f 100644
--- a/conf/airframes/obsolete/tyto1.xml
+++ b/conf/airframes/obsolete/tyto1.xml
@@ -204,7 +204,7 @@ FLASH_MODE=IAP
ap.CFLAGS += -DTELEMETRY_MODE_FBW=1
-ap.CFLAGS += -DFBW -DAP -DBOARD_CONFIG=$(CONFIG) -DLED -DTIME_LED=1
+ap.CFLAGS += -DFBW -DAP -DBOARD_CONFIG=$(CONFIG) -DUSE_LED -DTIME_LED=1
ap.srcs = sys_time.c $(SRC_ARCH)/sys_time_hw.c $(SRC_ARCH)/armVIC.c main_fbw.c main_ap.c main.c
ap.srcs += commands.c
@@ -216,10 +216,10 @@ ap.CFLAGS += -DRADIO_CONTROL
ap.srcs += radio_control.c $(SRC_ARCH)/ppm_hw.c
# ap.CFLAGS += -DDOWNLINK -DUSE_UART0 -DDOWNLINK_TRANSPORT=XBeeTransport -DDOWNLINK_FBW_DEVICE=Uart0 -DDOWNLINK_AP_DEVICE=Uart0 -DXBEE_UART=Uart0 -DDATALINK=XBEE -DUART0_BAUD=B9600
-# ap.srcs += downlink.c $(SRC_ARCH)/uart_hw.c datalink.c xbee.c
+# ap.srcs += downlink.c $(SRC_ARCH)/mcu_periph/uart_arch.c datalink.c xbee.c
ap.CFLAGS += -DDOWNLINK -DUSE_UART0 -DDOWNLINK_TRANSPORT=PprzTransport -DDOWNLINK_FBW_DEVICE=Uart0 -DDOWNLINK_AP_DEVICE=Uart0 -DPPRZ_UART=Uart0 -DDATALINK=PPRZ -DUART0_BAUD=B9600
-ap.srcs += downlink.c $(SRC_ARCH)/uart_hw.c datalink.c pprz_transport.c
+ap.srcs += downlink.c $(SRC_ARCH)/mcu_periph/uart_arch.c datalink.c pprz_transport.c
ap.CFLAGS += -DINTER_MCU
diff --git a/conf/airframes/obsolete/xxx1.xml b/conf/airframes/obsolete/xxx1.xml
index 7c967182fa..972d9e9809 100644
--- a/conf/airframes/obsolete/xxx1.xml
+++ b/conf/airframes/obsolete/xxx1.xml
@@ -209,7 +209,7 @@ include $(PAPARAZZI_SRC)/conf/autopilot/tiny.makefile
FLASH_MODE=IAP
-ap.CFLAGS += -DFBW -DAP -DBOARD_CONFIG=\"tiny_0_99.h\" -DLED -DTIME_LED=1
+ap.CFLAGS += -DFBW -DAP -DBOARD_CONFIG=\"tiny_0_99.h\" -DUSE_LED -DTIME_LED=1
ap.srcs = sys_time.c $(SRC_ARCH)/sys_time_hw.c $(SRC_ARCH)/armVIC.c main_fbw.c main_ap.c main.c
ap.srcs += commands.c
@@ -222,10 +222,10 @@ ap.srcs += radio_control.c $(SRC_ARCH)/ppm_hw.c
# ap.CFLAGS += -DDOWNLINK -DUSE_UART0 -DDOWNLINK_TRANSPORT=XBeeTransport -DDOWNLINK_FBW_DEVICE=Uart0 -DDOWNLINK_AP_DEVICE=Uart0 -DXBEE_UART=Uart0 -DDATALINK=XBEE -DUART0_BAUD=B9600
ap.CFLAGS += -DDOWNLINK -DUSE_UART0 -DDOWNLINK_TRANSPORT=PprzTransport -DDOWNLINK_FBW_DEVICE=Uart0 -DDOWNLINK_AP_DEVICE=Uart0 -DPPRZ_UART=Uart0 -DDATALINK=PPRZ -DUART0_BAUD=B57600
-ap.srcs += downlink.c $(SRC_ARCH)/uart_hw.c datalink.c pprz_transport.c
+ap.srcs += downlink.c $(SRC_ARCH)/mcu_periph/uart_arch.c datalink.c pprz_transport.c
#TRANSPARENT ap.CFLAGS += -DDOWNLINK -DUSE_UART0 -DDOWNLINK_TRANSPORT=PprzTransport -DDOWNLINK_FBW_DEVICE=Uart0 -DDOWNLINK_AP_DEVICE=Uart0 -DPPRZ_UART=Uart0 -DDATALINK=PPRZ -DUART0_BAUD=B9600
-#TRANSPARENT ap.srcs += downlink.c $(SRC_ARCH)/uart_hw.c datalink.c pprz_transport.c
+#TRANSPARENT ap.srcs += downlink.c $(SRC_ARCH)/mcu_periph/uart_arch.c datalink.c pprz_transport.c
ap.CFLAGS += -DINTER_MCU
@@ -278,8 +278,8 @@ sim.srcs += subsystems/navigation/nav_line.c subsystems/navigation/nav_survey_re
# a test program to setup actuators
setup_actuators.ARCHDIR = $(ARCHI)
-setup_actuators.CFLAGS += -DFBW -DBOARD_CONFIG=\"tiny.h\" -DLED -DTIME_LED=1 -DACTUATORS=\"servos_4015_hw.h\" -DSERVOS_4015 -DUSE_UART0 -DUART0_BAUD=B9600 -DDATALINK=PPRZ -DPPRZ_UART=Uart0
-setup_actuators.srcs += sys_time.c $(SRC_ARCH)/sys_time_hw.c $(SRC_ARCH)/armVIC.c pprz_transport.c setup_actuators.c $(SRC_ARCH)/uart_hw.c $(SRC_ARCH)/servos_4015_hw.c main.c
+setup_actuators.CFLAGS += -DFBW -DBOARD_CONFIG=\"tiny.h\" -DUSE_LED -DTIME_LED=1 -DACTUATORS=\"servos_4015_hw.h\" -DSERVOS_4015 -DUSE_UART0 -DUART0_BAUD=B9600 -DDATALINK=PPRZ -DPPRZ_UART=Uart0
+setup_actuators.srcs += sys_time.c $(SRC_ARCH)/sys_time_hw.c $(SRC_ARCH)/armVIC.c pprz_transport.c setup_actuators.c $(SRC_ARCH)/mcu_periph/uart_arch.c $(SRC_ARCH)/servos_4015_hw.c main.c
diff --git a/conf/airframes/test_hb.xml b/conf/airframes/test_hb.xml
new file mode 100644
index 0000000000..ec26252172
--- /dev/null
+++ b/conf/airframes/test_hb.xml
@@ -0,0 +1,209 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/conf/airframes/test_i2c.xml b/conf/airframes/test_i2c.xml
index c575a5cd8e..8ddf557a10 100644
--- a/conf/airframes/test_i2c.xml
+++ b/conf/airframes/test_i2c.xml
@@ -19,10 +19,10 @@ FLASH_MODE = ISP
mb.CFLAGS += -DBOARD_CONFIG=\"conf_motor_bench.h\" -DPERIODIC_TASK_PERIOD='SYS_TICS_OF_SEC(10e-3)'
mb.srcs = $(SRC_ARCH)/main_test_i2c.c sys_time.c $(SRC_ARCH)/sys_time_hw.c $(SRC_ARCH)/armVIC.c
-mb.CFLAGS += -DLED
+mb.CFLAGS += -DUSE_LED
mb.CFLAGS += -DUSE_UART0 -DUART0_BAUD=B38400
-mb.srcs += $(SRC_ARCH)/uart_hw.c
+mb.srcs += $(SRC_ARCH)/mcu_periph/uart_arch.c
mb.CFLAGS += -DDOWNLINK -DDOWNLINK_TRANSPORT=PprzTransport -DDOWNLINK_DEVICE=Uart0
mb.srcs += downlink.c pprz_transport.c
diff --git a/conf/airframes/tiny_hitl.xml b/conf/airframes/tiny_hitl.xml
index ac97fa1fc3..4638d90d03 100644
--- a/conf/airframes/tiny_hitl.xml
+++ b/conf/airframes/tiny_hitl.xml
@@ -165,7 +165,7 @@ include $(PAPARAZZI_SRC)/conf/autopilot/tiny.makefile
FLASH_MODE=IAP
-ap.CFLAGS += -DFBW -DAP -DBOARD_CONFIG=$(CONFIG) -DLED -DTIME_LED=1
+ap.CFLAGS += -DFBW -DAP -DBOARD_CONFIG=$(CONFIG) -DUSE_LED -DTIME_LED=1
ap.srcs = sys_time.c $(SRC_ARCH)/sys_time_hw.c $(SRC_ARCH)/armVIC.c main_fbw.c main_ap.c main.c
ap.srcs += commands.c
@@ -179,7 +179,7 @@ ap.srcs += radio_control.c $(SRC_ARCH)/ppm_hw.c
# transparent
ap.CFLAGS += -DDOWNLINK -DUSE_UART0 -DDOWNLINK_TRANSPORT=PprzTransport -DDOWNLINK_FBW_DEVICE=Uart0 -DDOWNLINK_AP_DEVICE=Uart0 -DPPRZ_UART=Uart0 -DDATALINK=PPRZ -DUART0_BAUD=B9600
-ap.srcs += downlink.c $(SRC_ARCH)/uart_hw.c datalink.c pprz_transport.c
+ap.srcs += downlink.c $(SRC_ARCH)/mcu_periph/uart_arch.c datalink.c pprz_transport.c
ap.CFLAGS += -DINTER_MCU
ap.srcs += inter_mcu.c
diff --git a/conf/airframes/twinjet_example.xml b/conf/airframes/twinjet_example.xml
index dbece1f26f..70fd68b0b7 100644
--- a/conf/airframes/twinjet_example.xml
+++ b/conf/airframes/twinjet_example.xml
@@ -34,6 +34,12 @@
+
+
+
+
+
+
diff --git a/conf/airframes/vor.xml b/conf/airframes/vor.xml
index ea7f66b737..ef449a636a 100644
--- a/conf/airframes/vor.xml
+++ b/conf/airframes/vor.xml
@@ -14,14 +14,14 @@ main.srcs = firmwares/vor/lpc_vor_main.c
main.CFLAGS += -DPERIODIC_TASK_PERIOD='SYS_TICS_OF_SEC(1./29880.)'
main.srcs += sys_time.c $(SRC_ARCH)/sys_time_hw.c
-main.CFLAGS += -DLED
+main.CFLAGS += -DUSE_LED
main.srcs += $(SRC_ARCH)/armVIC.c
main.srcs += firmwares/vor/lpc_vor_convertions.c
main.CFLAGS += -DUSE_UART0 -DUART0_BAUD=B9600
-main.srcs += $(SRC_ARCH)/uart_hw.c
+main.srcs += $(SRC_ARCH)/mcu_periph/uart_arch.c
main.CFLAGS += -DDOWNLINK -DDOWNLINK_TRANSPORT=PprzTransport -DDOWNLINK_DEVICE=Uart0
main.srcs += downlink.c pprz_transport.c
diff --git a/conf/airframes/wind_tunnel.xml b/conf/airframes/wind_tunnel.xml
index 2ae886c686..418362b110 100644
--- a/conf/airframes/wind_tunnel.xml
+++ b/conf/airframes/wind_tunnel.xml
@@ -17,12 +17,12 @@ ap.srcs = $(WIND_TUNNEL)/main.c
ap.CFLAGS += -DPERIODIC_TASK_PERIOD='SYS_TICS_OF_SEC(1e-1)'
ap.srcs += sys_time.c $(SRC_ARCH)/sys_time_hw.c
-ap.CFLAGS += -DLED
+ap.CFLAGS += -DUSE_LED
ap.srcs += $(SRC_ARCH)/armVIC.c
ap.CFLAGS += -DUSE_UART0 -DUART0_BAUD=B38400
-ap.srcs += $(SRC_ARCH)/uart_hw.c
+ap.srcs += $(SRC_ARCH)/mcu_periph/uart_arch.c
ap.CFLAGS += -DDOWNLINK -DDOWNLINK_TRANSPORT=PprzTransport -DDOWNLINK_DEVICE=Uart0
ap.srcs += downlink.c pprz_transport.c
@@ -47,12 +47,12 @@ mb.srcs = $(WIND_TUNNEL)/main_mb.c
mb.CFLAGS += -DPERIODIC_TASK_PERIOD='SYS_TICS_OF_SEC(1e-2)'
mb.srcs += sys_time.c $(SRC_ARCH)/sys_time_hw.c
-mb.CFLAGS += -DLED
+mb.CFLAGS += -DUSE_LED
mb.srcs += $(SRC_ARCH)/armVIC.c
mb.CFLAGS += -DUSE_UART0 -DUART0_BAUD=B38400
-mb.srcs += $(SRC_ARCH)/uart_hw.c
+mb.srcs += $(SRC_ARCH)/mcu_periph/uart_arch.c
mb.CFLAGS += -DDOWNLINK -DDOWNLINK_TRANSPORT=PprzTransport -DDOWNLINK_DEVICE=Uart0
mb.srcs += downlink.c pprz_transport.c
diff --git a/conf/autopilot/booz2_test_progs.makefile b/conf/autopilot/booz2_test_progs.makefile
index 1d35e9ce1b..ec7cc603ac 100644
--- a/conf/autopilot/booz2_test_progs.makefile
+++ b/conf/autopilot/booz2_test_progs.makefile
@@ -22,6 +22,8 @@
#
#
+include $(PAPARAZZI_SRC)/conf/autopilot/booz2_common.makefile
+
#
# test_led : blinks all leds
#
@@ -47,7 +49,7 @@ test_downlink.CFLAGS += -DPERIODIC_TASK_PERIOD='SYS_TICS_OF_SEC((1./10.))' -DTIM
test_downlink.srcs += sys_time.c $(SRC_ARCH)/sys_time_hw.c $(SRC_ARCH)/armVIC.c
test_downlink.CFLAGS += -DUSE_UART1 -DUART1_BAUD=B57600
-test_downlink.srcs += $(SRC_ARCH)/uart_hw.c
+test_downlink.srcs += $(SRC_ARCH)/mcu_periph/uart_arch.c
test_downlink.CFLAGS += -DDOWNLINK -DDOWNLINK_TRANSPORT=PprzTransport -DDOWNLINK_DEVICE=Uart1
test_downlink.srcs += downlink.c pprz_transport.c
@@ -66,7 +68,7 @@ test_max1168.CFLAGS += -DPERIODIC_TASK_PERIOD='SYS_TICS_OF_SEC((1./512.))' -DTIM
test_max1168.srcs += sys_time.c $(SRC_ARCH)/sys_time_hw.c $(SRC_ARCH)/armVIC.c
test_max1168.CFLAGS += -DUSE_UART1 -DUART1_BAUD=B57600
-test_max1168.srcs += $(SRC_ARCH)/uart_hw.c
+test_max1168.srcs += $(SRC_ARCH)/mcu_periph/uart_arch.c
test_max1168.CFLAGS += -DDOWNLINK -DDOWNLINK_TRANSPORT=PprzTransport -DDOWNLINK_DEVICE=Uart1
test_max1168.srcs += downlink.c pprz_transport.c
@@ -83,11 +85,11 @@ test_micromag.ARCHDIR = $(ARCH)
test_micromag.CFLAGS += -DBOARD_CONFIG=$(BOARD_CFG) -I$(SRC_BOOZ) -I$(SRC_BOOZ_ARCH)
test_micromag.srcs += $(SRC_BOOZ_TEST)/booz2_test_micromag.c
test_micromag.CFLAGS += -DPERIODIC_TASK_PERIOD='SYS_TICS_OF_SEC((1./512.))' -DTIME_LED=1
-test_micromag.CFLAGS += -DLED
+test_micromag.CFLAGS += -DUSE_LED
test_micromag.srcs += sys_time.c $(SRC_ARCH)/sys_time_hw.c $(SRC_ARCH)/armVIC.c
test_micromag.CFLAGS += -DUSE_UART1 -DUART1_BAUD=B57600
-test_micromag.srcs += $(SRC_ARCH)/uart_hw.c
+test_micromag.srcs += $(SRC_ARCH)/mcu_periph/uart_arch.c
test_micromag.CFLAGS += -DDOWNLINK -DDOWNLINK_TRANSPORT=PprzTransport -DDOWNLINK_DEVICE=Uart1
test_micromag.srcs += downlink.c pprz_transport.c
@@ -108,12 +110,13 @@ tunnel.ARCHDIR = $(ARCH)
tunnel.CFLAGS += -DBOARD_CONFIG=$(BOARD_CFG) $(BOOZ_CFLAGS)
tunnel.srcs += $(SRC_BOOZ_TEST)/booz2_tunnel.c
tunnel.CFLAGS += -DPERIODIC_TASK_PERIOD='SYS_TICS_OF_SEC((1./512.))' -DTIME_LED=1
-tunnel.CFLAGS += -DLED
+tunnel.CFLAGS += -DUSE_LED
tunnel.srcs += sys_time.c $(SRC_ARCH)/sys_time_hw.c $(SRC_ARCH)/armVIC.c
+tunnel.srcs += mcu.c $(SRC_ARCH)/mcu_arch.c
tunnel.CFLAGS += -DUSE_UART0 -DUART0_BAUD=B38400
tunnel.CFLAGS += -DUSE_UART1 -DUART1_BAUD=B57600
-tunnel.srcs += $(SRC_ARCH)/uart_hw.c
+tunnel.srcs += $(SRC_ARCH)/mcu_periph/uart_arch.c
#
@@ -124,7 +127,7 @@ tunnel_bb.ARCHDIR = $(ARCH)
tunnel_bb.CFLAGS += -DBOARD_CONFIG=$(BOARD_CFG) $(BOOZ_CFLAGS)
tunnel_bb.srcs += $(SRC_BOOZ_TEST)/booz2_tunnel_bb.c
tunnel_bb.CFLAGS += -DPERIODIC_TASK_PERIOD='SYS_TICS_OF_SEC((1./512.))' -DTIME_LED=1
-tunnel_bb.CFLAGS += -DLED
+tunnel_bb.CFLAGS += -DUSE_LED
tunnel_bb.srcs += sys_time.c $(SRC_ARCH)/sys_time_hw.c $(SRC_ARCH)/armVIC.c
@@ -137,11 +140,11 @@ test_gps.ARCHDIR = $(ARCH)
test_gps.CFLAGS += -DBOARD_CONFIG=$(BOARD_CFG) -I$(SRC_BOOZ) -I$(SRC_BOOZ_ARCH)
test_gps.srcs += $(SRC_BOOZ_TEST)/booz2_test_gps.c
test_gps.CFLAGS += -DPERIODIC_TASK_PERIOD='SYS_TICS_OF_SEC((1./512.))' -DTIME_LED=1
-test_gps.CFLAGS += -DLED
+test_gps.CFLAGS += -DUSE_LED
test_gps.srcs += sys_time.c $(SRC_ARCH)/sys_time_hw.c $(SRC_ARCH)/armVIC.c
test_gps.CFLAGS += -DUSE_UART1 -DUART1_BAUD=B57600
-test_gps.srcs += $(SRC_ARCH)/uart_hw.c
+test_gps.srcs += $(SRC_ARCH)/mcu_periph/uart_arch.c
test_gps.CFLAGS += -DDOWNLINK -DDOWNLINK_TRANSPORT=PprzTransport -DDOWNLINK_DEVICE=Uart1
test_gps.srcs += downlink.c pprz_transport.c
@@ -162,11 +165,11 @@ test_modem.ARCHDIR = $(ARCH)
test_modem.CFLAGS += -DBOARD_CONFIG=$(BOARD_CFG) $(BOOZ_CFLAGS)
test_modem.srcs += $(SRC_BOOZ_TEST)/booz2_test_modem.c
test_modem.CFLAGS += -DPERIODIC_TASK_PERIOD='SYS_TICS_OF_SEC((1./512.))' -DTIME_LED=1
-test_modem.CFLAGS += -DLED
+test_modem.CFLAGS += -DUSE_LED
test_modem.srcs += sys_time.c $(SRC_ARCH)/sys_time_hw.c $(SRC_ARCH)/armVIC.c
test_modem.CFLAGS += -DUSE_UART1 -DUART1_BAUD=B57600
-test_modem.srcs += $(SRC_ARCH)/uart_hw.c
+test_modem.srcs += $(SRC_ARCH)/mcu_periph/uart_arch.c
test_modem.CFLAGS += -DDOWNLINK -DDOWNLINK_TRANSPORT=PprzTransport -DDOWNLINK_DEVICE=Uart1
test_modem.srcs += downlink.c pprz_transport.c
@@ -184,17 +187,17 @@ test_usb.CFLAGS += -DBOARD_CONFIG=$(BOARD_CFG) $(BOOZ_CFLAGS)
test_usb.srcs += $(SRC_BOOZ_TEST)/booz2_test_usb.c
test_usb.CFLAGS += -DPERIODIC_TASK_PERIOD='SYS_TICS_OF_SEC((1./512.))'
# -DTIME_LED=1
-test_usb.CFLAGS += -DLED
+test_usb.CFLAGS += -DUSE_LED
test_usb.srcs += sys_time.c $(SRC_ARCH)/sys_time_hw.c $(SRC_ARCH)/armVIC.c
#test_usb.CFLAGS += -DUSE_UART1 -DUART1_BAUD=B57600
-#test_usb.srcs += $(SRC_ARCH)/uart_hw.c
+#test_usb.srcs += $(SRC_ARCH)/mcu_periph/uart_arch.c
#test_usb.CFLAGS += -DDOWNLINK -DDOWNLINK_TRANSPORT=PprzTransport -DDOWNLINK_DEVICE=Uart1
#test_usb.srcs += downlink.c pprz_transport.c
test_usb.CFLAGS += -DDOWNLINK -DDOWNLINK_TRANSPORT=PprzTransport -DUSE_USB_SERIAL
test_usb.CFLAGS += -DDOWNLINK_DEVICE=UsbS -DPPRZ_UART=UsbS -DDATALINK=PPRZ
-test_usb.srcs += downlink.c $(SRC_ARCH)/uart_hw.c $(SRC_ARCH)/usb_ser_hw.c pprz_transport.c
+test_usb.srcs += downlink.c $(SRC_ARCH)/mcu_periph/uart_arch.c $(SRC_ARCH)/usb_ser_hw.c pprz_transport.c
# $(SRC_FIRMWARE)/datalink.c
test_usb.srcs += $(SRC_ARCH)/lpcusb/usbhw_lpc.c $(SRC_ARCH)/lpcusb/usbcontrol.c
test_usb.srcs += $(SRC_ARCH)/lpcusb/usbstdreq.c $(SRC_ARCH)/lpcusb/usbinit.c
@@ -212,11 +215,11 @@ test_ami.ARCHDIR = $(ARCH)
test_ami.CFLAGS += -DBOARD_CONFIG=$(BOARD_CFG) $(BOOZ_CFLAGS)
test_ami.srcs += $(SRC_BOOZ_TEST)/booz2_test_ami.c
test_ami.CFLAGS += -DPERIODIC_TASK_PERIOD='SYS_TICS_OF_SEC((1./50.))' -DTIME_LED=1
-test_ami.CFLAGS += -DLED
+test_ami.CFLAGS += -DUSE_LED
test_ami.srcs += sys_time.c $(SRC_ARCH)/sys_time_hw.c $(SRC_ARCH)/armVIC.c
test_ami.CFLAGS += -DUSE_UART1 -DUART1_BAUD=B57600
-test_ami.srcs += $(SRC_ARCH)/uart_hw.c
+test_ami.srcs += $(SRC_ARCH)/mcu_periph/uart_arch.c
test_ami.CFLAGS += -DDOWNLINK -DDOWNLINK_TRANSPORT=PprzTransport -DDOWNLINK_DEVICE=Uart1
test_ami.srcs += downlink.c pprz_transport.c
@@ -235,11 +238,11 @@ test_crista.ARCHDIR = $(ARCH)
test_crista.CFLAGS += -DBOARD_CONFIG=$(BOARD_CFG) -I$(SRC_BOOZ) -I$(SRC_BOOZ_ARCH)
test_crista.srcs += $(SRC_BOOZ_TEST)/booz2_test_crista.c
test_crista.CFLAGS += -DPERIODIC_TASK_PERIOD='SYS_TICS_OF_SEC((1./512.))' -DTIME_LED=1
-test_crista.CFLAGS += -DLED
+test_crista.CFLAGS += -DUSE_LED
test_crista.srcs += sys_time.c $(SRC_ARCH)/sys_time_hw.c $(SRC_ARCH)/armVIC.c
test_crista.CFLAGS += -DUSE_UART0 -DUART0_BAUD=B57600
-test_crista.srcs += $(SRC_ARCH)/uart_hw.c
+test_crista.srcs += $(SRC_ARCH)/mcu_periph/uart_arch.c
test_crista.CFLAGS += -DDOWNLINK -DDOWNLINK_TRANSPORT=PprzTransport -DDOWNLINK_DEVICE=Uart0
test_crista.srcs += downlink.c pprz_transport.c
@@ -261,11 +264,11 @@ test_micromag2.srcs += $(SRC_BOOZ_TEST)/booz2_test_micromag_2.c
test_micromag2.CFLAGS += -DSSP_VIC_SLOT=9
test_micromag2.CFLAGS += -DMICROMAG_DRDY_VIC_SLOT=8
test_micromag2.CFLAGS += -DPERIODIC_TASK_PERIOD='SYS_TICS_OF_SEC((1./50.))' -DTIME_LED=1
-test_micromag2.CFLAGS += -DLED
+test_micromag2.CFLAGS += -DUSE_LED
test_micromag2.srcs += sys_time.c $(SRC_ARCH)/sys_time_hw.c $(SRC_ARCH)/armVIC.c
test_micromag2.CFLAGS += -DUSE_UART1 -DUART1_BAUD=B57600
-test_micromag2.srcs += $(SRC_ARCH)/uart_hw.c
+test_micromag2.srcs += $(SRC_ARCH)/mcu_periph/uart_arch.c
test_micromag2.CFLAGS += -DDOWNLINK -DDOWNLINK_TRANSPORT=PprzTransport -DDOWNLINK_DEVICE=Uart1
test_micromag2.srcs += downlink.c pprz_transport.c
@@ -283,11 +286,11 @@ test_imu_b2.ARCHDIR = $(ARCH)
test_imu_b2.CFLAGS += -DBOARD_CONFIG=$(BOARD_CFG) -I$(SRC_BOOZ) -I$(SRC_BOOZ_ARCH)
test_imu_b2.srcs += $(SRC_BOOZ_TEST)/booz2_test_imu_b2.c
test_imu_b2.CFLAGS += -DPERIODIC_TASK_PERIOD='SYS_TICS_OF_SEC((1./512.))' -DTIME_LED=1
-test_imu_b2.CFLAGS += -DLED
+test_imu_b2.CFLAGS += -DUSE_LED
test_imu_b2.srcs += sys_time.c $(SRC_ARCH)/sys_time_hw.c $(SRC_ARCH)/armVIC.c
test_imu_b2.CFLAGS += -DUSE_UART1 -DUART1_BAUD=B57600
-test_imu_b2.srcs += $(SRC_ARCH)/uart_hw.c
+test_imu_b2.srcs += $(SRC_ARCH)/mcu_periph/uart_arch.c
test_imu_b2.CFLAGS += -DDOWNLINK -DDOWNLINK_TRANSPORT=PprzTransport -DDOWNLINK_DEVICE=Uart1
test_imu_b2.srcs += downlink.c pprz_transport.c
@@ -313,11 +316,11 @@ test_rc_spektrum.CFLAGS += -DBOARD_CONFIG=$(BOARD_CFG) -I$(SRC_BOOZ) $(BOOZ_CFLA
test_rc_spektrum.CFLAGS += -DPERIPHERALS_AUTO_INIT
test_rc_spektrum.srcs += $(SRC_BOOZ_TEST)/booz2_test_radio_control.c
test_rc_spektrum.CFLAGS += -DPERIODIC_TASK_PERIOD='SYS_TICS_OF_SEC((1./512.))' -DTIME_LED=1
-test_rc_spektrum.CFLAGS += -DLED
+test_rc_spektrum.CFLAGS += -DUSE_LED
test_rc_spektrum.srcs += sys_time.c $(SRC_ARCH)/sys_time_hw.c $(SRC_ARCH)/armVIC.c
#test_rc_spektrum.CFLAGS += -DUSE_UART1 -DUART1_BAUD=B57600
-#test_rc_spektrum.srcs += $(SRC_ARCH)/uart_hw.c
+#test_rc_spektrum.srcs += $(SRC_ARCH)/mcu_periph/uart_arch.c
#test_rc_spektrum.CFLAGS += -DDOWNLINK -DDOWNLINK_TRANSPORT=PprzTransport -DDOWNLINK_DEVICE=Uart1
#test_rc_spektrum.srcs += downlink.c pprz_transport.c
test_rc_spektrum.CFLAGS += -DDOWNLINK -DDOWNLINK_TRANSPORT=PprzTransport -DUSE_USB_SERIAL
@@ -333,7 +336,7 @@ test_rc_spektrum.CFLAGS += -DUSE_UART0 -DUART0_BAUD=B115200
test_rc_spektrum.CFLAGS += -DRADIO_CONTROL_LINK=Uart0
test_rc_spektrum.srcs += $(SRC_SUBSYSTEMS)/radio_control.c \
$(SRC_SUBSYSTEMS)/radio_control_spektrum.c \
- $(SRC_ARCH)/uart_hw.c
+ $(SRC_ARCH)/mcu_periph/uart_arch.c
#
# test rc ppm
@@ -345,11 +348,11 @@ test_rc_ppm.CFLAGS += -DBOARD_CONFIG=$(BOARD_CFG) -I$(SRC_BOOZ) -I$(SRC_BOOZ_ARC
test_rc_ppm.CFLAGS += -DPERIPHERALS_AUTO_INIT
test_rc_ppm.srcs += $(SRC_BOOZ_TEST)/booz2_test_radio_control.c
test_rc_ppm.CFLAGS += -DPERIODIC_TASK_PERIOD='SYS_TICS_OF_SEC((1./512.))' -DTIME_LED=1
-test_rc_ppm.CFLAGS += -DLED
+test_rc_ppm.CFLAGS += -DUSE_LED
test_rc_ppm.srcs += sys_time.c $(SRC_ARCH)/sys_time_hw.c $(SRC_ARCH)/armVIC.c
#test_rc_ppm.CFLAGS += -DUSE_UART1 -DUART1_BAUD=B57600
-#test_rc_ppm.srcs += $(SRC_ARCH)/uart_hw.c
+#test_rc_ppm.srcs += $(SRC_ARCH)/mcu_periph/uart_arch.c
#test_rc_ppm.CFLAGS += -DDOWNLINK -DDOWNLINK_TRANSPORT=PprzTransport -DDOWNLINK_DEVICE=Uart1
#test_rc_ppm.srcs += downlink.c pprz_transport.c
test_rc_ppm.CFLAGS += -DDOWNLINK -DDOWNLINK_TRANSPORT=PprzTransport -DUSE_USB_SERIAL
@@ -374,11 +377,11 @@ test_mc.ARCHDIR = $(ARCH)
test_mc.CFLAGS += -DBOARD_CONFIG=$(BOARD_CFG) -I$(SRC_BOOZ) -I$(SRC_BOOZ_ARCH)
test_mc.srcs += $(SRC_BOOZ_TEST)/booz2_test_mc.c
test_mc.CFLAGS += -DPERIODIC_TASK_PERIOD='SYS_TICS_OF_SEC((1./512.))' -DTIME_LED=1
-test_mc.CFLAGS += -DLED
+test_mc.CFLAGS += -DUSE_LED
test_mc.srcs += sys_time.c $(SRC_ARCH)/sys_time_hw.c $(SRC_ARCH)/armVIC.c
test_mc.CFLAGS += -DUSE_UART1 -DUART1_BAUD=B57600
-test_mc.srcs += $(SRC_ARCH)/uart_hw.c
+test_mc.srcs += $(SRC_ARCH)/mcu_periph/uart_arch.c
test_mc.CFLAGS += -DDOWNLINK -DDOWNLINK_TRANSPORT=PprzTransport -DDOWNLINK_DEVICE=Uart1
test_mc.srcs += downlink.c pprz_transport.c
@@ -403,7 +406,7 @@ test_buss_bldc.CFLAGS += -DPERIODIC_TASK_PERIOD='SYS_TICS_OF_SEC((1./512.))' -DT
test_buss_bldc.srcs += sys_time.c $(SRC_ARCH)/sys_time_hw.c $(SRC_ARCH)/armVIC.c
test_buss_bldc.CFLAGS += -DUSE_UART1 -DUART1_BAUD=B57600
-test_buss_bldc.srcs += $(SRC_ARCH)/uart_hw.c
+test_buss_bldc.srcs += $(SRC_ARCH)/mcu_periph/uart_arch.c
test_buss_bldc.CFLAGS += -DDOWNLINK -DDOWNLINK_TRANSPORT=PprzTransport -DDOWNLINK_DEVICE=Uart1
test_buss_bldc.srcs += downlink.c pprz_transport.c
@@ -421,11 +424,11 @@ test_amc.ARCHDIR = $(ARCH)
test_amc.CFLAGS += -DBOARD_CONFIG=$(BOARD_CFG) -I$(SRC_BOOZ) -I$(SRC_BOOZ_ARCH)
test_amc.srcs += $(SRC_BOOZ_TEST)/booz2_test_amc.c
test_amc.CFLAGS += -DPERIODIC_TASK_PERIOD='SYS_TICS_OF_SEC((1./512.))' -DTIME_LED=1
-test_amc.CFLAGS += -DLED
+test_amc.CFLAGS += -DUSE_LED
test_amc.srcs += sys_time.c $(SRC_ARCH)/sys_time_hw.c $(SRC_ARCH)/armVIC.c
test_amc.CFLAGS += -DUSE_UART1 -DUART1_BAUD=B57600
-test_amc.srcs += $(SRC_ARCH)/uart_hw.c
+test_amc.srcs += $(SRC_ARCH)/mcu_periph/uart_arch.c
test_amc.CFLAGS += -DDOWNLINK -DDOWNLINK_TRANSPORT=PprzTransport -DDOWNLINK_DEVICE=Uart1
test_amc.srcs += downlink.c pprz_transport.c
@@ -465,12 +468,12 @@ test_baro_24.ARCHDIR = $(ARCH)
test_baro_24.CFLAGS += -DBOARD_CONFIG=$(BOARD_CFG) -I$(SRC_BOOZ) $(BOOZ_CFLAGS)
test_baro_24.srcs += $(SRC_BOOZ_TEST)/booz2_test_baro_24.c
test_baro_24.CFLAGS += -DPERIODIC_TASK_PERIOD='SYS_TICS_OF_SEC((1./5.))' -DTIME_LED=1
-test_baro_24.CFLAGS += -DLED
+test_baro_24.CFLAGS += -DUSE_LED
test_baro_24.srcs += sys_time.c $(SRC_ARCH)/sys_time_hw.c $(SRC_ARCH)/armVIC.c
test_baro_24.CFLAGS += -DUSE_UART1 -DUART1_BAUD=B57600
-test_baro_24.srcs += $(SRC_ARCH)/uart_hw.c
+test_baro_24.srcs += $(SRC_ARCH)/mcu_periph/uart_arch.c
test_baro_24.CFLAGS += -DDOWNLINK -DDOWNLINK_TRANSPORT=PprzTransport -DDOWNLINK_DEVICE=Uart1
test_baro_24.srcs += downlink.c pprz_transport.c
diff --git a/conf/autopilot/csc.makefile b/conf/autopilot/csc.makefile
index 2f83265bca..f30151ea99 100644
--- a/conf/autopilot/csc.makefile
+++ b/conf/autopilot/csc.makefile
@@ -46,14 +46,14 @@ ap.ARCHDIR = $(ARCHI)
ap.CFLAGS += -I$(SRC_CSC)
ap.CFLAGS += -DBOARD_CONFIG=$(BOARD_CFG)
ap.srcs += $(SRC_CSC)/csc_main.c
-ap.CFLAGS += -DLED -DTIME_LED=1
+ap.CFLAGS += -DUSE_LED -DTIME_LED=1
ap.CFLAGS += -DCSC_BOARD_ID=$(CSC_ID)
ap.CFLAGS += -DPERIODIC_TASK_PERIOD='SYS_TICS_OF_SEC((1./512.))' -DTIMER0_VIC_SLOT=1
ap.srcs += sys_time.c $(SRC_ARCH)/sys_time_hw.c $(SRC_ARCH)/armVIC.c
-ap.srcs += $(SRC_ARCH)/uart_hw.c
+ap.srcs += $(SRC_ARCH)/mcu_periph/uart_arch.c
ap.srcs += $(SRC_ARCH)/adc_hw.c
ap.CFLAGS += -DADC -DUSE_AD0 -DUSE_AD0_0 -DUSE_AD0_1
@@ -99,13 +99,13 @@ test_uart.ARCHDIR = $(ARCHI)
test_uart.CFLAGS += -I$(SRC_CSC)
test_uart.CFLAGS += -DBOARD_CONFIG=$(BOARD_CFG)
test_uart.srcs += $(SRC_CSC)/csc_test_uart.c
-test_uart.CFLAGS += -DLED
+test_uart.CFLAGS += -DUSE_LED
# -DTIME_LED=1
test_uart.CFLAGS += -DPERIODIC_TASK_PERIOD='SYS_TICS_OF_SEC((1./512.))' -DTIMER0_VIC_SLOT=1
test_uart.srcs += sys_time.c $(SRC_ARCH)/sys_time_hw.c $(SRC_ARCH)/armVIC.c
-test_uart.srcs += $(SRC_ARCH)/uart_hw.c
+test_uart.srcs += $(SRC_ARCH)/mcu_periph/uart_arch.c
test_uart.CFLAGS += -DUSE_UART1 -DUART1_BAUD=B57600 -DUART1_VIC_SLOT=6
test_uart.CFLAGS += -DDOWNLINK -DDOWNLINK_TRANSPORT=PprzTransport \
@@ -123,7 +123,7 @@ test_can1.ARCHDIR = $(ARCHI)
test_can1.CFLAGS += -I$(SRC_CSC)
test_can1.CFLAGS += -DBOARD_CONFIG=$(BOARD_CFG)
test_can1.srcs += $(SRC_CSC)/test_can1.c
-test_can1.CFLAGS += -DLED
+test_can1.CFLAGS += -DUSE_LED
# -DTIME_LED=1
test_can1.CFLAGS += -DPERIODIC_TASK_PERIOD='SYS_TICS_OF_SEC((1./512.))' -DTIMER0_VIC_SLOT=1
diff --git a/conf/autopilot/csc_ap.makefile b/conf/autopilot/csc_ap.makefile
index ee88e9d2c1..d1d6b55322 100644
--- a/conf/autopilot/csc_ap.makefile
+++ b/conf/autopilot/csc_ap.makefile
@@ -46,14 +46,14 @@ ap.ARCHDIR = $(ARCHI)
ap.CFLAGS += -I$(SRC_CSC)
ap.CFLAGS += -DBOARD_CONFIG=$(BOARD_CFG)
ap.srcs += $(SRC_CSC)/csc_ap_main.c
-ap.CFLAGS += -DLED -DTIME_LED=1
+ap.CFLAGS += -DUSE_LED -DTIME_LED=1
ap.CFLAGS += -DCSC_BOARD_ID=$(CSC_ID)
ap.CFLAGS += -DPERIODIC_TASK_PERIOD='SYS_TICS_OF_SEC((1./40.))' -DTIMER0_VIC_SLOT=1
ap.srcs += sys_time.c $(SRC_ARCH)/sys_time_hw.c $(SRC_ARCH)/armVIC.c
-ap.srcs += $(SRC_ARCH)/uart_hw.c
+ap.srcs += $(SRC_ARCH)/mcu_periph/uart_arch.c
ap.srcs += $(SRC_ARCH)/adc_hw.c
ap.CFLAGS += -DADC -DUSE_AD0 -DUSE_AD0_0 -DUSE_AD0_1
@@ -102,13 +102,13 @@ test_uart.ARCHDIR = $(ARCHI)
test_uart.CFLAGS += -I$(SRC_CSC)
test_uart.CFLAGS += -DBOARD_CONFIG=$(BOARD_CFG)
test_uart.srcs += $(SRC_CSC)/csc_test_uart.c
-test_uart.CFLAGS += -DLED
+test_uart.CFLAGS += -DUSE_LED
# -DTIME_LED=1
test_uart.CFLAGS += -DPERIODIC_TASK_PERIOD='SYS_TICS_OF_SEC((1./512.))' -DTIMER0_VIC_SLOT=1
test_uart.srcs += sys_time.c $(SRC_ARCH)/sys_time_hw.c $(SRC_ARCH)/armVIC.c
-test_uart.srcs += $(SRC_ARCH)/uart_hw.c
+test_uart.srcs += $(SRC_ARCH)/mcu_periph/uart_arch.c
test_uart.CFLAGS += -DUSE_UART1 -DUART1_BAUD=B57600 -DUART1_VIC_SLOT=6
test_uart.CFLAGS += -DDOWNLINK -DDOWNLINK_TRANSPORT=PprzTransport \
diff --git a/conf/autopilot/mercury.makefile b/conf/autopilot/mercury.makefile
index 1c2a5b1a9e..0bf68c81ef 100644
--- a/conf/autopilot/mercury.makefile
+++ b/conf/autopilot/mercury.makefile
@@ -49,7 +49,7 @@ ap.ARCHDIR = $(ARCHI)
ap.CFLAGS += -I$(SRC_CSC) -I$(SRC_BOOZ) -I$(SRC_CSC_ARCH)
ap.CFLAGS += -DBOARD_CONFIG=$(BOARD_CFG)
ap.srcs += $(SRC_CSC)/mercury_main.c
-ap.CFLAGS += -DLED -DTIME_LED=1
+ap.CFLAGS += -DUSE_LED -DTIME_LED=1
ap.CFLAGS += -DAHRS_ALIGNER_LED=2
ap.CFLAGS += -DCSC_BOARD_ID=$(CSC_ID)
@@ -57,7 +57,7 @@ ap.CFLAGS += -DCSC_BOARD_ID=$(CSC_ID)
ap.CFLAGS += -DPERIODIC_TASK_PERIOD='SYS_TICS_OF_SEC((1./512.))' -DTIMER0_VIC_SLOT=1
ap.srcs += sys_time.c $(SRC_ARCH)/sys_time_hw.c $(SRC_ARCH)/armVIC.c
-ap.srcs += $(SRC_ARCH)/uart_hw.c
+ap.srcs += $(SRC_ARCH)/mcu_periph/uart_arch.c
ap.srcs += $(SRC_ARCH)/adc_hw.c
ap.CFLAGS += -DADC -DUSE_AD0 -DUSE_AD0_0 -DUSE_AD0_1
@@ -128,13 +128,13 @@ test_uart.ARCHDIR = $(ARCHI)
test_uart.CFLAGS += -I$(SRC_CSC)
test_uart.CFLAGS += -DBOARD_CONFIG=$(BOARD_CFG)
test_uart.srcs += $(SRC_CSC)/csc_test_uart.c
-test_uart.CFLAGS += -DLED
+test_uart.CFLAGS += -DUSE_LED
# -DTIME_LED=1
test_uart.CFLAGS += -DPERIODIC_TASK_PERIOD='SYS_TICS_OF_SEC((1./512.))' -DTIMER0_VIC_SLOT=1
test_uart.srcs += sys_time.c $(SRC_ARCH)/sys_time_hw.c $(SRC_ARCH)/armVIC.c
-test_uart.srcs += $(SRC_ARCH)/uart_hw.c
+test_uart.srcs += $(SRC_ARCH)/mcu_periph/uart_arch.c
test_uart.CFLAGS += -DUSE_UART1 -DUART1_BAUD=B57600 -DUART1_VIC_SLOT=6
test_uart.CFLAGS += -DDOWNLINK -DDOWNLINK_TRANSPORT=PprzTransport \
diff --git a/conf/autopilot/mercury_csc.makefile b/conf/autopilot/mercury_csc.makefile
index 1515defa7b..b8f5cd04e8 100644
--- a/conf/autopilot/mercury_csc.makefile
+++ b/conf/autopilot/mercury_csc.makefile
@@ -47,7 +47,7 @@ ap.ARCHDIR = $(ARCH)
ap.CFLAGS += -I$(SRC_CSC) -I$(SRC_CSC_ARCH)
ap.CFLAGS += -DBOARD_CONFIG=$(BOARD_CFG)
ap.srcs += $(SRC_CSC)/mercury_csc_main.c
-ap.CFLAGS += -DLED -DTIME_LED=1
+ap.CFLAGS += -DUSE_LED -DTIME_LED=1
ap.CFLAGS += -DCSC_BOARD_ID=$(CSC_ID)
@@ -79,7 +79,7 @@ ap.CFLAGS += -DUSE_UART0 -DUART0_BAUD=B57600 -DUART0_VIC_SLOT=5
ap.CFLAGS += -DACTUATORS=\"servos_direct_hw.h\"
ap.srcs += actuators.c
-ap.srcs += $(SRC_ARCH)/uart_hw.c
+ap.srcs += $(SRC_ARCH)/mcu_periph/uart_arch.c
ap.srcs += $(SRC_ARCH)/servos_direct_hw.c
ap.srcs += $(SRC_CSC)/csc_servos.c
ap.srcs += $(SRC_CSC)/csc_bat_monitor.c
@@ -98,13 +98,13 @@ test_uart.ARCHDIR = $(ARCH)
test_uart.CFLAGS += -I$(SRC_CSC)
test_uart.CFLAGS += -DBOARD_CONFIG=$(BOARD_CFG)
test_uart.srcs += $(SRC_CSC)/csc_test_uart.c
-test_uart.CFLAGS += -DLED
+test_uart.CFLAGS += -DUSE_LED
# -DTIME_LED=1
test_uart.CFLAGS += -DPERIODIC_TASK_PERIOD='SYS_TICS_OF_SEC((1./512.))' -DTIMER0_VIC_SLOT=1
test_uart.srcs += sys_time.c $(SRC_ARCH)/sys_time_hw.c $(SRC_ARCH)/armVIC.c
-test_uart.srcs += $(SRC_ARCH)/uart_hw.c
+test_uart.srcs += $(SRC_ARCH)/mcu_periph/uart_arch.c
test_uart.CFLAGS += -DUSE_UART1 -DUART1_BAUD=B57600 -DUART1_VIC_SLOT=6
test_uart.CFLAGS += -DDOWNLINK -DDOWNLINK_TRANSPORT=PprzTransport \
@@ -122,7 +122,7 @@ test_can1.ARCHDIR = $(ARCH)
test_can1.CFLAGS += -I$(SRC_CSC)
test_can1.CFLAGS += -DBOARD_CONFIG=$(BOARD_CFG)
test_can1.srcs += $(SRC_CSC)/test_can1.c
-test_can1.CFLAGS += -DLED
+test_can1.CFLAGS += -DUSE_LED
# -DTIME_LED=1
test_can1.CFLAGS += -DPERIODIC_TASK_PERIOD='SYS_TICS_OF_SEC((1./512.))' -DTIMER0_VIC_SLOT=1
diff --git a/conf/autopilot/obsolete/booz_test_progs.makefile b/conf/autopilot/obsolete/booz_test_progs.makefile
index 1374184582..00fa88a447 100644
--- a/conf/autopilot/obsolete/booz_test_progs.makefile
+++ b/conf/autopilot/obsolete/booz_test_progs.makefile
@@ -77,7 +77,7 @@ test_telemetry.CFLAGS += -DUSE_$(MODEM_PORT)
test_telemetry.CFLAGS += -D$(MODEM_PORT)_BAUD=$(MODEM_BAUD)
test_telemetry.CFLAGS += -DDOWNLINK -DDOWNLINK_TRANSPORT=PprzTransport -DDOWNLINK_DEVICE=$(MODEM_PORT)
test_telemetry.srcs += downlink.c pprz_transport.c
-test_telemetry.srcs += $(SRC_ARCH)/uart_hw.c
+test_telemetry.srcs += $(SRC_ARCH)/mcu_periph/uart_arch.c
#
@@ -102,7 +102,7 @@ test_baro.srcs += sys_time.c $(SRC_ARCH)/sys_time_hw.c
test_baro.CFLAGS += -DDOWNLINK -DDOWNLINK_TRANSPORT=PprzTransport -DDOWNLINK_DEVICE=$(MODEM_PORT)
test_baro.srcs += downlink.c pprz_transport.c
test_baro.CFLAGS += -DUSE_$(MODEM_PORT) -D$(MODEM_PORT)_BAUD=$(MODEM_BAUD)
-test_baro.srcs += $(SRC_ARCH)/uart_hw.c
+test_baro.srcs += $(SRC_ARCH)/mcu_periph/uart_arch.c
test_baro.srcs += $(SRC_BOARD)/baro_board.c
test_baro.CFLAGS += -DBOOZ2_ANALOG_BARO_PERIOD='SYS_TICS_OF_SEC((1./100.))'
test_baro.CFLAGS += -DADC0_VIC_SLOT=2
@@ -146,7 +146,7 @@ test_rc_ppm.CFLAGS += -DTIME_LED=$(SYS_TIME_LED)
test_rc_ppm.srcs += sys_time.c $(SRC_ARCH)/sys_time_hw.c $(SRC_ARCH)/armVIC.c
test_rc_ppm.CFLAGS += -DUSE_$(MODEM_PORT) -D$(MODEM_PORT)_BAUD=$(MODEM_BAUD)
-test_rc_ppm.srcs += $(SRC_ARCH)/uart_hw.c
+test_rc_ppm.srcs += $(SRC_ARCH)/mcu_periph/uart_arch.c
test_rc_ppm.CFLAGS += -DDOWNLINK -DDOWNLINK_TRANSPORT=PprzTransport -DDOWNLINK_DEVICE=$(MODEM_PORT)
test_rc_ppm.srcs += downlink.c pprz_transport.c
test_rc_ppm.CFLAGS += -DRADIO_CONTROL -DRADIO_CONTROL_LED=$(RADIO_CONTROL_LED)
@@ -192,7 +192,7 @@ test_actuators_mkk.CFLAGS += -DPERIODIC_TASK_PERIOD='SYS_TICS_OF_SEC(1./512.)'
test_actuators_mkk.srcs += sys_time.c $(SRC_ARCH)/sys_time_hw.c
test_actuators_mkk.CFLAGS += -DUSE_$(MODEM_PORT) -D$(MODEM_PORT)_BAUD=$(MODEM_BAUD)
-test_actuators_mkk.srcs += $(SRC_ARCH)/uart_hw.c
+test_actuators_mkk.srcs += $(SRC_ARCH)/mcu_periph/uart_arch.c
test_actuators_mkk.CFLAGS += -DDOWNLINK -DDOWNLINK_TRANSPORT=PprzTransport -DDOWNLINK_DEVICE=$(MODEM_PORT)
test_actuators_mkk.srcs += downlink.c pprz_transport.c
@@ -223,7 +223,7 @@ test_ami601.CFLAGS += -DPERIODIC_TASK_PERIOD='SYS_TICS_OF_SEC(1./512.)'
test_ami601.srcs += sys_time.c $(SRC_ARCH)/sys_time_hw.c
test_ami601.CFLAGS += -DUSE_$(MODEM_PORT) -D$(MODEM_PORT)_BAUD=$(MODEM_BAUD)
-test_ami601.srcs += $(SRC_ARCH)/uart_hw.c
+test_ami601.srcs += $(SRC_ARCH)/mcu_periph/uart_arch.c
test_ami601.CFLAGS += -DDOWNLINK -DDOWNLINK_TRANSPORT=PprzTransport -DDOWNLINK_DEVICE=$(MODEM_PORT)
test_ami601.srcs += downlink.c pprz_transport.c
diff --git a/conf/autopilot/obsolete/lisa_test_progs.makefile b/conf/autopilot/obsolete/lisa_test_progs.makefile
index 820d88da9d..7be32e25e9 100644
--- a/conf/autopilot/obsolete/lisa_test_progs.makefile
+++ b/conf/autopilot/obsolete/lisa_test_progs.makefile
@@ -186,7 +186,7 @@ test_uart.CFLAGS += -DUSE_SYS_TIME -DSYS_TIME_LED=1
test_uart.CFLAGS += -DPERIODIC_TASK_PERIOD='SYS_TICS_OF_SEC(1./512.)'
test_uart.srcs += sys_time.c $(SRC_ARCH)/sys_time_hw.c
test_uart.CFLAGS += -DUSE_UART2 -DUART2_BAUD=B57600
-test_uart.srcs += $(SRC_ARCH)/uart_hw.c
+test_uart.srcs += $(SRC_ARCH)/mcu_periph/uart_arch.c
@@ -205,7 +205,7 @@ test_telemetry1.CFLAGS += -DUSE_SYS_TIME -DSYS_TIME_LED=1
test_telemetry1.CFLAGS += -DPERIODIC_TASK_PERIOD='SYS_TICS_OF_SEC(1./512.)'
test_telemetry1.srcs += sys_time.c $(SRC_ARCH)/sys_time_hw.c
test_telemetry1.CFLAGS += -DUSE_UART1 -DUART1_BAUD=B57600
-test_telemetry1.srcs += $(SRC_ARCH)/uart_hw.c
+test_telemetry1.srcs += $(SRC_ARCH)/mcu_periph/uart_arch.c
test_telemetry1.CFLAGS += -DDOWNLINK -DDOWNLINK_TRANSPORT=PprzTransport -DDOWNLINK_DEVICE=Uart1
test_telemetry1.srcs += downlink.c pprz_transport.c
@@ -225,7 +225,7 @@ test_telemetry2.CFLAGS += -DUSE_SYS_TIME -DSYS_TIME_LED=1
test_telemetry2.CFLAGS += -DPERIODIC_TASK_PERIOD='SYS_TICS_OF_SEC(1./512.)'
test_telemetry2.srcs += sys_time.c $(SRC_ARCH)/sys_time_hw.c
test_telemetry2.CFLAGS += -DUSE_UART2 -DUART2_BAUD=B57600
-test_telemetry2.srcs += $(SRC_ARCH)/uart_hw.c
+test_telemetry2.srcs += $(SRC_ARCH)/mcu_periph/uart_arch.c
test_telemetry2.CFLAGS += -DDOWNLINK -DDOWNLINK_TRANSPORT=PprzTransport -DDOWNLINK_DEVICE=Uart2
test_telemetry2.srcs += downlink.c pprz_transport.c
@@ -245,7 +245,7 @@ test_telemetry3.CFLAGS += -DUSE_SYS_TIME -DSYS_TIME_LED=1
test_telemetry3.CFLAGS += -DPERIODIC_TASK_PERIOD='SYS_TICS_OF_SEC(1./512.)'
test_telemetry3.srcs += sys_time.c $(SRC_ARCH)/sys_time_hw.c
test_telemetry3.CFLAGS += -DUSE_UART3 -DUART3_BAUD=B57600
-test_telemetry3.srcs += $(SRC_ARCH)/uart_hw.c
+test_telemetry3.srcs += $(SRC_ARCH)/mcu_periph/uart_arch.c
test_telemetry3.CFLAGS += -DDOWNLINK -DDOWNLINK_TRANSPORT=PprzTransport -DDOWNLINK_DEVICE=Uart3
test_telemetry3.srcs += downlink.c pprz_transport.c
@@ -264,7 +264,7 @@ test_datalink.CFLAGS += -DUSE_SYS_TIME -DSYS_TIME_LED=1
test_datalink.CFLAGS += -DPERIODIC_TASK_PERIOD='SYS_TICS_OF_SEC(1./512.)'
test_datalink.srcs += sys_time.c $(SRC_ARCH)/sys_time_hw.c
test_datalink.CFLAGS += -DUSE_UART2 -DUART2_BAUD=B57600
-test_datalink.srcs += $(SRC_ARCH)/uart_hw.c
+test_datalink.srcs += $(SRC_ARCH)/mcu_periph/uart_arch.c
test_datalink.CFLAGS += -DDOWNLINK -DDOWNLINK_TRANSPORT=PprzTransport -DDOWNLINK_DEVICE=Uart2
test_datalink.srcs += downlink.c pprz_transport.c
test_datalink.CFLAGS += -DDATALINK=PPRZ -DPPRZ_UART=Uart2
@@ -296,7 +296,7 @@ tunnel.CFLAGS += -DUSE_UART2 -DUART2_BAUD=B57600
#tunnel.CFLAGS += -DUSE_UART1 -DUART1_BAUD=B115200
#tunnel.CFLAGS += -DUSE_UART2 -DUART2_BAUD=B115200
-tunnel.srcs += $(SRC_ARCH)/uart_hw.c
+tunnel.srcs += $(SRC_ARCH)/mcu_periph/uart_arch.c
@@ -315,7 +315,7 @@ test_float.CFLAGS += -DUSE_SYS_TIME -DSYS_TIME_LED=1
test_float.CFLAGS += -DPERIODIC_TASK_PERIOD='SYS_TICS_OF_SEC(1./512.)'
test_float.srcs += sys_time.c $(SRC_ARCH)/sys_time_hw.c
test_float.CFLAGS += -DUSE_UART2 -DUART2_BAUD=B57600
-test_float.srcs += $(SRC_ARCH)/uart_hw.c
+test_float.srcs += $(SRC_ARCH)/mcu_periph/uart_arch.c
test_float.CFLAGS += -DDOWNLINK -DDOWNLINK_TRANSPORT=PprzTransport -DDOWNLINK_DEVICE=Uart2
test_float.srcs += downlink.c pprz_transport.c
test_float.srcs += lisa/plug_sys.c
@@ -352,7 +352,7 @@ test_rc_24.CFLAGS += -DPERIODIC_TASK_PERIOD='SYS_TICS_OF_SEC((1./512.))'
test_rc_24.srcs += sys_time.c $(SRC_ARCH)/sys_time_hw.c
test_rc_24.CFLAGS += -DUSE_UART2 -DUART2_BAUD=B57600
-test_rc_24.srcs += $(SRC_ARCH)/uart_hw.c
+test_rc_24.srcs += $(SRC_ARCH)/mcu_periph/uart_arch.c
test_rc_24.CFLAGS += -DDOWNLINK -DDOWNLINK_TRANSPORT=PprzTransport -DDOWNLINK_DEVICE=Uart2
test_rc_24.srcs += downlink.c pprz_transport.c
@@ -363,7 +363,7 @@ test_rc_24.CFLAGS += -DUSE_UART3 -DUART3_BAUD=B115200
test_rc_24.CFLAGS += -DRADIO_CONTROL_LINK=Uart3
test_rc_24.srcs += $(SRC_SUBSYSTEMS)/radio_control.c \
$(SRC_BOOZ)/subsystems/radio_control/spektrum.c
-# $(SRC_ARCH)/uart_hw.c
+# $(SRC_ARCH)/mcu_periph/uart_arch.c
#
@@ -389,7 +389,7 @@ test_servos.srcs += $(SRC_FIRMWARE)/actuators/actuators_pwm.c $(SRC_FIRMWARE)/ac
#test_servos.CFLAGS += -DUSE_UART1 -DUART1_BAUD=B57600
-#test_servos.srcs += $(SRC_ARCH)/uart_hw.c
+#test_servos.srcs += $(SRC_ARCH)/mcu_periph/uart_arch.c
#test_servos.CFLAGS += -DDOWNLINK -DDOWNLINK_TRANSPORT=PprzTransport -DDOWNLINK_DEVICE=Uart1
#test_servos.srcs += downlink.c pprz_transport.c
@@ -416,7 +416,7 @@ test_imu_b2.CFLAGS += -DPERIODIC_TASK_PERIOD='SYS_TICS_OF_SEC((1./512.))'
test_imu_b2.srcs += sys_time.c $(SRC_ARCH)/sys_time_hw.c
test_imu_b2.CFLAGS += -DUSE_UART2 -DUART2_BAUD=B57600
-test_imu_b2.srcs += $(SRC_ARCH)/uart_hw.c
+test_imu_b2.srcs += $(SRC_ARCH)/mcu_periph/uart_arch.c
test_imu_b2.CFLAGS += -DDOWNLINK -DDOWNLINK_TRANSPORT=PprzTransport -DDOWNLINK_DEVICE=Uart2
test_imu_b2.srcs += downlink.c pprz_transport.c
@@ -450,7 +450,7 @@ test_imu_crista.CFLAGS += -DPERIODIC_TASK_PERIOD='SYS_TICS_OF_SEC((1./512.))'
test_imu_crista.srcs += sys_time.c $(SRC_ARCH)/sys_time_hw.c
test_imu_crista.CFLAGS += -DUSE_UART2 -DUART2_BAUD=B57600
-test_imu_crista.srcs += $(SRC_ARCH)/uart_hw.c
+test_imu_crista.srcs += $(SRC_ARCH)/mcu_periph/uart_arch.c
test_imu_crista.CFLAGS += -DDOWNLINK -DDOWNLINK_TRANSPORT=PprzTransport -DDOWNLINK_DEVICE=Uart2
test_imu_crista.srcs += downlink.c pprz_transport.c
@@ -482,7 +482,7 @@ test_imu_aspirin.CFLAGS += -DPERIODIC_TASK_PERIOD='SYS_TICS_OF_SEC((1./512.))'
test_imu_aspirin.srcs += sys_time.c $(SRC_ARCH)/sys_time_hw.c
test_imu_aspirin.CFLAGS += -DUSE_UART2 -DUART2_BAUD=B57600
-test_imu_aspirin.srcs += $(SRC_ARCH)/uart_hw.c
+test_imu_aspirin.srcs += $(SRC_ARCH)/mcu_periph/uart_arch.c
test_imu_aspirin.CFLAGS += -DDOWNLINK -DDOWNLINK_TRANSPORT=PprzTransport -DDOWNLINK_DEVICE=Uart2
test_imu_aspirin.srcs += downlink.c pprz_transport.c
@@ -558,7 +558,7 @@ test_mc_asctec_v1_simple.srcs += sys_time.c $(SRC_ARCH)/sys_time_hw.c
test_mc_asctec_v1_simple.CFLAGS += -DUSE_I2C1
test_mc_asctec_v1_simple.srcs += i2c.c $(SRC_ARCH)/i2c_hw.c
test_mc_asctec_v1_simple.CFLAGS += -DUSE_UART2 -DUART2_BAUD=B57600
-test_mc_asctec_v1_simple.srcs += $(SRC_ARCH)/uart_hw.c
+test_mc_asctec_v1_simple.srcs += $(SRC_ARCH)/mcu_periph/uart_arch.c
test_mc_asctec_v1_simple.CFLAGS += -DDOWNLINK -DDOWNLINK_TRANSPORT=PprzTransport -DDOWNLINK_DEVICE=Uart2
test_mc_asctec_v1_simple.srcs += downlink.c pprz_transport.c
@@ -602,7 +602,7 @@ test_actuators_mkk.CFLAGS += -DPERIODIC_TASK_PERIOD='SYS_TICS_OF_SEC(1./512.)'
test_actuators_mkk.srcs += sys_time.c $(SRC_ARCH)/sys_time_hw.c
test_actuators_mkk.CFLAGS += -DUSE_UART2 -DUART2_BAUD=B57600
-test_actuators_mkk.srcs += $(SRC_ARCH)/uart_hw.c
+test_actuators_mkk.srcs += $(SRC_ARCH)/mcu_periph/uart_arch.c
test_actuators_mkk.CFLAGS += -DDOWNLINK -DDOWNLINK_TRANSPORT=PprzTransport -DDOWNLINK_DEVICE=Uart2
test_actuators_mkk.srcs += downlink.c pprz_transport.c
@@ -635,7 +635,7 @@ test_actuators_asctec.CFLAGS += -DPERIODIC_TASK_PERIOD='SYS_TICS_OF_SEC(1./512.)
test_actuators_asctec.srcs += sys_time.c $(SRC_ARCH)/sys_time_hw.c
test_actuators_asctec.CFLAGS += -DUSE_UART2 -DUART2_BAUD=B57600
-test_actuators_asctec.srcs += $(SRC_ARCH)/uart_hw.c
+test_actuators_asctec.srcs += $(SRC_ARCH)/mcu_periph/uart_arch.c
test_actuators_asctec.CFLAGS += -DDOWNLINK -DDOWNLINK_TRANSPORT=PprzTransport -DDOWNLINK_DEVICE=Uart2
test_actuators_asctec.srcs += downlink.c pprz_transport.c
@@ -686,7 +686,7 @@ test_baro.CFLAGS += -DPERIODIC_TASK_PERIOD='SYS_TICS_OF_SEC(1./512.)'
test_baro.srcs += sys_time.c $(SRC_ARCH)/sys_time_hw.c
test_baro.CFLAGS += -DUSE_UART2 -DUART2_BAUD=B57600
-test_baro.srcs += $(SRC_ARCH)/uart_hw.c
+test_baro.srcs += $(SRC_ARCH)/mcu_periph/uart_arch.c
test_baro.CFLAGS += -DDOWNLINK -DDOWNLINK_TRANSPORT=PprzTransport -DDOWNLINK_DEVICE=Uart2
test_baro.srcs += downlink.c pprz_transport.c
@@ -708,7 +708,7 @@ test_baro2.CFLAGS += -DPERIODIC_TASK_PERIOD='SYS_TICS_OF_SEC(1./512.)'
test_baro2.srcs += sys_time.c $(SRC_ARCH)/sys_time_hw.c
test_baro2.CFLAGS += -DUSE_UART2 -DUART2_BAUD=B57600
-test_baro2.srcs += $(SRC_ARCH)/uart_hw.c
+test_baro2.srcs += $(SRC_ARCH)/mcu_periph/uart_arch.c
test_baro2.CFLAGS += -DDOWNLINK -DDOWNLINK_TRANSPORT=PprzTransport -DDOWNLINK_DEVICE=Uart2
test_baro2.srcs += downlink.c pprz_transport.c
@@ -734,7 +734,7 @@ test_baro3.CFLAGS += -DPERIODIC_TASK_PERIOD='SYS_TICS_OF_SEC(1./512.)'
test_baro3.srcs += sys_time.c $(SRC_ARCH)/sys_time_hw.c
test_baro3.CFLAGS += -DUSE_UART2 -DUART2_BAUD=B57600
-test_baro3.srcs += $(SRC_ARCH)/uart_hw.c
+test_baro3.srcs += $(SRC_ARCH)/mcu_periph/uart_arch.c
test_baro3.CFLAGS += -DDOWNLINK -DDOWNLINK_TRANSPORT=PprzTransport -DDOWNLINK_DEVICE=Uart2
test_baro3.srcs += downlink.c pprz_transport.c
@@ -760,7 +760,7 @@ test_spi_slave.CFLAGS += -DPERIODIC_TASK_PERIOD='SYS_TICS_OF_SEC(1./512.)'
test_spi_slave.srcs += sys_time.c $(SRC_ARCH)/sys_time_hw.c
test_spi_slave.CFLAGS += -DUSE_SPI1_IRQ
test_spi_slave.CFLAGS += -DUSE_UART1 -DUART1_BAUD=B57600
-test_spi_slave.srcs += $(SRC_ARCH)/uart_hw.c
+test_spi_slave.srcs += $(SRC_ARCH)/mcu_periph/uart_arch.c
test_spi_slave.CFLAGS += -DDOWNLINK -DDOWNLINK_TRANSPORT=PprzTransport -DDOWNLINK_DEVICE=Uart1
test_spi_slave.srcs += downlink.c pprz_transport.c
@@ -780,7 +780,7 @@ test_spi_slave2.CFLAGS += -DUSE_SYS_TIME -DSYS_TIME_LED=1
test_spi_slave2.CFLAGS += -DPERIODIC_TASK_PERIOD='SYS_TICS_OF_SEC(1./512.)'
test_spi_slave2.srcs += sys_time.c $(SRC_ARCH)/sys_time_hw.c
test_spi_slave2.CFLAGS += -DUSE_UART1 -DUART1_BAUD=B57600
-test_spi_slave2.srcs += $(SRC_ARCH)/uart_hw.c
+test_spi_slave2.srcs += $(SRC_ARCH)/mcu_periph/uart_arch.c
test_spi_slave2.CFLAGS += -DDOWNLINK -DDOWNLINK_TRANSPORT=PprzTransport -DDOWNLINK_DEVICE=Uart1
test_spi_slave2.srcs += downlink.c pprz_transport.c
@@ -804,7 +804,7 @@ stm_test_spi_link.CFLAGS += -DPERIODIC_TASK_PERIOD='SYS_TICS_OF_SEC(1./512.)'
stm_test_spi_link.srcs += sys_time.c $(SRC_ARCH)/sys_time_hw.c
stm_test_spi_link.CFLAGS += -DUSE_UART2 -DUART2_BAUD=B57600
-stm_test_spi_link.srcs += $(SRC_ARCH)/uart_hw.c
+stm_test_spi_link.srcs += $(SRC_ARCH)/mcu_periph/uart_arch.c
stm_test_spi_link.CFLAGS += -DUSE_OVERO_LINK -DOVERO_LINK_MSG_UP=AutopilotMessageFoo -DOVERO_LINK_MSG_DOWN=AutopilotMessageFoo
stm_test_spi_link.CFLAGS += -DOVERO_LINK_LED_OK=3 -DOVERO_LINK_LED_KO=2 -DUSE_DMA1_C2_IRQ
@@ -844,7 +844,7 @@ test_sc18is600.CFLAGS += -DPERIODIC_TASK_PERIOD='SYS_TICS_OF_SEC((1./128.))'
test_sc18is600.srcs += sys_time.c $(SRC_ARCH)/sys_time_hw.c
test_sc18is600.CFLAGS += -DUSE_UART2 -DUART2_BAUD=B57600
-test_sc18is600.srcs += $(SRC_ARCH)/uart_hw.c
+test_sc18is600.srcs += $(SRC_ARCH)/mcu_periph/uart_arch.c
test_sc18is600.CFLAGS += -DDOWNLINK -DDOWNLINK_TRANSPORT=PprzTransport -DDOWNLINK_DEVICE=Uart2
test_sc18is600.srcs += downlink.c pprz_transport.c
@@ -878,7 +878,7 @@ test_max1168.srcs += peripherals/max1168.c \
$(SRC_ARCH)/peripherals/max1168_arch.c
test_max1168.CFLAGS += -DUSE_UART1 -DUART1_BAUD=B57600
-test_max1168.srcs += $(SRC_ARCH)/uart_hw.c
+test_max1168.srcs += $(SRC_ARCH)/mcu_periph/uart_arch.c
test_max1168.CFLAGS += -DDOWNLINK -DDOWNLINK_TRANSPORT=PprzTransport -DDOWNLINK_DEVICE=Uart1
test_max1168.srcs += downlink.c pprz_transport.c
@@ -907,7 +907,7 @@ test_ms2001.srcs += peripherals/ms2001.c \
$(SRC_ARCH)/peripherals/ms2001_arch.c
test_ms2001.CFLAGS += -DUSE_UART1 -DUART1_BAUD=B57600
-test_ms2001.srcs += $(SRC_ARCH)/uart_hw.c
+test_ms2001.srcs += $(SRC_ARCH)/mcu_periph/uart_arch.c
test_ms2001.CFLAGS += -DDOWNLINK -DDOWNLINK_TRANSPORT=PprzTransport -DDOWNLINK_DEVICE=Uart1
test_ms2001.srcs += downlink.c pprz_transport.c
@@ -930,7 +930,7 @@ test_adxl345.CFLAGS += -DPERIODIC_TASK_PERIOD='SYS_TICS_OF_SEC((1./512.))'
test_adxl345.srcs += sys_time.c $(SRC_ARCH)/sys_time_hw.c
test_adxl345.CFLAGS += -DUSE_UART2 -DUART2_BAUD=B57600
-test_adxl345.srcs += $(SRC_ARCH)/uart_hw.c
+test_adxl345.srcs += $(SRC_ARCH)/mcu_periph/uart_arch.c
test_adxl345.CFLAGS += -DDOWNLINK -DDOWNLINK_TRANSPORT=PprzTransport -DDOWNLINK_DEVICE=Uart2
test_adxl345.srcs += downlink.c pprz_transport.c
@@ -955,7 +955,7 @@ test_adxl345_dma.CFLAGS += -DPERIODIC_TASK_PERIOD='SYS_TICS_OF_SEC((1./512.))'
test_adxl345_dma.srcs += sys_time.c $(SRC_ARCH)/sys_time_hw.c
test_adxl345_dma.CFLAGS += -DUSE_UART2 -DUART2_BAUD=B57600
-test_adxl345_dma.srcs += $(SRC_ARCH)/uart_hw.c
+test_adxl345_dma.srcs += $(SRC_ARCH)/mcu_periph/uart_arch.c
test_adxl345_dma.CFLAGS += -DDOWNLINK -DDOWNLINK_TRANSPORT=PprzTransport -DDOWNLINK_DEVICE=Uart2
test_adxl345_dma.srcs += downlink.c pprz_transport.c
@@ -984,7 +984,7 @@ test_itg3200.CFLAGS += -DPERIODIC_TASK_PERIOD='SYS_TICS_OF_SEC((1./512.))'
test_itg3200.srcs += sys_time.c $(SRC_ARCH)/sys_time_hw.c
test_itg3200.CFLAGS += -DUSE_UART2 -DUART2_BAUD=B57600
-test_itg3200.srcs += $(SRC_ARCH)/uart_hw.c
+test_itg3200.srcs += $(SRC_ARCH)/mcu_periph/uart_arch.c
test_itg3200.CFLAGS += -DDOWNLINK -DDOWNLINK_TRANSPORT=PprzTransport -DDOWNLINK_DEVICE=Uart2
test_itg3200.srcs += downlink.c pprz_transport.c
@@ -1010,7 +1010,7 @@ test_hmc5843.CFLAGS += -DPERIODIC_TASK_PERIOD='SYS_TICS_OF_SEC(1./512.)'
test_hmc5843.srcs += sys_time.c $(SRC_ARCH)/sys_time_hw.c
test_hmc5843.CFLAGS += -DUSE_UART2 -DUART2_BAUD=B57600
-test_hmc5843.srcs += $(SRC_ARCH)/uart_hw.c
+test_hmc5843.srcs += $(SRC_ARCH)/mcu_periph/uart_arch.c
test_hmc5843.CFLAGS += -DDOWNLINK -DDOWNLINK_TRANSPORT=PprzTransport -DDOWNLINK_DEVICE=Uart2
test_hmc5843.srcs += downlink.c pprz_transport.c
@@ -1042,7 +1042,7 @@ test_aspirin.CFLAGS += -DPERIODIC_TASK_PERIOD='SYS_TICS_OF_SEC((1./512.))'
test_aspirin.srcs += sys_time.c $(SRC_ARCH)/sys_time_hw.c
test_aspirin.CFLAGS += -DUSE_UART2 -DUART2_BAUD=B57600
-test_aspirin.srcs += $(SRC_ARCH)/uart_hw.c
+test_aspirin.srcs += $(SRC_ARCH)/mcu_periph/uart_arch.c
test_aspirin.CFLAGS += -DDOWNLINK -DDOWNLINK_TRANSPORT=PprzTransport -DDOWNLINK_DEVICE=Uart2
test_aspirin.srcs += downlink.c pprz_transport.c
@@ -1086,7 +1086,7 @@ ptw.srcs += lisa/lisa_overo_link.c lisa/arch/stm32/lisa_overo_link_arch.c
# Telemetry
ptw.CFLAGS += -DUSE_OVERO_LINK_TELEMETRY
#ptw.CFLAGS += -DUSE_UART2 -DUART2_BAUD=B57600
-#ptw.srcs += $(SRC_ARCH)/uart_hw.c
+#ptw.srcs += $(SRC_ARCH)/mcu_periph/uart_arch.c
ptw.CFLAGS += -DDOWNLINK -DDOWNLINK_TRANSPORT=PprzTransport -DDOWNLINK_DEVICE=OveroLinkTelemetry
ptw.srcs += downlink.c pprz_transport.c
@@ -1111,7 +1111,7 @@ ptw.srcs += $(SRC_SUBSYSTEMS)/radio_control.c \
ptw.CFLAGS += -DRADIO_CONTROL_LED=6
ptw.CFLAGS += -DUSE_UART3 -DUART3_BAUD=B115200
ptw.CFLAGS += -DRADIO_CONTROL_LINK=Uart3
-ptw.srcs += $(SRC_ARCH)/uart_hw.c
+ptw.srcs += $(SRC_ARCH)/mcu_periph/uart_arch.c
# Actuators
ptw.srcs += $(SRC_FIRMWARE)/actuators/supervision.c
@@ -1138,7 +1138,7 @@ test_csc_servo.CFLAGS += -DPERIODIC_TASK_PERIOD='SYS_TICS_OF_SEC(1./512.)'
test_csc_servo.srcs += sys_time.c $(SRC_ARCH)/sys_time_hw.c
test_csc_servo.CFLAGS += -DUSE_UART2 -DUART2_BAUD=B57600
-test_csc_servo.srcs += $(SRC_ARCH)/uart_hw.c
+test_csc_servo.srcs += $(SRC_ARCH)/mcu_periph/uart_arch.c
test_csc_servo.CFLAGS += -DDATALINK=PPRZ -DPPRZ_UART=Uart2
test_csc_servo.CFLAGS += -DDOWNLINK -DDOWNLINK_TRANSPORT=PprzTransport -DDOWNLINK_DEVICE=Uart2
@@ -1176,7 +1176,7 @@ test_gps.CFLAGS += -DPERIODIC_TASK_PERIOD='SYS_TICS_OF_SEC((1./512.))' -DTIME_LE
test_gps.srcs += sys_time.c $(SRC_ARCH)/sys_time_hw.c
test_gps.CFLAGS += -DUSE_UART2 -DUART2_BAUD=B57600
-test_gps.srcs += $(SRC_ARCH)/uart_hw.c
+test_gps.srcs += $(SRC_ARCH)/mcu_periph/uart_arch.c
test_gps.CFLAGS += -DDOWNLINK -DDOWNLINK_TRANSPORT=PprzTransport -DDOWNLINK_DEVICE=Uart2
test_gps.srcs += downlink.c pprz_transport.c
@@ -1207,7 +1207,7 @@ test_gps.srcs += $(SRC_BOOZ)/gps/booz_gps_skytraq.c
# test_adc.srcs += sys_time.c $(SRC_ARCH)/sys_time_hw.c
#
# test_adc.CFLAGS += -DUSE_UART2 -DUART2_BAUD=B57600
-# test_adc.srcs += $(SRC_ARCH)/uart_hw.c
+# test_adc.srcs += $(SRC_ARCH)/mcu_periph/uart_arch.c
#
# test_adc.CFLAGS += -DDOWNLINK -DDOWNLINK_TRANSPORT=PprzTransport -DDOWNLINK_DEVICE=Uart2
# test_adc.srcs += downlink.c pprz_transport.c
@@ -1231,7 +1231,7 @@ test_adc.CFLAGS += -DPERIODIC_TASK_PERIOD='SYS_TICS_OF_SEC(1./512.)'
test_adc.srcs += sys_time.c $(SRC_ARCH)/sys_time_hw.c
test_adc.CFLAGS += -DUSE_UART2 -DUART2_BAUD=B57600
-test_adc.srcs += $(SRC_ARCH)/uart_hw.c
+test_adc.srcs += $(SRC_ARCH)/mcu_periph/uart_arch.c
test_adc.CFLAGS += -DDATALINK=PPRZ -DPPRZ_UART=Uart2
test_adc.CFLAGS += -DDOWNLINK -DDOWNLINK_TRANSPORT=PprzTransport -DDOWNLINK_DEVICE=Uart2
@@ -1259,7 +1259,7 @@ test_board.CFLAGS += -DPERIODIC_TASK_PERIOD='SYS_TICS_OF_SEC(1./512.)'
test_board.srcs += sys_time.c $(SRC_ARCH)/sys_time_hw.c
test_board.CFLAGS += -DUSE_UART2 -DUART2_BAUD=B57600
-test_board.srcs += $(SRC_ARCH)/uart_hw.c
+test_board.srcs += $(SRC_ARCH)/mcu_periph/uart_arch.c
test_board.CFLAGS += -DDATALINK=PPRZ -DPPRZ_UART=Uart2
test_board.CFLAGS += -DDOWNLINK -DDOWNLINK_TRANSPORT=PprzTransport -DDOWNLINK_DEVICE=Uart2
@@ -1305,7 +1305,7 @@ hs_gyro_aspirin.CFLAGS += -DPERIODIC_TASK_PERIOD='SYS_TICS_OF_SEC((1./512.))'
hs_gyro_aspirin.srcs += sys_time.c $(SRC_ARCH)/sys_time_hw.c
hs_gyro_aspirin.CFLAGS += -DUSE_UART2 -DUART2_BAUD=B57600
-hs_gyro_aspirin.srcs += $(SRC_ARCH)/uart_hw.c
+hs_gyro_aspirin.srcs += $(SRC_ARCH)/mcu_periph/uart_arch.c
hs_gyro_aspirin.CFLAGS += -DDOWNLINK -DDOWNLINK_TRANSPORT=PprzTransport -DDOWNLINK_DEVICE=Uart2
hs_gyro_aspirin.srcs += downlink.c pprz_transport.c
@@ -1343,7 +1343,7 @@ hs_gyro_b2.CFLAGS += -DPERIODIC_TASK_PERIOD='SYS_TICS_OF_SEC((1./512.))'
hs_gyro_b2.srcs += sys_time.c $(SRC_ARCH)/sys_time_hw.c
hs_gyro_b2.CFLAGS += -DUSE_UART2 -DUART2_BAUD=B57600
-hs_gyro_b2.srcs += $(SRC_ARCH)/uart_hw.c
+hs_gyro_b2.srcs += $(SRC_ARCH)/mcu_periph/uart_arch.c
hs_gyro_b2.CFLAGS += -DDOWNLINK -DDOWNLINK_TRANSPORT=PprzTransport -DDOWNLINK_DEVICE=Uart2
hs_gyro_b2.srcs += downlink.c pprz_transport.c
@@ -1376,7 +1376,7 @@ hs_gyro_crista.CFLAGS += -DPERIODIC_TASK_PERIOD='SYS_TICS_OF_SEC((1./512.))'
hs_gyro_crista.srcs += sys_time.c $(SRC_ARCH)/sys_time_hw.c
hs_gyro_crista.CFLAGS += -DUSE_UART2 -DUART2_BAUD=B57600
-hs_gyro_crista.srcs += $(SRC_ARCH)/uart_hw.c
+hs_gyro_crista.srcs += $(SRC_ARCH)/mcu_periph/uart_arch.c
hs_gyro_crista.CFLAGS += -DDOWNLINK -DDOWNLINK_TRANSPORT=PprzTransport -DDOWNLINK_DEVICE=Uart2
hs_gyro_crista.srcs += downlink.c pprz_transport.c
diff --git a/conf/autopilot/subsystems/fixedwing/testing.makefile b/conf/autopilot/obsolete/testing.makefile
similarity index 73%
rename from conf/autopilot/subsystems/fixedwing/testing.makefile
rename to conf/autopilot/obsolete/testing.makefile
index f1b539ccfc..f75a6c8ab0 100644
--- a/conf/autopilot/subsystems/fixedwing/testing.makefile
+++ b/conf/autopilot/obsolete/testing.makefile
@@ -3,23 +3,23 @@
# a test program to setup actuators
setup_actuators.ARCHDIR = $(ARCH)
-setup_actuators.CFLAGS += -DFBW -DBOARD_CONFIG=\"tiny.h\" -DLED -DTIME_LED=1 -DACTUATORS=\"servos_4015_hw.h\" -DSERVOS_4015 -DUSE_UART0 -DUART0_BAUD=B9600 -DDATALINK=PPRZ -DPPRZ_UART=Uart0
-setup_actuators.srcs += sys_time.c $(SRC_ARCH)/sys_time_hw.c $(SRC_ARCH)/armVIC.c pprz_transport.c setup_actuators.c $(SRC_ARCH)/uart_hw.c $(SRC_ARCH)/servos_4015_hw.c main.c
+setup_actuators.CFLAGS += -DFBW -DBOARD_CONFIG=\"tiny.h\" -DUSE_LED -DTIME_LED=1 -DACTUATORS=\"servos_4015_hw.h\" -DSERVOS_4015 -DUSE_UART0 -DUART0_BAUD=B9600 -DDATALINK=PPRZ -DPPRZ_UART=Uart0
+setup_actuators.srcs += sys_time.c $(SRC_ARCH)/sys_time_hw.c $(SRC_ARCH)/armVIC.c pprz_transport.c setup_actuators.c $(SRC_ARCH)/mcu_periph/uart_arch.c $(SRC_ARCH)/servos_4015_hw.c main.c
# a test program to tunnel between both uart
tunnel.ARCHDIR = $(ARCH)
-tunnel.CFLAGS += -DFBW -DBOARD_CONFIG=\"tiny_2_1_1_usb.h\" -DLED
+tunnel.CFLAGS += -DFBW -DBOARD_CONFIG=\"tiny_2_1_1_usb.h\" -DUSE_LED
tunnel.srcs += $(SRC_ARCH)/uart_tunnel.c
# A test program to monitor the ADC values
test_adcs.ARCHDIR = $(ARCH)
-test_adcs.CFLAGS += -DBOARD_CONFIG=$(CONFIG) -DLED -DTIME_LED=1 -DUSE_ADC -DUSE_ADC_0 -DUSE_ADC_1 -DUSE_ADC_2 -DUSE_ADC_3 -DUSE_ADC_4 -DUSE_ADC_5 -DUSE_ADC_6 -DUSE_ADC_7
+test_adcs.CFLAGS += -DBOARD_CONFIG=$(CONFIG) -DUSE_LED -DTIME_LED=1 -DUSE_ADC -DUSE_ADC_0 -DUSE_ADC_1 -DUSE_ADC_2 -DUSE_ADC_3 -DUSE_ADC_4 -DUSE_ADC_5 -DUSE_ADC_6 -DUSE_ADC_7
test_adcs.CFLAGS += -DDOWNLINK -DUSE_UART0 -DDOWNLINK_TRANSPORT=XBeeTransport -DDOWNLINK_FBW_DEVICE=Uart0 -DDOWNLINK_AP_DEVICE=Uart0 -DXBEE_UART=Uart0 -DDATALINK=XBEE -DUART0_BAUD=B9600
-test_adcs.srcs += downlink.c $(SRC_ARCH)/uart_hw.c xbee.c
+test_adcs.srcs += downlink.c $(SRC_ARCH)/mcu_periph/uart_arch.c xbee.c
test_adcs.srcs += sys_time.c $(SRC_ARCH)/mcu_periph/adc_arch.c $(SRC_ARCH)/sys_time_hw.c $(SRC_ARCH)/armVIC.c test/test_adcs.c
# pprz_transport.c
@@ -28,16 +28,16 @@ test_adcs.srcs += sys_time.c $(SRC_ARCH)/mcu_periph/adc_arch.c $(SRC_ARCH)/sys_t
# a configuration program to access both uart through usb
usb_tunnel_0.ARCHDIR = $(ARCH)
usb_tunnel_0.CFLAGS += -DFBW -DBOARD_CONFIG=\"tiny_2_1_1_usb.h\" -DUSE_UART0 -DUART0_BAUD=B115200
-usb_tunnel_0.CFLAGS += -DUSE_USB_LINE_CODING -DUSE_USB_SERIAL -DLED
-usb_tunnel_0.srcs += $(SRC_ARCH)/usb_tunnel.c $(SRC_ARCH)/usb_ser_hw.c $(SRC_ARCH)/uart_hw.c
+usb_tunnel_0.CFLAGS += -DUSE_USB_LINE_CODING -DUSE_USB_SERIAL -DUSE_LED
+usb_tunnel_0.srcs += $(SRC_ARCH)/usb_tunnel.c $(SRC_ARCH)/usb_ser_hw.c $(SRC_ARCH)/mcu_periph/uart_arch.c
usb_tunnel_0.srcs += $(SRC_ARCH)/lpcusb/usbhw_lpc.c $(SRC_ARCH)/lpcusb/usbinit.c
usb_tunnel_0.srcs += $(SRC_ARCH)/lpcusb/usbcontrol.c $(SRC_ARCH)/lpcusb/usbstdreq.c
usb_tunnel_0.srcs += sys_time.c $(SRC_ARCH)/sys_time_hw.c $(SRC_ARCH)/armVIC.c
usb_tunnel_1.ARCHDIR = $(ARCH)
usb_tunnel_1.CFLAGS += -DFBW -DBOARD_CONFIG=\"tiny_2_1_1_usb.h\" -DUSE_UART1 -DUART1_BAUD=B115200
-usb_tunnel_1.CFLAGS += -DUSE_USB_LINE_CODING -DUSE_USB_SERIAL -DLED
-usb_tunnel_1.srcs += $(SRC_ARCH)/usb_tunnel.c $(SRC_ARCH)/usb_ser_hw.c $(SRC_ARCH)/uart_hw.c
+usb_tunnel_1.CFLAGS += -DUSE_USB_LINE_CODING -DUSE_USB_SERIAL -DUSE_LED
+usb_tunnel_1.srcs += $(SRC_ARCH)/usb_tunnel.c $(SRC_ARCH)/usb_ser_hw.c $(SRC_ARCH)/mcu_periph/uart_arch.c
usb_tunnel_1.srcs += $(SRC_ARCH)/lpcusb/usbhw_lpc.c $(SRC_ARCH)/lpcusb/usbinit.c
usb_tunnel_1.srcs += $(SRC_ARCH)/lpcusb/usbcontrol.c $(SRC_ARCH)/lpcusb/usbstdreq.c
usb_tunnel_1.srcs += sys_time.c $(SRC_ARCH)/sys_time_hw.c $(SRC_ARCH)/armVIC.c
diff --git a/conf/autopilot/obsolete/tiny.makefile b/conf/autopilot/obsolete/tiny.makefile
index b9ef9f08fc..71df9d2cea 100644
--- a/conf/autopilot/obsolete/tiny.makefile
+++ b/conf/autopilot/obsolete/tiny.makefile
@@ -32,23 +32,23 @@ ADC_GYRO_NB_SAMPLES = 16
# a test program to setup actuators
setup_actuators.ARCHDIR = $(ARCHI)
-setup_actuators.CFLAGS += -DFBW -DBOARD_CONFIG=\"tiny.h\" -DLED -DTIME_LED=1 -DACTUATORS=\"servos_4015_hw.h\" -DSERVOS_4015 -DUSE_UART0 -DUART0_BAUD=B9600 -DDATALINK=PPRZ -DPPRZ_UART=Uart0
-setup_actuators.srcs += sys_time.c $(SRC_ARCH)/sys_time_hw.c $(SRC_ARCH)/armVIC.c pprz_transport.c setup_actuators.c $(SRC_ARCH)/uart_hw.c $(SRC_ARCH)/servos_4015_hw.c main.c
+setup_actuators.CFLAGS += -DFBW -DBOARD_CONFIG=\"tiny.h\" -DUSE_LED -DTIME_LED=1 -DACTUATORS=\"servos_4015_hw.h\" -DSERVOS_4015 -DUSE_UART0 -DUART0_BAUD=B9600 -DDATALINK=PPRZ -DPPRZ_UART=Uart0
+setup_actuators.srcs += sys_time.c $(SRC_ARCH)/sys_time_hw.c $(SRC_ARCH)/armVIC.c pprz_transport.c setup_actuators.c $(SRC_ARCH)/mcu_periph/uart_arch.c $(SRC_ARCH)/servos_4015_hw.c main.c
# a test program to tunnel between both uart
tunnel.ARCHDIR = $(ARCHI)
-tunnel.CFLAGS += -DFBW -DBOARD_CONFIG=\"tiny_2_1_1_usb.h\" -DLED
+tunnel.CFLAGS += -DFBW -DBOARD_CONFIG=\"tiny_2_1_1_usb.h\" -DUSE_LED
tunnel.srcs += $(SRC_ARCH)/uart_tunnel.c
# A test program to monitor the ADC values
test_adcs.ARCHDIR = $(ARCHI)
-test_adcs.CFLAGS += -DBOARD_CONFIG=$(CONFIG) -DLED -DTIME_LED=1 -DADC -DUSE_ADC_0 -DUSE_ADC_1 -DUSE_ADC_2 -DUSE_ADC_3 -DUSE_ADC_4 -DUSE_ADC_5 -DUSE_ADC_6 -DUSE_ADC_7
+test_adcs.CFLAGS += -DBOARD_CONFIG=$(CONFIG) -DUSE_LED -DTIME_LED=1 -DADC -DUSE_ADC_0 -DUSE_ADC_1 -DUSE_ADC_2 -DUSE_ADC_3 -DUSE_ADC_4 -DUSE_ADC_5 -DUSE_ADC_6 -DUSE_ADC_7
test_adcs.CFLAGS += -DDOWNLINK -DUSE_UART0 -DDOWNLINK_TRANSPORT=XBeeTransport -DDOWNLINK_FBW_DEVICE=Uart0 -DDOWNLINK_AP_DEVICE=Uart0 -DXBEE_UART=Uart0 -DDATALINK=XBEE -DUART0_BAUD=B9600
-test_adcs.srcs += downlink.c $(SRC_ARCH)/uart_hw.c xbee.c
+test_adcs.srcs += downlink.c $(SRC_ARCH)/mcu_periph/uart_arch.c xbee.c
test_adcs.srcs += sys_time.c $(SRC_ARCH)/adc_hw.c $(SRC_ARCH)/sys_time_hw.c $(SRC_ARCH)/armVIC.c test_adcs.c
# pprz_transport.c
@@ -57,16 +57,16 @@ test_adcs.srcs += sys_time.c $(SRC_ARCH)/adc_hw.c $(SRC_ARCH)/sys_time_hw.c $(SR
# a configuration program to access both uart through usb
usb_tunnel_0.ARCHDIR = $(ARCHI)
usb_tunnel_0.CFLAGS += -DFBW -DBOARD_CONFIG=\"tiny_2_1_1_usb.h\" -DUSE_UART0 -DUART0_BAUD=B115200
-usb_tunnel_0.CFLAGS += -DUSE_USB_LINE_CODING -DUSE_USB_SERIAL -DLED
-usb_tunnel_0.srcs += $(SRC_ARCH)/usb_tunnel.c $(SRC_ARCH)/usb_ser_hw.c $(SRC_ARCH)/uart_hw.c
+usb_tunnel_0.CFLAGS += -DUSE_USB_LINE_CODING -DUSE_USB_SERIAL -DUSE_LED
+usb_tunnel_0.srcs += $(SRC_ARCH)/usb_tunnel.c $(SRC_ARCH)/usb_ser_hw.c $(SRC_ARCH)/mcu_periph/uart_arch.c
usb_tunnel_0.srcs += $(SRC_ARCH)/lpcusb/usbhw_lpc.c $(SRC_ARCH)/lpcusb/usbinit.c
usb_tunnel_0.srcs += $(SRC_ARCH)/lpcusb/usbcontrol.c $(SRC_ARCH)/lpcusb/usbstdreq.c
usb_tunnel_0.srcs += sys_time.c $(SRC_ARCH)/sys_time_hw.c $(SRC_ARCH)/armVIC.c
usb_tunnel_1.ARCHDIR = $(ARCHI)
usb_tunnel_1.CFLAGS += -DFBW -DBOARD_CONFIG=\"tiny_2_1_1_usb.h\" -DUSE_UART1 -DUART1_BAUD=B115200
-usb_tunnel_1.CFLAGS += -DUSE_USB_LINE_CODING -DUSE_USB_SERIAL -DLED
-usb_tunnel_1.srcs += $(SRC_ARCH)/usb_tunnel.c $(SRC_ARCH)/usb_ser_hw.c $(SRC_ARCH)/uart_hw.c
+usb_tunnel_1.CFLAGS += -DUSE_USB_LINE_CODING -DUSE_USB_SERIAL -DUSE_LED
+usb_tunnel_1.srcs += $(SRC_ARCH)/usb_tunnel.c $(SRC_ARCH)/usb_ser_hw.c $(SRC_ARCH)/mcu_periph/uart_arch.c
usb_tunnel_1.srcs += $(SRC_ARCH)/lpcusb/usbhw_lpc.c $(SRC_ARCH)/lpcusb/usbinit.c
usb_tunnel_1.srcs += $(SRC_ARCH)/lpcusb/usbcontrol.c $(SRC_ARCH)/lpcusb/usbstdreq.c
usb_tunnel_1.srcs += sys_time.c $(SRC_ARCH)/sys_time_hw.c $(SRC_ARCH)/armVIC.c
diff --git a/conf/autopilot/obsolete/twin_mcu_avr.makefile b/conf/autopilot/obsolete/twin_mcu_avr.makefile
index 49a4e0b050..04ef99b046 100644
--- a/conf/autopilot/obsolete/twin_mcu_avr.makefile
+++ b/conf/autopilot/obsolete/twin_mcu_avr.makefile
@@ -1,8 +1,8 @@
include $(PAPARAZZI_SRC)/conf/autopilot/twin_avr.makefile
include $(PAPARAZZI_SRC)/conf/autopilot/twin_mcu.makefile
-ap.srcs += $(SRC_ARCH)/adc_hw.c $(SRC_ARCH)/uart_hw.c $(SRC_ARCH)/spi_hw.c $(SRC_ARCH)/sys_time_hw.c
+ap.srcs += $(SRC_ARCH)/adc_hw.c $(SRC_ARCH)/mcu_periph/uart_arch.c $(SRC_ARCH)/spi_hw.c $(SRC_ARCH)/sys_time_hw.c
ap.CFLAGS += -DUSE_UART1 -DGPS_LINK=Uart1 -DUART1_BAUD=B38400
fbw.CFLAGS += -DACTUATORS=\"servos_4017.h\" -DSERVOS_4017 -DADC
-fbw.srcs += actuators.c $(SRC_ARCH)/adc_hw.c $(SRC_ARCH)/servos_4017.c $(SRC_ARCH)/ppm_hw.c $(SRC_ARCH)/uart_hw.c $(SRC_ARCH)/spi_hw.c $(SRC_ARCH)/sys_time_hw.c
+fbw.srcs += actuators.c $(SRC_ARCH)/adc_hw.c $(SRC_ARCH)/servos_4017.c $(SRC_ARCH)/ppm_hw.c $(SRC_ARCH)/mcu_periph/uart_arch.c $(SRC_ARCH)/spi_hw.c $(SRC_ARCH)/sys_time_hw.c
diff --git a/conf/autopilot/setup.makefile b/conf/autopilot/setup.makefile
index c889667725..c1ec32d90a 100644
--- a/conf/autopilot/setup.makefile
+++ b/conf/autopilot/setup.makefile
@@ -12,72 +12,66 @@ SRC_FIRMWARE=firmwares/setup
SETUP_INC = -I$(SRC_FIRMWARE)
-
-# for the usb_tunnel we need to set PCLK higher
-# so we just use tiny_2_1_1_usb.h as board file for the usb tunnels
-ifeq ($(TARGET), usb_tunnel_0)
- usb_tunnel_0.CFLAGS += -DBOARD_CONFIG=\"tiny_2_1_1_usb.h\"
-else
- ifeq ($(TARGET), usb_tunnel_1)
- usb_tunnel_1.CFLAGS += -DBOARD_CONFIG=\"tiny_2_1_1_usb.h\"
- else
- $(TARGET).CFLAGS += -DBOARD_CONFIG=$(BOARD_CFG)
- endif
-endif
-
+$(TARGET).CFLAGS += -DBOARD_CONFIG=$(BOARD_CFG)
# a test program to tunnel between both uart
-tunnel.CFLAGS += -DFBW -DLED
+tunnel.CFLAGS += -DUSE_LED
tunnel.srcs += $(SRC_ARCH)/uart_tunnel.c
+tunnel.srcs += mcu.c $(SRC_ARCH)/mcu_arch.c
+# for the usb_tunnel we need to set PCLK higher with the flag USE_USB_HIGH_PCLK
+
# a configuration program to access both uart through usb
-usb_tunnel_0.CFLAGS += -DFBW -DUSE_UART0 -DUART0_BAUD=B115200
-usb_tunnel_0.CFLAGS += -DUSE_USB_LINE_CODING -DUSE_USB_SERIAL -DLED
-usb_tunnel_0.srcs += $(SRC_ARCH)/usb_tunnel.c $(SRC_ARCH)/usb_ser_hw.c $(SRC_ARCH)/uart_hw.c
+usb_tunnel_0.CFLAGS += -DUSE_UART0 -DUART0_BAUD=B115200
+usb_tunnel_0.CFLAGS += -DUSE_USB_LINE_CODING -DUSE_USB_SERIAL -DUSE_LED -DUSE_USB_HIGH_PCLK
+usb_tunnel_0.srcs += $(SRC_ARCH)/usb_tunnel.c $(SRC_ARCH)/usb_ser_hw.c $(SRC_ARCH)/mcu_periph/uart_arch.c
usb_tunnel_0.srcs += $(SRC_ARCH)/lpcusb/usbhw_lpc.c $(SRC_ARCH)/lpcusb/usbinit.c
usb_tunnel_0.srcs += $(SRC_ARCH)/lpcusb/usbcontrol.c $(SRC_ARCH)/lpcusb/usbstdreq.c
usb_tunnel_0.srcs += sys_time.c $(SRC_ARCH)/sys_time_hw.c $(SRC_ARCH)/armVIC.c
+usb_tunnel_0.srcs += mcu.c $(SRC_ARCH)/mcu_arch.c
-usb_tunnel_1.CFLAGS += -DFBW -DUSE_UART1 -DUART1_BAUD=B115200
-usb_tunnel_1.CFLAGS += -DUSE_USB_LINE_CODING -DUSE_USB_SERIAL -DLED
-usb_tunnel_1.srcs += $(SRC_ARCH)/usb_tunnel.c $(SRC_ARCH)/usb_ser_hw.c $(SRC_ARCH)/uart_hw.c
+usb_tunnel_1.CFLAGS += -DUSE_UART1 -DUART1_BAUD=B115200
+usb_tunnel_1.CFLAGS += -DUSE_USB_LINE_CODING -DUSE_USB_SERIAL -DUSE_LED -DUSE_USB_HIGH_PCLK
+usb_tunnel_1.srcs += $(SRC_ARCH)/usb_tunnel.c $(SRC_ARCH)/usb_ser_hw.c $(SRC_ARCH)/mcu_periph/uart_arch.c
usb_tunnel_1.srcs += $(SRC_ARCH)/lpcusb/usbhw_lpc.c $(SRC_ARCH)/lpcusb/usbinit.c
usb_tunnel_1.srcs += $(SRC_ARCH)/lpcusb/usbcontrol.c $(SRC_ARCH)/lpcusb/usbstdreq.c
usb_tunnel_1.srcs += sys_time.c $(SRC_ARCH)/sys_time_hw.c $(SRC_ARCH)/armVIC.c
+usb_tunnel_1.srcs += mcu.c $(SRC_ARCH)/mcu_arch.c
-
-ifeq ($(ACTUATORS),)
- ifeq ($(BOARD),tiny)
- ifeq ($(BOARD_VERSION),1.1)
- include $(CFG_SHARED)/actuators_4015.makefile
- else
- ifeq ($(BOARD_VERSION),0.99)
+ifeq ($(TARGET), setup_actuators)
+ ifeq ($(ACTUATORS),)
+ ifeq ($(BOARD),tiny)
+ ifeq ($(BOARD_VERSION),1.1)
include $(CFG_SHARED)/actuators_4015.makefile
else
- include $(CFG_SHARED)/actuators_4017.makefile
+ ifeq ($(BOARD_VERSION),0.99)
+ include $(CFG_SHARED)/actuators_4015.makefile
+ else
+ include $(CFG_SHARED)/actuators_4017.makefile
+ endif
endif
endif
- endif
- ifeq ($(BOARD),twog)
- include $(CFG_SHARED)/actuators_4017.makefile
- endif
+ ifeq ($(BOARD),twog)
+ include $(CFG_SHARED)/actuators_4017.makefile
+ endif
- ifeq ($(BOARD),lisa_l)
- include $(CFG_SHARED)/actuators_direct.makefile
- endif
+ ifeq ($(BOARD),lisa_l)
+ include $(CFG_SHARED)/actuators_direct.makefile
+ endif
-else
- include $(CFG_SHARED)/$(ACTUATORS).makefile
+ else
+ include $(CFG_SHARED)/$(ACTUATORS).makefile
+ endif
endif
# a test program to setup actuators
-setup_actuators.CFLAGS += -DFBW -DLED -DTIME_LED=1
+setup_actuators.CFLAGS += -DFBW -DUSE_LED -DTIME_LED=1
setup_actuators.CFLAGS += -DUSE_UART1 -DUART1_BAUD=B57600 -DDOWNLINK_DEVICE=Uart1 -DPPRZ_UART=Uart1
setup_actuators.CFLAGS += -DDOWNLINK -DDOWNLINK_TRANSPORT=PprzTransport -DDATALINK=PPRZ
setup_actuators.CFLAGS += -DDOWNLINK_FBW_DEVICE=Uart1 -DDOWNLINK_AP_DEVICE=Uart1
setup_actuators.CFLAGS += $(SETUP_INC) -Ifirmwares/fixedwing
-setup_actuators.srcs += sys_time.c $(SRC_ARCH)/sys_time_hw.c $(SRC_ARCH)/armVIC.c pprz_transport.c downlink.c $(SRC_FIRMWARE)/setup_actuators.c $(SRC_ARCH)/uart_hw.c firmwares/fixedwing/main.c
+setup_actuators.srcs += sys_time.c $(SRC_ARCH)/sys_time_hw.c $(SRC_ARCH)/armVIC.c pprz_transport.c downlink.c $(SRC_FIRMWARE)/setup_actuators.c $(SRC_ARCH)/mcu_periph/uart_arch.c firmwares/fixedwing/main.c mcu.c $(SRC_ARCH)/mcu_arch.c
diff --git a/conf/autopilot/sitl.makefile b/conf/autopilot/sitl.makefile
index 22b74c9876..b05421888e 100644
--- a/conf/autopilot/sitl.makefile
+++ b/conf/autopilot/sitl.makefile
@@ -1,5 +1,5 @@
sim.ARCHDIR = $(ARCH)
-sim.CFLAGS += -DSITL -DAP -DFBW -DRADIO_CONTROL -DINTER_MCU -DDOWNLINK -DDOWNLINK_TRANSPORT=IvyTransport -DUSE_INFRARED -DNAV -DLED -DWIND_INFO
+sim.CFLAGS += -DSITL -DAP -DFBW -DRADIO_CONTROL -DINTER_MCU -DDOWNLINK -DDOWNLINK_TRANSPORT=IvyTransport -DUSE_INFRARED -DNAV -DUSE_LED -DWIND_INFO
sim.srcs += latlong.c\
radio_control.c\
downlink.c\
diff --git a/conf/autopilot/sitl_jsbsim.makefile b/conf/autopilot/sitl_jsbsim.makefile
index 7259edccef..4b46e00a19 100644
--- a/conf/autopilot/sitl_jsbsim.makefile
+++ b/conf/autopilot/sitl_jsbsim.makefile
@@ -24,7 +24,7 @@ else
jsbsim.LDFLAGS += -L$(JSBSIM_LIB) -lJSBSim
endif
-jsbsim.CFLAGS += -DSITL -DAP -DFBW -DINTER_MCU -DDOWNLINK -DDOWNLINK_TRANSPORT=IvyTransport -DUSE_INFRARED -DNAV -DLED -DWIND_INFO -Ifirmwares/fixedwing
+jsbsim.CFLAGS += -DSITL -DAP -DFBW -DINTER_MCU -DDOWNLINK -DDOWNLINK_TRANSPORT=IvyTransport -DUSE_INFRARED -DNAV -DUSE_LED -DWIND_INFO -Ifirmwares/fixedwing
jsbsim.srcs = $(SRC_ARCH)/jsbsim_hw.c $(SRC_ARCH)/jsbsim_gps.c $(SRC_ARCH)/jsbsim_ir.c $(SRC_ARCH)/jsbsim_transport.c $(SRC_ARCH)/ivy_transport.c
jsbsim.srcs += latlong.c downlink.c commands.c gps.c inter_mcu.c subsystems/sensors/infrared.c \
$(SRC_FIXEDWING)/stabilization/stabilization_attitude.c \
diff --git a/conf/autopilot/subsystems/fixedwing/attitude_infrared.makefile b/conf/autopilot/subsystems/fixedwing/attitude_infrared.makefile
index aa4509a479..7395522edb 100644
--- a/conf/autopilot/subsystems/fixedwing/attitude_infrared.makefile
+++ b/conf/autopilot/subsystems/fixedwing/attitude_infrared.makefile
@@ -33,6 +33,7 @@ ap.CFLAGS += -DADC_CHANNEL_IR_NB_SAMPLES=$(ADC_IR_NB_SAMPLES)
$(TARGET).CFLAGS += -DUSE_INFRARED
$(TARGET).srcs += subsystems/sensors/infrared.c
+$(TARGET).srcs += subsystems/sensors/infrared_adc.c
sim.srcs += $(SRC_ARCH)/sim_ir.c
jsbsim.srcs += $(SRC_ARCH)/jsbsim_ir.c
diff --git a/conf/autopilot/subsystems/fixedwing/attitude_infrared_i2c.makefile b/conf/autopilot/subsystems/fixedwing/attitude_infrared_i2c.makefile
new file mode 100644
index 0000000000..b3f9355b11
--- /dev/null
+++ b/conf/autopilot/subsystems/fixedwing/attitude_infrared_i2c.makefile
@@ -0,0 +1,8 @@
+# attitude via IR I2C sensors
+
+$(TARGET).CFLAGS += -DUSE_INFRARED_I2C
+$(TARGET).srcs += subsystems/sensors/infrared.c
+$(TARGET).srcs += subsystems/sensors/infrared_i2c.c
+
+sim.srcs += $(SRC_ARCH)/sim_ir.c
+jsbsim.srcs += $(SRC_ARCH)/jsbsim_ir.c
diff --git a/conf/autopilot/subsystems/rotorcraft/actuators_mkk.makefile b/conf/autopilot/subsystems/rotorcraft/actuators_mkk.makefile
index f70c299815..3ea53af26e 100644
--- a/conf/autopilot/subsystems/rotorcraft/actuators_mkk.makefile
+++ b/conf/autopilot/subsystems/rotorcraft/actuators_mkk.makefile
@@ -1,8 +1,15 @@
#
-# Booz Mikrokopter Actuators
+# Mikrokopter Actuators
+#
+# enable the subsystem for your firmware:
+#
+# ...
+#
+#
+#
#
#
-# required xml:
+# required xml configuration:
#
#
#
@@ -24,8 +31,11 @@
#
#
+# set default i2c timing if not already configured
+ifeq ($(MKK_I2C_SCL_TIME), )
+MKK_I2C_SCL_TIME=150
+endif
-#
ap.srcs += $(SRC_FIRMWARE)/actuators/supervision.c
ap.srcs += $(SRC_FIRMWARE)/actuators/actuators_mkk.c
ap.srcs += mcu_periph/i2c.c
@@ -33,7 +43,7 @@ ap.srcs += $(SRC_ARCH)/mcu_periph/i2c_arch.c
ifeq ($(ARCH), lpc21)
ap.CFLAGS += -DACTUATORS_MKK_DEVICE=i2c0
-ap.CFLAGS += -DUSE_I2C0 -DI2C0_SCLL=150 -DI2C0_SCLH=150 -DI2C0_VIC_SLOT=10
+ap.CFLAGS += -DUSE_I2C0 -DI2C0_SCLL=$(MKK_I2C_SCL_TIME) -DI2C0_SCLH=$(MKK_I2C_SCL_TIME) -DI2C0_VIC_SLOT=10
else ifeq ($(ARCH), stm32)
ap.CFLAGS += -DACTUATORS_MKK_DEVICE=i2c1
ap.CFLAGS += -DUSE_I2C1
@@ -42,6 +52,6 @@ endif
# Simulator
sim.srcs += $(SRC_FIRMWARE)/actuators/supervision.c
sim.srcs += $(SRC_FIRMWARE)/actuators/actuators_mkk.c
-sim.CFLAGS += -DUSE_I2C0 -DI2C0_SCLL=150 -DI2C0_SCLH=150 -DI2C0_VIC_SLOT=10 -DACTUATORS_MKK_DEVICE=i2c1
+sim.CFLAGS += -DUSE_I2C0 -DI2C0_SCLL=$(MKK_I2C_SCL_TIME) -DI2C0_SCLH=$(MKK_I2C_SCL_TIME) -DI2C0_VIC_SLOT=10 -DACTUATORS_MKK_DEVICE=i2c1
sim.srcs += mcu_periph/i2c.c
sim.srcs += $(SRC_ARCH)/mcu_periph/i2c_arch.c
diff --git a/conf/autopilot/subsystems/rotorcraft/fdm_nps.makefile b/conf/autopilot/subsystems/rotorcraft/fdm_nps.makefile
index 8a0b64bafe..3764888244 100644
--- a/conf/autopilot/subsystems/rotorcraft/fdm_nps.makefile
+++ b/conf/autopilot/subsystems/rotorcraft/fdm_nps.makefile
@@ -70,7 +70,7 @@ sim.srcs += firmwares/rotorcraft/main.c
sim.CFLAGS += -DPERIODIC_TASK_PERIOD='SYS_TICS_OF_SEC((1./512.))'
# -DTIME_LED=1
-#sim.CFLAGS += -DLED
+#sim.CFLAGS += -DUSE_LED
sim.srcs += sys_time.c
diff --git a/conf/autopilot/subsystems/rotorcraft/imu_b2_v1.0.makefile b/conf/autopilot/subsystems/rotorcraft/imu_b2_v1.0.makefile
index dcf1a660a3..f3074ca2bb 100644
--- a/conf/autopilot/subsystems/rotorcraft/imu_b2_v1.0.makefile
+++ b/conf/autopilot/subsystems/rotorcraft/imu_b2_v1.0.makefile
@@ -9,25 +9,25 @@
#
#
#
-#
-#
-#
+#
+#
+#
#
#
#
#
#
-#
-#
-#
+#
+#
+#
#
#
#
#
#
-#
-#
-#
+#
+#
+#
#
#
#
diff --git a/conf/autopilot/subsystems/rotorcraft/imu_b2_v1.1.makefile b/conf/autopilot/subsystems/rotorcraft/imu_b2_v1.1.makefile
index bfef8c6aca..e06aeeb7df 100644
--- a/conf/autopilot/subsystems/rotorcraft/imu_b2_v1.1.makefile
+++ b/conf/autopilot/subsystems/rotorcraft/imu_b2_v1.1.makefile
@@ -9,25 +9,25 @@
#
#
#
-#
-#
-#
+#
+#
+#
#
#
#
#
#
-#
-#
-#
+#
+#
+#
#
#
#
#
#
-#
-#
-#
+#
+#
+#
#
#
#
diff --git a/conf/autopilot/subsystems/rotorcraft/imu_b2_v1.2.makefile b/conf/autopilot/subsystems/rotorcraft/imu_b2_v1.2.makefile
index 844b6c786d..bbbbb58e1b 100644
--- a/conf/autopilot/subsystems/rotorcraft/imu_b2_v1.2.makefile
+++ b/conf/autopilot/subsystems/rotorcraft/imu_b2_v1.2.makefile
@@ -9,25 +9,25 @@
#
#
#
-#
-#
-#
+#
+#
+#
#
#
#
#
#
-#
-#
-#
+#
+#
+#
#
#
#
#
#
-#
-#
-#
+#
+#
+#
#
#
#
diff --git a/conf/modules/adc_generic.xml b/conf/modules/adc_generic.xml
index a198c04280..8f2917cf2b 100644
--- a/conf/modules/adc_generic.xml
+++ b/conf/modules/adc_generic.xml
@@ -2,9 +2,8 @@
@@ -15,6 +14,16 @@
+
+
+ifneq ($(ADC_CHANNEL_GENERIC1),)
+ap.CFLAGS += -DADC_CHANNEL_GENERIC1=$(ADC_CHANNEL_GENERIC1) -DUSE_$(ADC_CHANNEL_GENERIC1)
+endif
+
+ifneq ($(ADC_CHANNEL_GENERIC2),)
+ap.CFLAGS += -DADC_CHANNEL_GENERIC2=$(ADC_CHANNEL_GENERIC2) -DUSE_$(ADC_CHANNEL_GENERIC2)
+endif
+
+
-
diff --git a/conf/modules/infrared_adc.xml b/conf/modules/infrared_adc.xml
new file mode 100644
index 0000000000..d5fd02f078
--- /dev/null
+++ b/conf/modules/infrared_adc.xml
@@ -0,0 +1,28 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/conf/modules/infrared_i2c.xml b/conf/modules/infrared_i2c.xml
index ef630b5c0c..b73dd757d6 100644
--- a/conf/modules/infrared_i2c.xml
+++ b/conf/modules/infrared_i2c.xml
@@ -1,4 +1,5 @@
+
@@ -9,11 +10,12 @@
-
-
+
+
+
- sim.srcs += $(SRC_ARCH)/sim_ir.c
+
diff --git a/conf/modules/ins_xsens_MTiG_fixedwing.xml b/conf/modules/ins_xsens_MTiG_fixedwing.xml
index f4db3c1776..27e67847cd 100644
--- a/conf/modules/ins_xsens_MTiG_fixedwing.xml
+++ b/conf/modules/ins_xsens_MTiG_fixedwing.xml
@@ -10,9 +10,9 @@
-
-
-
+
+
+
diff --git a/conf/modules/module.dtd b/conf/modules/module.dtd
index 84a4b8138f..33122841b8 100644
--- a/conf/modules/module.dtd
+++ b/conf/modules/module.dtd
@@ -60,8 +60,10 @@ value CDATA #IMPLIED
type CDATA #IMPLIED>
+name CDATA #REQUIRED
+dir CDATA #IMPLIED>
+name CDATA #REQUIRED
+dir CDATA #IMPLIED>
diff --git a/debian/changelog.lenny b/debian/changelog.lenny
index 6a78c9aacf..55d3e0cb12 100644
--- a/debian/changelog.lenny
+++ b/debian/changelog.lenny
@@ -1,3 +1,10 @@
+paparazzi (3.3-1) unstable; urgency=low
+
+ * New build system with modules and subsystems
+ * Change dependency from subversion to git
+
+ -- Gautier Hattenberger Wed, 29 Dec 2010 12:49:00 +0100
+
paparazzi (3.2-10) unstable; urgency=low
* Dependencie over gpsd, libgps-dev, python-lxml, python-wxgtk2.8 added
diff --git a/debian/control.lenny b/debian/control.lenny
index 8abef20019..6587b5a8e3 100644
--- a/debian/control.lenny
+++ b/debian/control.lenny
@@ -1,15 +1,15 @@
Source: paparazzi
Section: extra
Priority: optional
-Maintainer: Pascal Brisset
+Maintainer: Gautier Hattenberger
Build-Depends: debhelper (>= 4.0.0)
Standards-Version: 3.6.1
Package: paparazzi-dev
Architecture: any
-Suggests: paparazzi-avr, paparazzi-arm7, eagle, gs-common, tetex-extra, dia-gnome, boa
-Depends: ivy-c-dev, ivy-c, ivy-ocaml, libxml-light-ocaml-dev, liblablgtk2-ocaml-dev, make, gcc, gnuplot, libgnomecanvas2-dev, bzip2, subversion, liblablgtk2-gnome-ocaml-dev, libusb-dev, speech-dispatcher, glade, gedit, imagemagick, libpcre3-dev, libocamlnet-ocaml-dev, meschach-dev | libmeschach-dev, ivy-python, gpsd, libgps-dev, python-lxml, python-wxgtk2.8
+Suggests: paparazzi-avr, paparazzi-arm7, eagle, gs-common, tetex-extra, dia-gnome, boa, gitk
+Depends: ivy-c-dev, ivy-c, ivy-ocaml, libxml-light-ocaml-dev, liblablgtk2-ocaml-dev, make, gcc, gnuplot, libgnomecanvas2-dev, bzip2, git-core, liblablgtk2-gnome-ocaml-dev, libusb-dev, speech-dispatcher, glade, gedit, imagemagick, libpcre3-dev, libocamlnet-ocaml-dev, meschach-dev | libmeschach-dev, ivy-python, gpsd, libgps-dev, python-lxml, python-wxgtk2.8
Description: Paparazzi Meta Package : common support
diff --git a/debian/paparazzi-bin.postinst b/debian/paparazzi-bin.postinst
index 6ae37e021d..83cbee528d 100755
--- a/debian/paparazzi-bin.postinst
+++ b/debian/paparazzi-bin.postinst
@@ -31,4 +31,4 @@ cd ${DESTDIR}/sw/supervision
${OCAMLC} -custom -I +xml-light -I +lablgtk2 -I ${DESTDIR}/sw/lib/ocaml unix.cma str.cma xml-light.cma lablgtk.cma glibivy-ocaml.cma lib-pprz.cma lablglade.cma lablgnomeui.cma gtkInit.cmo gtk_pc.cmo gtk_process.cmo pc_common.cmo pc_aircraft.cmo pc_control_panel.cmo paparazzicenter.cmo -o paparazzicenter
cd ${DESTDIR}/sw/tools
-${OCAMLC} -custom -I +xml-light -I +lablgtk2 -I ${DESTDIR}/sw/lib/ocaml unix.cma str.cma xml-light.cma ivy-ocaml.cma lib-pprz.cma fp_syntax.cmo fp_parser.cmo fp_lexer.cmo fp_proc.cmo gen_flight_plan.cmo -o gen_flight_plan.out
+${OCAMLC} -custom -I +xml-light -I +lablgtk2 -I ${DESTDIR}/sw/lib/ocaml unix.cma str.cma xml-light.cma ivy-ocaml.cma lib-pprz.cma fp_proc.cmo gen_flight_plan.cmo -o gen_flight_plan.out
diff --git a/debian/rules b/debian/rules
old mode 100644
new mode 100755
diff --git a/sw/airborne/ap_downlink.h b/sw/airborne/ap_downlink.h
index a45945cf33..c8aa3e389e 100644
--- a/sw/airborne/ap_downlink.h
+++ b/sw/airborne/ap_downlink.h
@@ -115,8 +115,8 @@
#define PERIODIC_SEND_SETTINGS(_chan) {}
#endif
-#if defined USE_INFRARED || USE_INFRARED_I2C
-#define PERIODIC_SEND_IR_SENSORS(_chan) DOWNLINK_SEND_IR_SENSORS(_chan, &infrared.ir1, &infrared.ir2, &infrared.pitch, &infrared.roll, &infrared.top);
+#if defined USE_INFRARED || USE_INFRARED_TELEMETRY
+#define PERIODIC_SEND_IR_SENSORS(_chan) DOWNLINK_SEND_IR_SENSORS(_chan, &infrared.value.ir1, &infrared.value.ir2, &infrared.pitch, &infrared.roll, &infrared.top);
#else
#define PERIODIC_SEND_IR_SENSORS(_chan) ;
#endif
diff --git a/sw/airborne/arch/lpc21/uart_tunnel.c b/sw/airborne/arch/lpc21/uart_tunnel.c
index 04fd72dce1..9f4bbd5ef2 100644
--- a/sw/airborne/arch/lpc21/uart_tunnel.c
+++ b/sw/airborne/arch/lpc21/uart_tunnel.c
@@ -3,7 +3,7 @@
#include "std.h"
-#include "init_hw.h"
+#include "mcu.h"
#include "led.h"
#define TXD0_PIN 0
@@ -14,7 +14,7 @@
int main (int argc, char** argv) {
int tx=0, rx=0;
int tx_shadow=1, rx_shadow=1;
- hw_init();
+ mcu_init();
led_init();
LED_ON(1);
diff --git a/sw/airborne/arch/lpc21/usb_tunnel.c b/sw/airborne/arch/lpc21/usb_tunnel.c
index f7f324da24..aeef32b1dc 100644
--- a/sw/airborne/arch/lpc21/usb_tunnel.c
+++ b/sw/airborne/arch/lpc21/usb_tunnel.c
@@ -53,7 +53,7 @@ int main( void ) {
VCOM_init();
#endif
- int_enable();
+ mcu_int_enable();
LED_ON(3);
diff --git a/sw/airborne/arch/sim/sim_ir.c b/sw/airborne/arch/sim/sim_ir.c
index 88441205f8..1ec7884faf 100644
--- a/sw/airborne/arch/sim/sim_ir.c
+++ b/sw/airborne/arch/sim/sim_ir.c
@@ -21,7 +21,8 @@ value set_ir(value roll __attribute__ ((unused)),
value top __attribute__ ((unused)),
value air_speed
) {
-#if defined USE_INFRARED || USE_INFRARED_I2C
+ // INFRARED_TELEMETRY : Stupid hack to use with modules
+#if defined USE_INFRARED || USE_INFRARED_TELEMETRY
infrared.roll = Int_val(roll);
infrared.pitch = Int_val(front);
infrared.top = Int_val(top);
diff --git a/sw/airborne/booz/test/booz2_test_buss_bldc_hexa.c b/sw/airborne/booz/test/booz2_test_buss_bldc_hexa.c
index b20c2ccef4..c19f2ff874 100644
--- a/sw/airborne/booz/test/booz2_test_buss_bldc_hexa.c
+++ b/sw/airborne/booz/test/booz2_test_buss_bldc_hexa.c
@@ -23,7 +23,7 @@
#include
-#include "init_hw.h"
+#include "mcu.h"
#include "sys_time.h"
#include "interrupt_hw.h"
#include "downlink.h"
@@ -59,9 +59,9 @@ int main( void ) {
}
static inline void main_init( void ) {
- hw_init();
+ mcu_init();
sys_time_init();
- int_enable();
+ mcu_int_enable();
}
static inline void main_periodic_task( void ) {
diff --git a/sw/airborne/booz/test/booz2_test_crista.c b/sw/airborne/booz/test/booz2_test_crista.c
index 21af105e1d..82f990afe4 100644
--- a/sw/airborne/booz/test/booz2_test_crista.c
+++ b/sw/airborne/booz/test/booz2_test_crista.c
@@ -24,10 +24,10 @@
#include
#include "std.h"
-#include "init_hw.h"
+#include "mcu.h"
#include "sys_time.h"
#include "led.h"
-#include "uart.h"
+#include "mcu_periph/uart.h"
#include "messages.h"
#include "downlink.h"
@@ -53,7 +53,7 @@ int main( void ) {
}
static inline void main_init( void ) {
- hw_init();
+ mcu_init();
sys_time_init();
led_init();
@@ -66,7 +66,7 @@ static inline void main_init( void ) {
imu_impl_init();
imu_init();
- int_enable();
+ mcu_int_enable();
}
static inline void main_periodic_task( void ) {
diff --git a/sw/airborne/booz/test/booz2_test_gps.c b/sw/airborne/booz/test/booz2_test_gps.c
index 0c67b7886a..a85f6f30a0 100644
--- a/sw/airborne/booz/test/booz2_test_gps.c
+++ b/sw/airborne/booz/test/booz2_test_gps.c
@@ -24,7 +24,7 @@
#include
#include "std.h"
-#include "init_hw.h"
+#include "mcu.h"
#include "sys_time.h"
#include "downlink.h"
#include "booz_gps.h"
@@ -47,11 +47,11 @@ int main( void ) {
}
static inline void main_init( void ) {
- hw_init();
+ mcu_init();
sys_time_init();
led_init();
booz_gps_init();
- int_enable();
+ mcu_int_enable();
}
static inline void main_periodic_task( void ) {
diff --git a/sw/airborne/booz/test/booz2_test_led.c b/sw/airborne/booz/test/booz2_test_led.c
index 126358b6b4..4986fb2a6d 100644
--- a/sw/airborne/booz/test/booz2_test_led.c
+++ b/sw/airborne/booz/test/booz2_test_led.c
@@ -24,7 +24,7 @@
#include
#include "std.h"
-#include "init_hw.h"
+#include "mcu.h"
#include "sys_time.h"
#include "interrupt_hw.h"
@@ -43,9 +43,9 @@ int main( void ) {
}
static inline void main_init( void ) {
- hw_init();
+ mcu_init();
sys_time_init();
- int_enable();
+ mcu_int_enable();
}
static inline void main_periodic_task( void ) {
diff --git a/sw/airborne/booz/test/booz2_test_max1168.c b/sw/airborne/booz/test/booz2_test_max1168.c
index 12c858a824..dc57a9a454 100644
--- a/sw/airborne/booz/test/booz2_test_max1168.c
+++ b/sw/airborne/booz/test/booz2_test_max1168.c
@@ -24,7 +24,7 @@
#include
#include "std.h"
-#include "init_hw.h"
+#include "mcu.h"
#include "sys_time.h"
#include "interrupt_hw.h"
#include "messages.h"
@@ -56,13 +56,13 @@ int main( void ) {
}
static inline void main_init( void ) {
- hw_init();
+ mcu_init();
sys_time_init();
main_init_ssp();
max1168_init();
- int_enable();
+ mcu_int_enable();
}
static inline void main_periodic_task( void ) {
diff --git a/sw/airborne/booz/test/booz2_test_micromag.c b/sw/airborne/booz/test/booz2_test_micromag.c
index 68377fb5ef..9ba50b7fee 100644
--- a/sw/airborne/booz/test/booz2_test_micromag.c
+++ b/sw/airborne/booz/test/booz2_test_micromag.c
@@ -24,10 +24,10 @@
#include
#include "std.h"
-#include "init_hw.h"
+#include "mcu.h"
#include "sys_time.h"
#include "led.h"
-#include "uart.h"
+#include "mcu_periph/uart.h"
#include "messages.h"
#include "downlink.h"
@@ -58,7 +58,7 @@ int main( void ) {
}
static inline void main_init( void ) {
- hw_init();
+ mcu_init();
sys_time_init();
led_init();
@@ -72,7 +72,7 @@ static inline void main_init( void ) {
main_init_ssp();
micromag_init();
- int_enable();
+ mcu_int_enable();
}
static inline void main_periodic_task( void ) {
diff --git a/sw/airborne/booz/test/booz2_test_modem.c b/sw/airborne/booz/test/booz2_test_modem.c
index 1b5fb38628..df06203773 100644
--- a/sw/airborne/booz/test/booz2_test_modem.c
+++ b/sw/airborne/booz/test/booz2_test_modem.c
@@ -23,11 +23,11 @@
#include
-#include "init_hw.h"
+#include "mcu.h"
#include "sys_time.h"
#include "led.h"
#include "interrupt_hw.h"
-#include "uart.h"
+#include "mcu_periph/uart.h"
#include "messages.h"
#include "downlink.h"
@@ -47,11 +47,11 @@ int main( void ) {
}
static inline void main_init( void ) {
- hw_init();
+ mcu_init();
sys_time_init();
led_init();
uart1_init_tx();
- int_enable();
+ mcu_int_enable();
}
static inline void main_periodic_task( void ) {
diff --git a/sw/airborne/booz/test/booz2_test_radio_control.c b/sw/airborne/booz/test/booz2_test_radio_control.c
index 0c9e57e53a..cc0ea59b95 100644
--- a/sw/airborne/booz/test/booz2_test_radio_control.c
+++ b/sw/airborne/booz/test/booz2_test_radio_control.c
@@ -52,7 +52,7 @@ static inline void main_init( void ) {
mcu_init();
sys_time_init();
radio_control_init();
- int_enable();
+ mcu_int_enable();
}
extern uint32_t debug_len;
diff --git a/sw/airborne/booz/test/booz2_test_rc.c b/sw/airborne/booz/test/booz2_test_rc.c
index d88f5e9e75..5806e65250 100644
--- a/sw/airborne/booz/test/booz2_test_rc.c
+++ b/sw/airborne/booz/test/booz2_test_rc.c
@@ -24,10 +24,10 @@
#include
#include "std.h"
-#include "init_hw.h"
+#include "mcu.h"
#include "sys_time.h"
#include "led.h"
-#include "uart.h"
+#include "mcu_periph/uart.h"
#include "messages.h"
#include "downlink.h"
@@ -52,7 +52,7 @@ int main( void ) {
}
static inline void main_init( void ) {
- hw_init();
+ mcu_init();
sys_time_init();
led_init();
@@ -61,7 +61,7 @@ static inline void main_init( void ) {
ppm_init();
radio_control_init();
- int_enable();
+ mcu_int_enable();
}
static inline void main_periodic_task( void ) {
diff --git a/sw/airborne/booz/test/booz2_test_usb.c b/sw/airborne/booz/test/booz2_test_usb.c
index c694603709..9e35042c62 100644
--- a/sw/airborne/booz/test/booz2_test_usb.c
+++ b/sw/airborne/booz/test/booz2_test_usb.c
@@ -24,7 +24,7 @@
#include
#include "std.h"
-#include "init_hw.h"
+#include "mcu.h"
#include "sys_time.h"
#include "led.h"
@@ -51,13 +51,13 @@ int main( void ) {
}
static inline void main_init( void ) {
- hw_init();
+ mcu_init();
sys_time_init();
led_init();
VCOM_init();
- int_enable();
+ mcu_int_enable();
}
static inline void main_periodic_task( void ) {
diff --git a/sw/airborne/booz/test/booz2_tunnel.c b/sw/airborne/booz/test/booz2_tunnel.c
index 9229ae1aef..9f8a4689ea 100644
--- a/sw/airborne/booz/test/booz2_tunnel.c
+++ b/sw/airborne/booz/test/booz2_tunnel.c
@@ -24,10 +24,10 @@
#include
#include "std.h"
-#include "init_hw.h"
+#include "mcu.h"
#include "sys_time.h"
#include "led.h"
-#include "uart.h"
+#include "mcu_periph/uart.h"
static inline void main_init( void );
static inline void main_periodic_task( void );
@@ -44,12 +44,12 @@ int main( void ) {
}
static inline void main_init( void ) {
- hw_init();
+ mcu_init();
sys_time_init();
led_init();
uart0_init();
uart1_init();
- int_enable();
+ mcu_int_enable();
}
static inline void main_periodic_task( void ) {
diff --git a/sw/airborne/booz/test/booz2_tunnel_bb.c b/sw/airborne/booz/test/booz2_tunnel_bb.c
index 33f8b7ff65..db0deaa5d3 100644
--- a/sw/airborne/booz/test/booz2_tunnel_bb.c
+++ b/sw/airborne/booz/test/booz2_tunnel_bb.c
@@ -25,7 +25,7 @@
#include "std.h"
-#include "init_hw.h"
+#include "mcu.h"
#include "led.h"
#define TXD0_PIN 0
@@ -34,7 +34,7 @@
#define RXD1_PIN 9
int main (int argc, char** argv) {
- hw_init();
+ mcu_init();
led_init();
/* TXD0 and TXD1 output */
diff --git a/sw/airborne/booz/test/booz_test_imu.c b/sw/airborne/booz/test/booz_test_imu.c
index c5f5c32291..0747c0300c 100644
--- a/sw/airborne/booz/test/booz_test_imu.c
+++ b/sw/airborne/booz/test/booz_test_imu.c
@@ -24,10 +24,10 @@
#include
#include "std.h"
-#include "init_hw.h"
+#include "mcu.h"
#include "sys_time.h"
#include "led.h"
-#include "uart.h"
+#include "mcu_periph/uart.h"
#include "messages.h"
#include "downlink.h"
@@ -56,7 +56,7 @@ int main( void ) {
static inline void main_init( void ) {
- hw_init();
+ mcu_init();
sys_time_init();
imu_init();
@@ -64,7 +64,7 @@ static inline void main_init( void ) {
DEBUG_SERVO2_INIT();
- int_enable();
+ mcu_int_enable();
}
static inline void main_periodic_task( void ) {
diff --git a/sw/airborne/booz/test/booz_test_telemetry.c b/sw/airborne/booz/test/booz_test_telemetry.c
index 940952d9fd..f21b005ff9 100644
--- a/sw/airborne/booz/test/booz_test_telemetry.c
+++ b/sw/airborne/booz/test/booz_test_telemetry.c
@@ -23,7 +23,7 @@
#include
-#include "init_hw.h"
+#include "mcu.h"
#include "sys_time.h"
#include "interrupt_hw.h"
@@ -45,9 +45,9 @@ int main( void ) {
}
static inline void main_init( void ) {
- hw_init();
+ mcu_init();
sys_time_init();
- int_enable();
+ mcu_int_enable();
}
static inline void main_periodic_task( void ) {
diff --git a/sw/airborne/csc/csc_ap_main.c b/sw/airborne/csc/csc_ap_main.c
index 55273d6d65..012d151e38 100644
--- a/sw/airborne/csc/csc_ap_main.c
+++ b/sw/airborne/csc/csc_ap_main.c
@@ -28,11 +28,11 @@
#include "std.h"
-#include "init_hw.h"
+#include "mcu.h"
#include "sys_time.h"
#include "led.h"
#include "interrupt_hw.h"
-#include "uart.h"
+#include "mcu_periph/uart.h"
#include "downlink.h"
#include "generated/periodic.h"
#include "generated/airframe.h"
@@ -141,7 +141,7 @@ static void on_gpspos_cmd( struct CscGPSPosMsg *msg )
static void csc_main_init( void ) {
- hw_init();
+ mcu_init();
sys_time_init();
led_init();
@@ -167,7 +167,7 @@ static void csc_main_init( void ) {
actuators_init();
csc_ap_init();
- int_enable();
+ mcu_int_enable();
}
diff --git a/sw/airborne/csc/csc_baro.c b/sw/airborne/csc/csc_baro.c
index ed6ddf8278..22649b4f4a 100644
--- a/sw/airborne/csc/csc_baro.c
+++ b/sw/airborne/csc/csc_baro.c
@@ -1,10 +1,10 @@
#include "std.h"
-#include "init_hw.h"
+#include "mcu.h"
#include "sys_time.h"
#include "led.h"
#include "interrupt_hw.h"
-#include "uart.h"
+#include "mcu_periph/uart.h"
#include "messages.h"
#include "downlink.h"
#include "csc_booz2_ins.h"
diff --git a/sw/airborne/csc/csc_datalink.c b/sw/airborne/csc/csc_datalink.c
index 04362db411..72118be9e0 100644
--- a/sw/airborne/csc/csc_datalink.c
+++ b/sw/airborne/csc/csc_datalink.c
@@ -5,7 +5,7 @@
#include "downlink.h"
#include "messages.h"
#include "dl_protocol.h"
-#include "uart.h"
+#include "mcu_periph/uart.h"
#define IdOfMsg(x) (x[1])
diff --git a/sw/airborne/csc/csc_protocol.c b/sw/airborne/csc/csc_protocol.c
index f3167c7c20..f2027347eb 100644
--- a/sw/airborne/csc/csc_protocol.c
+++ b/sw/airborne/csc/csc_protocol.c
@@ -29,7 +29,7 @@
#include "mcu_periph/can.h"
#include "csc_msg_def.h"
-// #include "init_hw.h"
+// #include "mcu.h"
// #include "sys_time.h"
// #include "downlink.h"
diff --git a/sw/airborne/csc/csc_rc_spektrum.c b/sw/airborne/csc/csc_rc_spektrum.c
index 4771fc55e9..9347a8d9f7 100644
--- a/sw/airborne/csc/csc_rc_spektrum.c
+++ b/sw/airborne/csc/csc_rc_spektrum.c
@@ -34,7 +34,7 @@
#include "paparazzi.h"
#include "downlink.h"
#include "messages.h"
-#include "uart.h"
+#include "mcu_periph/uart.h"
#include "string.h"
#include "csc_ap_link.h"
#include "csc_msg_def.h"
diff --git a/sw/airborne/csc/csc_xsens.c b/sw/airborne/csc/csc_xsens.c
index e71569cbe5..ee0a2e6ec0 100644
--- a/sw/airborne/csc/csc_xsens.c
+++ b/sw/airborne/csc/csc_xsens.c
@@ -34,7 +34,7 @@
#include "downlink.h"
#include "messages.h"
-#include "uart.h"
+#include "mcu_periph/uart.h"
//#include "com_stats.h"
#include "math/pprz_algebra_float.h"
#include "string.h"
diff --git a/sw/airborne/csc/mercury_csc_main.c b/sw/airborne/csc/mercury_csc_main.c
index 18f81b3197..4c259524a9 100644
--- a/sw/airborne/csc/mercury_csc_main.c
+++ b/sw/airborne/csc/mercury_csc_main.c
@@ -28,7 +28,7 @@
#include "std.h"
-#include "init_hw.h"
+#include "mcu.h"
#include "sys_time.h"
#include "led.h"
@@ -47,7 +47,7 @@
// #include "ams5812.h"
#include "interrupt_hw.h"
-#include "uart.h"
+#include "mcu_periph/uart.h"
#include "csc_telemetry.h"
#include "generated/periodic.h"
diff --git a/sw/airborne/csc/mercury_main.c b/sw/airborne/csc/mercury_main.c
index 637b5bf7c7..b6914fb70f 100644
--- a/sw/airborne/csc/mercury_main.c
+++ b/sw/airborne/csc/mercury_main.c
@@ -28,11 +28,11 @@
#include "std.h"
-#include "init_hw.h"
+#include "mcu.h"
#include "sys_time.h"
#include "led.h"
#include "interrupt_hw.h"
-#include "uart.h"
+#include "mcu_periph/uart.h"
#include "downlink.h"
#include "generated/periodic.h"
#include "generated/airframe.h"
@@ -105,7 +105,7 @@ static void on_rc_cmd(struct CscRCMsg *msg)
static inline void csc_main_init( void ) {
- hw_init();
+ mcu_init();
sys_time_init();
led_init();
@@ -136,7 +136,7 @@ static inline void csc_main_init( void ) {
props_init();
csc_ap_init();
- int_enable();
+ mcu_int_enable();
stabilization_attitude_enter();
}
diff --git a/sw/airborne/csc/mercury_xsens.c b/sw/airborne/csc/mercury_xsens.c
index d8a3692132..54f4c5e447 100644
--- a/sw/airborne/csc/mercury_xsens.c
+++ b/sw/airborne/csc/mercury_xsens.c
@@ -39,7 +39,7 @@
#include "downlink.h"
#include "messages.h"
-#include "uart.h"
+#include "mcu_periph/uart.h"
//#include "com_stats.h"
#include "math/pprz_algebra_float.h"
#include "string.h"
diff --git a/sw/airborne/csc/ppm_bridge_main.c b/sw/airborne/csc/ppm_bridge_main.c
index b2e1bcff8a..e2915321b7 100644
--- a/sw/airborne/csc/ppm_bridge_main.c
+++ b/sw/airborne/csc/ppm_bridge_main.c
@@ -28,11 +28,11 @@
#include "std.h"
-#include "init_hw.h"
+#include "mcu.h"
#include "sys_time.h"
#include "led.h"
#include "interrupt_hw.h"
-#include "uart.h"
+#include "mcu_periph/uart.h"
#include "downlink.h"
#include "generated/periodic.h"
#include "generated/airframe.h"
@@ -52,7 +52,7 @@ static uint16_t cpu_time = 0;
static void csc_main_init( void ) {
- hw_init();
+ mcu_init();
sys_time_init();
led_init();
@@ -66,7 +66,7 @@ static void csc_main_init( void ) {
IO0DIR = IO0DIR | (0x1 << 21);
IO0PIN = IO0DIR | (0x1 << 21);
- int_enable();
+ mcu_int_enable();
}
diff --git a/sw/airborne/firmwares/beth/main_beth.c b/sw/airborne/firmwares/beth/main_beth.c
index 42da9633e3..ff7ee9a0b9 100644
--- a/sw/airborne/firmwares/beth/main_beth.c
+++ b/sw/airborne/firmwares/beth/main_beth.c
@@ -1,5 +1,5 @@
#include "std.h"
-#include "init_hw.h"
+#include "mcu.h"
#include "sys_time.h"
#include "interrupt_hw.h"
@@ -24,9 +24,9 @@ int main( void ) {
}
static inline void main_init( void ) {
- hw_init();
+ mcu_init();
sys_time_init();
- int_enable();
+ mcu_int_enable();
}
static inline void main_periodic_task( void ) {
diff --git a/sw/airborne/firmwares/beth/main_coders.c b/sw/airborne/firmwares/beth/main_coders.c
index 31e873270d..c0ea74c6fd 100644
--- a/sw/airborne/firmwares/beth/main_coders.c
+++ b/sw/airborne/firmwares/beth/main_coders.c
@@ -1,5 +1,5 @@
#include BOARD_CONFIG
-#include "init_hw.h"
+#include "mcu.h"
#include "mcu_periph/can.h"
#include "sys_time.h"
#include "downlink.h"
@@ -73,11 +73,11 @@ int main(void) {
static inline void main_init( void ) {
- hw_init();
+ mcu_init();
sys_time_init();
main_init_adc();
bench_sensors_init();
- int_enable();
+ mcu_int_enable();
}
static inline void main_periodic( void ) {
diff --git a/sw/airborne/firmwares/beth/rcv_telemetry.c b/sw/airborne/firmwares/beth/rcv_telemetry.c
index 904932f7de..72b1d92359 100755
--- a/sw/airborne/firmwares/beth/rcv_telemetry.c
+++ b/sw/airborne/firmwares/beth/rcv_telemetry.c
@@ -44,7 +44,7 @@
#ifndef DOWNLINK_DEVICE
#define DOWNLINK_DEVICE DOWNLINK_AP_DEVICE
#endif
-#include "uart.h"
+#include "mcu_periph/uart.h"
#include "downlink.h"
diff --git a/sw/airborne/firmwares/beth/uart_hw.c b/sw/airborne/firmwares/beth/uart_hw.c
index 6b0c583ace..5a769e4a83 100644
--- a/sw/airborne/firmwares/beth/uart_hw.c
+++ b/sw/airborne/firmwares/beth/uart_hw.c
@@ -21,7 +21,7 @@
* Boston, MA 02111-1307, USA.
*/
-#include "uart.h"
+#include "mcu_periph/uart.h"
#include
#include
diff --git a/sw/airborne/firmwares/fixedwing/main_ap.c b/sw/airborne/firmwares/fixedwing/main_ap.c
index 38dfd44864..dccfb23e5c 100644
--- a/sw/airborne/firmwares/fixedwing/main_ap.c
+++ b/sw/airborne/firmwares/fixedwing/main_ap.c
@@ -39,7 +39,9 @@
#include "firmwares/fixedwing/stabilization/stabilization_attitude.h"
#include "firmwares/fixedwing/guidance/guidance_v.h"
#include "gps.h"
+#ifdef USE_INFRARED
#include "subsystems/sensors/infrared.h"
+#endif
#include "gyro.h"
#include "ap_downlink.h"
#include "subsystems/nav.h"
@@ -387,11 +389,11 @@ void periodic_task_ap( void ) {
#ifdef PERIODIC_FREQUENCY
-#warning Using HighSpeed Periodic: Manually check to make sure PERIODIC_FREQUENCY is a multiple of 60.
+#warning Using HighSpeed Periodic: Manually check to make sure PERIODIC_FREQUENCY is a multiple of 60.
static uint8_t _60Hz = 0;
_60Hz++;
if (_60Hz >= (PERIODIC_FREQUENCY / 60))
- {
+ {
_60Hz = 0;
}
else
@@ -584,6 +586,10 @@ void init_ap( void ) {
/*********** EVENT ***********************************************************/
void event_task_ap( void ) {
+#ifdef USE_INFRARED
+ infrared_event();
+#endif
+
#ifdef USE_AHRS
ImuEvent(on_gyro_accel_event, on_mag_event);
#endif // USE_AHRS
@@ -696,7 +702,7 @@ static inline void on_gyro_accel_event( void ) {
INT32_VECT3_SDIV(gyr_avg, gyr_avg, (PERIODIC_FREQUENCY / AHRS_PROPAGATE_FREQUENCY) );
imu.gyro_unscaled.p = gyr_avg.x;
imu.gyro_unscaled.q = gyr_avg.y;
- imu.gyro_unscaled.r = gyr_avg.z;
+ imu.gyro_unscaled.r = gyr_avg.z;
INT_VECT3_ZERO(gyr_avg);
ImuScaleGyro(imu);
@@ -715,7 +721,7 @@ static inline void on_gyro_accel_event( void ) {
ahrs_update_fw_estimator();
}
}
-
+
#ifdef AHRS_CPU_LED
LED_OFF(AHRS_CPU_LED);
#endif
diff --git a/sw/airborne/firmwares/logger/main_logger.c b/sw/airborne/firmwares/logger/main_logger.c
index 69a104dde1..8f3eea1406 100644
--- a/sw/airborne/firmwares/logger/main_logger.c
+++ b/sw/airborne/firmwares/logger/main_logger.c
@@ -520,7 +520,7 @@ static inline void main_init( void ) {
max11040_init();
#endif
- int_enable();
+ mcu_int_enable();
}
static inline void main_periodic_task( void ) {
diff --git a/sw/airborne/firmwares/motor_bench/main_turntable.c b/sw/airborne/firmwares/motor_bench/main_turntable.c
index d170077efc..8345c948e7 100644
--- a/sw/airborne/firmwares/motor_bench/main_turntable.c
+++ b/sw/airborne/firmwares/motor_bench/main_turntable.c
@@ -1,5 +1,5 @@
#include "std.h"
-#include "init_hw.h"
+#include "mcu.h"
#include "sys_time.h"
#include "led.h"
#include "interrupt_hw.h"
@@ -32,10 +32,10 @@ int main( void ) {
}
static inline void main_init( void ) {
- hw_init();
+ mcu_init();
sys_time_init();
main_init_tacho();
- int_enable();
+ mcu_int_enable();
}
#define NB_STEP 256
diff --git a/sw/airborne/firmwares/motor_bench/mb_tacho.c b/sw/airborne/firmwares/motor_bench/mb_tacho.c
index 7875b3c3b7..31e26ae80d 100644
--- a/sw/airborne/firmwares/motor_bench/mb_tacho.c
+++ b/sw/airborne/firmwares/motor_bench/mb_tacho.c
@@ -31,7 +31,7 @@ uint32_t mb_tacho_get_duration( void ) {
my_duration = mb_tacho_duration;
}
got_one_pulse = FALSE;
- int_enable();
+ mcu_int_enable();
return my_duration;
}
@@ -53,7 +53,7 @@ float mb_tacho_get_averaged( void ) {
mb_tacho_averaged = 0.;
mb_tacho_nb_pulse = 0;
- int_enable();
+ mcu_int_enable();
return ret;
diff --git a/sw/airborne/firmwares/tutorial/main_demo2.c b/sw/airborne/firmwares/tutorial/main_demo2.c
index 005b76e505..0ced604473 100644
--- a/sw/airborne/firmwares/tutorial/main_demo2.c
+++ b/sw/airborne/firmwares/tutorial/main_demo2.c
@@ -1,6 +1,6 @@
#include "std.h"
-#include "init_hw.h"
+#include "mcu.h"
#include "sys_time.h"
#include "led.h"
@@ -17,7 +17,7 @@ int main( void ) {
}
static inline void main_init( void ) {
- hw_init();
+ mcu_init();
sys_time_init();
led_init();
}
diff --git a/sw/airborne/firmwares/tutorial/main_demo3.c b/sw/airborne/firmwares/tutorial/main_demo3.c
index 29ae419e12..5699adefe5 100644
--- a/sw/airborne/firmwares/tutorial/main_demo3.c
+++ b/sw/airborne/firmwares/tutorial/main_demo3.c
@@ -19,11 +19,11 @@ int main( void ) {
}
static inline void main_init( void ) {
- hw_init();
+ mcu_init();
sys_time_init();
led_init();
uart0_init_tx();
- int_enable();
+ mcu_int_enable();
}
static inline void main_periodic_task( void ) {
diff --git a/sw/airborne/firmwares/tutorial/main_demo6.c b/sw/airborne/firmwares/tutorial/main_demo6.c
index af9d8f777a..dd312de7a2 100644
--- a/sw/airborne/firmwares/tutorial/main_demo6.c
+++ b/sw/airborne/firmwares/tutorial/main_demo6.c
@@ -1,5 +1,5 @@
#include "std.h"
-#include "init_hw.h"
+#include "mcu.h"
#include "sys_time.h"
#include "led.h"
#include "interrupt_hw.h"
@@ -21,11 +21,11 @@ int main( void ) {
}
static inline void main_init( void ) {
- hw_init();
+ mcu_init();
sys_time_init();
led_init();
usb_serial_init();
- int_enable();
+ mcu_int_enable();
}
static inline void main_periodic_task( void ) {
diff --git a/sw/airborne/firmwares/vor/lpc_vor_main.c b/sw/airborne/firmwares/vor/lpc_vor_main.c
index dd1e2e77d6..bb6ee1e1b4 100644
--- a/sw/airborne/firmwares/vor/lpc_vor_main.c
+++ b/sw/airborne/firmwares/vor/lpc_vor_main.c
@@ -1,9 +1,9 @@
#include "std.h"
-#include "init_hw.h"
+#include "mcu.h"
#include "sys_time.h"
#include "led.h"
#include "interrupt_hw.h"
-#include "uart.h"
+#include "mcu_periph/uart.h"
#include "print.h"
//#include "messages.h"
//#include "downlink.h"
@@ -86,14 +86,14 @@ static inline void main_report( void ) {
static inline void main_init( void ) {
- hw_init();
+ mcu_init();
sys_time_init();
led_init();
uart0_init();
vor_int_demod_init();
VorDacInit();
vor_adc_init();
- int_enable();
+ mcu_int_enable();
}
diff --git a/sw/airborne/firmwares/wind_tunnel/main.c b/sw/airborne/firmwares/wind_tunnel/main.c
index a8f779296a..e32d4f3441 100644
--- a/sw/airborne/firmwares/wind_tunnel/main.c
+++ b/sw/airborne/firmwares/wind_tunnel/main.c
@@ -1,9 +1,9 @@
#include "std.h"
-#include "init_hw.h"
+#include "mcu.h"
#include "sys_time.h"
#include "led.h"
#include "interrupt_hw.h"
-#include "uart.h"
+#include "mcu_periph/uart.h"
#include "messages.h"
#include "downlink.h"
@@ -38,7 +38,7 @@ int main( void ) {
}
static inline void main_init( void ) {
- hw_init();
+ mcu_init();
sys_time_init();
led_init();
uart0_init();
@@ -50,7 +50,7 @@ static inline void main_init( void ) {
spi_init();
wt_baro_init();
- int_enable();
+ mcu_int_enable();
}
static inline void main_periodic_task( void ) {
diff --git a/sw/airborne/firmwares/wind_tunnel/main_mb.c b/sw/airborne/firmwares/wind_tunnel/main_mb.c
index 48e0403f44..437e0fab32 100644
--- a/sw/airborne/firmwares/wind_tunnel/main_mb.c
+++ b/sw/airborne/firmwares/wind_tunnel/main_mb.c
@@ -1,9 +1,9 @@
#include "std.h"
-#include "init_hw.h"
+#include "mcu.h"
#include "sys_time.h"
#include "led.h"
#include "interrupt_hw.h"
-#include "uart.h"
+#include "mcu_periph/uart.h"
#include "messages.h"
#include "downlink.h"
@@ -37,7 +37,7 @@ int main( void ) {
}
static inline void main_init( void ) {
- hw_init();
+ mcu_init();
sys_time_init();
led_init();
uart0_init();
@@ -49,7 +49,7 @@ static inline void main_init( void ) {
//motor_power = 0;
- int_enable();
+ mcu_int_enable();
}
static inline void main_periodic_task( void ) {
diff --git a/sw/airborne/fms/lpc_test_spi.c b/sw/airborne/fms/lpc_test_spi.c
index 9ca9f5b902..97a0de0407 100644
--- a/sw/airborne/fms/lpc_test_spi.c
+++ b/sw/airborne/fms/lpc_test_spi.c
@@ -24,7 +24,7 @@
#include
#include "std.h"
-#include "init_hw.h"
+#include "mcu.h"
#include "sys_time.h"
#include "interrupt_hw.h"
#include "armVIC.h"
@@ -50,10 +50,10 @@ int main( void ) {
}
static inline void main_init( void ) {
- hw_init();
+ mcu_init();
sys_time_init();
main_spi_init();
- int_enable();
+ mcu_int_enable();
}
static inline void main_periodic_task( void ) {
diff --git a/sw/airborne/led.h b/sw/airborne/led.h
index 98a943dbed..55a9c0493e 100644
--- a/sw/airborne/led.h
+++ b/sw/airborne/led.h
@@ -31,8 +31,7 @@
#ifndef LED_H
#define LED_H
-// FIXME : remove LED
-#if defined USE_LED || defined LED
+#if defined USE_LED
#include "led_hw.h"
diff --git a/sw/airborne/lisa/lisa_stm_gps_passthrough_main.c b/sw/airborne/lisa/lisa_stm_gps_passthrough_main.c
index 5a115a0c74..a718ad9a7c 100644
--- a/sw/airborne/lisa/lisa_stm_gps_passthrough_main.c
+++ b/sw/airborne/lisa/lisa_stm_gps_passthrough_main.c
@@ -22,7 +22,7 @@
*
*/
-#include "init_hw.h"
+#include "mcu.h"
#include "sys_time.h"
#include "lisa/lisa_overo_link.h"
#include "lisa/lisa_spistream.h"
@@ -91,7 +91,7 @@ int main(void) {
static inline void main_init(void) {
- hw_init();
+ mcu_init();
sys_time_init();
overo_link_init();
diff --git a/sw/airborne/lisa/stm_test_spi_link.c b/sw/airborne/lisa/stm_test_spi_link.c
index 0f5ae21ae5..6aed277afc 100644
--- a/sw/airborne/lisa/stm_test_spi_link.c
+++ b/sw/airborne/lisa/stm_test_spi_link.c
@@ -27,7 +27,7 @@
#include
#include BOARD_CONFIG
-#include "init_hw.h"
+#include "mcu.h"
#include "sys_time.h"
#include "lisa/lisa_overo_link.h"
@@ -42,7 +42,7 @@ static inline void on_overo_link_lost(void);
int main(void) {
- hw_init();
+ mcu_init();
sys_time_init();
overo_link_init();
DEBUG_SERVO1_INIT();
diff --git a/sw/airborne/lisa/test/lisa_test_actuators_mkk.c b/sw/airborne/lisa/test/lisa_test_actuators_mkk.c
index 2c5a646ebc..bc3e4c8f64 100644
--- a/sw/airborne/lisa/test/lisa_test_actuators_mkk.c
+++ b/sw/airborne/lisa/test/lisa_test_actuators_mkk.c
@@ -22,7 +22,7 @@
*/
-#include "init_hw.h"
+#include "mcu.h"
#include "sys_time.h"
#include "booz2_commands.h"
#include "actuators.h"
@@ -49,7 +49,7 @@ int main(void) {
}
static inline void main_init( void ) {
- hw_init();
+ mcu_init();
sys_time_init();
actuators_init();
}
diff --git a/sw/airborne/lisa/test/lisa_test_adxl345.c b/sw/airborne/lisa/test/lisa_test_adxl345.c
index 40f6bd8906..6b8c65ca58 100644
--- a/sw/airborne/lisa/test/lisa_test_adxl345.c
+++ b/sw/airborne/lisa/test/lisa_test_adxl345.c
@@ -35,7 +35,7 @@
#include
#include BOARD_CONFIG
-#include "init_hw.h"
+#include "mcu.h"
#include "sys_time.h"
#include "downlink.h"
@@ -63,7 +63,7 @@ int main(void) {
}
static inline void main_init( void ) {
- hw_init();
+ mcu_init();
sys_time_init();
main_init_hw();
diff --git a/sw/airborne/lisa/test/lisa_test_adxl345_dma.c b/sw/airborne/lisa/test/lisa_test_adxl345_dma.c
index 20dfd6f70b..fa74e5018a 100644
--- a/sw/airborne/lisa/test/lisa_test_adxl345_dma.c
+++ b/sw/airborne/lisa/test/lisa_test_adxl345_dma.c
@@ -29,7 +29,7 @@
#include
#include BOARD_CONFIG
-#include "init_hw.h"
+#include "mcu.h"
#include "sys_time.h"
#include "downlink.h"
@@ -58,7 +58,7 @@ int main(void) {
}
static inline void main_init( void ) {
- hw_init();
+ mcu_init();
sys_time_init();
main_init_hw();
diff --git a/sw/airborne/lisa/test/lisa_test_aspirin.c b/sw/airborne/lisa/test/lisa_test_aspirin.c
index 4f7cbecbb3..2641273fe2 100644
--- a/sw/airborne/lisa/test/lisa_test_aspirin.c
+++ b/sw/airborne/lisa/test/lisa_test_aspirin.c
@@ -28,7 +28,7 @@
#include
#include BOARD_CONFIG
-#include "init_hw.h"
+#include "mcu.h"
#include "sys_time.h"
#include "downlink.h"
@@ -60,7 +60,7 @@ int main(void) {
}
static inline void main_init( void ) {
- hw_init();
+ mcu_init();
sys_time_init();
main_init_hw();
diff --git a/sw/airborne/lisa/test/lisa_test_max1168.c b/sw/airborne/lisa/test/lisa_test_max1168.c
index af7bc514c9..38a6cc67bc 100644
--- a/sw/airborne/lisa/test/lisa_test_max1168.c
+++ b/sw/airborne/lisa/test/lisa_test_max1168.c
@@ -29,7 +29,7 @@
#include
#include BOARD_CONFIG
-#include "init_hw.h"
+#include "mcu.h"
#include "sys_time.h"
#include "downlink.h"
#include "peripherals/max1168.h"
@@ -54,7 +54,7 @@ int main(void) {
static inline void main_init( void ) {
- hw_init();
+ mcu_init();
sys_time_init();
max1168_init();
main_spi2_init();
diff --git a/sw/airborne/lisa/test/lisa_test_ms2001.c b/sw/airborne/lisa/test/lisa_test_ms2001.c
index 1eb0342e80..7fe419587c 100644
--- a/sw/airborne/lisa/test/lisa_test_ms2001.c
+++ b/sw/airborne/lisa/test/lisa_test_ms2001.c
@@ -29,7 +29,7 @@
#include
#include BOARD_CONFIG
-#include "init_hw.h"
+#include "mcu.h"
#include "sys_time.h"
#include "downlink.h"
#include "peripherals/ms2001.h"
@@ -54,7 +54,7 @@ int main(void) {
static inline void main_init( void ) {
- hw_init();
+ mcu_init();
sys_time_init();
ms2001_init();
main_spi2_init();
diff --git a/sw/airborne/lisa/test/lisa_test_ms2100.c b/sw/airborne/lisa/test/lisa_test_ms2100.c
index cedf7cacd2..aabd4aa9ed 100644
--- a/sw/airborne/lisa/test/lisa_test_ms2100.c
+++ b/sw/airborne/lisa/test/lisa_test_ms2100.c
@@ -29,7 +29,7 @@
#include
#include BOARD_CONFIG
-#include "init_hw.h"
+#include "mcu.h"
#include "sys_time.h"
#include "downlink.h"
#include "peripherals/ms2100.h"
@@ -54,7 +54,7 @@ int main(void) {
static inline void main_init( void ) {
- hw_init();
+ mcu_init();
sys_time_init();
max1168_init();
main_spi2_init();
diff --git a/sw/airborne/lisa/test/lisa_test_sc18is600.c b/sw/airborne/lisa/test/lisa_test_sc18is600.c
index 044ba8cad3..846e4cab96 100644
--- a/sw/airborne/lisa/test/lisa_test_sc18is600.c
+++ b/sw/airborne/lisa/test/lisa_test_sc18is600.c
@@ -26,7 +26,7 @@
#include
#include BOARD_CONFIG
-#include "init_hw.h"
+#include "mcu.h"
#include "sys_time.h"
#include "downlink.h"
#include "peripherals/sc18is600.h"
@@ -51,7 +51,7 @@ int main(void) {
static inline void main_init( void ) {
- hw_init();
+ mcu_init();
sys_time_init();
sc18is600_init();
main_spi2_init();
diff --git a/sw/airborne/lisa/test/lisa_tunnel.c b/sw/airborne/lisa/test/lisa_tunnel.c
index 1a7bec287a..48c5072eca 100644
--- a/sw/airborne/lisa/test/lisa_tunnel.c
+++ b/sw/airborne/lisa/test/lisa_tunnel.c
@@ -44,7 +44,7 @@ int main( void ) {
}
static inline void main_init( void ) {
- hw_init();
+ mcu_init();
sys_time_init();
}
diff --git a/sw/airborne/lisa/test/test_board.c b/sw/airborne/lisa/test/test_board.c
index 292fb22bca..603f6ec155 100644
--- a/sw/airborne/lisa/test/test_board.c
+++ b/sw/airborne/lisa/test/test_board.c
@@ -98,7 +98,7 @@ int main( void ) {
static inline void main_init( void ) {
- hw_init();
+ mcu_init();
sys_time_init();
led_init();
diff --git a/sw/airborne/lisa/test/test_bswap.c b/sw/airborne/lisa/test/test_bswap.c
index b1a9cc5bc3..ccf1a9ad33 100644
--- a/sw/airborne/lisa/test/test_bswap.c
+++ b/sw/airborne/lisa/test/test_bswap.c
@@ -1,6 +1,6 @@
#include
-#include "init_hw.h"
+#include "mcu.h"
#define MyByteSwap16(n) \
diff --git a/sw/airborne/lisa/test/test_mc_asctec_v1_simple.c b/sw/airborne/lisa/test/test_mc_asctec_v1_simple.c
index be1a213223..b83160e704 100644
--- a/sw/airborne/lisa/test/test_mc_asctec_v1_simple.c
+++ b/sw/airborne/lisa/test/test_mc_asctec_v1_simple.c
@@ -28,7 +28,7 @@
*/
-#include "init_hw.h"
+#include "mcu.h"
#include "sys_time.h"
#include "downlink.h"
@@ -51,7 +51,7 @@ int main(void) {
}
static inline void main_init( void ) {
- hw_init();
+ mcu_init();
sys_time_init();
}
diff --git a/sw/airborne/lisa/test_csc_servo.c b/sw/airborne/lisa/test_csc_servo.c
index d0fe135f49..7249d89ec4 100644
--- a/sw/airborne/lisa/test_csc_servo.c
+++ b/sw/airborne/lisa/test_csc_servo.c
@@ -22,7 +22,7 @@
*/
-#include "init_hw.h"
+#include "mcu.h"
#include "sys_time.h"
#include "csc_msg_def.h"
#include "csc_protocol.h"
diff --git a/sw/airborne/lisa/test_datalink.c b/sw/airborne/lisa/test_datalink.c
index 2315f1370f..ce5a02f314 100644
--- a/sw/airborne/lisa/test_datalink.c
+++ b/sw/airborne/lisa/test_datalink.c
@@ -24,7 +24,7 @@
#define DATALINK_C
#include BOARD_CONFIG
-#include "init_hw.h"
+#include "mcu.h"
#include "sys_time.h"
#include "downlink.h"
@@ -47,7 +47,7 @@ int main(void) {
}
static inline void main_init( void ) {
- hw_init();
+ mcu_init();
sys_time_init();
}
diff --git a/sw/airborne/lisa/test_float.c b/sw/airborne/lisa/test_float.c
index 0188012ca9..0339888cac 100644
--- a/sw/airborne/lisa/test_float.c
+++ b/sw/airborne/lisa/test_float.c
@@ -24,7 +24,7 @@
#include
#include BOARD_CONFIG
-#include "init_hw.h"
+#include "mcu.h"
#include "sys_time.h"
#include "downlink.h"
static inline void main_init( void );
@@ -43,7 +43,7 @@ int main(void) {
}
static inline void main_init( void ) {
- hw_init();
+ mcu_init();
sys_time_init();
}
diff --git a/sw/airborne/lisa/test_mc.c b/sw/airborne/lisa/test_mc.c
index fa6f1a3d3c..978c2857d1 100644
--- a/sw/airborne/lisa/test_mc.c
+++ b/sw/airborne/lisa/test_mc.c
@@ -30,7 +30,7 @@
#include
#include BOARD_CONFIG
-#include "init_hw.h"
+#include "mcu.h"
#include "sys_time.h"
static inline void main_init( void );
@@ -55,7 +55,7 @@ int main(void) {
static inline void main_init( void ) {
- hw_init();
+ mcu_init();
sys_time_init();
main_i2c_init();
test_gpios();
diff --git a/sw/airborne/lisa/test_periodic.c b/sw/airborne/lisa/test_periodic.c
index 40f8c1371f..6104c4ad3e 100644
--- a/sw/airborne/lisa/test_periodic.c
+++ b/sw/airborne/lisa/test_periodic.c
@@ -25,7 +25,7 @@
#include
#include BOARD_CONFIG
-#include "init_hw.h"
+#include "mcu.h"
#include "sys_time.h"
static inline void main_init( void );
@@ -43,7 +43,7 @@ int main(void) {
}
static inline void main_init( void ) {
- hw_init();
+ mcu_init();
sys_time_init();
}
diff --git a/sw/airborne/lisa/test_spi_slave.c b/sw/airborne/lisa/test_spi_slave.c
index 001219a8e4..d78e32ccdd 100644
--- a/sw/airborne/lisa/test_spi_slave.c
+++ b/sw/airborne/lisa/test_spi_slave.c
@@ -26,7 +26,7 @@
#include
#include BOARD_CONFIG
-#include "init_hw.h"
+#include "mcu.h"
#include "sys_time.h"
#include "downlink.h"
@@ -51,7 +51,7 @@ int main(void) {
static inline void main_init( void ) {
- hw_init();
+ mcu_init();
sys_time_init();
main_spi_slave_init();
}
diff --git a/sw/airborne/lisa/test_spi_slave2.c b/sw/airborne/lisa/test_spi_slave2.c
index 75c5e8ecc8..09bdee54e5 100644
--- a/sw/airborne/lisa/test_spi_slave2.c
+++ b/sw/airborne/lisa/test_spi_slave2.c
@@ -27,7 +27,7 @@
#include
#include BOARD_CONFIG
-#include "init_hw.h"
+#include "mcu.h"
#include "sys_time.h"
#include "downlink.h"
#include "fms/fms_autopilot_msg.h"
@@ -59,7 +59,7 @@ int main(void) {
static inline void main_init( void ) {
- hw_init();
+ mcu_init();
sys_time_init();
main_spi_slave_init();
}
diff --git a/sw/airborne/lisa/tunnel_hw.c b/sw/airborne/lisa/tunnel_hw.c
index 0d9770e05b..10741ff5ae 100644
--- a/sw/airborne/lisa/tunnel_hw.c
+++ b/sw/airborne/lisa/tunnel_hw.c
@@ -27,7 +27,7 @@
#include
#include BOARD_CONFIG
-#include "init_hw.h"
+#include "mcu.h"
#include "sys_time.h"
#include "led.h"
@@ -52,7 +52,7 @@ void Delay(__IO uint32_t nCount) {
int main(void) {
- hw_init();
+ mcu_init();
sys_time_init();
diff --git a/sw/airborne/mcu.c b/sw/airborne/mcu.c
index d1f02766d7..e0853e4bab 100644
--- a/sw/airborne/mcu.c
+++ b/sw/airborne/mcu.c
@@ -36,7 +36,7 @@
#if defined USE_UART0 || defined USE_UART1 || defined USE_UART2 || defined USE_UART3 || defined USE_UART4 || defined USE_UART5
#include "mcu_periph/uart.h"
#endif
-#if defined USE_I2C0 || defined USE_I2C1 || defined USE_I2C2
+#if defined USE_I2C0 || defined USE_I2C1 || defined USE_I2C2
#include "mcu_periph/i2c.h"
#endif
#if defined USE_ADC
diff --git a/sw/airborne/modules/core/extra_pprz_dl.h b/sw/airborne/modules/core/extra_pprz_dl.h
index 676075a90c..5c562122b2 100644
--- a/sw/airborne/modules/core/extra_pprz_dl.h
+++ b/sw/airborne/modules/core/extra_pprz_dl.h
@@ -138,7 +138,7 @@ extern uint8_t extra_pprz_ovrn, extra_pprz_error;
extern volatile uint8_t extra_pprz_payload_len;
#include "led.h"
-//#include "uart.h"
+//#include "mcu_periph/uart.h"
//#include "messages.h"
//#include "downlink.h"
static inline void parse_extra_pprz( uint8_t c ) {
diff --git a/sw/airborne/modules/sensors/infrared_adc.h b/sw/airborne/modules/sensors/infrared_adc.h
new file mode 100644
index 0000000000..9a0efb291a
--- /dev/null
+++ b/sw/airborne/modules/sensors/infrared_adc.h
@@ -0,0 +1,33 @@
+/*
+ * Copyright (C) 2010 ENAC
+ *
+ * This file is part of paparazzi.
+ *
+ * paparazzi 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; either version 2, or (at your option)
+ * any later version.
+ *
+ * paparazzi is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with paparazzi; see the file COPYING. If not, write to
+ * the Free Software Foundation, 59 Temple Place - Suite 330,
+ * Boston, MA 02111-1307, USA.
+ *
+ */
+
+/*
+ * Wrapper for adc infrared sensor module
+ */
+
+#ifndef INFRARED_ADC_H
+#define INFRARED_ADC_H
+
+#include "subsystems/sensors/infrared_adc.h"
+
+#endif // INFRARED_ADC_H
+
diff --git a/sw/airborne/modules/sensors/infrared_i2c.h b/sw/airborne/modules/sensors/infrared_i2c.h
index 0b3422667c..95e9ea1d01 100644
--- a/sw/airborne/modules/sensors/infrared_i2c.h
+++ b/sw/airborne/modules/sensors/infrared_i2c.h
@@ -21,43 +21,12 @@
*/
/*
- * Driver for i2c infrared sensor
+ * Wrapper for i2c infrared sensor module
*/
#ifndef INFRARED_I2C_H
#define INFRARED_I2C_H
-#include "std.h"
-#include "generated/airframe.h"
-#include "subsystems/sensors/infrared.h"
-#include "mcu_periph/i2c.h"
-
-extern int16_t ir_i2c_ir1;
-extern int16_t ir_i2c_ir2;
-extern int16_t ir_i2c_top;
-extern volatile bool_t ir_i2c_done;
-extern bool_t ir_i2c_data_available;
-extern uint8_t ir_i2c_conf_word;
-extern bool_t ir_i2c_conf_hor_done, ir_i2c_conf_ver_done;
-
-extern struct i2c_transaction irh_trans, irv_trans;
-
-extern void infrared_i2c_init( void );
-extern void infrared_i2c_update( void );
-extern void infrared_i2c_hor_event( void );
-extern void infrared_i2c_ver_event( void );
-
-#define infrared_i2cEvent() { \
- if (irh_trans.status == I2CTransSuccess) infrared_i2c_hor_event(); \
- if (irv_trans.status == I2CTransSuccess) infrared_i2c_ver_event(); \
-}
-
-#define infrared_i2cDownlink() DOWNLINK_SEND_DEBUG_IR_I2C(DefaultChannel, &ir_i2c_ir1, &ir_i2c_ir2, &ir_i2c_top)
-
-#define infrared_i2c_SetConfWord(_v) { \
- ir_i2c_conf_hor_done = FALSE; \
- ir_i2c_conf_ver_done = FALSE; \
- ir_i2c_conf_word = _v; \
-}
+#include "subsystems/sensors/infrared_i2c.h"
#endif // INFRARED_I2C_H
diff --git a/sw/airborne/obsolete/3dmg.c b/sw/airborne/obsolete/3dmg.c
index eaaa3c6917..589dcc14e8 100644
--- a/sw/airborne/obsolete/3dmg.c
+++ b/sw/airborne/obsolete/3dmg.c
@@ -26,7 +26,7 @@
#include "std.h"
#include "3dmg.h"
-#include "uart.h"
+#include "mcu_periph/uart.h"
volatile bool_t _3dmg_data_ready;
int16_t _3dmg_roll, _3dmg_pitch, _3dmg_yaw;
diff --git a/sw/airborne/sd_card/main.c b/sw/airborne/sd_card/main.c
index a77f922b58..5ab9371101 100644
--- a/sw/airborne/sd_card/main.c
+++ b/sw/airborne/sd_card/main.c
@@ -34,7 +34,7 @@ int main( void ) {
}
static inline void main_init( void ) {
- hw_init();
+ mcu_init();
sys_time_init();
led_init();
Uart0Init();
@@ -42,7 +42,7 @@ static inline void main_init( void ) {
spi_init();
sd_card_init();
- int_enable();
+ mcu_int_enable();
}
static inline void main_periodic_task( void ) {
diff --git a/sw/airborne/subsystems/sensors/infrared.c b/sw/airborne/subsystems/sensors/infrared.c
index c90784dd89..caa00a1b5d 100644
--- a/sw/airborne/subsystems/sensors/infrared.c
+++ b/sw/airborne/subsystems/sensors/infrared.c
@@ -23,105 +23,22 @@
*/
/** \file subsystems/sensors/infrared.c
- * \brief Regroup all functions link to \a ir
+ * \brief common infrared
*/
-
-
-
-#include
-
#include "subsystems/sensors/infrared.h"
-#include "mcu_periph/adc.h"
-
-#include BOARD_CONFIG
#include "generated/airframe.h"
-
-#if defined IR_ESTIMATED_PHI_PI_4 || defined IR_ESTIMATED_PHI_MINUS_PI_4 || defined IR_ESTIMATED_THETA_PI_4
-#error "IR_ESTIMATED_PHI_PI_4 correction has been deprecated. Please remove the definition from your airframe config file"
-#endif
#ifdef INFRARED
#error "The flag INFRARED has been deprecated. Please replace it with USE_INFRARED."
#endif
-#if defined IR_ADC_ROLL_NEUTRAL || defined IR_ADC_PITCH_NEUTRAL
-#error "Neutrals on ROLL and PITCH deprecated. Please define IR_ADC_IR1_NEUTRAL and IR_ADC_IR2_NEUTRAL"
-#endif
-#ifdef IR_360
-#warning "IR_360 flag deprecated. Now default"
-#endif
-#ifdef IR_360_LATERAL_CORRECTION
-#error "IR_360_LATERAL_CORRECTION now IR_LATERAL_CORRECTION"
-#endif
-
-#ifdef IR_360_LONGITUDINAL_CORRECTION
-#error "IR_360_LONGITUDINAL_CORRECTION now IR_LONGITUDINAL_CORRECTION"
-#endif
-
-#ifdef IR_360_VERTICAL_CORRECTION
-#error "IR_360_VERTICAL_CORRECTION now IR_VERTICAL_CORRECTION"
-#endif
-
struct Infrared infrared;
-#if !defined IR_CORRECTION_LEFT
-#define IR_CORRECTION_LEFT 1.
-#endif
-
-#if !defined IR_CORRECTION_RIGHT
-#define IR_CORRECTION_RIGHT 1.
-#endif
-
-#if !defined IR_CORRECTION_UP
-#define IR_CORRECTION_UP 1.
-#endif
-
-#if !defined IR_CORRECTION_DOWN
-#define IR_CORRECTION_DOWN 1.
-#endif
-
-#if ! (defined SITL || defined HITL)
-static struct adc_buf buf_ir1;
-static struct adc_buf buf_ir2;
-
-#ifdef ADC_CHANNEL_IR_TOP
-static struct adc_buf buf_ir_top;
-#endif
-#endif
-
-
-#ifndef ADC_CHANNEL_IR_NB_SAMPLES
-#define ADC_CHANNEL_IR_NB_SAMPLES DEFAULT_AV_NB_SAMPLE
-#endif
-
-#ifndef IR_LATERAL_CORRECTION
-#define IR_LATERAL_CORRECTION 1.
-#endif
-
-#ifndef IR_LONGITUDINAL_CORRECTION
-#define IR_LONGITUDINAL_CORRECTION 1.
-#endif
-
-#ifndef IR_VERTICAL_CORRECTION
-#define IR_VERTICAL_CORRECTION 1.
-#endif
-
-
-/** \brief Initialisation of \a ir */
-/** Initialize \a adc_buf_channel
+/** \brief Initialisation of \a ir structure
*/
-void infrared_init(void) {
-#if ! (defined SITL || defined HITL)
- adc_buf_channel(ADC_CHANNEL_IR1, &buf_ir1, ADC_CHANNEL_IR_NB_SAMPLES);
- adc_buf_channel(ADC_CHANNEL_IR2, &buf_ir2, ADC_CHANNEL_IR_NB_SAMPLES);
-#ifdef ADC_CHANNEL_IR_TOP
- adc_buf_channel(ADC_CHANNEL_IR_TOP, &buf_ir_top, ADC_CHANNEL_IR_NB_SAMPLES);
-#endif
-#endif
-
-
- infrared.roll_neutral = RadOfDeg(IR_ROLL_NEUTRAL_DEFAULT);
+void infrared_struct_init(void) {
+ infrared.roll_neutral = RadOfDeg(IR_ROLL_NEUTRAL_DEFAULT);
infrared.pitch_neutral = RadOfDeg(IR_PITCH_NEUTRAL_DEFAULT);
infrared.correction_left = IR_CORRECTION_LEFT;
@@ -133,57 +50,6 @@ void infrared_init(void) {
infrared.longitudinal_correction = IR_LONGITUDINAL_CORRECTION;
infrared.vertical_correction = IR_VERTICAL_CORRECTION;
-#if ! (defined ADC_CHANNEL_IR_TOP || defined HITL || defined SITL)
- infrared.top = IR_DEFAULT_CONTRAST;
-#endif
}
-#ifndef IR_IR1_SIGN
-#define IR_IR1_SIGN 1
-#endif /* IR_IR1_SIGN */
-
-#ifndef IR_IR2_SIGN
-#define IR_IR2_SIGN 1
-#endif /* IR_IR2_SIGN */
-
-#ifndef IR_TOP_SIGN
-#define IR_TOP_SIGN 1
-#endif /* IR_TOP_SIGN */
-
-/* Sensor installation */
-#if defined IR_HORIZ_SENSOR_ALIGNED
-/* IR1 on the lateral axis, IR2 on the longitudal axis */
-#define IR_RollOfIrs(_ir1, _ir2) (_ir1)
-#define IR_PitchOfIrs(_ir1, _ir2) (_ir2)
-#elif IR_HORIZ_SENSOR_TILTED
-/* IR1 rear-left -- front-right, IR2 rear-right -- front-left
- IR1_SIGN and IR2_SIGN give positive values when it's warm on the right side
-*/
-#define IR_RollOfIrs(_ir1, _ir2) (_ir1 + _ir2)
-#define IR_PitchOfIrs(_ir1, _ir2) (-(_ir1) + _ir2)
-#endif
-
-#ifdef ADC_CHANNEL_IR_TOP
-#ifndef IR_TopOfIr
-#define IR_TopOfIr(_ir) ((IR_TOP_SIGN)*(_ir))
-#endif
-#endif
-
-
-/** \brief Update \a ir_roll and ir_pitch from ADCs or from simulator
- * message in HITL and SITL modes
- */
-void infrared_update(void) {
-#if ! (defined SITL || defined HITL)
- infrared.ir1 = (IR_IR1_SIGN)*((int32_t)(buf_ir1.sum/buf_ir1.av_nb_sample) - IR_ADC_IR1_NEUTRAL);
- infrared.ir2 = (IR_IR2_SIGN)*((int32_t)(buf_ir2.sum/buf_ir2.av_nb_sample) - IR_ADC_IR2_NEUTRAL);
- infrared.roll = infrared.lateral_correction * IR_RollOfIrs(infrared.ir1, infrared.ir2);
- infrared.pitch = infrared.longitudinal_correction * IR_PitchOfIrs(infrared.ir1, infrared.ir2);
-#ifdef ADC_CHANNEL_IR_TOP
- infrared.ir3 = (int32_t)(buf_ir_top.sum/buf_ir_top.av_nb_sample) - IR_ADC_TOP_NEUTRAL;
- infrared.top = infrared.vertical_correction * IR_TopOfIr(infrared.ir3);
-#endif // IR_TOP
-#endif /* !SITL && !HITL */
-/** #else ir_roll set by simulator in sim_ir.c */
-}
diff --git a/sw/airborne/subsystems/sensors/infrared.h b/sw/airborne/subsystems/sensors/infrared.h
index 60a1baf3c8..f49a9b0187 100644
--- a/sw/airborne/subsystems/sensors/infrared.h
+++ b/sw/airborne/subsystems/sensors/infrared.h
@@ -27,19 +27,91 @@
#include "std.h"
#include "generated/airframe.h"
+#include "estimator.h"
-struct Infrared {
+/*
+ * Sensor installation
+ */
+
+#ifndef IR_IR1_SIGN
+#define IR_IR1_SIGN 1
+#endif /* IR_IR1_SIGN */
+
+#ifndef IR_IR2_SIGN
+#define IR_IR2_SIGN 1
+#endif /* IR_IR2_SIGN */
+
+#ifndef IR_TOP_SIGN
+#define IR_TOP_SIGN 1
+#endif /* IR_TOP_SIGN */
+
+#if defined IR_HORIZ_SENSOR_ALIGNED
+/* IR1 on the lateral axis, IR2 on the longitudal axis */
+#define IR_RollOfIrs(_ir1, _ir2) (_ir1)
+#define IR_PitchOfIrs(_ir1, _ir2) (_ir2)
+#elif IR_HORIZ_SENSOR_TILTED
+/* IR1 rear-left -- front-right, IR2 rear-right -- front-left
+ IR1_SIGN and IR2_SIGN give positive values when it's warm on the right side
+*/
+#define IR_RollOfIrs(_ir1, _ir2) (_ir1 + _ir2)
+#define IR_PitchOfIrs(_ir1, _ir2) (-(_ir1) + _ir2)
+#endif
+/* Vertical sensor, TOP_SIGN gives positice values when it's warm on the bottom */
+#ifndef IR_TopOfIr
+#define IR_TopOfIr(_ir) (_ir)
+#endif
+
+/*
+ * Default correction values
+ */
+
+#ifndef IR_LATERAL_CORRECTION
+#define IR_LATERAL_CORRECTION 1.
+#endif
+
+#ifndef IR_LONGITUDINAL_CORRECTION
+#define IR_LONGITUDINAL_CORRECTION 1.
+#endif
+
+#ifndef IR_VERTICAL_CORRECTION
+#define IR_VERTICAL_CORRECTION 1.
+#endif
+
+#ifndef IR_CORRECTION_LEFT
+#define IR_CORRECTION_LEFT 1.
+#endif
+
+#ifndef IR_CORRECTION_RIGHT
+#define IR_CORRECTION_RIGHT 1.
+#endif
+
+#ifndef IR_CORRECTION_UP
+#define IR_CORRECTION_UP 1.
+#endif
+
+#ifndef IR_CORRECTION_DOWN
+#define IR_CORRECTION_DOWN 1.
+#endif
+
+struct Infrared_raw {
/* the 3 channels of the sensor
*/
int16_t ir1;
int16_t ir2;
int16_t ir3;
+};
+
+/** Infrared structure */
+struct Infrared {
+ /* raw infrared values
+ */
+ struct Infrared_raw value;
/* neutrals in radians
*/
float roll_neutral;
float pitch_neutral;
float pitch_vneutral;
- /* roll, pitch, yaw unscaled reading
+ /* roll, pitch, top unscaled reading
*/
int16_t roll;
int16_t pitch;
@@ -61,7 +133,22 @@ struct Infrared {
extern struct Infrared infrared;
+#define UpdateIRValue(_v) { \
+ infrared.value.ir1 = (IR_IR1_SIGN)*_v.ir1; \
+ infrared.value.ir2 = (IR_IR2_SIGN)*_v.ir2; \
+ infrared.value.ir3 = (IR_TOP_SIGN)*_v.ir3; \
+ infrared.roll = infrared.lateral_correction * IR_RollOfIrs(infrared.value.ir1, infrared.value.ir2); \
+ infrared.pitch = infrared.longitudinal_correction * IR_PitchOfIrs(infrared.value.ir1, infrared.value.ir2); \
+ infrared.top = infrared.vertical_correction * IR_TopOfIr(infrared.value.ir3); \
+ estimator_update_state_infrared(); \
+}
+
+// initialization of the infrared structure
+void infrared_struct_init(void);
+
+// implementation dependent functions
void infrared_init(void);
void infrared_update(void);
+void infrared_event(void);
#endif /* SUBSYSTEMS_SENSORS_INFRARED_H */
diff --git a/sw/airborne/subsystems/sensors/infrared_adc.c b/sw/airborne/subsystems/sensors/infrared_adc.c
new file mode 100644
index 0000000000..86533aeb67
--- /dev/null
+++ b/sw/airborne/subsystems/sensors/infrared_adc.c
@@ -0,0 +1,104 @@
+/*
+ * $Id$
+ *
+ * Copyright (C) 2003-2010 The Paparazzi Team
+ *
+ * This file is part of paparazzi.
+ *
+ * paparazzi 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; either version 2, or (at your option)
+ * any later version.
+ *
+ * paparazzi is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with paparazzi; see the file COPYING. If not, write to
+ * the Free Software Foundation, 59 Temple Place - Suite 330,
+ * Boston, MA 02111-1307, USA.
+ *
+ */
+
+/** \file subsystems/sensors/infrared_adc.c
+ * \brief Regroup all functions link to ADC \a ir
+ */
+
+
+
+
+#include
+
+#include "subsystems/sensors/infrared_adc.h"
+#include "mcu_periph/adc.h"
+
+#include BOARD_CONFIG
+#include "generated/airframe.h"
+
+// TODO Specific sim implementation
+#if ! (defined SITL || defined HITL)
+static struct adc_buf buf_ir1;
+static struct adc_buf buf_ir2;
+
+#ifdef ADC_CHANNEL_IR_TOP
+static struct adc_buf buf_ir3;
+#endif
+#endif
+
+#ifndef ADC_CHANNEL_IR_NB_SAMPLES
+#define ADC_CHANNEL_IR_NB_SAMPLES DEFAULT_AV_NB_SAMPLE
+#endif
+
+struct Infrared_raw ir_adc;
+
+// Standard infrared implementation
+void infrared_init(void) {
+ infrared_adc_init();
+}
+
+void infrared_update(void) {
+ infrared_adc_update();
+}
+
+/* No event with adc ir */
+void infrared_event(void) {}
+
+/** \brief Initialisation of \a ir */
+/** Initialize \a adc_buf_channel
+ */
+void infrared_adc_init(void) {
+#if ! (defined SITL || defined HITL)
+ adc_buf_channel(ADC_CHANNEL_IR1, &buf_ir1, ADC_CHANNEL_IR_NB_SAMPLES);
+ adc_buf_channel(ADC_CHANNEL_IR2, &buf_ir2, ADC_CHANNEL_IR_NB_SAMPLES);
+#ifdef ADC_CHANNEL_IR_TOP
+ adc_buf_channel(ADC_CHANNEL_IR_TOP, &buf_ir3, ADC_CHANNEL_IR_NB_SAMPLES);
+#endif
+#endif
+
+ infrared_struct_init();
+
+#if ! (defined ADC_CHANNEL_IR_TOP || defined HITL || defined SITL)
+ ir_adc.ir3 = IR_DEFAULT_CONTRAST;
+#endif
+}
+
+
+/** \brief Update \a ir_roll and ir_pitch from ADCs or from simulator
+ * message in HITL and SITL modes
+ */
+void infrared_adc_update(void) {
+#if ! (defined SITL || defined HITL)
+ ir_adc.ir1 = (int32_t)(buf_ir1.sum/buf_ir1.av_nb_sample) - IR_ADC_IR1_NEUTRAL;
+ ir_adc.ir2 = (int32_t)(buf_ir2.sum/buf_ir2.av_nb_sample) - IR_ADC_IR2_NEUTRAL;
+#ifdef ADC_CHANNEL_IR_TOP
+ ir_adc.ir3 = (int32_t)(buf_ir3.sum/buf_ir3.av_nb_sample) - IR_ADC_TOP_NEUTRAL;
+#endif // IR_TOP
+#ifndef IR_ADC_READ_ONLY
+ UpdateIRValue(ir_adc);
+#endif
+#endif /* !SITL && !HITL */
+/** #else ir_roll set by simulator in sim_ir.c */
+}
+
diff --git a/sw/airborne/subsystems/sensors/infrared_adc.h b/sw/airborne/subsystems/sensors/infrared_adc.h
new file mode 100644
index 0000000000..74dd729daa
--- /dev/null
+++ b/sw/airborne/subsystems/sensors/infrared_adc.h
@@ -0,0 +1,39 @@
+/*
+ * Copyright (C) 2010 ENAC
+ *
+ * This file is part of paparazzi.
+ *
+ * paparazzi 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; either version 2, or (at your option)
+ * any later version.
+ *
+ * paparazzi is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with paparazzi; see the file COPYING. If not, write to
+ * the Free Software Foundation, 59 Temple Place - Suite 330,
+ * Boston, MA 02111-1307, USA.
+ *
+ */
+
+/*
+ * Driver for adc infrared sensor
+ */
+
+#ifndef SUBSYSTEMS_SENSORS_INFRARED_ADC_H
+#define SUBSYSTEMS_SENSORS_INFRARED_ADC_H
+
+#include "std.h"
+#include "subsystems/sensors/infrared.h"
+
+extern struct Infrared_raw ir_adc;
+
+extern void infrared_adc_init(void);
+extern void infrared_adc_update(void);
+
+#endif // SUBSYSTEMS_SENSORS_INFRARED_ADC_H
+
diff --git a/sw/airborne/modules/sensors/infrared_i2c.c b/sw/airborne/subsystems/sensors/infrared_i2c.c
similarity index 55%
rename from sw/airborne/modules/sensors/infrared_i2c.c
rename to sw/airborne/subsystems/sensors/infrared_i2c.c
index a6c4520766..40df90406d 100644
--- a/sw/airborne/modules/sensors/infrared_i2c.c
+++ b/sw/airborne/subsystems/sensors/infrared_i2c.c
@@ -34,102 +34,20 @@
#define IR_START_CONV (1 << 7)
-#ifndef IR_IR1_NEUTRAL
-#define IR_IR1_NEUTRAL 0
+#ifndef IR_I2C_IR1_NEUTRAL
+#define IR_I2C_IR1_NEUTRAL 0
#endif
-#ifndef IR_IR2_NEUTRAL
-#define IR_IR2_NEUTRAL 0
+#ifndef IR_I2C_IR2_NEUTRAL
+#define IR_I2C_IR2_NEUTRAL 0
#endif
-#ifndef IR_TOP_NEUTRAL
-#define IR_TOP_NEUTRAL 0
+#ifndef IR_I2C_TOP_NEUTRAL
+#define IR_I2C_TOP_NEUTRAL 0
#endif
-// Standard infrared interface
-int16_t ir_ir1;
-int16_t ir_ir2;
-int16_t ir_roll;
-int16_t ir_pitch;
-int16_t ir_top;
-
-#ifndef IR_IR1_SIGN
-#define IR_IR1_SIGN 1
-#endif // IR_IR1_SIGN
-
-#ifndef IR_IR2_SIGN
-#define IR_IR2_SIGN 1
-#endif // IR_IR2_SIGN
-
-#ifndef IR_TOP_SIGN
-#define IR_TOP_SIGN 1
-#endif // IR_TOP_SIGN
-
-float ir_roll_neutral;
-float ir_pitch_neutral;
-
-float ir_correction_left;
-float ir_correction_right;
-float ir_correction_down;
-float ir_correction_up;
-
-#ifndef IR_CORRECTION_LEFT
-#define IR_CORRECTION_LEFT 1.
-#endif
-
-#ifndef IR_CORRECTION_RIGHT
-#define IR_CORRECTION_RIGHT 1.
-#endif
-
-#ifndef IR_CORRECTION_UP
-#define IR_CORRECTION_UP 1.
-#endif
-
-#ifndef IR_CORRECTION_DOWN
-#define IR_CORRECTION_DOWN 1.
-#endif
-
-float ir_lateral_correction;
-float ir_longitudinal_correction;
-float ir_vertical_correction;
-
-#ifndef IR_LATERAL_CORRECTION
-#define IR_LATERAL_CORRECTION 1.
-#endif
-
-#ifndef IR_LONGITUDINAL_CORRECTION
-#define IR_LONGITUDINAL_CORRECTION 1.
-#endif
-
-#ifndef IR_VERTICAL_CORRECTION
-#define IR_VERTICAL_CORRECTION 1.
-#endif
-
-/* Sensor installation */
-#if defined IR_HORIZ_SENSOR_ALIGNED
-/* IR1 on the lateral axis, IR2 on the longitudal axis */
-#define IR_RollOfIrs(_ir1, _ir2) (_ir1)
-#define IR_PitchOfIrs(_ir1, _ir2) (_ir2)
-#elif IR_HORIZ_SENSOR_TILTED
-/* IR1 rear-left -- front-right, IR2 rear-right -- front-left
- IR1_SIGN and IR2_SIGN give positive values when it's warm on the right side
-*/
-#define IR_RollOfIrs(_ir1, _ir2) (_ir1 + _ir2)
-#define IR_PitchOfIrs(_ir1, _ir2) (-(_ir1) + _ir2)
-#endif
-/* Vertical sensor, TOP_SIGN gives positice values when it's warm on the bottom */
-#define IR_TopOfIr(_ir) ((IR_TOP_SIGN)*(_ir))
-
-
-
-// Global variables
-int16_t ir_i2c_ir1;
-int16_t ir_i2c_ir2;
-int16_t ir_i2c_top;
-
-float ir_i2c_phi, ir_i2c_theta;
-
-bool_t ir_i2c_data_available;
+struct Infrared_raw ir_i2c;
+bool_t ir_i2c_data_hor_available, ir_i2c_data_ver_available;
uint8_t ir_i2c_conf_word;
bool_t ir_i2c_conf_hor_done, ir_i2c_conf_ver_done;
@@ -149,13 +67,24 @@ static uint8_t ir_i2c_hor_status;
// I2C structure
struct i2c_transaction irh_trans, irv_trans;
-//FIXME standard infrared should not ba ADC-dependent
-void ir_init(void) {}
+// Standard infrared implementation
+void infrared_init(void) {
+ infrared_i2c_init();
+}
+
+void infrared_update(void) {
+ infrared_i2c_update();
+}
+
+void infrared_event(void) {
+ infrared_i2cEvent();
+}
/** Initialisation
*/
void infrared_i2c_init( void ) {
- ir_i2c_data_available = FALSE;
+ ir_i2c_data_hor_available = FALSE;
+ ir_i2c_data_ver_available = FALSE;
ir_i2c_hor_status = IR_I2C_IDLE;
ir_i2c_conf_word = IR_I2C_DEFAULT_CONF;
ir_i2c_conf_hor_done = FALSE;
@@ -163,21 +92,9 @@ void infrared_i2c_init( void ) {
irh_trans.status = I2CTransDone;
irv_trans.status = I2CTransDone;
- // Initialisation of standard infrared interface
- ir_roll_neutral = RadOfDeg(IR_ROLL_NEUTRAL_DEFAULT);
- ir_pitch_neutral = RadOfDeg(IR_PITCH_NEUTRAL_DEFAULT);
-
- ir_correction_left = IR_CORRECTION_LEFT;
- ir_correction_right = IR_CORRECTION_RIGHT;
- ir_correction_up = IR_CORRECTION_UP;
- ir_correction_down = IR_CORRECTION_DOWN;
-
- ir_lateral_correction = IR_LATERAL_CORRECTION;
- ir_longitudinal_correction = IR_LONGITUDINAL_CORRECTION;
- ir_vertical_correction = IR_VERTICAL_CORRECTION;
+ infrared_struct_init();
}
-#include "led.h"
void infrared_i2c_update( void ) {
#if ! (defined SITL || defined HITL)
// IR horizontal
@@ -189,7 +106,7 @@ void infrared_i2c_update( void ) {
} else {
// Read next values
I2CReceive(i2c0, irh_trans, IR_HOR_I2C_ADDR, 3);
- ir_i2c_data_available = FALSE;
+ ir_i2c_data_hor_available = FALSE;
ir_i2c_hor_status = IR_I2C_READ_IR1;
}
}
@@ -201,7 +118,7 @@ void infrared_i2c_update( void ) {
} else {
// Read next values
I2CReceive(i2c0, irv_trans, IR_VER_I2C_ADDR, 2);
- ir_i2c_data_available = FALSE;
+ ir_i2c_data_ver_available = FALSE;
}
}
#else /* SITL || HITL */
@@ -225,7 +142,8 @@ void infrared_i2c_hor_event( void ) {
}
// Read IR1 value
int16_t ir1 = (irh_trans.buf[0]<<8) | irh_trans.buf[1];
- ir_i2c_ir1 = FilterIR(ir_i2c_ir1, ir1);
+ ir1 = ir1 - (IR_I2C_IR1_NEUTRAL << ir_i2c_conf_word);
+ ir_i2c.ir1 = FilterIR(ir_i2c.ir1, ir1);
// Select IR2 channel
irh_trans.buf[0] = IR_HOR_I2C_SELECT_IR2 | IR_HOR_OC_BIT | ir_i2c_conf_word | IR_START_CONV;
I2CTransmit(i2c0, irh_trans, IR_HOR_I2C_ADDR, 1);
@@ -243,11 +161,17 @@ void infrared_i2c_hor_event( void ) {
break;
}
int16_t ir2 = (irh_trans.buf[0]<<8) | irh_trans.buf[1];
- ir_i2c_ir2 = FilterIR(ir_i2c_ir2, ir2);
+ ir2 = ir2 - (IR_I2C_IR2_NEUTRAL << ir_i2c_conf_word);
+ ir_i2c.ir2 = FilterIR(ir_i2c.ir2, ir2);
// Update estimator
- ir_i2c_data_available = TRUE;
- ir_update();
- estimator_update_state_infrared();
+ ir_i2c_data_hor_available = TRUE;
+#ifndef IR_I2C_READ_ONLY
+ if (ir_i2c_data_ver_available) {
+ ir_i2c_data_hor_available = FALSE;
+ ir_i2c_data_ver_available = FALSE;
+ UpdateIRValue(ir_i2c);
+ }
+#endif
// Select IR1 channel
irh_trans.buf[0] = IR_HOR_I2C_SELECT_IR1 | IR_HOR_OC_BIT | ir_i2c_conf_word | IR_START_CONV;
I2CTransmit(i2c0, irh_trans, IR_HOR_I2C_ADDR, 1);
@@ -271,11 +195,17 @@ void infrared_i2c_ver_event( void ) {
irv_trans.status = I2CTransDone;
// Read TOP value
if (irv_trans.type == I2CTransRx) {
- int16_t top = (irv_trans.buf[0]<<8) | irv_trans.buf[1];
- ir_i2c_top = FilterIR(ir_i2c_top, top);
- ir_i2c_data_available = TRUE;
- ir_update();
- estimator_update_state_infrared();
+ int16_t ir3 = (irv_trans.buf[0]<<8) | irv_trans.buf[1];
+ ir3 = ir3 - (IR_I2C_TOP_NEUTRAL << ir_i2c_conf_word);
+ ir_i2c.ir3 = FilterIR(ir_i2c.ir3, ir3);
+ ir_i2c_data_ver_available = TRUE;
+#ifndef IR_I2C_READ_ONLY
+ if (ir_i2c_data_hor_available) {
+ ir_i2c_data_hor_available = FALSE;
+ ir_i2c_data_ver_available = FALSE;
+ UpdateIRValue(ir_i2c);
+ }
+#endif
}
if (irv_trans.type == I2CTransTx) {
ir_i2c_conf_ver_done = TRUE;
@@ -283,34 +213,3 @@ void infrared_i2c_ver_event( void ) {
#endif /* !SITL && !HITL */
}
-#include "stdio.h"
-
-void ir_update(void) {
- ir_ir1 = (IR_IR1_SIGN)*(ir_i2c_ir1 - (IR_IR1_NEUTRAL << ir_i2c_conf_word));
- ir_ir2 = (IR_IR2_SIGN)*(ir_i2c_ir2 - (IR_IR2_NEUTRAL << ir_i2c_conf_word));
- ir_roll = ir_lateral_correction * IR_RollOfIrs(ir_ir1, ir_ir2);
- ir_pitch = ir_longitudinal_correction * IR_PitchOfIrs(ir_ir1, ir_ir2);
- ir_top = ir_vertical_correction * IR_TopOfIr(ir_i2c_top - (IR_TOP_NEUTRAL << ir_i2c_conf_word));
-}
-
-void estimator_update_state_infrared(void) {
-
- estimator_phi = atan2(ir_roll, ir_top) - ir_roll_neutral;
- estimator_theta = atan2(ir_pitch, ir_top) - ir_pitch_neutral;
-
- if (estimator_theta < -M_PI_2)
- estimator_theta += M_PI;
- else if (estimator_theta > M_PI_2)
- estimator_theta -= M_PI;
-
- if (estimator_phi >= 0)
- estimator_phi *= ir_correction_right;
- else
- estimator_phi *= ir_correction_left;
-
- if (estimator_theta >= 0)
- estimator_theta *= ir_correction_up;
- else
- estimator_theta *= ir_correction_down;
-
-}
diff --git a/sw/airborne/subsystems/sensors/infrared_i2c.h b/sw/airborne/subsystems/sensors/infrared_i2c.h
new file mode 100644
index 0000000000..855e186424
--- /dev/null
+++ b/sw/airborne/subsystems/sensors/infrared_i2c.h
@@ -0,0 +1,60 @@
+/*
+ * Copyright (C) 2010 ENAC
+ *
+ * This file is part of paparazzi.
+ *
+ * paparazzi 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; either version 2, or (at your option)
+ * any later version.
+ *
+ * paparazzi is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with paparazzi; see the file COPYING. If not, write to
+ * the Free Software Foundation, 59 Temple Place - Suite 330,
+ * Boston, MA 02111-1307, USA.
+ *
+ */
+
+/*
+ * Driver for i2c infrared sensor
+ */
+
+#ifndef SUBSYSTEMS_SENSORS_INFRARED_I2C_H
+#define SUBSYSTEMS_SENSORS_INFRARED_I2C_H
+
+#include "std.h"
+#include "generated/airframe.h"
+#include "subsystems/sensors/infrared.h"
+#include "mcu_periph/i2c.h"
+
+extern struct Infrared_raw ir_i2c;
+extern bool_t ir_i2c_data_hor_available, ir_i2c_data_ver_available;
+extern uint8_t ir_i2c_conf_word;
+extern bool_t ir_i2c_conf_hor_done, ir_i2c_conf_ver_done;
+
+extern struct i2c_transaction irh_trans, irv_trans;
+
+extern void infrared_i2c_init( void );
+extern void infrared_i2c_update( void );
+extern void infrared_i2c_hor_event( void );
+extern void infrared_i2c_ver_event( void );
+
+#define infrared_i2cEvent() { \
+ if (irh_trans.status == I2CTransSuccess) infrared_i2c_hor_event(); \
+ if (irv_trans.status == I2CTransSuccess) infrared_i2c_ver_event(); \
+}
+
+#define infrared_i2cDownlink() DOWNLINK_SEND_DEBUG_IR_I2C(DefaultChannel, &ir_i2c.ir1, &ir_i2c.ir2, &ir_i2c.ir3)
+
+#define infrared_i2c_SetConfWord(_v) { \
+ ir_i2c_conf_hor_done = FALSE; \
+ ir_i2c_conf_ver_done = FALSE; \
+ ir_i2c_conf_word = _v; \
+}
+
+#endif // SUBSYSTEMS_SENSORS_INFRARED_I2C_H
diff --git a/sw/airborne/test/nova_test_imu.c b/sw/airborne/test/nova_test_imu.c
index e3a764b1e2..35f6a89d5e 100644
--- a/sw/airborne/test/nova_test_imu.c
+++ b/sw/airborne/test/nova_test_imu.c
@@ -1,10 +1,10 @@
#include "std.h"
-#include "init_hw.h"
+#include "mcu.h"
#include "interrupt_hw.h"
#include "sys_time.h"
#include "led.h"
-#include "uart.h"
+#include "mcu_periph/uart.h"
#include "messages.h"
#include "downlink.h"
@@ -25,7 +25,7 @@ int main( void ) {
}
static inline void main_init( void ) {
- hw_init();
+ mcu_init();
sys_time_init();
@@ -35,7 +35,7 @@ static inline void main_init( void ) {
ADS8344_init();
- int_enable();
+ mcu_int_enable();
ADS8344_start();
}
diff --git a/sw/airborne/test/test_telemetry.c b/sw/airborne/test/test_telemetry.c
index d85739657b..bd2760fc7f 100644
--- a/sw/airborne/test/test_telemetry.c
+++ b/sw/airborne/test/test_telemetry.c
@@ -44,7 +44,7 @@ int main(void) {
static inline void main_init( void ) {
mcu_init();
sys_time_init();
- int_enable();
+ mcu_int_enable();
}
static inline void main_periodic( void ) {
diff --git a/sw/tools/Makefile b/sw/tools/Makefile
index 6cdf1dadfd..e0f0b33ccf 100644
--- a/sw/tools/Makefile
+++ b/sw/tools/Makefile
@@ -24,13 +24,13 @@ Q=@
OCAML=ocaml
OCAMLC=ocamlc
-INCLUDES=-I ../lib/ocaml $(shell ocamlfind query -r -i-format xml-light)
+INCLUDES=-I ../lib/ocaml $(shell ocamlfind query -r -i-format xml-light) -I .
OCAMLNETINCLUDES=$(shell ocamlfind query -r -i-format netstring)
OCAMLNETCMA=$(shell ocamlfind query -r -a-format -predicates byte netstring)
OCAMLLEX=ocamllex
OCAMLYACC=ocamlyacc
-all: gen_aircraft.out gen_airframe.out gen_messages2.out gen_messages.out gen_ubx.out gen_flight_plan.out gen_radio.out gen_periodic.out gen_settings.out gen_tuning.out gen_xsens.out gen_modules.out find_free_msg_id.out
+all: gen_common.cmo gen_aircraft.out gen_airframe.out gen_messages2.out gen_messages.out gen_ubx.out gen_flight_plan.out gen_radio.out gen_periodic.out gen_settings.out gen_tuning.out gen_xsens.out gen_modules.out find_free_msg_id.out
FP_CMO = fp_proc.cmo gen_flight_plan.cmo
ABS_FP = $(FP_CMO:%=$$PAPARAZZI_SRC/sw/tools/%)
@@ -42,13 +42,13 @@ gen_flight_plan.out : $(FP_CMO) ../lib/ocaml/lib-pprz.cma
fp_proc.cmo : fp_proc.cmi
gen_flight_plan.cmo : fp_proc.cmi
+gen_common.cmo : gen_common.cmi
-
-%.out : %.ml Makefile
+%.out : %.ml gen_common.ml Makefile
@echo OC $<
- $(Q)$(OCAMLC) $(INCLUDES) -o $@ unix.cma str.cma ivy-ocaml.cma xml-light.cma lib-pprz.cma $<
+ $(Q)$(OCAMLC) $(INCLUDES) -o $@ unix.cma str.cma ivy-ocaml.cma xml-light.cma lib-pprz.cma gen_common.cmo $<
@cat ../../pprz_src_test.sh > $@
- @echo '$(OCAML) $(shell ocamlfind query -r -i-format xml-light) $(OCAMLNETINCLUDES) -I $$PAPARAZZI_SRC/sw/lib/ocaml unix.cma str.cma ivy-ocaml.cma xml-light.cma $(OCAMLNETCMA) lib-pprz.cma $$PAPARAZZI_BIN/$< $$*' >> $@
+ @echo '$(OCAML) -I $$PAPARAZZI_SRC/sw/tools $(shell ocamlfind query -r -i-format xml-light) $(OCAMLNETINCLUDES) -I $$PAPARAZZI_SRC/sw/lib/ocaml unix.cma str.cma ivy-ocaml.cma xml-light.cma $(OCAMLNETCMA) lib-pprz.cma gen_common.cmo $$PAPARAZZI_BIN/$< $$*' >> $@
@chmod a+x $@
%.cmo : %.ml ../lib/ocaml/lib-pprz.cma
diff --git a/sw/tools/gen_aircraft.ml b/sw/tools/gen_aircraft.ml
index 2f127e60d3..6d290cf5fc 100644
--- a/sw/tools/gen_aircraft.ml
+++ b/sw/tools/gen_aircraft.ml
@@ -27,11 +27,12 @@
open Printf
module U = Unix
+open Gen_common
+
let (//) = Filename.concat
let paparazzi_conf = Env.paparazzi_home // "conf"
let conf_xml = paparazzi_conf // "conf.xml"
-let modules_dir = paparazzi_conf // "modules"
let mkdir = fun d ->
assert (Sys.command (sprintf "mkdir -p %s" d) = 0)
@@ -59,65 +60,15 @@ let check_unique_id_and_name = fun conf ->
-let pipe_regexp = Str.regexp "|"
-let targets_of_field = fun field ->
- try
- Str.split pipe_regexp (ExtXml.attrib_or_default field "target" "ap|sim")
- with
- _ -> []
-
-(** singletonize a sorted list *)
-let rec singletonize = fun l ->
- match l with
- [] | [_] -> l
- | x :: ((y :: t) as yt) -> if x = y then singletonize yt else x :: singletonize yt
-
-(** union of two lists *)
-let union = fun l1 l2 ->
- let l = l1 @ l2 in
- let sl = List.sort compare l in
- singletonize sl
-
-let union_of_lists = fun l ->
- let sl = List.sort compare (List.flatten l) in
- singletonize sl
-
(** [get_modules dir xml]
* [dir] is the conf directory for modules, [xml] is the parsed airframe.xml *)
let get_modules = fun dir xml ->
- (* extract all "modules" sections *)
- let modules = List.map (fun x ->
- match String.lowercase (Xml.tag x) with
- "modules" -> Xml.children x
- | _ -> []
- ) (Xml.children xml) in
- (* flatten the list (result is a list of "load" xml nodes) *)
- let modules = List.flatten modules in
+ let modules = Gen_common.get_modules_of_airframe xml in
(* build a list (file name, (xml, xml list of flags)) *)
- let extract = List.map (fun m ->
- match String.lowercase (Xml.tag m) with
- "load" -> let file = dir // ExtXml.attrib m "name" in
- (file, (ExtXml.parse_file file, Xml.children m))
- | tag -> failwith (sprintf "Warning: tag load is undefined; found '%s'" tag)
- ) modules in
+ let extract = List.map Gen_common.get_full_module_conf modules in
(* return a list of name and a list of pairs (xml, xml list) *)
List.split extract
-(** [get_targets_of_module xml] Returns the list of targets of a module *)
-let get_targets_of_module = fun m ->
- let targets = List.map (fun x ->
- match String.lowercase (Xml.tag x) with
- "makefile" -> targets_of_field x
- | _ -> []
- ) (Xml.children m) in
- (* return a singletonized list *)
- singletonize (List.sort compare (List.flatten targets))
-
-(** [get_modules_dir xml] Returns the list of modules directories *)
-let get_modules_dir = fun modules ->
- let dir = List.map (fun (m, _) -> try Xml.attrib m "dir" with _ -> ExtXml.attrib m "name") modules in
- singletonize (List.sort compare dir)
-
(**
Search and dump the module section :
xml : the parsed airframe.xml
@@ -125,14 +76,14 @@ let get_modules_dir = fun modules ->
**)
let dump_module_section = fun xml f ->
(* get modules *)
- let (files, modules) = get_modules modules_dir xml in
+ let (files, modules) = get_modules Gen_common.modules_dir xml in
(* print modules directories and includes for all targets *)
fprintf f "\n####################################################\n";
fprintf f "# modules makefile section\n";
fprintf f "####################################################\n";
fprintf f "\n# include modules directory for all targets\n";
(* get dir and target list *)
- let dir_list = get_modules_dir modules in
+ let dir_list = Gen_common.get_modules_dir modules in
(**
let target_list = union_of_lists (List.map (fun (m,_) -> get_targets_of_module m) modules) in
List.iter (fun target -> fprintf f "%s.CFLAGS += -I modules -I arch/$(ARCH)/modules\n" target) target_list;
@@ -146,7 +97,7 @@ let dump_module_section = fun xml f ->
let dir = try Xml.attrib m "dir" with _ -> name in
let dir_name = (String.uppercase dir)^"_DIR" in
(* get the list of all the targets for this module *)
- let module_target_list = get_targets_of_module m in
+ let module_target_list = Gen_common.get_targets_of_module m in
(* print global flags as compilation defines and flags *)
fprintf f "\n# makefile for module %s in modules/%s\n" name dir;
List.iter (fun flag ->
@@ -166,7 +117,7 @@ let dump_module_section = fun xml f ->
(* Look for makefile section *)
List.iter (fun l ->
if ExtXml.tag_is l "makefile" then begin
- let targets = targets_of_field l in
+ let targets = Gen_common.targets_of_field l in
(* Look for defines, flags, files, ... *)
List.iter (fun field ->
match String.lowercase (Xml.tag field) with
@@ -186,10 +137,12 @@ let dump_module_section = fun xml f ->
) targets
| "file" ->
let name = Xml.attrib field "name" in
- List.iter (fun target -> fprintf f "%s.srcs += $(%s)/%s\n" target dir_name name) targets
+ let dir_name = ExtXml.attrib_or_default field "dir" ("$("^dir_name^")") in
+ List.iter (fun target -> fprintf f "%s.srcs += %s/%s\n" target dir_name name) targets
| "file_arch" ->
let name = Xml.attrib field "name" in
- List.iter (fun target -> fprintf f "%s.srcs += arch/$(ARCH)/$(%s)/%s\n" target dir_name name) targets
+ let dir_name = ExtXml.attrib_or_default field "dir" ("$("^dir_name^")") in
+ List.iter (fun target -> fprintf f "%s.srcs += arch/$(ARCH)/%s/%s\n" target dir_name name) targets
| "raw" ->
begin match Xml.children field with
[Xml.PCData s] -> fprintf f "%s\n" s
diff --git a/sw/tools/gen_airframe.ml b/sw/tools/gen_airframe.ml
index f438224ed0..0f2d0ddad9 100644
--- a/sw/tools/gen_airframe.ml
+++ b/sw/tools/gen_airframe.ml
@@ -29,7 +29,6 @@ let max_pprz = 9600. (* !!!! MAX_PPRZ From paparazzi.h !!!! *)
open Printf
open Xml2h
-
type channel = { min : float; max : float; neutral : float }
type control = { failsafe_value : int; foo : int }
@@ -217,26 +216,6 @@ let parse_ap_only_commands = fun ap_only ->
printf " commands[COMMAND_%s] = ap_commands[COMMAND_%s];\\\n" com com
| _ -> xml_error "copy"
-(**
-let parse_subsystem_defines = fun options ->
- match Xml.tag options with
- "param" ->
- printf "// -param: %s\n" (ExtXml.attrib options "name")
- | "define" ->
- printf "#define %s %s\n" (ExtXml.attrib options "name") (ExtXml.attrib options "value")
- | _ -> xml_error "define|param"
-
-
-let parse_subsystems = fun subsystem ->
- match Xml.tag subsystem with
- "param" ->
- printf "// subsystem parameter: %s\n" (ExtXml.attrib subsystem "name")
- | "subsystem" ->
- printf "// -%s:\n" (ExtXml.attrib subsystem "name");
- List.iter parse_subsystem_defines (Xml.children subsystem)
- | _ -> xml_error "subsystem"
-**)
-
let parse_command = fun command no ->
let command_name = "COMMAND_"^ExtXml.attrib command "name" in
define command_name (string_of_int no);
diff --git a/sw/tools/gen_common.ml b/sw/tools/gen_common.ml
new file mode 100644
index 0000000000..a1c30c5fae
--- /dev/null
+++ b/sw/tools/gen_common.ml
@@ -0,0 +1,150 @@
+(*
+ * $Id$
+ *
+ * generic tools for modules
+ *
+ * Copyright (C) 2010 Gautier Hattenberger
+ *
+ * This file is part of paparazzi.
+ *
+ * paparazzi 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; either version 2, or (at your option)
+ * any later version.
+ *
+ * paparazzi is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with paparazzi; see the file COPYING. If not, write to
+ * the Free Software Foundation, 59 Temple Place - Suite 330,
+ * Boston, MA 02111-1307, USA.
+ *
+ *)
+
+open Printf
+
+let (//) = Filename.concat
+
+let paparazzi_conf = Env.paparazzi_home // "conf"
+let modules_dir = paparazzi_conf // "modules"
+
+(** remove all duplicated elements of a list *)
+let singletonize = fun l ->
+ let rec loop = fun l ->
+ match l with
+ [] | [_] -> l
+ | x::((x'::_) as xs) ->
+ if x = x' then loop xs else x::loop xs in
+ loop (List.sort compare l)
+
+(** union of two lists *)
+let union = fun l1 l2 ->
+ let l = l1 @ l2 in
+ let sl = List.sort compare l in
+ singletonize sl
+
+(** union of a list of list *)
+let union_of_lists = fun l ->
+ let sl = List.sort compare (List.flatten l) in
+ singletonize sl
+
+(** [get_modules_of_airframe xml]
+ * Returns a list of modules ("load" node) from airframe file *)
+let get_modules_of_airframe = fun xml ->
+ (* extract all "modules" sections *)
+ let modules = List.map (fun x ->
+ match String.lowercase (Xml.tag x) with
+ "modules" -> Xml.children x
+ | _ -> []
+ ) (Xml.children xml) in
+ (* flatten the list (result is a list of "load" xml nodes) *)
+ List.flatten modules
+
+(** [get_full_module_conf module] Parse module configuration file
+ * Returns module file name and a pair (xml, xml list): parsed file, children *)
+let get_full_module_conf = fun m ->
+ match Xml.tag m with
+ "load" -> let file = modules_dir // ExtXml.attrib m "name" in
+ (file, (ExtXml.parse_file file, Xml.children m))
+ | _ -> Xml2h.xml_error "load"
+
+(** [get_module_conf module] Parse module configuration file
+ * Returns parsed xml file *)
+let get_module_conf = fun m ->
+ let (_ , (conf, _)) = get_full_module_conf m in
+ conf
+
+(** [get_targets_of_module xml] Returns the list of targets of a module *)
+let get_targets_of_module = fun m ->
+ let pipe_regexp = Str.regexp "|" in
+ let targets_of_field = fun field -> try
+ Str.split pipe_regexp (ExtXml.attrib_or_default field "target" "ap|sim") with _ -> [] in
+ let targets = List.map (fun x ->
+ match String.lowercase (Xml.tag x) with
+ "makefile" -> targets_of_field x
+ | _ -> []
+ ) (Xml.children m) in
+ (* return a singletonized list *)
+ singletonize (List.sort compare (List.flatten targets))
+
+(* gm *)
+(** [unload_unused_modules modules ?print_error]
+ * Returns a list of [modules] where unused modules are removed
+ * If [print_error] is true, a warning is printed *)
+let unload_unused_modules = fun modules print_error ->
+ let target = try Sys.getenv "TARGET" with _ -> "" in
+ let is_target_in_module = fun m ->
+ let target_is_in_module = List.exists (fun x -> String.compare target x = 0) (get_targets_of_module m) in
+ if print_error && not target_is_in_module then
+ Printf.fprintf stderr "Module %s unloaded, target %s not supported\n" (Xml.attrib m "name") target;
+ target_is_in_module
+ in
+ if String.length target = 0 then
+ modules
+ else
+ List.find_all is_target_in_module modules
+
+
+(* gp *)
+(** [get_modules_name xml]
+ * Returns a list of loaded modules' name *)
+let get_modules_name = fun xml ->
+ (* extract all "modules" sections *)
+ let modules = get_modules_of_airframe xml in
+ (* parse modules *)
+ let modules = List.map (fun m -> ExtXml.parse_file (modules_dir // ExtXml.attrib m "name")) modules in
+ (* filter the list if target is not supported *)
+ let modules = unload_unused_modules modules false in
+ (* return a list of modules name *)
+ List.map (fun m -> ExtXml.attrib m "name") modules
+
+(** [targets_of_field]
+ * Returns the targets of a makefile node in modules
+ * Default "ap|sim" *)
+let pipe_regexp = Str.regexp "|"
+let targets_of_field = fun field ->
+ try
+ Str.split pipe_regexp (ExtXml.attrib_or_default field "target" "ap|sim")
+ with
+ _ -> []
+
+(** [get_targets_of_module xml]
+ * Returns the list of targets of a module *)
+let get_targets_of_module = fun m ->
+ let targets = List.map (fun x ->
+ match String.lowercase (Xml.tag x) with
+ "makefile" -> targets_of_field x
+ | _ -> []
+ ) (Xml.children m) in
+ (* return a singletonized list *)
+ singletonize (List.sort compare (List.flatten targets))
+
+(** [get_modules_dir xml]
+ * Returns the list of modules directories *)
+let get_modules_dir = fun modules ->
+ let dir = List.map (fun (m, _) -> try Xml.attrib m "dir" with _ -> ExtXml.attrib m "name") modules in
+ singletonize (List.sort compare dir)
+
diff --git a/sw/tools/gen_common.mli b/sw/tools/gen_common.mli
new file mode 100644
index 0000000000..9ec2fc7774
--- /dev/null
+++ b/sw/tools/gen_common.mli
@@ -0,0 +1,64 @@
+(*
+ * $Id$
+ *
+ * generic tools for modules
+ *
+ * Copyright (C) 2010 Gautier Hattenberger
+ *
+ * This file is part of paparazzi.
+ *
+ * paparazzi 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; either version 2, or (at your option)
+ * any later version.
+ *
+ * paparazzi is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with paparazzi; see the file COPYING. If not, write to
+ * the Free Software Foundation, 59 Temple Place - Suite 330,
+ * Boston, MA 02111-1307, USA.
+ *
+ *)
+
+val modules_dir : string
+
+(** remove all duplicated elements of a list *)
+val singletonize : 'a list -> 'a list
+
+(** [get_modules_of_airframe xml]
+ * Returns a list of modules ("load" node) from airframe file *)
+val get_modules_of_airframe : Xml.xml -> Xml.xml list
+
+(** [get_full_module_conf module] Parse module configuration file
+ * Returns module file name and a pair (xml, xml list): parsed file, children *)
+val get_full_module_conf : Xml.xml -> (string * (Xml.xml * Xml.xml list))
+
+(** [get_module_conf module] Parse module configuration file
+ * Returns parsed xml file *)
+val get_module_conf : Xml.xml -> Xml.xml
+
+(** [get_targets_of_module xml] Returns the list of targets of a module *)
+val get_targets_of_module : Xml.xml -> string list
+
+(** [unload_unused_modules modules ?print_error]
+ * Returns a list of [modules] where unused modules are removed
+ * If [print_error] is true, a warning is printed *)
+val unload_unused_modules : Xml.xml list -> bool -> Xml.xml list
+
+(** [get_modules_name xml]
+ * Returns a list of loaded modules' name *)
+val get_modules_name : Xml.xml -> string list
+
+(** [targets_of_field]
+ * Returns the targets of a makefile node in modules
+ * Default "ap|sim" *)
+val targets_of_field : Xml.xml -> string list
+
+(** [get_modules_dir xml]
+ * Returns the list of modules directories *)
+val get_modules_dir : (Xml.xml * 'a) list -> string list
+
diff --git a/sw/tools/gen_modules.ml b/sw/tools/gen_modules.ml
index 8c203f018c..20e078db55 100644
--- a/sw/tools/gen_modules.ml
+++ b/sw/tools/gen_modules.ml
@@ -26,6 +26,7 @@
open Printf
open Xml2h
+module GC = Gen_common
(** Default main frequency = 60Hz *)
let freq = ref 60
@@ -97,14 +98,6 @@ let print_init_functions = fun modules ->
left ();
lprintf out_h "}\n"
-let remove_dup = fun l ->
- let rec loop = fun l ->
- match l with
- [] | [_] -> l
- | x::((x'::_) as xs) ->
- if x = x' then loop xs else x::loop xs in
- loop (List.sort compare l)
-
let print_periodic_functions = fun modules ->
let min_period = 1. /. float !freq
and max_period = 65536. /. float !freq
@@ -131,7 +124,7 @@ let print_periodic_functions = fun modules ->
((x, module_name), min 65535 (max 1 (int_of_float (float_of_int !freq /. f))))
)
periodic) modules) in
- let modulos = remove_dup (List.map snd functions_modulo) in
+ let modulos = GC.singletonize (List.map snd functions_modulo) in
(** Print modulos *)
List.iter (fun modulo ->
let v = sprintf "i%d" modulo in
@@ -261,15 +254,6 @@ let parse_modules modules =
nl ();
fprintf out_h "#endif // MODULES_DATALINK_C\n"
-let get_modules = fun dir m ->
- match Xml.tag m with
- "load" -> begin
- let name = ExtXml.attrib m "name" in
- let xml = Xml.parse_file (dir^name) in
- xml
- end
- | _ -> xml_error "load"
-
let test_section_modules = fun xml ->
List.fold_right (fun x r -> ExtXml.tag_is x "modules" || r) (Xml.children xml) false
@@ -324,44 +308,13 @@ let write_settings = fun xml_file out_set modules ->
fprintf out_set " \n";
fprintf out_set "\n"
-let get_targets_of_module = fun m ->
- let pipe_regexp = Str.regexp "|" in
- let targets_of_field = fun field -> try
- Str.split pipe_regexp (ExtXml.attrib_or_default field "target" "ap|sim") with _ -> [] in
- let rec singletonize = fun l ->
- match l with
- [] | [_] -> l
- | x :: ((y :: t) as yt) -> if x = y then singletonize yt else x :: singletonize yt
- in
- let targets = List.map (fun x ->
- match String.lowercase (Xml.tag x) with
- "makefile" -> targets_of_field x
- | _ -> []
- ) (Xml.children m) in
- (* return a singletonized list *)
- singletonize (List.sort compare (List.flatten targets))
-
-let unload_unused_modules = fun modules ->
- let target = try Sys.getenv "TARGET" with _ -> "" in
- let is_target_in_module = fun m ->
- let target_is_in_module = List.exists (fun x -> String.compare target x = 0) (get_targets_of_module m) in
- if not target_is_in_module then
- Printf.fprintf stderr "Module %s unloaded, target %s not supported\n" (Xml.attrib m "name") target;
- target_is_in_module
- in
- if String.length target = 0 then
- modules
- else
- List.find_all is_target_in_module modules
-
let h_name = "MODULES_H"
let () =
- if Array.length Sys.argv <> 4 then
- failwith (Printf.sprintf "Usage: %s conf_modules_dir out_settings_file xml_file" Sys.argv.(0));
- let xml_file = Sys.argv.(3)
- and out_set = open_out Sys.argv.(2)
- and modules_dir = Sys.argv.(1) in
+ if Array.length Sys.argv <> 3 then
+ failwith (Printf.sprintf "Usage: %s out_settings_file xml_file" Sys.argv.(0));
+ let xml_file = Sys.argv.(2)
+ and out_set = open_out Sys.argv.(1) in
try
let xml = start_and_begin xml_file h_name in
fprintf out_h "#define MODULES_IDLE 0\n";
@@ -378,8 +331,8 @@ let () =
let modules = try (ExtXml.child xml "modules") with _ -> Xml.Element("modules",[],[]) in
let main_freq = try (int_of_string (Xml.attrib modules "main_freq")) with _ -> !freq in
freq := main_freq;
- let modules_list = List.map (get_modules modules_dir) (Xml.children modules) in
- let modules_list = unload_unused_modules modules_list in
+ let modules_list = List.map GC.get_module_conf (Xml.children modules) in
+ let modules_list = GC.unload_unused_modules modules_list false in
let modules_name =
(List.map (fun l -> try Xml.attrib l "name" with _ -> "") (Xml.children modules)) @
(List.map (fun m -> try Xml.attrib m "name" with _ -> "") modules_list) in
diff --git a/sw/tools/gen_periodic.ml b/sw/tools/gen_periodic.ml
index dc7275e27c..4729a82173 100644
--- a/sw/tools/gen_periodic.ml
+++ b/sw/tools/gen_periodic.ml
@@ -25,13 +25,10 @@
*)
open Printf
+module GC = Gen_common
let (//) = Filename.concat
-let paparazzi_conf = Env.paparazzi_home // "conf"
-let modules_dir = paparazzi_conf // "modules"
-
-
let margin = ref 0
let step = 2
@@ -42,18 +39,7 @@ let lprintf = fun c f ->
fprintf c "%s" (String.make !margin ' ');
fprintf c f
-(**let freq = ref 60 *)
-
-let remove_dup = fun l ->
- let rec loop = fun l ->
- match l with
- [] | [_] -> l
- | x::((x'::_) as xs) ->
- if x = x' then loop xs else x::loop xs in
- loop (List.sort compare l)
-
-
-let output_modes = fun avr_h process_name channel_name modes freq modules ->
+let output_modes = fun avr_h process_name channel_name modes freq modules ->
let min_period = 1./.float freq in
let max_period = 65536. /. float freq in
(** For each mode in this process *)
@@ -74,7 +60,7 @@ let output_modes = fun avr_h process_name channel_name modes freq modules ->
fprintf stderr "Warning: period is bound between %.3fs and %.3fs for message %s\n%!" min_period max_period (ExtXml.attrib x "name");
(x, min 65535 (max 1 (int_of_float (p*.float_of_int freq))))
) filtered_msg in
- let modulos = remove_dup (List.map snd messages) in
+ let modulos = GC.singletonize (List.map snd messages) in
List.iter (fun m ->
let v = sprintf "i%d" m in
let _type = if m >= 256 then "uint16_t" else "uint8_t" in
@@ -107,52 +93,6 @@ let output_modes = fun avr_h process_name channel_name modes freq modules ->
lprintf avr_h "}\\\n")
modes
-(** [get_targets_of_module xml] Returns the list of targets of a module *)
-let get_targets_of_module = fun m ->
- let pipe_regexp = Str.regexp "|" in
- let targets_of_field = fun field -> try
- Str.split pipe_regexp (ExtXml.attrib_or_default field "target" "ap|sim") with _ -> [] in
- let rec singletonize = fun l ->
- match l with
- [] | [_] -> l
- | x :: ((y :: t) as yt) -> if x = y then singletonize yt else x :: singletonize yt
- in
- let targets = List.map (fun x ->
- match String.lowercase (Xml.tag x) with
- "makefile" -> targets_of_field x
- | _ -> []
- ) (Xml.children m) in
- (* return a singletonized list *)
- singletonize (List.sort compare (List.flatten targets))
-
-let unload_unused_modules = fun modules ->
- let target = try Sys.getenv "TARGET" with _ -> "" in
- let is_target_in_module = fun m ->
- let target_is_in_module = List.exists (fun x -> String.compare target x = 0) (get_targets_of_module m) in
- target_is_in_module
- in
- if String.length target = 0 then
- modules
- else
- List.find_all is_target_in_module modules
-
-(** [get_modules_name dir xml] Returns a list of modules name *)
-let get_modules_name = fun dir xml ->
- (* extract all "modules" sections *)
- let modules = List.map (fun x ->
- match String.lowercase (Xml.tag x) with
- "modules" -> Xml.children x
- | _ -> []
- ) (Xml.children xml) in
- (* flatten the list (result is a list of "load" xml nodes) *)
- let modules = List.flatten modules in
- (* parse modules *)
- let modules = List.map (fun m -> ExtXml.parse_file (dir // ExtXml.attrib m "name")) modules in
- (* filter the list if target is not supported *)
- let modules = unload_unused_modules modules in
- (* return a list of modules name *)
- List.map (fun m -> ExtXml.attrib m "name") modules
-
let _ =
if Array.length Sys.argv <> 5 then begin
@@ -166,7 +106,7 @@ let _ =
with Dtd.Check_error e -> failwith (Dtd.check_error e)
in
- let modules_name = get_modules_name modules_dir (ExtXml.parse_file Sys.argv.(1)) in
+ let modules_name = GC.get_modules_name (ExtXml.parse_file Sys.argv.(1)) in
let avr_h = stdout in