Commit Graph

111 Commits

Author SHA1 Message Date
Dominic Clifton 8c3a869251 Update CLI so that you can dump all, master or profile settings.
Cleanup '...' strings to reduce binary size.  Change version
information.

With this change it's much more obvious what is and what is not included
in a profile.

Examples:

dump
dump profile
dump master
2014-08-02 12:39:18 +01:00
Dominic Clifton 582503c0e6 Delete unused pwm rssi code - rssi adc is used instead since the rate
used (8khz) by some frsky receivers is too fast to be detected using the
pwm rssi code without bogging down the cpu in interrupt handlers.
2014-08-02 01:38:09 +01:00
Dominic Clifton 25ede3e6e0 Fix PWM in RSSI - accidentally excluded when adding CJMCU support. 2014-08-02 00:43:06 +01:00
Dominic Clifton 4d9a672d9c CC3D / NAZE - Adding support for hardware controlled inverter for use by
SBUS RX.
2014-08-02 00:43:06 +01:00
Dominic Clifton 94784dfa04 STM32F30x - Update compiler flags. Disable -pedantic on F30x targets
due to the hundreds of warning the CMSIS library generates when it is
enabled.
2014-08-01 22:06:39 +01:00
Dominic Clifton 2d6a61c8c7 Remove -Wshadow, the warnings are not useful.
See https://lkml.org/lkml/2006/11/28/253
2014-08-01 19:58:39 +01:00
Dominic Clifton 61bdc2ad5d Fixed problem with debug build and _sbrk, caused by missing -lc linker
option.

Re-ordered some makefile statements to be in-line with baseflight for
easier merging.
2014-08-01 18:39:47 +01:00
Dominic Clifton b96d1ae71d Update makefile so it builds with DEBUG=GDB without _sbrk linker error.
Enable additional warnings.

Later commits will fix warnings.
2014-08-01 14:12:39 +01:00
Paul Fertser 900f872058 Makefile: switch to newlib-nano
This makes the binary considerably smaller (73852 text with gcc
4.7.3, 71620 text with gcc 4.9.0 from TNT).

Build-tested only.

Signed-off-by: Paul Fertser <fercerpav@gmail.com>
2014-08-01 12:29:00 +01:00
Paul Fertser 941b42a269 Makefile: link with -nostartfiles
This saves a bit more space and a reasonable thing to do since a
custom startup is used anyway.

Build-tested only.

Signed-off-by: Paul Fertser <fercerpav@gmail.com>
2014-08-01 12:28:55 +01:00
Paul Fertser 76f4f31cf3 Make code warnings-free with -pedantic
This removes a function that's no longer used, and inline specifiers
from include file (where they're useless anyway). This makes the whole
default project warnings-free with -Wall -pedantic.

Signed-off-by: Paul Fertser <fercerpav@gmail.com>
2014-08-01 12:28:44 +01:00
Paul Fertser f218d3c040 Makefile: enable LTO
This rearranges Makefile a bit and enables Link Time Optimisation
which leads to a smaller code (77724 text with gcc 4.7.3).

Unconditionally adding -ggdb3 doesn't affect code size anyhow as all
the debugging info is stored in separate sections.

Build-tested only.

Signed-off-by: Paul Fertser <fercerpav@gmail.com>

Conflicts:

	Makefile
2014-08-01 01:25:16 +01:00
Dominic Clifton 326a10b1dc Allow autotune to be compiled in/out. 2014-08-01 01:14:23 +01:00
Dominic Clifton a6f4633272 Show sizes after build. 2014-08-01 01:07:06 +01:00
Dominic Clifton 1d5ef51373 CJMCU - Add compass driver. Update I2C configuration. Use PPM and
Brushed motors by default.
2014-08-01 00:56:28 +01:00
Dominic Clifton 125f6d1450 CJMCU - Allow various features to be compiled out to support. 2014-08-01 00:18:37 +01:00
Dominic Clifton 8f473f9b20 Initial support for CJMCU target (work-in-progress, compiles but doesn't link yet) 2014-07-31 14:01:01 +01:00
Dominic Clifton 5f16cfb72a CC3D - Support MPU6000 Gyro/Acc and SPI 1/2. 2014-07-17 22:12:21 +01:00
Dominic Clifton 1fb75890d5 Initial OpenPilot CC3D commit. 2014-07-16 01:06:09 +01:00
Dominic Clifton 623da881bc Removed apparently unneeded PRECIOUS statement (OSX).
Output files were being left in the working directory.

Build needs to be tested on cygwin, if it fails find a different
solution or revert this commit.
2014-07-01 18:52:11 +01:00
Dominic Clifton 364ada8110 Keep .s files so that compiler output can be easily verified. 2014-07-01 18:50:26 +01:00
Dominic Clifton 8d0509dbfb Move altitude hold code into separate files. 2014-06-21 23:57:14 +01:00
Dominic Clifton 9afcb20b7e Cleanup mismatch of buzzer/beeper terminology. Beep and Beeper should
be used from now on.
2014-06-21 23:32:58 +01:00
Dominic Clifton 1730e3dfd3 Relocated led strip user code into separate file.
Added documentation.

Added LED_STRIP feature, can only be enabled under certain circumstances
depending on target due to pin/timer mappings - see documentation.
2014-06-09 19:11:31 +01:00
Dominic Clifton 3c09b6a8c7 STM32F30x - Support WS2811 LEDs. 2014-06-08 15:43:00 +01:00
Dominic Clifton 578585db74 Extract STM32F10x specific WS2811 code into separate file, ready for
STM32F30x port.
2014-06-08 15:42:49 +01:00
Dominic Clifton da52b2d67c Hack WS2811 led strip. Proof-of-concept. 2014-06-08 12:58:18 +01:00
Dominic Clifton ad1b7dd216 Update Olimexo to support a 10DOF board.
Sensors on it are: MPU6050 HMC5883L BMP085.

BMP085 not connected to GPIO pins.
2014-06-08 12:57:30 +01:00
Dominic Clifton fd9d58110b Disable unused LED ring code.
Although it was compiled in for the NAZE target the ledringDetect()
method is never called.  Removing the feature for now too.
2014-06-07 16:53:25 +01:00
Dominic Clifton 32622da0ab Continuation of extracting peripheral configuration into drivers. 2014-06-04 14:53:34 +01:00
Dominic Clifton 8f2da892a6 Extract led and buzzer hardware initialisation from system.c. 2014-06-02 19:57:49 +01:00
Dominic Clifton d407a4d15e Start to break up drv/system.c to avoid #ifdef. 2014-06-02 18:43:47 +01:00
Dominic Clifton 7f027e7e24 Update makefile to use target specific files.
This is an alternative to #ifdef's everywhere which is getting out of
hand.

Confirmed that the VCP is working on the STM32F3Discovery board and
ChebuzzF3 variant.
2014-06-02 18:13:28 +01:00
Dominic Clifton c84d03d24d Update makefile for non-NAZE32PRO targets. Enable VCP on
STM32F3DISCOVERY.
2014-06-02 13:16:40 +01:00
Dominic Clifton 3f8a6c0e20 Add VCP driver (work in progress) 2014-06-02 01:54:25 +01:00
Dominic Clifton 4b437e8e08 Relocate battery code to sensors directory. 2014-06-01 16:58:16 +01:00
Dominic Clifton 805c9b4251 Update Makefile to place .hex files in 'obj' instead of 'obj/main'.
Latest naze binary.

Removing other binaries, git repo isn't really the place to store
binaries and they keep getting in the way.  This is will be kept here
until the configurator is updated.
2014-05-31 23:27:09 +01:00
Dominic Clifton 14448f4734 Merge branch 'naze32pro' - work in progress
Conflicts:
	Makefile
2014-05-31 22:50:05 +01:00
Dominic Clifton d19a5e7046 Cleanup project structure. Update unit test Makefile to place object
files in obj/test
2014-05-31 22:43:06 +01:00
dongie a3476cf59c Remove FY90Q support.
Conflicts:
	Makefile
	src/board.h
	src/drivers/adc_fy90q.c
	src/drivers/pwm_fy90q.c
	src/drv_adc.h
	src/sensors.c
	src/startup/startup_stm32f10x_md_fy90q.s
2014-05-30 09:45:15 +01:00
Dominic Clifton d0ec7e25ce Merge branch 'master' into autotune
Conflicts:
	obj/cleanflight_CHEBUZZF3.hex
	obj/cleanflight_NAZE.hex
	obj/cleanflight_OLIMEXINO.hex
2014-05-28 13:37:40 +01:00
Dominic Clifton 5484e5fddd Replace PWM RSSI with ADC RSSI.
The primary reason is to support the D4R-II with it's much faster PWM
frequency.  The PWM RSSI code could not keep up, and since there are no
timers free for using capture compare of PWM signals in hardware one
solution is to use the ADC at a slow sample rate.

RC2 is used as before and it expects a signal between 0 and 3.3v.  An
inline smoothing capacitor may help.

This commit also removes the cli command adc_power_channel since the
reading was never actually exposed anywhere.
2014-05-28 03:30:53 +01:00
Dominic Clifton f7c38af7fc Initial commit for implementation of autotune. 2014-05-27 18:11:55 +01:00
Dominic Clifton e5c5339306 Merge branch 'master-cleanflight-msptelemetry' of github.com:treymarc/baseflight into treymarc-master-cleanflight-msptelemetry
Conflicts:
	src/serial_msp.h
	src/telemetry_common.h
2014-05-25 00:32:41 +01:00
treymarc ac520b0676 usf hardware fpu with target stm32f30x 2014-05-24 20:40:12 +00:00
Dominic Clifton b0e1c934d4 Adding unit test for some gps conversion code to demystify it. 2014-05-24 17:54:57 +01:00
Dominic Clifton 1925df26ca Add RSSI PWM on CH2 input.
Also support FrSky 1khz RSSI.  See documentation also added in this
commit.

This commit also cleans up the PWM mapping code.  'mask' didn't need to
be a mask and it wasn't possible to add another 'type' since there were
only 4 possible values when it was a mask and they were already defined.  
Combined with switching to using 16 bits instead of 8 for the mapping
configurations, it's now possible to have 256 types instead of 4 at the
expense of a few bytes of flash.

Moved the RSSI calculation into rx_common.c, previously it was in the
main loop.
2014-05-24 00:01:59 +01:00
Trey Marc c245dc1868 Update Makefile
ARCH_FLAGS was never set to cortex-m4 , cf line 63
2014-05-20 03:53:51 +02:00
Dominic Clifton dcffbdba4b Initial commit of support for Naze32Pro (rev 1). 2014-05-15 15:34:18 +01:00
Dominic Clifton 4be9d953ac CHEBUZZF3 - Implement ADC driver for 3 ADC channels. Use STM32F3 linker
script so it uses the right values for RAM and FLASH size.
2014-05-12 00:17:14 +01:00