Commit Graph

1031 Commits

Author SHA1 Message Date
Jason Short 6ecb6f21a6 increased filter 2011-11-25 11:34:05 -08:00
James Goppert 65e8b587f9 Working on comments. 2011-11-24 15:54:08 -05:00
James Goppert d31b1b31f4 Merge branch 'master' of https://code.google.com/p/ardupilot-mega 2011-11-24 14:28:25 -05:00
James Goppert fc84c15426 Separated controller block class.
Also improved documentation of AP_ControllerBlock.
2011-11-24 13:28:14 -05:00
James Goppert aaca5094b6 Removed old variable from hal. 2011-11-24 02:08:27 -05:00
Wenyao Xie 3c217d4186 Worked on autopilot state/ mode mapping. Corrected PIDBlock sign error. 2011-11-22 16:42:51 -05:00
Andrew Tridgell 154c55c9dc desktop: more fixes for DataFlash filesystem changes 2011-11-20 19:06:24 +11:00
James Goppert 50e8de999f Fixed most of quad guidance issues. 2011-11-19 23:34:14 -05:00
James Goppert 7a742c4a2a Working on memory problem. 2011-11-19 22:20:06 -05:00
James Goppert 1c5db5e963 Bug located in quad position loop, improved hil. 2011-11-19 21:39:14 -05:00
James Goppert cc66b43d12 Merge branch 'master' of https://code.google.com/p/ardupilot-mega 2011-11-18 14:36:47 -05:00
Andrew Tridgell 927c2dbd67 desktop: added support for new DataFlash functions 2011-11-18 17:50:12 +11:00
Doug Weibel a11ea12ca8 Change to logging file system.
This commit is somewhat temporary as I have come up with a better scheme and will be modifying this.  Just making this commit in case I need to roll back
2011-11-17 21:25:51 -07:00
Jason Short 7f2ec90703 Upped pressure filter a bit 2011-11-17 11:12:18 -08:00
Wenyao Xie 6c51157b2d Working on new hil message for mavlink. 2011-11-15 17:15:54 -05:00
Andrew Tridgell 8a3ea5bfff desktop: when in the CLI, use blocking writes
this prevents us missing information from the logs
2011-11-11 09:53:46 +11:00
Andrew Tridgell 34af368b8a desktop: don't start alarm till setup() has finished 2011-11-10 21:57:47 +11:00
Jason Short 34e6b3535d MAV_CMD_DO_SET_ROI 2011-11-09 12:07:57 -08:00
Andrew Tridgell af1ddacc1b desktop: don't alarm in CLI
loop() is not called in menu system
2011-11-10 00:14:04 +11:00
Andrew Tridgell 3303c09a9d desktop: exit if loop() doesn't run for 5 seconds
this should stop runaway processes
2011-11-09 19:40:34 +11:00
Andrew Tridgell c30af84897 desktop: force awk on macos
this may help on jasons box
2011-11-09 17:21:53 +11:00
Andrew Tridgell 4b50d2e639 desktop: exit on EOF from stdin 2011-11-09 17:21:53 +11:00
Jason Short d5fb801678 Removed debugging code from APM_PI 2011-11-08 14:41:21 -08:00
Andrew Tridgell 5a45f9cd25 desktop: fixed malloc cast 2011-11-09 08:47:49 +11:00
Andrew Tridgell 11c908c7b4 desktop: be more careful with signed/unsigned in DataFlash 2011-11-09 08:44:19 +11:00
Andrew Tridgell d8d5f97a0a desktop: use less stack
this avoids a problem on cygwin on windows
2011-11-09 08:09:56 +11:00
Andrew Tridgell 389e2ff03e desktop: another MacOS fix 2011-11-08 18:07:19 +11:00
Andrew Tridgell b2254016e1 desktop: make desktop build more portable
this should help on MacOS

thanks to MikeS for his assistance
2011-11-08 17:26:53 +11:00
Andrew Tridgell 3b52687342 dataflash: type fixup for ReadInt() 2011-11-08 17:26:53 +11:00
Andrew Tridgell f073837ea7 desktop: use the libc printf engine
getting ftoa_engine right was too much work
2011-11-08 11:59:30 +11:00
Andrew Tridgell 6b583869c0 desktop: fixed ultoa_invert()
the string was backwards
2011-11-08 11:13:48 +11:00
Andrew Tridgell fd3154f20d desktop: improved ftoa_engine.c
this still doesn't perfectly match the assembler, but its closer
2011-11-08 11:05:36 +11:00
Andrew Tridgell ecf3d26f43 barometer: fixed a build warning 2011-11-08 11:05:36 +11:00
Jason Short 34a53f6f7d Removed some old debug prints from motors.pde
added ability to not increment I term for traversals.
2011-11-07 14:32:39 -08:00
Andrew Tridgell acad6b37c4 autotest: fill flash with 0xff on erase 2011-11-07 23:42:18 +11:00
Andrew Tridgell a199835632 Desktop: added -w option to wipe eeprom and dataflash 2011-11-07 22:56:13 +11:00
Andrew Tridgell eb0756f362 Desktop: added support for DataFlash in Desktop build
this will allow Jason to look at the logs of the quad sim
2011-11-07 22:56:13 +11:00
Andrew Tridgell ee99ec839b digital.c for CLI 2011-11-07 22:56:13 +11:00
Andrew Tridgell 5410dff523 DataFlash: use CPU independent data types
this ensures that the DataFlash API is consistent for different CPU
architectures, which matters for the Desktop build, and will matter
for ARM and other CPUs later
2011-11-07 22:56:13 +11:00
Andrew Tridgell b314fd8cd3 Desktop: enable the CLI in desktop build
this gives access to the CLI menus. You can start the SIL with the -s
switch to set the slider position to CLI
2011-11-07 22:56:13 +11:00
Andrew Tridgell 75d7ee01d1 desktop: fixed 2 crashes in the menu code
handle an empty line gracefully, and use pgm_read_pointer() for
functions pointers in progmem
2011-11-07 22:56:13 +11:00
Andrew Tridgell 152da9c91b added pgm_read_pointer()
this will be used by the menu code to make reading pointers from
progmem portable
2011-11-07 22:56:13 +11:00
Andrew Tridgell 11109e4a03 force LANG=C for MacOS awk 2011-11-07 13:33:38 +11:00
Doug Weibel d4fff166cf Add an accessor for the DCM drift correction integrator to monitor performance
Also made the get_health accessor an inline function.
2011-11-05 09:02:23 -06:00
Doug Weibel beb6c4dbf4 Changed the DCM drift correction integrator limit to a vector magnitude of 30 degrees/second.
The drift correction integrator limit previously was near/at the gyro saturation limit.  If we have that much drift there is a serious hardware problem.  30 degrees/second is arbitrary but should handle all temperature variation, etc.
2011-11-05 09:01:20 -06:00
Doug Weibel b105e7fd41 In case of DCM renorm "blow-up" reset the drift correction integrators
This should aid in recovery if we loose the AHRS solution and have to force to initial orientation.  Also removed some old commented out code moved to the IMU object
2011-11-05 08:59:16 -06:00
James Goppert f7c60e1ac7 Merge branch 'master' of https://code.google.com/p/ardupilot-mega 2011-11-01 21:58:10 -04:00
Andrew Tridgell e5654ccd04 desktop: fixed TCP buffering issue with HIL
the TCP layer was buffering the servo updates, which caused very poor HIL flight
2011-11-02 09:38:44 +11:00
Simon Salykov 389b89056a Obstacle avoidance moved from AP_Guide to ControllerCar (works only for cars for now), algorithm changed
New feature Forward/Reverse in Controller Car
Misc bug fixes in ControllerCar
2011-11-01 19:09:57 +01:00
Jason Short 53d7cac075 Merge branch 'master' of https://code.google.com/p/ardupilot-mega 2011-11-01 09:30:54 -07:00
Jason Short c3d8775797 Baro
Minimized the baro filtering to use a new approach to rate control. Redid the state machine so the temp is sampled more often.
2011-11-01 09:22:21 -07:00
Amilcar Lucas 01df18b292 Added camera and/or antenna mount support.
It is fully configurable with the mission planner, there is no need to change
the source code to adapt to your setup.
It needs more testing, but the SIL is not working for me.
2011-10-31 22:55:58 +01:00
Amilcar Lucas c73b3c7235 Update the SIL README file 2011-10-31 21:56:25 +01:00
James Goppert ed0722e298 ArduPlane cmake build working. 2011-10-31 13:18:48 -04:00
James Goppert 249ce91d78 Switching to new eclipse project style. 2011-10-30 22:57:34 -04:00
Michael Oborne 12d8b2cb9e prevent div by 0 2011-10-30 21:28:39 +08:00
Andrew Tridgell cdc677ab83 added desktop header 2011-10-30 17:31:32 +11:00
Andrew Tridgell d74a223f7e make desktop serial more responsive 2011-10-30 13:00:54 +11:00
Andrew Tridgell 3991f9eff3 move g_rc_function[] to RC_Channel library
libraries should not rely on data declared in the main program. This
caused a build error for the Desktop build for ArduCopter under cygwin
2011-10-29 18:42:18 +11:00
Andrew Tridgell e3c5177967 merge NULL ptr mavlink array fix
this fixes a segfault in ArduPlane when using a NULL pointer for
satellite_prn in GPS status
2011-10-29 18:29:18 +11:00
Andrew Tridgell 8cc449dc43 updated to latest upstream mavlink headers
this includes the new APM_Camera headers from ardupilotmega.xml
2011-10-29 18:07:09 +11:00
James Goppert 57301ce647 Cleaned up AP_GPS formatting. 2011-10-28 14:52:50 -04:00
James Goppert dd0ac600b3 Merge branch 'master' of https://code.google.com/p/ardupilot-mega 2011-10-28 14:45:01 -04:00
James Goppert 585507f188 Clean up formatting for AP_Common 2011-10-28 14:43:43 -04:00
Michael Oborne 1c72598393 Fix HIL DCM to match actual 2011-10-28 17:40:18 +08:00
Andrew Tridgell 8eb74df024 minor mavlink 1.0 updates 2011-10-28 15:54:22 +11:00
James Goppert 02ab5bea78 APO multiple mode handling added. 2011-10-27 19:42:57 -04:00
James Goppert 18c3eaf479 Fixed APO bug in current waypoint update. 2011-10-27 17:23:08 -04:00
James Goppert 7da0daa9d0 Adding bash formatting script using astyle. 2011-10-27 16:30:15 -04:00
James Goppert 3de8533c5e Merge https://code.google.com/p/ardupilot-mega 2011-10-27 16:21:44 -04:00
James Goppert 5d9c37bbed Fixed APO controller bug preventing motor arming. 2011-10-27 16:19:42 -04:00
Jason Short 003e6e06a1 Merge branch 'master' of https://code.google.com/p/ardupilot-mega
Conflicts:
	libraries/APM_PI/APM_PI.cpp
2011-10-27 12:41:00 -07:00
Jason Short 3b3f6bd168 RC_Channel Dead zone
Added APVar dead_zone to the RC_Channel library so you could edit it in the Mission planner
Made CH filtering off by default.
2011-10-27 11:34:00 -07:00
James Goppert 2507b801f0 Fixed APO examples. 2011-10-26 14:59:40 -04:00
James Goppert f0fe8ecb90 Merge branch 'master' of https://code.google.com/p/ardupilot-mega 2011-10-26 13:25:49 -04:00
James Goppert 8cd9ced373 Further APO controller cleanup. 2011-10-26 13:25:06 -04:00
jasonshort d8a0ce6933 Just in case the Min and Max functions are not playing nice with AP_Var 2011-10-26 16:48:50 +00:00
Jason Short 07c1e6facd AP_PI AP_Var change
using the If statement rather than Max to avoid potential AP_Var issues. I don't know if this is a real prob or not. Just being careful.
2011-10-26 09:46:16 -07:00
James Goppert 18e8bb3d6a APO formatting. 2011-10-26 12:31:11 -04:00
James Goppert dd4ff8c0aa Updated APO Controllers. 2011-10-25 19:40:07 -04:00
James Goppert 97ef98fa8f Further abstracted APO Controllers
Currently APO quad/plane/tank need to be updated
for new controller changes.
2011-10-25 18:53:39 -04:00
Andrew Tridgell 31747d5607 imported custom_mode size fix 2011-10-24 13:41:15 +11:00
Andrew Tridgell 8b135a5be3 fixed mavlink10 desktop build 2011-10-24 13:09:19 +11:00
Andrew Tridgell 14f8c71932 import latest MAVLink 1.0 headers and XML 2011-10-24 12:20:46 +11:00
Andrew Tridgell 0c672d6885 updated to latest mavlink 1.0 messages 2011-10-24 10:20:36 +11:00
Andrew Tridgell 9644ff5c01 mavlink: added mavlink10 target for desktop build 2011-10-24 10:20:36 +11:00
Andrew Tridgell 314a4158d6 mavlink: make it possible to build with mavlink 1.0 headers 2011-10-24 10:20:36 +11:00
Andrew Tridgell f6385dd1a2 mavlink: import latest mavlink 0.9 headers 2011-10-24 10:20:36 +11:00
Andrew Tridgell 615d96ab81 mavlink: import mavlink 1.0 message definitions 2011-10-24 10:20:35 +11:00
Andrew Tridgell ac2e129996 mavlink: import mavlink 1.0 includes 2011-10-24 10:20:35 +11:00
Andrew Tridgell d6479367b3 RC_Channel_aux is needed for ArduPlane build 2011-10-24 10:20:19 +11:00
James Goppert 986fca3116 Corrected battery monitoring in apo. 2011-10-20 02:28:47 -04:00
James Goppert 9e9da38c67 Arming fixes. 2011-10-19 20:09:06 -04:00
James Goppert 73c3f1098a Added loop priority, fixed arming bug for apo. 2011-10-19 13:22:29 -04:00
James Goppert 8397fea4f4 More cleanup. 2011-10-19 00:31:59 -04:00
James Goppert a48206f468 Some cleanup. 2011-10-19 00:25:00 -04:00
James Goppert dcc2c2c0cf Added arming mechanism. 2011-10-19 00:21:19 -04:00
James Goppert 9573b60ac9 Incorporated dcm changes from arducopter into apo. 2011-10-18 22:00:24 -04:00
James Goppert 0bb0059d35 Updated apo rates. 2011-10-18 20:11:14 -04:00
Andrew Tridgell ce1abb974b desktop: refactor the TCP code
this supports all 3 serial ports, plus cleans up the code
2011-10-17 19:32:48 +11:00
James Goppert 0a0bbb8afe Updated ArduRover/ ArduBoat for new apo changes.
Still need to add arming/ disarming to rover/boat controllers.
2011-10-16 03:15:22 -04:00
James Goppert 955d159c91 Merge branch 'master' of https://code.google.com/p/ardupilot-mega 2011-10-16 02:58:38 -04:00
James Goppert 0283b8c695 Added battery monitoring, arming to apo.
Arming added for quadrotor. Need to add to rover still. Battery
monitoring added with auto shut-off in quadrotor controller.
Finally split apo header and source files to allow faster
compiling/ fix cyclic header inclusions.
2011-10-16 02:55:34 -04:00
Jason Short 995be48a2d Merge branch 'master' of https://code.google.com/p/ardupilot-mega 2011-10-15 13:09:18 -07:00
Jason Short 23c0bb9814 Updates to guided mode from Michael O.
removed or commented unused static vars
2011-10-15 13:09:04 -07:00
James Goppert dfb71226eb APO quad stabilized flight working well. 2011-10-14 18:28:29 -04:00
Michael Oborne 6987e6c4b2 hil sensor cleanup 2011-10-14 18:14:32 +08:00
Michael Oborne b02c3608ef fix delta time in imu shim 2011-10-13 22:36:51 +08:00
Michael Oborne 392160314e Sensor hil fix's 2011-10-13 22:22:03 +08:00
Michael Oborne d89e944254 Merge branch 'master' of https://code.google.com/p/ardupilot-mega 2011-10-13 17:49:35 +08:00
James Goppert 76a3625024 Got APO quad stabilized flight to hover.
Needs more gain tuning.
2011-10-12 20:05:01 -04:00
Michael Oborne a3de6667ca fastserial tcp 2011-10-13 07:25:30 +08:00
Michael Oborne 8536452c5a Desktop: cygwin fixs for AP and AC SIL 2011-10-11 20:30:34 +08:00
Andrew Tridgell 19666f5a43 desktop: more cygwin fixes 2011-10-11 21:33:31 +11:00
Andrew Tridgell e991d81eee desktop: removed the need for libbsd
this should help the cygwin build that MikeO is working on
2011-10-11 21:04:07 +11:00
Andrew Tridgell e2c6dc68a2 desktop: added Makefile.desktop 2011-10-11 20:53:43 +11:00
Andrew Tridgell 93d09039ce desktop: fixed a warning 2011-10-11 20:53:43 +11:00
Andrew Tridgell 99f0e92531 desktop: silence an implicit cast warning 2011-10-11 20:53:43 +11:00
Andrew Tridgell 3633d846f6 desktop: make the main loop a bit more responsive
this introduces less delays on linux than usleep()
2011-10-11 17:49:40 +11:00
Andrew Tridgell 6f44415b19 desktop: make ISRs normal C++ functions
this will make it possible to add an abstract register simulation
class that allows us to intercept device IO
2011-10-11 17:49:40 +11:00
Andrew Tridgell 74a85a1f3e update README with build and usage information 2011-10-11 17:49:40 +11:00
Andrew Tridgell 52dc221969 support building with common Makefile.desktop 2011-10-11 17:49:40 +11:00
Michael Oborne ec7fa70fd6 Merge branch 'master' of https://code.google.com/p/ardupilot-mega 2011-10-11 08:05:14 +08:00
Andrew Tridgell ed2bec75b9 added build makefiles 2011-10-10 07:18:38 +11:00
James Goppert d47e43e0c4 APO GPS bug fix. 2011-10-09 15:57:29 -04:00
James Goppert 5c16a380c0 Fixed APO bug. 2011-10-09 11:46:56 -04:00
Andrew Tridgell 67630d42e7 opticalflow: use the right path for SPI.h 2011-10-09 22:40:00 +11:00
Andrew Tridgell 6899189395 added a README 2011-10-09 22:16:14 +11:00
Andrew Tridgell ab755ab11f use ifdef for DESKTOP_BUILD 2011-10-09 22:16:14 +11:00
Andrew Tridgell 95475c6221 use nanosleep() instead of usleep() 2011-10-09 22:16:14 +11:00
Andrew Tridgell 41d734846e fixed millis() and micros() 2011-10-09 22:16:14 +11:00
Andrew Tridgell 320d4a330b desktop: use a bit less CPU 2011-10-09 22:16:13 +11:00
Andrew Tridgell ea2823cd5f desktop: use non-blocking IO 2011-10-09 22:16:13 +11:00
Andrew Tridgell e3fd61d758 desktop: expand eeprom to 4k initial size 2011-10-09 22:16:13 +11:00
Andrew Tridgell dfef42ff48 desktop: flush all serial writes 2011-10-09 22:16:13 +11:00
Andrew Tridgell 4109374959 first rough build for desktop CPUs
this allows ArduPlane to build and startup on 'desktop' systems (eg. a
Linux box). Very rough for now, and only for HIL so far
2011-10-09 22:16:13 +11:00
Andrew Tridgell e177800116 fixed PROGMEM declaration for desktop build 2011-10-09 22:16:13 +11:00
Andrew Tridgell e6e9334e4c memcheck: allow memcheck to build on desktop systems 2011-10-09 22:16:12 +11:00
Andrew Tridgell a3e6f5d51f initialise spare bits in AP_Var headers
if we ever need these bits, it would be nice to know that they are
zero in existing eeproms
2011-10-09 22:09:00 +11:00
Andrew Tridgell cb8f8ec083 fastserial: allow vprintf() to build without assembler 2011-10-09 22:08:59 +11:00
Andrew Tridgell 88668dd2d1 ap_common: use intptr_t for pointer casts
this allows building on systems with pointers that aren't 16 bits long
2011-10-09 22:08:59 +11:00
Andrew Tridgell 298cc51118 modefilter: fixed type to be consistent with declaration 2011-10-09 22:08:59 +11:00
Andrew Tridgell f39deb3589 GPS: fixed type to be consistent with declaration 2011-10-09 22:08:59 +11:00
Andrew Tridgell 09bd94cd6d eeprom: fixed types to be consistent with declarations 2011-10-09 22:08:59 +11:00
James Goppert 6689a99a66 Updated APO, HIL working well, live mode ready to test 2011-10-06 19:17:49 -04:00
James Goppert a02ce5aed7 Reducing copy ctor calls in apo. 2011-10-06 12:00:45 -04:00
James Goppert f988623dab Merge branch 'master' of https://code.google.com/p/ardupilot-mega 2011-10-03 13:22:59 -04:00
James Goppert 684599cd21 Cleanup of AP_RcChannel, removed scaled class. 2011-10-03 13:22:23 -04:00
Amilcar Lucas a751208f9f More improvements to MS Windows
Now the avr-gdb, avrdude and avarice tools do not need to be in the path.
2011-10-03 19:16:55 +02:00
James Goppert c678452fe1 Added AP_RcChannel_Scaled to APO 2011-10-03 12:42:27 -04:00