Commit Graph

492 Commits

Author SHA1 Message Date
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
Martin Budden 9277a39dcf Preliminary F446 support 2017-02-22 15:37:48 +00:00
borisbstyle de3d1d527d Merge branch 'master' into patch_v3.1.6 2017-02-20 14:40:43 +01:00
Anders Hoglund 90edb93238 Makefile cleanup. Remove the concept of HIGHEND and the HIGHEND_SRC list. 2017-02-13 17:48:53 +01:00
jflyper 4bdbed9b8b Moved USE_SOFTSERIALx to target.h 2017-02-11 22:14:41 +09:00
Martin Budden f2e5c7d0b4 Split RC adjustments into separate module 2017-02-03 10:49:27 +00:00
borisbstyle 51b19855dd Merge tag 'v3.1.2' 2017-02-02 00:23:33 +01:00
borisbstyle 58bcb981ed Decouple min_check from throttle // Add modern expo calculation to throttle curve 2017-02-01 23:53:29 +01:00
Martin Budden ae9fc8a58d Changed back to using -Ofast optimisation 2017-01-31 14:20:38 +01:00
Martin Budden 7521cd0fcb Reviewed and revised compiler speed optimisations 2017-01-31 14:20:36 +01:00
Martin Budden ca11e3de8e Moved gps_conversion to common/ directory 2017-01-31 14:20:33 +01:00
Martin Budden 974037c150 Parameter groups EEPROM migration 2017-01-31 14:20:23 +01:00
Martin Budden c190c55ce3 Changed back to using -Ofast optimisation 2017-01-31 14:20:20 +01:00
Martin Budden 34fcf7666a Reviewed and revised compiler speed optimisations 2017-01-31 14:20:18 +01:00