diff --git a/cmake/configs/nuttx_mindpx-v2_default.cmake b/cmake/configs/nuttx_mindpx-v2_default.cmake
index 41c9d32df8a52fecc7fcaefb0e7f128ccc048f01..d269cb39b333738d4d60ec40b58f0fbf79333e11 100644
--- a/cmake/configs/nuttx_mindpx-v2_default.cmake
+++ b/cmake/configs/nuttx_mindpx-v2_default.cmake
@@ -101,7 +101,6 @@ set(config_module_list
 	# Estimation modules (EKF/ SO3 / other filters)
 	#
 	modules/attitude_estimator_q
-	modules/ekf_att_pos_estimator
 	modules/position_estimator_inav
 	modules/local_position_estimator
 	modules/ekf2
diff --git a/cmake/configs/nuttx_px4fmu-v1_default.cmake b/cmake/configs/nuttx_px4fmu-v1_default.cmake
index 75f8d054ed5a91a9ba7c94426dbb6095acc2fa84..c53b199fdd763217eac6470e4db2eb4a73e1a585 100644
--- a/cmake/configs/nuttx_px4fmu-v1_default.cmake
+++ b/cmake/configs/nuttx_px4fmu-v1_default.cmake
@@ -68,13 +68,11 @@ set(config_module_list
 	modules/land_detector
 
 	#
-	# Estimation modules (EKF/ SO3 / other filters)
+	# Estimation modules
 	#
-	# Too high RAM usage due to static allocations
-	# modules/attitude_estimator_ekf
 	modules/attitude_estimator_q
-	modules/ekf_att_pos_estimator
 	modules/position_estimator_inav
+	modules/local_position_estimator
 	modules/ekf2
 
 	#
diff --git a/cmake/configs/nuttx_px4fmu-v2_default.cmake b/cmake/configs/nuttx_px4fmu-v2_default.cmake
index c38d726702076f92d5213018088c3c47b6da6329..337d377370a58d4eb54092ea5f635b30c267fda2 100644
--- a/cmake/configs/nuttx_px4fmu-v2_default.cmake
+++ b/cmake/configs/nuttx_px4fmu-v2_default.cmake
@@ -94,10 +94,9 @@ set(config_module_list
 	modules/land_detector
 
 	#
-	# Estimation modules (EKF/ SO3 / other filters)
+	# Estimation modules
 	#
 	modules/attitude_estimator_q
-	#modules/ekf_att_pos_estimator
 	modules/position_estimator_inav
 	modules/local_position_estimator
 	modules/ekf2
diff --git a/cmake/configs/nuttx_px4fmu-v2_ekf2.cmake b/cmake/configs/nuttx_px4fmu-v2_ekf2.cmake
deleted file mode 100644
index f43b7820455f5892ed520385def244efb8bcb0c5..0000000000000000000000000000000000000000
--- a/cmake/configs/nuttx_px4fmu-v2_ekf2.cmake
+++ /dev/null
@@ -1,195 +0,0 @@
-include(nuttx/px4_impl_nuttx)
-
-set(CMAKE_TOOLCHAIN_FILE ${CMAKE_SOURCE_DIR}/cmake/toolchains/Toolchain-arm-none-eabi.cmake)
-
-set(config_uavcan_num_ifaces 2)
-
-set(config_module_list
-	#
-	# Board support modules
-	#
-	drivers/device
-	drivers/stm32
-	drivers/stm32/adc
-	drivers/stm32/tone_alarm
-	drivers/led
-	drivers/px4fmu
-	drivers/px4io
-	drivers/boards/px4fmu-v2
-	drivers/rgbled
-	drivers/mpu6000
-	drivers/mpu9250
-	drivers/lsm303d
-	drivers/l3gd20
-	drivers/hmc5883
-	drivers/ms5611
-	#drivers/mb12xx
-	drivers/srf02
-	drivers/sf0x
-	drivers/ll40ls
-	drivers/trone
-	drivers/gps
-	drivers/pwm_out_sim
-	#drivers/hott
-	#drivers/hott/hott_telemetry
-	#drivers/hott/hott_sensors
-	drivers/blinkm
-	drivers/airspeed
-	drivers/ets_airspeed
-	drivers/meas_airspeed
-	drivers/frsky_telemetry
-	modules/sensors
-	#drivers/mkblctrl
-	drivers/px4flow
-	#drivers/oreoled
-	drivers/gimbal
-	drivers/pwm_input
-	drivers/camera_trigger
-	drivers/bst
-	#drivers/snapdragon_rc_pwm
-	#drivers/lis3mdl
-
-	#
-	# System commands
-	#
-	systemcmds/bl_update
-	systemcmds/mixer
-	systemcmds/param
-	systemcmds/perf
-	systemcmds/pwm
-	systemcmds/esc_calib
-	systemcmds/reboot
-	#systemcmds/topic_listener
-	systemcmds/top
-	systemcmds/config
-	systemcmds/nshterm
-	systemcmds/mtd
-	systemcmds/dumpfile
-	systemcmds/ver
-	#systemcmds/sd_bench
-	#systemcmds/tests
-	systemcmds/motor_ramp
-
-	#
-	# General system control
-	#
-	modules/commander
-	modules/load_mon
-	modules/navigator
-	modules/mavlink
-	#modules/gpio_led
-	modules/uavcan
-	modules/land_detector
-
-	#
-	# Estimation modules (EKF/ SO3 / other filters)
-	#
-	modules/ekf2
-
-	#
-	# Vehicle Control
-	#
-	# modules/segway # XXX Needs GCC 4.7 fix
-	modules/fw_pos_control_l1
-	modules/fw_att_control
-	modules/mc_att_control
-	modules/mc_pos_control
-	modules/vtol_att_control
-
-	#
-	# Logging
-	#
-	modules/logger
-	modules/sdlog2
-
-	#
-	# Library modules
-	#
-	modules/param
-	modules/systemlib
-	modules/systemlib/mixer
-	modules/uORB
-	modules/dataman
-
-	#
-	# Libraries
-	#
-	lib/controllib
-	lib/mathlib
-	lib/mathlib/math/filter
-	lib/ecl
-	lib/external_lgpl
-	lib/geo
-	lib/geo_lookup
-	lib/conversion
-	lib/launchdetection
-	lib/terrain_estimation
-	lib/runway_takeoff
-	lib/tailsitter_recovery
-	lib/DriverFramework/framework
-	platforms/nuttx
-
-	# had to add for cmake, not sure why wasn't in original config
-	platforms/common 
-	platforms/nuttx/px4_layer
-
-	#
-	# OBC challenge
-	#
-	#modules/bottle_drop
-
-	#
-	# Rover apps
-	#
-	#examples/rover_steering_control
-
-	#
-	# Demo apps
-	#
-	#examples/math_demo
-	# Tutorial code from
-	# https://px4.io/dev/px4_simple_app
-	#examples/px4_simple_app
-
-	# Tutorial code from
-	# https://px4.io/dev/daemon
-	#examples/px4_daemon_app
-
-	# Tutorial code from
-	# https://px4.io/dev/debug_values
-	#examples/px4_mavlink_debug
-
-	# Tutorial code from
-	# https://px4.io/dev/example_fixedwing_control
-	#examples/fixedwing_control
-
-	# Hardware test
-	#examples/hwtest
-)
-
-set(config_extra_builtin_cmds
-	serdis
-	sercon
-	)
-
-set(config_io_board
-	px4io-v2
-	)
-
-set(config_extra_libs
-	uavcan
-	uavcan_stm32_driver
-	)
-
-set(config_io_extra_libs
-	)
-
-add_custom_target(sercon)
-set_target_properties(sercon PROPERTIES
-	PRIORITY "SCHED_PRIORITY_DEFAULT"
-	MAIN "sercon" STACK_MAIN "2048")
-
-add_custom_target(serdis)
-set_target_properties(serdis PROPERTIES
-	PRIORITY "SCHED_PRIORITY_DEFAULT"
-	MAIN "serdis" STACK_MAIN "2048")
diff --git a/cmake/configs/nuttx_px4fmu-v2_test.cmake b/cmake/configs/nuttx_px4fmu-v2_test.cmake
index b72c5a819059f0b53db52165978d8877207c4389..7e5d1c5c26f2d7dfc23ac9609015005532b9c2e4 100644
--- a/cmake/configs/nuttx_px4fmu-v2_test.cmake
+++ b/cmake/configs/nuttx_px4fmu-v2_test.cmake
@@ -94,10 +94,9 @@ set(config_module_list
 	modules/land_detector
 
 	#
-	# Estimation modules (EKF/ SO3 / other filters)
+	# Estimation modules
 	#
 	modules/attitude_estimator_q
-	#modules/ekf_att_pos_estimator
 	modules/position_estimator_inav
 	modules/local_position_estimator
 	modules/ekf2
diff --git a/cmake/configs/posix_bebop_default.cmake b/cmake/configs/posix_bebop_default.cmake
index 5538ffe35a6ec34044f566dfb2e25ed07f680a0b..d7d4058ab1bc021b7a644dc43348cf4ee5874c73 100644
--- a/cmake/configs/posix_bebop_default.cmake
+++ b/cmake/configs/posix_bebop_default.cmake
@@ -37,10 +37,8 @@ set(config_module_list
 	systemcmds/perf
 
 	#
-	# Estimation modules (EKF/ SO3 / other filters)
+	# Estimation modules
 	#
-	#modules/attitude_estimator_ekf
-	modules/ekf_att_pos_estimator
 	modules/attitude_estimator_q
 	modules/position_estimator_inav
 	modules/local_position_estimator
diff --git a/cmake/configs/posix_eagle_legacy_driver_default.cmake b/cmake/configs/posix_eagle_legacy_driver_default.cmake
index ec172e7602fdfde2e89a5d8420e3276da7bc8a5f..dc9b3049c94621808190056813471a28a11f8901 100644
--- a/cmake/configs/posix_eagle_legacy_driver_default.cmake
+++ b/cmake/configs/posix_eagle_legacy_driver_default.cmake
@@ -31,8 +31,10 @@ set(config_module_list
 
 	modules/mavlink
 
-	modules/attitude_estimator_ekf
-	modules/ekf_att_pos_estimator
+	modules/attitude_estimator_q
+	modules/position_estimator_inav
+	modules/local_position_estimator
+	modules/ekf2
 
 	modules/mc_pos_control
 	modules/mc_att_control
diff --git a/cmake/configs/posix_rpi_common.cmake b/cmake/configs/posix_rpi_common.cmake
index ad28fddc816fc8020a495440cb4555c7700949f4..dac386836ecaeb0118c99d9e80ab3bf1364b80b3 100644
--- a/cmake/configs/posix_rpi_common.cmake
+++ b/cmake/configs/posix_rpi_common.cmake
@@ -36,10 +36,8 @@ set(config_module_list
 	systemcmds/perf
 
 	#
-	# Estimation modules (EKF/ SO3 / other filters)
+	# Estimation modules
 	#
-	#modules/attitude_estimator_ekf
-	modules/ekf_att_pos_estimator
 	modules/attitude_estimator_q
 	modules/position_estimator_inav
 	modules/local_position_estimator
diff --git a/cmake/configs/posix_sdflight_default.cmake b/cmake/configs/posix_sdflight_default.cmake
index c43e51974c99312b7cc81ad3b5d2b50aa21aa283..733e6c584a8a213a247c57680669a4228b38bca7 100644
--- a/cmake/configs/posix_sdflight_default.cmake
+++ b/cmake/configs/posix_sdflight_default.cmake
@@ -24,8 +24,10 @@ set(config_module_list
 
 	modules/mavlink
 
-	modules/attitude_estimator_ekf
-	modules/ekf_att_pos_estimator
+	modules/attitude_estimator_q
+	modules/position_estimator_inav
+	modules/local_position_estimator
+	modules/ekf2
 
 	modules/mc_pos_control
 	modules/mc_att_control
diff --git a/cmake/configs/posix_sitl_broadcast.cmake b/cmake/configs/posix_sitl_broadcast.cmake
index 9a9029f1c0c70dae170ca998d659a72a580e76c0..7060744447d9a528384a8d4e810a7e31d977e631 100644
--- a/cmake/configs/posix_sitl_broadcast.cmake
+++ b/cmake/configs/posix_sitl_broadcast.cmake
@@ -33,10 +33,10 @@ set(config_module_list
 	modules/sensors
 	modules/simulator
 	modules/mavlink
-	modules/attitude_estimator_ekf
 	modules/attitude_estimator_q
+	modules/position_estimator_inav
+	modules/local_position_estimator
 	modules/ekf2
-	modules/ekf_att_pos_estimator
 	modules/position_estimator_inav
 	modules/navigator
 	modules/vtol_att_control
diff --git a/cmake/configs/qurt_eagle_hil.cmake b/cmake/configs/qurt_eagle_hil.cmake
index 469432818fc7bf4da0839002ef0f58e491c9cd42..bf08993de0fb7b6acd6a0ebb1ff83dd111ca619e 100644
--- a/cmake/configs/qurt_eagle_hil.cmake
+++ b/cmake/configs/qurt_eagle_hil.cmake
@@ -27,12 +27,12 @@ set(config_module_list
 	systemcmds/mixer
 
 	#
-	# Estimation modules (EKF/ SO3 / other filters)
+	# Estimation modules
 	#
-	#modules/attitude_estimator_ekf
-	modules/ekf_att_pos_estimator
 	modules/attitude_estimator_q
 	modules/position_estimator_inav
+	modules/local_position_estimator
+	modules/ekf2
 
 	#
 	# Vehicle Control
diff --git a/cmake/configs/qurt_eagle_legacy_driver_default.cmake b/cmake/configs/qurt_eagle_legacy_driver_default.cmake
index f0fdb2dee5c8d8392cd00e4ed5f59bf171bffc3d..fcba1a3e13ca8129f14a19d95b143112fe122450 100644
--- a/cmake/configs/qurt_eagle_legacy_driver_default.cmake
+++ b/cmake/configs/qurt_eagle_legacy_driver_default.cmake
@@ -35,11 +35,11 @@ set(config_module_list
 	systemcmds/param
 
 	#
-	# Estimation modules (EKF/ SO3 / other filters)
+	# Estimation modules
 	#
-	modules/ekf_att_pos_estimator
 	modules/attitude_estimator_q
 	modules/position_estimator_inav
+	modules/local_position_estimator
 	modules/ekf2
 
 	#
diff --git a/cmake/configs/qurt_eagle_travis.cmake b/cmake/configs/qurt_eagle_travis.cmake
index 16aa788edc2a28165455432554cc554f8d45720c..b6be755df32515e202a39f73e95c6acf739dd801 100644
--- a/cmake/configs/qurt_eagle_travis.cmake
+++ b/cmake/configs/qurt_eagle_travis.cmake
@@ -35,12 +35,12 @@ set(config_module_list
 	systemcmds/mixer
 
 	#
-	# Estimation modules (EKF/ SO3 / other filters)
+	# Estimation modules
 	#
-	#modules/attitude_estimator_ekf
-	modules/ekf_att_pos_estimator
 	modules/attitude_estimator_q
 	modules/position_estimator_inav
+	modules/local_position_estimator
+	modules/ekf2
 
 	#
 	# Vehicle Control
diff --git a/cmake/configs/qurt_sdflight_default.cmake b/cmake/configs/qurt_sdflight_default.cmake
index 195219f7af040bc5ba15b37ad2f9bbe85129db18..890658e0dce48ea22e244c3b52e58b9b6f0bc951 100644
--- a/cmake/configs/qurt_sdflight_default.cmake
+++ b/cmake/configs/qurt_sdflight_default.cmake
@@ -32,12 +32,11 @@ set(config_module_list
 	systemcmds/param
 
 	#
-	# Estimation modules (EKF/ SO3 / other filters)
+	# Estimation modules
 	#
-	#modules/attitude_estimator_ekf
-	modules/ekf_att_pos_estimator
 	modules/attitude_estimator_q
 	modules/position_estimator_inav
+	modules/local_position_estimator
 	modules/ekf2
 
 	#