Commit Graph

5379 Commits

Author SHA1 Message Date
Felix Ruess 4670d97b60 demo ahrs_actuators firmware 2015-04-15 15:04:37 +02:00
Felix Ruess 60624153be [conf] remove unneeded usb_test airframe file 2015-04-15 10:49:34 +02:00
Christophe De Wagter ea58643e91 Merge pull request #1143 from paparazzi/opticflow
[vision] Opticflow rewrite: 
-less grabbing threads
-faster grabbing
-static linking issues fixed properly
-documentation
-rewritten code
2015-04-09 11:47:38 +02:00
Freek van Tienen 0f7dc6b093 [vision] Small fixes and added periodic telemetry 2015-04-06 23:11:40 +02:00
Freek van Tienen abc2859fbe [vision] Added more documentation about optical flow 2015-04-06 23:11:40 +02:00
Freek van Tienen 5f49f54faa [vision] Add more settings to optical flow 2015-04-06 23:11:40 +02:00
Freek van Tienen e8895ae6cd [linux] Static link LIBC library 2015-04-06 23:11:32 +02:00
Felix Ruess 4f5806a392 [conf] cleanup imu makefiles 2015-04-03 21:57:11 +02:00
Felix Ruess 99ad231feb [conf] cleanup ahrs makefiles 2015-04-03 14:27:05 +02:00
Felix Ruess df013ec60a cleanup telemetry subsystem makefiles 2015-04-03 14:27:05 +02:00
Felix Ruess bfdd5bcd3f Merge pull request #1155 from gautierhattenberger/air_data
[air_data] use CAS/EAS for airspeed and send TAS in message
2015-04-02 14:51:05 +02:00
Felix Ruess 7db93590f4 [conf] quad_lisa_mx: remove test_ahrs target 2015-04-02 12:12:52 +02:00
Felix Ruess 1e6863bdd5 [test_progs] fixes for cc3d 2015-04-02 11:24:58 +02:00
Felix Ruess 478e8dd56a [boards] start adding support for CC3D 2015-04-02 11:24:57 +02:00
Gautier Hattenberger 1bf6bdebe8 [air_data] use CAS/EAS for airspeed and send TAS in message 2015-04-01 22:09:11 +02:00
Felix Ruess 2502871d47 [conf] nps sensor files sensitivity fixes 2015-03-31 14:41:51 +02:00
Gautier Hattenberger 01534f24ab Merge pull request #1150 from paparazzi/nps_datalink
[NPS] add possibility to simulate loss of datalink/downlink

close #934
2015-03-27 13:19:38 +01:00
Felix Ruess 7eea0aadd2 [imu] add driver for only a MPU6000 via spi 2015-03-26 23:12:43 +01:00
Felix Ruess bdd7ceb43e [nps] add possibility to simulate loss of datalink/downlink
It is a bit of a hack, especially we can't disable changing settings if datalink is disabled,
since we need to parse that to enable the datalink via settings again.

Nevertheless it should suffice for most cases and close #934
2015-03-26 19:00:06 +01:00
Felix Ruess 6f4c7b7a98 [modules] mavlink: more flexible MAVLINK_PORT configure options 2015-03-25 16:03:57 +01:00
Felix Ruess 760dc14f7a [conf] bebop: add air_data module 2015-03-25 14:51:35 +01:00
Felix Ruess a7c5ecaeb2 [conf] bebop: fix VIEWVIDEO_x paths 2015-03-24 18:40:09 +01:00
Felix Ruess b95a1aff03 Merge pull request #1130 from paparazzi/refactor_estimators
Continue refactoring of AHRS and INS:
- add GEO_MAG ABI message
- add GPS ABI message
- remove explicit calling of update_gps functions (replaced by GPS ABI callbacks)
- each ins has it's own unique struct/function names
- send STATE_FILTER_STATUS from each implementation (with added id if you run multiple ones)
- use stateIsAttitudeValid() instead of AHRS.is_aligned
  - The state interface is initialized with invalid attitude.
    It becomes valid as soon as an attitude is set (via one of the stateSetNedToBodyX functions).
    This should be only done by an AHRS/INS after it is aligned.
- add possibility to run multiple (currently two) AHRS implementations and switch which one should push the output to the state interface during runtime

`ahrs_init()` and `ins_init()` are now sort of "dispatcher" functions, that init/register the actually used implementation.

As an example using `float_mlkf` as the `PRIMARY_AHRS` and `int_cmpl_quat` as `SECONDARY_AHRS`, in your firmware section of the airframe file:
```
  <subsystem name="ahrs"          type="float_mlkf"/>
  <subsystem name="ahrs"          type="int_cmpl_quat">
    <configure name="SECONDARY_AHRS" value="int_cmpl_quat"/>
  </subsystem>
```

In `ahrs_init()` it calls the ahrs_x_register functions for both. Each of those calls their own ahrs_foo_init and then `ahrs_register_impl(enable_output_function)`, then do the ABI binding and register periodic telemetry functions.

The "enable_output_function" pointer is used to keep a reference to the implementation functions to switch on/off publishing of the output to the state interface.
Hence you can call `ahrs_switch(idx)` at runtime to switch the output of the AHRS implementations.
E.g. with idx=1 switch to the output of the secondary AHRS (with 0 being the primary)
Add the `conf/settings/estimators/ahrs_secondary.xml` settings file to switch them via settings.
2015-03-24 14:19:03 +01:00
Felix Ruess 90f54ecbbc Merge pull request #1144 from paparazzi/flight_recorder
Flight recorder module

Allow to define the messages to be logged from the telemetry file (with FlightRecorder process).
Working with SD log on Apogee, but should also work with data logger over uart.

The periodic telemetry structures had to be merged in a single one, so messages are registering for all telemetries.
2015-03-24 13:38:36 +01:00
Felix Ruess fc383fd34a Merge branch 'master' into refactor_estimators
* master: (76 commits)
  [ocaml] [sim] Switched to dynamic linking on OS X.
  [ocaml] remove leftover file
  [ocaml] clean up sed invocation
  remove more sim_uart
  remove unused sim_uart
  fix typo in ivy_transport
  remove max3100 module and update gsm module
  [device] rename transmit with put_byte
  [device] rename get_char with get_byte
  Fixing sed invocation on OS X.
  [fix][ocaml] fix formatting of MOVE_WP and ACINFO
  [fix][ocaml] uint32 are actually stored in Int64
  remove obsolete link macros
  [ins] start considering BODY_TO_GPS translation
  [gcs] don't call Gtk element before GtkInit
  [ocaml][simulator] remove myGtkInit by calling init directly in simsitl.ml
  [ocaml] remove myGtkInit.ml, call Main.init directly in gcs.ml
  [ocaml] replace LABLGTK2GNOMECANVAS in META.pprz
  [ocaml] remove dysfunct caml_from_c_example
  [ocaml] remove old unused gtk files
  ...
2015-03-24 00:05:17 +01:00
Felix Ruess 7f4b313c72 [conf] update conf for apogee_chibios 2015-03-23 23:24:55 +01:00
Piotr Esden-Tempski 2c23b9754d [ocaml] [sim] Switched to dynamic linking on OS X.
An interesting lesson here is that ocamlc assumes that all .so files are
shared libraries. It does not do the same for .dylib files. This is why
we have to compile a dylib and save it away as a .so so that ocamlc is
able to do the right thing.
2015-03-23 22:42:51 +01:00
Gautier Hattenberger 03b0242413 add missing file 2015-03-23 22:28:33 +01:00
Felix Ruess 2edf6a6b29 [tests] fix test_ahrs 2015-03-23 22:25:02 +01:00
Gautier Hattenberger 742341bd2e [telemetry] merge all telemetry struct in a single one
Conflicts:
	conf/firmwares/subsystems/fixedwing/telemetry_transparent.makefile
	conf/firmwares/subsystems/fixedwing/telemetry_xbee_api.makefile
	conf/firmwares/subsystems/rotorcraft/telemetry_transparent.makefile
	conf/firmwares/subsystems/rotorcraft/telemetry_transparent_udp.makefile
	conf/firmwares/subsystems/rotorcraft/telemetry_transparent_usb.makefile
	conf/firmwares/subsystems/rotorcraft/telemetry_xbee_api.makefile
2015-03-23 18:25:06 +01:00
Gautier Hattenberger dd19ecda35 [log] start support of flight recorder 2015-03-23 18:20:51 +01:00
Felix Ruess 181b0da47b Merge pull request #1140 from paparazzi/link_device
Use the generic device interface for receiving data stream (transmission was already done).

Tested on stm32f4 (xbee_api, ublox over uart, log), lpc21 (transparant), ardrone2 (udp, ublox over ftdi)

This is also a necessary step to continue the rt_chibios integration due to conflicting definition of peripherals (when used with uppercase).
2015-03-23 18:14:15 +01:00
Freek van Tienen 712264cbee [vision] Fix optic flow calculations 2015-03-22 17:07:55 +01:00
Freek van Tienen 54145a2e88 [vision] Better FAST9 corner detection 2015-03-22 17:07:55 +01:00
Freek van Tienen 9be322692f [vision] Move folders and add general image struct 2015-03-22 17:07:54 +01:00
Freek van Tienen 0e0d1be8d0 [vision] Opticflow cleanup 2015-03-22 17:07:54 +01:00
Gautier Hattenberger 999029b5df [fix][ocaml] uint32 are actually stored in Int64
and converting md5sum to hex was really a bad idea (since server was not
aware of this change)
2015-03-20 18:15:50 +01:00
Felix Ruess 3fceb3fd82 remove obsolete link macros 2015-03-20 12:34:12 +01:00
Felix Ruess 3987170152 [ocaml][simulator] remove myGtkInit by calling init directly in simsitl.ml 2015-03-19 13:16:40 +01:00
Gautier Hattenberger 72deb3577c [ocaml] fix formatting of values in pprz ocaml lib (#1135) 2015-03-18 13:35:33 +01:00
Gautier Hattenberger 083d21415d Merge remote-tracking branch 'paparazzi/link_device' into link_device
Conflicts:
	conf/modules/ahrs_chimu_uart.xml
2015-03-17 12:02:34 +01:00
Gautier Hattenberger 42086aa5ef [spi] update spi_slave_hs for generic device (and chimu_spi) 2015-03-17 11:59:33 +01:00
Felix Ruess 9687542696 [firmwares] fix setup and test_progs 2015-03-17 11:59:22 +01:00
Felix Ruess 51527bc0e4 [modules] fix mavlink and ahrs_chimu_uart 2015-03-17 11:52:04 +01:00
Gautier Hattenberger c3ef7aefed update demo files and setup makefiles 2015-03-17 11:32:29 +01:00
Gautier Hattenberger fc62b2e54e [fix] ahrs chimu format 2015-03-17 11:25:44 +01:00
Gautier Hattenberger 20b371aee7 [sensors] update airspeed_otf to generic device 2015-03-17 10:53:12 +01:00
Gautier Hattenberger 30c347633b forgot UM6 makefile 2015-03-17 10:37:18 +01:00
Felix Ruess 6d304f1d76 [modules] fix extra_dl 2015-03-17 10:19:48 +01:00
Felix Ruess de414142d4 [fixedwing] fix intermcu_uart 2015-03-17 10:00:05 +01:00