Alessio Morale
71de38f2d5
OP-908 Uniform handling of M_PI using a Floating counterpart F_PI, explicitly define integer constants as float when used in floating point calculations
...
+review OPReview-436
2013-04-06 23:07:06 +02:00
Brian Webb
95c150213a
Don't send GCSReceiver when using OPLink receiver (on Revo).
2013-04-06 17:57:16 +01:00
Brian Webb
d36cf828bc
RFM22B: Don't send a connection request from a non-coordinator.
2013-04-06 16:35:12 +01:00
Alessio Morale
ce6f84063c
OP-908 Cleanup for unwanted double precision math on float data.
...
- Use float counterpart instead of double precision function when dealing with float data
- Force float data type for decimal constants
+review OPReview
2013-04-06 16:45:05 +02:00
Alessio Morale
c801ca681c
OP-900 update FreeRTOS to 7.4.0
...
also added an howto_update.txt file that list the necessary modifications to FreeRTOS files
+review OPReview
2013-04-06 15:05:39 +02:00
Brian Webb
4564718708
Added setting of max RF power and initial frequency on Revo.
2013-04-06 04:28:25 +01:00
Brian Webb
fef2c16f5a
RFM22B: Changed the connection process. Now the coordinator waits to receive a status packet from a modem that it is bound to before it sends the connection request.
2013-04-06 02:25:59 +01:00
Brian Webb
948038f655
Merge remote-tracking branch 'origin/next' into brian/rfm22_FHSS
2013-04-06 01:32:36 +01:00
Brian Webb
c330db3a28
Added setting of min/max frequencies on OPLink coordinator.
2013-04-06 01:32:15 +01:00
Oleg Semyonov
5bb6b56b4a
OP-772: Normalize line endings
2013-04-05 23:46:56 +03:00
Oleg Semyonov
3bebec22f7
OP-772: Enforce line ending agreements (git 1.7.2+ required for this to work)
...
This is a part of OP-726, OP-727 tasks to normalize source code.
Use the following to normalise your local repository to be able to merge:
git rm --cached -r .
git diff --cached --name-only -z | xargs -0 git add
git commit -m "Normalise line endings"
git ls-files -z | xargs -0 rm
git checkout .
2013-04-05 23:43:58 +03:00
Alessio Morale
f30692836a
OP-886 Fixes to styles
...
+review OPReview-430
2013-04-04 20:11:57 +02:00
Oleg Semyonov
de4ca359dd
Merge remote-tracking branch 'origin/os/OP-719_arm-sdk-update' into next
2013-04-04 12:09:33 +02:00
Alessio Morale
13dd1178a8
OP-886 Fixes to styles: testing style settings for Eclipse
...
+review OPReview-430
2013-04-03 19:26:25 +02:00
Brian Webb
61712be03d
Added 57600 kbps air datarate mode, and added setting of registers 69 and 58.
2013-04-03 02:05:51 +01:00
sambas
47a7659147
Merge remote-tracking branch 'remotes/origin/next' into sambas/diffnext
2013-04-02 20:40:41 +03:00
sambas
d776d82518
Does this fix simposix and make bamboo happy
2013-04-02 19:57:40 +03:00
Alessio Morale
23c0c3585c
OP-886 Fixes to styles and includes
...
+review OPReview-430
2013-04-01 16:41:12 +02:00
Brian Webb
4778a12070
Merge remote-tracking branch 'origin/next' into brian/rfm22_FHSS
2013-04-01 14:30:46 +01:00
Alessio Morale
9264c8b4e2
Merge remote-tracking branch 'origin/amorale/OP-881_flashautodetect' into next
2013-03-31 18:06:52 +02:00
Brian Webb
538d854627
Changed test for GCSRECEIVER in OPLink to PIOS_INCLUDE_GCSRCVR to match new define in pios_config.
2013-03-31 16:37:14 +01:00
Oleg Semyonov
b67ce783f5
OP-719: upgrade ARM SDK to 4.7-2012q4, use 'make arm_sdk_install' to install
...
+review OPReview
2013-03-31 16:59:00 +02:00
Alessio Morale
45b0e787a4
OP-886 Improvements to sanitychecks
...
Added an Extensions to Alarm for detailed status/substatus reporting.
Extended Alarms are the first in the Alarm structure and have corresponding fields in Status and Substatus structures.
Also added a filter to the HWsettings update to prevent to block arming when actual settings have not changed.
+review OPReview
2013-03-30 19:57:16 +01:00
Alessio Morale
8698bcfb84
Moved OSD settings from SDCard to mcu internal flash memory
2013-03-30 15:47:22 +01:00
sambas
e43e5c5028
Add missing flightmodes into sanitycheck, pathfollower needs to be running before sanitycheck runs
2013-03-30 14:57:43 +02:00
Brian Webb
1cac81b3e8
Merge remote-tracking branch 'origin/next' into brian/rfm22_FHSS
...
Conflicts:
flight/targets/PipXtreme/System/inc/pios_config.h
flight/targets/RevoMini/System/inc/pios_config.h
2013-03-29 17:17:55 -07:00
Oleg Semyonov
ca0910370f
OP-881: flashfs: coding style fixes according to OPReview-423
...
+review OPReview-423
2013-03-29 11:26:56 +02:00
Alessio Morale
46e9e60e76
OP-881 fixed for stile compliance, added test and assertions on flash init for revolution and CC targets
...
+review OPReview-423
2013-03-29 00:30:28 +01:00
sambas
2557600257
uavobjects thing that fixes sdcard settings save on osd. Can be reverted when fix found.
2013-03-28 18:35:42 +02:00
sambas
4f7e37651c
F4 CPU temp fix(revo), I think rm still not working
2013-03-28 18:34:31 +02:00
sambas
5ded8c6dfc
VTOL path fixes
...
Flight mode fixes
POI mode
AutoLand Tests
Simple stabilization Shortest way yaw fix
GCS map and pathplanner fixes
2013-03-28 18:29:26 +02:00
sambas
77cae9ffc3
MagBaro Extension board module
...
OSD update
OSD output module for FC
Sonar update
Flight mode fixes + poi
2013-03-28 18:20:50 +02:00
Alessio Morale
e68aeb0c8e
OP-881 Make PIOS_Flash_Jedec_Init able to configure the flash chip based on Jedec Id returned using a catalog of known flash chips.
...
+review OPReview
2013-03-27 00:26:47 +01:00
Oleg Semyonov
9335a50b18
Makefile: use upper case for MODULE_MODULENAME_BUILTIN macros
...
+review OPReview-422
2013-03-25 16:02:16 +02:00
Oleg Semyonov
17600ed09f
PyMite: remove from simposix Makefile and use library instead
2013-03-25 02:59:40 +02:00
Oleg Semyonov
8e7712a13f
PyMite: fix nasty build bug with open file problem on Windows
...
In fact, the cause of that error was badly written makefile rule which
generated 5 same files 5 times. If used with make -j, it tried to open
the same files for writing at the same time. Windows doesn't like this.
This is fixed now.
2013-03-25 02:03:35 +02:00
Brian Webb
1979e8b57f
Merge remote-tracking branch 'origin/next' into brian/rfm22_FHSS
2013-03-24 16:57:59 +01:00
Oleg Semyonov
30b362a5fa
entire-flash.py: fix comment
2013-03-24 14:12:08 +02:00
Oleg Semyonov
8f977a4411
Final step: lot of small fixes, last commit in this commit series
...
This is the first cleanup pass through makefiles and pios.
Probably it is difficult to track changes due to the nature of them.
I would recommend to look at resulting files and compiled code instead.
NOTE: original branch was rebased and lot of conflicts were fixed on
the way. So do not expect that every commit in this series will be
buildable (unlike original branch). Only final result was tested.
The main goal was to remove as much duplication of code (and copy/paste
errors) as possible, moving common parts out of Makefiles. It still is
not perfect, and mostly no code changes made - Makefiles and #ifdefs only.
But please while testing make sure that all code works as before, and no
modules/options are missed by accident.
Brief list of changes:
- Moved common parts of Makefiles into the set of *.mk files.
- Changed method of passing common vars from top Makefile to lower ones.
- Some pios cleanup, mostly #ifdefs, and all pios_config.h files.
- Many obsolete files removed (for instance, AHRS files, op_config.h).
- Many obsolete or unused macros removed or fixed/renamed (ALL_DIGNOSTICS).
- Unified pios_config.h template. Please don't remove lines for board
configs, only comment/uncomment them. Adding new PIOS options, please
propagate them to all board files keeping the same order.
- Some formatting, spacing, indentation (no line endings change yet).
- Some cosmetic fixes (no more C:\X\Y\filename.c printings on Windows).
- Added some library.mk files to move libs into AR achives later.
- EntireFlash target now uses cross-platform python script to generate bin
files. So it works on all supported platforms: Linux, OSX, Windows.
- Top level packaging is completely rewritten. Now it is a part of top
Makefile. As such, all dependencies are checked and accounted, no
more 'make -j' problems should occur.
- Default GCS_BUILD_CONF is release now, may be changed if necessary
using 'make GCS_BUILD_CONF=debug gcs'.
- GCS build paths are separated into debug and release, so no more obj
file clashes. Packaging system supports only release builds.
- New target is introduced: 'clean_package'. Now 'make package' does not
clean build directory. Use clean_package instead for distributable builds.
- Targets like 'all', 'opfw_resource', etc now will print extra contex
in parallel builds too.
- If any of 'package', 'clean_package', 'opfw_resource' targets are given
on command line, GCS build will depend on the resource, so all fw_*.opfw
targets will be built and embedded into GCS. By default GCS does not
depend on resource, and will be built w/o firmware (unless the resource
files already exist and the Qt resource file is generated).
- fw_simposix (ELF executable) is now packaged for linux. Run'n'play!
- Make help is refined and is now up to date.
Still broken:
- UnitTests, should be fixed
- SimPosix: buildable, but should be reworked.
Next planned passes to do:
- toolchain bootstrapping and packaging (including windows - WIP)
- CMSIS/StdPeriph lib cleanup
- more PIOS cleanup
- move libs into AR archives to save build time
- sim targets refactir and cleanup
- move android-related directories under <top>/android
- unit test targets fix
- source code line ending changes (there are many different, were not changed)
- coding style
Merging this, please use --no-ff git option to make it the real commit point
Conflicts:
A lot of... :-)
2013-03-24 13:06:24 +02:00
Oleg Semyonov
2eff6f5f3c
Posix compile-only fix (still needs a lot of rework)
...
This is a patch to make simposix buildable. It does not use new
makefiles and should be reworked.
Conflicts:
flight/targets/SimPosix/Makefile
2013-03-24 13:06:21 +02:00
Oleg Semyonov
bd033badb9
BootloaderUpdater: move one level up, now next to EntireFlash and Bootloaders
2013-03-24 13:06:18 +02:00
Oleg Semyonov
5f24378a4f
EntireFlash: now works on all supported platforms
2013-03-24 13:06:17 +02:00
Oleg Semyonov
992bd696a6
*.mk: fix double '/' in path names ($dir always returns it as a last char)
...
Also minor formatting of all library.mk files.
Conflicts:
flight/PiOS/Common/Libraries/CMSIS2/library.mk
2013-03-24 13:06:08 +02:00
Oleg Semyonov
38d822d2f5
Makefile: rework OSD Makefile and target to use new make system
...
Conflicts:
flight/targets/OSD/Makefile
2013-03-24 13:06:07 +02:00
Oleg Semyonov
7e02642b01
Move 3rd party printf formatter functions from PiOS to Libraries folder
...
They are not a PiOS, but 3rd party libraries. They even should not
be placed to the same (PiOS) library directory due to the printf symbol
clashes (if all *.c from the folder are built). So they are moved, and
each target can include that one which is necessary/desired.
2013-03-24 13:06:06 +02:00
Oleg Semyonov
404ba00f70
Makefile: rework Revolution Makefile to use new make system
...
Conflicts:
flight/targets/Revolution/Makefile
2013-03-24 13:06:05 +02:00
Oleg Semyonov
f465a04b88
pios: add new options from Revolution to pios.h and pios_config.h
2013-03-24 13:06:04 +02:00
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
Cliff Geerdes
6d4e8e4657
OP-824 Feedforward fix, 0.0f, coding style, and var name changes.
2013-02-07 18:27:59 -05:00
Brian Webb
e50e645e7b
Merge remote-tracking branch 'origin/next' into brian/oplink_ppm_out
2013-02-07 13:39:21 +00:00
Oleg Semyonov
97436166e3
Merge remote-tracking branch 'origin/next' into os/OP-775_arm-dsplib
2013-02-06 12:55:14 +02:00
Cliff Geerdes
8104ae25dd
OP-824 Add CameraStab Elevon-type mixing. Redo servo reversing.
2013-02-03 19:02:34 -05:00
Corvus Corax
7642f44cad
Merge remote branch 'origin/corvuscorax/sanity_additions' into corvus/directory_and_sanity
...
Conflicts:
flight/Modules/FirmwareIAP/firmwareiap.c
flight/Modules/ManualControl/manualcontrol.c
flight/targets/SimPosix/Makefile
shared/uavobjectdefinition/systemalarms.xml
2013-02-03 14:57:54 +01:00
Brian Webb
ca6aa9fcea
Reformatted PPM output code to match coding standards.
2013-02-02 01:53:39 +00:00
Brian Webb
18c592a37a
Reformatted PPM output code to match coding standards.
2013-02-02 01:50:02 +00:00
Alessio Morale
153db89663
OP-815 changed PIOS_WDG_RegisterFlag to reset the WDG to prevent timeouts during module initialization
2013-02-01 20:05:44 +01:00
Brian Webb
a4faa22c4b
Merge remote-tracking branch 'origin/brian/rfm22_autoconf' into next
...
Conflicts:
ground/openpilotgcs/src/plugins/config/configgadgetwidget.cpp
2013-01-31 13:40:32 +00:00
Cliff Geerdes
5e2aeeea76
Fixed tab stops in two c files.
2013-01-31 05:38:10 -05:00
Cliff Geerdes
6806e895cc
First version. Passes simple tests.
2013-01-30 18:57:32 -05:00
Oleg Semyonov
396f210d07
Remove stray file in RemoteSystemsTempFiles
2013-01-28 03:02:04 +02:00
Stacey Sheldon
f500ac1e23
rename: move UAVObjects and UAVTalk directories under targets
2013-01-28 02:33:06 +02:00
Stacey Sheldon
0fda8035c2
makefile: update to released openocd 0.6.1
2013-01-28 02:13:17 +02:00
Stacey Sheldon
dbcf440bb9
makefile: factor out paths for major flight components
...
Conflicts:
flight/targets/CopterControl/Makefile
2013-01-28 02:01:39 +02:00
Stacey Sheldon
69a2691bc2
rename: move board-specific dirs into flight/targets
...
Conflicts:
flight/targets/Bootloaders/Revolution/Makefile
flight/targets/CopterControl/Makefile
2013-01-28 01:52:44 +02:00
Alessio Morale
ad6d071e52
OP-815 Coptercontrol hang on startupd due to WDG timeout
2013-01-20 16:20:49 +01:00
Alessio Morale
f293298118
Merge remote-tracking branch 'origin/revo-fixes' into amorale/revo-merge
...
Conflicts:
flight/Modules/ManualControl/manualcontrol.c
make/scripts/version-info.py
package/Makefile.linux
2013-01-19 20:23:48 +01:00
Alessio Morale
b317415556
OP-788 reenable transaction lock for pios_jedec_flash.c
2013-01-14 01:31:07 +01:00
Alessio Morale
fbced18aab
Added missing test for TIM_IT_Update, cleanup
2013-01-05 18:52:15 +01:00
Alessio Morale
403a27de9e
OP-783: Fix missing F4 timer handlers for TIM13 and TIM14 and check source for shared vectors
2013-01-05 18:52:02 +01:00
Brian Webb
be444db7f8
Added PPM output to OPLink firmware
2013-01-04 06:51:27 -07:00
Brian Webb
7d86ddc6f7
Added 8 channel PPM output to PIOS.
2013-01-04 06:50:24 -07:00
Oleg Semyonov
c18cba4dda
[OP-775] Provide options to enable DSP library when needed
2012-12-30 21:53:37 +02:00
Oleg Semyonov
95f16e25c4
[OP-775] Provide rules to build DSP library
2012-12-30 21:53:35 +02:00
Oleg Semyonov
89cb49733e
[OP-775] Use new core_cm3.h
2012-12-30 21:53:34 +02:00
Oleg Semyonov
333d0fe8c9
[OP-775] Consistently use PIOSCOMMONLIB
2012-12-30 21:53:32 +02:00
Oleg Semyonov
79a949e1ca
[OP-775] Fix Makefile variables (CDEFS, EXTRAINCDIRS, EXTRA_LIBDIRS, EXTRA_LIBS, PYTHON)
2012-12-30 21:53:31 +02:00
Oleg Semyonov
aee2613384
[OP-775] Import CMSIS2 ARM DSP_Lib sources (imported by Alessio)
2012-12-30 21:53:29 +02:00
Oleg Semyonov
2328469e71
[OP-775] Update link template and makefiles to include optional $(ALLLIB) depenencies
2012-12-30 21:53:24 +02:00
Brian Webb
9f3d7a24f8
Merge branch 'revo-fixes' of ssh://git.openpilot.org/OpenPilot into brian/rfm22_autoconf
...
Conflicts:
flight/RevoMini/Makefile
2012-12-30 07:59:09 -07:00
Alessio Morale
8a832fa8f6
OP-780 fix for comments
2012-12-30 15:01:25 +01:00
Alessio Morale
376467bf57
OP-782 OP-780 Cleanup of overosync module, fixing headers. Added(but not enabled) its boilerplate declarations on board_hw_defs.c/Makefile/pios_config.
2012-12-30 13:36:47 +01:00
Alessio Morale
b1360f8136
OP-782 move FirmwareIAPStart from firmwareiap.h to matching .c file.
2012-12-30 12:32:00 +01:00
Alessio Morale
657701348c
OP-782 fixed duplicated entry for adc input.
2012-12-30 12:26:28 +01:00
Alessio Morale
f93a9affa9
Fixed comment on coptercontrol's pios_board.c OP-780
2012-12-29 17:20:50 +01:00
lilvinz
6daed46ecc
pios_i2c: fixed a race condition with wrong bus locking when using FreeRTOS
...
When more than one task is concurrently trying to access
the same i2c bus and a timeout occurs on bus lock the
transfer would just continue and blow up the pios_i2c
driver. This has been fixed.
2012-12-29 17:20:50 +01:00
Corvus Corax
37df2bcbf4
OP-742: Merge branch 'corvuscorax/airspeed_fixes' into revo-fixes
...
Conflicts:
flight/RevoMini/Makefile
2012-12-29 12:09:58 +01:00
Corvus Corax
d7319c21dc
OP-700 temporarily disable VtolPathFollower until it has been fixed
2012-12-21 12:05:47 +01:00
Brian Webb
076a3fa715
Merge remote-tracking branch 'origin/brian/rfm22_autoconf' into brian/rfm22_autoconf
2012-12-17 19:41:47 -07:00
Brian Webb
9225debdc1
Added initialization of the ECC, which was removed with the removal of the packet handler. Removed a couple of test functions from RadioComBridge module. Turned on watchdog timers in RadioComBridge (and RFM22B driver).
2012-12-17 19:33:42 -07:00
James Cotton
4c2de5a140
PiOS simulation: Implement pios_com->available for simulators
2012-12-16 16:24:16 -07:00
Brian Webb
9765244753
Removed (now unused) packet_handler.c
2012-12-16 09:31:21 -07:00
Brian Webb
c4c58331e5
RM: Now doesn't crash when the radio is disabled.
2012-12-16 09:16:19 -07:00
Brian Webb
0dd8caeec0
Removed oplink UAVObjects from the RevoMini target.
2012-12-15 15:39:11 -07:00
Brian Webb
e0acb41379
Removed some unintended changes to RevoMini.
2012-12-15 10:35:51 -07:00
Brian Webb
43f6b4150f
RFM22: Don't send status until the link is connected.
2012-12-15 09:56:27 -07:00
Brian Webb
3a1803b7a1
Added RFM22B (OPLink) receiver.
2012-12-13 21:07:19 -07:00
Brian Webb
6e929d7a92
Fixed configuration of PPM input.
2012-12-12 20:27:08 -07:00
Brian Webb
90e0746ade
RFM22B: Changed default (initial) air baud rate to 9600. Also some code cleanup.
2012-12-11 19:23:59 -07:00
Brian Webb
1d7e4e0fc2
Reduced length of transmit window period to 8 ms from 16 ms.
2012-12-11 17:44:22 -07:00
Brian Webb
8ead1200b9
RFM22B: Added timing synchronization on transmit to try to eliminate both sides transmitting at the same time. This now achieves virtually 0 re-transmissions for close range transmission while transmitting both full telemety and PPM at 64k.
2012-12-11 17:44:20 -07:00
Brian Webb
7f6a718354
RFM22B: Added optional debug signals on the telemetry port of the PipX. Also fixed a couple of bugs that were causing excessive re-transmissions (found using the debug signals).
2012-12-11 17:44:19 -07:00
Brian Webb
fecc23eb49
RFM22B/OPLink: Auto-configuration of remote com port now working.
2012-12-11 17:44:17 -07:00
Brian Webb
6ffe518509
RFM22B: Improved link stability, and added tracking of error encountered in the processes of transmitting and receiving.
2012-12-11 17:44:15 -07:00
Brian Webb
4cb311538a
RFM22B: Improved reliability, especially with reconnection after a timeout, although there is still too many resent packets.
2012-12-11 17:44:14 -07:00
Brian Webb
7a930807aa
RM: Fixed initialization of the debug console.
2012-12-11 17:44:12 -07:00
Brian Webb
6ed9b63da9
RFM22B: Changing configuration parameters over-the-air working. Added tracking of Tx/Rx sequence number. Still seeing too many resent packets.
2012-12-11 17:44:11 -07:00
Brian Webb
0dce12e984
RFM22B: Finised handshacking on ACK and changed the link quality metric to use resent packets rather than missed packets.
2012-12-11 17:44:09 -07:00
Brian Webb
7aaa02268f
RFM22B: Added TX Resent to OPLink status. Also removed the need for the packet queue.
2012-12-11 17:44:08 -07:00
Brian Webb
fa5f7a8fdd
RFM22B: All packets are now ACKed, and added a formal connection request / accept that will be used or auto-configuring the remote modem.
2012-12-11 17:44:06 -07:00
Brian Webb
98026966f7
RFM22B: Added PPM packets to rfm22 driver.
2012-12-11 17:44:04 -07:00
Brian Webb
04da5d2377
USB/COM/RFM22B: Added a standard com callback to test for link availability. This replaces the PIOS_USB_CheckAvailable function with a generic PIOS_COM_Available function. This is now used by the RFM22B com driver to test if a good link is up. This was originally written by James, and Brian merged it into the latest RFM22B branch.
2012-12-11 17:44:03 -07:00
Brian Webb
e36bd678e1
RFM22B: Allow a receive to happen between transmitts.
2012-12-11 17:44:01 -07:00
Brian Webb
9f43e1151c
RFM22B: Fixed status reporting and connection status for OPLink.
2012-12-11 17:44:00 -07:00
Brian Webb
15fc29560a
RM: Remove configuration of the RFM22B from the RevoMini pios_board.c. This is in preparation for auto-configuration.
2012-12-11 17:43:58 -07:00
Brian Webb
bd42083376
RFM22B: Changed the way the frequencies and power settings are set for the rfm22b device.
2012-12-11 17:43:55 -07:00
Brian Webb
dae382564a
RFM22B/RM: Added rfm22b com device, moved remaining functionality in the radio module to the rfm22 driver, and simplified configuration of the PipX/OPLink. The radio device now presents itself completely as a com device, both in RadioComBridge (OPLink devices) and Telemetry (RM). Also change the PipXStatus and PipXSettings UAVOs to OPLinkStatus/OPLinkSettings.
2012-12-11 17:43:53 -07:00
Brian Webb
0113b6a748
Added UAVTalkRelayInputStream to the UAVTalk library that parses a UAVTalk packet and sends it when it is complete. This allows the interlieving of packets on an output UAVTalk stream, and is used by the OPLink device to relay packets from an input com port to a different output com port without sending one packet in the middle of another packet.
2012-12-11 17:43:50 -07:00
Brian Webb
4b90f81f6f
RFM22B: Modified the method of tracking RX errors, and now reporting Good, Corrected, Error, and Missed packets to the GCS. Also removed some less useful fields from the PipXStatus.
2012-12-11 17:43:49 -07:00
Corvus Corax
7ac258352a
OP-753 - prevent flying in wrong direction in FlyVector mode.
2012-12-04 16:18:24 +01:00
a*morale
3dc11b297b
Enabled airspeed module on RevoMini target
2012-12-02 17:14:54 +01:00
Oleg Semyonov
9420a76820
[OP-724] Better name for dT according to OPReview-368 comment
2012-12-02 14:09:21 +02:00
Oleg Semyonov
41d56b282e
[OP-724] Remove LPF from throttle input channel (not necessary)
2012-12-02 13:50:03 +02:00
Erik Gustavsson
5132448fe8
Decrease zeroing yawBiasRate to reduce noise-induced random yaw drift.
2012-11-29 18:56:33 +01:00
Oleg Semyonov
cc98962c36
[OP-724] Provide generic gimbal type
2012-11-29 18:03:05 +02:00
Oleg Semyonov
8adc2abd77
[OP-724] Now most camera options can be set independently per each axis.
2012-11-29 17:39:10 +02:00
Oleg Semyonov
5784ea8b36
[OP-724] Provide Actuator option to disable selected channels and use it for 7s camera boot delay
...
Actuator did not provide an option to completely shutdown selected channels
(set PWM pulse = 0). It is useful for camera stabilization boot delay (we
want few seconds of gimbal servo inactivity to calibrate gyros). It also
might be useful for failsafe on some channels. This option is now available.
It is used to disable camera outputs during fixed 7s delay after boot
instead of setting them to minimum position.
As a side effect, few bugs are fixed (ticks should be multiplied by
portTICK_RATE_MS, not divided, to get time in ms). And few floating point
operations were optimized out as well.
ActuatorCommand.UpdateTime was promoted to uint16 because it is not unusual
to have it 20000ms during flash updates (was seen on the CC after UAV
settings import). So it should be 16bit as well.
2012-11-29 17:39:09 +02:00
Oleg Semyonov
8f5fb5aeb0
[OP-724] Add camera gimbal filtering and feed forward options
...
This is a partial rework of Cossacs' camera gimbal software.
This patch adds LPF to airframe attitude used for camera stabilisation
and feed forward for camera actuators. Either of options can be
disabled on the compilation level to save flash and RAM if not
required.
Original Cossacs' code was optimized and code flow shortcuts were
added where applicable.
2012-11-29 17:39:08 +02:00
Oleg Semyonov
ee333f1569
[OP-724] Add manual control input filtering (useful for camera gimbal)
...
This is a partial rework of Cossacs' camera gimbal software.
This patch adds LPF to some of manual control inputs. Mostly
useful are accessory channels (for camera gimbal control) and
yaw channel (for smooth filming). The code may be used for
stand-alone CC[3D]-based gimbal software, but also should work
for complete FC+camera system.
2012-11-29 17:39:07 +02:00
Oleg Semyonov
ea1199603b
Merge remote-tracking branch 'origin/rel-12.10.2' into next
...
Conflicts:
MILESTONES.txt
2012-11-29 17:31:50 +02:00
Erik Gustavsson
4312652241
Use enum to index array.
...
Replace 0 with 0.0f in assignment.
2012-11-29 00:03:39 +02:00
Erik Gustavsson
5e14f5352f
Minor codestyle/whitespace cleanup
2012-11-29 00:03:38 +02:00
Erik Gustavsson
dc5394dcf3
Add setting to suppress axis output from Stabilization module until armed and throttle is applied. Useful to keep the tail prop out of the grass while arming a tri.
2012-11-29 00:03:37 +02:00
Oleg Semyonov
96c7ec37a9
Merge remote-tracking branch 'origin/hyper/flight_uavo_access_type_safety' into next
2012-11-24 16:33:19 +02:00
a*morale
20eb2d7b98
Fixed RTC clock
2012-11-23 19:43:31 +01:00
a*morale
2d83e8a779
Fixes for SBUS support on RM2.
...
Note: it needs the RTC timing to be fixed as it seems that it runs at half its nominal 625Hz value
2012-11-23 19:41:23 +01:00
Corvus Corax
c6effbbb0f
bugfix to pathplanner
2012-11-23 12:29:25 +01:00
Corvus Corax
55f0d41016
bugfix in fixed wing path follower
2012-11-23 11:49:17 +01:00
Richard Flay (Hyper)
5864219d27
Removed __attribute__((always_inline)) after review discussions.
2012-11-23 07:15:28 +10:30
Corvus Corax
7059d4f032
changed some details as to dschin's suggestions
2012-11-22 13:26:45 +01:00
Corvus Corax
264f631df6
Merge branch 'corvuscorax/baro_fixes' into revo-fixes
2012-11-22 11:51:36 +01:00
Corvus Corax
35509ee977
moved sanitycheck from system to manualcontrol to not break OSD and PipX
...
targets
Conflicts:
flight/Modules/ManualControl/manualcontrol.c
2012-11-22 10:11:18 +01:00
Oleg Semyonov
1fbaaddcd4
Merge branch 'stac/stop-wasting-ram' into next
2012-11-19 01:51:37 +02:00
Stacey Sheldon
f0fb22c090
uavobjectmanager: initialize new uavo_handles section
...
The uavo_handles section is not part of the .data segment so
it doesn't get automatically zeroed during the startup code.
This led to random data being stored in the table which resulted
in bus errors at runtime.
This change ensures that the table is zeroed before we start to
use it.
2012-11-18 16:48:13 -05:00
Stacey Sheldon
c1fc605696
uavobjectmanager: remove linked list for UAVOs
2012-11-14 23:38:24 -05:00
Richard Flay (Hyper)
6c0b91dee7
Minor tweak for coding standard compliance.
2012-11-15 07:45:35 +10:30
Oleg Semyonov
79f95983da
Merge remote-tracking branch 'origin/rel-12.10.2' into next
2012-11-14 17:26:18 +02:00
Oleg Semyonov
22173d96e5
Merge remote-tracking branch 'origin/cyr/accel_filter' into rel-12.10.2
2012-11-14 04:44:11 +02:00
Erik Gustavsson
f9f58f22d8
Take the magnitude of the correct gravity vector
2012-11-12 17:16:28 +01:00
Stacey Sheldon
e5c54cca00
freertos: change default alignment to 4-byte from 8-byte
...
There shouldn't be any reason to need 8-byte alignment on the
F1 platform. This allows better packing of all malloc'd data.
Reducing this below 4-byte alignment is not recommended and will
likely result in misaligned pointers being passed to peripherals.
RAM savings is another 300 bytes.
2012-11-11 22:16:00 -05:00
Erik Gustavsson
e38ba912cd
Clarify comment about gravity vector
2012-11-11 21:13:05 +01:00
Erik Gustavsson
04c194fa48
Coding style fixes
2012-11-11 21:10:52 +01:00
Corvus Corax
40381d98ae
compile sanitycheck into simposix
2012-11-11 18:22:01 +01:00
Corvus Corax
5862346d40
Merge remote-tracking branch 'baseorigin/corvuscorax/simposix_firmwareiap' into corvuscorax/sanity_additions
2012-11-11 18:06:16 +01:00
Corvus Corax
ec5f9d232f
Revert "do not do configuration check on SimPosix architecture, its not ported yet"
...
This reverts commit 112a3fe7e5
.
2012-11-11 18:05:46 +01:00
Corvus Corax
112a3fe7e5
do not do configuration check on SimPosix architecture, its not ported yet
2012-11-11 17:39:37 +01:00
Corvus Corax
d1447ca3f8
Rise Botfault error whenever hwsettings has been changed but no reboot took place yet
2012-11-11 17:23:07 +01:00
Corvus Corax
4e32413954
removed pathplannersettings from flight
2012-11-11 14:57:52 +01:00
Stacey Sheldon
e2b019edd9
telemetry: stop registering periodic events for non-periodic UAVOs
...
Telemetry module was iterating over all UAVOs including
meta UAVOs and creating a periodic event item for each
object. These items cost us about 32 bytes for each list
item.
This is wasteful for two main reasons. First, meta UAVOs can't
meaningfully have periodic updates so excluding them entirely
makes sense. That halves the number of objects in this list since
there is one meta object for every data object. This is worth
about 500 bytes of RAM on CC.
Second, about half of the remaining UAVOs are not periodic by
default so they're wasting memory unless someone happens to want
to make them periodic at runtime. This is worth another 450 bytes
of RAM on CC.
So, objects that are configured as periodic during board init will
support all of the periodic config at runtime. Objects that are
*not* periodic during board init can only be made periodic on the
next boot.
Each object that you make periodic during init will cost you an
extra 32 bytes of RAM.
With erased settings, free RAM comparison for CC is:
Before: 2736 bytes free
After: 4048 bytes free
Total RAM savings with this update is 1312 bytes!
2012-11-10 18:04:16 -05:00
Richard Flay (Hyper)
54ebcb1ea8
Removed a spurious call to AccelsSet() that was causing garbage data to be transiently written to the Accels UAVO. Props to cyr for kicking off the discussion that led to the discovery of this bug.
2012-11-11 00:31:08 +02:00
lilvinz
a7029baa32
pios_jedec: fixed usage of uninitialized memory
...
When reading the jedec device id the code only transfered one byte via spi leaving
the expected input buffer uninitialized. This may lead to the problem that flash
initialization fails because the expected input may be whatever the stack was set
when entering the function. The impact of the bug is somewhat limited tough as the
initialization usually takes place before starting up the rtos and thus is pretty
deterministic. So if the code passed init while testing it should pass init in
production as well.
2012-11-11 00:31:07 +02:00
Richard Flay (Hyper)
eda6b6a24a
Improved type-safety. Replaced flight side UAVO access macros with inline functions to ensure that correct pointer types are always passed to UAVO access functions.
2012-11-10 20:47:10 +10:30
Corvus Corax
064ed4087c
set AirspeedActual from attitude module, feed true airspeed estimation into EKF to allow more accurate INS
2012-11-08 11:30:58 +01:00
Corvus Corax
8dd5d5a68b
type fix in header file
2012-11-08 11:12:05 +01:00
Corvus Corax
e9da78406a
Merge branch 'corvuscorax/baro_fixes' into corvuscorax/airspeed_fixes
2012-11-08 09:48:01 +01:00
Corvus Corax
b09027afe5
Completely refactored airspeed module, now a pure sensor input module without any complex sensor fusion features -- changed driver for mpxv analog airspeed to be more versatile
2012-11-08 01:31:21 +01:00
Erik Gustavsson
104c61a174
Move accel filter to separate function, for cleaner code and easier filter alteration.
...
Optimize for filter disabled case (AccelTau = 0.0).
2012-11-06 20:17:10 +01:00
Corvus Corax
5981d9acd6
removed surplus NEDposition uavobject
2012-11-06 10:13:09 +01:00
Corvus Corax
3c8ffa9773
Revert "When in indoor mode reset the baro offset to zero"
...
This reverts commit 9c512261e6
.
2012-11-06 09:42:14 +01:00
Corvus Corax
e8232ba825
Pathplanner: removed pathPlannersettings and preprogrammed (hardcoded) paths
2012-11-05 16:04:45 +01:00
Corvus Corax
cc8e56f170
OP699: changed update rate to use constant
2012-11-05 15:59:13 +01:00
Corvus Corax
ce595a06d9
Merge remote-tracking branch 'baseorigin/revo/corvuscorax/airspeed_fixes' into corvuscorax/airspeed_fixes
...
Conflicts:
flight/RevoMini/UAVObjects.inc
2012-11-05 15:16:03 +01:00
Corvus Corax
8f5b2954ac
Airspeed module: use stored calibration if available
2012-11-05 10:59:06 +01:00
Corvus Corax
5bf18780c1
do not calibrate if there is a pre-stored calibration value
2012-11-05 10:41:24 +01:00
Corvus Corax
4367bd62bf
OP-699 : removed unnecessary object queue in pathplanner
2012-11-05 10:34:44 +01:00
Corvus Corax
e5ab038a89
removed unnecessary comment
2012-11-05 10:33:51 +01:00
Corvus Corax
e2ca9cbb45
OP-699 - refacor ugly buzzer code actuaor module
2012-11-05 10:09:43 +01:00
a*morale
774dde3da5
Normalized the HW configuration to point to _RM_ configuration settins
2012-11-04 13:37:06 +01:00
a*morale
920c2682d2
Fixed UAVObjects.inc for RM to cope with airsped fixes
2012-11-04 11:37:41 +01:00
a*morale
75730e7260
Merge branch 'revo-next' of ssh://git.openpilot.org/revo into revo-next
2012-11-03 21:36:51 +01:00
a*morale
0df1c22933
Fixed channel group for DSM on flexyport
2012-11-03 20:41:33 +01:00
Corvus Corax
3f248915cb
Merge remote-tracking branch 'origin/revo-next' into corvuscorax/airspeed_fixes
2012-11-03 20:03:18 +01:00
a*morale
553b49cdbf
Fixed Flexy serial assingment and added case for telemetry on flexy port
2012-11-02 23:27:15 +01:00
a*morale
3affe846db
Added support for TxPID for RM
2012-11-02 18:06:26 +01:00
a*morale
cfbdaddc94
Fixed invalid value for MS5611 oversample configuration
2012-11-02 17:31:51 +01:00
Erik Gustavsson
677f921b15
Take magnitude of filtered gravity vector into account.
2012-11-02 09:22:18 +01:00
Erik Gustavsson
f63db712d0
Disable accel smoothing during init/arming so it does not interfere
2012-11-02 09:12:24 +01:00
Erik Gustavsson
b7bdf9861d
Run rotated gravity vector through smoothing filter to match phase with filtered accelerometer data.
2012-11-01 12:14:33 +01:00
Richard Flay (Hyper)
10865221b9
Removed a spurious call to AccelsSet() that was causing garbage data to be transiently written to the Accels UAVO. Props to cyr for kicking off the discussion that led to the discovery of this bug.
2012-11-01 18:15:47 +10:30
Corvus Corax
fbacf627ce
Added AirspeedActual to RevoMini
2012-11-01 05:04:55 +01:00
Corvus Corax
ffaab02479
Use Correct Airspeed object in PathPlanner, (and use CalibratedAirspeed, since its more relevant)
2012-11-01 03:46:29 +01:00
Corvus Corax
3458aec53e
Merge branch 'revo-next' into corvuscorax/airspeed_fixes
2012-11-01 03:40:20 +01:00
Erik Gustavsson
c207afbfef
Implement smoothing filter for accelerometer data.
2012-10-31 19:05:59 +01:00
Stacey Sheldon
492fbc88b0
revomini: remove references to POI UAVOs
2012-10-30 21:47:17 -04:00
Sambas
f189596b3d
bootfix, GPS module not included
2012-10-30 20:51:13 +01:00
Sambas
019691e49d
Compile fixes
2012-10-30 20:50:58 +01:00
Stacey Sheldon
5aa3777078
Merge remote-tracking branch 'op-public/next' into revo-next
...
Conflicts:
flight/Modules/Telemetry/telemetry.c
ground/openpilotgcs/src/plugins/uavobjects/uavobjects.pro
2012-10-30 00:41:35 -04:00
Stacey Sheldon
2119067722
Merge remote-tracking branch 'op-revo/james/revo' into revo-next
...
Conflicts:
Makefile
flight/Modules/Attitude/revolution/attitude.c
flight/Modules/Battery/battery.c
flight/Modules/FixedWingPathFollower/fixedwingpathfollower.c
flight/Modules/GPS/GPS.c
flight/Modules/ManualControl/inc/manualcontrol.h
flight/Modules/ManualControl/manualcontrol.c
flight/Modules/OveroSync/overosync.c
flight/Modules/PathPlanner/inc/pathplanner.h
flight/Modules/PathPlanner/pathplanner.c
flight/Modules/Sensors/sensors.c
flight/Modules/VtolPathFollower/vtolpathfollower.c
flight/PiOS/Boards/STM32F4xx_Revolution.h
flight/PiOS/Boards/pios_board.h
flight/PiOS/STM32F4xx/library.mk
flight/PiOS/inc/pios_hmc5883.h
flight/PiOS/inc/pios_l3gd20.h
flight/PiOS/inc/pios_rfm22b_priv.h
flight/Revolution/Makefile
flight/Revolution/Makefile.osx
flight/Revolution/System/inc/pios_config.h
flight/Revolution/UAVObjects.inc
ground/openpilotgcs/src/libs/utils/coordinateconversions.cpp
ground/openpilotgcs/src/libs/utils/homelocationutil.cpp
ground/openpilotgcs/src/libs/utils/homelocationutil.h
ground/openpilotgcs/src/plugins/config/configrevowidget.cpp
ground/openpilotgcs/src/plugins/hitlnew/il2simulator.cpp
ground/openpilotgcs/src/plugins/opmap/opmapgadgetwidget.cpp
ground/openpilotgcs/src/plugins/plugins.pro
ground/openpilotgcs/src/plugins/uavobjects/uavobjects.pro
package/Makefile
shared/uavobjectdefinition/fixedwingpathfollowersettings.xml
shared/uavobjectdefinition/fixedwingpathfollowerstatus.xml
shared/uavobjectdefinition/flightstatus.xml
shared/uavobjectdefinition/hwsettings.xml
shared/uavobjectdefinition/manualcontrolsettings.xml
shared/uavobjectdefinition/pathdesired.xml
shared/uavobjectdefinition/vtolpathfollowersettings.xml
shared/uavobjectdefinition/waypoint.xml
2012-10-30 00:08:43 -04:00
James Cotton
9151e5cded
Sanity Check: Fix indentation
2012-10-28 20:00:03 -05:00
Corvus Corax
6409dfb2df
Further cleanup in PathFollower. Should now be safe to fly again
2012-10-28 21:49:22 +01:00
Corvus Corax
f7dd5cc8ad
Refactored Airspeed and FixedWingPathFollowermodule to use AirspeedActual, which hitl writes to, too. Cleaned up both PathFollower and Airspeed a bit.
2012-10-28 17:45:40 +01:00
lilvinz
3db04ea174
pios_jedec: fixed usage of uninitialized memory
...
When reading the jedec device id the code only transfered one byte via spi leaving
the expected input buffer uninitialized. This may lead to the problem that flash
initialization fails because the expected input may be whatever the stack was set
when entering the function. The impact of the bug is somewhat limited tough as the
initialization usually takes place before starting up the rtos and thus is pretty
deterministic. So if the code passed init while testing it should pass init in
production as well.
2012-10-28 14:34:20 +01:00
James Cotton
a5c743d738
Sanity Check: Cannot connect callback to TaskInfo now it isn't always used.
2012-10-27 14:00:57 -05:00
James Cotton
8864b545ae
Revert "Sanity Checking: Regardless of DIAG_TASK always populate TaskInfo.Running"
...
This reverts commit 0b6fa7fe6f
.
2012-10-27 13:43:59 -05:00
James Cotton
11630b7f7e
SanityCheck: Directly query the task monitor
2012-10-27 13:43:41 -05:00
James Cotton
07a08c327c
Sanity Check: Fix comment
2012-10-25 23:01:35 -05:00
James Cotton
93349e9a56
Sanity Check: uint32_t for loop indexes instead of int
2012-10-25 22:57:57 -05:00
James Cotton
32bf63c436
Sanity Check: Perform the initial check then attach the callbacks to avoid
...
a case where two threads do the same thing.
2012-10-25 22:51:14 -05:00
James Cotton
b28cdba46d
SanityCheck: Trigger sanity check code on callbacks from the appropriate settings.
...
The only downside is that it needs to update on the TaskInfo object which means
since htat updates periodically this code runs more often that really needed since
the modules only start at first. However, leaving that connection out means it
misses the initial set of modules.
2012-10-25 21:49:53 -05:00
Stacey Sheldon
bc3a90c6a9
Merge branch 'one-way-telemetry' into next
2012-10-25 22:48:43 -04:00
James Cotton
736f96b297
Sanity check: Add some initial checks for revo that make sure the needed optional modules are
...
running.
2012-10-25 20:37:21 -05:00
James Cotton
23422d3cd4
Sanity Check. Add the first set of checks:
...
1. If a flight mode switch allows autotune and autotune module not running
2. If airframe is a multirotor and either manual is available or a stabilization mode uses "none"
2012-10-25 20:37:17 -05:00
James Cotton
b9ebeb2c2e
Sanity Check: For now force the sanity check to run once a second and always set an error
2012-10-25 12:43:56 -05:00
James Cotton
0b6fa7fe6f
Sanity Checking: Regardless of DIAG_TASK always populate TaskInfo.Running
...
so we can verify certain modules are running.
2012-10-25 10:01:24 -05:00
Kenz Dale
1ab1ea5899
Save ~150 bytes by moving GPSDataProtocol to SystemSettings.
...
All credit to Anstron.
2012-10-22 16:47:22 +02:00
Stacey Sheldon
4892fdb33d
telemetry: allow telemetry to flow when not connected to GCS
...
Previously, when unconnected, only the flighttelemetrystats
UAVO was Tx'd. All other UAVOs were inhibited. This led to
zero telemetry data when the connection to the GCS was gone.
This precluded getting useful telemetry from a receive-only
station.
This commit changes two main areas.
First, UAVO updates are now allowed regardless of the "connected"
state between the GCS/FC.
Second, it makes both the flighttelemetrystats and gcstelemetrystats
UAVOs un-acked. This prevents these objects from blocking all
other UAVOs while they wait for their ack. This is OK since the
real "connection" negotiation happens via the states exchanged in
the Status field of these UAVOs.
2012-10-21 22:51:17 -04:00
Stacey Sheldon
127ca1e7e1
Merge remote-tracking branch 'op-public/next' into revo-next
...
Conflicts:
ground/openpilotgcs/src/plugins/hitl/plugin.pro
ground/openpilotgcs/src/plugins/hitlnew/fgsimulator.cpp
ground/openpilotgcs/src/plugins/hitlnew/hitlconfiguration.cpp
ground/openpilotgcs/src/plugins/hitlnew/hitloptionspage.cpp
ground/openpilotgcs/src/plugins/hitlnew/hitloptionspage.ui
ground/openpilotgcs/src/plugins/hitlnew/il2simulator.cpp
ground/openpilotgcs/src/plugins/hitlnew/simulator.cpp
ground/openpilotgcs/src/plugins/hitlnew/simulator.h
ground/openpilotgcs/src/plugins/hitlnew/xplanesimulator.cpp
ground/openpilotgcs/src/plugins/uavobjects/uavobjects.pro
2012-10-20 13:56:18 -04:00
Corvus Corax
1fe41c7a67
circular dependency on firmwareinfo due to checksum of firmware required to link firmware - fixed by creating checksum of uavobject inittialization object file instead
2012-10-20 16:07:16 +02:00
Corvus Corax
898292fcdb
added (fake) firmware version information to simposix
2012-10-20 15:22:54 +02:00
James Cotton
96afe7cffd
Merge remote-tracking branch 'origin/stac/add-debug-consoles' into next
2012-10-12 08:07:44 -05:00
Stacey Sheldon
f0e0c2e79e
console: add debug console via USB CDC/VCP interface
...
The USB VCP Port has a new DebugConsole setting that
routes all output destined for PIOS_COM_DEBUG to the
emulated serial port.
To enable this in your build, you'll have to build like:
- make fw_coptercontrol_clean
- make fw_coptercontrol ENABLE_DEBUG_CONSOLE=YES
You can then output formatted text to the console
like this:
#if defined(PIOS_INCLUDE_DEBUG_CONSOLE)
PIOS_COM_SendFormattedString(PIOS_COM_DEBUG,
"foo is %u\r\n",
foo);
#endif /* PIOS_INCLUDE_DEBUG_CONSOLE */
Please ensure that all of your debug output is
wrapped with these macros so that your debug
code doesn't bloat the firmware image.
2012-10-11 00:51:09 -04:00
Stacey Sheldon
75170177df
console: example usage of the debug console
2012-10-11 00:22:07 -04:00
Stacey Sheldon
6088c05946
console: add support for serial debug consoles
...
Serial ports now have a new HW setting called DebugConsole
which can be used to dump internal state to a serial port
for debug.
To enable this feature, you need to:
- make fw_coptercontrol_clean
- make fw_coptercontrol ENABLE_DEBUG_CONSOLE=YES
- configure one of the serial ports as DebugConsole in the GCS
- save settings
- power-cycle your board
Things to note:
- The console is at 57600,8N1.
- This is not currently configurable via the GCS.
- You can only have a single console enabled at a time.
2012-10-11 00:22:07 -04:00
James Cotton
c0b9d9015d
Hack: The OSX sim includes modules slightly differently than the
...
main code so needs an implementation of FirmwareIAPStart() until
this is fixed.
2012-10-10 08:29:30 -05:00
James Cotton
715fb65df7
OSX Simulation: Start populating the board and fw information
...
This will allow testing the tablet to know what type of UAVOs to
expect.
Conflicts:
flight/Revolution/Makefile.osx
2012-10-10 08:29:20 -05:00
James Cotton
aad1c3bd32
FreeRTOS: Make F1 targets use the FreeRTOS common code from PiOS/Common
2012-10-09 10:08:06 -05:00
James Cotton
17f3c4d4e0
Re-add our code for accessing the run time information in freertos.
2012-10-09 09:57:57 -05:00
James Cotton
72c84fc49c
Upgrade to FreeRTOS 7.2.0
2012-10-09 09:48:02 -05:00
Laura Sebesta
c2b49b6ef3
Merge branch 'kenz/cc_hitl_merge' into next
...
Conflicts:
ground/openpilotgcs/src/plugins/gcscontrol/gcscontrolgadgetoptionspage.ui
ground/openpilotgcs/src/plugins/hitlnew/hitloptionspage.ui
ground/openpilotgcs/src/plugins/hitlv2/hitlv2optionspage.ui
2012-10-08 15:30:27 +02:00
James Cotton
4b35cdf0ef
OSX Simulation: Start populating the board and fw information
...
This will allow testing the tablet to know what type of UAVOs to
expect.
2012-10-07 13:53:19 -05:00
Stacey Sheldon
157aeac9fc
Merge remote-tracking branch 'origin/stac/ppm-and-pwm-inputs' into next
2012-10-06 23:04:49 -04:00
sambas
9212bbeb20
DSMx bindmode delay was too long, satellite binding works again.
2012-10-07 12:09:42 +11:00
James Cotton
2191befe17
Merge remote-tracking branch 'revo/brian/rfm22_rf2' into revo
...
Conflicts:
flight/PiOS/Common/pios_rfm22b.c
2012-10-05 08:20:35 -05:00
Brian Webb
9ea572f4f7
RFM22B: Fixed the signedness of the return value of the RSSI function.
2012-10-04 21:23:44 -07:00
Brian Webb
5724fa083c
RFM22B: Added link quality calculation based on number of dropped packets. Also added packet error correction, which apparently wasn't being done before.
2012-10-04 21:11:40 -07:00
Brian Webb
2541affd80
RFM22B: Added back configuration of the RF Power and RF Datarate. Also added setting of the destination ID in the rfm22b driver.
2012-10-04 16:39:07 -05:00
James Cotton
13cabd2ea4
Merge branch 'next' into revo
...
Conflicts:
flight/PiOS/Common/pios_rfm22b.c
2012-10-04 16:38:08 -05:00
Brian Webb
9b9d0c0d1e
RFM22B: Added back configuration of the RF Power and RF Datarate. Also added setting of the destination ID in the rfm22b driver.
2012-10-03 20:03:35 -07:00
James Cotton
c8d9f89ea3
Default DIAG_TASK was on for PipX
2012-10-03 15:11:15 -05:00
James Cotton
5eed0db61b
Hardcode rates to 64kbps
2012-10-03 15:10:12 -05:00
Brian Webb
36437f695f
RFM22B: Moved radio status reporting from the radio module into the rfm22b driver task.
2012-10-03 11:35:02 -05:00
Brian Webb
2d4e0b397a
RFM22B: Removed setting register 0x58 in the rfm22_setDatarate call, which was breaking all data rates < 100000 bps. Also temporatily fixed the datarate at 64kbps.
2012-10-03 11:32:33 -05:00
James Cotton
a39cbdbcb1
RadioBridge: Send data from UAVTalk non blocking, otherwise it can lock up the packet handler.
2012-10-03 10:43:18 -05:00
Brian Webb
3cdb9df05f
RFM22B: Removed setting register 0x58 in the rfm22_setDatarate call, which was breaking all data rates < 100000 bps. Also temporatily fixed the datarate at 64kbps.
2012-10-02 20:59:43 -07:00
Brian Webb
a8590045a8
RFM22B: Moved radio status reporting from the radio module into the rfm22b driver task.
2012-10-02 19:52:21 -07:00
James Cotton
897b07da02
Merge remote-tracking branch 'origin/kenz/diag_stack_split' into next
2012-10-02 14:20:08 -05:00
James Cotton
0c8c148b51
PipX HW Def: Use PIOS_BOARD_HW_DEFS_GetRfm22Cfg since the radio module initializes the modem
...
and doesn't know teh difference between RM2 and PipX
2012-10-02 10:07:50 -05:00
James Cotton
879dfed288
RM2/RM1: Make the firmware and bootloader support the pin mappings between these two targets
...
for USB and radio
A side-effect of this is the pipxsettings are no longer populated into the rfm22b cfg structure
as that was made constant to be consistent with other drivers.
2012-10-02 09:31:15 -05:00
a*morale
c2910d0ce0
Receiver input working for both PPM/PWM mode for rm2
2012-09-30 20:54:10 +02:00
a*morale
227aa98ebc
Added TIM12 to PIOS_TIM
2012-09-30 20:32:03 +02:00
a*morale
be752b8075
Fixed some declaration to Exti functions to make it compile.
2012-09-30 17:04:36 +02:00
a*morale
504d691487
Fixed declaration of PIOS_L3GD20_IRQHandler.
2012-09-30 15:44:31 +02:00
Stacey Sheldon
2f4b1e69dd
rcvr: Support PPM and PWM at the same time on CC
...
Adds a new mode for the receiver port (PPM+PWM) which
will allow simultaneous use of 1 pin for PPM and the
rest of the pins for PWM inputs.
2012-09-29 19:11:48 -04:00
James Cotton
b0d8487e27
PIOS_RFM22: Make the irq return false for the exti changes
2012-09-28 02:14:15 -05:00
James Cotton
61f1140645
Merge branch 'revo' into rm2
2012-09-28 01:01:35 -05:00
James Cotton
5c13c31c08
Merge branch 'next' into revo
...
Conflicts:
ground/openpilotgcs/src/libs/utils/homelocationutil.cpp
ground/openpilotgcs/src/libs/utils/homelocationutil.h
ground/openpilotgcs/src/plugins/opmap/opmapgadgetwidget.cpp
ground/openpilotgcs/src/plugins/uavobjectutil/uavobjectutilmanager.cpp
2012-09-28 01:00:10 -05:00
James Cotton
8979c00fba
Merge branch 'exti_end_switching_isr' into next
2012-09-28 00:41:08 -05:00
James Cotton
519e3e2e3a
PIOS_EXTI: Make the line task macro now take in the xHigherTaskPriority variable name
2012-09-28 00:40:36 -05:00
Stacey Sheldon
9896a0d416
Merge remote-tracking branch 'op-public/next' into revo-next
...
Conflicts:
ground/openpilotgcs/src/libs/utils/homelocationutil.cpp
ground/openpilotgcs/src/libs/utils/homelocationutil.h
ground/openpilotgcs/src/plugins/uavobjectutil/uavobjectutilmanager.cpp
shared/uavobjectdefinition/taskinfo.xml
2012-09-27 22:42:44 -04:00
James Cotton
f12d5c04fb
Merge remote-tracking branch 'origin/lilvinz/mpu6000_masked_locals_fix' into next
2012-09-27 14:43:54 -05:00
James Cotton
1ba40ee9b0
PIOS_EXTI: Make sure to use pdTRUE instead of true where appropriate.
2012-09-27 14:41:38 -05:00
James Cotton
1721479a12
Fix for vinz' merge to pios_mpu6000 exti changes
2012-09-27 14:34:11 -05:00
James Cotton
a021659b75
Merge remote-tracking branch 'origin/lilvinz/exti_end_switching_isr' into next
2012-09-27 14:31:16 -05:00
James Cotton
303fe17969
Merge remote-tracking branch 'revo/brian/rfm22_refactor' into revo
2012-09-27 14:04:48 -05:00
James Cotton
6e114360f4
Merge branch 'next' into revo
...
Conflicts:
shared/uavobjectdefinition/taskinfo.xml
2012-09-27 14:04:44 -05:00
Laura Sebesta
8997df2438
Merge branch 'next' into kenz/diag_stack_split
...
Conflicts:
flight/Modules/Stabilization/stabilization.c
2012-09-27 19:29:23 +02:00
Laura Sebesta
4923655cd3
Added global flag for enabling all diagnostic tools.
2012-09-27 18:51:12 +02:00
James Cotton
d2842169ee
Sensors: Need to support MPU6000 for revision 3
2012-09-26 04:04:48 -05:00
James Cotton
93c44f2a4e
RM2 Temporary patch: Swap the GPIO pins and the VSense pins. This needs to be based on the hardware revision later.
2012-09-26 03:02:25 -05:00
James Cotton
333a96516c
Merge remote-tracking branch 'revo/brian/rfm22_refactor' into rm2
2012-09-26 01:40:23 -05:00
James Cotton
dadc38d82d
Revo Mini 2: Get basic LED working. Board revision is actually 3 since right now it masquerades as Revo.
2012-09-26 01:17:32 -05:00
James Cotton
0fa4b062a4
Merge branch 'next' into revo
2012-09-26 00:43:02 -05:00
Brian Webb
6972c29813
RFM22B: Added check for timeout wating for sync on receive. This virtually eliminates the number of timeouts.
2012-09-25 18:10:15 -07:00
Brian Webb
88be2ddf1e
RFM22B: Added a message timeout event to the RFM22B state machine that will fire if a packet takes too long to transmit / receive.
2012-09-24 20:51:34 -07:00
Stacey Sheldon
215ff56fe8
usbcdc: fix handling of CDC SET_LINE_CODING request
...
The SET_LINE_CODING request contains data and must be
handled as such.
Previously, the only requests that had data were IN
requests. SET_LINE_CODING is an OUT request so it
required additional changes to support a new type of
data request.
2012-09-24 00:56:25 -04:00
Stacey Sheldon
5e37448814
usb: correct enum for CDC SET_CONTROL_LINE_STATE request
2012-09-24 00:53:52 -04:00
Stacey Sheldon
c056ac5261
usbcdc: don't assert on calls when CDC is not initialized
...
The CDC interface is always advertised in the FW USB
descriptors. It is NOT always enabled/initialized at
runtime. Specifically, it can be Disabled in HwSettings.
Previously, any CDC-related query that the host would send
resulted in an assert and a watchdog.
Now, a suitable return code indicating that the request is
unsupported is returned in this scenario.
2012-09-24 00:53:12 -04:00
Brian Webb
a070e1cc3e
RFM22B: Added PIOS_RFM22B_Receive_Packet function and removed rx buffer.
2012-09-23 08:36:38 -07:00
Brian Webb
a46e3cdec3
RFM22B: All outgoing data to the radio is now going through the PIOS_RFM22B_Send_Packet call. Also removed all global variables with the exception of the rx buffer.
2012-09-22 20:13:11 -07:00
Brian Webb
61200f01f5
RFM22B: Major refactoring of te RFM22B driver to implement a state machine for the driver. The state machine should now be complete, and the driver seems to be working pretty well on both the RM and the pipx.
2012-09-22 20:13:10 -07:00
Brian Webb
80509d264e
RFM22B: Start at cleaning up the processing interrupt handling, and starting to make it more of a state machine. Also removed the supervisor, which was causing unnecessary resets. The supervisor functionality is not in the the driver thread.
2012-09-22 20:13:08 -07:00
Brian Webb
057227726b
Radio: Make sure pios_packet_handler is set to 0 when radio module is not initialized.
2012-09-22 20:13:07 -07:00
Brian Webb
8ca2e85f4c
RFM22B: Removed incorrect defaulting of tx power level.
2012-09-22 20:13:05 -07:00
Brian Webb
6623c55846
RFM22B: Moved ISR processing thread into the rfm22b driver.
2012-09-22 20:13:03 -07:00
Brian Webb
432a6dfd00
RM: Fixed crashing when radio module is disabled.
2012-09-22 20:13:02 -07:00
lilvinz
ee146a89eb
updated comments
2012-09-22 10:32:46 +02:00
lilvinz
47cc6216ac
use constants for receivers and updated function description
2012-09-22 10:02:15 +02:00
lilvinz
1169fb5617
added channel data init to gcsreceiver
2012-09-22 09:45:47 +02:00
lilvinz
9b6b5bc729
changed receiver constants to be all negative in order to allow valid channel values of 0 for dsm
2012-09-21 23:51:21 +02:00
James Cotton
497683e571
Fix OSX simulator
2012-09-18 13:29:11 -05:00
Stacey Sheldon
14123069be
gdb: add gdb config file for CC BU image
2012-09-16 21:13:42 -04:00
Stacey Sheldon
566f9d760e
simposix: fix suplicate .c files in previous merge
2012-09-16 19:34:47 -04:00
Stacey Sheldon
ffe88eec5e
Merge remote-tracking branch 'op-public/next' into revo-next
2012-09-16 17:14:20 -04:00
Stacey Sheldon
368d57bc92
Merge remote-tracking branch 'origin/lilvinz/OP-300' into next
2012-09-16 16:05:25 -04:00
lilvinz
a6a7ed8157
pios_exti: added returnvalues to exti handlers which allows to use portEND_SWITCHING_ISR
2012-09-16 21:44:09 +02:00
Stacey Sheldon
05483e2a74
simposix: adapt simposix to addition of relay tuning
2012-09-16 15:40:47 -04:00
lilvinz
524cff1c40
pios_mpu6000: fixed masked locals mistake
2012-09-16 21:25:06 +02:00
lilvinz
718062ed6e
pios_led: added support for active_high connected leds
2012-09-16 18:19:27 +02:00
Stacey Sheldon
754f58c33a
Merge remote-tracking branch 'op-public/next' into revo-next
...
Conflicts:
flight/Modules/ManualControl/inc/manualcontrol.h
flight/Revolution/Makefile.osx
ground/openpilotgcs/src/plugins/plugins.pro
ground/openpilotgcs/src/plugins/uavobjects/uavobjects.pro
ground/openpilotgcs/src/plugins/uploader/uploadergadgetwidget.cpp
shared/uavobjectdefinition/flightstatus.xml
shared/uavobjectdefinition/hwsettings.xml
shared/uavobjectdefinition/manualcontrolsettings.xml
shared/uavobjectdefinition/taskinfo.xml
2012-09-16 09:56:35 -04:00
Stacey Sheldon
9a5ba841cf
Merge remote-tracking branch 'op-public/next' into revo-next
...
Conflicts:
ground/openpilotgcs/src/libs/utils/coordinateconversions.cpp
ground/openpilotgcs/src/plugins/hitlnew/il2simulator.cpp
ground/openpilotgcs/src/plugins/hitlnew/xplanesimulator.cpp
ground/openpilotgcs/src/plugins/opmap/opmapgadgetwidget.cpp
ground/openpilotgcs/src/plugins/opmap/opmapgadgetwidget.h
ground/openpilotgcs/src/plugins/uavobjects/uavobjects.pro
shared/uavobjectdefinition/pathaction.xml
shared/uavobjectdefinition/waypointactive.xml
2012-09-15 19:55:47 -04:00
James Cotton
13e7733e5f
Merge branch 'revo-mini' into revo
2012-09-12 02:30:10 -05:00
James Cotton
223a3473c2
Merge branch 'next' into revo-mini
2012-09-12 02:03:39 -05:00
James Cotton
595083c982
PID: Fix small bug in setpoint weighting that had really ugly consequences
2012-09-12 00:07:17 -05:00
James Cotton
4717c376c0
Stabilization: For the inner loop call the setpoint shaping version so that
...
the derivative term can weight the sticks and gyros independently.
2012-09-11 13:21:53 -05:00
James Cotton
e4a167dca1
PID: Add a pid_apply_setpoint which takes in the setpoint and feedback term
...
This version allows performing setpoint weighting, currently on the derivative
component.
2012-09-11 13:21:19 -05:00
James Cotton
11b099b1ef
Stabilization: Add configuration terms for the derivative calculation to the UAVO and pass
...
them in to the PID system.
2012-09-11 12:29:38 -05:00
James Cotton
42bbd52d68
PID: Add a function to set the cutoff for the derivative term
...
Also contains a term for setting the deriative setpoint in the future
2012-09-11 12:27:41 -05:00
James Cotton
86422b8b9e
VtolPathFollower: Make sure to clear the alarm when running so it doesn't show as
...
uninintialized
2012-09-11 02:34:31 -05:00
James Cotton
88b483f37d
PIOS_MPU6000: Make the driver perform the rotation to bring it into the OP
...
coordinate system
Previously there were hacks spread throughout to deal with various ways of
positioning the chips. Now the driver structure specifies the rotation
of the chip relative to the board layout and the output X/Y/Z are already
in OP convention.
This flag seems to do the right thing for Revolution, CC3D, and RevoMini
2012-09-11 01:46:22 -05:00
James Cotton
4cbaa6df88
Revolution: Misses some files for stabilization refactoring in Revolution
2012-09-11 01:44:40 -05:00
a*morale
cf7aea6499
Support for Led Outputs as actuator channels 9&10.
...
Added the ARMING LED and INFO LED option for actuator channel
2012-09-10 20:14:24 -05:00
a*morale
316e02612e
mapped LED1&2 ports to output 9&10 so that it is possible to use as accessory or pwm buzzer
2012-09-10 20:14:15 -05:00
James Cotton
aaaf23e64c
ManualControl: Cover the case for PathPlanner to avoid setting an alarm. No functional change.
2012-09-10 20:12:58 -05:00
James Cotton
5211176f15
ManualControl: Cover the case for PathPlanner to avoid setting an alarm. No functional change.
2012-09-10 20:12:23 -05:00
James Cotton
38e9d105aa
Merge branch 'pidt1' into test2
...
Conflicts:
flight/Modules/ManualControl/inc/manualcontrol.h
ground/openpilotgcs/src/plugins/uavobjects/uavobjects.pro
shared/uavobjectdefinition/flightstatus.xml
shared/uavobjectdefinition/hwsettings.xml
shared/uavobjectdefinition/manualcontrolsettings.xml
shared/uavobjectdefinition/taskinfo.xml
2012-09-10 14:37:52 -05:00
James Cotton
386a9d41ef
Merge branch 'next' into test2
...
Conflicts:
ground/openpilotgcs/src/plugins/config/configrevowidget.cpp
ground/openpilotgcs/src/plugins/opmap/opmapgadgetwidget.cpp
ground/openpilotgcs/src/plugins/uavobjects/uavobjecttemplate.m
2012-09-10 14:29:26 -05:00
James Cotton
fa9a616b4c
PID: Add the 20 Hz low pass filter to the derivative term
2012-09-10 03:14:02 -05:00
James Cotton
9763a70364
Merge remote-tracking branch 'origin/igor/pidt1' into relay_tuning
...
Conflicts:
flight/Modules/Stabilization/stabilization.c
2012-09-10 03:10:26 -05:00
Igor Van Airde
8ca99739ed
Changed rate controller from PID to PIDT1 to improve flight stability.
...
Low pass on D-Term makes the D-Term usable to improve flight stability.
Affects rate and stabilize mode.
2012-09-09 13:07:25 +02:00
James Cotton
f3f07682ac
RFM22b radio.c: Increase the stack side for the status task which runs the ISR
2012-09-08 12:43:01 -05:00
James Cotton
527edcbee9
RFM22b: Get rid of the burst read commands and do a block transfer
2012-09-08 12:39:14 -05:00
James Cotton
1f0004e9db
RFM22b: Abstract out the port into the driver initiation
...
Also use a separate function to claim the bus semaphore and
assert the CS line.
2012-09-08 12:38:54 -05:00
Werner Backes
2a4e135c81
Merge branch 'D-Lite/fix_CC3D_yawBias_correction' into next
2012-09-06 13:47:03 +02:00
Werner Backes
4803dfe99c
Fix: yaw bias correction wasn't applied on CC3D.
2012-09-06 13:13:58 +02:00
Stacey Sheldon
97882dbef9
pipx: ensure pipx BL image is padded to fill its bank
...
This padding is required in order to properly align all
of the sections in the EF images.
2012-09-05 22:17:04 -04:00
Stacey Sheldon
803e3c4d1e
ef: Add fwinfo to entireflash (EF) images
...
EF images were missing the firmware info blob that describes
which firmware is installed on the board. The EF image is now
padded out to fill the firmware bank and the info blob is
properly placed at the tail end of the firmware bank.
2012-09-05 21:45:59 -04:00
James Cotton
68fa464ccf
RM: Make the direction of the TX/RX lines come from the configuration file
2012-09-04 23:22:56 -05:00
James Cotton
2f65fc1e8e
Merge branch 'next' into relay_tuning
...
Conflicts:
shared/uavobjectdefinition/manualcontrolsettings.xml
shared/uavobjectdefinition/taskinfo.xml
2012-09-04 10:43:04 -05:00
James Cotton
844d14e2f5
RM (NOT FOR PIPX) Properly select the GPIO->RX/TX mapping
2012-09-04 10:22:04 -05:00
James Cotton
113c3d3b76
RM Telem: Make sure it properly tracks the outgoing rate of bytes
2012-09-04 10:20:51 -05:00
James Cotton
0b947b243d
Revert "RFM22b: More block claims for rfm22_txStart"
...
This reverts commit fa4ca426abf5671fc7d0b7206f85f14bcbf92c3d.
2012-09-02 22:44:58 -05:00
James Cotton
dce4f36328
RFM22b: More block claims for rfm22_txStart
...
Warning: This patch makes the modem work more poorly
2012-09-02 22:44:58 -05:00
James Cotton
61ff335eaa
RFM22: No need to poll the ISR from two tasks in radio.c
2012-09-02 22:44:58 -05:00
James Cotton
db083aa0e9
Merge branch 'android' into next
2012-09-02 19:19:23 -05:00
James Cotton
311bbcb539
RFM22b: Block transfers for more large SPI transfers
...
Preallocated buffers with various preambles etc. Used SPI_TransferBlock for
anything over a few bytes instead of burstWrite. Also make more of the
communications wrappered in a large semaphore grab using a new rfm22_write_noclaim()
Still needs work - probably because most of the methods to repeated calls they should
all use the noclaim, or more specifically that function becomes rfm22_write/read.
2012-09-02 14:35:56 -05:00
James Cotton
588297806c
RFM22b: Use SPI block transfers for filling the RFM22b FIFO
...
Also removed the disable irq line since that was introducing
flight glitches.
2012-09-01 21:24:42 -05:00
James Cotton
997319ae80
RFM22b: Begin doing blocks of transfers when possible between semaphore claims
...
The abstraction should probably be improved but ideally we start using
the DMA SPI transfers for PipX and grabbing/releasing the semaphore less
frequently (e.g. not for each 1-2 bytes).
2012-09-01 21:07:38 -05:00
Brian Webb
27fedee3d3
Just return an initialization failure in the radio module when the RFM22B fails to initialize rather than asserting.
...
Signed-off-by: James Cotton <peabody124@gmail.com>
2012-09-01 19:15:13 -05:00
Brian Webb
fcbf01fa74
RFM22b: Added SPI initialization back into PipX pios_board.c.
...
Signed-off-by: James Cotton <peabody124@gmail.com>
2012-09-01 19:14:36 -05:00
James Cotton
d9ec6454c2
PipX: Since we are calling the PipX ISR from user space looks ensure the frequency stays correct.
...
Previously it was polling too fast and the PipXStatus was incorrect as a result. Now make
sure the stats loop only runs at 500 ms.
2012-09-01 19:13:11 -05:00
James Cotton
c9f66f5145
Merge branch 'revo' into revo-mini
...
Conflicts:
androidgcs/AndroidManifest.xml
androidgcs/res/layout/gcs_home.xml
androidgcs/res/values/strings.xml
androidgcs/src/org/openpilot/androidgcs/AttitudeView.java
androidgcs/src/org/openpilot/androidgcs/HomePage.java
flight/PipXtreme/System/pios_board.c
ground/openpilotgcs/src/plugins/uavobjectwidgetutils/configtaskwidget.cpp
shared/uavobjectdefinition/taskinfo.xml
2012-09-01 16:57:27 -05:00
James Cotton
6bfb2a5e45
Merge branch 'next' into revo
...
Conflicts:
ground/openpilotgcs/src/libs/opmapcontrol/src/mapwidget/mapgraphicitem.cpp
ground/openpilotgcs/src/libs/opmapcontrol/src/mapwidget/mapripper.cpp
ground/openpilotgcs/src/libs/opmapcontrol/src/mapwidget/waypointitem.cpp
ground/openpilotgcs/src/libs/opmapcontrol/src/mapwidget/waypointitem.h
ground/openpilotgcs/src/libs/utils/coordinateconversions.cpp
ground/openpilotgcs/src/libs/utils/coordinateconversions.h
ground/openpilotgcs/src/plugins/opmap/opmap.pro
ground/openpilotgcs/src/plugins/opmap/opmapgadgetwidget.cpp
ground/openpilotgcs/src/plugins/opmap/opmapgadgetwidget.h
ground/openpilotgcs/src/plugins/uavobjectwidgetutils/configtaskwidget.cpp
shared/uavobjectdefinition/taskinfo.xml
shared/uavobjectdefinition/waypoint.xml
2012-09-01 16:18:03 -05:00
James Cotton
878def305f
RM: Make radio an optional module
2012-09-01 11:11:52 -05:00
James Cotton
0d3b0d4e5b
Fixup: Disable binding on mainport for DSM
2012-09-01 11:11:28 -05:00
James Cotton
f3327e3993
RM: Enabled optional modules and got the battery module working again.
...
Changed the hardcoded (ick) battery lines for RM. Also removed the reference
to PIOS_ADC_GetPin(4) as that pin is no longer available. Finally
changed the default FlightBatterySettings to work out of the box
for the standard recommended sensors.
2012-09-01 11:03:32 -05:00
James Cotton
a33f415866
RM DSM: Get DSM working on the mainport
...
Because of the inverter this does not support binding on this port.
2012-08-31 11:08:43 -05:00
James Cotton
300cee44b4
RM SBUS: There is no pull down on the inverter direction so when not SBUS must explicitly set to off.
2012-08-31 11:01:34 -05:00
James Cotton
d333e24a43
RM: Swap to using the CC_ flags for the flexi port too.
2012-08-31 10:30:00 -05:00
James Cotton
73c7190077
RM GPS: Use the CC_MainPort instead of a RV flag and enable GPS support
2012-08-31 10:17:10 -05:00
Kenz Dale
e123a88262
Added UAVO for airspeeds.
2012-08-29 16:04:47 +02:00
Brian Webb
6b3934576a
Fixed configuration of PipX com port as UAVTalk.
2012-08-26 11:18:23 -05:00
James Cotton
bdd50ce66b
Reenable the flash system
2012-08-26 05:03:05 -05:00
James Cotton
b888a137f0
TOFIX: Temporarily remove the transaction lock from the settings as it was causing a deadlock with the radio coms.
2012-08-26 05:02:14 -05:00
James Cotton
042055b29a
RFM22b: Call the pendingISR routine from all the user space tasks. Got a valid connection with this.
2012-08-26 04:18:17 -05:00
James Cotton
f7cda1c0c4
RFM22b: No need to initialize the SPI. Done already.
2012-08-26 02:42:18 -05:00
James Cotton
477385ca25
RFM22b: Start to move the ISR into userspace
2012-08-26 02:41:19 -05:00
James Cotton
b1bd6d8583
PIOS_RFM22b: No need to set the SPI clock speed in the RFM22b module - it can be set by the driver configuration.
2012-08-26 00:00:39 -05:00
James Cotton
27c46c78b2
Increase the RFM22b/Flash rate to 10MHz which is within tolerance for both.
2012-08-25 23:17:53 -05:00
James Cotton
84d327c46a
RFM22b: Claim the bus semaphore before reading and writing.
2012-08-25 23:17:52 -05:00
James Cotton
2bb4f860e1
Shuffle around the PACKET_HANDLER definition so we can more easily disable the Radio module.
2012-08-25 22:58:11 -05:00
James Cotton
06154836c6
Define the RADIO_BUILTIN in config file
2012-08-25 19:31:48 -05:00
James Cotton
4014445cc9
Fix the IRQ line for the RFM22b
2012-08-25 19:10:16 -05:00
James Cotton
3a3fc3d124
Make the radio module builtin
2012-08-25 18:48:41 -05:00
James Cotton
a7b5fcd77c
Monitor the radio threads
2012-08-25 18:48:30 -05:00
James Cotton
9e25e887c2
Temporarily disable flash chip and configure SPI for modem.
2012-08-25 18:43:13 -05:00
James Cotton
ad7a9b9cc3
Switch the order of the SET_RC pins for flash and rfm22b
2012-08-25 17:49:15 -05:00
James Cotton
b95a78cde5
Roll back changes on the revo target
2012-08-25 17:33:14 -05:00
James Cotton
81ddbda972
Sensors: Scope some variables to suppress warnings
2012-08-25 17:30:04 -05:00
James Cotton
76bdb190d8
Link in the rfm module to the target
2012-08-25 17:27:17 -05:00
James Cotton
daad1d6f8f
Sensors: Scope some variables to suppress warnings
2012-08-25 17:12:37 -05:00
James Cotton
982750a58f
Merge remote-tracking branch 'revo/brian/revo_link' into revo-mini
...
Conflicts:
ground/openpilotgcs/src/plugins/plugins.pro
2012-08-25 15:05:47 -05:00
James Cotton
a9b48cf1ca
Merge remote-tracking branch 'revo/amorale/revolution_baro_fixes' into revo
2012-08-25 14:55:23 -05:00
James Cotton
5c34412200
Merge remote-tracking branch 'revo/amorale/revolution_baro_fixes' into revo-mini
2012-08-25 14:55:10 -05:00
Brian Webb
b3dc617702
Fixed PPM output from updated RadioComBridge module.
2012-08-25 12:52:06 -07:00
James Cotton
c5fda8208b
TOFIX: For now hardcode a reversed orientation of MPU6000 for RevoMini
2012-08-25 14:41:03 -05:00
Brian Webb
e602b73a6f
Split out the PipX radio interface from RadioComBridge module to a separate Radio module. Now the RadioComBridge module just routes messages between the com ports and handles sending/receiving the PipX UAVOs.
...
Conflicts:
flight/Modules/RadioComBridge/RadioComBridge.c
flight/PipXtreme/System/pios_board.c
Conflicts:
flight/Modules/RadioComBridge/RadioComBridge.c
2012-08-25 12:29:02 -07:00
James Cotton
c3906cfe90
Reenable the other main modules
2012-08-25 14:22:06 -05:00
James Cotton
0decce582b
Got all the sensors reading
2012-08-25 14:19:15 -05:00
Stacey Sheldon
e7bf1db165
Revert "Removed Revolution specific code"
...
This reverts commit d4a401ce30
.
2012-08-25 14:57:16 -04:00
James Cotton
31ebb7bbd8
Remove the old BMA180 and L3GD20 code and fix the irq lines for the sensors.
2012-08-25 13:51:52 -05:00
James Cotton
2edc976168
Fix the VBUS sense pin
2012-08-25 13:46:55 -05:00
Brian Webb
415b86879c
Added the RFM22B driver to the Revo to support an RFM22B radio on the external SPI port.
2012-08-25 11:45:43 -07:00
Brian Webb
fad32dcc29
Split out the PipX radio interface from RadioComBridge module to a separate Radio module. Now the RadioComBridge module just routes messages between the com ports and handles sending/receiving the PipX UAVOs.
2012-08-25 11:41:32 -07:00
James Cotton
ce5ef7edf3
Update the serial ports and receiver and servo ports
2012-08-25 13:19:23 -05:00
James Cotton
b9050809cc
Add a board info file for revo mini. However it was to remap the define MAINADAPTER for the HMC5883 driver which needs rewriting not to need this.
2012-08-25 12:57:50 -05:00
James Cotton
05e2e24bcb
Reconfigure the SPI ports.
2012-08-25 12:38:44 -05:00
James Cotton
60160001c6
Copy the revo project to revo mini
2012-08-25 12:23:54 -05:00
a*morale
c696cccff8
Added an option to be able to change the interleave between Pressure and Temperature conversion for the MS5611
...
To enable this option define the PIOS_MS5611_SLOW_TEMP_RATE with the number of Pressure conversion for each Temperature conversion.
2012-08-25 13:04:41 +02:00
a*morale
257b00a400
Fixed a typo on I2C speed for the MS5611
2012-08-25 12:28:25 +02:00
a*morale
789746151a
Fixes the selection of the oversample settings from the pios_ms5611_cfg.oversapling configuration
2012-08-25 11:29:01 +02:00
James Cotton
59d1367d37
Autotuning: Make the output also follow the hysteresis output
2012-08-24 22:45:45 -05:00
Brian Webb
34b433e074
Added UAVTalkSendBuf function and added locking in UAVTalkSendAck and UAVTalkSendNack.
2012-08-24 19:42:10 -07:00
Brian Webb
b1c88628f6
Merge branch 'james/revo' of ssh://git.openpilot.org/revo into brian/revo_link
2012-08-24 19:35:40 -07:00
James Cotton
a3f1894cd7
Autotuning: Make the estimator require the value to toggle above and below the hysteresis level.
2012-08-24 21:33:08 -05:00
James Cotton
8babe5d8a4
Autotuning: Increase the measurement time to 30 seconds.
2012-08-24 21:32:11 -05:00
Brian Webb
7ce0004c47
Added include of stdint.h to aes.c
2012-08-24 19:26:06 -07:00
Laura Sebesta
929bf73504
Missed adding a diagnostics refactor to the commit.
2012-08-24 12:04:55 +02:00
Laura Sebesta
f2ffd1fb99
Changed DIAGNOSTICS flag to be individual to each module instead of global.
...
The upshot is the stack usage monitor can be turned on at a lower RAM threshold.
2012-08-24 12:04:05 +02:00
Brian Webb
88c8cba0ff
Reduced size of temporaries to the correct size in rs.c
2012-08-22 06:46:51 -07:00
Brian Webb
2cd0733f7d
Removed unecessary include of stm32f10x.h from aes.h
2012-08-22 06:45:44 -07:00
a*morale
d8ea84cdf1
Fix output power selection from the configured value at startup
2012-08-21 18:51:45 +02:00
Stacey Sheldon
431863b0c2
sdcard: build fixes for revo due to sdcard removal
...
Related to commit: 56647f5409
merged from op-public.
2012-08-20 21:32:19 -04:00
Stacey Sheldon
1f1b240b2a
Merge remote-tracking branch 'op-public/next' into revo-next
...
Conflicts:
shared/uavobjectdefinition/manualcontrolsettings.xml
shared/uavobjectdefinition/taskinfo.xml
2012-08-20 21:22:02 -04:00
Stacey Sheldon
2d0e4944d3
Merge remote-tracking branch 'origin/stac/actuator-task-cpu-optimization' into next
2012-08-20 19:13:39 -04:00
James Cotton
113a759cd9
Merge branch 'next' into revo
2012-08-19 21:22:02 -05:00
Brian Webb
171f91336c
Removed assert that was no longer needef form PipX pios_board.c
2012-08-18 08:40:19 -07:00
James Cotton
c4b82fa1fd
Disable transmitter updating PH location while using a tablet.
2012-08-12 17:51:52 -05:00
James Cotton
44dc01126e
Merge branch 'next' into revo
2012-08-12 16:12:54 -05:00
James Cotton
3d1a6cbcba
Attitude: Make sure the EKF can init if HomeLocation is not set but the
...
magnetic field is. Good for switching between indoor and outdoor mode.
2012-08-12 16:11:04 -05:00
James Cotton
880eb5eb11
Fix revo for the removal of SDCard supprot
2012-08-12 14:45:06 -05:00
James Cotton
18d63f7e9c
Merge commit 'b19a0947fb72dc069540561ffeb6983ee318fcb9' into revo
2012-08-12 14:39:30 -05:00
James Cotton
75db0fcb35
Merge branch 'next' into revo
...
Conflicts:
flight/Modules/GPS/GPS.c
shared/uavobjectdefinition/manualcontrolsettings.xml
shared/uavobjectdefinition/systemalarms.xml
2012-08-12 14:38:38 -05:00
Stacey Sheldon
9f8d22961f
cc makefile: enable -ffunction-sections and -fdata-sections
...
These compiler options place each function and each global variable
into its own ELF section in each .o file. This, combined with the
linker option --gc-sections allows the linker to evict unused functions
and variables from the final ELF file.
On CC, the firmware flash bank is only 118784 bytes in total.
This commit reduces the .text segment from 114120 to 83536 and .data
from 572 bytes to 560 bytes. That frees up a grand total of 30596 bytes
of flash and 12 bytes of RAM.
2012-08-11 20:13:09 -04:00
Stacey Sheldon
29ab1d8cf3
actuator: factor out settings updates from main loop
2012-08-11 19:46:00 -04:00
Stacey Sheldon
63c167c183
taskinfo: also track Event thread's stack usage and CPU utilization
...
The event dispatcher thread is started differently than most other
threads so it was missed in the taskinfo tracking information. Now
it's also included.
2012-08-11 18:47:03 -04:00
Stacey Sheldon
b505602c15
Merge remote-tracking branch 'origin/stac/rc-tx-joystick-emulation' into next
2012-08-11 11:21:18 -04:00
Stacey Sheldon
49c153003c
hid joystick: use linearly scaled channels
...
Scales each channel only based on max and min calibrated values.
The neutral value is now ignored so the joystick sees a linear
range between min and max.
This is particularly useful to allow the full range of values for
throttle to be passed through to the joystick.
2012-08-10 23:36:06 -04:00
Stacey Sheldon
07fde38887
hid joystick: factor out min/max range from report items
2012-08-10 23:29:34 -04:00
James Cotton
f530702ce9
Merge branch 'android' into sim_android
...
Conflicts:
androidgcs/AndroidManifest.xml
androidgcs/res/layout/gcs_home.xml
androidgcs/res/layout/pfd.xml
androidgcs/res/layout/system_alarms.xml
androidgcs/src/org/openpilot/androidgcs/AttitudeView.java
androidgcs/src/org/openpilot/androidgcs/BluetoothDevicePreference.java
androidgcs/src/org/openpilot/androidgcs/CompassView.java
androidgcs/src/org/openpilot/androidgcs/Controller.java
androidgcs/src/org/openpilot/androidgcs/HomePage.java
androidgcs/src/org/openpilot/androidgcs/Logger.java
androidgcs/src/org/openpilot/androidgcs/ObjectBrowser.java
androidgcs/src/org/openpilot/androidgcs/ObjectEditor.java
androidgcs/src/org/openpilot/androidgcs/ObjectManagerActivity.java
androidgcs/src/org/openpilot/androidgcs/Preferences.java
androidgcs/src/org/openpilot/androidgcs/SystemAlarmActivity.java
androidgcs/src/org/openpilot/androidgcs/TelemetryWidget.java
androidgcs/src/org/openpilot/androidgcs/UAVLocation.java
androidgcs/src/org/openpilot/uavtalk/Telemetry.java
androidgcs/src/org/openpilot/uavtalk/TelemetryMonitor.java
androidgcs/src/org/openpilot/uavtalk/UAVDataObject.java
androidgcs/src/org/openpilot/uavtalk/UAVMetaObject.java
androidgcs/src/org/openpilot/uavtalk/UAVObject.java
androidgcs/src/org/openpilot/uavtalk/UAVObjectField.java
androidgcs/src/org/openpilot/uavtalk/UAVObjectManager.java
androidgcs/src/org/openpilot/uavtalk/UAVTalk.java
androidgcs/src/org/openpilot/uavtalk/uavobjects/AltitudeHoldSettings.java
androidgcs/src/org/openpilot/uavtalk/uavobjects/FirmwareIAPObj.java
androidgcs/src/org/openpilot/uavtalk/uavobjects/FlightBatterySettings.java
androidgcs/src/org/openpilot/uavtalk/uavobjects/FlightBatteryState.java
androidgcs/src/org/openpilot/uavtalk/uavobjects/FlightStatus.java
androidgcs/src/org/openpilot/uavtalk/uavobjects/HomeLocation.java
androidgcs/src/org/openpilot/uavtalk/uavobjects/HwSettings.java
androidgcs/src/org/openpilot/uavtalk/uavobjects/ManualControlSettings.java
androidgcs/src/org/openpilot/uavtalk/uavobjects/OveroSyncStats.java
androidgcs/src/org/openpilot/uavtalk/uavobjects/PositionActual.java
androidgcs/src/org/openpilot/uavtalk/uavobjects/RevoCalibration.java
androidgcs/src/org/openpilot/uavtalk/uavobjects/SystemAlarms.java
androidgcs/src/org/openpilot/uavtalk/uavobjects/TaskInfo.java
androidgcs/src/org/openpilot/uavtalk/uavobjects/UAVObjectsInitialize.java
flight/Modules/GPS/GPS.c
2012-08-08 15:50:28 -05:00
James Cotton
06a6e367b0
Merge remote-tracking branch 'origin/hyper/OP-661' into next
2012-08-08 13:49:48 -05:00
Stacey Sheldon
5902c19cc3
hid joystick: compress local usages since they're all in the same page
2012-08-08 10:38:43 -04:00
Stacey Sheldon
030d9e84f9
hid joystick: remove unnecessary usage page definitions
2012-08-08 10:15:08 -04:00
Stacey Sheldon
449c7aab7a
hid joystick: use 32-bits to represent max range
2012-08-08 00:50:03 -04:00
Stacey Sheldon
94f6344fc5
hid joystick: restructure joystick HID report to work on windows
2012-08-07 21:34:25 -04:00
James Cotton
097ae637bf
Remove the TCHAIN_PREFIX flag from the OSX Makefile. No clue how that got
...
merged in.
2012-08-06 16:54:55 -05:00
James Cotton
f247443d64
Clean up the logging somewhat
2012-08-06 16:54:52 -05:00
Stacey Sheldon
017d8c79c9
hid joystick: add missing .c file
...
This time for sure...
2012-08-06 11:49:03 -04:00
Stacey Sheldon
d44e24a150
hid joystick: add missing .h files
2012-08-06 11:42:44 -04:00
Stacey Sheldon
ef0c12b1b6
hid joystick: emulate a USB HID joystick using RC Transmitter
...
Adds a new RCTransmitter setting for the USB HID interface which
emulates a USB HID joystick. The scaled RC receiver channels
from any RCVR protocol are passed through to the various emulated
joystick controls.
The main use for this feature is to allow you to use your own RC
transmitter with any RC simulator on a PC.
This is known to work with CRRCsim but should work with any simulator
that supports joystick input.
2012-08-05 21:45:27 -04:00
James Cotton
096f940fee
Reenable the flash version now Stac's fix is tested.
2012-08-04 12:03:41 -05:00
James Cotton
d6c485459f
Fix error Stac caught in sin_lookup
2012-08-04 00:33:20 -05:00
James Cotton
8eac518a9c
If the sin table is empty don't attempt to use it and return 0.
2012-08-03 12:43:50 -05:00
James Cotton
f3dc2dc2ad
Store 180 deg in flash now and even make the flash and ram version share a
...
lookup method. Still don't get the same results.
2012-08-03 12:31:15 -05:00
James Cotton
9f3c8dddd3
Add a version of the sin lookup table that is in ram instead of flash
2012-08-03 12:15:57 -05:00
James Cotton
490955dbea
Use cos_lookup instead of sin_looup(x+90)
2012-08-03 11:34:05 -05:00
James Cotton
3982ad0046
Enable AUTOTUNE by default for CC
2012-08-03 09:37:47 -05:00
James Cotton
fc2f8376bc
Prevent an alarm from ManualControlCommand when using autotuning mode.
2012-08-03 09:37:47 -05:00
James Cotton
50c7641162
Move the PID methods into a standalone library
2012-08-03 09:37:46 -05:00
James Cotton
2723ff4be3
Factor the virtual flybar code out of the stabilization module
2012-08-03 09:37:46 -05:00
James Cotton
aae0e562c6
Create a sine lookup table that is cached in flash and make relay tuning start
...
ot use this.
2012-08-03 09:37:46 -05:00
James Cotton
924c91ce1e
Fix mistake from previous merge with duplicate the STABILIZATIONOMDE_ATTITUDE
...
case
2012-08-03 09:37:46 -05:00
James Cotton
8565dfbcc3
Factor the relay tuning out of the main stabilization.c file into it's own
...
tool.
2012-08-03 09:37:46 -05:00
James Cotton
ee4bb84e36
Fix: Increase teh memory for autotune back to 1024 which leaves 100 free.
2012-08-03 09:37:46 -05:00
James Cotton
561cf994b0
Reduce the memory footprint of the sin lookup table by using sin(x+pi) =
...
-sin(x). Still just needs to move into flash and have some options about
precision when in its own library function.
2012-08-03 09:37:46 -05:00
James Cotton
652647fc87
Make autotuning module optional
2012-08-03 09:37:46 -05:00
James Cotton
d0ef95ff9a
Fix idiotic bug in the stab_refactor
2012-08-03 09:37:46 -05:00
James Cotton
2ccd6605a4
Now the stabilization refactor is in we can make swapping between tuning the
...
system in rate or attitude mode software configurable.
2012-08-03 09:37:45 -05:00
James Cotton
24d9e50c08
Based on the selected behavior either apply or save the stabilization settings
2012-08-03 09:37:45 -05:00
James Cotton
7ea14ecc22
Track the output gain instead of amplitude so the measured values are
...
consistent if the settings are changed afterwards.
2012-08-03 09:37:45 -05:00
James Cotton
17878b32f3
Make autotune run within an attitude loop instead of direct rate mode. Easier
...
for beginners.
2012-08-03 09:37:44 -05:00
James Cotton
48362f56f6
Enable autotune as an optional CC module
2012-08-03 09:37:44 -05:00
James Cotton
a9af53b4f3
Create new autotuning module which rotates through the axes for autotuning and
...
then computes new stabilization settings.
2012-08-03 09:37:44 -05:00