Commit Graph

1215 Commits

Author SHA1 Message Date
Lorenz Meier 1b82dbb58d Merge branch '#111-px4io-integrated-mixing' of github.com:PX4/Firmware into fixedwing_io_mixing 2012-12-31 00:34:12 +01:00
px4dev dbb841b0dc Rework the way we scan text for scaler definitions; something weird was going on with sscanf's handling of %n that wasn't obvious. This seems to work around the issue. 2012-12-30 15:09:21 -08:00
px4dev f2d4eb2887 Revert "Removed text reuse, causing crash with stack trace"
This reverts commit 668d1b3301.
2012-12-30 15:08:25 -08:00
Lorenz Meier 36d556256f Merge branch '#111-px4io-integrated-mixing' into fixedwing_io_mixing 2012-12-30 14:03:33 +01:00
Lorenz Meier 668d1b3301 Removed text reuse, causing crash with stack trace 2012-12-30 13:58:30 +01:00
Lorenz Meier 234af06571 Fixed merge error 2012-12-30 12:05:38 +01:00
Lorenz Meier 1da1b8f49c Merge branch 'fixedwing_outdoor' into fixedwing_io_mixing 2012-12-30 11:01:59 +01:00
Lorenz Meier 2577e1a749 Removed compile errors, removed non-wanted MAVLink dependency in commander app 2012-12-30 11:01:09 +01:00
Lorenz Meier abe1b9759a Merged IO mixing branch 2012-12-30 10:49:27 +01:00
px4dev f6ea42ab5e Fix px4io signal test command to force FMU armed state. 2012-12-30 01:28:07 -08:00
px4dev fd016abd46 Implement the remaining pieces of mixer upload to PX4IO. 2012-12-30 01:17:19 -08:00
px4dev c740e9c616 Add a receive error counter for debugging purposes. 2012-12-30 01:16:54 -08:00
px4dev b14abad3a0 Fix logic for handling partial buffers. 2012-12-30 01:16:28 -08:00
Lorenz Meier 142556b442 merged 2012-12-30 10:03:05 +01:00
Lorenz Meier 62a95bf8e6 Stabilization enabling / switching 2012-12-30 09:53:45 +01:00
px4dev 85375c2201 Rename the FMU->IO output controls to reflect the fact that they are controls, not servo values. 2012-12-29 17:15:48 -08:00
px4dev b8250de1e6 Assorted compile fixes. 2012-12-29 16:22:30 -08:00
px4dev d81edb09cf whitespace/formatting 2012-12-29 16:01:24 -08:00
px4dev f9520ee39d Factory method for a simple mixer that converts PWM/PPM values to the standard internal format. 2012-12-29 16:00:50 -08:00
Lorenz Meier 0298714db5 Merge branch 'fixedwing_outdoor' of github.com:PX4/Firmware into fixedwing_outdoor 2012-12-30 00:04:54 +01:00
px4dev 0ae5997bd0 Fix some scaling errors in the PWM <-> mixer-internal conversions. 2012-12-29 13:28:32 -08:00
px4dev 6b9d5dac4d Rough in the new mixer path for PX4IO. 2012-12-29 12:58:41 -08:00
px4dev 6ede0e2f18 Add the ability to reset a mixer group. Report the remaining buffer size from load_from_buf. 2012-12-29 12:58:10 -08:00
px4dev d5da457e29 Fix PX4IO to run C++ static ctors 2012-12-29 12:57:29 -08:00
Lorenz Meier 4976a3a47d Added accel magnitude check, added conversion functions for various standard cases 2012-12-29 16:21:59 +01:00
Lorenz Meier b240e31c1c Safer fixed wing mode switching 2012-12-29 11:18:49 +01:00
Lorenz Meier c652f718c0 Minor fixes, pushing WIP 2012-12-29 11:00:15 +01:00
px4dev 35c82ff2fc Make mixer ioctls load from a memory buffer rather than a file. This is prep for uploading the memory buffer to IO to be processed there. 2012-12-29 00:01:04 -08:00
px4dev f0da789626 Remove the unused complex-multirotor setup ioctl, since it's not implemented anywhere. 2012-12-28 16:44:17 -08:00
Lorenz Meier be85589e48 Fixed some typos 2012-12-28 20:19:47 +01:00
Lorenz Meier 9e2076b4e4 Cleared last differences, ready for testing 2012-12-28 15:10:25 +01:00
Lorenz Meier 913f5a7812 Cleared last diff items between origin/master and fixedwing_outdoor 2012-12-28 15:06:19 +01:00
Lorenz Meier a1e1e7bf42 Cleaning up calibration requests 2012-12-28 13:18:52 +01:00
Lorenz Meier d96add5b61 Even more cleanup, diff now clean 2012-12-28 13:16:34 +01:00
Lorenz Meier 38a1076a33 Cleaned up attitude control in HIL, implemented very simple guided / stabilized mode with just attitude stabilization 2012-12-28 13:12:27 +01:00
Lorenz Meier cc582b2b44 Only send actuator HIL commands if armed 2012-12-28 13:10:58 +01:00
Lorenz Meier 8b8330a015 Reverted nuttx merge, back to master 2012-12-28 13:10:06 +01:00
Lorenz Meier 45a4bcb6ef Merged relay activation 2012-12-27 19:06:09 +01:00
Lorenz Meier 7526dd46a2 Added header for common priority bands 2012-12-27 19:01:00 +01:00
Lorenz Meier e2196bca4f Added position lock check 2012-12-27 18:36:37 +01:00
Lorenz Meier f5bad08bd0 Cleaned up control mode state machine / flight mode / navigation state machine still needs a bit cleaning up 2012-12-27 18:27:08 +01:00
Lorenz Meier 61d7e1d285 Reverted changes to multirotor rate controller, changing to a discrete derivative does not help 2012-12-27 17:47:51 +01:00
Lorenz Meier a6f2c6022e Merge branch 'fixedwing_outdoor' of https://github.com/julianoes/Firmware into fixedwing_outdoor 2012-12-27 17:13:52 +01:00
Lorenz Meier b2068b4e0e WIP on mode switching input 2012-12-27 17:13:48 +01:00
Julian Oes d4edf2e85c Override is now really disabled for multirotors, also I don't think the parameter got ever read by the commander but I might be wrong 2012-12-23 17:20:53 -08:00
Lorenz Meier 9102b25bce Merge branch 'master' of github.com:PX4/Firmware into fixedwing_outdoor 2012-12-24 01:14:55 +01:00
Lorenz Meier c08135ffef Merged rates setpoints 2012-12-23 21:15:01 +01:00
px4dev 95b3828e41 Merge branch '#102-pwm-output-correctness' 2012-12-23 11:38:16 -08:00
px4dev 6b3f36020c Merge pull request #94 from PX4/DSM-decoder-fix
Untangle the DSM decoder from the input source priority logic, clean up input handling some more.
2012-12-23 11:31:31 -08:00
px4dev a8451a2d18 Update apps/drivers/mpu6000/mpu6000.cpp
Don't call ::close on ORB publication handles.
2012-12-23 11:24:54 -08:00
Lorenz Meier 720a1140b2 Merged NuttX 2012-12-23 20:23:30 +01:00
Lorenz Meier f2fb8c7960 Fix typo 2012-12-23 18:10:00 +01:00
Lorenz Meier 6d34211630 Merge branch 'gyros_parallel' into fixedwing_outdoor 2012-12-22 00:57:50 +01:00
Lorenz Meier a2aa9dd8fd Made MPU-6000 gyro optional 2012-12-22 00:56:37 +01:00
Lorenz Meier 4cf2266b79 Robustified actuator output topic, added number of mixed outputs 2012-12-22 00:47:52 +01:00
px4dev 5b92c51777 Initial implementation of application access to the PX4IO relays. 2012-12-20 21:31:02 -08:00
Julian Oes 8053b4b9f7 Revert "I don't want a switch for failsafe for the copter"
This reverts commit 28b3ecd9c6.
2012-12-20 08:55:54 -08:00
px4dev 73763353d0 Merge branch 'master' into DSM-decoder-fix 2012-12-19 22:24:00 -08:00
Julian Oes 06407b166f My PID integral part fixes 2012-12-19 17:54:18 -08:00
Julian Oes 28b3ecd9c6 I don't want a switch for failsafe for the copter 2012-12-19 17:06:01 -08:00
Lorenz Meier fe6496a04d Correctly do position lock led signalling on IO and position lock measurement on FMU, tested with HIL. 2012-12-19 14:20:40 +01:00
Lorenz Meier 4676b71d8a Cleanup in ADC driver, re-add all inputs that are present 2012-12-19 14:19:11 +01:00
Lorenz Meier bc3b66043f Cleaned up HIL on FMU / IO combo 2012-12-19 11:34:51 +01:00
Lorenz Meier f41e5728fc Correct demixing scaling for v-tail mixers 2012-12-18 13:18:36 +01:00
Lorenz Meier 4c2862f6c0 Merged PWM fixes 2012-12-18 12:32:19 +01:00
px4dev 76895af6eb Fix several aspects of the PWM output driver; enable auto-reload, use named constants for various control bits, and use a more polite mechanism at disarm time to avoid runt pulses.
This may address an issue we've seen where we get occasional malformed PWM output pulses, possibly due to a race between compare updates and the timer.
2012-12-18 00:35:28 -08:00
px4dev 8d716dea45 Teach 'fake' to set the arming state as well.
Whitespace.
2012-12-18 00:33:33 -08:00
px4dev b8044d9786 use <err.h> more consistently in the fmu driver. 2012-12-18 00:29:22 -08:00
px4dev 6d0bea0298 Fix the PWM servo ioctl base so it's not overlapping the GPIOs 2012-12-18 00:27:12 -08:00
Lorenz Meier 97a94e3b89 Fixed MAV_TYPE parameter readout 2012-12-16 16:31:17 +01:00
Lorenz Meier df5c09ead1 Fixed MAVLink parameter initialization 2012-12-16 16:31:02 +01:00
Lorenz Meier b9606d0d6e Reverted arming state machine back to its original state, operational again 2012-12-16 16:30:41 +01:00
Lorenz Meier e56911bf2d Fixed signal loss detection on S.Bus parsing, stripped PX4IO code parts from S.Bus parser to allow FMU / IO parser code sharing. Added S.Bus channels 17 and 18 if channel data struct has enough space. Tested with receiver and PX4FMU. 2012-12-16 15:31:44 +01:00
Lorenz Meier f81d00594c Made PX4IO FMU timeout based on IOs HRT, updating mixers now on every FMU update and not at fixed rate, this is WIP and currently does not support mixing with RC-only 2012-12-15 23:28:03 +01:00
Lorenz Meier 1fc0a6546e Merged IO feature branch 2012-12-13 11:12:34 +01:00
Lorenz Meier 03076a72ca Added required additional fields: If system is ok to launch (required for LED indicator), if system is ok to override fully by RC (required for multirotors which should not support this), desired PWM output rate in Hz (again required for some multirotors). 2012-12-13 10:23:02 +01:00
Lorenz Meier 26faab64e5 Merge branch 'master' of github.com:PX4/Firmware into fixedwing_outdoor 2012-12-09 19:19:59 +01:00
Simon Wilks 03b51c69e0 Added more LED state logic and improve code.
The LED will now also indicate when the FMU is ARMED. Switched to using
a 16-bit value where each bit indicates what state the LED should be
in.
2012-12-08 13:39:28 +01:00
Simon Wilks 197e573885 Add an additional safety switch LED blink sequence when FMU and IO are armed
If both the FMU and the IO board are armed then the secure switch will
blink two times quickly then a pause followed by two quick blinks and
so on.
2012-12-07 21:34:41 +01:00
Lorenz Meier 82cbac70ee Fixed calibration check 2012-12-07 17:07:42 +01:00
Lorenz Meier 1ebb3b4ada Merged DSM fixes 2012-12-05 19:55:33 +01:00
px4dev fd771f67f2 Adjust the control mapping from DSM receivers to correspond to the standard PPM control mapping for channels 0-4. 2012-12-04 22:00:24 -08:00
px4dev 7c3b28d503 Lock out the PPM decoder if the DSM or S.bus decoders have seen a frame recently. 2012-12-04 09:52:16 -08:00
px4dev 1485a4ec1a Fix breakage to the DSM parser introduced with the input prioritisation logic. Back out to a "any input wins" strategy; connecting multiple receivers to I/O at the same time is currently not supported (read: strange things will happen). 2012-12-03 23:20:28 -08:00
px4dev 6e328b4d7a Add a 'monitor' verb to the px4io command so we can watch inputs to IO (it could get smarter). 2012-12-03 23:19:12 -08:00
px4dev 451ecc1bf4 Remove a few cut-and-paste author attributions. 2012-12-02 17:53:31 -08:00
px4dev ad6c60c77c Merge pull request #90 from PX4/#89-BlinkM-driver
BlinkM driver
2012-12-01 22:59:36 -08:00
px4dev b02c69243d Merge pull request #75 from PX4/delay_test
Added delay test to measure comm delays with a led / scope
2012-12-01 22:55:55 -08:00
px4dev 55e2e18885 Merge pull request #73 from PX4/io_arming
Made sure IO and FMU obey the lockdown flag when arming motors
2012-12-01 22:55:33 -08:00
px4dev c09ed414fd Merge pull request #80 from PX4/#61-px4io-spektrum-decoder
#61 px4io spektrum decoder
2012-12-01 22:54:06 -08:00
px4dev d92827c54c Merge pull request #76 from PX4/topics_cleanup
Cleaned up different uorb topics, cleaned up excessive stack sizes
2012-12-01 22:53:15 -08:00
px4dev 269bd9f403 Force the fade speed to something sensible. Deal better with failed probes. 2012-12-01 19:36:02 -08:00
px4dev 2a8ef50df4 A driver and shell command for the BlinkM I2C LED controller. 2012-12-01 19:29:36 -08:00
Lorenz Meier 126e6ac207 Enabled manual override switch, work in progress. Added initial demix testing code to support delta mixing on the remote for convenient manual override 2012-12-01 16:30:21 +01:00
Lorenz Meier 2bfb672791 Cleaned up mode indication 2012-12-01 16:29:06 +01:00
Lorenz Meier aa1d57c085 Allowed mode switching via command 2012-12-01 16:28:53 +01:00
Lorenz Meier 121a9fc490 Merge branch '#61-px4io-spektrum-decoder' into fixedwing_outdoor 2012-12-01 10:51:25 +01:00
Lorenz Meier de88732e8e Prevented unhealthy RC input from propagating through the system 2012-12-01 10:49:52 +01:00
px4dev ea8872f545 Merge branch 'sbus' of https://github.com/PX4/Firmware into #61-px4io-spektrum-decoder 2012-12-01 00:50:39 -08:00
px4dev efd3b9dea6 Clean up the FMU communications init. 2012-11-30 22:36:17 -08:00
px4dev 7d9d307ab0 We don't need non-blocking I/O for this context anymore; it's OK for it to block. 2012-11-30 22:15:40 -08:00
px4dev 8c4e9de70a Use the right constraint for the output mixer; we might end up wanting more virtual control channels. 2012-11-30 21:52:18 -08:00
px4dev 1e6e06595a Avoid processing S.bus channels that cannot be communicated to FMU 2012-11-30 21:51:36 -08:00
px4dev 2ac0cac11f Build fix - need <termios.h> 2012-11-30 21:50:19 -08:00
Julian Oes 6f572637de Fixed missing heading for mtkcustom and nmea 2012-11-30 14:26:03 -08:00
Lorenz Meier ef4a54666d Harmonized PPM, S.BUS and DSM input (order: first preference S.Bus, then DSM, then PPM, first available and valid source is chosen), tested with FMU, valid channel inputs 2012-11-30 14:57:54 +01:00
px4dev e0df7e6a76 save ~200 bytes of RAM by correctly positioning the S.bus decoder table in flash. 2012-11-30 01:46:14 -08:00
Lorenz Meier 31c5425e50 Merge remote-tracking branch 'origin/#61-px4io-spektrum-decoder' into sbus 2012-11-30 10:42:36 +01:00
Lorenz Meier d16d66f990 Enabled UART3, added JTAG make target for IO, removed potentially problematic usleep 2012-11-30 10:42:27 +01:00
px4dev c961dd8bab Just for fun, add a (completely untested) S.bus decoder. 2012-11-30 01:34:33 -08:00
px4dev 9fa794a8fa Rework the PX4IO software architecture:
- Use a separate thread for handing R/C inputs and outputs.
 - Remove all PX4IO R/C receiver configuration; it's all automatic now.
 - Rework the main loop, dedicate it to PX4FMU communications after startup.
 - Fix several issues in the px4io driver that would cause a crash if PX4IO was not responding.
2012-11-30 00:02:47 -08:00
px4dev 9c8101d4f1 Add some more information to comments. 2012-11-29 10:18:21 -08:00
Lorenz Meier 401c54bdd3 Merge branch '#78-px4io-firmware-updater' of github.com:PX4/Firmware into sbus 2012-11-29 09:54:23 +01:00
px4dev d0efd1a419 Fix the DSM (spektrum) protocol decoder, and add some format auto-detection to it. 2012-11-29 00:35:21 -08:00
px4dev 3321ca0888 Don't print the status line so much; we seem to drop a lot of receive characters this way. 2012-11-29 00:34:44 -08:00
px4dev 03a82e0a03 Fix includes for debug output. 2012-11-29 00:33:44 -08:00
px4dev 92e1d5eb78 Possible fix for #78 - increase the wait timeout for discard when flashing PX4IO. It's not clear this solves the issue, but I can't reproduce it with this added. 2012-11-28 20:12:36 -08:00
Lorenz Meier 00b79764d7 minor code cleanup, not changing functionality 2012-11-28 23:00:43 +01:00
Lorenz Meier 520f335b55 fix for ground speed minimum, untested 2012-11-28 15:02:24 +01:00
Lorenz Meier 54d624f7c7 Added feedforward throttle to pitch compensation, heading from position controller still broken 2012-11-27 18:11:48 +01:00
Lorenz Meier cc1e0ef235 Removed old fixed wing control process 2012-11-27 17:38:16 +01:00
Lorenz Meier e5177b383b Merge branch 'master' into fixedwing_outdoor 2012-11-27 17:27:55 +01:00
Lorenz Meier 98283e16b0 Merged 2012-11-27 17:27:52 +01:00
Lorenz Meier 15236d1ff2 Hotfix: calibration status returns sanity checks with better granularity 2012-11-27 17:26:04 +01:00
Lorenz Meier caf0fefa32 Cleaned up different uorb topics, cleaned up excessive stack sizes 2012-11-27 17:24:33 +01:00
Lorenz Meier 67fbe415dc Merge branch 'delay_test' into fixedwing_outdoor 2012-11-27 14:17:51 +01:00
Lorenz Meier 4d6fb3a037 Added delay test to measure comm delays with a led / scope 2012-11-27 12:45:17 +01:00
Lorenz Meier 90b94b5050 Ported all mixers to actuator_controls_effective topic, mixers do not output the limited result yet 2012-11-27 11:53:50 +01:00
Lorenz Meier 7777d4416d Changed to actuators effective in mavlink app 2012-11-27 11:29:48 +01:00
Lorenz Meier 7d485c117b Merge branch 'rates_setpoint' into fixedwing_outdoor 2012-11-26 21:09:17 +01:00
Lorenz Meier 98657b8ae4 Added rates setpoints as system outputs 2012-11-26 21:03:21 +01:00
Lorenz Meier 80b84819d2 Merged fixed wing branches 2012-11-26 21:02:36 +01:00
Lorenz Meier eca12343fd Merge branch 'io_arming' into fixedwing_outdoor 2012-11-26 17:52:30 +01:00
Lorenz Meier 11b0242f55 Not arming FMU in HIL mode 2012-11-26 17:50:14 +01:00
Lorenz Meier 4298f68fcd IO does not arm in HIL mode 2012-11-26 17:43:07 +01:00
Lorenz Meier 9bc044eae9 More fixed wing improvements 2012-11-26 17:42:08 +01:00
Lorenz Meier 7cc712b286 More fixed wing improvements 2012-11-26 17:41:51 +01:00
Thomas Gubler 4366d9e319 fw_controller testing 2012-11-25 18:20:54 +01:00
Lorenz Meier 2ca09ab3d1 Merged with coordinated turn effort 2012-11-25 17:10:49 +01:00
Lorenz Meier 20a29bff99 Fixes for roll/pitch feedforward 2012-11-25 16:42:31 +01:00
Lorenz Meier 346d93b271 Merged 2012-11-25 13:56:19 +01:00
Lorenz Meier faa672f8bb mode switching for all platforms, additional fixed wing modes 2012-11-25 13:55:28 +01:00
Thomas Gubler dd05426002 manual merge of origin/master into fw_control 2012-11-25 00:50:25 +01:00
Lorenz Meier dc72d467d4 fixed wing manual setpoints in manual mode 2012-11-25 00:28:15 +01:00
Lorenz Meier 9f35de51a6 Removed unneeded header 2012-11-24 22:39:43 +01:00
Lorenz Meier c184d7baeb Enabled aux manual control channels 2012-11-24 19:37:51 +01:00
Lorenz Meier b1bc5e0e46 Improved drivers, allowed parallel use of multiple gyros 2012-11-23 22:52:37 +01:00
px4dev adb04f632f Local changes to match upstream changes. 2012-11-22 20:35:08 -08:00
px4dev a3842eb4d1 Merge branch 'master' of file:///Users/Shared/NuttX/NuttX into nuttx-merge-cbf2eea
git-svn-id: http://svn.code.sf.net/p/nuttx/code/trunk@5383 42af7a65-404d-4744-a932-0658087f49c3
2012-11-22 20:34:32 -08:00
patacongo cbf2eea7f0 A few more fixes for ez80 Windows Native build (still not enough)
git-svn-id: http://svn.code.sf.net/p/nuttx/code/trunk@5381 42af7a65-404d-4744-a932-0658087f49c3
2012-11-21 23:22:38 +00:00