Commit Graph

689 Commits

Author SHA1 Message Date
dongie c1fcdabdc1 rearranged startup / sensor detection for production testing. moved dead gyro endless loop out of the way. 2014-05-02 18:27:23 +09:00
dongie 2d248676f5 slight refactoring of PPM/PWM failsafe to make it actually work and honor failsafeThreshold value. 2014-05-02 16:12:31 +09:00
Dominic Clifton fbe2f82c05 STM32F30x - Enable serial PWM (PPM) input on PWM1.
This might also fix parallel PWM input too, but untested.
2014-05-01 20:20:24 +01:00
Dominic Clifton 133f75a17b Update PWM driver so that all 10 PWM outputs work. Softserial also now
works as expected.  PWM/PPM input untested.  UART2 probably broken.
2014-05-01 15:09:32 +01:00
dongie cce4d4975d moved some of init logic around to get sensors + other important hardware checked first; added dummy implementation of production test for future use, outputting debug info over PB6 (USART1_TX remap) 2014-05-01 19:05:13 +09:00
dongie be5896f5b3 updated ADC driver to use more of available inputs, as well as made input selection more sane 2014-05-01 19:03:58 +09:00
dongie fd4bb1eb1c adding rxmsp to uvision project 2014-05-01 12:37:20 +09:00
dongie ef0c28ae0a Merge pull request #99 from treymarc/serialrx_msp
Serialrx msp
2014-05-01 12:33:44 +09:00
dongie 98bd9c5cda support 1S battery for voltage monitoring 2014-05-01 12:24:48 +09:00
treymarc 9d15009ad3 check frameComplete 2014-05-01 05:22:06 +02:00
dongie 25ec04763b add support for GPIO remapping (copied from stm32f_gpio.c) 2014-05-01 12:10:33 +09:00
treymarc ed46b4e4ac add serial_rx msp 2014-05-01 05:06:36 +02:00
dongie 8a5f424421 building hex for gps initialization fix 2014-04-30 00:34:16 +09:00
dongie 2c9849cd33 Merge pull request #97 from DTFUHF/master
Set SBAS mode in GPS for worldwide use instead of exclusively European u...
2014-04-30 00:32:00 +09:00
DTF UHF 5393d83e4d Set SBAS mode in GPS for worldwide use instead of exclusively European use 2014-04-29 11:23:49 -04:00
Dominic Clifton 7e79a245c2 Cobbled together some bits of code to read and format the gyro data from
the L3GD29 gyro.  Some code borrowed again from AQ32PlusF3 and the
existing MPU6050 driver.
2014-04-28 22:29:51 +01:00
Dominic Clifton 5c9b16ccde Convert the acc readings so that the 1G value is correct. 2014-04-28 21:40:17 +01:00
Dominic Clifton 4febeb3969 Ported some I2C code from AQ32PlusF3 which itself looked ported from the
STM32 examples.
2014-04-28 19:18:57 +01:00
kh4 cf780bbad6 Enable input filtering on input capture timers. 2014-04-27 22:37:45 +03:00
Dominic Clifton 8d9ce86a5a get GPIO and USART ports working.
The STM32F3DISCOVERY board would crash when setting GPIOA Pin_13 or
Pin_14 to analog mode so they are excluded in the gpio initialisation.

The USART GPIO configuration did not work when using the F10x code.  The
USART status and DMA registers are different too.
2014-04-25 15:19:28 +01:00
Dominic Clifton 2cc3a50c01 Avoid calling SetSysClock twice. 2014-04-25 12:10:51 +01:00
Dominic Clifton cde26ac1a2 Fix eeprom writing. Update some clocks. Add fake implementation of acc
and gyro to allow the main loop to run.
2014-04-25 03:50:33 +01:00
Dominic Clifton f9ceb0c40f fix transposed gpio driver filenames and content 2014-04-25 01:17:08 +01:00
Dominic Clifton 0598704872 First commit of port to STM32F3DISCOVERY board.
work-in-progress, it does compile and run though but hangs early on in
main() because of unimplemented features.
2014-04-25 01:09:19 +01:00
dongie fdddb841a4 Merge pull request #93 from hydra/3d-flight-midrc-fix
BUG FIX - Fixes 3d flight mixer so that it uses midrc
2014-04-24 20:12:01 +09:00
Dominic Clifton dc3e7decbd BUG FIX - Fixes 3d flight mixer so that it uses midrc
Previously it was using a hardcoded value of 1500.

Without this commit it would mean that any midrc configuration was not
being applied to 3d flight.

lready applied in a6c22d2115
Conflicts:

	src/flight_mixer.c
2014-04-24 11:31:27 +01:00
Dominic Clifton e4cf3d941a BUG FIX - Fixes 3d flight mixer so that it uses midrc
Previously it was using a hardcoded value of 1500.

Without this commit it would mean that any midrc configuration was not
being applied to 3d flight.
2014-04-24 11:23:57 +01:00
Dominic Clifton 92f74ac0c2 Removing final dependency on board.h.
board.h is no-longer required.
2014-04-24 02:16:16 +01:00
Dominic Clifton cb63f6e2b5 Remove telemetry_*.c's dependency on mw.h/board.h.
Finally, the only dependency on mw.h/board.h is now mw.c itself.
2014-04-24 01:44:58 +01:00
Dominic Clifton 7af9ca4fdc Cleanup deprecated IMU code by using a union. 2014-04-24 01:13:29 +01:00
Dominic Clifton a6c22d2115 BUG FIX - Fixes 3d flight mixer so that it uses midrc
Previously it was using a hardcoded value of 1500.

Without this commit it would mean that any midrc configuration was not
being applied to 3d flight.
2014-04-24 00:59:07 +01:00
Dominic Clifton 695db3523a Remove flight_mixer.c's dependency on mw.h/board.h.
This is a large commit, from the commit it is clear that the mixer has
many dependencies, this is expected since it is central to the
application.

To achieve the decoupling many master config and profile members had to
be moved into structures.

Relocated throttle/pitch curves into rc_curves.c/h since it has nothing
to with rx code, this fixed the dependencies inside the rx provider
files.
2014-04-24 00:18:24 +01:00
Dominic Clifton bb91b1f560 Remove serial_msp.c's dependency on mw.h/board.h. 2014-04-23 21:38:03 +01:00
Dominic Clifton aa84439b21 Disambiguate MAX_MOTORS and MAX_SUPPORTED_MOTORS
Achieved by renaming MAX_MOTORS to MAX_PWM_MOTORS

Disambiguate MAX_MOTORS and MAX_SUPPORTED_SERVOS
Achieved by renaming MAX_SERVOS to MAX_PWM_SERVOS

It now shows there is a dependency on the pwm driver if MAX_PWM_* is
used.

Coupled pwm_common and timer_common by using USABLE_TIMER_CHANNEL_COUNT
since the current pwm driver and timer driver is only usable by the
STM32F103.
2014-04-23 21:04:39 +01:00
Dominic Clifton a5f0999c26 Remove serial_cli.c's dependency on mw.h/board.h.
Rename yawdeadband to yaw_deadband to match other variables/cli
commands.

Fix a couple of usages of MAX_MOTORS where MAX_SUPPORTED_MOTORS should
be used instead.
2014-04-23 20:42:38 +01:00
Dominic Clifton bcc55abcc8 relocate comment to variable declaratiion 2014-04-23 19:58:39 +01:00
Dominic Clifton 8422723b15 Latest binaries. 2014-04-23 02:39:51 +01:00
Dominic Clifton e4c9fb585c Merge remote-tracking branch 'multiwii/master'
Conflicts:
	obj/baseflight.hex
	src/config.c
	src/main.c
	src/mw.c
	src/mw.h
	src/serial_cli.c
2014-04-23 02:38:39 +01:00
Dominic Clifton 11863e5c34 Avoid passing a uint8_t to a gyro method that is only used during gyro
calibration.
Conflicts:

	src/config.c
	src/flight_imu.c
	src/mw.h
	src/sensors.c
	src/serial_cli.c
2014-04-23 02:25:46 +01:00
dongie 5a05de5da7 fixing some typos and inconsistencies in cli/set variable naming. 2014-04-23 09:53:05 +09:00
Dominic Clifton 9d56b4a00f Remove sensor_initialisation.c's dependency on mw.h/board.h.
Extracted sensor alignment variables to sensorAlignmentConfig

This commit marks the end of the sensor dependency cleanup.
2014-04-23 00:41:21 +01:00
Dominic Clifton e963496263 Remove sensor_compass.c's dependency on mw.h/board.h.
Also changed type of magZero from int16_t[3] to
int16_flightDynamicsTrims_t.
2014-04-23 00:15:55 +01:00
Dominic Clifton 1464b7398a Remove sensor_sonar.c's dependency on mw.h/board.h. 2014-04-23 00:05:11 +01:00
Dominic Clifton 53b7edd843 Add the name of the fork to the output of the cli version command. 2014-04-23 00:01:07 +01:00
Dominic Clifton e2550ee5e1 Remove sensor_barometer.c's dependency on mw.h/board.h.
This also cleans the code - No magic numbers, clearly defines states,
config variables grouped together, avoiding some global variable use.
2014-04-22 23:46:25 +01:00
Dominic Clifton c08d0ac1b3 BUGFIX - gyro calibration too short when movement detected during
calibration.

When the model is moved during the gyro calibration period too much the
code that detects the movement (gyroMovementCalibrationThreshold aka
'moron threshold') did not restart the calibration correctly and one too
few calibration cycles were used when restarting.

In addition to this there was unnecessary calibration reset code - the
reset of calibration variables is supposed to happen at the start of
calibration; due to the bug the first calibration cycle could not be
detected when restarting so the old reset code was required. 

This commit also cleans up the Gyro code so the it is in a similar style
to the recently cleaned acceleration code.
2014-04-22 20:39:44 +01:00
Dominic Clifton db9042757d Remove sensor_gyro.c's dependency on mw.h/board.h. 2014-04-22 20:18:33 +01:00
Dominic Clifton fbfb75b24a Remove sensor_acceleration.c's dependency on mw.h/board.h.
In doing so accelerometer sensor and trim code had to be cleaned.
Added a new method to buzzer.c to avoid exposing toggleBeep.
Renamed current_profile to current_profile_index to avoid confusion.
2014-04-22 19:41:46 +01:00
Dominic Clifton 1092fa5b40 Latest binaries. 2014-04-22 02:47:08 +01:00
Dominic Clifton 56dc59722a Adding FIXME regarding content of flags_t. 2014-04-22 02:46:14 +01:00