rotorcraft-genom3 3.5 released

Added by Anthony Mallet about 2 months ago


  • Log motors consumption and throttle in log files
  • More verbose in case of error in servo()
  • Don't stop motors in servo() in case of low sensor rate, as this will most
    likely crash while the issue itself might not be that much fatal (e.g. in
    case of low motor data rate). Note that start() will still fail to start
    until the correct sensor rate is achieved.
  • Implement set_pid() service for the Chimera flight controller.



rotorcraft-genom3 3.4 released

Added by Anthony Mallet over 1 year ago


  • Add pconnect() service to connect to multiple hardware devices.
  • Update the e_rate exception to report the name of the low-rate sensor.
  • Fix set_zero* functions not resetting the gyroscope bias.
  • Fix possible deadlock when stopping component while the connection is broken.
  • Receive and log IMU temperature if present.
  • Log battery level.
  • Log raw IMU and magnetometer measurements in addition to filtered ones, so that the filtering performance can be assessed.
  • Log IMU filter settings, IMU calibration and sensor rates at the beginning of the log file and as soon as they are updated, so that the log file analysis gives all the important configuration details.
  • Log only new data samples and use '-' for unchanged data. Missing data (i.e. not updated since last log line) is replaced by '-' (ASCII 0x2d). This provides better feedback on the sample rates of the sensors and time of reception. This is compatible with "set datafile missing '-'" in gnuplot. An incompatible change is that column headers are in a different order than before. The column labels have been kept identical though, so log parsing scripts using the labels instead of the column number will continue to work as before.
  • Collect temperature during calibration and record the average. The calibration has a new 'temperature' parameter. It is unused at the moment (so it can be set to anything when loading calibration data from older versions). It gives an indication at which temperature the calibration was done so that it can be redone if necessary.



rotorcraft-genom3 3.3 released

Added by Anthony Mallet over 2 years ago


  • Don't fail servo() when motors are starting (#336)
  • Fix connection with 0 (unchanged) baudrate, especially useful for pure USB connections.
  • Log calibration data when requested even if calibration fails
  • Avoid numerical unstability during sample acquisition for calibration (#339)
  • Add support for the teensy board running teensyshot with tk3 comm
  • Add PID tuning set_pid() service (only for Teensy boards)



rotorcraft-genom3 3.2 released

Added by Anthony Mallet about 3 years ago


  • Update IMU resolution on chimera devices (requires chimera-1.1)
  • Add a duration parameter to set_zero
  • Add set_zero_velocity to update gyroscopes biases only
  • Add get_sensor_average to compute IMU and magnetometer average over a period
  • Add optional log file to IMU calibration procedure for visual inspection
  • Don't calibrate magnetometer if it is disabled by set_sensor_rate
  • Add set_calibration_param to tune the sensitivity of motion detection
  • Improve convergence of magnetometer calibration



rotorcraft-genom3 3.1 released

Added by Anthony Mallet over 3 years ago


  • Add calibrate_mag() service to calibrate magnetometers only.
  • servo() service interrupts itself (#271).
  • Improve magnetometers calibration by using a true sphere fitting algorithm as for the accelerometer (and fix a bug in sample acquisition).
  • Warn if input is scaled down because of sensor rate.
  • Log calibration matrices in log file, as a comment.



rotorcraft-genom3 3.0 released

Added by Anthony Mallet over 4 years ago


  • Add support for tk3-paparazzi firmware.
  • Add 'mag' port, exporting magnetometer data (if present, only on paparazzi).
  • Update set_sensor_rate() to accept a magnetomer streaming rate.
  • Extend IMU calibration with a simple magnetomer calibration procedure (if present).
  • Replace obsolete IMU band filter to reject vibrations by a new 1st order low pass filter, with independent settings for accelerometer, gyroscopes and magnetometers.
  • Check sensor rate in the start() service and wait until it reaches 80% of required rate.
  • Gracefully slow down motors when sensor rates drops below 80% of the requested rate.
  • Drop optinal second tty parameter in the connect() service (never been used).
  • Support baud rate 0 in connect() for native USB ttys without baud rates.
  • Support rate 0 in set_sensor_rates().



mikrokopter-genom3 renamed to rotorcraft-genom3

Added by Anthony Mallet almost 5 years ago

This component will control newer paparazzi-based hardware, so the name 'mikrokopter' would be a misnomer. rotorcraft-genom3 is just a rename of mikrokopter-genom3, so it is fully compatible.

The old project mikrokopter-genom3 has been closed and marked as read-only. The git repository is still accessible read-only, but it will receive no updates.

You are encouraged to switch your clones to the new remote using for instance:

git remote set-url origin ssh://


    Also available in: Atom