Commit Graph

505 Commits

Author SHA1 Message Date
Michael Jakob 337d9823a3 Final reduction of targets 2017-05-29 21:08:38 +02:00
Michael Jakob 6050bd4600 Rename FuriousFPV targets (prefix all with FF_) 2017-05-29 20:48:25 +02:00
Michael Jakob ee582df432 Adding various PikoBLX based FuriousFPV targets 2017-05-29 20:48:22 +02:00
Michael Jakob c68e2e1bbf FuriousFPV PIKOF4 target support 2017-05-29 08:01:53 +02:00
Michael Jakob c1052d1c4c Support for FuriousFPV FORTINI F4 2017-05-27 13:51:10 +02:00
Anders Hoglund 4e8a4a29b5 Run compiler with -Werror only on Travis. 2017-05-24 01:07:13 +02:00
Anders Hoglund 32b4693a50 Disallow any compiler warnings warnings by turning them into hard errors by the -Werror option. 2017-05-23 23:42:53 +02:00
Michael Keller 468217c7e8 Merge pull request #3115 from ledvinap/fix-SITL
Fix SITL
2017-05-23 23:00:54 +12:00
Petr Ledvina 919f0caa6b Fix SITL on Cygwin + minor cleanup 2017-05-22 13:25:45 +02:00
mikeller 77907b5c1d Switched F4 / F7 targets to use targeted optimisation as well. 2017-05-21 00:22:31 +12:00
Petr Ledvina 099bd97f0a Optional -static SITL
Use OPTION=SITL_STATIC if static SITL build is necessary
2017-05-16 15:28:07 +02:00
Petr Ledvina a8c8a413aa Select proper core for STM32F7 2017-05-16 15:27:25 +02:00
rav d9909b91d3 enable frequency analysis and automatic, dynamic changing of notch filter frequencies
change F3 from CM1 to CM4
add debug flags for FFT
add bandpass filter
add different filtering apply function
add feature DYNAMIC_FILTER
replace mode GTUNE with DYNAMIC FILTER
move gyro frequency analysis into gyro loop instead of own task
2017-05-11 16:10:29 +02:00
Sami Korhonen 5214f4bdec Rename HAL dshot file and cleanup 2017-05-06 13:37:27 +03:00
Martin Budden b1f290d218 Split blackbox encoding into separate module 2017-05-01 08:57:44 +01:00
jflyper aec4e7094a Remove inverter.c from STM32F7xx_COMMON_SRC
It has been there since F7 epoch (#1124).
2017-04-30 11:37:30 +09:00
Michael Jakob 3bb2dd1fee F7 WS2811 make cleanup 2017-04-25 07:37:26 +02:00
Dominic Clifton 970f193dd7 CF/BF - Extract cli settings so they can be re-used.
CF/BF - Save 1280 bytes of flash and delete over 300 lines of code by
removing giant switch statement and static variables in the CLI.

fix

CF/BF - Remove some conditional code because there is a copy of every PG
so it will always be found*.

* unless a developer makes an error in the value table by specifying an
invalid PG.

CF/BF - Remove final usages of getCurrentAndDefaultConfigs to save more
flash space.

CF/BF - Change CLI command 'dump showdefaults' to simply 'dump defaults'.

* This will save a few bytes of flash space due to string re-use of the
'defaults' string.

CF/BF - Save a few more bytes by re-using the 'defaults' string again.

CF/BF - Fix CLI not being size optimized.

* The file had moved but the makefile was not updated to reflect that.

CF/BF - Add 'fc_init.c' and 'settings.c' to the size optimizations list.

CF/BF - Add some config source files to the size-optimized list.

CF/BF - De-duplicate CR/LF code by using appropriate methods. Promote
additional string re-use.

* This saves quite a lot of space when the file is size optimized, but grows it otherwise.

CF/BF - Further flash savings by removing more CR/LF on the
cliDump/cliDefaultPrintf format strings.

* It turns out that all the format strings ended in CR+LF so they could
all be removed.

CF/BF - Fix LF+CR being used instead of CR+LF for further flash savings.
2017-04-21 12:34:13 +12:00
Hydra 723831b579 SPRACINGF3NEO - Use RTC6705 clk hack.
CF/BF - Fix typo in max7456DmaInProgress.  Always define an
implementation even when there is no TX-DMA.

CF/BF - Ensure that max7456 communication does not disrupt RTC6705
communication when using the same SPI port for both.

CF/BF - Port RTC6705 to use the VTX API.

* Support VTX channel/band/power on OSD for ALL vtx APIs - previously it only supported RTC6705.
* Remove all FEATURE_VTX usage.
* Remove all `#define VTX` usage.

Note that due to the async nature of tramp/smartaudio it's not possible
to know the current band/channel after requesting a change (as the
request hasn't been processed) so it makes no sense to try and save the
config - and on the tramp/smartaudio vtx the vtx maintains it's state.
So on an RTX6705 equipped FC the user should now MANUALLY save the
config using the save config stick position.

CF/BF - Move CMS for RTC6705 into vtx_rtc6705.c for consistency with
other VTX CMS menus.

CF/BF - Update RTC6705 via SOFT SPI to use VTX API.

* Achieved by simply aligning the API at the driver level and removing
all legacy conditional compilation checks.

CF/BF - Use new IO for RTC6705 CLK Hack

CF/BF - Port VTX button from CF v1.x.

Features:
* Channel Cycle
* Band Cycle
* Power Cycle
* Save Settings
* Works with any VTX using VTX API.

CF/BF - Allow support for Internal and External VTX - External takes
precedence when configured.

CF/BF - Fix display of VTX power in CMS.

* Issue occured when CMS was transitioned from integer to list of
strings.

CF/BF - Disable SMARTAUDIO and TRAMP on the SPRacingF3NEO due to flash
size.

CF/BF - Cleanup const usage of bass-by-value parameters.  Cleanup
naming.

CF/BF - Cleanup naming.  Removing noise-words. Improving consistency.

CF/BF - Improve readability by further naming cleanups.

CF/BF - Remove some magic numbers in the RTC6705 VTX code.

CF/BF - Use braces on some procedural macros.

CF/BF - Improve code readability by renaming rtc6705SetChannel to
rtc6705SetBandAndChannel.

CF/BF - Remove editor mishap.

CF/BF - Make the rtc6705Dev variable static.

CF/BF - remove duplicate state variablertc6705Dev_t - vtxDevice_t had
all we needed.  Use brackets on some procedural style macros.  Make all
the vtx vtable static const.

CF/BF - making some declarations const.

CF/BF - Fix vtx_power maximum value (out by one).
2017-04-21 11:49:31 +12:00
Martin Budden 2493c214b0 Created subdirectories in drivers directory 2017-04-12 08:06:22 +01:00
Hydra be063ebbbf CF/BF - Remove usage of USE_FC based on PR discussion decisions. Add
USE_VIRTUAL_CURRENT_METER.
2017-04-12 00:39:27 +01:00
Hydra c693f25052 CF/BF - Reduce osd slave dependencies on FC code. 2017-04-12 00:39:27 +01:00
Hydra 2b1dac4c6d CF/BF - First cut of allow building of the OSD SLAVE board without all
the flight controller code.

Likely the dependencies can be further improved.  This is a
minimal-impact solution while there are a lot of other Betaflight PR's
still pending.
2017-04-12 00:39:27 +01:00
Michael Keller ce8c5fbd79 Merge pull request #2760 from mikeller/reworked_altitude_estimation
Reworked altitude estimation. Made it work when ACC is disabled.
2017-04-10 13:00:16 +12:00
Hydra 6485dff6f0 CF/BF - Add SPRacingF3OSD to travis target group. 2017-04-09 14:17:59 +01:00
Hydra ca5bafeab9 CF/BF - SPRACINGF3OSD initial target support inc support for OSD SLAVE via MSP_DISPLAYPORT.
OSD is tested and working on an SPRACINGF3EVO stacked with an SPRACINGF3OSD.
2017-04-09 14:17:17 +01:00
mikeller 6a03b48e7f Reworked altitude estimation. Made it work when ACC is disabled. 2017-04-08 22:54:44 +12:00
cs8425 120fa21693 implement SITL in gazebosim with ArduCopterPlugin
need implement fake eeprom & fake IO

need implement fake system function

can compile, stuck in isEEPROMContentValid()

EEPROM in memory work

EEPROM as file should work

fix some complie warning

MSP over TCP work (add dyad.c)

a little clean up

fix FLASH_CONFIG_Size in ld script & implement some pwmout

IO to simulator work!! need to check direction & scale!!

can fly but Gyro buggy

move dyad.c

fix busy-loop (limit to max 20kHz)

can simulatie in different speed now! (hard code)

add option for IMU calculation

add README.md

move dyad.c and fix F3 overrun the flash size

explanation SITL in README.md and reuse CFLAGS, ASFLAGS
2017-04-05 18:22:59 +08:00
Magnus Ivarsson e88e251df9 major refactor of the unit test makefile
- Specify source files in variables instead of manually writing
   the make file rules, this removes a lot of duplication
 - Use separate folders for all tests allowing for tests and common
   source files to be built with different settings (defines)
2017-04-04 00:06:56 +02:00
Martin Budden c9fd4ec428 Merge pull request #2790 from unitware/bf-test-verbosity
control build verbosity for the unit tests
2017-04-03 20:46:59 +01:00
Hydra ead5d9582c BF - Add SPRACINGF4EVO to list of official targets. 2017-04-02 09:06:38 +01:00
Hydra 07d355a18c CF/BF - Add SPRacingF4EVO to travis group 4 targets. 2017-04-02 09:05:21 +01:00
Magnus Ivarsson 9e77f9c4c8 control build verbosity for the unit tests 2017-03-31 16:57:56 +02:00
Martin Budden 9a3cad9ca3 Further work on gyro SPI selection 2017-03-26 10:10:10 +01:00
Magnus Ivarsson b703bcef5a Fix issue #2707, travis did not fail if build TARGET=.. failed. 2017-03-23 12:09:08 +01:00
Magnus Ivarsson 6622b36af8 Speedup build by grouping the builds in a few groups to be run in parallell 2017-03-22 12:05:40 +01:00
Hydra adaae967ef CF/BF - SPRACINGF3NEO - Add to official target list. 2017-03-20 21:19:01 +00:00
Hydra 067d3c0ac2 CF/BF - First cut of Current/Voltage/Battery cleanup.
many refactorings, bugs squished, concerns separated,
single-responsibility violations fixed and performance optimizations.
2017-03-19 10:40:03 +00:00
Michael Keller 9b19e99e56 Merge pull request #2539 from mikeller/make_target_mk_consistent
Make target.mk consistent.
2017-03-16 13:21:38 +13:00
Magnus Ivarsson b13d4694bb Combine ibus serial rx and ibus telemetry on the same fc uart on a single pin.
```
+---------+
| FS-iA6B |
|         |
| Ser RX  |---|<---\       +------------+
|         |        |       | FC         |
| Sensor  |---[R]--*-------| Uart TX    |
+---------+                +------------+
```
R = 10Kohm, Diode 1N4148 or similar.

Both uart tx and rx channels are used so it's not possible to use the spare pin for rx of something else.

Configure the serial port like this to get both serial rx and ibus telemetry on the same port:
```
serial 1 4160 115200 57600 115200 115200
```

It is still possible to run the serial rx and ibus telemetry on two uarts like before, an example:
```
serial 1 64 115200 57600 0 115200
serial 2 4096 115200 57600 115200 115200
```
2017-03-13 21:43:37 +01:00
Martin Budden f1ce19167f Converted target config.c files to PG - PG CLI 6 (#2578)
Converted CLI and target config.c files to PGs
2017-03-08 23:26:37 +00:00
Michael Keller 243bbac466 Amended to reflect outcome of discussion. 2017-03-07 15:40:14 +13:00
Martin Budden b8d6fb29df Fixed warnings in ARM math library 2017-03-06 06:11:49 +00:00
J Blackman 792941606f Initial preparation for cleaning up multiple files per MCU (#2500)
* Initial preparation for cleaning up multiple files per MCU

* Combined DSHOT for F3 and F4 (F7 todo)

* Build fixes (mixed some adjustments needed in transponder_ir.c)

* Fix F7 warnings/bugs

* Updated timer periods for transponder.

Fixed FURY including old pwm_output files.

* Added method to calculate prescaler and period on the fly for varying clock speeds.

This can be used for overclocking :)

* Consolidated led_strip

* Moved led strip to use system clock for timing (allowing overclocking)

* Fixed incorrect channel, and removed comparison warning.

* More cleanup

* Fix KIWIF4 target

* Cleaned up target.mk files
2017-03-01 19:50:23 +00:00
Martin Budden 6b27f10c94 Added PG config definitions 6 2017-02-27 06:27:01 +00:00
Martin Budden b8317f53c6 Merge pull request #2494 from blckmn/bb_enum_dedupe
Removing duplicate bb device enum
2017-02-26 14:48:27 +00:00
mikeller ca67cf1990 Added USB disconnect pulse for F4 / F7. 2017-02-26 13:19:42 +00:00
blckmn 1425241d61 Removing duplicate bb device enum
Changing SDCARD condition to that suggested by @mikeller
Changed make sample to make official
2017-02-26 20:59:42 +11:00
Martin Budden ea2ec8b069 Added hooks for gyro data analysis 2017-02-23 15:52:26 +00:00
Martin Budden 2828e26693 Fix makefile 2017-02-22 21:09:56 +00:00