diff --git a/sw/airborne/fms/libeknav/Makefile b/sw/airborne/fms/libeknav/Makefile index 9d91834aaf..5776796e9a 100644 --- a/sw/airborne/fms/libeknav/Makefile +++ b/sw/airborne/fms/libeknav/Makefile @@ -4,8 +4,8 @@ raw_log_to_ascii: raw_log_to_ascii.c fetch_log: - scp @auto1:/tmp/log_test3.bin . scp @auto1:/tmp/log_ins_test3.data . + scp @auto1:/tmp/log_test3.bin . ./raw_log_to_ascii > bla.dat clean: diff --git a/sw/airborne/fms/libeknav/test_libeknav_4.cpp b/sw/airborne/fms/libeknav/test_libeknav_4.cpp index 6c5cfb1526..b77b2f206d 100644 --- a/sw/airborne/fms/libeknav/test_libeknav_4.cpp +++ b/sw/airborne/fms/libeknav/test_libeknav_4.cpp @@ -6,6 +6,7 @@ struct timespec start, prev; FILE* ins_logfile; // note: initilaized in init_ins_state +unsigned int counter; //useless initialization (I hate C++) @@ -16,6 +17,7 @@ static basic_ins_qkf ins = basic_ins_qkf(Vector3d::Zero(), 0, 0, 0, USING_PART_OF_NAMESPACE_EIGEN int main(int, char *[]) { + counter = 0; std::cout << "test libeknav 3" << std::endl; clock_gettime(TIMER, &start); @@ -37,6 +39,13 @@ int main(int, char *[]) { static void main_init(void) { + + printf("Filter output will be in "); + #if FILTER_OUTPUT_IN_NED + printf("NED\n"); + #else + printf("ECEF\n"); + #endif TRACE(TRACE_DEBUG, "%s", "Starting initialization\n"); @@ -64,6 +73,11 @@ static void main_init(void) { static void main_periodic(int my_sig_num __attribute__ ((unused))) { + + counter++; + if(counter%128 == 0){ + printf("%f s\n", (double)counter/512); + } uint8_t data_valid = main_dialog_with_io_proc(); main_run_ins(data_valid); @@ -113,16 +127,18 @@ static void main_run_ins(uint8_t data_valid) { ins.predict(RATES_AS_VECTOR(imu_float.gyro), COORDS_AS_VECTOR(imu_float.accel), dt_imu_freq); - if(data_valid & VI_MAG_DATA_VALID){ - ins.obs_vector(reference_direction, COORDS_AS_VECTOR(imu_float.mag), mag_noise); + if(data_valid & (1< #define FILTER_OUTPUT_IN_NED 1 +#define UPDATE_WITH_GRAVITY 0 /*