Commit Graph

27862 Commits

Author SHA1 Message Date
Randy Mackay 1fc85e9a8c Rover: adjust skid steer motor mixing, fix rotation direction in reverse
balanced prioritisation of throttle vs steering when motors become saturated
direction of turning made consistent with normal (ie non-skid-steered) vehicles

Also includes fixes to motor mixing after peer review
2017-07-01 19:48:01 +09:00
Randy Mackay f036b1f92c Rover: pivot steering stays active until within 10deg of target heading
Previously the vehicle would pop out of pivot-steering once it was within PIVOT_TURN_ANGLE degrees of the target heading.  This meant that it would give up on the pivot steer long before it was actually pointing at the target.
2017-07-01 19:48:01 +09:00
Peter Barker b62a1394dd Tracker: indicate to gps library which bit indicates log-gps 2017-06-29 15:43:39 +01:00
Peter Barker 7b3db490be DataFlash: correct examples 2017-06-29 15:43:39 +01:00
Peter Barker 9c2a2a3d94 AP_Module: correct example 2017-06-29 15:43:39 +01:00
Peter Barker cbe9627bf5 AP_GPS: correct example 2017-06-29 15:43:38 +01:00
Peter Barker 12b4f2c4b6 AP_AHRS: correct example 2017-06-29 15:43:38 +01:00
Peter Barker 29de7b1a17 Replay: provide a log bitmask to Dataflash constructor 2017-06-29 15:43:38 +01:00
Peter Barker f8d1ac47c7 Sub: check dataflash to see if we should log backend gps messages 2017-06-29 15:43:38 +01:00
Peter Barker 1ca5f243a5 Plane: check dataflash to see if we should log backend gps messages 2017-06-29 15:43:38 +01:00
Peter Barker 37abc1b02f Copter: check dataflash to see if we should log backend gps messages 2017-06-29 15:43:38 +01:00
Peter Barker ef72381708 Tracker: check dataflash to see if we should log backend gps messages 2017-06-29 15:43:38 +01:00
Peter Barker 4646eb3b95 Rover: check dataflash to see if we should log backend gps messages 2017-06-29 15:43:38 +01:00
Peter Barker 7258cfd20b AP_GPS: check dataflash to see if we should log backend gps messages 2017-06-29 15:43:38 +01:00
Peter Barker 7cd794201e Sub: use DataFlash should_log to determine raw IMU logging 2017-06-29 15:26:27 +01:00
Peter Barker dcad79bdef Rover: use DataFlash should_log to determine raw IMU logging 2017-06-29 15:26:27 +01:00
Peter Barker 949e07c7e3 Plane: use DataFlash should_log to determine raw IMU logging 2017-06-29 15:26:27 +01:00
Peter Barker 776d691c79 Copter: use DataFlash should_log to determine raw logging 2017-06-29 15:26:27 +01:00
Peter Barker 6ae86a0b8c AP_InertialSensor: use DataFlash should_log to determine raw logging 2017-06-29 15:26:27 +01:00
Peter Barker 075c40bd60 Tracker: move should_log check of log bitmask into DataFlash 2017-06-29 15:26:27 +01:00
Peter Barker 4913fc2f2a Sub: move should_log check of log bitmask into DataFlash 2017-06-29 15:26:27 +01:00
Peter Barker 8697faa44f Rover: move should_log check of log bitmask into DataFlash 2017-06-29 15:26:27 +01:00
Peter Barker 88a7167cb9 Plane: move should_log check of log bitmask into DataFlash 2017-06-29 15:26:27 +01:00
Peter Barker cfbde937c6 Copter: move should_log check of log bitmask into DataFlash 2017-06-29 15:26:27 +01:00
Peter Barker 4dfdffde43 DataFlash: move should_log check of log bitmask into DataFlash 2017-06-29 15:26:27 +01:00
Francisco Ferreira f35f0d59dd
AP_GPS: fix SBP2 driver build warnings by using memcpy
Build gave the following warnings:

../../libraries/AP_GPS/AP_GPS_SBP2.cpp: In member function ‘void AP_GPS_SBP2::_sbp_process_message()’:
../../libraries/AP_GPS/AP_GPS_SBP2.cpp:181:78: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
             last_heartbeat = *((struct sbp_heartbeat_t*)parser_state.msg_buff);
                                                                              ^
../../libraries/AP_GPS/AP_GPS_SBP2.cpp:181:28: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
             last_heartbeat = *((struct sbp_heartbeat_t*)parser_state.msg_buff);
                            ^
../../libraries/AP_GPS/AP_GPS_SBP2.cpp:186:76: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
             last_gps_time = *((struct sbp_gps_time_t*)parser_state.msg_buff);
                                                                            ^
../../libraries/AP_GPS/AP_GPS_SBP2.cpp:186:27: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
             last_gps_time = *((struct sbp_gps_time_t*)parser_state.msg_buff);
                           ^
../../libraries/AP_GPS/AP_GPS_SBP2.cpp:190:74: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
             last_vel_ned = *((struct sbp_vel_ned_t*)parser_state.msg_buff);
                                                                          ^
../../libraries/AP_GPS/AP_GPS_SBP2.cpp:190:26: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
             last_vel_ned = *((struct sbp_vel_ned_t*)parser_state.msg_buff);
                          ^
../../libraries/AP_GPS/AP_GPS_SBP2.cpp:194:74: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
             last_pos_llh = *((struct sbp_pos_llh_t*)parser_state.msg_buff);
                                                                          ^
../../libraries/AP_GPS/AP_GPS_SBP2.cpp:194:26: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
             last_pos_llh = *((struct sbp_pos_llh_t*)parser_state.msg_buff);
                          ^
../../libraries/AP_GPS/AP_GPS_SBP2.cpp:198:68: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
             last_dops = *((struct sbp_dops_t*)parser_state.msg_buff);
                                                                    ^
../../libraries/AP_GPS/AP_GPS_SBP2.cpp:198:23: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
             last_dops = *((struct sbp_dops_t*)parser_state.msg_buff);
                       ^
../../libraries/AP_GPS/AP_GPS_SBP2.cpp:202:74: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
             last_event = *((struct sbp_ext_event_t*)parser_state.msg_buff);
                                                                          ^
../../libraries/AP_GPS/AP_GPS_SBP2.cpp:202:24: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
             last_event = *((struct sbp_ext_event_t*)parser_state.msg_buff);
                        ^
2017-06-29 15:18:09 +01:00
ebethon 005dbf41a7 AP_GPS: Add SBP EXT_EVENT Message to dataflash log 2017-06-29 15:18:05 +01:00
ebethon 526d5a4c44 DataFlash: Add SBP EXT_EVENT Message 2017-06-29 15:18:05 +01:00
ebethon 4779a8f1f1 AP_GPS: Rename SBR1/SBR2 to SBRH/SBRM and change format
Add (sender_id, msg_len) in SBRM message
Add index/pages in SBRH/SBRM messages
Change format to integers to avoid GCS string parsing
Decrease data size in SBRH
2017-06-29 15:14:54 +01:00
ebethon 0b5dad33f2 DataFlash: Rename SBR1/SBR2 to SBRH/SBRM and change format
Add (sender_id, msg_len) in SBRM message
Add index/pages in SBRH/SBRM messages
Change format to integers to avoid GCS string parsing
Decrease data size in SBRH
2017-06-29 15:14:54 +01:00
Randy Mackay 59503f15cb Tools: update eLAB VEK AI parameters 2017-06-29 16:14:15 +09:00
Miguel Arroyo 7cea21afa2 AP_Math: Moves rand_vec3f from SITL_State. 2017-06-29 09:22:08 +10:00
Miguel Arroyo 86b9942d51 AP_HAL_SITL: move SITL Compass to standard sensor backend model 2017-06-29 09:22:08 +10:00
Miguel Arroyo ee328c9683 AP_Compass: move SITL Compass to standard sensor backend model 2017-06-29 09:22:08 +10:00
khancyr 71bb0b24ed Autotest: remove SKID_STEER_OUT from default param 2017-06-28 18:53:51 +01:00
Randy Mackay bee666cd7a Tools: update eLAB VEK rover param file 2017-06-28 15:40:21 +09:00
Randy Mackay 351b37fc31 Rover: only report system status after init has completed
This reduces errors reported to the GCS during startup
2017-06-28 11:32:01 +09:00
murata 0a57177cee Tools: eLab LAB445 parameter file 2017-06-28 10:26:25 +09:00
Georgii Staroselskii 0203b4c1b1 AP_Notify: RCOutputRGBLed: remove cork()
cork()/push() will be called in the vehicle code.

The issue that led to this fix was as follows:
- on a Linux board (Navio 2) usage of this class didn't yield any PWM on
  the expected outputs on Rover (Copter and Plane worked as expected)

After dicsussion at #6339 rover code was changed (541538f) to use make
proper use of SRV_Channels API.

This fix is also the consequence of the discussion. TL;DR: the output is
only done when commanded by the vehicle.
2017-06-27 11:46:41 -07:00
Georgii Staroselskii eed08fb8cd Rover: cork and push servo outputs
SRV_Channels API makes it easy to sync all PWM channels at once. This is
the support needed for it to work properly on Rovers.
2017-06-27 11:46:41 -07:00
Peter Barker 34e611be59 Tools: autotest: wait for plane to disarm before downloading logs 2017-06-27 03:10:43 +01:00
Peter Barker 05ea121d0c Tools: autotest: disarm rover before downloading logs 2017-06-27 03:10:43 +01:00
Peter Barker 5b70b688cb Plane: handle knowledge of in_log_download in DataFlash 2017-06-27 03:10:43 +01:00
Peter Barker 8b57405143 Copter: handle knowledge of in_log_download in DataFlash 2017-06-27 03:10:43 +01:00
Peter Barker c5df219a02 Tracker: handle knowledge of in_log_download in DataFlash 2017-06-27 03:10:43 +01:00
Peter Barker 3a85d8ed39 Rover: handle knowledge of in_log_download in DataFlash 2017-06-27 03:10:43 +01:00
Peter Barker f3a717f3c0 Sub: handle knowledge of in_log_download in DataFlash 2017-06-27 03:10:43 +01:00
Peter Barker ad17709390 DataFlash: handle knowledge of in_log_download in DataFlash 2017-06-27 03:10:43 +01:00
Peter Barker 60ebd099bd Plane: move send-logs-via-mavlink code into DataFlash 2017-06-27 03:10:43 +01:00
Peter Barker 45a55bfa5f Copter: move send-logs-via-mavlink code into DataFlash 2017-06-27 03:10:43 +01:00