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

157 Commits

Author SHA1 Message Date
Mathieu Rondonneau
3780de8d3e OP-423 port to OP (heap2) the previous changes done in CC (heap1) (see c95b199166)
I managed to test CC with heap2 changes and the init stack claimed back to heap once scheduler starts.

the changes of this commit are OP related (just cleanup on CC side):
Arch specific stuff (in reset vector) to hide this from portable code:
     - switch back to MSP stack before starting the scheduler so that the sheduler can use the IRQ stack (when/if needed).
     - call the C portable function in heap2 to claim some stack back (the number to claim is taken from linker file).
     - start the scheduler from reset vector (I move this here from main because it make sense to not go back to C (so that I don't need to copy the rolled stack in case the sheduler returns). This make it more clean.
     - Also I have added the call to the mem manager if sheduler return. that way, we don't reset indefinitely if memory runs out. We will go to this handler and figure things out (right now, it's just looping but at least not rebooting. Probably trap NMI would be better (later improvement).
2011-06-14 20:10:53 -07:00
Mathieu Rondonneau
1f54e32ea9 OP-423 also add changes to OP. (I can not test it because I don't have a board so only compile test) 2011-06-13 17:10:14 -07:00
sambas
17fb31a7fa Spektrum rtc supervisor working, tested on CC and all outputs are activated. Needs review and testing before merge. 2011-05-29 14:52:22 +03:00
James Cotton
bdf862a712 PIOS/RTC: Add functions to get the rate. Also changed Start to Init to be more
consistent with pios.
2011-05-18 01:45:21 -05:00
Corvus Corax
59dd0637a3 PiOS_posix: Add support for pios_debug API, to allow building of GPS module in x86 environment 2011-05-05 14:57:30 +02:00
James Cotton
819bc9d441 Merge branch 'master' into OP-430_Ligi_UAVTalk-Code-Review 2011-04-26 12:49:32 -05:00
Corvus Corax
cdb6b65e64 Merge branch 'master' into OP-383_Edouard_CPUSerial_in_FirmwareIAP 2011-04-25 02:36:44 +02:00
marcus bueschleb
06ac71b784 do not force telemetry update when alarm is changed - this was bypassing the MetaData of the UAVObject and seem to be a relict from times where no metadata existed - now doing it the MetaData way with onchange as updatemode - see http://forums.openpilot.org/topic/4208-systemalarms-bypassing-updatemode-from-metadata/ and OP-431 2011-04-24 03:43:05 +02:00
Corvus Corax
357bc369db PIOS: Bootloader Helper functions should sit in HAL, not duplicated in every single architecture. 2011-04-23 19:40:41 +02:00
Corvus Corax
2bf7ea2271 Modules/GPS: Make code to deal with home location optional to allow a sleeker GPS module for RAM challenged systems 2011-04-23 16:49:07 +02:00
sambas
dabc33c71c OP-22 Flight/PiOS: fix for 11ms framerate, Spektrum supervisor timer must have atleast one interrupt between frames
git-svn-id: svn://svn.openpilot.org/OpenPilot/trunk@3134 ebee16cc-31ac-478f-84a7-5cbb03baadba
2011-04-09 14:51:39 +00:00
corvus
8a49dbb6ab OpenPilot_posix: Added ENABLE_QUATERNION_STABILIZATION define
git-svn-id: svn://svn.openpilot.org/OpenPilot/trunk@3116 ebee16cc-31ac-478f-84a7-5cbb03baadba
2011-04-01 15:14:33 +00:00
sambas
0eeacb44bd PPM driver for OP, first test
git-svn-id: svn://svn.openpilot.org/OpenPilot/trunk@3007 ebee16cc-31ac-478f-84a7-5cbb03baadba
2011-03-08 18:08:13 +00:00
FredericG
5f52ef6aaa fix: PIOS_DEBUG_Init() was no longer called
git-svn-id: svn://svn.openpilot.org/OpenPilot/trunk@2970 ebee16cc-31ac-478f-84a7-5cbb03baadba
2011-03-05 09:21:32 +00:00
peabody124
e4d9ef98a5 OP-315: Display run time as a percentage
git-svn-id: svn://svn.openpilot.org/OpenPilot/trunk@2944 ebee16cc-31ac-478f-84a7-5cbb03baadba
2011-03-03 04:28:45 +00:00
peabody124
ec29920a8d OP-315: Clean up RTC calls into a separate function. Unfortunately still need
to add function headers into portmacro.h

git-svn-id: svn://svn.openpilot.org/OpenPilot/trunk@2942 ebee16cc-31ac-478f-84a7-5cbb03baadba
2011-03-03 04:28:38 +00:00
peabody124
3e2c542eef OP-315 Use RTC at 65 khz as time base for task switching
git-svn-id: svn://svn.openpilot.org/OpenPilot/trunk@2941 ebee16cc-31ac-478f-84a7-5cbb03baadba
2011-03-03 04:28:34 +00:00
peabody124
528f74b512 OP-315: Extend TaskInfo to include run time stats. Still need to configure a
timer to run at around 10 khz.  RTC a good option.

git-svn-id: svn://svn.openpilot.org/OpenPilot/trunk@2940 ebee16cc-31ac-478f-84a7-5cbb03baadba
2011-03-03 04:28:29 +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
osnwt
899c1fe0bf Moved CPU and heap alarm thresholds into pios_config.h.
Fixed heap thresholds for the CC (prevented arming).

git-svn-id: svn://svn.openpilot.org/OpenPilot/trunk@2886 ebee16cc-31ac-478f-84a7-5cbb03baadba
2011-02-26 11:46:39 +00:00
pip
c214833346 oops!! .. enabled PPM and disable PWM by default .. sorry
git-svn-id: svn://svn.openpilot.org/OpenPilot/trunk@2817 ebee16cc-31ac-478f-84a7-5cbb03baadba
2011-02-20 13:40:19 +00:00
pip
d733f08a0e Fixed PPM compile option (missing pin defines)
git-svn-id: svn://svn.openpilot.org/OpenPilot/trunk@2816 ebee16cc-31ac-478f-84a7-5cbb03baadba
2011-02-20 13:12:08 +00:00
FredericG
ec634ef3e7 debug-pins, small fix
git-svn-id: svn://svn.openpilot.org/OpenPilot/trunk@2808 ebee16cc-31ac-478f-84a7-5cbb03baadba
2011-02-19 09:11:00 +00:00
peabody124
52f09e5d55 Add compile time flag (USE_SPEKTRUM) to enable spektrum support until the
dynamic switching is done.

git-svn-id: svn://svn.openpilot.org/OpenPilot/trunk@2778 ebee16cc-31ac-478f-84a7-5cbb03baadba
2011-02-13 17:43:44 +00:00
sambas
f3bce1705b OP-22 Flight/PiOS: Spektrum fix, OP tested on ground not flown yet, CC not tested.
pios_rcinput.[ch] outdated

git-svn-id: svn://svn.openpilot.org/OpenPilot/trunk@2775 ebee16cc-31ac-478f-84a7-5cbb03baadba
2011-02-13 13:10:02 +00:00
stac
66a9d53d0a hwinit: Convert I2C driver to dynamic init
git-svn-id: svn://svn.openpilot.org/OpenPilot/trunk@2773 ebee16cc-31ac-478f-84a7-5cbb03baadba
2011-02-12 22:19:54 +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
stac
841b0d3d6d hwinit: Convert COM and USART to dynamic init
git-svn-id: svn://svn.openpilot.org/OpenPilot/trunk@2771 ebee16cc-31ac-478f-84a7-5cbb03baadba
2011-02-12 22:19:43 +00:00
stac
4e6b539086 debugpins: Add definitions for debug pins
Not yet used anywhere but will eventually allow
debug pins to be assigned during runtime init based
on configuration found in a new uavobject.

git-svn-id: svn://svn.openpilot.org/OpenPilot/trunk@2741 ebee16cc-31ac-478f-84a7-5cbb03baadba
2011-02-06 01:03:06 +00:00
peabody124
f97d853c80 Make the PriTx queue optional which saves 700 bytes
git-svn-id: svn://svn.openpilot.org/OpenPilot/trunk@2729 ebee16cc-31ac-478f-84a7-5cbb03baadba
2011-02-05 10:52:52 +00:00
peabody124
cf2e9fb349 Memory: Also allow overriding Stabilization stack size
git-svn-id: svn://svn.openpilot.org/OpenPilot/trunk@2690 ebee16cc-31ac-478f-84a7-5cbb03baadba
2011-02-02 08:57:34 +00:00
peabody124
877bcca880 Delete hardcoded min and max servo PWM times, they weren't used. Use the
configuration settings.

git-svn-id: svn://svn.openpilot.org/OpenPilot/trunk@2676 ebee16cc-31ac-478f-84a7-5cbb03baadba
2011-02-01 21:04:58 +00:00
peabody124
c3aa5ed8f3 Posix: Add the constants for telemetry queue sizes and also make the actuator
SetHz calls compatible with the PiOS API change

git-svn-id: svn://svn.openpilot.org/OpenPilot/trunk@2672 ebee16cc-31ac-478f-84a7-5cbb03baadba
2011-02-01 15:47:02 +00:00
sambas
ba5ebb6b13 OP-303 PIOS/Sonar: preliminary support for HCSR04 ultrasound altimeter module, tested and working :)
git-svn-id: svn://svn.openpilot.org/OpenPilot/trunk@2610 ebee16cc-31ac-478f-84a7-5cbb03baadba
2011-01-28 19:21:22 +00:00
peabody124
ac031d9b0d OP-256 RC 3 is using TIM5 but wasn't previously handling this ISR. Passing to
the PWM ISR now.

git-svn-id: svn://svn.openpilot.org/OpenPilot/trunk@2607 ebee16cc-31ac-478f-84a7-5cbb03baadba
2011-01-28 16:01:40 +00:00
sambas
d917ced2f6 Fix for pwm input reset problem? Try the line I commented out because I can't test this.
git-svn-id: svn://svn.openpilot.org/OpenPilot/trunk@2606 ebee16cc-31ac-478f-84a7-5cbb03baadba
2011-01-28 13:30:12 +00:00
sambas
195b63b6bb OP-22 PIOS/Spektrum: Made spektrum input driver, NOT YET TESTED!!!, also preliminary support for CC, sync/supv timer not yet fixed.
git-svn-id: svn://svn.openpilot.org/OpenPilot/trunk@2602 ebee16cc-31ac-478f-84a7-5cbb03baadba
2011-01-28 09:25:30 +00:00
peabody124
92dd78db51 OP-256 PIOS/PWM: Disable from the pios_board.c file when not using PWM
git-svn-id: svn://svn.openpilot.org/OpenPilot/trunk@2589 ebee16cc-31ac-478f-84a7-5cbb03baadba
2011-01-24 23:17:39 +00:00
peabody124
3b0be12b67 OP-291 PIOS/Servo: Fix a few interrupt mappins for OP
Also keep the priority of actuator at idle+4, dropping it down slipped through

git-svn-id: svn://svn.openpilot.org/OpenPilot/trunk@2580 ebee16cc-31ac-478f-84a7-5cbb03baadba
2011-01-24 07:52:20 +00:00
peabody124
7554021ed0 OP-256 PIOS/PWM: Set the interrupts correctly
git-svn-id: svn://svn.openpilot.org/OpenPilot/trunk@2577 ebee16cc-31ac-478f-84a7-5cbb03baadba
2011-01-24 07:52:11 +00:00
peabody124
99fcd089d4 OP-291 PIOS/Servo: Make the remapping of timers a part of the driver structure
git-svn-id: svn://svn.openpilot.org/OpenPilot/trunk@2569 ebee16cc-31ac-478f-84a7-5cbb03baadba
2011-01-24 07:51:48 +00:00
peabody124
da96ce15b9 OP-256 PIOS/PWM: Converting PWM input to use standard driver structure.
Beginning of unifying the input types into PIOS_RECEIVER.

git-svn-id: svn://svn.openpilot.org/OpenPilot/trunk@2568 ebee16cc-31ac-478f-84a7-5cbb03baadba
2011-01-24 07:51:45 +00:00
peabody124
2d9f7f32d1 OP-291 PiOS/Servo: Converting output to use driver system
git-svn-id: svn://svn.openpilot.org/OpenPilot/trunk@2499 ebee16cc-31ac-478f-84a7-5cbb03baadba
2011-01-21 03:40:21 +00:00
vassilis
d7fd8a3bcd Flight/FlightPlan: Enable Python VM and test flightplan execution. From now on a Python executable needs to be in the system path as it is used in the Makefile.
A test script is statically linked (will eventually be uploaded by the GCS and stored in the VM), it can be found under: Modules/FlightPlan/flightplans/test.py

To start the script send the FlightPlanControl object with the Start command, to stop send the Stop or Kill commands.

Next release will be the OpenPilot python libraries and access to UAVObjects from the script.



git-svn-id: svn://svn.openpilot.org/OpenPilot/trunk@2480 ebee16cc-31ac-478f-84a7-5cbb03baadba
2011-01-19 03:34:01 +00:00
peabody124
c2bdf624e8 OP-269 PIOS/ADC: Previous ADC driver update changed the PCLK2 divider for all
projects which messed up a timer on OP and serial on PipX.  Now this is only
changed for AHRS.  Ideally wouldn't even change for that but then ADC runs too
fast and we get a lot more CRC errors for dealing with all that data.

git-svn-id: svn://svn.openpilot.org/OpenPilot/trunk@2459 ebee16cc-31ac-478f-84a7-5cbb03baadba
2011-01-16 23:00:48 +00:00
peabody124
0259b6d1f1 OP-269 PIOS/ADC: First part of conversion to driver structures
git-svn-id: svn://svn.openpilot.org/OpenPilot/trunk@2444 ebee16cc-31ac-478f-84a7-5cbb03baadba
2011-01-16 02:45:39 +00:00
peabody124
81b0c3fdb6 OP-269 PiOS/ADC: Moved AHRS ADC code to PiOS and made all the projects use it
git-svn-id: svn://svn.openpilot.org/OpenPilot/trunk@2440 ebee16cc-31ac-478f-84a7-5cbb03baadba
2011-01-16 02:45:22 +00:00
peabody124
c59a1ff018 OP-265 OP-266: FreeRTOS configuration per project because of available heap
size (may eventually need to be per revision if we get bigger ram).  Typo in a
the ifdefs to get allow disabling SDCARD

git-svn-id: svn://svn.openpilot.org/OpenPilot/trunk@2423 ebee16cc-31ac-478f-84a7-5cbb03baadba
2011-01-14 01:38:42 +00:00
cwabbott
0f965df11e SiTL: Updates for UAVObjects, and for the recent Actuator and Watchdog changes to compile with SiTL. Posix needs to be tested.
git-svn-id: svn://svn.openpilot.org/OpenPilot/trunk@2387 ebee16cc-31ac-478f-84a7-5cbb03baadba
2011-01-12 00:39:18 +00:00
peabody124
b173d74821 OP-237 I2C ESC support. This _will_ require you to reconfigure your
ActuatorSettings although for PWM aircrafts it should be done exactly as before

Actuator: Store the update times and maximum update time

OP-14 I2C: Start tracking short history of events and states in driver for
logging
OP-237 Flight/Actuator: Support for I2C based ESCs

OP-237 MK_ESC: Send all four motors as one atomic transfer

OP-237 Flight/Actuator: Allow channels to be mapped to MK I2C interface.  Currently
mixer channels are either PWM or MK but in the future this will change to
support more than 8 channels.

OP-16 PiOS/I2C: Further work to try and make I2C more stable, mstly special case
handline in IRQ

OP-237 I2C ESC: Support for Astect 4 channel ESCs

OP-237: When the I2C Actuator write update fails track this

OP-237 Actuator Settings: Change the way motor types are selected to keep that
information more appropriately within ActuatorSettings instead of MixerSettings

Also make motors stay at or above neutral when armed and throttle > 0

git-svn-id: svn://svn.openpilot.org/OpenPilot/trunk@2366 ebee16cc-31ac-478f-84a7-5cbb03baadba
2011-01-10 01:11:44 +00:00