Dev Call Apr 02, 2018 2300 UTC

Announcements

Issues & PRs

clang static analysis

Updates

  • GSOC
  • ESC Telemetry

Rover

  • Rover-3.2.3-rc2 is in beta. Rover-3.2.3-rc1/rc2 ready for beta testing!
  • Once Rover-3.2.3 becomes the official release I hope we can start Rover-3.3.0 beta testing which will include lots of new features including simple avoidance, geofence, pivot turn improvements, EKF with vision-position message support for use with ROS

Copter

Attendee count (max): 19

UTC2301 - autoland mission issues

  • Doing scripted automatic landing loses what place you’re at in your mission
  • I.e. if you switch to RTL then it briefly goes to RTL but then goes back to auto at nearest DO_LAND_START
  • Multiple missions?
  • Nominate missions starting at a waypoint number?
  • QGC is monitoring the waypoint number to resume
  • Switching back to auto should resume at the waypoint you entered RTL from?
  • Should there be a “LAND” mode for Plane?
    • I.e.e RTL -> LAND
    • Switching back to AUTO would then go back to the correct auto index
    • Adding a mode which is just the same as auto but named differently is a little on the nose?
  • Current QGC methodology could break for a number of reasons
  • Should we have a mavlink command for “resume mission”?
    • There are many things that might need to be done
      • E.g. airspeed calibration
    • Solves the closely-spaced-waypoint issue
      • Can’t really be based on internal state as QGC’s thing should work across reboots
    • E.g. changed battery
  • DLF: Generating a resume mission is quite complex. It’s not just go to a waypoint.
  • [9:19 AM] (Channel) MdB: Don: I only outlined a primitive understanding of what you are doing
  • [9:19 AM] (Channel) MdB: (basically set wp then set mode, idk if that is far though)
  • Separate sequences for takeoff, landing and main mission?
    • So to resume you would execute a takeoff and then jump into main mission
  • [9:20 AM] (Channel) DLF: QGC Resume Mission genertion: https://github.com/mavlink/qgroundcontrol/blob/master/src/MissionManager/MissionManager.cc#L77
  • Upload a separate landing sequence as a “landing mission”?
    • Separate mode would be running these waypoints
  • MAV_MISSION_TYPE?
  • QGC watches WPs coming in
    • Then waits for vehicle to leave auto
    • Doesn’t necessarily use this as the one to go back to
    • Rebuilds mission
      • QGC has complex semantics
      • E.g. backs up to survey transect and rebuilds camera triggering
      • https://github.com/mavlink/qgroundcontrol/blob/master/src/MissionManager/MissionManager.cc#L77
      • Works well in practise
      • Except for autoland != 0 with ardupilot
      • Copter works
      • Does this on the ground
      • GCS doesn’t have a full idea of what transitions have happened
        • E.g. missing mode changes
        • E.g. missing waypoints
      • Don thinks the vehicle should be able to handle the resume
        • But it doesn’t currently
        • So he does it in QGC
        • [9:37 AM] (Channel) Luis_Vale: I frequently use QGC for that type of missions and the continue is a life saver
    • Hand-launch with an autoland
    • TWO issues
      • Resuming mission after starting DO_LAND_START sequence
      • Not reporting that we’re actually doing an RTL, not doing our actual mission
      • Use Flight substages?
        • Useful for takeoff?
          • Concern reporting mode=RTL during autoland?
      • Will GCS display trajectories and waypoints and the like?
      • MP has a different display depending on RTL vs AUTO
    • [9:46 AM] (Channel) MdB: OH!
    • [9:46 AM] (Channel) MdB: right that breaks
    • [9:46 AM] (Channel) MdB: becauser it can’t draw at nav target
    • [9:46 AM] (Channel) MdB: no, no it wont
    • [9:46 AM] (Channel) MdB: that doesn’t map
    • [9:46 AM] To Weekly devcall: Why can’t it report the nav target?!
    • [9:46 AM] (Channel) MdB: peter: it does, but everything based on mission current stops
    • [9:46 AM] To Weekly devcall: Why can’t we report a mission current? :slight_smile:
    • [9:47 AM] (Channel) MdB: because RTL’s aren’t in the list :stuck_out_tongue:
    • Race condition
      • Updated heartbeat with changed mode after sending a mission current
      • Wait for second heartbeat
        • So mission current must be bracketed
    • Mavlink2 extension for mission current to give the flight mode?
      • [9:52 AM] (Channel) MdB: Can I get stages on MISSION_CURRENT if we extend it?
    • Do we just change our mode reporting rather than actually change modes?
    • Switch to rtl then back to auto?
      • Switch back to previous waypoint
    • Wp set in modes other than rtl are ordinarily ignored
      • Should we continue to ignore them?!
      • Change to auto then do you wp set?
      • Do-jump may put you back into auto
        • Linear landing sequences would report RTL
  • NE: Would be kind of cool to have a AUTO_RESTART parameter that looked for the previous waypoint (in auto mode) rather than the next
  • Summary:
    • Report RTL during RTL autolands
    • Revert to reporting auto after various bits and pieces happen
    • Not sure what goes into Dataflash
    • Not sure about loiter stuff
  • [10:00 AM] (Channel) TomPittenger: I’ve tuned out a little, can someone update the issue with an update? I’ll remove the devcall label https://github.com/ArduPilot/ardupilot/issues/8060

UTC2401 - autoland mission issues

  • HIL GPS
  • Scaling altitude wrong
  • https://github.com/ArduPilot/ardupilot/issues/7396
  • HIL_GPS should be marked as deprecated
  • Change not going to affect any real vehicles
    • Actually, ROS on real vehicles uses this
    • Change the XML?
    • Need to see what PX4 is doing
    • People are probably working around
    • ROS in cm
    • We treat it as if is in mm
  • MdB will fix
    • And put stuff in the release notes

UTC2405 - https://github.com/ArduPilot/ardupilot/pull/7970

  • Specify compass devids
  • Fails travis because SITL sets driver id to zero
  • SITL can be changed to not use zero
  • Set ids from GCS after boot
  • What is this PR trying to accomplish?!
    • Force check to ensure compasses are present
    • Fetch compass ids and check if they’re not right?
      • Can’t stop them arming
  • Protecting against what?!
    • Users redoing compass calibrations when they’ve got the wrong compasses?
    • External compasses that don’t come up?
      • Maybe have a minimum-number-of-compasses-available required for arming?
        • [10:11 AM] (Channel) MdB: (would be useful to me, but I’d rather not be specifying ID’s in advance, min count is much more straightforward)
          • Falling through to other compasses would cause problems here!
  • Use offboard-auth instead?

UTC2415 - more flight modes

  • https://github.com/ArduPilot/ardupilot/issues/8031
  • Weekly devcall: I was thinking we could have a paraemeter which specified the number of flight modes required…
  • [10:16 AM] To Weekly devcall: Then just divide more finely :slight_smile:
  • Tridge thinks we have a separate flight-mode-channel-bank switch
    • If it is non-zero then we use a separate bank
    • Vtol switches on one bank, fixed wing on another?
  • [10:16 AM] (Channel) MdB: (although I’d be happy with fewer momdes actually)
  • [10:16 AM] (Channel) MdB: (I’m always trying to keep my unused modes mapped reasonably incase I get a bad packet)
  • [10:18 AM] (Channel) Buzz: maybe you could use a three position switch as “up” “centre” and “down” to cycle through an arbitrary number of flightmodes that way.
  • [10:18 AM] (Channel) LV: so basically killing another option channel
  • [10:18 AM] (Channel) Buzz: ( that would work great if your TX has visual/audible feedback for the ‘mode’ you are currently in. )
  • [10:19 AM] (Channel) MdB: FLTMODE_CH should be done away with…
  • Why not use one channel?
  • Lots of documentation already out there
  • Dividing range equally problem?
    • Would have to expose flightmodes 1 to 12 all the time as parameters
    • How finely do you allow division?
    • Parameters than change number of parameters - you still need to have those parameters
    • Reprogramming would be nasty
  • Luis: every channel is important!
    • Full control of gimbal
  • Use a mask?
  • Aux switches can set modes on Copter
  • More advanced GCS/transmitter things are coming
  • We’ll come back to this topic - discuss?
  • MdB: I want fewer modes as an option just to point it out :stuck_out_tongue:

UTC2431 - clang++

  • Static analysis!
  • Works for everyone!
  • Doesn’t play well with waf
    • Best use case for make
  • Why not with waf?
    • Doesn’t pick the cxx options up appropriately
    • Somewhere we’re not taking the system cxx flags
  • Use scan-build printenv to see variables changing

UTC2437 - GSoC

  • 58 proposals are final!
  • Several not-of-high-quality
  • Need to work out max/min number of slots
  • April 17th to make decision
  • Have a meeting after evaluating projects
    • To determine number of slots
    • And look at evaluations
  • Last year we had a spreadsheet we filled in
    • We have a similar spreadsheet

UTC2441 - d-shot

  • Now logging lots of telemetry
  • Join ChibiOS gitter channel to help out!
  • Mavlink message to report to GCS?
    • Currently only to GCS
  • Lots of information
    • 8 + 1 motors
    • Each is 5 fields of information
    • Send subset?
    • Separate messages for each ESC?
    • Or rpm1,rpm2,rpm3,rpm4
      • Waste of space
    • Instance numbers instead?
      • esc.instance
      • Esc.voltage
        • Only MAVProxy would come close to graphing this
        • [10:46 AM] (Channel) FF: https://github.com/ArduPilot/ardupilot/pull/7831 same issue regarding DF log with UAVCAN ESC
        • Syncing issues with multiple issues
          • Timestamp it
        • Much discussion about how best to transmit the messages
        • May have the ability to replace a battery monitor

UTC 2450 Rover

  • Rover-3.2.3-rc2 is in beta. Rover-3.2.3-rc1/rc2 ready for beta testing!
  • Once Rover-3.2.3 becomes the official release Randy hopes we can start Rover-3.3.0 beta testing which will include lots of new features including simple avoidance, geofence, pivot turn improvements, EKF with vision-position message support for use with ROS
    Copter

UTC 2455 Copter

Final Comments

  • Discussions about how to align Plane 3.9 release with the copter and rover
  • Partners’ meeting is tomorrow
  • Craig not available April 30 & May 7 dev meetings