1
0
mirror of https://bitbucket.org/librepilot/librepilot.git synced 2024-11-30 08:24:11 +01:00
Commit Graph

3687 Commits

Author SHA1 Message Date
Oleg Semyonov
886c6b8775 Makefile: rework RevoMini Makefile to use new make system
Conflicts:
	flight/targets/RevoMini/Makefile
	flight/targets/RevoMini/UAVObjects.inc
2013-03-24 13:06:03 +02:00
Oleg Semyonov
c518a58215 Makefile: remove hardly used make options from CopterControl Makefile
It was reasonable to use "USE_FEATURE" on the make level when we didn't
have optional modules. Now is better to add them using += make operator.

Conflicts:
	flight/targets/CopterControl/Makefile
2013-03-24 13:06:02 +02:00
Oleg Semyonov
5c13162824 Makefile: some rearrangements between apps-defs.mk and target Makefiles
Conflicts:
	flight/targets/PipXtreme/Makefile
	make/apps-defs.mk
2013-03-24 13:06:00 +02:00
Oleg Semyonov
dbe1c39c47 pios: include memory allocator for F4 FreeRTOS targets by default
This is by analogy to F1 FreeRTOS tagrgets which always use heap_1.
2013-03-24 13:05:59 +02:00
Oleg Semyonov
6502cea50e pios_bl_helper.h: why all these empty lines? 2013-03-24 13:05:58 +02:00
Oleg Semyonov
3c97b5a7c6 Clean up pios_config.h for BL, BU, some FW (not all yet)
Conflicts:
	flight/targets/Bootloaders/CopterControl/inc/pios_config.h
2013-03-24 13:05:57 +02:00
Oleg Semyonov
446abf6190 pios: add more global config options used by Revo
Conflicts:
	flight/PiOS/pios.h
	flight/targets/RevoMini/System/inc/pios_config.h
2013-03-24 13:05:55 +02:00
Oleg Semyonov
49ed34fd7b insgps: move definition of NavStruct variable from header to source file 2013-03-24 13:05:54 +02:00
Oleg Semyonov
9bcbcbeb34 Remove never used op_config.h files (all occurences were empty) 2013-03-24 13:05:53 +02:00
Oleg Semyonov
9b3d3e62ab Makefile: fix Makefile for BootloaderUpdater (STM32F10x only targets)
Conflicts:
	flight/targets/Bootloaders/BootloaderUpdater/Makefile
2013-03-24 13:05:52 +02:00
Oleg Semyonov
ce4b2f4446 pios_debug: use PIOS_INCLUDE_DEBUG_CONSOLE to DEBUG_PRINTF(level, ...)
Inconsistent use of debug macros in board definition files resulted in
BU compilation error. It was attempted to use PIOS_COM_SendFormattedStringNonBlocking()
directly even if PIOS_COM was not included (like for BootloaderUpdater).

So this function in pios_debug.c was replaced by DEBUG_PRINTF() macro.
The macro itself is defined in pios_debug.h file. Its definitions are
removed from board files. And to use it one has to define in pios_config.h:

#define PIOS_INCLUDE_DEBUG_CONSOLE
#define DEBUG_LEVEL <number>

in addition to PIOS_INCLUDE_COM with aux port.

Conflicts:
	flight/PiOS/Boards/STM32103CB_PIPXTREME_Rev1.h
	flight/PiOS/Boards/STM32F4xx_RevoMini.h
2013-03-24 13:05:51 +02:00
Oleg Semyonov
91f14768db Makefile: fix mk files, now both CC and PipX are buildable using common defs
Conflicts:
	make/apps-defs.mk
2013-03-24 13:05:50 +02:00
Oleg Semyonov
243c1a28ec Remove duplicated global var and defines from board definition file
Was caught using just added linker options:
  LDFLAGS += -Wl,--warn-common
  LDFLAGS += -Wl,--fatal-warnings
2013-03-24 13:04:16 +02:00
Oleg Semyonov
f65ff0585f Makefile: add make/common-defs.mk and use it to build bootloaders (STM32F10x)
Conflicts:
	make/boot-defs.mk
2013-03-24 13:04:15 +02:00
Oleg Semyonov
0e6b2acb22 Makefile: add PiOS/STM32F10x/library.mk
Conflicts:
	flight/PiOS/STM32F10x/library.mk
2013-03-24 13:04:14 +02:00
Oleg Semyonov
238692c3da STM32F4xx/library.mk cleanup (formatting only)
Conflicts:
	flight/PiOS/STM32F4xx/library.mk
2013-03-24 13:04:12 +02:00
Oleg Semyonov
db0cdc6a0c Remove (almost) exact copy of dosfs from F1-specific directory
The difference was in dfs_sdcard.c, line 107:

-if((status = PIOS_SDCARD_SectorRead(sector, buffer)) < 0) {
+if((status = PIOS_SDCARD_SectorRead(sector, buffer)) != 0) {

Currenly unused, kept as is.
2013-03-24 13:04:11 +02:00
Oleg Semyonov
448a07fe57 pios_config.h: remove non-existent option PIOS_NO_GPS 2013-03-24 13:04:10 +02:00
Oleg Semyonov
27822d0cd4 Makefile and pios_config.h cleanup for PipXtreme
Now PipXtreme uses the same apps-defs.mk file as CopterControl.
Next steps are F4 boards.

Conflicts:
	flight/targets/PipXtreme/Makefile
	flight/targets/PipXtreme/System/inc/pios_config.h
2013-03-24 13:04:08 +02:00
Oleg Semyonov
30128517b5 Makefile: remove unused USE_I2C option from makefiles 2013-03-24 13:04:07 +02:00
Oleg Semyonov
7e4596ff35 Makefile: fix some MODULE_Name_BUILTIN checks and Makefile
These names are automatically generated by make using the list
of mandatory (always started) modules. Wrong names mean they can
be disabled, fixed now.

Conflicts:
	flight/Modules/Radio/radio.c
2013-03-24 13:04:06 +02:00
Oleg Semyonov
8b4a547d69 rscode: add a library make config file, library.mk 2013-03-24 13:04:05 +02:00
Oleg Semyonov
a1e17eccf3 pios: fix packet handler #ifdef guards and Makefile
Conflicts:
	flight/Libraries/packet_handler.c
	flight/targets/CopterControl/System/inc/pios_config.h
2013-03-24 13:04:04 +02:00
Oleg Semyonov
f7bdcdb782 Makefile: firmware makefiles cleanup (CC)
Conflicts:
	flight/targets/CopterControl/Makefile
2013-03-24 13:04:03 +02:00
Oleg Semyonov
75ef685c6e Makefile: bootloader makefiles cleanup
Conflicts:
	flight/targets/Bootloaders/CopterControl/Makefile
	flight/targets/Bootloaders/OSD/Makefile
	flight/targets/Bootloaders/PipXtreme/Makefile
	flight/targets/Bootloaders/RevoMini/Makefile
	flight/targets/Bootloaders/Revolution/Makefile
2013-03-24 13:04:01 +02:00
Oleg Semyonov
8a98920f3d Makefile: use exported variables in firmware-defs.mk
Note that $(QUOTE) variable is uppercased. Windows make does not
export lowercased variables with export keyword (even if must do).

Conflicts:
	make/firmware-defs.mk
2013-03-24 13:04:00 +02:00
Oleg Semyonov
00a0ef430d pios: fix pios_config.h (now PIOS_INCLUDE_COM_MSG requires PIOS_INCLUDE_COM) 2013-03-24 13:03:57 +02:00
Oleg Semyonov
e80890e164 pios: STM32F4xx PIOS #ifdef guards 2013-03-24 13:03:56 +02:00
Oleg Semyonov
b73ddffbf0 pios: STM32F10x PIOS #ifdef guards 2013-03-24 13:03:55 +02:00
Oleg Semyonov
285cad290b pios: common PIOS #ifdef guards
Conflicts:
	flight/PiOS/Common/pios_com.c
	flight/PiOS/Common/pios_mpu6000.c
2013-03-24 13:03:54 +02:00
Oleg Semyonov
e96f717b94 pios: common PIOS header guards 2013-03-24 13:03:53 +02:00
Oleg Semyonov
fc6024d23e pios: pios_config.h cleanup (CopterControl)
Conflicts:
	flight/targets/CopterControl/System/inc/pios_config.h
2013-03-24 13:03:52 +02:00
Oleg Semyonov
39363d9efa pios: main pios.h header cleanup
Conflicts:
	flight/PiOS/pios.h
2013-03-24 13:03:51 +02:00
Oleg Semyonov
304f366338 Remove discontinued AHRS files 2013-03-24 13:03:50 +02:00
Alessio Morale
8d6ef5cfe9 OP-747 Shortened an unneded very long delay in MPU6000 2013-03-24 11:42:41 +01:00
Brian Webb
2b6345850b Merge remote-tracking branch 'origin/next' into brian/rfm22_FHSS 2013-03-24 00:58:41 +01:00
Alessio Morale
1a38b7eb46 Merge remote-tracking branch 'origin/amorale/02_os-stac_logfs-unittests' into next
Conflicts:
	flight/targets/RevoMini/Makefile
	flight/targets/Revolution/Makefile
2013-03-23 15:13:05 +01:00
Alessio Morale
e06ab7f706 Merge remote-tracking branch 'origin/amorale/01-directory_move_sanity_simposix' into next
Conflicts:
	Makefile
	flight/PiOS.posix/inc/pios_com.h
	flight/targets/RevoMini/UAVObjects.inc
	flight/targets/Revolution/Makefile
2013-03-23 14:37:19 +01:00
Alessio Morale
7161d276f7 Merge remote-tracking branch 'origin/amorale/OP-866_rm_flexi-io_configurations' into next 2013-03-23 11:47:46 +01:00
Alessio Morale
643f62e175 Added configuration for F1+ SWD/StlinkV2
use it with ./tools/openocd/bin/openocd -f ./flight/Project/OpenOCD/stlink-v2.cfg -f ./flight/Project/OpenOCD/stm32f1x.stlink.cfg
2013-03-23 10:58:57 +01:00
Alessio Morale
eff2cf20fd OP-878 change led used for heartbeat as OPLink has not any USB led 2013-03-23 10:56:21 +01:00
Brian Webb
1513413795 Added 56k data rate mode to rfm22 driver. 2013-03-18 04:30:11 +01:00
Brian Webb
b2da960644 Fixed configuration of PPM intput on main port. 2013-03-15 02:24:31 +01:00
Brian Webb
d5795b2118 Merge remote-tracking branch 'origin/next' into brian/rfm22_FHSS 2013-03-12 01:36:34 +01:00
Alessio Morale
94aaa1bf10 Merge remote-tracking branch 'origin/amorale/OP-820_bu_showerror' into next 2013-03-11 20:09:57 +01:00
Alessio Morale
d327f199e8 Bootloader error visualization: Fixed indentation/spaces/2
+review OPReview-400
2013-03-10 23:41:34 +01:00
Alessio Morale
fcbfb53a87 Bootloader error visualization: Fixed indentation/spaces
+review OPReview-400
2013-03-10 21:03:40 +01:00
Alessio Morale
4f270cf13d OP-866 Flexi-IO: adding PPM+OUTPUT, PPM+PWM and OUTPUT mode.
+review OpenPilot
2013-03-10 20:43:52 +01:00
Brian Webb
9986b58f9b RFM22B/RM: Tweaked some PPM parameters to make PPM more stable on OPLink/RM.
Conflicts:
	flight/PiOS/Common/pios_rfm22b.c
2013-03-10 11:43:33 -07:00
Brian Webb
08021799ee RFM22B: Some style cleanup, and turned off status messages from coordinator. 2013-03-10 16:08:39 +01:00
Brian Webb
7db7ab0e45 Switched to non-blocking I/O on radio port, which should prevent watchdog restarts when the radio link backs up. 2013-03-09 16:44:51 +00:00
Brian Webb
27c87e4b89 RFM22B: Fixed OPLink receiver output on RM. 2013-03-09 16:12:00 +00:00
Brian Webb
031b0073b1 RFM22B: Possible fix for the failure to connect at times. 2013-03-09 02:27:58 +00:00
Brian Webb
e70f0f2c21 Merge remote-tracking branch 'origin/next' into brian/rfm22_FHSS 2013-03-09 01:43:46 +00:00
Brian Webb
bf5ef5bd00 RFM22B/RM: Added GPIO debugging to revomini to test rfm22b. Fixed (apparently) the reset issues with the rfm22b frequency hopping. Periodic frequency hopping is working pretty well now. 2013-03-09 01:06:42 +00:00
Alessio Morale
ffbb0a5a8e Merge remote-tracking branch 'origin/amorale/op-848_mpu6000_configurability' into next 2013-03-08 00:08:15 +01:00
Brian Webb
3a8c5494ca Merge remote-tracking branch 'origin/next' into brian/rfm22_FHSS 2013-03-07 13:57:51 +00:00
sambas
99096ff936 Servo Out 6 fix 2013-03-06 23:17:57 +02:00
Brian Webb
31a3a66656 Mostly working periodic (as opposed to per message) channel hopping. This version should have less risk of getting hopelessly out of sync, but currently drops some packets. The dropped packets are likely around the channel hops. 2013-03-03 21:08:17 -07:00
Alessio Morale
2f3493f4b8 OP848 Fixes typos on header files comments 2013-03-03 21:45:29 +01:00
Alessio Morale
4791f690ad OP-848 Move the handling of the UAVO configuration outside of the PiOS layer
a configuration helper header has been added to eliminate a lot of boilerplate code in *pios_board.c
2013-03-03 21:17:02 +01:00
Oleg Semyonov
776ec4f3ea ut_logfs: do not pollute the source tree with temp files 2013-03-03 14:33:04 +01:00
Oleg Semyonov
c038f6b987 ut_logfs: fix fseek()/fread() problem on Windows 2013-03-03 14:33:04 +01:00
Stacey Sheldon
b3178c3966 flash_ut: fix forward declaration of init function 2013-03-03 14:33:04 +01:00
Stacey Sheldon
9b94eeb745 ut: convert logfs unit test to gtest
Conflicts:
	Makefile
	make/unittest.mk
2013-03-03 14:33:03 +01:00
Stacey Sheldon
842b275e13 logfs: fix bugs in handling full filesystem conditions
This was caught by the logfs unit tests.
2013-03-03 14:33:02 +01:00
Stacey Sheldon
b211840104 logfs: allow loading zero length files
This was found by the logfs unit tests.

This may be useful if we want to use empty files as existence
flags in the future.  Doesn't make any sense for UAVOs but
is valid in the general sense of a filesystem.
2013-03-03 14:33:02 +01:00
Stacey Sheldon
b6eeb59b26 flash: verify JEDEC ID during flash init
Verify that the flash component on the board matches exactly
what we're expecting.  This is a simple way to verify that we
are communicating properly with the JEDEC flash chip.

Conflicts:
	flight/targets/board_hw_defs/freedom/board_hw_defs.c
	flight/targets/board_hw_defs/quanton/board_hw_defs.c
2013-03-03 14:33:02 +01:00
Stacey Sheldon
17b8696261 flash: use uintptr_t to hold opaque pointers
When storing an opaque pointer value in a uint, the
appropriate type is uintptr_t which is guaranteed to
be wide enough to hold a pointer.

This is particularly important when the code can be
compiled in a sim or unit test environment which is
intended to run on a 64-bit machine.

Conflicts:
	flight/PiOS/Common/pios_flash_jedec.c
	flight/targets/DiscoveryF4/System/pios_board.c
	flight/targets/FlyingF4/System/pios_board.c
	flight/targets/Freedom/System/pios_board.c
	flight/targets/Quanton/System/pios_board.c
2013-03-03 14:33:02 +01:00
Stacey Sheldon
dd5f4b949c logfs: use uintptr_t to hold opaque pointers
When storing an opaque pointer value in a uint, the
appropriate type is uintptr_t which is guaranteed to
be wide enough to hold a pointer.

This is particularly important when the code can be
compiled in a sim or unit test environment which is
intended to run on a 64-bit machine.

Conflicts:
	flight/targets/DiscoveryF4/System/pios_board.c
	flight/targets/FlyingF4/System/pios_board.c
	flight/targets/Freedom/System/pios_board.c
	flight/targets/Quanton/System/pios_board.c
2013-03-03 14:33:02 +01:00
Alessio Morale
cc2d5f8eae Fixes for missing openpilot.h include, previously coming from flashfs_objlist 2013-03-03 14:33:02 +01:00
Stacey Sheldon
7f53aa422a ut: add basic unit test for logfs
Build it with:
  make ut_logfs

Create a raw flash file like this:
  dd if=/dev/zero bs=1 count=2MiB | tr '\000' '\377' > theflash.bin

Run it with:
  ./build/unit_tests/logfs/logfs.elf && echo 'all good'

Conflicts:
	Makefile
2013-03-03 14:33:02 +01:00
Stacey Sheldon
7726b9e2a9 logfs: use f3-safe slot and arena states for all chips
Filesystem magic value has been updated to deal with the
format change.

Conflicts:
	flight/targets/board_hw_defs/discoveryf4/board_hw_defs.c
	flight/targets/board_hw_defs/flyingf4/board_hw_defs.c
	flight/targets/board_hw_defs/freedom/board_hw_defs.c
	flight/targets/board_hw_defs/quanton/board_hw_defs.c
2013-03-03 14:33:01 +01:00
lilvinz
d611207789 pios_flashfs_logfs: moved modified ARENA and SLOT enums to an F3 branch
also added a detailed comment
2013-03-03 14:33:01 +01:00
lilvinz
b242f8b88c pios_flashfs: adapted flashfs to work on f3 2013-03-03 14:33:01 +01:00
Stacey Sheldon
81059c41f7 flashfs: remove API dependency on uavobjmanager types
The flashfs layer is now entirely decoupled from the UAVO
data types.  All UAVO related calls are now properly
contained within uavobjectmanager.c.

This will make the flashfs layer more portable as well as
more testable in a standalone environment.  Eventually,
this layer could be used to store arbitrary files.

Also fixed all of the doxygen headers for the flashfs API.
2013-03-03 14:33:01 +01:00
Stacey Sheldon
d2a3f254bc stmflash: add flash driver for internal flash in STM32 2013-03-03 14:33:01 +01:00
Stacey Sheldon
d89a9b1b6c objlist: remove now unused objlist flash filesystem
Conflicts:
	flight/PiOS/inc/pios_flashfs_objlist.h
2013-03-03 14:33:01 +01:00
Stacey Sheldon
bcb66764e2 logfs: use logfs on all targets that have serial flash
Conflicts:
	flight/targets/FlyingF4/Makefile
	flight/targets/FlyingF4/System/pios_board.c
	flight/targets/Freedom/Makefile
	flight/targets/Freedom/System/pios_board.c
	flight/targets/Quanton/Makefile
	flight/targets/Quanton/System/pios_board.c
	flight/targets/board_hw_defs/flyingf4/board_hw_defs.c
	flight/targets/board_hw_defs/freedom/board_hw_defs.c
	flight/targets/board_hw_defs/quanton/board_hw_defs.c
2013-03-03 14:33:01 +01:00
Stacey Sheldon
5ef0988137 logfs+flash: add log structured filesystem for PiOS
A new flash driver abstraction is also provided to allow
for future support of other types of flash device under
the filesystem.

Conflicts:
	flight/PiOS/Common/pios_flash_jedec.c
2013-03-03 14:33:01 +01:00
Stacey Sheldon
20921e48ca flashfs: define the API to the FLASHFS subsystem 2013-03-03 14:33:01 +01:00
Alessio Morale
d26aaa6f6d sim_posix Removed unused files 2013-03-03 09:50:20 +01:00
Alessio Morale
5fdaccc1fa sim_posix: unified inc files with the rest of PiOS .h, some dir moves/cleanup, fixed some compilation issues. 2013-03-03 09:50:20 +01:00
Brian Webb
4743404c47 RFM22B: Some more reliability improvements for frequency hopping. 2013-03-01 07:55:00 -07:00
Brian Webb
9fad194bb8 RevoMini: Added rfm22 com configure callback to set the speed of the radio link. 2013-02-25 09:20:08 -07:00
Brian Webb
4e92bed1df Added back missing PIOS_COM_TELEM_USB (needed by the bootloader). 2013-02-25 01:44:48 +00:00
Brian Webb
2f0498d8ad Was a little aggressive on the rfm22b device structure cleanup, and removed the PPM receiver elements. 2013-02-25 00:30:32 +00:00
Brian Webb
d9baa372c7 Added frequency hopping to the RFM22B driver. Currently it defaults to 128 channels between 430 and 440 MHz. 2013-02-24 23:05:51 +00:00
a*morale
a48395c7a0 Added the visualization of the error in BU
the error is shown as a number of slow flashes followed by 10 fast flashes.
The number of slow flashes indicate the error code:
1 - Self overwrite check failed;
2 - Board hardware revision mismatch;
3 - Flash erase failed;
4 - Flash programming failed;
The error code sequence will be shown indfinitely should a error occurs.
2013-02-19 00:48:05 +01:00
Brian Webb
1af58e510e Added optional output of GCSReceiver from the OPLink to the FC. This will happen automatically if a PPM packet is receive, and PPM output is disabled. 2013-02-18 02:55:58 +00:00
Brian Webb
cf7c929030 Added the ability to store bindings and configuration paramaters for multiple (up to 8) modems from an OPLink controller modem. 2013-02-18 01:49:13 +00:00
Alessio Morale
d1c5da6c24 Move PyMite makefile entries to Libraries/PyMyte/pymite.mk to simplify boards makefile. 2013-02-17 22:28:41 +01:00
Alessio Morale
3986f93e68 op-848 Splitted sample rate divider configuration for dlp and non_dlp settings (1kHz vs 8kHz sample rate).
Minor clean up, used constants in place of some hardcoded values
2013-02-17 12:20:25 +01:00
Brian Webb
46baec52ef Merge remote-tracking branch 'origin/next' into brian/rfm22_multibind 2013-02-17 01:21:12 +00:00
Alessio Morale
e27a07631e op-848 MPU6000 support user configurabe accel/gyro scales and filter bandwidth.
board definitions can override any of this settings for special applications.
Also include cleanup from "magic numbers" and fix for inverted ranges
2013-02-17 02:02:12 +01:00
Oleg Semyonov
aea1b4b544 Merge remote-tracking branch 'origin/os/OP-775_arm-dsplib' into next 2013-02-16 16:08:31 +02:00
Oleg Semyonov
c8ce31f7a9 Merge remote-tracking branch 'origin/next' into theothercliff/elevon_cam_stab 2013-02-11 01:03:33 +02:00
Brian Webb
9b6493eeca Set the binding on the OPLink after configuring the radio. 2013-02-08 01:56:23 +00:00
Brian Webb
57b4d8c720 RFM22: Added support for binding to multiple remove OPLinks. 2013-02-08 01:56:22 +00:00
Brian Webb
6de2252c23 OP-814: Added PPM input on the FlexiPort for CC/CC3D. 2013-02-08 01:06:41 +00:00