Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • Users
  • Groups
Collapse
Brand Logo

ModalAI Forum

  1. ModalAI Support Forum
  2. ESCs
  3. VOXL ESC FPV 4-in-1 with Built-in Power Module (MDK-M0138) Issues

VOXL ESC FPV 4-in-1 with Built-in Power Module (MDK-M0138) Issues

Scheduled Pinned Locked Moved ESCs
16 Posts 3 Posters 382 Views 2 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • Alex KushleyevA Offline
    Alex KushleyevA Offline
    Alex Kushleyev
    ModalAI Team
    wrote last edited by Alex Kushleyev
    #5

    example of voxl-px4 driver output when running voxl-px4 -d:

    ...
    Starting VOXL ESC driver
    INFO  [qshell] Send cmd: 'voxl_esc start'
    INFO  [muorb] [uORB] Marking DeviceNode(qshell_req) as advertised in process_remote_topic
    INFO  [muorb] [qshell] qshell gotten: voxl_esc start
    INFO  [muorb] [qshell]   arg0 = 'voxl_esc'
    INFO  [muorb] [qshell]   arg1 = 'start'
    INFO  [uORB] Advertising remote topic actuator_outputs
    INFO  [muorb] [voxl_esc] Starting VOXL ESC driver
    INFO  [muorb] [voxl_esc] Params: VOXL_ESC_CONFIG: 1
    INFO  [muorb] [voxl_esc] Params: VOXL_ESC_MODE: 0
    INFO  [muorb] [voxl_esc] Params: VOXL_ESC_BAUD: 2000000
    INFO  [muorb] [voxl_esc] Params: VOXL_ESC_FUNC1: 102
    INFO  [muorb] [voxl_esc] Params: VOXL_ESC_FUNC2: 103
    INFO  [muorb] [voxl_esc] Params: VOXL_ESC_FUNC3: 101
    INFO  [muorb] [voxl_esc] Params: VOXL_ESC_FUNC4: 104
    INFO  [muorb] [voxl_esc] Params: VOXL_ESC_SDIR1: 0
    INFO  [muorb] [voxl_esc] Params: VOXL_ESC_SDIR2: 0
    INFO  [muorb] [voxl_esc] Params: VOXL_ESC_SDIR3: 0
    INFO  [muorb] [voxl_esc] Params: VOXL_ESC_SDIR4: 0
    INFO  [muorb] [voxl_esc] Params: VOXL_ESC_PWR_MIN: 0.050000
    INFO  [muorb] [voxl_esc] Params: VOXL_ESC_RPM_MIN: 2000
    INFO  [muorb] [voxl_esc] Params: VOXL_ESC_RPM_MAX: 12000
    INFO  [muorb] [voxl_esc] Params: VOXL_ESC_T_PERC: 90
    INFO  [muorb] [voxl_esc] Params: VOXL_ESC_T_DEAD: 20
    INFO  [muorb] [voxl_esc] Params: VOXL_ESC_T_EXPO: 35
    INFO  [muorb] [voxl_esc] Params: VOXL_ESC_T_MINF: 0.150000
    INFO  [muorb] [voxl_esc] Params: VOXL_ESC_T_COSP: 0.990000
    INFO  [muorb] [voxl_esc] Params: VOXL_ESC_VLOG: 1
    INFO  [muorb] [voxl_esc] Params: VOXL_ESC_PUB_BST: 1
    INFO  [muorb] [voxl_esc] Params: VOXL_ESC_T_WARN: 0
    INFO  [muorb] [voxl_esc] Params: VOXL_ESC_T_OVER: 0
    INFO  [muorb] [voxl_esc] Params: GPIO_CTL_CH: 0
    INFO  [muorb] [voxl_esc] Params: VOXL_ESC_CMD: 0
    INFO  [muorb] [qshell] Ok executing command: voxl_esc start
    INFO  [muorb] [voxl_esc] Opening UART ESC device 2, baud rate 2000000
    INFO  [muorb] [voxl_esc] Successfully opened UART ESC device
    INFO  [muorb] [voxl_esc] Detecting ESCs...
    INFO  [muorb] [voxl_esc] 	ESC ID     : 0
    INFO  [muorb] [voxl_esc] 	Board Type : 40: ModalAi 4-in-1 ESC (M0129-3)
    INFO  [muorb] [voxl_esc] 	Unique ID  : 0x2039333557555313000F0036
    INFO  [muorb] [voxl_esc] 	Firmware   : version   39, hash 9c6233d6
    INFO  [muorb] [voxl_esc] 	Bootloader : version  184, hash 10bf24c8
    INFO  [muorb] [voxl_esc] 	Reply time : 735us
    INFO  [muorb] [voxl_esc] VOXL_ESC:
    INFO  [muorb] [voxl_esc] 	ESC ID     : 1
    INFO  [muorb] [voxl_esc] 	Board Type : 40: ModalAi 4-in-1 ESC (M0129-3)
    INFO  [muorb] [voxl_esc] 	Unique ID  : 0x2039333557555313000F0032
    INFO  [muorb] [voxl_esc] 	Firmware   : version   39, hash 9c6233d6
    INFO  [muorb] [voxl_esc] 	Bootloader : version  184, hash 10bf24c8
    INFO  [muorb] [voxl_esc] 	Reply time : 721us
    INFO  [muorb] [voxl_esc] VOXL_ESC:
    INFO  [muorb] [voxl_esc] 	ESC ID     : 2
    INFO  [muorb] [voxl_esc] 	Board Type : 40: ModalAi 4-in-1 ESC (M0129-3)
    INFO  [muorb] [voxl_esc] 	Unique ID  : 0x2039333557555313000F0034
    INFO  [muorb] [voxl_esc] 	Firmware   : version   39, hash 9c6233d6
    INFO  [muorb] [voxl_esc] 	Bootloader : version  184, hash 10bf24c8
    INFO  [muorb] [voxl_esc] 	Reply time : 104us
    INFO  [muorb] [voxl_esc] VOXL_ESC:
    INFO  [muorb] [voxl_esc] 	ESC ID     : 3
    INFO  [muorb] [voxl_esc] 	Board Type : 40: ModalAi 4-in-1 ESC (M0129-3)
    INFO  [muorb] [voxl_esc] 	Unique ID  : 0x2039333557555313000F0038
    INFO  [muorb] [voxl_esc] 	Firmware   : version   39, hash 9c6233d6
    INFO  [muorb] [voxl_esc] 	Bootloader : version  184, hash 10bf24c8
    INFO  [muorb] [voxl_esc] 	Reply time : 727us
    INFO  [muorb] [voxl_esc] VOXL_ESC:
    INFO  [muorb] [voxl_esc] Use extended rpm packet : 1
    INFO  [muorb] [voxl_esc] All ESCs successfully detected
    ...
    
    1 Reply Last reply
    0
    • Alex KushleyevA Alex Kushleyev

      @jbiscan21 , have you tried the actuator test feature in QGC? make sure to remove propellers for safety.

      Also, as px4 starts up, the voxl-esc px4 driver will detect the ESCs and print some information, similar to what the CLI tool does without PX4. You can run voxl-px4 in foreground and check. voxl-px4 -d

      Alex

      J Offline
      J Offline
      jbiscan21
      Contributor
      wrote last edited by
      #6

      @Alex-Kushleyev

      Hello, using the actuator sliders in QGC results in the same behavior. The motors just spin at the same constant (arming) speed. Here are the results of voxl-px4 -d

      Starting VOXL ESC driver
      INFO  [qshell] Send cmd: 'voxl_esc start'
      INFO  [muorb] [uORB] Marking DeviceNode(qshell_req) as advertised in process_remote_topic
      INFO  [muorb] [qshell] qshell gotten: voxl_esc start
      INFO  [muorb] [qshell]   arg0 = 'voxl_esc'
      INFO  [muorb] [qshell]   arg1 = 'start'
      INFO  [uORB] Advertising remote topic actuator_outputs
      INFO  [muorb] [voxl_esc] Starting VOXL ESC driver
      INFO  [muorb] [voxl_esc] Params: VOXL_ESC_CONFIG: 1
      INFO  [muorb] [voxl_esc] Params: VOXL_ESC_MODE: 0
      INFO  [muorb] [voxl_esc] Params: VOXL_ESC_BAUD: 2000000
      INFO  [muorb] [voxl_esc] Params: VOXL_ESC_FUNC1: 101
      INFO  [muorb] [voxl_esc] Params: VOXL_ESC_FUNC2: 104
      INFO  [muorb] [voxl_esc] Params: VOXL_ESC_FUNC3: 102
      INFO  [muorb] [voxl_esc] Params: VOXL_ESC_FUNC4: 103
      INFO  [muorb] [voxl_esc] Params: VOXL_ESC_SDIR1: 0
      INFO  [muorb] [voxl_esc] Params: VOXL_ESC_SDIR2: 0
      INFO  [muorb] [voxl_esc] Params: VOXL_ESC_SDIR3: 0
      INFO  [muorb] [voxl_esc] Params: VOXL_ESC_SDIR4: 0
      INFO  [muorb] [voxl_esc] Params: VOXL_ESC_PWR_MIN: 0.050000
      INFO  [muorb] [voxl_esc] Params: VOXL_ESC_RPM_MIN: 3000
      INFO  [muorb] [voxl_esc] Params: VOXL_ESC_RPM_MAX: 30653
      INFO  [muorb] [voxl_esc] Params: VOXL_ESC_T_PERC: 90
      INFO  [muorb] [voxl_esc] Params: VOXL_ESC_T_DEAD: 20
      INFO  [muorb] [voxl_esc] Params: VOXL_ESC_T_EXPO: 35
      INFO  [muorb] [voxl_esc] Params: VOXL_ESC_T_MINF: 0.150000
      INFO  [muorb] [voxl_esc] Params: VOXL_ESC_T_COSP: 0.990000
      INFO  [muorb] [voxl_esc] Params: VOXL_ESC_VLOG: 1
      INFO  [muorb] [voxl_esc] Params: VOXL_ESC_PUB_BST: 1
      INFO  [muorb] [voxl_esc] Params: VOXL_ESC_T_WARN: 0
      INFO  [muorb] [voxl_esc] Params: VOXL_ESC_T_OVER: 0
      INFO  [muorb] [voxl_esc] Params: GPIO_CTL_CH: 0
      INFO  [muorb] [voxl_esc] Params: VOXL_ESC_CMD: 0
      INFO  [muorb] [qshell] Ok executing command: voxl_esc start
      INFO  [muorb] [voxl_esc] Opening UART ESC device 2, baud rate 2000000
      INFO  [muorb] [voxl_esc] Successfully opened UART ESC device
      INFO  [muorb] [voxl_esc] Detecting ESCs...
      INFO  [muorb] [voxl_esc] 	ESC ID     : 0
      INFO  [muorb] [voxl_esc] 	Board Type : 42: ModalAi 4-in-1 ESC (M0138-1)
      INFO  [qshell] qshell return value timestamp: 299177998, local time: 299182990
      INFO  [muorb] [voxl_esc] 	Unique ID  : 0x203837304848570400440022
      INFO  [muorb] [voxl_esc] 	Firmware   : version   39, hash a58f5f6f
      INFO  [muorb] [voxl_esc] 	Bootloader : version  187, hash aad89d63
      INFO  [muorb] [voxl_esc] 	Reply time : 709us
      INFO  [muorb] [voxl_esc] VOXL_ESC:
      INFO  [muorb] [voxl_esc] 	ESC ID     : 1
      INFO  [muorb] [voxl_esc] 	Board Type : 42: ModalAi 4-in-1 ESC (M0138-1)
      INFO  [muorb] [voxl_esc] 	Unique ID  : 0x203837304848570300310055
      INFO  [muorb] [voxl_esc] 	Firmware   : version   39, hash a58f5f6f
      INFO  [muorb] [voxl_esc] 	Bootloader : version  187, hash aad89d63
      INFO  [muorb] [voxl_esc] 	Reply time : 724us
      INFO  [muorb] [voxl_esc] VOXL_ESC:
      INFO  [muorb] [voxl_esc] 	ESC ID     : 2
      Starting CRSF RC driver
      INFO  [muorb] [voxl_esc] 	Board Type : 42: ModalAi 4-in-1 ESC (M0138-1)
      INFO  [muorb] [voxl_esc] 	Unique ID  : 0x2038373048485705003A003F
      INFO  [muorb] [voxl_esc] 	Firmware   : version   39, hash a58f5f6f
      INFO  [muorb] [voxl_esc] 	Bootloader : version  187, hash aad89d63
      INFO  [muorb] [voxl_esc] 	Reply time : 716us
      INFO  [muorb] [voxl_esc] VOXL_ESC:
      INFO  [muorb] [voxl_esc] 	ESC ID     : 3
      INFO  [muorb] [voxl_esc] 	Board Type : 42: ModalAi 4-in-1 ESC (M0138-1)
      INFO  [muorb] [voxl_esc] 	Unique ID  : 0x203837304848570400440025
      INFO  [muorb] [voxl_esc] 	Firmware   : version   39, hash a58f5f6f
      INFO  [muorb] [voxl_esc] 	Bootloader : version  187, hash aad89d63
      INFO  [muorb] [voxl_esc] 	Reply time : 706us
      INFO  [muorb] [voxl_esc] VOXL_ESC:
      INFO  [muorb] [voxl_esc] Use extended rpm packet : 1
      INFO  [muorb] [voxl_esc] All ESCs successfully detected
      INFO  [uORB] Advertising remote topic actuator_outputs_debug
      INFO  [uORB] Advertising remote topic esc_status
      
      
      1 Reply Last reply
      0
      • J Offline
        J Offline
        jbiscan21
        Contributor
        wrote last edited by
        #7

        @alex-kushleyev @eric-katzfey
        One thing I noticed, if I change ESC Command Type from RPM to PWM in the actuators tab, then I can increase the motor speeds

        1 Reply Last reply
        0
        • Alex KushleyevA Offline
          Alex KushleyevA Offline
          Alex Kushleyev
          ModalAI Team
          wrote last edited by Alex Kushleyev
          #8

          @jbiscan21 , can you also share the esc params that you uploaded to the ESC after ESC calibration ? I am assuming you went through this procedure : https://gitlab.com/voxl-public/voxl-sdk/utilities/voxl-esc/-/blob/master/voxl-esc-tools/calibration.md

          From the log I see that all 4 motors spun up but the rpm is capped at about 2200 rpm, which may mean you ESC tuning params are incorrect.

          Also note that after arming, your drone immediately commands about 10000 rpm, which is not great, because that would be a sudden jump.. you may want to check your flight mode to avoid this.

          1d5d52fc-2b98-4178-b5c9-0d66e79cbf78-image.jpeg

          a7217253-aca1-474e-ab18-a019bd517185-image.jpeg

          J 1 Reply Last reply
          0
          • J Offline
            J Offline
            jbiscan21
            Contributor
            wrote last edited by
            #9

            Quick side questions @alex-kushleyev @eric-katzfey

            Have you ever calibrated PWM control with these drones or is that not advised?

            I am a bit confused on the RPM calibration process. It appears to me that the RPM control is closed loop, but one thing that does not make sense to me is the testing with props on. I understand that props on will simulate aerodynamic load for calibration but wouldn't the load be different in flight too? Or is the idea that props on calibration is closer to flight load than props off?

            1 Reply Last reply
            0
            • Alex KushleyevA Alex Kushleyev

              @jbiscan21 , can you also share the esc params that you uploaded to the ESC after ESC calibration ? I am assuming you went through this procedure : https://gitlab.com/voxl-public/voxl-sdk/utilities/voxl-esc/-/blob/master/voxl-esc-tools/calibration.md

              From the log I see that all 4 motors spun up but the rpm is capped at about 2200 rpm, which may mean you ESC tuning params are incorrect.

              Also note that after arming, your drone immediately commands about 10000 rpm, which is not great, because that would be a sudden jump.. you may want to check your flight mode to avoid this.

              1d5d52fc-2b98-4178-b5c9-0d66e79cbf78-image.jpeg

              a7217253-aca1-474e-ab18-a019bd517185-image.jpeg

              J Offline
              J Offline
              jbiscan21
              Contributor
              wrote last edited by
              #10

              @Alex-Kushleyev Yes I want through that procedure. Here are my params:

              <?xml version="1.0" encoding="UTF-8"?>
              
              <!-- Copyright (c) 2020 ModalAI Inc.
              
              Redistribution and use in source and binary forms, with or without
              modification, are permitted provided that the following conditions are met:
              
              1. Redistributions of source code must retain the above copyright notice,
                 this list of conditions and the following disclaimer.
              
              2. Redistributions in binary form must reproduce the above copyright notice,
                 this list of conditions and the following disclaimer in the documentation
                 and/or other materials provided with the distribution.
              
              3. Neither the name of the copyright holder nor the names of its contributors
                 may be used to endorse or promote products derived from this software
                 without specific prior written permission.
              
              4. The Software is used solely in conjunction with devices provided by
                 ModalAI Inc.
              
              THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
              AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
              IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
              ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
              LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
              CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
              SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
              INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
              CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
              ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
              POSSIBILITY OF SUCH DAMAGE.
              
              For a license to use on non-ModalAI hardware, please contact license@modalai.com -->
              
              <EscParameters>
              
                <IdParams>
                  <param name="id"              value="127"/>  <!-- 0-7 .. 127 means use hardware ID pins to read ID-->
                  <param name="dir"             value="2"/>    <!-- 0=fwd, 1=rev, 2=fwd id-based, 3=rev id-based -->
                </IdParams>
              
                <UartParams>
                  <param name="protocol_version" value="2"/>          <!-- reserved for future use -->
                  <param name="input_mode"       value="0"/>          <!-- reserved for future use -->
                  <param name="baud_rate"        value="2000000"/>     <!-- communication bit rate -->
                  <param name="char_timeout_ns"  value="0"/>          <!-- not used -->
                  <param name="cmd_timeout_ns"   value="100000000"/>  <!-- timeout for incoming commands before ESC will stop the motor -->
                </UartParams>
              
                <TuneParams>
                  <param name="pwm_frequency"       value="48000"/>  <!-- switching freqency of PWM signal going to motors. 24Khz and 48Khz are only options for now -->
                  <param name="vbat_nominal_mv"     value="22200"/>  <!-- used for sanity checking and limiting of voltage-dependent funcions -->
                  <param name="num_cycles_per_rev"  value="7"/>      <!-- number of pole pairs in the motor. used for converting electrical frequency to mechanical rpm -->
                  <param name="min_rpm"             value="3020"/>   <!-- WARNING: not tuned. minimum RPM that will be attempted, otherwise capped -->
                  <param name="max_rpm"             value="26311"/>   <!-- WARNING: not tuned. maximum RPM that will be attempted, otherwise capped -->
                  <param name="min_pwm"             value="75"/>     <!-- cap for minimum power to be ever applied. min is 75  -->
                  <param name="max_pwm"             value="9999"/>    <!-- cap for maximum power to be ever applied. max is 999 -->
                  <param name="pwm_vs_rpm_curve_a0" value="-92.6079829269"/>    <!-- this is actually motor_voltage vs rpm curve.. using legacy naming -->
                  <param name="pwm_vs_rpm_curve_a1" value="0.813657468926"/>    <!-- WARNING: RPM controller params are disabled since motor is not tuned -->
                  <param name="pwm_vs_rpm_curve_a2" value="2.69099700436e-06"/>    <!-- WARNING: RPM controller params are disabled since motor is not tuned -->
                  <param name="kp"                  value="0"/>      <!-- WARNING: RPM controller params are disabled since motor is not tuned -->
                  <param name="ki"                  value="0"/>      <!-- WARNING: RPM controller params are disabled since motor is not tuned -->
                  <param name="max_kpe"             value="0"/>      <!-- WARNING: RPM controller params are disabled since motor is not tuned -->
                  <param name="max_kie"             value="0"/>      <!-- WARNING: RPM controller params are disabled since motor is not tuned -->
                  <param name="max_rpm_delta"       value="0"/>      <!-- WARNING: RPM controller params are disabled since motor is not tuned -->
              
                  <param name="spinup_type"         value="1"/>      <!-- 0: traditional, 1: sinusoidal -->
                  <param name="spinup_power"        value="60"/>     <!-- power used to during spin-up procedure -->
                  <param name="latch_power"         value="60"/>    <!-- power used during latching stage of spin-up (out of 999)-->
                  <param name="spinup_power_ramp"   value="8"/>      <!-- it will take ( 4096 / (spinup_power_ramp*10000) ) seconds to ramp sinusoidal start-up power from 0 to spinup_power -->
                  <param name="spinup_rpm_target"   value="2000"/>   <!-- Desired RPM at the end of the sinusoidal spin-up procedure -->
                  <param name="spinup_time_ms"      value="500"/>   <!-- Duration of the sinusoidal spin-up procedure -->
                  <param name="spinup_bemf_comp"    value="1"/>      <!-- 0: disable, 1:enable back-emf compensation in sinusoidal spin-up procedure -->
                  <param name="motor_kv"            value="2300"/>   <!-- kV value of the motor. used in back-emf compensation during spin-up -->
              
                  <param name="min_num_cross_for_closed_loop" value="10"/>  <!-- exit latching mode of fixed power after this number of zero crossings -->
                  <param name="protection_stall_check_rpm" value="1000"/> <!-- if motor spins below this RPM, stall check will trigger and stop / restart the motor -->
              
                  <param name="brake_to_stop"       value="0"/>             <!-- apply brake when stopping motor (or not) -->
                  <param name="stall_timeout_ns"    value="20000000"/>      <!-- after spin-up, if no zero crossing is not detected for this amount of time, motor is considered stalled -->
                  <param name="require_reset_if_stalled"      value="0"/>   <!-- require sending an array of zero commands to reset before next spin-up, if motor stalled -->
              
                  <param name="tone_freqs"          value="[200, 215, 225, 250, 0,0,0,0, 0,0,0,0]"/> <!-- 200 is 2000Hz, max 255 -->
                  <param name="tone_durations"      value="[3,     0,    0,  0,  0,0,0,0, 0,0,0,0]"/> <!-- duration of each tone in units of 10 milli-seconds. Poor naming!!! -->
                  <param name="tone_powers"         value="[20,    0,    0,  0,  0,0,0,0, 0,0,0,0]"/> <!-- max is 255 -->
              
                  <param name="dt_threshold_ns"       value="150000"/>      <!-- during start up, ignore inter-commutation times less than this val, probably noise -->
                  <param name="max_dt_ns"             value="2500000"/>     <!-- min and max values for time between two commutations. these are used as caps -->
                  <param name="min_dt_ns"             value="10000"/>
                  <param name="dt_bootstrap_ns"       value="2000000"/>     <!-- filter bootstrap value for commutation dt during start up -->
              
                  <param name="spinup_stall_dt_ns"    value="6000000"/>     <!-- during spin-up, if no zero crossing is not detected for this amount of time, motor is considered stalled -->
                  <param name="spinup_stall_check_ns" value="30000000"/>    <!-- time after beginning of spinup to start checking for spinup stall -->
              
                  <param name="alignment_time_ns"     value="0"/>           <!-- alignment time before spin-up -->
                  <param name="timing_advance"        value="0"/>
                  <param name="sense_advance"         value="0"/>
              
                  <param name="demag_timing"          value="0"/>       <!-- unused -->
                  <param name="led_config"            value="0"/>       <!-- 0: enable status LEDs in bootloader and firmware, 1: disable LEDs in boot and firmware: 2: disable LEDs only in firmware. need FW 39.25 or later -->
              
                </TuneParams>
              </EscParameters>
              
              
              J 1 Reply Last reply
              0
              • J jbiscan21

                @Alex-Kushleyev Yes I want through that procedure. Here are my params:

                <?xml version="1.0" encoding="UTF-8"?>
                
                <!-- Copyright (c) 2020 ModalAI Inc.
                
                Redistribution and use in source and binary forms, with or without
                modification, are permitted provided that the following conditions are met:
                
                1. Redistributions of source code must retain the above copyright notice,
                   this list of conditions and the following disclaimer.
                
                2. Redistributions in binary form must reproduce the above copyright notice,
                   this list of conditions and the following disclaimer in the documentation
                   and/or other materials provided with the distribution.
                
                3. Neither the name of the copyright holder nor the names of its contributors
                   may be used to endorse or promote products derived from this software
                   without specific prior written permission.
                
                4. The Software is used solely in conjunction with devices provided by
                   ModalAI Inc.
                
                THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
                AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
                IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
                ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
                LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
                CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
                SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
                INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
                CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
                ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
                POSSIBILITY OF SUCH DAMAGE.
                
                For a license to use on non-ModalAI hardware, please contact license@modalai.com -->
                
                <EscParameters>
                
                  <IdParams>
                    <param name="id"              value="127"/>  <!-- 0-7 .. 127 means use hardware ID pins to read ID-->
                    <param name="dir"             value="2"/>    <!-- 0=fwd, 1=rev, 2=fwd id-based, 3=rev id-based -->
                  </IdParams>
                
                  <UartParams>
                    <param name="protocol_version" value="2"/>          <!-- reserved for future use -->
                    <param name="input_mode"       value="0"/>          <!-- reserved for future use -->
                    <param name="baud_rate"        value="2000000"/>     <!-- communication bit rate -->
                    <param name="char_timeout_ns"  value="0"/>          <!-- not used -->
                    <param name="cmd_timeout_ns"   value="100000000"/>  <!-- timeout for incoming commands before ESC will stop the motor -->
                  </UartParams>
                
                  <TuneParams>
                    <param name="pwm_frequency"       value="48000"/>  <!-- switching freqency of PWM signal going to motors. 24Khz and 48Khz are only options for now -->
                    <param name="vbat_nominal_mv"     value="22200"/>  <!-- used for sanity checking and limiting of voltage-dependent funcions -->
                    <param name="num_cycles_per_rev"  value="7"/>      <!-- number of pole pairs in the motor. used for converting electrical frequency to mechanical rpm -->
                    <param name="min_rpm"             value="3020"/>   <!-- WARNING: not tuned. minimum RPM that will be attempted, otherwise capped -->
                    <param name="max_rpm"             value="26311"/>   <!-- WARNING: not tuned. maximum RPM that will be attempted, otherwise capped -->
                    <param name="min_pwm"             value="75"/>     <!-- cap for minimum power to be ever applied. min is 75  -->
                    <param name="max_pwm"             value="9999"/>    <!-- cap for maximum power to be ever applied. max is 999 -->
                    <param name="pwm_vs_rpm_curve_a0" value="-92.6079829269"/>    <!-- this is actually motor_voltage vs rpm curve.. using legacy naming -->
                    <param name="pwm_vs_rpm_curve_a1" value="0.813657468926"/>    <!-- WARNING: RPM controller params are disabled since motor is not tuned -->
                    <param name="pwm_vs_rpm_curve_a2" value="2.69099700436e-06"/>    <!-- WARNING: RPM controller params are disabled since motor is not tuned -->
                    <param name="kp"                  value="0"/>      <!-- WARNING: RPM controller params are disabled since motor is not tuned -->
                    <param name="ki"                  value="0"/>      <!-- WARNING: RPM controller params are disabled since motor is not tuned -->
                    <param name="max_kpe"             value="0"/>      <!-- WARNING: RPM controller params are disabled since motor is not tuned -->
                    <param name="max_kie"             value="0"/>      <!-- WARNING: RPM controller params are disabled since motor is not tuned -->
                    <param name="max_rpm_delta"       value="0"/>      <!-- WARNING: RPM controller params are disabled since motor is not tuned -->
                
                    <param name="spinup_type"         value="1"/>      <!-- 0: traditional, 1: sinusoidal -->
                    <param name="spinup_power"        value="60"/>     <!-- power used to during spin-up procedure -->
                    <param name="latch_power"         value="60"/>    <!-- power used during latching stage of spin-up (out of 999)-->
                    <param name="spinup_power_ramp"   value="8"/>      <!-- it will take ( 4096 / (spinup_power_ramp*10000) ) seconds to ramp sinusoidal start-up power from 0 to spinup_power -->
                    <param name="spinup_rpm_target"   value="2000"/>   <!-- Desired RPM at the end of the sinusoidal spin-up procedure -->
                    <param name="spinup_time_ms"      value="500"/>   <!-- Duration of the sinusoidal spin-up procedure -->
                    <param name="spinup_bemf_comp"    value="1"/>      <!-- 0: disable, 1:enable back-emf compensation in sinusoidal spin-up procedure -->
                    <param name="motor_kv"            value="2300"/>   <!-- kV value of the motor. used in back-emf compensation during spin-up -->
                
                    <param name="min_num_cross_for_closed_loop" value="10"/>  <!-- exit latching mode of fixed power after this number of zero crossings -->
                    <param name="protection_stall_check_rpm" value="1000"/> <!-- if motor spins below this RPM, stall check will trigger and stop / restart the motor -->
                
                    <param name="brake_to_stop"       value="0"/>             <!-- apply brake when stopping motor (or not) -->
                    <param name="stall_timeout_ns"    value="20000000"/>      <!-- after spin-up, if no zero crossing is not detected for this amount of time, motor is considered stalled -->
                    <param name="require_reset_if_stalled"      value="0"/>   <!-- require sending an array of zero commands to reset before next spin-up, if motor stalled -->
                
                    <param name="tone_freqs"          value="[200, 215, 225, 250, 0,0,0,0, 0,0,0,0]"/> <!-- 200 is 2000Hz, max 255 -->
                    <param name="tone_durations"      value="[3,     0,    0,  0,  0,0,0,0, 0,0,0,0]"/> <!-- duration of each tone in units of 10 milli-seconds. Poor naming!!! -->
                    <param name="tone_powers"         value="[20,    0,    0,  0,  0,0,0,0, 0,0,0,0]"/> <!-- max is 255 -->
                
                    <param name="dt_threshold_ns"       value="150000"/>      <!-- during start up, ignore inter-commutation times less than this val, probably noise -->
                    <param name="max_dt_ns"             value="2500000"/>     <!-- min and max values for time between two commutations. these are used as caps -->
                    <param name="min_dt_ns"             value="10000"/>
                    <param name="dt_bootstrap_ns"       value="2000000"/>     <!-- filter bootstrap value for commutation dt during start up -->
                
                    <param name="spinup_stall_dt_ns"    value="6000000"/>     <!-- during spin-up, if no zero crossing is not detected for this amount of time, motor is considered stalled -->
                    <param name="spinup_stall_check_ns" value="30000000"/>    <!-- time after beginning of spinup to start checking for spinup stall -->
                
                    <param name="alignment_time_ns"     value="0"/>           <!-- alignment time before spin-up -->
                    <param name="timing_advance"        value="0"/>
                    <param name="sense_advance"         value="0"/>
                
                    <param name="demag_timing"          value="0"/>       <!-- unused -->
                    <param name="led_config"            value="0"/>       <!-- 0: enable status LEDs in bootloader and firmware, 1: disable LEDs in boot and firmware: 2: disable LEDs only in firmware. need FW 39.25 or later -->
                
                  </TuneParams>
                </EscParameters>
                
                
                J Offline
                J Offline
                jbiscan21
                Contributor
                wrote last edited by
                #11

                @alex-kushleyev Alright I feel pretty dumb. But it is because the PID gains were zero in my config file...

                1 Reply Last reply
                0
                • Alex KushleyevA Offline
                  Alex KushleyevA Offline
                  Alex Kushleyev
                  ModalAI Team
                  wrote last edited by
                  #12

                  Hi @jbiscan21 ,

                  The main issue was that the max_rpm_delta was set to zero. Even with PI gains (and max errors) set to zero, you could have had it working with non-zero max_rpm_delta. Let me explain.

                  max_rpm_delta term is used to cap the target rpm relative to the current rpm. This is done to prevent very aggressive motor behavior, especially if motor is spinning very slowly because it is tangled in grass, etc, allowing unlimited max_rpm_delta could cause motor to burn out or de-sync.

                  The RPM controller has a feed-forward term and feedback terms.

                  • feedback terms are Proportional and Integral with corresponding gains and error terms (k * e).
                  • feed-forward term comes from the calibration : for desired RPM, the calibration tells the ESC what PWM (duty cycle) to apply
                  • there is also battery voltage compensation, so that even if voltage is changing, the feed-forward curve will still be accurate.

                  The rpm error is computed like so : rpm_error = rpm_desired - rpm_current, which standard. But then it is capped with the max_rpm_delta, so if that is equal to zero, then rpm_error will be zero. One subtle detail is that the rpm_error is also used to look up the desired rpm feed_forward : rpm_for_feed_forward_term = rpm_current + rpm_error (roughly speaking), so having the max_rpm_delta set to zero, caused the motor to be always stuck at minimum rpm.

                  So you could still have zero P and I terms and the motor would use a feed forward term with voltage compensation and it would provide a nice and soft response (similar to traditional ESC). Adding P and I will make the response better than a traditional ESC.

                  In fact when using a new motor + prop, you should start off with P and I gains zero, just use a feed forward term to test at first and then you can increase the ESC's responsiveness by giving it more max_rpm_delta and also P and I terms. However, that is more advanced tuning should be done using voxl-esc tools first in order ensure ESC response stability (we could discuss that in another thread).

                  To answer your earlier questions:

                  • You could use pwm (power) control, but i have never used it with PX4. Perhaps @eric-katzfey can comment about that
                  • the ESC calibration for modalai ESCs calibrates the feed-forward term (as described above), and has to be done with a propeller. Yes, in flight, the air dynamics will change due to many factors such as air pressure, temperature, air speed, etc, etc, but the job of RPM controller is to keep a desired rpm. A higher level controller could potentially estimate the thrust vs rpm is changing due to air temperature or pressure difference from the calibrated response (outside of the scope of ESC's rpm controller).

                  Alex

                  J 1 Reply Last reply
                  0
                  • Alex KushleyevA Alex Kushleyev

                    Hi @jbiscan21 ,

                    The main issue was that the max_rpm_delta was set to zero. Even with PI gains (and max errors) set to zero, you could have had it working with non-zero max_rpm_delta. Let me explain.

                    max_rpm_delta term is used to cap the target rpm relative to the current rpm. This is done to prevent very aggressive motor behavior, especially if motor is spinning very slowly because it is tangled in grass, etc, allowing unlimited max_rpm_delta could cause motor to burn out or de-sync.

                    The RPM controller has a feed-forward term and feedback terms.

                    • feedback terms are Proportional and Integral with corresponding gains and error terms (k * e).
                    • feed-forward term comes from the calibration : for desired RPM, the calibration tells the ESC what PWM (duty cycle) to apply
                    • there is also battery voltage compensation, so that even if voltage is changing, the feed-forward curve will still be accurate.

                    The rpm error is computed like so : rpm_error = rpm_desired - rpm_current, which standard. But then it is capped with the max_rpm_delta, so if that is equal to zero, then rpm_error will be zero. One subtle detail is that the rpm_error is also used to look up the desired rpm feed_forward : rpm_for_feed_forward_term = rpm_current + rpm_error (roughly speaking), so having the max_rpm_delta set to zero, caused the motor to be always stuck at minimum rpm.

                    So you could still have zero P and I terms and the motor would use a feed forward term with voltage compensation and it would provide a nice and soft response (similar to traditional ESC). Adding P and I will make the response better than a traditional ESC.

                    In fact when using a new motor + prop, you should start off with P and I gains zero, just use a feed forward term to test at first and then you can increase the ESC's responsiveness by giving it more max_rpm_delta and also P and I terms. However, that is more advanced tuning should be done using voxl-esc tools first in order ensure ESC response stability (we could discuss that in another thread).

                    To answer your earlier questions:

                    • You could use pwm (power) control, but i have never used it with PX4. Perhaps @eric-katzfey can comment about that
                    • the ESC calibration for modalai ESCs calibrates the feed-forward term (as described above), and has to be done with a propeller. Yes, in flight, the air dynamics will change due to many factors such as air pressure, temperature, air speed, etc, etc, but the job of RPM controller is to keep a desired rpm. A higher level controller could potentially estimate the thrust vs rpm is changing due to air temperature or pressure difference from the calibrated response (outside of the scope of ESC's rpm controller).

                    Alex

                    J Offline
                    J Offline
                    jbiscan21
                    Contributor
                    wrote last edited by
                    #13

                    @Alex-Kushleyev

                    Hi Alex,

                    Thank you for the informative responses. That is all good information to know.

                    We calibrated with a prop on and I experimented with max_rpm_delta, but we when we tried to fly in stabilized mode, the drone immediately flipped over. We also noticed via bench top testing with no prop on, that the the rpm values were very unbalanced at max rpm. For example, one motor in the inspector reported 26000 while another was 6000 rpm. Is there anything on the PX4 side of things that should be changed too?

                    Thank you,
                    John

                    1 Reply Last reply
                    0
                    • Eric KatzfeyE Offline
                      Eric KatzfeyE Offline
                      Eric Katzfey
                      ModalAI Team
                      wrote last edited by
                      #14

                      A drone immediately flipping over is usually caused by some combination of incorrect motor mapping, incorrect motor spin direction, and / or improper prop direction.

                      J 1 Reply Last reply
                      0
                      • Eric KatzfeyE Eric Katzfey

                        A drone immediately flipping over is usually caused by some combination of incorrect motor mapping, incorrect motor spin direction, and / or improper prop direction.

                        J Offline
                        J Offline
                        jbiscan21
                        Contributor
                        wrote last edited by jbiscan21
                        #15

                        @Eric-Katzfey @alex-kushleyev

                        We confirmed all of the above. What we noticed is that when we watch the esc_status messages in mavlink inspector and we throttle up with RC, two of the RPM values are off by several thousand. For example, two RPM values are around 16000 while others are stuck at 6000-8000. However, if I watch these RPM values while throttling the esc's using the actuator sliders in QGC, they are all the same value roughly. For context, we are using a radiomaster GX12 with a Radiomaster XR4 receiver on the drone.

                        I have attached my px4 params if you would not mind giving those a sanity check... thank you!

                        # Onboard parameters for Vehicle 1
                        #
                        # Stack: PX4 Pro
                        # Vehicle: Multi-Rotor
                        # Version: 1.14.0 dev
                        # Git Revision: 3e7db37f06020085
                        #
                        # Vehicle-Id Component-Id Name Value Type
                        1	1	ASPD_SCALE_1	1	9
                        1	1	BAT1_CAPACITY	5e+03	9
                        1	1	BAT1_N_CELLS	6	6
                        1	1	BAT1_R_INTERNAL	0.003	9
                        1	1	BAT1_SOURCE	0	6
                        1	1	BAT1_V_CHARGED	4.2	9
                        1	1	BAT1_V_EMPTY	3.3	9
                        1	1	BAT1_V_LOAD_DROP	0.1	9
                        1	1	BAT_AVRG_CURRENT	15	9
                        1	1	BAT_CRIT_THR	0.1	9
                        1	1	BAT_EMERGEN_THR	0.05	9
                        1	1	BAT_LOW_THR	0.15	9
                        1	1	BAT_N_CELLS	3	6
                        1	1	BAT_V_CHARGED	4.05	9
                        1	1	BAT_V_EMPTY	3.6	9
                        1	1	BAT_V_LOAD_DROP	0.3	9
                        1	1	CAL_ACC0_ID	2490378	6
                        1	1	CAL_ACC0_PRIO	50	6
                        1	1	CAL_ACC0_ROT	-1	6
                        1	1	CAL_ACC0_XOFF	0.016957283	9
                        1	1	CAL_ACC0_XSCALE	0.99843574	9
                        1	1	CAL_ACC0_YOFF	0.04622507	9
                        1	1	CAL_ACC0_YSCALE	1.0024542	9
                        1	1	CAL_ACC0_ZOFF	0.02586174	9
                        1	1	CAL_ACC0_ZSCALE	0.99772567	9
                        1	1	CAL_ACC1_ID	0	6
                        1	1	CAL_ACC2_ID	0	6
                        1	1	CAL_ACC3_ID	0	6
                        1	1	CAL_AIR_CMODEL	0	6
                        1	1	CAL_AIR_TUBED_MM	1.5	9
                        1	1	CAL_AIR_TUBELEN	0.2	9
                        1	1	CAL_BARO0_ID	0	6
                        1	1	CAL_BARO1_ID	0	6
                        1	1	CAL_BARO2_ID	0	6
                        1	1	CAL_BARO3_ID	0	6
                        1	1	CAL_GYRO0_ID	2490378	6
                        1	1	CAL_GYRO0_PRIO	50	6
                        1	1	CAL_GYRO0_ROT	-1	6
                        1	1	CAL_GYRO0_XOFF	-0.006514091	9
                        1	1	CAL_GYRO0_YOFF	0.019818183	9
                        1	1	CAL_GYRO0_ZOFF	-0.0041006296	9
                        1	1	CAL_GYRO1_ID	0	6
                        1	1	CAL_GYRO2_ID	0	6
                        1	1	CAL_GYRO3_ID	0	6
                        1	1	CAL_MAG0_ID	0	6
                        1	1	CAL_MAG0_PRIO	75	6
                        1	1	CAL_MAG0_ROT	-1	6
                        1	1	CAL_MAG0_XODIAG	-0.01694872	9
                        1	1	CAL_MAG0_XOFF	0.07075692	9
                        1	1	CAL_MAG0_XSCALE	1.0713451	9
                        1	1	CAL_MAG0_YODIAG	0.05755493	9
                        1	1	CAL_MAG0_YOFF	-0.22197492	9
                        1	1	CAL_MAG0_YSCALE	1.0001789	9
                        1	1	CAL_MAG0_ZODIAG	-0.022624424	9
                        1	1	CAL_MAG0_ZOFF	0.09056667	9
                        1	1	CAL_MAG0_ZSCALE	0.98838013	9
                        1	1	CAL_MAG1_ID	0	6
                        1	1	CAL_MAG1_ROT	-1	6
                        1	1	CAL_MAG2_ID	0	6
                        1	1	CAL_MAG2_ROT	-1	6
                        1	1	CAL_MAG3_ID	0	6
                        1	1	CAL_MAG3_ROT	-1	6
                        1	1	CA_AIRFRAME	0	6
                        1	1	CA_FAILURE_MODE	0	6
                        1	1	CA_METHOD	2	6
                        1	1	CA_R0_SLEW	0	9
                        1	1	CA_R10_SLEW	0	9
                        1	1	CA_R11_SLEW	0	9
                        1	1	CA_R1_SLEW	0	9
                        1	1	CA_R2_SLEW	0	9
                        1	1	CA_R3_SLEW	0	9
                        1	1	CA_R4_SLEW	0	9
                        1	1	CA_R5_SLEW	0	9
                        1	1	CA_R6_SLEW	0	9
                        1	1	CA_R7_SLEW	0	9
                        1	1	CA_R8_SLEW	0	9
                        1	1	CA_R9_SLEW	0	9
                        1	1	CA_ROTOR0_AX	0	9
                        1	1	CA_ROTOR0_AY	0	9
                        1	1	CA_ROTOR0_AZ	1	9
                        1	1	CA_ROTOR0_CT	6.5	9
                        1	1	CA_ROTOR0_KM	0.05	9
                        1	1	CA_ROTOR0_PX	0.033528	9
                        1	1	CA_ROTOR0_PY	0.033528	9
                        1	1	CA_ROTOR0_PZ	0	9
                        1	1	CA_ROTOR10_AX	0	9
                        1	1	CA_ROTOR10_AY	0	9
                        1	1	CA_ROTOR10_AZ	-1	9
                        1	1	CA_ROTOR10_CT	6.5	9
                        1	1	CA_ROTOR10_KM	0.05	9
                        1	1	CA_ROTOR10_PX	0	9
                        1	1	CA_ROTOR10_PY	0	9
                        1	1	CA_ROTOR10_PZ	0	9
                        1	1	CA_ROTOR11_AX	0	9
                        1	1	CA_ROTOR11_AY	0	9
                        1	1	CA_ROTOR11_AZ	-1	9
                        1	1	CA_ROTOR11_CT	6.5	9
                        1	1	CA_ROTOR11_KM	0.05	9
                        1	1	CA_ROTOR11_PX	0	9
                        1	1	CA_ROTOR11_PY	0	9
                        1	1	CA_ROTOR11_PZ	0	9
                        1	1	CA_ROTOR1_AX	0	9
                        1	1	CA_ROTOR1_AY	0	9
                        1	1	CA_ROTOR1_AZ	1	9
                        1	1	CA_ROTOR1_CT	6.5	9
                        1	1	CA_ROTOR1_KM	0.05	9
                        1	1	CA_ROTOR1_PX	-0.033528	9
                        1	1	CA_ROTOR1_PY	-0.033528	9
                        1	1	CA_ROTOR1_PZ	0	9
                        1	1	CA_ROTOR2_AX	0	9
                        1	1	CA_ROTOR2_AY	0	9
                        1	1	CA_ROTOR2_AZ	1	9
                        1	1	CA_ROTOR2_CT	6.5	9
                        1	1	CA_ROTOR2_KM	-0.05	9
                        1	1	CA_ROTOR2_PX	0.033528	9
                        1	1	CA_ROTOR2_PY	-0.033528	9
                        1	1	CA_ROTOR2_PZ	0	9
                        1	1	CA_ROTOR3_AX	0	9
                        1	1	CA_ROTOR3_AY	0	9
                        1	1	CA_ROTOR3_AZ	1	9
                        1	1	CA_ROTOR3_CT	6.5	9
                        1	1	CA_ROTOR3_KM	-0.05	9
                        1	1	CA_ROTOR3_PX	-0.033528	9
                        1	1	CA_ROTOR3_PY	0.033528	9
                        1	1	CA_ROTOR3_PZ	0	9
                        1	1	CA_ROTOR4_AX	0	9
                        1	1	CA_ROTOR4_AY	0	9
                        1	1	CA_ROTOR4_AZ	-1	9
                        1	1	CA_ROTOR4_CT	6.5	9
                        1	1	CA_ROTOR4_KM	0.05	9
                        1	1	CA_ROTOR4_PX	0	9
                        1	1	CA_ROTOR4_PY	0	9
                        1	1	CA_ROTOR4_PZ	0	9
                        1	1	CA_ROTOR5_AX	0	9
                        1	1	CA_ROTOR5_AY	0	9
                        1	1	CA_ROTOR5_AZ	-1	9
                        1	1	CA_ROTOR5_CT	6.5	9
                        1	1	CA_ROTOR5_KM	0.05	9
                        1	1	CA_ROTOR5_PX	0	9
                        1	1	CA_ROTOR5_PY	0	9
                        1	1	CA_ROTOR5_PZ	0	9
                        1	1	CA_ROTOR6_AX	0	9
                        1	1	CA_ROTOR6_AY	0	9
                        1	1	CA_ROTOR6_AZ	-1	9
                        1	1	CA_ROTOR6_CT	6.5	9
                        1	1	CA_ROTOR6_KM	0.05	9
                        1	1	CA_ROTOR6_PX	0	9
                        1	1	CA_ROTOR6_PY	0	9
                        1	1	CA_ROTOR6_PZ	0	9
                        1	1	CA_ROTOR7_AX	0	9
                        1	1	CA_ROTOR7_AY	0	9
                        1	1	CA_ROTOR7_AZ	-1	9
                        1	1	CA_ROTOR7_CT	6.5	9
                        1	1	CA_ROTOR7_KM	0.05	9
                        1	1	CA_ROTOR7_PX	0	9
                        1	1	CA_ROTOR7_PY	0	9
                        1	1	CA_ROTOR7_PZ	0	9
                        1	1	CA_ROTOR8_AX	0	9
                        1	1	CA_ROTOR8_AY	0	9
                        1	1	CA_ROTOR8_AZ	-1	9
                        1	1	CA_ROTOR8_CT	6.5	9
                        1	1	CA_ROTOR8_KM	0.05	9
                        1	1	CA_ROTOR8_PX	0	9
                        1	1	CA_ROTOR8_PY	0	9
                        1	1	CA_ROTOR8_PZ	0	9
                        1	1	CA_ROTOR9_AX	0	9
                        1	1	CA_ROTOR9_AY	0	9
                        1	1	CA_ROTOR9_AZ	-1	9
                        1	1	CA_ROTOR9_CT	6.5	9
                        1	1	CA_ROTOR9_KM	0.05	9
                        1	1	CA_ROTOR9_PX	0	9
                        1	1	CA_ROTOR9_PY	0	9
                        1	1	CA_ROTOR9_PZ	0	9
                        1	1	CA_ROTOR_COUNT	4	6
                        1	1	CA_R_REV	0	6
                        1	1	CA_SV0_SLEW	0	9
                        1	1	CA_SV1_SLEW	0	9
                        1	1	CA_SV2_SLEW	0	9
                        1	1	CA_SV3_SLEW	0	9
                        1	1	CA_SV4_SLEW	0	9
                        1	1	CA_SV5_SLEW	0	9
                        1	1	CA_SV6_SLEW	0	9
                        1	1	CA_SV7_SLEW	0	9
                        1	1	CBRK_AIRSPD_CHK	0	6
                        1	1	CBRK_FLIGHTTERM	121212	6
                        1	1	CBRK_IO_SAFETY	22027	6
                        1	1	CBRK_SUPPLY_CHK	894281	6
                        1	1	CBRK_USB_CHK	197848	6
                        1	1	CBRK_VTOLARMING	0	6
                        1	1	COM_ACT_FAIL_ACT	0	6
                        1	1	COM_ARM_ARSP_EN	1	6
                        1	1	COM_ARM_AUTH_ID	10	6
                        1	1	COM_ARM_AUTH_MET	0	6
                        1	1	COM_ARM_AUTH_REQ	0	6
                        1	1	COM_ARM_AUTH_TO	1	9
                        1	1	COM_ARM_BAD_INOV	0	6
                        1	1	COM_ARM_CHK_ESCS	0	6
                        1	1	COM_ARM_EKF_BIAS	3	9
                        1	1	COM_ARM_EKF_HGT	1	9
                        1	1	COM_ARM_EKF_POS	0.5	9
                        1	1	COM_ARM_EKF_VEL	0.5	9
                        1	1	COM_ARM_EKF_YAW	0.5	9
                        1	1	COM_ARM_HFLT_CHK	1	6
                        1	1	COM_ARM_IMU_ACC	0.7	9
                        1	1	COM_ARM_IMU_GYR	0.25	9
                        1	1	COM_ARM_MAG_ANG	60	6
                        1	1	COM_ARM_MAG_STR	2	6
                        1	1	COM_ARM_MIS_REQ	0	6
                        1	1	COM_ARM_ODID	0	6
                        1	1	COM_ARM_SDCARD	0	6
                        1	1	COM_ARM_SWISBTN	0	6
                        1	1	COM_ARM_WO_GPS	1	6
                        1	1	COM_CPU_MAX	-1	9
                        1	1	COM_DISARM_FORCE	0	6
                        1	1	COM_DISARM_LAND	0.1	9
                        1	1	COM_DISARM_PRFLT	2e+01	9
                        1	1	COM_DL_LOSS_T	10	6
                        1	1	COM_FAIL_ACT_T	5	9
                        1	1	COM_FLIGHT_UUID	217	6
                        1	1	COM_FLTMODE1	8	6
                        1	1	COM_FLTMODE2	-1	6
                        1	1	COM_FLTMODE3	-1	6
                        1	1	COM_FLTMODE4	-1	6
                        1	1	COM_FLTMODE5	-1	6
                        1	1	COM_FLTMODE6	2	6
                        1	1	COM_FLT_PROFILE	0	6
                        1	1	COM_FLT_TIME_MAX	-1	6
                        1	1	COM_FORCE_SAFETY	0	6
                        1	1	COM_HLDL_LOSS_T	120	6
                        1	1	COM_HLDL_REG_T	0	6
                        1	1	COM_HOME_EN	1	6
                        1	1	COM_HOME_IN_AIR	0	6
                        1	1	COM_IMB_PROP_ACT	0	6
                        1	1	COM_KILL_DISARM	0	9
                        1	1	COM_LKDOWN_TKO	3	9
                        1	1	COM_LOW_BAT_ACT	0	6
                        1	1	COM_MOT_TEST_EN	1	6
                        1	1	COM_OBC_LOSS_T	5	9
                        1	1	COM_OBL_RC_ACT	0	6
                        1	1	COM_OBS_AVOID	0	6
                        1	1	COM_OF_LOSS_T	3	9
                        1	1	COM_PARACHUTE	0	6
                        1	1	COM_POSCTL_NAVL	0	6
                        1	1	COM_POS_FS_DELAY	1	6
                        1	1	COM_POS_FS_EPH	5	9
                        1	1	COM_POS_LOW_EPH	-1	9
                        1	1	COM_POWER_COUNT	1	6
                        1	1	COM_PREARM_MODE	0	6
                        1	1	COM_QC_ACT	0	6
                        1	1	COM_RCL_EXCEPT	0	6
                        1	1	COM_RC_ARM_HYST	1000	6
                        1	1	COM_RC_IN_MODE	3	6
                        1	1	COM_RC_LOSS_T	0.5	9
                        1	1	COM_RC_OVERRIDE	1	6
                        1	1	COM_RC_STICK_OV	3e+01	9
                        1	1	COM_SPOOLUP_TIME	2	9
                        1	1	COM_TAKEOFF_ACT	0	6
                        1	1	COM_VEL_FS_EVH	1	9
                        1	1	COM_WIND_MAX	-1	9
                        1	1	COM_WIND_WARN	-1	9
                        1	1	CP_DELAY	0.4	9
                        1	1	CP_DIST	-1	9
                        1	1	CP_GO_NO_DATA	0	6
                        1	1	CP_GUIDE_ANG	3e+01	9
                        1	1	EKF2_ABIAS_INIT	0.2	9
                        1	1	EKF2_ABL_ACCLIM	25	9
                        1	1	EKF2_ABL_GYRLIM	3	9
                        1	1	EKF2_ABL_LIM	0.4	9
                        1	1	EKF2_ABL_TAU	0.5	9
                        1	1	EKF2_ACC_B_NOISE	0.003	9
                        1	1	EKF2_ACC_NOISE	0.35	9
                        1	1	EKF2_AID_MASK	0	6
                        1	1	EKF2_ANGERR_INIT	0.1	9
                        1	1	EKF2_ARSP_THR	0	9
                        1	1	EKF2_ASPD_MAX	2e+01	9
                        1	1	EKF2_ASP_DELAY	1e+02	9
                        1	1	EKF2_AVEL_DELAY	5	9
                        1	1	EKF2_BARO_CTRL	1	6
                        1	1	EKF2_BARO_DELAY	0	9
                        1	1	EKF2_BARO_GATE	5	9
                        1	1	EKF2_BARO_NOISE	3.5	9
                        1	1	EKF2_BCOEF_X	1e+02	9
                        1	1	EKF2_BCOEF_Y	1e+02	9
                        1	1	EKF2_BETA_GATE	5	9
                        1	1	EKF2_BETA_NOISE	0.3	9
                        1	1	EKF2_DECL_TYPE	7	6
                        1	1	EKF2_DRAG_CTRL	0	6
                        1	1	EKF2_DRAG_NOISE	2.5	9
                        1	1	EKF2_EAS_NOISE	1.4	9
                        1	1	EKF2_EVA_NOISE	0.1	9
                        1	1	EKF2_EVP_GATE	5	9
                        1	1	EKF2_EVP_NOISE	0.1	9
                        1	1	EKF2_EVV_GATE	3	9
                        1	1	EKF2_EVV_NOISE	0.1	9
                        1	1	EKF2_EV_CTRL	0	6
                        1	1	EKF2_EV_DELAY	0	9
                        1	1	EKF2_EV_HGT_TO	5000	6
                        1	1	EKF2_EV_NOISE_MD	0	6
                        1	1	EKF2_EV_POS_TO	1000	6
                        1	1	EKF2_EV_POS_X	0	9
                        1	1	EKF2_EV_POS_Y	0	9
                        1	1	EKF2_EV_POS_Z	0	9
                        1	1	EKF2_EV_QMIN	0	6
                        1	1	EKF2_FUSE_BETA	0	6
                        1	1	EKF2_GBIAS_INIT	0.1	9
                        1	1	EKF2_GND_EFF_DZ	4	9
                        1	1	EKF2_GND_MAX_HGT	0.5	9
                        1	1	EKF2_GPS_CHECK	1	6
                        1	1	EKF2_GPS_CTRL	7	6
                        1	1	EKF2_GPS_DELAY	1.1e+02	9
                        1	1	EKF2_GPS_POS_X	0	9
                        1	1	EKF2_GPS_POS_Y	0	9
                        1	1	EKF2_GPS_POS_Z	0	9
                        1	1	EKF2_GPS_P_GATE	5	9
                        1	1	EKF2_GPS_P_NOISE	0.5	9
                        1	1	EKF2_GPS_V_GATE	5	9
                        1	1	EKF2_GPS_V_NOISE	0.3	9
                        1	1	EKF2_GRAV_NOISE	1	9
                        1	1	EKF2_GSF_TAS	15	9
                        1	1	EKF2_GYR_B_LIM	0.15	9
                        1	1	EKF2_GYR_B_NOISE	0.001	9
                        1	1	EKF2_GYR_NOISE	0.015	9
                        1	1	EKF2_HDG_GATE	2.6	9
                        1	1	EKF2_HEAD_NOISE	0.3	9
                        1	1	EKF2_HGT_REF	0	6
                        1	1	EKF2_IMU_CTRL	3	6
                        1	1	EKF2_IMU_POS_X	0.033	9
                        1	1	EKF2_IMU_POS_Y	0.008	9
                        1	1	EKF2_IMU_POS_Z	-0.036	9
                        1	1	EKF2_MAG_ACCLIM	0.5	9
                        1	1	EKF2_MAG_B_NOISE	0.0001	9
                        1	1	EKF2_MAG_CHECK	1	6
                        1	1	EKF2_MAG_DECL	0	9
                        1	1	EKF2_MAG_DELAY	0	9
                        1	1	EKF2_MAG_E_NOISE	0.001	9
                        1	1	EKF2_MAG_GATE	3	9
                        1	1	EKF2_MAG_NOISE	0.05	9
                        1	1	EKF2_MAG_TYPE	0	6
                        1	1	EKF2_MAG_YAWLIM	0.2	9
                        1	1	EKF2_MCOEF	0.15	9
                        1	1	EKF2_MIN_RNG	0.1	9
                        1	1	EKF2_NOAID_NOISE	1e+01	9
                        1	1	EKF2_NOAID_TOUT	5000000	6
                        1	1	EKF2_OF_CTRL	0	6
                        1	1	EKF2_OF_DELAY	2e+01	9
                        1	1	EKF2_OF_GATE	3	9
                        1	1	EKF2_OF_N_MAX	0.5	9
                        1	1	EKF2_OF_N_MIN	0.15	9
                        1	1	EKF2_OF_POS_X	0	9
                        1	1	EKF2_OF_POS_Y	0	9
                        1	1	EKF2_OF_POS_Z	0	9
                        1	1	EKF2_OF_QMIN	1	6
                        1	1	EKF2_PCOEF_XN	0	9
                        1	1	EKF2_PCOEF_XP	0	9
                        1	1	EKF2_PCOEF_YN	0	9
                        1	1	EKF2_PCOEF_YP	0	9
                        1	1	EKF2_PCOEF_Z	0	9
                        1	1	EKF2_PREDICT_US	10000	6
                        1	1	EKF2_REQ_EPH	3	9
                        1	1	EKF2_REQ_EPV	5	9
                        1	1	EKF2_REQ_GPS_H	5	9
                        1	1	EKF2_REQ_HDRIFT	0.1	9
                        1	1	EKF2_REQ_NSATS	6	6
                        1	1	EKF2_REQ_PDOP	2.5	9
                        1	1	EKF2_REQ_SACC	1.5	9
                        1	1	EKF2_REQ_VDRIFT	0.2	9
                        1	1	EKF2_RNG_A_HMAX	5	9
                        1	1	EKF2_RNG_A_IGATE	1	9
                        1	1	EKF2_RNG_A_VMAX	1	9
                        1	1	EKF2_RNG_CTRL	0	6
                        1	1	EKF2_RNG_DELAY	5	9
                        1	1	EKF2_RNG_GATE	5	9
                        1	1	EKF2_RNG_K_GATE	1	9
                        1	1	EKF2_RNG_NOISE	0.1	9
                        1	1	EKF2_RNG_PITCH	0	9
                        1	1	EKF2_RNG_POS_X	0	9
                        1	1	EKF2_RNG_POS_Y	0	9
                        1	1	EKF2_RNG_POS_Z	0	9
                        1	1	EKF2_RNG_QLTY_T	1	9
                        1	1	EKF2_RNG_SFE	0.05	9
                        1	1	EKF2_SYNT_MAG_Z	0	6
                        1	1	EKF2_TAS_GATE	3	9
                        1	1	EKF2_TAU_POS	0.25	9
                        1	1	EKF2_TAU_VEL	0.25	9
                        1	1	EKF2_TERR_GRAD	0.5	9
                        1	1	EKF2_TERR_MASK	3	6
                        1	1	EKF2_TERR_NOISE	5	9
                        1	1	EKF2_WIND_NSD	0.01	9
                        1	1	FD_ACT_EN	1	6
                        1	1	FD_ACT_MOT_C2T	2	9
                        1	1	FD_ACT_MOT_THR	0.2	9
                        1	1	FD_ACT_MOT_TOUT	100	6
                        1	1	FD_ESCS_EN	1	6
                        1	1	FD_EXT_ATS_EN	0	6
                        1	1	FD_EXT_ATS_TRIG	1900	6
                        1	1	FD_FAIL_P	60	6
                        1	1	FD_FAIL_P_TTRI	0.3	9
                        1	1	FD_FAIL_R	180	6
                        1	1	FD_FAIL_R_TTRI	0.3	9
                        1	1	FD_IMB_PROP_THR	30	6
                        1	1	FLW_TGT_ALT_M	0	6
                        1	1	FLW_TGT_DST	8	9
                        1	1	FLW_TGT_FA	1.8e+02	9
                        1	1	FLW_TGT_HT	8	9
                        1	1	FLW_TGT_MAX_VEL	5	9
                        1	1	FLW_TGT_RS	0.1	9
                        1	1	FW_AIRSPD_MAX	2e+01	9
                        1	1	FW_AIRSPD_TRIM	15	9
                        1	1	FW_ARSP_MODE	0	6
                        1	1	FW_PSP_OFF	0	9
                        1	1	FW_T_CLMB_R_SP	3	9
                        1	1	FW_T_SINK_R_SP	2	9
                        1	1	GF_ACTION	2	6
                        1	1	GF_ALTMODE	0	6
                        1	1	GF_COUNT	-1	6
                        1	1	GF_MAX_HOR_DIST	0	9
                        1	1	GF_MAX_VER_DIST	0	9
                        1	1	GF_PREDICT	0	6
                        1	1	GF_SOURCE	0	6
                        1	1	GND_SPEED_THR_SC	1	9
                        1	1	GPIO_CTL_CH	0	6
                        1	1	GPS_1_GNSS	0	6
                        1	1	GPS_1_PROTOCOL	1	6
                        1	1	GPS_DUMP_COMM	0	6
                        1	1	GPS_PITCH_OFFSET	0	9
                        1	1	GPS_SAT_INFO	1	6
                        1	1	GPS_UBX_BAUD2	230400	6
                        1	1	GPS_UBX_CFG_INTF	0	6
                        1	1	GPS_UBX_DYNMODEL	6	6
                        1	1	GPS_UBX_MODE	0	6
                        1	1	GPS_YAW_OFFSET	0	9
                        1	1	HTE_ACC_GATE	3	9
                        1	1	HTE_HT_ERR_INIT	0.1	9
                        1	1	HTE_HT_NOISE	0.0036	9
                        1	1	HTE_THR_RANGE	0.2	9
                        1	1	HTE_VXY_THR	1e+01	9
                        1	1	HTE_VZ_THR	2	9
                        1	1	ICM42688_DT_COMP	0	9
                        1	1	IMU_ACCEL_CUTOFF	4e+01	9
                        1	1	IMU_DGYRO_CUTOFF	4e+01	9
                        1	1	IMU_GYRO_CUTOFF	4e+01	9
                        1	1	IMU_GYRO_DNF_BW	15	9
                        1	1	IMU_GYRO_DNF_EN	1	6
                        1	1	IMU_GYRO_DNF_HMC	3	6
                        1	1	IMU_GYRO_DNF_MIN	25	9
                        1	1	IMU_GYRO_NF0_BW	2e+01	9
                        1	1	IMU_GYRO_NF0_FRQ	0	9
                        1	1	IMU_GYRO_NF1_BW	2e+01	9
                        1	1	IMU_GYRO_NF1_FRQ	0	9
                        1	1	IMU_GYRO_RATEMAX	800	6
                        1	1	IMU_INTEG_RATE	200	6
                        1	1	LNDMC_ALT_GND	2	9
                        1	1	LNDMC_ALT_MAX	-1	9
                        1	1	LNDMC_ROT_MAX	3e+01	9
                        1	1	LNDMC_TRIG_TIME	0.5	9
                        1	1	LNDMC_XY_VEL_MAX	1.5	9
                        1	1	LNDMC_Z_VEL_MAX	0.25	9
                        1	1	LND_FLIGHT_T_HI	0	6
                        1	1	LND_FLIGHT_T_LO	976113329	6
                        1	1	MAN_ARM_GESTURE	0	6
                        1	1	MAV_COMP_ID	1	6
                        1	1	MAV_FWDEXTSP	1	6
                        1	1	MAV_HASH_CHK_EN	1	6
                        1	1	MAV_HB_FORW_EN	1	6
                        1	1	MAV_PROTO_VER	0	6
                        1	1	MAV_RADIO_TOUT	5	6
                        1	1	MAV_SIK_RADIO_ID	0	6
                        1	1	MAV_SYS_ID	1	6
                        1	1	MAV_TYPE	2	6
                        1	1	MAV_USEHILGPS	0	6
                        1	1	MC_ACRO_EXPO	0.69	9
                        1	1	MC_ACRO_EXPO_Y	0.69	9
                        1	1	MC_ACRO_P_MAX	7.2e+02	9
                        1	1	MC_ACRO_R_MAX	7.2e+02	9
                        1	1	MC_ACRO_SUPEXPO	0.7	9
                        1	1	MC_ACRO_SUPEXPOY	0.7	9
                        1	1	MC_ACRO_Y_MAX	5.4e+02	9
                        1	1	MC_AIRMODE	0	6
                        1	1	MC_AT_APPLY	1	6
                        1	1	MC_AT_AXES	3	6
                        1	1	MC_AT_RISE_TIME	0.14	9
                        1	1	MC_AT_START	0	6
                        1	1	MC_AT_SYSID_AMP	0.7	9
                        1	1	MC_BAT_SCALE_EN	0	6
                        1	1	MC_INJECT_AMP	0.05	9
                        1	1	MC_INJECT_CNT	12	6
                        1	1	MC_INJECT_EN	0	6
                        1	1	MC_INJECT_INC	1	9
                        1	1	MC_INJECT_REST_T	1	9
                        1	1	MC_INJECT_RPY	2	6
                        1	1	MC_INJECT_SINE_T	5	9
                        1	1	MC_INJECT_START	3	9
                        1	1	MC_MAN_TILT_TAU	0	9
                        1	1	MC_ORBIT_RAD_MAX	1e+03	9
                        1	1	MC_PITCHRATE_D	0	9
                        1	1	MC_PITCHRATE_FF	0	9
                        1	1	MC_PITCHRATE_I	0.4	9
                        1	1	MC_PITCHRATE_K	1	9
                        1	1	MC_PITCHRATE_MAX	1.5e+02	9
                        1	1	MC_PITCHRATE_P	0.08	9
                        1	1	MC_PITCH_CUTOFF	0	9
                        1	1	MC_PITCH_P	5.5	9
                        1	1	MC_PR_INT_LIM	0.3	9
                        1	1	MC_ROLLRATE_D	0	9
                        1	1	MC_ROLLRATE_FF	0	9
                        1	1	MC_ROLLRATE_I	0.4	9
                        1	1	MC_ROLLRATE_K	1	9
                        1	1	MC_ROLLRATE_MAX	1.5e+02	9
                        1	1	MC_ROLLRATE_P	0.08	9
                        1	1	MC_ROLL_CUTOFF	0	9
                        1	1	MC_ROLL_P	8	9
                        1	1	MC_RR_INT_LIM	0.3	9
                        1	1	MC_THR_CURVE_ACR	0	6
                        1	1	MC_YAWRATE_D	0	9
                        1	1	MC_YAWRATE_FF	0	9
                        1	1	MC_YAWRATE_I	0.5	9
                        1	1	MC_YAWRATE_K	1	9
                        1	1	MC_YAWRATE_MAX	1.5e+02	9
                        1	1	MC_YAWRATE_P	0.13	9
                        1	1	MC_YAW_CUTOFF	0	9
                        1	1	MC_YAW_P	2	9
                        1	1	MC_YAW_WEIGHT	0.4	9
                        1	1	MC_YR_INT_LIM	0.3	9
                        1	1	MIS_DIST_1WP	9e+02	9
                        1	1	MIS_LND_ABRT_ALT	30	6
                        1	1	MIS_MNT_YAW_CTL	0	6
                        1	1	MIS_PD_TO	5	9
                        1	1	MIS_TAKEOFF_ALT	2.5	9
                        1	1	MIS_TKO_LAND_REQ	0	6
                        1	1	MIS_YAW_ERR	12	9
                        1	1	MIS_YAW_TMT	-1	9
                        1	1	MODALAI_CONFIG	0	6
                        1	1	MOT_SLEW_MAX	0	9
                        1	1	MPC_ACC_DOWN_MAX	3	9
                        1	1	MPC_ACC_HOR	3	9
                        1	1	MPC_ACC_HOR_MAX	6	9
                        1	1	MPC_ACC_UP_MAX	3	9
                        1	1	MPC_ALT_MODE	0	6
                        1	1	MPC_HOLD_DZ	0.1	9
                        1	1	MPC_HOLD_MAX_XY	0	9
                        1	1	MPC_HOLD_MAX_Z	0	9
                        1	1	MPC_JERK_AUTO	4	9
                        1	1	MPC_JERK_MAX	4e+01	9
                        1	1	MPC_LAND_ALT1	1e+01	9
                        1	1	MPC_LAND_ALT2	5	9
                        1	1	MPC_LAND_ALT3	1	9
                        1	1	MPC_LAND_CRWL	0.3	9
                        1	1	MPC_LAND_RADIUS	1e+03	9
                        1	1	MPC_LAND_RC_HELP	0	6
                        1	1	MPC_LAND_SPEED	1	9
                        1	1	MPC_MANTHR_MIN	0.12	9
                        1	1	MPC_MAN_TILT_MAX	35	9
                        1	1	MPC_MAN_Y_MAX	1.5e+02	9
                        1	1	MPC_MAN_Y_TAU	0.08	9
                        1	1	MPC_POS_MODE	4	6
                        1	1	MPC_THR_CURVE	0	6
                        1	1	MPC_THR_HOVER	0.39	9
                        1	1	MPC_THR_MAX	0.75	9
                        1	1	MPC_THR_MIN	0.12	9
                        1	1	MPC_THR_XY_MARG	0.3	9
                        1	1	MPC_TILTMAX_AIR	3e+01	9
                        1	1	MPC_TILTMAX_LND	12	9
                        1	1	MPC_TKO_RAMP_T	1	9
                        1	1	MPC_TKO_SPEED	1.5	9
                        1	1	MPC_USE_HTE	1	6
                        1	1	MPC_VELD_LP	5	9
                        1	1	MPC_VEL_MANUAL	5	9
                        1	1	MPC_VEL_MAN_BACK	-1	9
                        1	1	MPC_VEL_MAN_SIDE	-1	9
                        1	1	MPC_XY_CRUISE	5	9
                        1	1	MPC_XY_ERR_MAX	2	9
                        1	1	MPC_XY_MAN_EXPO	0.45	9
                        1	1	MPC_XY_P	0.95	9
                        1	1	MPC_XY_TRAJ_P	0.5	9
                        1	1	MPC_XY_VEL_ALL	-1e+01	9
                        1	1	MPC_XY_VEL_D_ACC	0	9
                        1	1	MPC_XY_VEL_I_ACC	0.1	9
                        1	1	MPC_XY_VEL_MAX	5	9
                        1	1	MPC_XY_VEL_P_ACC	3	9
                        1	1	MPC_YAWRAUTO_MAX	45	9
                        1	1	MPC_YAW_EXPO	0.3	9
                        1	1	MPC_YAW_MODE	0	6
                        1	1	MPC_Z_MAN_EXPO	0.1	9
                        1	1	MPC_Z_P	1	9
                        1	1	MPC_Z_VEL_ALL	-3	9
                        1	1	MPC_Z_VEL_D_ACC	0	9
                        1	1	MPC_Z_VEL_I_ACC	2	9
                        1	1	MPC_Z_VEL_MAX_DN	1.5	9
                        1	1	MPC_Z_VEL_MAX_UP	4	9
                        1	1	MPC_Z_VEL_P_ACC	8	9
                        1	1	MPC_Z_V_AUTO_DN	1.5	9
                        1	1	MPC_Z_V_AUTO_UP	4	9
                        1	1	MUORB_KAF_DSRM	30	6
                        1	1	MUORB_KAF_LAND	1	6
                        1	1	NAV_ACC_RAD	2	9
                        1	1	NAV_DLL_ACT	0	6
                        1	1	NAV_FORCE_VT	1	6
                        1	1	NAV_FW_ALTL_RAD	5	9
                        1	1	NAV_FW_ALT_RAD	1e+01	9
                        1	1	NAV_LOITER_RAD	8e+01	9
                        1	1	NAV_MC_ALT_RAD	0.8	9
                        1	1	NAV_MIN_LTR_ALT	-1	9
                        1	1	NAV_RCL_ACT	2	6
                        1	1	NAV_TRAFF_AVOID	1	6
                        1	1	NAV_TRAFF_A_HOR	5e+02	9
                        1	1	NAV_TRAFF_A_VER	5e+02	9
                        1	1	NAV_TRAFF_COLL_T	60	6
                        1	1	PLD_BTOUT	5	9
                        1	1	PLD_FAPPR_ALT	0.1	9
                        1	1	PLD_HACC_RAD	0.2	9
                        1	1	PLD_MAX_SRCH	3	6
                        1	1	PLD_SRCH_ALT	1e+01	9
                        1	1	PLD_SRCH_TOUT	1e+01	9
                        1	1	RC10_DZ	0	9
                        1	1	RC10_MAX	2e+03	9
                        1	1	RC10_MIN	1e+03	9
                        1	1	RC10_REV	1	9
                        1	1	RC10_TRIM	1.5e+03	9
                        1	1	RC11_DZ	0	9
                        1	1	RC11_MAX	2e+03	9
                        1	1	RC11_MIN	1e+03	9
                        1	1	RC11_REV	1	9
                        1	1	RC11_TRIM	1.5e+03	9
                        1	1	RC12_DZ	0	9
                        1	1	RC12_MAX	2e+03	9
                        1	1	RC12_MIN	1e+03	9
                        1	1	RC12_REV	1	9
                        1	1	RC12_TRIM	1.5e+03	9
                        1	1	RC13_DZ	0	9
                        1	1	RC13_MAX	2e+03	9
                        1	1	RC13_MIN	1e+03	9
                        1	1	RC13_REV	1	9
                        1	1	RC13_TRIM	1.5e+03	9
                        1	1	RC14_DZ	0	9
                        1	1	RC14_MAX	2e+03	9
                        1	1	RC14_MIN	1e+03	9
                        1	1	RC14_REV	1	9
                        1	1	RC14_TRIM	1.5e+03	9
                        1	1	RC15_DZ	0	9
                        1	1	RC15_MAX	2e+03	9
                        1	1	RC15_MIN	1e+03	9
                        1	1	RC15_REV	1	9
                        1	1	RC15_TRIM	1.5e+03	9
                        1	1	RC16_DZ	0	9
                        1	1	RC16_MAX	2e+03	9
                        1	1	RC16_MIN	1e+03	9
                        1	1	RC16_REV	1	9
                        1	1	RC16_TRIM	1.5e+03	9
                        1	1	RC17_DZ	0	9
                        1	1	RC17_MAX	2e+03	9
                        1	1	RC17_MIN	1e+03	9
                        1	1	RC17_REV	1	9
                        1	1	RC17_TRIM	1.5e+03	9
                        1	1	RC18_DZ	0	9
                        1	1	RC18_MAX	2e+03	9
                        1	1	RC18_MIN	1e+03	9
                        1	1	RC18_REV	1	9
                        1	1	RC18_TRIM	1.5e+03	9
                        1	1	RC1_DZ	1e+01	9
                        1	1	RC1_MAX	2e+03	9
                        1	1	RC1_MIN	1001	9
                        1	1	RC1_REV	1	9
                        1	1	RC1_TRIM	1.5e+03	9
                        1	1	RC2_DZ	1e+01	9
                        1	1	RC2_MAX	2e+03	9
                        1	1	RC2_MIN	1001	9
                        1	1	RC2_REV	1	9
                        1	1	RC2_TRIM	1.5e+03	9
                        1	1	RC3_DZ	1e+01	9
                        1	1	RC3_MAX	2e+03	9
                        1	1	RC3_MIN	1001	9
                        1	1	RC3_REV	1	9
                        1	1	RC3_TRIM	1001	9
                        1	1	RC4_DZ	1e+01	9
                        1	1	RC4_MAX	2e+03	9
                        1	1	RC4_MIN	1001	9
                        1	1	RC4_REV	1	9
                        1	1	RC4_TRIM	1.5e+03	9
                        1	1	RC5_DZ	1e+01	9
                        1	1	RC5_MAX	1988	9
                        1	1	RC5_MIN	1011	9
                        1	1	RC5_REV	1	9
                        1	1	RC5_TRIM	1499	9
                        1	1	RC6_DZ	1e+01	9
                        1	1	RC6_MAX	1988	9
                        1	1	RC6_MIN	1011	9
                        1	1	RC6_REV	1	9
                        1	1	RC6_TRIM	1499	9
                        1	1	RC7_DZ	1e+01	9
                        1	1	RC7_MAX	1988	9
                        1	1	RC7_MIN	1011	9
                        1	1	RC7_REV	1	9
                        1	1	RC7_TRIM	1499	9
                        1	1	RC8_DZ	1e+01	9
                        1	1	RC8_MAX	1988	9
                        1	1	RC8_MIN	1011	9
                        1	1	RC8_REV	1	9
                        1	1	RC8_TRIM	1499	9
                        1	1	RC9_DZ	0	9
                        1	1	RC9_MAX	2e+03	9
                        1	1	RC9_MIN	1e+03	9
                        1	1	RC9_REV	1	9
                        1	1	RC9_TRIM	1.5e+03	9
                        1	1	RC_ARMSWITCH_TH	0.75	9
                        1	1	RC_CHAN_CNT	16	6
                        1	1	RC_CRSF_TEL_EN	1	6
                        1	1	RC_ENG_MOT_TH	0.75	9
                        1	1	RC_FAILS_THR	0	6
                        1	1	RC_GEAR_TH	0.75	9
                        1	1	RC_KILLSWITCH_TH	0.75	9
                        1	1	RC_LOITER_TH	0.75	9
                        1	1	RC_MAP_ACRO_SW	0	6
                        1	1	RC_MAP_ARM_SW	5	6
                        1	1	RC_MAP_AUX1	0	6
                        1	1	RC_MAP_AUX2	0	6
                        1	1	RC_MAP_AUX3	0	6
                        1	1	RC_MAP_AUX4	0	6
                        1	1	RC_MAP_AUX5	0	6
                        1	1	RC_MAP_AUX6	0	6
                        1	1	RC_MAP_ENG_MOT	0	6
                        1	1	RC_MAP_FAILSAFE	0	6
                        1	1	RC_MAP_FLAPS	0	6
                        1	1	RC_MAP_FLTMODE	8	6
                        1	1	RC_MAP_FLTM_BTN	0	6
                        1	1	RC_MAP_GEAR_SW	0	6
                        1	1	RC_MAP_KILL_SW	0	6
                        1	1	RC_MAP_LOITER_SW	0	6
                        1	1	RC_MAP_MAN_SW	0	6
                        1	1	RC_MAP_MODE_SW	0	6
                        1	1	RC_MAP_OFFB_SW	7	6
                        1	1	RC_MAP_PARAM1	0	6
                        1	1	RC_MAP_PARAM2	0	6
                        1	1	RC_MAP_PARAM3	0	6
                        1	1	RC_MAP_PITCH	2	6
                        1	1	RC_MAP_POSCTL_SW	0	6
                        1	1	RC_MAP_RATT_SW	0	6
                        1	1	RC_MAP_RETURN_SW	0	6
                        1	1	RC_MAP_ROLL	1	6
                        1	1	RC_MAP_STAB_SW	0	6
                        1	1	RC_MAP_THROTTLE	3	6
                        1	1	RC_MAP_TRANS_SW	0	6
                        1	1	RC_MAP_YAW	4	6
                        1	1	RC_OFFB_TH	0.75	9
                        1	1	RC_RETURN_TH	0.75	9
                        1	1	RC_TRANS_TH	0.75	9
                        1	1	RTL_CONE_ANG	45	6
                        1	1	RTL_DESCEND_ALT	1e+01	9
                        1	1	RTL_HDG_MD	0	6
                        1	1	RTL_LAND_DELAY	0	9
                        1	1	RTL_LOITER_RAD	8e+01	9
                        1	1	RTL_MIN_DIST	1e+01	9
                        1	1	RTL_PLD_MD	0	6
                        1	1	RTL_RETURN_ALT	3e+01	9
                        1	1	RTL_TIME_FACTOR	1.1	9
                        1	1	RTL_TIME_MARGIN	100	6
                        1	1	RTL_TYPE	0	6
                        1	1	SDLOG_BOOT_BAT	0	6
                        1	1	SDLOG_DIRS_MAX	0	6
                        1	1	SDLOG_MISSION	0	6
                        1	1	SDLOG_MODE	0	6
                        1	1	SDLOG_PROFILE	129	6
                        1	1	SDLOG_UTC_OFFSET	0	6
                        1	1	SDLOG_UUID	1	6
                        1	1	SENS_BARO_QNH	1013.25	9
                        1	1	SENS_BARO_RATE	2e+01	9
                        1	1	SENS_BOARD_ROT	0	6
                        1	1	SENS_BOARD_X_OFF	1.3035778	9
                        1	1	SENS_BOARD_Y_OFF	-0.52755773	9
                        1	1	SENS_BOARD_Z_OFF	0	9
                        1	1	SENS_DPRES_OFF	0	9
                        1	1	SENS_IMU_AUTOCAL	0	6
                        1	1	SENS_IMU_MODE	1	6
                        1	1	SENS_MAG_MODE	0	6
                        1	1	SENS_MAG_RATE	15	9
                        1	1	SENS_MAG_SIDES	0	6
                        1	1	SYS_AUTOCONFIG	0	6
                        1	1	SYS_AUTOSTART	4001	6
                        1	1	SYS_CAL_TDEL	24	6
                        1	1	SYS_CAL_TMAX	10	6
                        1	1	SYS_CAL_TMIN	5	6
                        1	1	SYS_FAC_CAL_MODE	0	6
                        1	1	SYS_FAILURE_EN	0	6
                        1	1	SYS_HAS_BARO	1	6
                        1	1	SYS_HAS_GPS	0	6
                        1	1	SYS_HAS_MAG	0	6
                        1	1	SYS_HAS_NUM_DIST	0	6
                        1	1	SYS_HITL	0	6
                        1	1	SYS_MC_EST_GROUP	2	6
                        1	1	SYS_RGB_MAXBRT	1	9
                        1	1	SYS_STCK_EN	1	6
                        1	1	SYS_VEHICLE_RESP	-0.4	9
                        1	1	TC_A_ENABLE	0	6
                        1	1	TC_B0_TREF	48.72	9
                        1	1	TC_B0_X0	5.313	9
                        1	1	TC_B0_X1	-5.2285	9
                        1	1	TC_B_ENABLE	0	6
                        1	1	TC_G_ENABLE	0	6
                        1	1	THR_MDL_FAC	0.8	9
                        1	1	TRIG_MODE	0	6
                        1	1	UAVCAN_ENABLE	0	6
                        1	1	VOXL_ESC_BAUD	2000000	6
                        1	1	VOXL_ESC_CMD	0	6
                        1	1	VOXL_ESC_CONFIG	1	6
                        1	1	VOXL_ESC_FUNC1	101	6
                        1	1	VOXL_ESC_FUNC2	104	6
                        1	1	VOXL_ESC_FUNC3	102	6
                        1	1	VOXL_ESC_FUNC4	103	6
                        1	1	VOXL_ESC_MODE	0	6
                        1	1	VOXL_ESC_PUB_BST	1	6
                        1	1	VOXL_ESC_PWR_MIN	0.05	9
                        1	1	VOXL_ESC_REV	0	6
                        1	1	VOXL_ESC_RPM_MAX	28000	6
                        1	1	VOXL_ESC_RPM_MIN	3000	6
                        1	1	VOXL_ESC_SDIR1	1	6
                        1	1	VOXL_ESC_SDIR2	1	6
                        1	1	VOXL_ESC_SDIR3	1	6
                        1	1	VOXL_ESC_SDIR4	1	6
                        1	1	VOXL_ESC_T_COSP	0.99	9
                        1	1	VOXL_ESC_T_DEAD	20	6
                        1	1	VOXL_ESC_T_EXPO	35	6
                        1	1	VOXL_ESC_T_MINF	0.15	9
                        1	1	VOXL_ESC_T_OVER	0	6
                        1	1	VOXL_ESC_T_PERC	90	6
                        1	1	VOXL_ESC_T_WARN	0	6
                        1	1	VOXL_ESC_VLOG	1	6
                        1	1	VTO_LOITER_ALT	8e+01	9
                        1	1	VT_B_DEC_MSS	2	9
                        1	1	WV_EN	0	6
                        1	1	WV_GAIN	1	9
                        1	1	WV_ROLL_MIN	1	9
                        1	1	WV_YRATE_MAX	9e+01	9
                        1	1	XRCE_DDS_DOM_ID	0	6
                        1	1	XRCE_DDS_KEY	1	6
                        
                        
                        1 Reply Last reply
                        0
                        • Eric KatzfeyE Offline
                          Eric KatzfeyE Offline
                          Eric Katzfey
                          ModalAI Team
                          wrote last edited by
                          #16

                          Could you post a log of the drone flip?

                          1 Reply Last reply
                          0

                          Hello! It looks like you're interested in this conversation, but you don't have an account yet.

                          Getting fed up of having to scroll through the same posts each visit? When you register for an account, you'll always come back to exactly where you were before, and choose to be notified of new replies (either via email, or push notification). You'll also be able to save bookmarks and upvote posts to show your appreciation to other community members.

                          With your input, this post could be even better 💗

                          Register Login
                          Reply
                          • Reply as topic
                          Log in to reply
                          • Oldest to Newest
                          • Newest to Oldest
                          • Most Votes


                          ModalAI
                          Categories Recent Tags ModalAI.com Docs
                          © 2026 ModalAI® · Accelerating autonomy for smaller, smarter, safer drones · Powered by NodeBB
                          • Login

                          • Don't have an account? Register

                          • Login or register to search.
                          • First post
                            Last post
                          0
                          • Categories
                          • Recent
                          • Tags
                          • Popular
                          • Users
                          • Groups