Commit Graph

193 Commits

Author SHA1 Message Date
Dominic Clifton 9b8a10a09f Updating makefile so the binaries are build with the name of the fork,
in this case 'cleanflight'.  Updating binaries to reflect this change.  

Also renamed the 'startup' folder from 'baseflight_startups'.
2014-04-21 03:34:29 +01:00
Dominic Clifton 68b9b9062f Latest binaries. 2014-04-21 03:13:25 +01:00
Dominic Clifton aef28c1c08 latest binaries with changes from multiwii/master merged in. 2014-04-19 01:13:27 +01:00
Dominic Clifton b1f7a36ae5 update binaries. 2014-04-19 01:07:39 +01:00
Dominic Clifton 43258c045d build of latest binaries with spektrum 2048 8channel support. 2014-04-18 17:31:28 +01:00
dongie e6e25a9e31 building hex for current changes 2014-04-12 12:31:57 +09:00
dongie fafc59b3a5 adding some bounds checking in nmea parser (which sucks and should just go away anyway) 2014-04-10 10:57:47 +09:00
dongie fc1f5c9f1e check for core.gpsport nullpointer first 2014-04-09 09:11:38 +09:00
dongie d002f0fdc1 Try using proper serial routines this time 2014-04-09 07:23:43 +09:00
dongie 1898fd43fd trying to free up USART IRQ from GPS aids 2014-04-09 07:18:22 +09:00
Dominic Clifton 9fa99cf9f5 Re-organize files by topic
Keil project not updated, I have no way to verify it.

Note, mw.c, drv_pwm.c and drv_system.c contain code for too many topics.
Later commits will relocate the code as appropriate.

Not even looked at utils yet.  'Utils' is a bad naming practice and is a
synonym for 'too lazy to find the right file/name'.
2014-04-08 16:11:17 +01:00
dongie c1cdf8b844 fixing fucked up struct definitions;
updated uvision project;
updated hex file;
2014-04-08 08:25:25 +09:00
dongie f336fc8d20 allow configurable bootloader reboot character to workaround retarded BT adapters that spam 'R' 2014-04-06 13:42:10 +09:00
dongie c0882fd863 building binary for softserial and GPS changes;
enum warning fix in sbus.c
2014-04-06 06:44:35 +09:00
dongie f83133fa74 Fixing missing reply in MSP_SET_MOTORS. Found by cTn 2014-02-20 19:56:40 +09:00
dongie d40e8c0ef4 shows how many people use gimbal outputs.
regular gimbal rates has been broken since forever, same rate was applied to pitch and roll, instead of separate. thanx nicodh
2014-02-20 16:21:44 +09:00
dongie 96dcfe9174 Added support for fast sbus2 protocol (used by newer receivers). Untested, thanks Cesco 2014-02-19 16:36:10 +09:00
dongie af13325f9e building hex file for servo center fix 2014-02-18 15:42:13 +09:00
dongie 30afff2578 got rid of feature_gyro_smoothing. nobody used that, and its retarded to do anyway. 2014-02-18 15:27:53 +09:00
dongie 9d421b4a67 removed rc averaging for serialrx sources - suggested by cesco 2014-02-18 12:12:08 +09:00
dongie 0c46bdbfc8 added cli settings for pidvel
added (unsupported) GPS nav MSP numbers.
2014-02-04 08:21:40 +09:00
dongie a695ddd66a added sumd serial receiver support by cesco/Plüschi 2014-01-31 10:02:50 +09:00
dongie 92c0947d7f bump config version after PID default changes and add built hex file 2014-01-28 10:03:30 +09:00
dongie e4746e60cf hex to match latest source commits 2014-01-26 09:32:12 +09:00
dongie 8c4a594808 build for throttle angle correction 2014-01-15 22:06:31 +09:00
dongie a206965854 adding support for maxthrottle and mincommand in MSP_SET_MISC now that all the tools can use it. 2014-01-15 19:37:31 +09:00
dongie 1dea496fd5 build for mixer update 2014-01-01 19:44:33 +09:00
dongie 13324c9f88 build binary for the previous GPS baud rate index fix 2013-12-27 08:37:17 +09:00
dongie 44adda8b3b gps fix build 2013-12-24 23:46:18 +09:00
dongie 7fec1b3a69 git fucking shit up again. been building with wrong gyroscale for weeks. way to fucking go. everyone upgrade to this. 2013-11-26 11:59:18 +09:00
dongie 1cbbe0b110 airplane mixer will now actually output servo data 2013-11-14 20:28:33 +09:00
dongie e1087cf921 fix returned size in MSP_MISC, should correct CRC errors in other GUIs and correctly work with MSP_SET_MISC in MultiWiiConf 2013-11-02 12:40:56 +09:00
timecop@gmail.com 609df47cd4 tri gyro data reading fix - closes issue #18
git-svn-id: https://afrodevices.googlecode.com/svn/trunk/baseflight@464 7c89a4a9-59b9-e629-4cfe-3a2d53b20e61
2013-11-01 00:47:05 +00:00
timecop@gmail.com 2d076db908 Built firmware to match r460.
git-svn-id: https://afrodevices.googlecode.com/svn/trunk/baseflight@461 7c89a4a9-59b9-e629-4cfe-3a2d53b20e61
2013-10-28 23:49:06 +00:00
timecop@gmail.com 3bb1063001 fixed buzzer on rev5 boards;
added experimental gyro-based headfree boxes

git-svn-id: https://afrodevices.googlecode.com/svn/trunk/baseflight@429 7c89a4a9-59b9-e629-4cfe-3a2d53b20e61
2013-10-04 14:36:34 +00:00
timecop@gmail.com 800ce6bdf7 fixed a fuckup with yaw_rate that was caused by more 8bit leftover garbage
fixed althold vel/constrain typo thx Marcin
flight-tested this build on my shitcopter, CAREFUL flight testing may commence.

git-svn-id: https://afrodevices.googlecode.com/svn/trunk/baseflight@428 7c89a4a9-59b9-e629-4cfe-3a2d53b20e61
2013-10-04 01:51:31 +00:00
timecop@gmail.com edb0ef01b7 fixed mag gain during testmode (thanks pm1) and added some explicit float definitions to mag test code.
git-svn-id: https://afrodevices.googlecode.com/svn/trunk/baseflight@396 7c89a4a9-59b9-e629-4cfe-3a2d53b20e61
2013-09-12 10:50:13 +00:00
timecop@gmail.com 509e349e69 Whitespace/compiler warnings cleanups by Dominic Clifton;
Slight tweak of new althold defaults
NOT-flight-tested .hex committing so people can commence with althold testing.

git-svn-id: https://afrodevices.googlecode.com/svn/trunk/baseflight@391 7c89a4a9-59b9-e629-4cfe-3a2d53b20e61
2013-08-31 01:40:13 +00:00
timecop@gmail.com 3b8c1841f8 new SPI2 driver w/testcase
5883 and 6050 driver updates

git-svn-id: https://afrodevices.googlecode.com/svn/trunk/baseflight@363 7c89a4a9-59b9-e629-4cfe-3a2d53b20e61
2013-07-02 02:52:33 +00:00
timecop@gmail.com 57cbd784a9 a couple optimizations for dynamic HSE frequency - moved SetSysClock() to run after reset vector + bss init, and changed rcc which used hardcoded HSE_VALUE.
turn off leds/beeper before initializing pins to prevent flash at startup
uninitialized errorAngle fix in new PID


git-svn-id: https://afrodevices.googlecode.com/svn/trunk/baseflight@362 7c89a4a9-59b9-e629-4cfe-3a2d53b20e61
2013-07-02 00:58:50 +00:00
timecop@gmail.com e010e3a354 Cleaned up SetSysClock to remove duplicated code when configuring HSE or HSI
git-svn-id: https://afrodevices.googlecode.com/svn/trunk/baseflight@359 7c89a4a9-59b9-e629-4cfe-3a2d53b20e61
2013-06-30 06:25:24 +00:00
timecop@gmail.com e4ea700fe0 reverted cli line editing stuff - was more trouble than its worth, and caused issues with hercules
git-svn-id: https://afrodevices.googlecode.com/svn/trunk/baseflight@358 7c89a4a9-59b9-e629-4cfe-3a2d53b20e61
2013-06-29 15:48:43 +00:00
timecop@gmail.com d442c9dfb6 initial pass at gpio cleanup. removed almost all dependency on stdperiphlib (remaining exti).
slightly modified initial pin configuration, but this needs rework soon anyway.
couple spacing/line ending/formatting fixes in sonar driver file while fixing gpio there.

git-svn-id: https://afrodevices.googlecode.com/svn/trunk/baseflight@357 7c89a4a9-59b9-e629-4cfe-3a2d53b20e61
2013-06-29 14:09:54 +00:00
timecop@gmail.com 4bd505972d renaming of serial bool returning vars into isFoo(), also fixed bool returned as uint16_t type
git-svn-id: https://afrodevices.googlecode.com/svn/trunk/baseflight@354 7c89a4a9-59b9-e629-4cfe-3a2d53b20e61
2013-06-25 07:09:47 +00:00
timecop@gmail.com 539f2cb6db acctrim was broken because changes were never getting saved.
git-svn-id: https://afrodevices.googlecode.com/svn/trunk/baseflight@353 7c89a4a9-59b9-e629-4cfe-3a2d53b20e61
2013-06-22 09:11:41 +00:00
timecop@gmail.com c4a1c57b91 careful flight testing may commence
git-svn-id: https://afrodevices.googlecode.com/svn/trunk/baseflight@351 7c89a4a9-59b9-e629-4cfe-3a2d53b20e61
2013-06-20 01:17:20 +00:00
timecop@gmail.com 82130ca60f amazing patch from jef78m for cli set
git-svn-id: https://afrodevices.googlecode.com/svn/trunk/baseflight@350 7c89a4a9-59b9-e629-4cfe-3a2d53b20e61
2013-06-20 01:15:42 +00:00
timecop@gmail.com 3f8fc1b509 oops, this is NOT ready for public consumption yet.
git-svn-id: https://afrodevices.googlecode.com/svn/trunk/baseflight@305 7c89a4a9-59b9-e629-4cfe-3a2d53b20e61
2013-05-02 14:17:05 +00:00
timecop@gmail.com c26603dd72 some more minor updates from 2.2
added variable for gyro_cmpfm factor (mag) to configurables
changed gyro_cmpf factor to 600 (higher gyro influence)
got rid of GYRO_INTERLEAVE stuff (didn't work, obsolete)
got rid of applyDeadband hacks, invsqrt hacks, and other shit. ifdef'd original baseflight attitude/heading calcs w/new 2.2 routines
fixed cockup in altitude calculation w/applyDeadband
remaining: GPS

git-svn-id: https://afrodevices.googlecode.com/svn/trunk/baseflight@304 7c89a4a9-59b9-e629-4cfe-3a2d53b20e61
2013-05-02 14:07:52 +00:00
timecop@gmail.com bba9bc291f added some more configurable frobs to cli. commit before 2.2 merge.
git-svn-id: https://afrodevices.googlecode.com/svn/trunk/baseflight@288 7c89a4a9-59b9-e629-4cfe-3a2d53b20e61
2013-03-11 06:18:20 +00:00
timecop@gmail.com 600f50ecac added MSP_UID patch from cGiessen
added sending cell voltages (faked) via frsky telemetry by fiendie
two additional cli commands (aux and dump) from jef79m - aux allows setting switches from command line, dump creates a copy-pasteable config which can be sent to a new board.


git-svn-id: https://afrodevices.googlecode.com/svn/trunk/baseflight@283 7c89a4a9-59b9-e629-4cfe-3a2d53b20e61
2013-03-04 00:17:50 +00:00
timecop@gmail.com c88614046b reversed o/n meaning from previous commit to actually mean what I said :)
n = new rev (fullscale acc)
o = old rev (halfscale acc)


git-svn-id: https://afrodevices.googlecode.com/svn/trunk/baseflight@279 7c89a4a9-59b9-e629-4cfe-3a2d53b20e61
2013-02-22 15:57:29 +00:00
timecop@gmail.com bc627783f8 removed mpu6050_scale cli since it's now autodetected.
the value is now printed in the status command, after MPU6050 as MPU6050.n = new revision, MPU6050.o = old revision.

git-svn-id: https://afrodevices.googlecode.com/svn/trunk/baseflight@278 7c89a4a9-59b9-e629-4cfe-3a2d53b20e61
2013-02-22 11:04:32 +00:00
timecop@gmail.com fc185b8e15 rewrote mpu6050 revision sensing code to match that of eMPL from Invensense.
Also changed scalefactor for acc to 256/512 to match multiwii code. untested/etc, proceed with caution.

git-svn-id: https://afrodevices.googlecode.com/svn/trunk/baseflight@276 7c89a4a9-59b9-e629-4cfe-3a2d53b20e61
2013-02-21 08:59:27 +00:00
timecop@gmail.com 4c0fe94072 further accuracy improvement for mag calculation.
git-svn-id: https://afrodevices.googlecode.com/svn/trunk/baseflight@263 7c89a4a9-59b9-e629-4cfe-3a2d53b20e61
2013-02-07 04:59:29 +00:00
timecop@gmail.com d1d6a5d5ef very nice proper magnetometer vector rotation from crashpilot1000
git-svn-id: https://afrodevices.googlecode.com/svn/trunk/baseflight@261 7c89a4a9-59b9-e629-4cfe-3a2d53b20e61
2013-02-06 04:08:10 +00:00
timecop@gmail.com 785443789c third time's the charm (fixed + confirmed tiltmix gimbal)
git-svn-id: https://afrodevices.googlecode.com/svn/trunk/baseflight@251 7c89a4a9-59b9-e629-4cfe-3a2d53b20e61
2013-01-16 11:11:13 +00:00
timecop@gmail.com fc4693af3a let's try this again (simple gimbal sign fix)
git-svn-id: https://afrodevices.googlecode.com/svn/trunk/baseflight@250 7c89a4a9-59b9-e629-4cfe-3a2d53b20e61
2013-01-12 12:49:26 +00:00
timecop@gmail.com a1ac53c841 changed cpu to CBT6 in release build;
maybe fixed simplegimbal mixer;


git-svn-id: https://afrodevices.googlecode.com/svn/trunk/baseflight@249 7c89a4a9-59b9-e629-4cfe-3a2d53b20e61
2013-01-12 08:26:24 +00:00
timecop@gmail.com bd08f337e7 Ah, finally fixed spektrum stuff. after PWM rewrite, spektrum init ended up before pwm init, so when rcReadRawFunc was assigned, it was always set to PWM. oops. Thanks to Cerberis @ irc for the patch.
git-svn-id: https://afrodevices.googlecode.com/svn/trunk/baseflight@240 7c89a4a9-59b9-e629-4cfe-3a2d53b20e61
2013-01-05 01:13:18 +00:00
timecop@gmail.com 006e6629f6 Added GIMBAL_MIXTILT (16) to gimbal_flags. Setting gimbal_flags=16 will use "mixed" gimbal i.e. SERVO_MIX_TILT from MultiWii. Untested, but should work(tm).
git-svn-id: https://afrodevices.googlecode.com/svn/trunk/baseflight@239 7c89a4a9-59b9-e629-4cfe-3a2d53b20e61
2012-12-27 13:23:43 +00:00
timecop@gmail.com e7bc3cc38e oops.
spektrum support was broken, now fixed.

git-svn-id: https://afrodevices.googlecode.com/svn/trunk/baseflight@238 7c89a4a9-59b9-e629-4cfe-3a2d53b20e61
2012-12-24 14:54:37 +00:00
timecop@gmail.com af7e135d75 fix from frog32 for external adc channel allocation;
fix from mwc forum for frsky telemetry gps output

git-svn-id: https://afrodevices.googlecode.com/svn/trunk/baseflight@237 7c89a4a9-59b9-e629-4cfe-3a2d53b20e61
2012-11-12 09:08:16 +00:00
timecop@gmail.com 12dfa8915d slight improvement to motion threshold calculation
git-svn-id: https://afrodevices.googlecode.com/svn/trunk/baseflight@234 7c89a4a9-59b9-e629-4cfe-3a2d53b20e61
2012-10-27 07:34:45 +00:00
timecop@gmail.com 23acf529d7 implemented using one of RC inputs as ADC channel for power meter.
added MSP_ACC_TRIM stuff for android GUI.


git-svn-id: https://afrodevices.googlecode.com/svn/trunk/baseflight@231 7c89a4a9-59b9-e629-4cfe-3a2d53b20e61
2012-10-19 02:43:27 +00:00
timecop@gmail.com e59f639951 made gyrodiff for motion detection configurable, 0 = disabled
git-svn-id: https://afrodevices.googlecode.com/svn/trunk/baseflight@230 7c89a4a9-59b9-e629-4cfe-3a2d53b20e61
2012-10-14 00:34:23 +00:00
timecop@gmail.com 0976133f1f added acc_trim stuff into cli
spacing/indentation fixes
flyingwing is somewhat supported, reflect that in comment
added anti-moron gyro calibration routine... if model is getting moved while its arming... don't calculate gyro avearage because its gonna be wrong... example of fail see here: http://www.rcgroups.com/forums/showthread.php?t=1749966

git-svn-id: https://afrodevices.googlecode.com/svn/trunk/baseflight@229 7c89a4a9-59b9-e629-4cfe-3a2d53b20e61
2012-10-13 12:08:56 +00:00
timecop@gmail.com 9fc43d5357 fixed MPU6050 sig stuff, d'oh
added sensor axis orientation stuff to cli... not the most optimal way but surely one that uses least code, lol!

git-svn-id: https://afrodevices.googlecode.com/svn/trunk/baseflight@228 7c89a4a9-59b9-e629-4cfe-3a2d53b20e61
2012-10-08 13:50:48 +00:00
timecop@gmail.com 021b486916 added ability to swap sensor axises dynamically. still needs a sane way to configire in CLI, though.
adjusted all drivers for the new align stuff.
commented out default config setting values to zero - memset already did that.


git-svn-id: https://afrodevices.googlecode.com/svn/trunk/baseflight@227 7c89a4a9-59b9-e629-4cfe-3a2d53b20e61
2012-10-07 18:03:42 +00:00
timecop@gmail.com 193902079c moved some readonly strings to flash, thanks zyp
cleaned up frsky telemetry a bit with verbose telemetry ID names, changed loop timing a bit, added output for heading and voltage (when vbat is enabled). telemetry stuff is untested, so someone try it out.

git-svn-id: https://afrodevices.googlecode.com/svn/trunk/baseflight@226 7c89a4a9-59b9-e629-4cfe-3a2d53b20e61
2012-10-07 14:58:12 +00:00
timecop@gmail.com 005308b430 Applied patch from trunet for running at 64MHz off HSI for broken Chinese kcopter clones
status in cli now prints cpu MHz, 72 when running off crystal, 64 when running off intrc.
corrected WHO_AM_I check for mpu6050 when it's used on alternate address (AD0 high).
corrected PWM driver to consider CPU clock for timer prescalers - now things properly work below 72MHz
added a neat hack for pitch angle calculation so that it's not affected when roll reaches 90deg
added proper math for vector rotation instead of small-angle approximation

git-svn-id: https://afrodevices.googlecode.com/svn/trunk/baseflight@225 7c89a4a9-59b9-e629-4cfe-3a2d53b20e61
2012-10-06 14:40:24 +00:00
timecop@gmail.com 4a4c0d585d sign error in HEX6P mix.
git-svn-id: https://afrodevices.googlecode.com/svn/trunk/baseflight@224 7c89a4a9-59b9-e629-4cfe-3a2d53b20e61
2012-09-23 11:41:02 +00:00
timecop@gmail.com 1dea2b3b3b integrated tommie's eeprom sanity check. much less chances of new firmware screwing up due to old config version.
fixed pwm init for airplane mode mistakenly deleting motors from the mix. flyingwing should really work now.
removed led debug from althold


git-svn-id: https://afrodevices.googlecode.com/svn/trunk/baseflight@223 7c89a4a9-59b9-e629-4cfe-3a2d53b20e61
2012-09-21 04:12:17 +00:00
timecop@gmail.com 9d5bfdb60b forgot to add lpf_for_velocity into tunables for new althold
git-svn-id: https://afrodevices.googlecode.com/svn/trunk/baseflight@222 7c89a4a9-59b9-e629-4cfe-3a2d53b20e61
2012-09-20 01:47:22 +00:00
timecop@gmail.com 2544c290ae enabled mahowik althold by default. let the users figure it out.
git-svn-id: https://afrodevices.googlecode.com/svn/trunk/baseflight@220 7c89a4a9-59b9-e629-4cfe-3a2d53b20e61
2012-09-19 11:14:12 +00:00
timecop@gmail.com 817eb09b8a fixed bug in soft_i2c driver (doesnt affect anyone except testing)
added VAR_FLOAT to cli - now allows setting/printing float vars
fixed newlines in pwm driver
exported new althold tunables to cli (some are floats) - still not enabled by default until I know it works

git-svn-id: https://afrodevices.googlecode.com/svn/trunk/baseflight@219 7c89a4a9-59b9-e629-4cfe-3a2d53b20e61
2012-09-18 13:29:35 +00:00
timecop@gmail.com f3ce558871 flying wing servo output fix
git-svn-id: https://afrodevices.googlecode.com/svn/trunk/baseflight@218 7c89a4a9-59b9-e629-4cfe-3a2d53b20e61
2012-09-12 10:39:30 +00:00
timecop@gmail.com a139b96de6 fixed bug with MTK init - stuff was sent without delay while changing baudrates, and it would wreck stuff - changing rate mid-buffer. oops. should work now.
git-svn-id: https://afrodevices.googlecode.com/svn/trunk/baseflight@216 7c89a4a9-59b9-e629-4cfe-3a2d53b20e61
2012-09-12 02:15:14 +00:00
timecop@gmail.com 70884d69d5 bring back flying wing w/all configuration options
config version bumped, settings cleared.

git-svn-id: https://afrodevices.googlecode.com/svn/trunk/baseflight@213 7c89a4a9-59b9-e629-4cfe-3a2d53b20e61
2012-09-09 11:35:35 +00:00
timecop@gmail.com b94c13b1c5 allow using GPS in PWM input mode. This (obviously) reduces number of available channels by 2.
I heard thats not a problem since tarduino only allows 4RC+2AUX channels anyway! If you want more, upgrade to PPM.
So you use RC3/4 for GPS, and connect the rest of the channels as usual. Channels used for GPS uart are
skipped, so no changes to 'map' are necessary. Simply connect in order.

git-svn-id: https://afrodevices.googlecode.com/svn/trunk/baseflight@212 7c89a4a9-59b9-e629-4cfe-3a2d53b20e61
2012-09-08 12:53:55 +00:00
timecop@gmail.com 4ed57b2696 fix for airplane pwm mode - variable wasn't initialized, resulting in non-working motors on some compilers.
synced angle/horizon mode stuff from mwc. no idea what it does.
perhaps the most important part of this update:
-errorAngle = constrain(2 * rcCommand[axis] - GPS_angle[axis], -500, +500) - angle[axis] + cfg.angleTrim[axis];
+errorAngle = constrain(2 * rcCommand[axis] + GPS_angle[axis], -500, +500) - angle[axis] + cfg.angleTrim[axis];
(which means GPS might actually work).

git-svn-id: https://afrodevices.googlecode.com/svn/trunk/baseflight@209 7c89a4a9-59b9-e629-4cfe-3a2d53b20e61
2012-09-08 08:15:16 +00:00
timecop@gmail.com 3cd8e4e3f6 added printf() support via SpareTimeLabs printf lib. this cleaned up some mess inside cli.c
example of usage: http://bcas.tv/paste/results/xToE9w26.html
hover-tested quadx loaded as custom mix, works.

git-svn-id: https://afrodevices.googlecode.com/svn/trunk/baseflight@207 7c89a4a9-59b9-e629-4cfe-3a2d53b20e61
2012-09-06 06:35:02 +00:00
timecop@gmail.com 98cba890e1 moving towards custom mixer table and proper fixedwing mixer.
refactored all of mixer.c to use tables instead of hardcoded mix.
custom mixer is stored in flash, but currently has no UI to configure it.
do not choose mixer CUSTOM in console.

hover-tested QUADX, if upgrading anything else, please carefully check motor response first, preferably without props on heavy models.
tec

git-svn-id: https://afrodevices.googlecode.com/svn/trunk/baseflight@206 7c89a4a9-59b9-e629-4cfe-3a2d53b20e61
2012-09-05 23:44:55 +00:00
timecop@gmail.com fef43457c0 buffer overrun in cli parser, increased command buffer. oops. thanks nicodh.
git-svn-id: https://afrodevices.googlecode.com/svn/trunk/baseflight@205 7c89a4a9-59b9-e629-4cfe-3a2d53b20e61
2012-09-05 06:58:57 +00:00
timecop@gmail.com b2bc4bf9e6 Finished merging GPS autoconfig + ubx protocol code.
use set gps_type=X in cli to configure, where X=0 if NMEA (no special config), X=1 if UBX (enters ubx binary mode), X=2 if MTK (sets up MTK for 5Hz operation).
changed default GPS rate to 115200 baud
added baudrate reset stuff to UART driver for GPS autoconfigure
NONE of this is tested (except UBX working on my window)

git-svn-id: https://afrodevices.googlecode.com/svn/trunk/baseflight@204 7c89a4a9-59b9-e629-4cfe-3a2d53b20e61
2012-09-04 16:26:46 +00:00
timecop@gmail.com 80d7ba604b merged multiwii GPS code from 1097. still no support for UBX, or GPS auto-config, soon.
added interrupt pins from mag/mma/mpu for rev4 hardware. nothing done with them yet - candidates for EXTI use
added tx buffer to UART2 (gps) in preparation for auto-config


git-svn-id: https://afrodevices.googlecode.com/svn/trunk/baseflight@203 7c89a4a9-59b9-e629-4cfe-3a2d53b20e61
2012-09-04 09:13:59 +00:00
timecop 70db9006af mag init after gyro
git-svn-id: https://afrodevices.googlecode.com/svn/trunk/baseflight@202 7c89a4a9-59b9-e629-4cfe-3a2d53b20e61
2012-08-23 23:50:52 +00:00
timecop fd9d077d8b I2C bypass mode permanently enabled on MPU6050.
git-svn-id: https://afrodevices.googlecode.com/svn/trunk/baseflight@201 7c89a4a9-59b9-e629-4cfe-3a2d53b20e61
2012-08-22 23:59:34 +00:00
timecop 10570a6579 i2c no-ack fix (never actually worked properly, fixed now)
bumped config version, or else r198 crashed on update from recent version
airplane mode config passed to drv_pwm


git-svn-id: https://afrodevices.googlecode.com/svn/trunk/baseflight@199 7c89a4a9-59b9-e629-4cfe-3a2d53b20e61
2012-08-21 05:41:58 +00:00
timecop e6cb4a0b1c cleaned up bmp085 driver
added ms5611 driver
refactored pressure sensor subsystem to allow multiple sensors
couple changes in PWM driver to make motor/servo arrangement for airplane mode more intuitive
moved MAX_MOTORS/MAX_SERVOS etc into drv_pwm.h
staring to merge back in airplane/flyingwing mixes
fix for tri servo display - mwc moved it to servo[5] again, gui was broken, function not.
will probably implement custom mixer soon (motors only, no servos)


git-svn-id: https://afrodevices.googlecode.com/svn/trunk/baseflight@198 7c89a4a9-59b9-e629-4cfe-3a2d53b20e61
2012-08-20 10:25:10 +00:00
timecop ee76242525 rewritten and cleaned up PWM driver
this has been hover-tested.
all current functionality *should* work even though the driver has been rewritten.
please test carefully, especially servo configurations!

git-svn-id: https://afrodevices.googlecode.com/svn/trunk/baseflight@197 7c89a4a9-59b9-e629-4cfe-3a2d53b20e61
2012-08-17 06:48:30 +00:00
timecop 288d0ca4a6 committing built firmware w/currentTime fix
git-svn-id: https://afrodevices.googlecode.com/svn/trunk/baseflight@195 7c89a4a9-59b9-e629-4cfe-3a2d53b20e61
2012-08-15 08:48:07 +00:00
timecop e894dba995 fixed bug in mpu6050 accel code
added mpu6050 acc scale factor fixup for es/non es chips (exposed as cli option as well)


git-svn-id: https://afrodevices.googlecode.com/svn/trunk/baseflight@191 7c89a4a9-59b9-e629-4cfe-3a2d53b20e61
2012-08-07 08:00:16 +00:00
timecop ecda218e8f added support for l3g4200d i2c gyro, autodetected
added motors off in hardfault handler, so we drop to the ground on hardfault.


git-svn-id: https://afrodevices.googlecode.com/svn/trunk/baseflight@190 7c89a4a9-59b9-e629-4cfe-3a2d53b20e61
2012-08-05 01:57:51 +00:00
timecop 75adda0597 allow 0 for looptime to go back to not-rate-limited loop.
git-svn-id: https://afrodevices.googlecode.com/svn/trunk/baseflight@183 7c89a4a9-59b9-e629-4cfe-3a2d53b20e61
2012-07-21 07:06:19 +00:00
timecop c98113b82c synced with mwc 2.1. it's suprising how many "new" things in 2.1 didn't actually matter on a real platform.
removed camtrig stuff since it wasnt possible. somewhat replaced with aux forwarding (see below)
2.1 buzzer code changed, untested.
removed flying wing mixer. nobody used that. 
added alt_hold_throttle_neutral, nav_slew_rate and looptime configuration to cli. default looptime set to 3000. changed default gyro_cmpf to 400 to sync with 2.1.
increased bmp085 oversampling
added gimbal_flags (bit 4 set) flag which, in PPM mode, forwards AUX1..4 to the lower 4 PWM outputs instead of using them as motors. set gimbal_flags=8 to test it out. output is fixed to 50Hz.
merged 2.1 gps changes (not many)
casting in gyro smoothing (nobody uses that anyway)
calibrate accel in gimbal mode, set smallangle in gyro-only mode
vtail4 mixer fix
flight tested on quadx w/ppm.


git-svn-id: https://afrodevices.googlecode.com/svn/trunk/baseflight@182 7c89a4a9-59b9-e629-4cfe-3a2d53b20e61
2012-07-20 14:53:15 +00:00
timecop e70d7b5d16 added softi2c source file (oops)
changed gpio speeds to 2mhz from 50, nothing is toggling at 50mhz here. reduce ringing/noise.

git-svn-id: https://afrodevices.googlecode.com/svn/trunk/baseflight@181 7c89a4a9-59b9-e629-4cfe-3a2d53b20e61
2012-07-14 07:43:18 +00:00
timecop 23d11299b8 added test driver for software i2c. disabled by default. no, that wasn't the cause of cycletime jumps.
increased flash size to 128k, moved config data in last kbyte of that. as a result all settings are reset, please save them.
corrected hex6x mixer.
added telemetry to makefile.

git-svn-id: https://afrodevices.googlecode.com/svn/trunk/baseflight@180 7c89a4a9-59b9-e629-4cfe-3a2d53b20e61
2012-07-14 02:00:39 +00:00
timecop 829331c020 added pidalt stuff into cli
added a modifier for set (type "set *") to see min/max values for each parameter. this is for gui stuff
bumped config VERSION
fixed 0xffff - now stuff in drv_pwm, after it was mentioned to me for the  3rd time :p
replaced some uint8_t -> uint32_t for loop counters - saving 4 to 8 bytes of flash each time. thanks goes to thee 35+ years of C experience kicad guy.
turned bitfiends into a regular struct - instant 100byte flash size reduction

git-svn-id: https://afrodevices.googlecode.com/svn/trunk/baseflight@174 7c89a4a9-59b9-e629-4cfe-3a2d53b20e61
2012-07-02 15:47:12 +00:00
timecop c998f5ca67 added support for outputting FrSky telemetry by silpstream @ rcgroups
feature TELEMETRY to enable it. when armed, telemetry is sent out the TX pin. It must be connected to 'Rx' pin of FrSky telemetry receiver via a level shifter. When disarmed, port goes back to 115200 bps for GUI.
fixed a typo in imu.c introduced by  GYRO_INTERLEAVE junk.
todo: just switch serial speed instead of reinitializing everything.

git-svn-id: https://afrodevices.googlecode.com/svn/trunk/baseflight@173 7c89a4a9-59b9-e629-4cfe-3a2d53b20e61
2012-07-01 15:32:45 +00:00