Commit Graph

386 Commits

Author SHA1 Message Date
tommises 4fa2c54485 Mocap timestamp cleanup (#5021) 2016-07-11 12:46:29 +02:00
Lorenz Meier 07384d6b5a Vision msg: Cleanup timestamp 2016-07-10 12:42:56 +02:00
Beat Küng 9c73eae941 sensor_combined: replace accel & gyro integral with value, use float for dt
Reason: the value is easier to read & handle (for example plotting). In
most places the value is needed, not the integral.

Note that this breaks the replay format for sdlog2 replay
2016-07-07 11:35:50 +02:00
Beat Küng c5ea4b43be sensor_combined.msg: make timestamps relative
This is needed for the new logger & saves some space as well.
2016-07-07 11:35:50 +02:00
Beat Küng c66f26245c sensor_combined.msg: use uint32 for integral_dt
There is no reason to make this 64 bit. The same should be done in
the sensor raw messages, together with further cleanup.
2016-07-07 11:35:50 +02:00
Beat Küng d846ad5dac sensors: move voting into sensors module
- voting is now at a central place instead of duplicated within the
  estimators
  -> this also means that estimators that did not do voting so far,
     now have voting, like ekf2
- estimators requiring more than that can still subscribe to the raw
  sensors
- allows sensors_combined to be 3 times smaller
  - reduces logger, memcpy (cache) & RAM overhead
- all modules requiring only 1 or 2 sensor values now automatically get
  the voted result
- this also adds voting to baro
2016-07-07 11:35:50 +02:00
Beat Küng b4ecc5a8d9 sensor_combined cleanup: remove many unneeded fields
Decreases the message size from 780 to 280 bytes.
In particular, all modules using sensor_combined must use the integral now.
The sensor value can easily be reconstructed by dividing with dt.

Voters now need to be moved into sensors module, because error count and
priority is removed from the topic.

Any module that requires additional data from a sensor can subscribe to
the raw sensor topics.

At two places, values are set to zero instead of subscribing to the raw
sensors (with the assumption that no one reads them):
- mavlink mavlink_highres_imu_t::abs_pressure
- sdlog2: sensor temperatures
2016-07-07 11:35:50 +02:00
Beat Küng c407123a72 cleanup sensor_combined: remove adc & differential_pressure fields
These are not really used. differential_pressure is just copied from the
topic with the same name.

for sdlog2 we assume no one needs the diff pressure fields and set it to 0.
We plan to switch to the new logger soon anyway.
2016-07-07 11:35:50 +02:00
Beat Küng 09ecc84cc7 gps file dump: re-implement with an uORB topic & write to the log file (#4987)
Drawbacks of the previous method: when writing to the SD card, there are
high delays in the write() call of several 100ms, every now and then. The
frequency and length of these events depend on:
- SD card
- used logger bandwidth
- bandwidth of gps data (RTCM)
Since the whole gps thread was blocked during this period, it lead to
gps timeouts and lost module.

What we do now is: publish an orb topic with queuing. This makes it async
and the logger takes care of buffering. This means it's best to:
- use high logger rate
- use large logger buffer
- reduce logger bandwith by disabling unused topics
2016-07-06 09:32:37 +02:00
Beat Küng f8e9a19889 gps_position: convert uint64 timestamp_time -> int32 timestamp_time_relative
We need to make this timestamp relative to the main timestamp. Necessary
for replay, and saves some space.
2016-06-24 00:22:01 +02:00
Beat Küng e2a7145379 vehicle_gps_position: remove timestamp_variance & timestamp_velocity (they're not used) 2016-06-24 00:22:01 +02:00
Beat Küng 89f5bd27e8 vehicle_gps_position: use timestamp field instead of timestamp_position
timestamp was unused. This allows to remove timestamp_position.
2016-06-24 00:22:01 +02:00
Lorenz Meier 34c0d3e99a Add TAP to vendor list 2016-06-24 00:08:24 +02:00
sander 37531c018a Implement MAV_CMD_DO_CHANGE_SPEED throttle 2016-06-23 09:08:35 +02:00
Roman 7f8c183d99 added airspeed mode enum to control state topic
Signed-off-by: Roman <bapstr@ethz.ch>
2016-06-23 09:08:35 +02:00
CarlOlsson 9c170f7fae added parameter which defines threshold for airspeed given to the filter
remove unnecessary replay fields
2016-06-08 17:11:10 +02:00
Beat Küng 25cff52019 RTCM: use MAVLINK_MSG_ID_GPS_RTCM_DATA mavlink message (supports fragmentation) 2016-06-02 09:26:03 +02:00
Beat Küng 069dd01cb0 logger: subscribe to mavlink_log messages and write them to the log 2016-06-02 07:32:49 +02:00
Paul Riseborough fc4d5ddb67 msg: add error estimates to vision pose and position data 2016-05-28 14:54:14 +02:00
Paul Riseborough e5431543d8 msg: add external vision data for ekf2 replay 2016-05-28 14:54:14 +02:00
Beat Küng 623fe7ca2c logger + uorb msg template: rm msg name from o_fields to save space
Instead we use o_name to get the topic name. Now the topic names are not
upper case anymore in the log format. This makes it more consistent, eg.
if used as a nested topic
2016-05-22 13:31:35 +02:00
Beat Küng 5cf8081a98 uorb template: add timestamp to the format string
We explicitly include the timestamp. This makes it possible to change it's
type later on.
This breaks the current ULog logging format.
2016-05-22 13:31:35 +02:00
Beat Küng fd0f52bebd orb macros: cleanup some unused code (#4576) 2016-05-19 11:08:37 +02:00
Beat Küng 7f65e01d07 cmake: avoid GLOB for *.msg files and use an explicit .msg file enumeration
This makes sure that adding & removing of .msg files is handled properly
by the build system.
2016-05-17 09:08:13 +02:00
Jimmy Johnson bb79d14cb1 adding lpf based on confidence of linear movement 2016-05-16 15:12:50 -07:00
Lorenz Meier 7633797190 Battery status: Add valid flag 2016-05-15 15:37:46 +02:00
Beat Küng 197b37fc17 fix cpuload.msg: remove timestamp (cleanup after rebase) 2016-05-14 11:27:07 +02:00
Beat Küng 093eece29b orb message templates: move common code into px_generate_uorb_topic_helper.py
This also greatly speeds up the generators.
2016-05-14 11:27:07 +02:00
Beat Küng 797d0f24d6 reformat orb message templates 2016-05-14 11:27:07 +02:00
Beat Küng eabc43d78c orb structs: add padding bytes to align the structs where necessary
This is required for the logger, we just manually add the padding bytes
what would otherwise be done by the compiler. Additionally we reorder
the fields by type, so that padding is only necessary for nested types.
2016-05-14 11:27:07 +02:00
Daniel Agar 69c1ce1714 WIP logger serialization 2016-05-14 11:27:07 +02:00
Daniel Agar 768e5ab66f adc_report remove timestamp 2016-05-14 11:27:07 +02:00
Daniel Agar 9a0e962cbf uorb autogeneration 2016-05-14 11:27:07 +02:00
Daniel Agar eb29b33620 use gcc attributes to align and pack 2016-05-14 11:27:07 +02:00
Daniel Agar 76387b1693 uorb autogeneration 2016-05-14 11:27:07 +02:00
Daniel Agar eae726e345 FW add mavlink NAV_CONTROLLER_OUTPUT 2016-05-13 12:56:04 +02:00
Jonathan Challinger 535cea4e77 commander: remove load from vehicle_status message 2016-05-12 08:16:36 +02:00
Jonathan Challinger 749b598af1 load_mon: initial commit 2016-05-12 08:16:36 +02:00
Paul Riseborough 163ad19957 msg: update documentation for estimator status 2016-05-11 14:53:55 +02:00
Paul Riseborough e8c34fa30e msg: add filter internal fault message 2016-05-11 14:53:55 +02:00
sander 1a04e952f8 Inline comment addition 2016-05-10 21:34:11 +02:00
sander 9a09c5af5c Add low pass filtered current draw 2016-05-10 21:34:11 +02:00
CarlOlsson 6b5e77250f ekf2: Added airspeed to rpl logging 2016-05-10 21:32:55 +02:00
Lorenz Meier ca3b1478ce Add ADC report
Enable building of ADC topic
2016-05-01 15:48:43 +02:00
Lorenz Meier b5b4769d1f Enable RSSI sampling on Pixracer 2016-05-01 14:23:25 +02:00
Beat Küng 5cf351f585 orb: add gps_inject_data message & publish from mavlink 2016-04-25 09:48:24 +02:00
Benoit Landry ce810542e2 simple NED acceleration control interface 2016-04-22 10:31:52 +02:00
Paul Riseborough ba5d608cad msg: Add control mode data to estimator status 2016-04-20 21:47:29 +02:00
tumbili 42e733b984 better comments for control state message 2016-04-19 13:25:41 +02:00
Emmanuel Roussel 35110a52f9 Added room in land_detector code for free-fall detection 2016-04-18 22:27:11 +02:00
Lorenz Meier f42f229c5f Fix length of mavlink log message 2016-04-17 20:03:32 +02:00
Lorenz Meier 1da25db617 Add ADSB transponder report 2016-04-17 17:56:39 +02:00
Julian Oes 11c2b6784d msg: fix comment in commander_state 2016-04-11 18:01:49 +02:00
Julian Oes 9512a71cf8 commander: cleanup the status messages 2016-04-11 18:01:48 +02:00
Julian Oes 5ca5af5fcd commander: take main_state out of vehicle_status
This state is only commander internal. Therefore it doesn't need to be
in vehicle_status. Instead it is now in the commander_state message.
2016-04-11 18:01:48 +02:00
Julian Oes 1ad0ee0fae mc_att_control: don't use main state for RATTITUDE
Instead of the state use the boolean flags.
2016-04-11 18:01:48 +02:00
Julian Oes 70cff975cc commander: move some flags out of vehicle_status
All the removed flags were not used anywhere else than inside the
commander.
2016-04-11 18:01:48 +02:00
Julian Oes 23df992cc5 commander: moved offboard bools into status_flags
The offboard status bools were not used anywhere but in the commander.
Therefore they are now moved to the local status_flags topic.
2016-04-11 18:01:48 +02:00
Julian Oes 1f44fb1efd commander: internalize system status bools
Most condition bools in the commander are not used anywhere but in the
commander. It therefore makes sense to move them to a different internal
struct and remove them from the vehicle_status message.

Also, the land_detected should be used by all the modules instead of
getting it through the commander and system_status.
2016-04-11 18:01:47 +02:00
Julian Oes 141b984d5b commander: take previous main state out of status 2016-04-11 18:01:47 +02:00
Julian Oes 181eb49da8 commander: remove calibration_enabled
This flag is not used anywhere, it therefore doesn't need to be in
vehicle_status.
2016-04-11 18:01:47 +02:00
Julian Oes fe85841a1d commander: remove counter
The counter variable in system status wasn't used anywhere.
2016-04-11 18:01:47 +02:00
Julian Oes 32c3135788 commander: move battery calculations to systemlib
The commander used to consume the battery_status topic and write the
contents after some calculations into the system state. Instead, the
calculations now happen in library calls in systemlib/battery.

This moves the battery fields out of the vehicle_status message into the
battery_status topic.

This brought quite some changes in all modules that need battery
information. The current state is compiling but untested.
2016-04-11 18:01:47 +02:00
Julian Oes 699b08c9fd commander: move battery warning
The battery warning is not consumed anywhere, therefore scrap it from
the vehicle_status message.
2016-04-11 18:01:47 +02:00
Julian Oes 8e9e9f8a8b vehicle_status: move vtol_vehicle_status enum
It makes more sense to have the VTOL status in its own message.
2016-04-11 18:01:47 +02:00
Julian Oes 74072dbe74 vehicle_status.msg: delete unused mavlink stuff
The MAV_TYPE enum was not in sync with the mavlink specs anymore. It
makes therefore sense to remove the duplication and include the correct
mavlink header file where it is needed.
Also, error counts which are not populated, can be scrapped.
2016-04-11 18:01:47 +02:00
Julian Oes 5f3a23a253 commander: remove circuit breakers from status msg
Since the circuit breaker bools are not actually used anywhere else than
in the commander, it is safe to remove them and replace them with local
bools.
2016-04-11 18:01:47 +02:00
sander a713fd4197 Implemented VTOL_TAKEOFF and VTOL_LAND commands 2016-04-02 21:29:25 +01:00
CarlOlsson c821f41631 added msg 2016-03-30 17:33:37 +02:00
Jimmy Johnson 26cb645ee0 follow me working 2016-03-27 12:10:57 +02:00
Jimmy Johnson 01e971b342 Tests 2016-03-27 12:10:57 +02:00
Jimmy Johnson 0797c7fc21 velocity smoothing 2016-03-27 12:10:57 +02:00
Jimmy Johnson 69351675b6 follow target mode working 2016-03-27 12:10:57 +02:00
Jimmy Johnson bbc8eaefd7 Adding new follow target navigation and main states. New follow target
topic added. New follow fsm added to the navigator
2016-03-27 12:10:57 +02:00
Julian Oes 2d4179a35b mavlink: refactor mavlink_log
This moves the mavlink_log interface from ioctl to uORB and enables the
mavlink statusmessage output for Snapdragon. The API changes will lead
to changes in all modules that are using it.
2016-03-24 13:09:16 +01:00
Julian Oes 1b5210ca13 sensors/calibration: use params in DF wrappers
Instead of using a uORB topic with the calibration values published in
sensors and consumed by the DriverFramework driver wrappers, let's just
use the the params directly. This is quite a rough change and needs
definitely some cleanup and refactoring.
2016-03-24 13:08:31 +01:00
Julian Oes f24b2a701f sensors: first part of a calibration refactor
This adds uORB messages to publish calibration data by sensors which is
then consumed by the sensors. Currently this is only used on Snapdragon
and guarded by QURT ifdefs.
2016-03-24 13:08:30 +01:00
Andreas Antener 6782bdaf69 prevent alternate flight control group (1) throttle from being active when safety is disabled 2016-03-20 11:19:23 +01:00
Nicolas 6ac641956a added posix and qurt apps to enable remote execution of shell commands on qurt side from posix shell
commands are sent via muOrb to qurt, where they are executed and printed (i.e. visibile on mini-dm)
2016-03-18 17:23:51 +01:00
Lorenz Meier cc5afdd6b5 Add field for desired cruising speed 2016-03-13 18:07:47 +01:00
Paul Riseborough c0404e8460 msg: add missing GPS status data to ekf2 replay 2016-03-13 17:47:56 +01:00
Paul Riseborough 686b000503 msg: Add optical flow and range finder data to ekf2 replay 2016-03-13 17:47:56 +01:00
Paul Riseborough c9954c8ddc msg: Add ekf2 height above ground fusion data 2016-03-13 17:47:56 +01:00
bugobliterator 01ee608117 sdlog: setup flow innovation logging 2016-03-13 17:47:56 +01:00
Lorenz Meier f472ac577a Cleanup for manual control messages 2016-03-13 15:39:12 +01:00
Lorenz Meier 4e36973cee Manual control: Prep single channel flight mode selection 2016-03-05 20:41:02 +01:00
Lorenz Meier c161248e71 Fix reposition vehicle command 2016-02-27 11:55:20 +01:00
tumbili e0a489a749 added ekf2 replay message 2016-02-27 11:51:05 +01:00
Lorenz Meier e9d778fd24 Vehicle command: Add reposition 2016-02-27 11:22:57 +01:00
Lorenz Meier 159da5442e Mag msg: Remove unused field 2016-02-26 09:24:00 +01:00
Lorenz Meier 29d417beb7 Messages: Add vibration levels and onboard / offboard sensors 2016-02-25 15:57:37 +01:00
Lorenz Meier 9b5c9b0c8a Add HDOP / VDOP fields 2016-02-25 13:45:34 +01:00
Angus Peart 6ac26c680d batt_smbus: read button status from the smart battery
This is a cherry-pick of commit 8bd17a4b0cd9c1432cb57a9a80a215692f532370
in 3drobotics/PX4Firmware-solo

Conflicts:
	src/drivers/batt_smbus/batt_smbus.cpp
	src/drivers/drv_irlock.h
	src/lib/ecl
2016-02-18 21:47:09 +01:00
Lorenz Meier 3f9fc625f9 Airspeed: Add confidence estimate 2016-02-18 18:48:50 +01:00
Andreas Antener eb5b8a32ee transition alignment will force heading now and go to RTL if it cannot reach it in time, handle mission failure correctly, reset after mission update, issue message with actual problem 2016-02-15 23:29:38 +01:00
Roman be0f680863 orb topic messages:
-added flag to enable weathervane yaw control for vtol
-added comment to keep virtual topics and original topic identical
2016-02-15 09:48:37 +01:00
sander d5eae460c0 VTOL transition failsafe RTL 2016-02-10 16:30:57 +01:00
Andreas Antener e60cd46ad0 removed duplicate and unused flag vtol_in_transition 2016-02-08 11:09:12 +01:00
Paul Riseborough bfd182d12e msg: Add GPS check status to estimator_status uORB topic 2016-01-31 22:12:11 +01:00
Roman 67eed88767 added message for ekf2 innovations message 2016-01-22 14:24:36 +01:00
Lorenz Meier 85c49ff642 Commander: Do not save params on already saved param update 2016-01-22 11:33:40 +01:00
Mark Whitehorn 8cb472af31 add RC kill switch 2016-01-18 11:36:11 +01:00
Lorenz Meier c0bc721778 Add missing define for DSM 2016-01-14 18:48:42 +01:00
Lorenz Meier 5bd4495a78 Added input_rc SUMD defines 2016-01-14 17:55:55 +01:00
Lorenz Meier c7767dfe7e RC: Add constants for FMU input 2016-01-14 17:55:55 +01:00
Stefan 9197b85cfe Update rc_parameter_map.msg
spelling mistakes
2016-01-11 08:37:43 +01:00
Stefan caf0121f95 Update manual_control_setpoint.msg
spelling mistakes
2016-01-11 08:37:43 +01:00
Stefan fb702b7c48 Update input_rc.msg
spelling mistakes
2016-01-11 08:37:43 +01:00
Lorenz Meier e1125ce9d3 Add digicam commands 2016-01-11 08:19:00 +01:00
Lorenz Meier 61ff954d26 uORB msg spec: Clarify local position yaw 2016-01-01 11:38:56 +01:00
Paul Riseborough 9264cec807 msg: Improve vehicle_gps_position documentation
Clean up formatting, improve consistency of descriptions and ensure units are defined.
2016-01-01 13:40:31 +11:00
Paul Riseborough 092b0d5dfb msg: Improve vehicle_global_position documentation
Clean up formatting, improve consistency of descriptions and ensure units are defined
2016-01-01 13:40:18 +11:00
Paul Riseborough 635d9ea760 msg: Improve vehicle_local_position documentation
Clean up formatting, improve consistency of descriptions and ensure units are defined
2016-01-01 13:39:50 +11:00
Andreas Antener 09b5bdb1ee in mc auto: do not reset the position sp while near the waypoint, should make switching to manual pos control smoother 2015-12-28 15:23:20 +01:00
Andreas Antener fbf42c8949 added auto takeoff support, updated configuration for solo and generalized landing mission items 2015-12-28 15:21:50 +01:00
Andreas Antener e8e81650dc implemented command ACK 2015-12-28 15:21:50 +01:00
Roman 27e1aaeea5 control state: indicate if airspeed is not valid 2015-12-11 09:49:04 +01:00
Lorenz Meier 87340f728b RC: Better reporting 2015-12-07 11:41:00 +01:00
Lorenz Meier 4a1dd4f047 Merge pull request #3234 from UAVenture/altitude_message
WIP: Altitude message
2015-12-06 14:10:31 +01:00
Lorenz Meier f0a4979da6 Merged master into driver_framework 2015-12-01 12:34:02 +01:00
Amir c23562c9ed GPS: Add height above the ellipsoid info
Modification of the GPS message, add height above the ellipsoid info.
2015-11-27 22:28:41 +01:00
tumbili 0a0a074194 use virtual attitude setpoint
Conflicts:
	src/modules/vtol_att_control/tailsitter.cpp
	src/modules/vtol_att_control/tiltrotor.cpp
	src/modules/vtol_att_control/vtol_att_control_main.cpp
	src/modules/vtol_att_control/vtol_att_control_main.h
	src/modules/vtol_att_control/vtol_type.h
2015-11-25 13:28:22 +01:00
Roman Bapst 1f50041311 added flag indicating if vtol is doing a transition
Conflicts:
	msg/vtol_vehicle_status.msg
2015-11-25 13:28:21 +01:00
Andreas Antener f5a844d4aa added field for pressure altitude to global position 2015-11-24 14:03:54 +01:00
Lorenz Meier 7d59213a01 Add takeoff commands / flags 2015-11-20 11:14:36 +01:00
Lorenz Meier c51f414b22 Vehicle status remove unused field 2015-11-19 19:09:42 +01:00
Roman 0f03ae12d7 added field for aborted fw landings 2015-11-17 22:28:09 +01:00
tumbili 18d9c061ba added flag for applying flaps 2015-11-17 22:28:08 +01:00
tumbili 0043c40b46 added more indexing variables 2015-11-17 22:28:08 +01:00
Andreas Antener e987082292 split takeoff into 2 phases, reseting integrators when still on runway 2015-11-17 22:28:08 +01:00
Andreas Antener 234a200e60 renamed heading controller to wheel controller, added groundspeed dependency and separate parameters 2015-11-17 22:28:08 +01:00
tumbili 20ec727d9f added option for direct yaw control with rudder for fixed wing 2015-11-17 22:28:07 +01:00
Lorenz Meier 0fdc0e28c7 Messages: Add USB breaker and control state horizontal acceleration 2015-11-14 15:03:14 +01:00
Kabir Mohammed 5fcfdb759c commander : hotplug sensor support, better failure reporting 2015-11-11 15:53:44 +05:30
Youssef Demitri 170f0032fd updated to master (solve merge conflicts) 2015-11-06 12:18:31 +01:00
Lorenz Meier 2727333b3d Telem status: Add USB type 2015-11-04 18:23:09 +01:00
Roman Bapst e7ce15ccd5 Merge pull request #3063 from PX4/home_on_takeoff
Home on takeoff
2015-10-31 10:42:51 +01:00
Eddy Scott c4a82d78c8 Added commander support for rattitude mode. Still need to incorporate attitude/rate switching in multicopter control 2015-10-28 08:37:12 -04:00
Youssef Demitri 50c6d720f0 Merge branch 'master' of github.com:PX4/Firmware into control_state 2015-10-27 11:36:25 +01:00
Lorenz Meier 12bd1ecb7c Home pos: Add yaw field 2015-10-27 09:57:42 +01:00
Daniel Agar a2ba34d1ae geofence violation actions 2015-10-27 09:28:30 +01:00
Youssef Demitri 069c6a82cb Merge branch 'master' of github.com:wingtra/Firmware into control_state 2015-10-16 15:50:29 +02:00
Youssef Demitri c22c678b7d Merge branch 'master' of github.com:PX4/Firmware into control_state 2015-10-14 11:02:23 +02:00
Ben Dyer 250c912704 Added MAVLink/UAVCAN parameter bridge; implemented UAVCAN ESC enumeration 2015-10-13 21:50:23 +11:00
Lorenz Meier a3b863bdd9 UAVCAN: Receive commands from the GCS 2015-10-13 21:50:23 +11:00
Lorenz Meier 4de6012f12 Commander: Only indicate green led if home position is valid 2015-10-07 15:13:13 +02:00
Youssef Demitri d0dd0fc4d4 add control state topic 2015-09-23 16:19:14 +02:00
Lorenz Meier b067a0c094 Merge branch 'ekf_voting_priority' 2015-09-19 10:51:01 +02:00
Mark Charlebois 54bae34a2c Build fixes for qurt after rebase on PX4 master
Removed the re-definitions of the usage method in the posix/main.cpp file.
Added qurt_external_hook interface to call externally linked module.
Fixed code format to comply with PX4 style.
Added usage information to main app and handled cases for unknown arguments.
Fixed the orb_priority interface to use int32_t instead of int.
Fixes to get hil working with led changes.
Added the config_eagle_adsp.mk file and update the make files to to use new
include/lib paths

Signed-off-by: Mark Charlebois <charlebm@gmail.com>
2015-09-04 11:09:29 -07:00
Lorenz Meier 3dbc8d8205 sensors combined message: Clean up field names 2015-08-30 11:37:26 +02:00