Corvus Corax
f86e53bf91
Merge branch 'OP-536_CorvusCorax_ObjectOrientedFirmwareUAVTalk' into next
...
Conflicts:
flight/Modules/Telemetry/telemetry.c
2011-08-19 12:10:40 +02:00
James Cotton
f85ae84ec3
Merge branch 'camera_stabilization' into next
...
Conflicts:
flight/OpenPilot/System/pios_board_posix.c
2011-08-19 01:48:24 -05:00
Corvus Corax
6fe495c088
Merge remote branch 'origin/next' into OP-536_CorvusCorax_ObjectOrientedFirmwareUAVTalk
...
Conflicts:
flight/Modules/Telemetry/telemetry.c
2011-08-17 08:30:32 +02:00
James Cotton
35eef66bfe
OP-557: Add a UAVO access method to erase the entire flash chip. Normally not
...
needed by users because if too much changes I change the FS magic and trigger a
wipe.
Possibly the erase should require a particular "magic" object id value to
execute? This would make it harder to do manually through UAVOs though.
2011-08-15 10:33:27 -05:00
James Cotton
86b652bbab
Merge branch 'next' into camera_stabilization
2011-08-14 18:07:57 -05:00
zedamota
e736b17cc4
Merge remote-tracking branch 'remotes/origin/next' into GCS_ChangesToUI-RuntimeCFG
...
Conflicts:
ground/openpilotgcs/src/plugins/config/config_cc_hw_widget.cpp
ground/openpilotgcs/src/plugins/config/configgadgetwidget.h
ground/openpilotgcs/src/plugins/config/configstabilizationwidget.cpp
2011-08-14 15:48:16 +01:00
Corvus Corax
b75653a226
PiOS.posix: small corrections and bugfixes to make pios_com_udp work correctly. Telemetry works now.
2011-08-14 14:21:54 +02:00
Corvus Corax
5b240a2675
PiOS.posix: port pios_udp and pios_com to "next"
2011-08-14 14:21:54 +02: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
f766ba47aa
Increase the size of the eventdispatcher task and lower the maximum queue size.
2011-08-13 19:21:58 -05:00
James Cotton
a2b76adc33
Attitude: Do not start attitude estimation until accel data appears. This
...
fixes the NaN when AttitudeSettings not available.
2011-08-13 18:53:42 -05:00
James Cotton
ec4e23aff9
Camera Stabilization: Bound outputs to [-1,1] although this should be redundant
...
with checks in actuator.
2011-08-11 14:34:38 -05:00
James Cotton
9c7799dfe6
UAVObject Init: Get rid of deprecated linker init code
2011-08-10 22:48:42 -05:00
James Cotton
c8313d7b3e
Add the camera stabilization files to the Pro build. Not functional though.
2011-08-10 22:31:38 -05:00
James Cotton
bbe3c1533a
Merge branch 'next' into camera_stabilization
2011-08-10 21:57:45 -05:00
James Cotton
ab288e95ab
Stabilization: Small patch so that by default the integral is zeroed while
...
throttle is low (good for quads) but can be disabled (good for planes and also
testing helis).
2011-08-10 03:51:46 -05:00
James Cotton
f23eaa8273
Make the Actuator pull from the CameraDesired fields
2011-08-09 21:47:42 -05:00
James Cotton
f11aa80444
CameraStabilization: Make the CameraStabilization module put the desired
...
position into another object (will help with configuration).
2011-08-09 20:45:38 -05:00
James Cotton
c4e272b9ad
Merge branch 'next' into camera_stabilization
2011-08-09 20:16:45 -05:00
James Cotton
ec2121bca8
Attitude: Keep first element of quaternion positive
2011-08-08 21:16:04 -05:00
sambas
9f35b6939c
Bind IO fix
2011-08-07 10:10:52 +03:00
sambas
1e67b5e3b5
DSMx_binder, hw setting 0 disabled, 1-10 bind pulses. Manual disable after successful bind. Only for flexiport.
2011-08-06 22:16:47 +03:00
James Cotton
fd86c25b49
Make sure OP compiles with new object init structure.
2011-08-04 15:01:54 -05:00
sambas
a454cf844b
DX8 support, BIND3 only
2011-08-04 19:20:05 +03:00
James Cotton
a592e7d398
ManualControlSettings must be also initialized in pios_board.c
2011-08-04 07:47:50 -05:00
James Cotton
bac7836318
Revert "uavobj: shrink metadata struct to save RAM". I was premature merging
...
this to next as it changes the on-the-wire representation and thus doesn't
allow GCS to set the metadata.
This reverts commit a641cd7956
.
2011-08-04 07:17:36 -05:00
Stacey Sheldon
a641cd7956
uavobj: shrink metadata struct to save RAM
...
This update saves 448 bytes of RAM with the current
crop of UAVObjects. It reduces a 19 byte struct to
8 bytes.
Note: This also introduces a limit of 65.534s for the
update periods.
2011-08-03 00:00:50 -04:00
Stacey Sheldon
90b2625deb
rcvractivity: Add tracking of Rx channel activity
2011-08-02 01:27:37 -04:00
Stacey Sheldon
06cdeb7b61
rcvr: support multiple simultaneous receivers
...
Now also supports multiple instances of the Spektrum driver.
These are configured as Spektrum1 and Spektrum2.
2011-08-02 01:22:04 -04:00
Stacey Sheldon
829b8b83f6
rcvr: Add GCS receiver driver for rcvr via telemetry
...
This allows the GCS to emulate a receiver device via the
telemetry link.
Select "GCS" as your input type in the manualcontrol config
screen and calibrate it as normal.
Note: The expected values for the channels are in microseconds
just like a PWM or PPM input device. The channel values
are validated against minimum/maximum pulse lengths just
like normal receivers.
2011-08-02 01:22:04 -04:00
Stacey Sheldon
2f79e4fa76
Merge remote branch 'origin/stac/refactor-usart-com' into next
2011-07-31 09:41:06 -04:00
James Cotton
035b4103c4
Need to initialize the HwSettings before using them.
2011-07-31 09:42:15 +09:00
James Cotton
c5bf0ac657
Merge branch 'stac/refactor-usart-com' into camera_stabilization
2011-07-31 09:13:37 +09:00
James Cotton
568ea13471
Merge branch 'next' into stac/refactor-usart-com
2011-07-31 09:13:27 +09:00
Stacey Sheldon
6b1ec9a54e
bl: fix LED pwm computation with new stopwatch
2011-07-30 16:59:57 -04:00
James Cotton
3df730c64f
Merge branch 'stac/refactor-usart-com' into camera_stabilization
2011-07-30 13:38:43 +09:00
James Cotton
387a22398e
Make it possible to optionally enable the CameraStab module
2011-07-30 12:08:47 +09:00
Stacey Sheldon
8c0b60099f
rcvr: don't init spektrum and sbus rcvrs twice
2011-07-29 22:59:50 -04:00
James Cotton
cb9c6dfb5e
Change the sequencing of telemetry starting to make sure all the objects that
...
were registered in an initialize and then enumerated by telemetry
2011-07-30 11:31:45 +09:00
James Cotton
132e19d613
Change the makefiles - always compile the optional objects but the flag
...
indicates whether they are registered
2011-07-30 11:29:29 +09:00
James Cotton
ae67c51632
Register some missing objects with their modules
2011-07-30 11:28:21 +09:00
James Cotton
2e5a36a4db
Merge branch 'stac/refactor-usart-com' into camera_stabilization
2011-07-30 10:55:16 +09:00
James Cotton
b2d2114ede
Disable auto registration of all objects. Later the uavobj_init linker scripts
...
should be deleted to not carry around old code.
2011-07-30 10:24:46 +09:00
James Cotton
23e9b56839
Dos2unix flight/CopterControl/System/coptercontrol.c
2011-07-30 10:06:35 +09:00
James Cotton
96c2d24253
Merge branch 'next' into camera_stabilization
...
Conflicts:
flight/CopterControl/Makefile
flight/CopterControl/System/coptercontrol.c
flight/Modules/Actuator/actuator.c
flight/Modules/GPS/GPS.c
flight/Modules/ManualControl/manualcontrol.c
flight/Modules/Stabilization/stabilization.c
flight/Modules/System/systemmod.c
shared/uavobjectdefinition/manualcontrolsettings.xml
shared/uavobjectdefinition/stabilizationdesired.xml
2011-07-30 10:06:10 +09:00
James Cotton
333ab645ec
Dos2unix manualcontrol.c to facilitate merging
2011-07-30 09:55:02 +09:00
Stacey Sheldon
c2fb0d8b43
com: allow run-time allocation of buffers
2011-07-29 15:33:14 -04:00
Stacey Sheldon
8b0415d905
bl: alternate stopwatch for small bootloaders
...
The small bootloaders (CC and PipX) are out of flash space
so their stopwatch implementation has been swapped out for
one based on the DELAY clock that takes about 500 bytes less
of code space.
Identical functionality is preserved.
2011-07-29 15:33:01 -04:00
Stacey Sheldon
13f9b0e09d
Merge remote branch 'origin/OP-498_jwhitlock_add-ppm-to-cc' into next
2011-07-28 22:15:01 -04:00
Stacey Sheldon
a3888ecd48
usart: ensure callbacks are bound in the correct order
2011-07-27 23:21:39 -04:00
Stacey Sheldon
5f8760a55c
com: Move buffering out of USART/HID layer and into COM layer
...
This allows the spektrum and sbus receiver drivers to bind
directly to the usart layer using a properly exported API
rather than overriding the interrupt handler.
Bytes are now pushed directly from the usart layer into the
com layer without any buffering. The com layer performs all
of the buffering.
A further benefit from this approach is that we can put all
blocking/non-blocking behaviour into the COM layer and not
in the underlying drivers.
Misc related changes:
- Remove obsolete .handler field from irq configs
- Adapt all users of PIOS_COM_* functions to new API
- Fixup callers of PIOS_USB_HID_Init()
2011-07-27 19:45:38 -04:00
James
60136f0464
Add support for PPM transmitters up to 12 channels. Small array indexing issue in PIOS_PPM_Get.
2011-07-27 00:33:32 +01:00
Stacey Sheldon
b70d5ae148
Merge remote branch 'origin/msmith-delay-timer' into next
2011-07-26 09:04:06 -04:00
Mike Smith
df5569c758
Fix a stupid off-by-one that prevented this code from working.
...
Update to use 32-bit microsecond values.
Remove PIOS_DELAY_DiffuS per consensus (caller can do it easily themselves).
Update the core delay logic per Stac's suggestion to a version that is
resistant to various overflows.
2011-07-25 20:55:48 -07:00
James Cotton
056db1cdda
Merge branch 'bugfix-flight' into next
2011-07-24 07:09:42 +09:00
James Whitlock
6a6ec41809
Build fixes
2011-07-23 22:10:17 +01:00
Mike Smith
480f07a264
Typo fix.
2011-07-23 13:58:56 -07:00
Mike Smith
a89092e275
Update to use the delay API to get entropy rather than reading the timer directly.
2011-07-23 13:53:42 -07:00
Mike Smith
0df3bb2c37
Restore functions lost due to inept merging, and refactor to take advantage of them.
...
Address the following review feedback items:
- use stdint types
- avoid the use of magic numbers (define CYCCNTENA)
- remove expository comment about sneakiness and corresponding code, replace with something simpler based on the API
- remove commented/#if 0 code
2011-07-23 13:53:16 -07:00
Mike Smith
dae4b44100
Remove commented code that refers to the now-obsolete PIOS_DELAY_TIMER
2011-07-23 13:49:36 -07:00
Mike Smith
c3267a3b53
Remove PIOS_DELAY_TIMER definitions from configuration files, as there is no longer a delay timer to configure.
2011-07-23 13:48:40 -07:00
James Whitlock
11c568ec50
Add in a PPM input frame size tracker.
...
Move update of capture values to start of new frame.
Fix an issue with setting channels to invalid.
2011-07-23 01:38:51 +01:00
James Whitlock
7a58b4cceb
A quick clean of ppm code to remove white space and duplicated comments
2011-07-23 01:32:57 +01:00
James Cotton
abee34e551
Getting posix simulation compatible with init and receiver changes
2011-07-22 07:50:06 -05:00
Mike Smith
6bc5339015
Change the pios_delay implementation to use the CPU cycle counter rather than burning a timer.
2011-07-21 23:21:26 -07:00
Stacey Sheldon
a7cce25252
usart: fix lower usarts clobbering higher ones
...
The break statements are clearly missing from this
switch statement.
This would lead to problems when using more than one
USART on CC.
2011-07-22 00:30:49 -04:00
James Whitlock
7ce5daef8f
Clean up of PPM code in master.
2011-07-19 20:46:24 -04:00
Stacey Sheldon
8dbace5ee2
Merge branch 'rcvr_mem_reduction'
...
Conflicts:
flight/PiOS/STM32F10x/link_STM32103CB_CC_Rev1_sections.ld
2011-07-17 17:14:40 -04:00
James Cotton
2da65014c7
Fix typo in servo doxygen header
2011-07-16 03:25:33 -05:00
James Cotton
14370b5ac4
Reenable serial telemetry on OP main board
2011-07-15 19:10:00 -05:00
James Cotton
b83f731c03
Remove all references to vTaskDelay in the flash code as it can run before the
...
FreeRTOS scheduler
Also increaes init stack size from 0x80 to 0x100
2011-07-15 18:16:16 -05:00
James Cotton
01b62cf98f
Fix a typo
2011-07-15 15:30:10 -05:00
James Cotton
72e80d407c
Change the magic value in the object file table. Forces all objects to be
...
erased since all ids are changing - this frees up memory.
2011-07-15 11:11:29 -05:00
James Cotton
d41260d54c
Make the stabilization settings query correctly now by increasing the TX buffer
...
on the CC side to 256 bytes instead of 128 to support large objects (max object
size is 256 bytes)
2011-07-15 10:40:21 -05:00
James Cotton
3d35e249c8
Merge branch 'master' into bugfix-flight
2011-07-15 10:33:54 -05:00
Stacey Sheldon
6580462916
rcvr: specify drivers for groups of channels
...
Each channel was previously tracking a separate driver.
Now, channels are grouped within a channel group to save
RAM used for tracking and to better reflect how channels
are actually mapped.
2011-07-14 23:22:42 -04:00
Stacey Sheldon
442d56c1c5
linker: Add section to record unused RAM
...
Note that this section will be absorbed by the heap at runtime.
2011-07-14 23:22:42 -04:00
zedamota
b005346fab
Windows eclipse workspace. Sorry for the mess, all is good know...I think
2011-07-14 18:16:38 +01:00
zedamota
e559582bb8
Eclipse workspace update
2011-07-14 17:09:58 +01:00
zedamota
c22bc2a675
Merge branch 'bugfix-flight' of ssh://git.openpilot.org/OpenPilot into bugfix-flight
2011-07-14 14:07:28 +01:00
zedamota
16e28900d0
Created new eclipse workspace for windows
2011-07-14 13:34:34 +01:00
sambas
18a5465246
Bugfix: CC flexiport spektrum config
...
Working spektrum bind routine, depending your TX try BIND_PULSES 3,5,7,9 (5 works with DX7)
Boot process takes too long on MB so bind command misses the window (20-140ms).
2011-07-14 14:43:26 +03:00
Mathieu Rondonneau
612a439199
OP-423: simplify the MODULE_INITCALL macro and remove the ordering loops
2011-07-12 20:44:32 -07:00
James Cotton
0aec3b592c
Changing stabilization so that the PIDs are zeroed when not armed, but NOT when
...
the throttle is < 0. This will make things like axis-lock work while armed
without throttle. HOWEVER don't hold your stick in the arming position for a
long time or you can wind up the integrals now.
2011-07-12 14:35:32 -05:00
James Cotton
2c7cfe435f
Somehow this task runs quite a few times at the beginning so dT was going to
...
zero and making the attitude get NaN. Wrote recovery code for that condition
(should never occur) and also force minimum dT to 1 ms (also shouldn't occur)
2011-07-12 14:18:19 -05:00
James Cotton
53ca934b2b
Merge branch 'heli_stabilization'
...
Conflicts:
flight/CopterControl/System/inc/pios_config.h
flight/Modules/Attitude/attitude.c
flight/Modules/ManualControl/manualcontrol.c
flight/Modules/Stabilization/stabilization.c
2011-07-12 13:28:20 -05:00
James Cotton
9e94f9fee9
Fix typo from SISE to SIZE
2011-07-12 12:48:06 -05:00
James Cotton
2fe7ee40b1
Merge branch 'OP-423_Mathieu_Change_Init_To_Reduce_Memory_Footprint'
2011-07-12 12:44:59 -05:00
James Cotton
c33d3057cc
Dos2unix evendispatcher file
2011-07-12 12:36:20 -05:00
James Cotton
15a2b85729
For OpenPilot use the minimal stack size (512 words) for eventdispatcher as
...
this is necessary for object saving. Creating a new define to override this
for CopterControl down to 96.
2011-07-12 12:34:40 -05:00
James Cotton
557771d3ef
Change to OP MB code to make it work with input changes. Previously tried to
...
register every possible input channel. Slipped through review because
"obviously correct" change fixed previous bug masking this. Woohoo testing :)
2011-07-12 11:41:21 -05:00
James Cotton
59798701a2
Merge branch 'master' into bugfix-flight
...
Conflicts:
flight/CopterControl/System/inc/pios_config.h
2011-07-12 11:40:47 -05:00
James Cotton
3b3b76aa46
Revert "Drop 8 bytes per PID of unecessary information. Also trying to compute"
...
This reverts commit 9c1e523260
.
2011-07-12 11:37:36 -05:00
Mathieu Rondonneau
d38f6167e3
OP-423:
...
Also reduce heap has it does not fit in SRAM anymore (not with current compiler).
(that's ok since if there is more space available, it will be reclaimed).
Merge branch 'master' into OP-423_Mathieu_Change_Init_To_Reduce_Memory_Footprint
Conflicts:
flight/CopterControl/System/inc/pios_config.h
flight/Modules/ManualControl/manualcontrol.c
2011-07-08 06:29:34 -07:00
Stacey Sheldon
b86ef4de82
bootcfg: fix incorrect bounds checking on rcvr registration
...
This was preventing any receivers from registering their
channels.
2011-07-07 23:59:12 -04:00
Stacey Sheldon
2e8d3a9be3
clean up cut/paste cruft
2011-07-07 23:02:09 -04:00
Stacey Sheldon
1f004ee896
ppm: port PPM driver onto new CC driver layers
...
This is a port of a work-in-progress by Sambas onto
the new driver infrastructure needed for boot-time
configuration.
PPM and PWM still don't coexist in a build but this
is closer.
2011-07-07 22:27:57 -04:00
Stacey Sheldon
226f095a2e
bootcfg: remove baudrate #defines for USARTs
...
The initial baud rates of each interface are now forced in the
board init code.
Any modules using USARTs should have fields added to
their settings object to allow the user to change the
baud rate from the default by using the COM layer APIs.
Developers requiring custom baud rates before the settings
objects are in place should locally edit the cfg structs
to specify the desired baud rates.
2011-07-06 23:03:54 -04:00
Stacey Sheldon
a8787ee015
bootcfg: Add support for selecting S.Bus receivers in inputtype
2011-07-06 22:38:23 -04:00
Stacey Sheldon
bf39ab7a22
remove left-over comment about compile time configs
...
No functional changes.
2011-07-06 22:36:15 -04:00