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

86 Commits

Author SHA1 Message Date
James Cotton
07e3ad10af Force some floating point units to be safe 2011-11-26 15:52:25 -06:00
James Cotton
1c7c85635d Typo with renamed PI 2011-11-16 19:48:13 -06:00
James Cotton
8e79f86716 Make the CoordinateConversions use a floating point PI 2011-11-16 11:35:52 -06:00
James Cotton
1e2fe77e3f Start migrating the attitude solution to FreeRTOS 2011-11-13 18:51:35 -06:00
James Cotton
3239fdf21b Merge branch 'next' into ins
Conflicts:
	flight/CopterControl/Makefile
	flight/OpenPilot/System/pios_board.c
	flight/Project/OpenPilotOSX/OpenPilotOSX.xcodeproj/project.pbxproj
2011-09-09 08:33:34 -05:00
James Cotton
465527a980 INS: Enable GPS parsing. GPS data is processed on INS now. HomeLocation and
WMM are not currenly implemented.
2011-09-04 20:03:04 -05:00
James Cotton
7ff5cd7655 INS: Try and get load down on event system. 2011-09-04 16:21:04 -05:00
James Cotton
612d3336b4 This patch breaks backward compatibility with AHRS solidly.
Move the configuration files for INS from AHRS* to INS*.  Strip out unused
fields in settings and merge calibration and settings since settings has
basically no information.
2011-09-01 12:21:33 -05:00
Stacey Sheldon
2f86e4dd4f Make PWM/PPM and Servo drivers play nicely together
PWM and PPM can now coexist in the same load and be
selected at boot time via the hwsettings UAVObject.

This is basically a complete restructuring of the
way the drivers interact with the TIM peripheral in
the STM32.

As a side effect, the PWM and PPM drivers are now
ready to support multiple instances of each.

This also provides the first step toward being able
to reassign some of the PWM input pins to be servo
output pins.  Still more work required, but this is
a good start.
2011-08-27 21:39:56 -04:00
James Cotton
b1c522def3 Merge remote-tracking branch 'origin/next' into ins 2011-08-21 01:34:40 -05:00
Corvus Corax
2062ec0aeb AHRS_COM: Initialize transpherred objects before using them 2011-08-19 19:52:27 +02:00
James Cotton
71a1cdff62 PiOS SPI: For F2 need to have the same receive and transmit length when using
CRC.  This wasn't the case on F1.  With CRC the last byte of the buffer passed
to PIOS_SPI_TransferBlock is NOT USED.  This is the case on both F1 and F2.

Also need to DeInit DMA before enabling or it doesn't enable successfully.

Finally added a timeout which sets a fail on the pios spi transfer in the case
that either of the dma channels fails to enable.
2011-08-16 11:29:15 -05:00
Corvus Corax
8a47ade16b flight/Libraries/fifo_buffer: Use platform independent <stdint.h> instead of "stm32xxx.h" to get definition of intX_t types 2011-08-14 14:21:54 +02:00
James Cotton
d78450eae8 Move some of the F2 defines into the makefile to make them global. Fixes some
issues with grabbing the wrong stm32 configuration file.
2011-08-09 01:19:05 -05:00
James Cotton
d23e13716b dos2unix: fifo_buffer 2011-08-08 08:37:14 -05:00
James Cotton
479ba7c21f OP-378 INS: Continue getting F2 INS to compile 2011-08-08 08:36:40 -05:00
James Cotton
81b7fb6185 Merge branch 'master' into OP-378_James_INS 2011-05-18 12:50:29 -05:00
Stacey Sheldon
b2b1c184de stopwatch: Add support for timers 5-8
This fixes the OP bootloader getting stuck in the
bootloader forever when USB is plugged in.

This also fails hard on being passed an unsupported
timer value so that this can be caught more easily
in the future.
2011-05-08 12:41:02 -04:00
sambas
d61f3d4d94 Merge branch 'OP-378_CheBuzz_INS' of ssh://git.openpilot.org/OpenPilot into OP-378_CheBuzz_INS 2011-05-07 18:26:12 +03:00
zedamota
1cc152b4dd More cleaning, moved stopwatch files to library folder, code formatting. 2011-04-29 20:48:13 +01:00
David Buzz Carlson
876ca3044c Added EKF code. Most of this was bulk copy and paste from the AHRS, so a lot of verification needs to take place. Grabbing sensor data remains untested. 2011-04-20 03:37:50 -07:00
peabody124
3afdc7e41c CC-24: Rotate the CC board at any angle relative to "flat and level" with GCS
config plugin updates.  Has not been tested in flight yet although seems
sensible so please be careful when using this code.

git-svn-id: svn://svn.openpilot.org/OpenPilot/trunk@3166 ebee16cc-31ac-478f-84a7-5cbb03baadba
2011-04-15 06:37:16 +00:00
jonathan
c70e134cf8 Add helper function for converting an Euler rotation vector to a rotation matrix
git-svn-id: svn://svn.openpilot.org/OpenPilot/trunk@3150 ebee16cc-31ac-478f-84a7-5cbb03baadba
2011-04-10 18:33:30 +00:00
jonathan
8aef515456 OP-191: Merge from full-calibration branch. Scale the reference magnetic field vector to units of milliguass.
git-svn-id: svn://svn.openpilot.org/OpenPilot/trunk@3054 ebee16cc-31ac-478f-84a7-5cbb03baadba
2011-03-21 00:47:02 +00:00
vassilis
b084ea7ea1 FlightPlan/Python: Updated object generator to create a Python file for each UAVObject. It is now possible to access all UAVObjects from the FlightPlan Python scripts.
Warning: The memory utilization when importing objects is unacceptably high making it unusable in the flight code at this point. It can be however used with the SITL simulator. Some more investigation is needed to understand why several kb of memory are used each time a module is imported (even before any functions are called or objects from the module are created). 


git-svn-id: svn://svn.openpilot.org/OpenPilot/trunk@2938 ebee16cc-31ac-478f-84a7-5cbb03baadba
2011-03-03 02:22:50 +00:00
peabody124
8930ec01de OP-313 Quaternion based stabilization, gets rid of lots of checking angle
signs, should be stable for all orientations

git-svn-id: svn://svn.openpilot.org/OpenPilot/trunk@2932 ebee16cc-31ac-478f-84a7-5cbb03baadba
2011-03-02 01:25:34 +00:00
stac
3fda65c5d3 hwinit: Convert SPI drivers to dynamic init
git-svn-id: svn://svn.openpilot.org/OpenPilot/trunk@2772 ebee16cc-31ac-478f-84a7-5cbb03baadba
2011-02-12 22:19:50 +00:00
vassilis
90fd4551b6 Flight/SITL: Enable debug of Python scripts
git-svn-id: svn://svn.openpilot.org/OpenPilot/trunk@2704 ebee16cc-31ac-478f-84a7-5cbb03baadba
2011-02-03 02:02:34 +00:00
vassilis
b297ef0ae5 Flight/FlightPlanner: First release of openpilot.py library giving access to RTOS and debug fields. Implemented STOP command, this should be the normal way for stopping scripts. The KILL command should be only used as a last resort for misbehaving scripts. The KILL command will delete the VM thread.
git-svn-id: svn://svn.openpilot.org/OpenPilot/trunk@2535 ebee16cc-31ac-478f-84a7-5cbb03baadba
2011-01-22 21:32:23 +00:00
FredericG
9758026d5a Added some comment, made some functions static
git-svn-id: svn://svn.openpilot.org/OpenPilot/trunk@2476 ebee16cc-31ac-478f-84a7-5cbb03baadba
2011-01-18 17:51:29 +00:00
cwabbott
4181d1de05 PyMite: Oops, delete some autogenerated files that are not needed.
git-svn-id: svn://svn.openpilot.org/OpenPilot/trunk@2445 ebee16cc-31ac-478f-84a7-5cbb03baadba
2011-01-16 03:24:43 +00:00
cwabbott
24a058c8c7 PyMite: add a new 'openpilot_sitl' platform which allows for stdio to the console and make it the default platform for win32 SiTL.
git-svn-id: svn://svn.openpilot.org/OpenPilot/trunk@2436 ebee16cc-31ac-478f-84a7-5cbb03baadba
2011-01-15 17:10:10 +00:00
cwabbott
db9bc06a08 Added support for FlightPlan in win32 SiTL and fixed line endings in Python files,
git-svn-id: svn://svn.openpilot.org/OpenPilot/trunk@2411 ebee16cc-31ac-478f-84a7-5cbb03baadba
2011-01-13 23:54:30 +00:00
pip
a1b03ef55c Added http reference address for source of coeffs and c code for if and when new coeffs are required.
git-svn-id: svn://svn.openpilot.org/OpenPilot/trunk@2383 ebee16cc-31ac-478f-84a7-5cbb03baadba
2011-01-11 15:45:16 +00:00
pip
7b50e09eb9 Fixed possible memory leaks. Now check for NULL pointers from all MALLOC calls. Functions now return '0' if OK, otherwise returns a value < 0.
git-svn-id: svn://svn.openpilot.org/OpenPilot/trunk@2381 ebee16cc-31ac-478f-84a7-5cbb03baadba
2011-01-11 11:11:23 +00:00
pip
1fbd7155f9 Moved a few large variables off the stack to dynamically allocate them from the heap (http://progress.openpilot.org/browse/OP-225).
git-svn-id: svn://svn.openpilot.org/OpenPilot/trunk@2374 ebee16cc-31ac-478f-84a7-5cbb03baadba
2011-01-10 20:30:47 +00:00
vassilis
1e78cc7a30 Flight/FlightPlan: First release of flight plan scripting. The scripting engine is based on the PyMite Python VM. The released code is able to execute a simple python script on the target. However it is currently disabled from the makefile due to a few issues with more complex scripts. When the library is enabled in the makefile a python interpreter will be needed to compile the firmware since some intermediate code is generated by PyMite.
git-svn-id: svn://svn.openpilot.org/OpenPilot/trunk@2364 ebee16cc-31ac-478f-84a7-5cbb03baadba
2011-01-09 22:36:15 +00:00
peabody124
0e7661539e OP-238 AHRS Comms: Bring down clock rate of comms to AHRS to 2.25 MHz. Decrease
to only transmitting one object per transmission too to keep size down.
Also move to using the driver structure so the paramter is in a clear place.

git-svn-id: svn://svn.openpilot.org/OpenPilot/trunk@2333 ebee16cc-31ac-478f-84a7-5cbb03baadba
2011-01-05 10:34:42 +00:00
peabody124
343b4095a3 Flight/WMM: Get rid of date structure and keep it on stack. Also don't need
error message for embedded stuff.

Note: this was only tested on PC although I'm fairly confident about it.
Please let me know about any errors.

git-svn-id: svn://svn.openpilot.org/OpenPilot/trunk@2285 ebee16cc-31ac-478f-84a7-5cbb03baadba
2010-12-24 21:57:15 +00:00
peabody124
b8476bea20 WMM: Memory reduction, variables computes from flash constants on fly. This
will run slower but greatly reduce the memory footprint (360 floats less).

git-svn-id: svn://svn.openpilot.org/OpenPilot/trunk@2284 ebee16cc-31ac-478f-84a7-5cbb03baadba
2010-12-24 21:57:12 +00:00
peabody124
1142b1fb1e PiOS/USB_HID: No longer clear buffer after getting a NAK. This was required
before because if transmission got NAK then sending would stop.  Now the next
time data is added to the buffer a new send will be attempted.

fifoBuf: in clearData just set the read pointer to the write pointer.  This is
safer for multiple people accessing it assuming the reader will be clearing it.

git-svn-id: svn://svn.openpilot.org/OpenPilot/trunk@2279 ebee16cc-31ac-478f-84a7-5cbb03baadba
2010-12-24 17:16:04 +00:00
peabody124
f30aa1d719 AHRS Comms: Send FirmwareIAP object to AHRS so that it can be remotely
rebooted.

git-svn-id: svn://svn.openpilot.org/OpenPilot/trunk@2214 ebee16cc-31ac-478f-84a7-5cbb03baadba
2010-12-10 21:03:29 +00:00
pip
912ba59cf9 You now supply a buffer address and buffer size when initializing the fifo buffer.
git-svn-id: svn://svn.openpilot.org/OpenPilot/trunk@2171 ebee16cc-31ac-478f-84a7-5cbb03baadba
2010-11-28 10:59:24 +00:00
dschin
b2a538375c Changes in files supporting AHRS for new initialization methods.
Changes in ahrs.c for new initialization and to fix issues with outdoor algorithm.  The changes in ahrs.c are pretty messy, but committed mostly to get the code to Peabody for more extensive restructuring of ahrs.c.

git-svn-id: svn://svn.openpilot.org/OpenPilot/trunk@2150 ebee16cc-31ac-478f-84a7-5cbb03baadba
2010-11-24 01:27:43 +00:00
peabody124
300a3bc8ad OP-203 PIOS_USART: Get TX buffer using fifo_buffer
git-svn-id: svn://svn.openpilot.org/OpenPilot/trunk@2142 ebee16cc-31ac-478f-84a7-5cbb03baadba
2010-11-23 17:13:46 +00:00
pip
9b22bb07e6 Fixed a bad bug in the fifo_getData functions.
git-svn-id: svn://svn.openpilot.org/OpenPilot/trunk@2044 ebee16cc-31ac-478f-84a7-5cbb03baadba
2010-10-31 04:58:34 +00:00
peabody124
800e6cbe2c AHRS/INSGPS: Fix a swapped index Corvus caught
git-svn-id: svn://svn.openpilot.org/OpenPilot/trunk@2042 ebee16cc-31ac-478f-84a7-5cbb03baadba
2010-10-30 18:15:57 +00:00
pip
7bdaaa3930 Renamed fifoBuf_size to fifoBuf_getSize and got it to return the actual usable size of the buffer (one less than the buffer size).
git-svn-id: svn://svn.openpilot.org/OpenPilot/trunk@2031 ebee16cc-31ac-478f-84a7-5cbb03baadba
2010-10-28 21:10:43 +00:00
pip
91e6fb1485 Added fifoBuf_size function
git-svn-id: svn://svn.openpilot.org/OpenPilot/trunk@2030 ebee16cc-31ac-478f-84a7-5cbb03baadba
2010-10-28 15:14:44 +00:00
peabody124
b9f74a86c3 OP-198 Flight/Libraries: Swap to using circular buffer code from Pip because it
supports thread safe write/read simultaneously

git-svn-id: svn://svn.openpilot.org/OpenPilot/trunk@2027 ebee16cc-31ac-478f-84a7-5cbb03baadba
2010-10-28 14:30:03 +00:00