#ifndef bexus_sensors_h
#define bexus_sensors_h
#ifdef __cplusplus
 extern "C" {
#endif


/**----------------Includes-----------------------------*/
//#include "FreeRTOS.h"
#include "i2c.h"
	 
#include "bexus_variables.h"
#include "bexus_i2c_cis.h"
#include "bexus_adc.h"
#include "bexus_gps.h"
#include "bexus_mpu.h"
#include "bexus_mag.h"
#include "bexus_sd.h"
#include "bexus_sysclock.h"
#include "bexus_pressure_spi.h"
#include "bexus_temperature_i2c.h"
#include "bexus_udp_client.h"
/**-----------------------------------------------------*/


/**----------------variables---------------------------*/
extern uint16_t samplerate_mpu_mag;
extern uint16_t samplerate_temp_press_gps;
extern uint32_t counter;
extern uint32_t last_time_mpu_mag_read;
extern uint32_t last_time_temp_press_gps_read;
extern uint8_t mpu_mag_read;
extern uint8_t temp_press_gps_read;
extern uint8_t error_read;
//extern bool new_Sensor_Data;
extern uint16_t last_index_temp_press_gps;
/**-----------------------------------------------------*/


/**------------------functions--------------------------*/
int Sensors(void);
void Sensors_Init(void);

void calc_imu(void);

int Fusion(void);
/**-----------------------------------------------------*/
#ifdef __cplusplus
}
#endif
#endif
