Dev Call June 4, 2018 2300 UTC

Issues & Pull Requests

Contribution of the Month


  • Update


  • ROS + ArduPilot for non GPS Navigation


  • Beta testing update


  • Beta testing update


  • Beta testing update

Attendee count (max): 24

UTC2300 - pre-meeting

  • Failed builds on travis
  • Tagging may not reach everyone
  • This will ensure proper distribution
  • FF: I’m in favour, not sure just GCS is correct when we talk about OSDs all the time
  • MdB is in favour
  • Considered creating a “gcs-team” tag in GitHub to do it
    • Not discoverable, and not actionable by individuals who want to be on “the list”
  • List created!

UTC2309 - run parameter generation on travis

UTC2310 - remove sysid software type parmaeter

  • Legacy parameter
  • Meant to tell what vehicle was connected
  • But we have a proper message now-adays
  • No GCS MdB has seen uses it
  • Tagged this just-in-case some GCS uses it
  • Not used for formatting storage
    • That’s format version
  • We don’t use a mav_type in dataflash logs
  • Amilcar’s concerns?
    • We think he meant noting what the old values were
  • Rebased and merged!

UTC2310 - clean-up stuff

UTC2326 - only send healthy airspeed reports

UTC2327 -

  • Most changes in autotest
  • No notes from night-ghost on how this will affect MinimOSD
    • Copter’s behaviour is changing
  • No GCS seems to use it
  • Global_position_int.relative_alt for those that need it!
  • Don uses gps alt
  • ALTITUDE message is odd
    • In particular altitude_monotonic
      • We could add support for it
    • “Not a terribly sane one” - MdB
  • Merged!

UTC2338 -

  • Add redundancy; muting outputs
  • Tom thinks it should be able to go straight in?!
  • Tom’s in Finland
    • Daylight at 1am
  • Memcpy looks suspect
  • Std:vector!
    • Not thread-safe
    • Memory allocation failures not handled
      • And memory allocations in general?!
    • Exceptions are off
    • size() method on a vector returns current size
  • Is this a good feature?
    • Doesn’t work too well with uavcan nature of dynamically-allocated node IDs
      • We don’t support them ATM, but we should
        • Soon
    • Need to think about how to have redundancy that is really safe
      • Something that works when flying
        • Should really be redundant
    • This isn’t true redundancy in that the sensor data is coming from where?
    • There’s a timeout of 200ms
    • Uncoordinated
      • Arm simultaneously?
    • Philip’s working on a manual switchover
    • This is an interesting feature
      • Needs a different name
        • Redundancy implies more capabilities than this really has
        • More of a fallback
        • This could save you in some situations

UTC2338 -

  • FF found a behavioural change
  • Very last commit addresses the problem
    • Removes manual polling of flap input channel
    • Should just ask the HAL what the values are
      • Legacy API changeover issue
  • Pushed in!

UTC2350 -

  • MAVLink over CAN virtual serial port
  • Still have questions over it losing a lot of packets
  • Only tridge has looked at it
    • Someone else needs to!
  • Initialisation functions might starve GCS of input
  • Do we put baud rates in now?
    • We’d be sending the baud rate an awful lot (4 bytes/frame)
    • May want other things as well
      • Parity, stop bits, inverted
      • UART config packet instead?
        • An ack or get_settings also required
      • Don’t have them on the mavlink equivalent
  • Needs a port number so you can have multiple remote ports
  • One port per port
    • One uart port per CAN port
  • Parameter that gives number of CAN ports?
  • Need to be able to set the protocol on the serial port
  • There’s a discussion on adding a channel id
    • Broadcast.channelid
    • 16 remote uarts!
  • We can move to pure-CAN removing the utility of these serial ports
  • Main problem we have ATM is the serial_manager initialisations
  • Close, but not there yet

UTC0006 -

  • TECS input update
  • Tested in SITL?
    • Needs a lot more careful testing
      • And with Valgrind
    • Tridge has added a note to the PR

UTC0007 - storm32 mounts

  • 102 messages!
  • Adds new protocol
  • FF has reviewed, corrections have been made, FF to re-review
  • Bunch of commented-out-code
  • Extra backends can be added with a lower quality threshold
  • Millis64 and substracting?
  • Why isn’t he using RC_Channels?
  • Multiple inheritance?
  • Is_failsafe seems to be dead code

UTC0016 - we got a lot of things in today!

UTC0017 - contribution of the month hasn’t been done for some time!

  • Tom’s disqualified as he’s part of the dev team
  • Sh83 and mirkix have been doing great stuff on the ChibiOS port
    • Mirko is part of the dev team
  • Tridge nominates sh83
  • More nominations from mailing list, hopefully
  • iforce2d?

UTC0022 - GSoC update

  • Randy
    • His guy had to drop out
    • Will get money to Ayush today
  • Tridge
    • Ebin is doing balance bot
      • Lots of problems shipping him hardware
        • Indian customs problems
          • “Customs duty” - mixup between rupees vs yen?
        • Damaged but easily repaired
      • Good meeting mid-week with Randy and Peter which sorted a lot of stuff
      • What’s the purpose?
        • Great for robotics experiments
        • Remote cameras
      • Need to make it easy to replace the balancing controller if we can
        • So people can sub-in their own
      • Jani would like to do a big balance bot
      • motor-cycle -style balancing isn’t in-scope for this
        • But could be done as another frame for Rover
  • Peter
    • Arnav, good progress

UTC0029 - Randy and ROS

  • With Rover 3.4 we’ve improved ROS support a lot
    • Paul’s external position estimates, timing fixes
    • Set-position-typemask more lenient
    • Nvidia guy has had good results
      • Using ROS
    • Need ROS on Aion robot too
    • EKF2-only
    • Whereas the vision-position-delta stuff is EKF3-only
    • Rave reviews
    • Little racing car going around a track
      • Confusion between inputs and outputs
        • It’s all on the Wiki
        • QGC method on calibration would probably help
          • Asks you to move your roll stick to the right
            • Etc etc
          • Then works out reversals that way
            • Doesn’t help with servo reversals…
              • Particularly rudder
          • Randy will raise issue
    • RM:
    • If you go fast then you take wider corners
      • But Rovers can slow down (Plane’s have trouble with this…)
    • WP_OVERSHOOT parameter to make a lane between origin and destination
      • Take maximum lateral acceleration and determine if you will stay within lane
      • Will slow vehicle down
        • Set waypoint speed as large as you want
        • As it approaches waypoint it will slow down
        • Maybe right down
      • L1 controller is still used
      • This new feature doesn’t really communicate with the L1 controller
        • Quite separate
      • The throttle control knows the maximum lateral acceleration and can work with that
      • L1 controller works well with biases
        • E.g. Wind
        • E.g. Steering badness
        • Yaw vs ground-course
        • Need to make sure that doesn’t get screwed up
        • L1 doesn’t actually take wind as an input
          • Yet still perfectly accounts for it, which is kind of cool

UTC0041 - Randy and Copter

  • Still planning on putting out RC2 quite soon
    • Almost ready to go
    • Rebased on master

UTC0042 - Plane update

  • Tridge has been deep in ChibiOS
  • Bit of log analysis

UTC0029 - ChibiOS update

  • Many F7 changes!
  • F765 support is good
    • Need to solve the semaphore
  • F777 Orange - VPN problem
    • Soon!
    • Mirkix is getting hardware
  • F7 Python database is set up
  • Nice architecture for memory and cache
    • Ridiculous amounts of memory!
  • PixHawk4 booted and worked first time
  • F7 support is looking really good