Exemple #1
0
int32_t BatteryInitialize(void)
{
	FlightBatteryStateInitialize();
	FlightBatterySettingsInitialize();
	
	static UAVObjEvent ev;

	memset(&ev,0,sizeof(UAVObjEvent));
	EventPeriodicCallbackCreate(&ev, onTimer, SAMPLE_PERIOD_MS / portTICK_RATE_MS);

	return 0;
}
Exemple #2
0
/**
 * Initialise the module, called on startup
 * \returns 0 on success or -1 if initialisation failed
 */
int32_t BatteryInitialize(void)
{

	
#ifdef MODULE_BATTERY_BUILTIN
	batteryEnabled = true;
#else
	uint8_t optionalModules[HWSETTINGS_OPTIONALMODULES_NUMELEM];

	HwSettingsOptionalModulesGet(optionalModules);

	if ((optionalModules[HWSETTINGS_OPTIONALMODULES_BATTERY] == HWSETTINGS_OPTIONALMODULES_ENABLED))
		batteryEnabled = true;
	else
		batteryEnabled = false;
#endif

	uint8_t adcRouting[HWSETTINGS_ADCROUTING_NUMELEM];	
	HwSettingsADCRoutingGet(adcRouting);
	
	//Determine if the battery sensors are routed to ADC pins 
	for (int i=0; i < HWSETTINGS_ADCROUTING_NUMELEM; i++) {
		if (adcRouting[i] == HWSETTINGS_ADCROUTING_BATTERYVOLTAGE) {
			voltageADCPin = i;
		}
		if (adcRouting[i] == HWSETTINGS_ADCROUTING_BATTERYCURRENT) {
			currentADCPin = i;
		}
	}
	
	//Don't enable module if no ADC pins are routed to the sensors
	if (voltageADCPin <0 && currentADCPin <0)
		batteryEnabled = false;

	//Start module
	if (batteryEnabled) {
		FlightBatteryStateInitialize();
		FlightBatterySettingsInitialize();
	
		static UAVObjEvent ev;

		memset(&ev,0,sizeof(UAVObjEvent));
		EventPeriodicCallbackCreate(&ev, onTimer, SAMPLE_PERIOD_MS / portTICK_RATE_MS);
	}

	return 0;
}
Exemple #3
0
/**
 * Initialize the module
 * \return -1 if initialization failed
 * \return 0 on success
 */
static int32_t uavoTaranisInitialize(void)
{
	uint32_t sport_com = PIOS_COM_FRSKY_SPORT;

	if (sport_com) {


		frsky = PIOS_malloc(sizeof(struct frsky_sport_telemetry));
		if (frsky != NULL) {
			memset(frsky, 0x00, sizeof(struct frsky_sport_telemetry));

			// These objects are registered on the TLM so it
			// can intercept them from the telemetry stream
			FlightBatteryStateInitialize();
			FlightStatusInitialize();
			PositionActualInitialize();
			VelocityActualInitialize();

			frsky->frsky_settings.use_current_sensor = false;
			frsky->frsky_settings.batt_cell_count = 0;
			frsky->frsky_settings.use_baro_sensor = false;
			frsky->state = FRSKY_STATE_WAIT_POLL_REQUEST;
			frsky->last_poll_time = PIOS_DELAY_GetuS();
			frsky->ignore_rx_chars = 0;
			frsky->scheduled_item = -1;
			frsky->com = sport_com;

			uint8_t i;
			for (i = 0; i < NELEMENTS(frsky_value_items); i++)
				frsky->item_last_triggered[i] = PIOS_DELAY_GetuS();
			PIOS_COM_ChangeBaud(frsky->com, FRSKY_SPORT_BAUDRATE);
			module_enabled = true;
			return 0;
		}

		module_enabled = true;

		return 0;
	}

	module_enabled = false;

	return -1;
}
Exemple #4
0
/**
 * Initialise the module, called on startup
 * \returns 0 on success or -1 if initialisation failed
 */
int32_t BatteryInitialize(void)
{
#ifdef MODULE_Battery_BUILTIN
	module_enabled = true;
#else
	uint8_t module_state[MODULESETTINGS_ADMINSTATE_NUMELEM];
	ModuleSettingsAdminStateGet(module_state);
	if (module_state[MODULESETTINGS_ADMINSTATE_BATTERY] == MODULESETTINGS_ADMINSTATE_ENABLED) {
		module_enabled = true;
	} else {
		module_enabled = false;
		return 0;
	}
#endif
	FlightBatterySettingsInitialize();
	FlightBatteryStateInitialize();

	return 0;
}
/**
 * Function used to initialize the first instance of each object.
 * This file is automatically updated by the UAVObjectGenerator.
 */
void UAVObjectsInitializeAll()
{
    ActuatorCommandInitialize();
    ActuatorDesiredInitialize();
    ActuatorSettingsInitialize();
    AHRSCalibrationInitialize();
    AHRSSettingsInitialize();
    AhrsStatusInitialize();
    AttitudeActualInitialize();
    AttitudeDesiredInitialize();
    AttitudeRawInitialize();
    AttitudeSettingsInitialize();
    BaroAltitudeInitialize();
    ExampleObject1Initialize();
    ExampleObject2Initialize();
    ExampleSettingsInitialize();
    FlightBatteryStateInitialize();
    FlightTelemetryStatsInitialize();
    GCSTelemetryStatsInitialize();
    GPSPositionInitialize();
    GPSSatellitesInitialize();
    GPSTimeInitialize();
    HomeLocationInitialize();
    ManualControlCommandInitialize();
    ManualControlSettingsInitialize();
    MixerSettingsInitialize();
    MixerStatusInitialize();
    ObjectPersistenceInitialize();
    PositionActualInitialize();
    StabilizationSettingsInitialize();
    SystemAlarmsInitialize();
    SystemSettingsInitialize();
    SystemStatsInitialize();
    TelemetrySettingsInitialize();
    VTOLSettingsInitialize();
    VTOLStatusInitialize();

}