From ed6a8b41fc2c99b440cf0f06e23a43a5aca1f881 Mon Sep 17 00:00:00 2001 From: kirkscheper Date: Wed, 27 Jun 2018 13:54:53 +0200 Subject: [PATCH] [multithreading] kill unnessesary program on bebop --- sw/airborne/boards/bebop/board.c | 3 +++ sw/airborne/firmwares/rotorcraft/main.c | 6 ++++-- 2 files changed, 7 insertions(+), 2 deletions(-) diff --git a/sw/airborne/boards/bebop/board.c b/sw/airborne/boards/bebop/board.c index 2dd784b60d7..ef6fac225f9 100644 --- a/sw/airborne/boards/bebop/board.c +++ b/sw/airborne/boards/bebop/board.c @@ -121,6 +121,9 @@ void board_init(void) int ret __attribute__((unused)) = system("killall -q -15 DragonStarter.sh"); usleep(50000); /* Give DragonStarter 50ms time to end on a busy system */ kill_gracefull("dragon-prog"); +#if PRIMARY_GPS == GPS_DATALINK + kill_gracefull("ephemerisd"); +#endif } void board_init2(void) diff --git a/sw/airborne/firmwares/rotorcraft/main.c b/sw/airborne/firmwares/rotorcraft/main.c index be2d7a26c92..0f01c49cef6 100644 --- a/sw/airborne/firmwares/rotorcraft/main.c +++ b/sw/airborne/firmwares/rotorcraft/main.c @@ -36,6 +36,8 @@ #include "mcu_periph/sys_time.h" +#define POLLING_PERIOD (500000/PERIODIC_FREQUENCY) +#include #ifndef SITL int main(void) { @@ -58,8 +60,8 @@ int main(void) /* sleep remaining time to limit to 1kHz */ t_diff = get_sys_time_usec() - t_begin; - if (t_diff < 1000) { - sys_time_usleep(1000 - t_diff); + if (t_diff < POLLING_PERIOD) { + sys_time_usleep(POLLING_PERIOD - t_diff); } } #else