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

ModalAI Forum

  1. ModalAI Support Forum
  2. General Questions
  3. VOXL2 + VOXL ESC FPV 4-in-1, voxl-suite 1.6.3 — battery_status never published

VOXL2 + VOXL ESC FPV 4-in-1, voxl-suite 1.6.3 — battery_status never published

Scheduled Pinned Locked Moved Solved General Questions
27 Posts 3 Posters 1.0k Views 3 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.
  • Eric KatzfeyE Offline
    Eric KatzfeyE Offline
    Eric Katzfey
    ModalAI Team
    wrote on last edited by Eric Katzfey
    #21

    This is what Codex says:

    The root cause is a PX4 source-enum bug, not the ESC, baud rate, or VOXL_ESC_PUB_BST.
    
      - The supplied parameters select BAT1_SOURCE=2, meaning “ESCs”: /home/modalai/development/log_debug/no-batt-status/
        vehicle.params:5.
    
      - But voxl_esc constructs its battery object as BATTERY_SOURCE_POWER_MODULE (0): src/drivers/actuators/voxl_esc/
        voxl_esc.cpp:51.
    
      - The battery library publishes only when the driver’s source equals BAT1_SOURCE: src/lib/battery/battery.cpp:172.
      - Therefore 0 != 2, and every battery report is silently suppressed.
    
      This matches all the evidence:
    
      - VOXL_ESC_PUB_BST=1.
      - All four M0138 channels, including current-sensing ID 2, communicate at 2 Mbaud: /home/modalai/development/log_debug/no-
        batt-status/output.txt:279.
    
      - The flight log contains 232,935 healthy esc_status samples but no battery_status.
      - The forum test showed ID 2 reporting BOARD_VOLTAGE and BOARD_CURRENT, proving the ESC produces the special telemetry
        packet. This is the expected M0138 behavior documented in the ModalAI ESC FAQ (https://docs.modalai.com/voxl-escs/faq/).
    
      The proper code fix is one line:
    
      _battery(1, nullptr, _battery_report_interval,
               battery_status_s::BATTERY_SOURCE_ESCS)
    
      As an immediate workaround with the existing binary, set BAT1_SOURCE to Power Module (0), leave POWER_MANAGER=none, restart
      voxl-px4, and check:
    
      px4-listener battery_status 5
    
      That should publish, although the resulting topic will incorrectly identify its source as a power module. The one-line source
      change is the permanent fix.
    

    Can you try setting that parameter and see if it works?

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

      I think you need to keep BAT1_SOURCE set to 0.

      1 Reply Last reply
      0
      • nickanickN Offline
        nickanickN Offline
        nickanick
        Contributor
        wrote on last edited by
        #23

        BAT1_SOURCE set to POWER MODULE in QGC fixed the problem.

        TOPIC: battery_status
        battery_status
        timestamp: 332496007 (0.011529 seconds ago)
        voltage_v: 23.70500
        voltage_filtered_v: 23.70641
        current_a: -0.08000
        current_filtered_a: -0.07003
        current_average_a: 15.00000
        discharged_mah: 0.00138
        remaining: 0.70196
        scale: 1.04008
        time_remaining_s: 673.87732
        temperature: nan
        voltage_cell_v: [0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000]
        max_cell_voltage_delta: 0.00000
        custom_faults: 0
        average_power: 0.00000
        available_energy: 0.00000
        full_charge_capacity_wh: 0.00000
        remaining_capacity_wh: 0.00000
        design_capacity: 0.00000
        nominal_voltage: 0.00000
        capacity: 4000
        cycle_count: 0
        average_time_to_empty: 0
        serial_number: 0
        manufacture_date: 0
        state_of_health: 0
        max_error: 0
        interface_error: 0
        faults: 0
        average_time_to_full: 0
        over_discharge_count: 0
        connected: True
        cell_count: 6
        source: 0
        priority: 0
        id: 1
        is_powering_off: False
        is_required: False
        warning: 0
        mode: 0

        1 Reply Last reply
        0
        • nickanickN Offline
          nickanickN Offline
          nickanick
          Contributor
          wrote on last edited by
          #24

          Thanks for your help

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

            @nickanick ,

            Now that the main issue is resolved.. i am confused why the following test command did not work for you :

            ./voxl-esc-spin.py --id 255 --power 0
            

            The screenshot you posted had the command cut off -- are you sure you used the correct command? 255 is a special value that should spin all 4 ESCs: https://gitlab.com/voxl-public/voxl-sdk/utilities/voxl-esc/-/blob/dev/voxl-esc-tools/voxl-esc-spin.py?ref_type=heads#L190

            Can you check if the voxl-esc-spin.py script on your VOXL2 is the same as this file?

            Thanks!

            Alex

            1 Reply Last reply
            0
            • nickanickN Offline
              nickanickN Offline
              nickanick
              Contributor
              wrote on last edited by
              #26

              That's weird. It's working now:

              voxl2-test-fixture (TF-M0054):/usr/share/modalai/voxl-esc-tools$ ./voxl-esc-spin.py --id 255 --power 0
              Detected Python version : 3.6.9 (default, May 22 2025, 20:54:22)
              [GCC 8.4.0]
              Found voxl-esc tools bin version: 1.9
              VOXL Platform: M0054
              Detected RB5 Flight, VOXL2 M0054 or M0104!
              INFO: Scanning for ESC firmware: /dev/slpi-uart-2, baud: 2000000
              Sending library name request: libslpi_qrb5165_io.so
              Sending initialization request
              INFO: ESC(s) detected on port: /dev/slpi-uart-2, baud rate: 2000000
              ID : 0
              Board : version 42: ModalAi 4-in-1 ESC (M0138-1)
              UID : 0x203837304848570400480052
              Firmware : version 39, hash a58f5f6f
              Bootloader : version 187, hash aad89d63

              ID         : 1
              Board      : version 42: ModalAi 4-in-1 ESC (M0138-1)
              UID        : 0x203837304848570400490045
              Firmware   : version   39, hash a58f5f6f
              Bootloader : version  187, hash aad89d63
              
              ID         : 2
              Board      : version 42: ModalAi 4-in-1 ESC (M0138-1)
              UID        : 0x20383730484857040029004D
              Firmware   : version   39, hash a58f5f6f
              Bootloader : version  187, hash aad89d63
              
              ID         : 3
              Board      : version 42: ModalAi 4-in-1 ESC (M0138-1)
              UID        : 0x20383730484857040029004E
              Firmware   : version   39, hash a58f5f6f
              Bootloader : version  187, hash aad89d63
              

              WARNING:
              This test requires motors to spin at high speeds with
              propellers attached. Please ensure that appropriate
              protective equipment is being worn at all times and
              that the motor and propeller are adequately isolated
              from all persons.

              For best results, please perform this test at the
              nominal voltage for the battery used.

              Type "Yes" to continue: yes
              [0.017] (0) RPM: 0, PWR: 0, VOLTAGE: 0.000V, TEMPERATURE: 0.00C, CURRENT: 0.000A
              [0.017] (1) RPM: 0, PWR: 0, VOLTAGE: 23.647V, TEMPERATURE: 37.39C, CURRENT: 0.000A
              [0.017] (2) RPM: 0, PWR: 0, VOLTAGE: 0.000V, TEMPERATURE: 0.00C, CURRENT: 0.000A
              [0.017] (3) RPM: 0, PWR: 0, VOLTAGE: 0.000V, TEMPERATURE: 0.00C, CURRENT: 0.000A
              [0.035] (0) RPM: 0, PWR: 0, VOLTAGE: 0.000V, TEMPERATURE: 0.00C, CURRENT: 0.000A, BOARD_VOLTAGE: 23.654V, BOARD_CURRENT: 0.016A
              [0.035] (1) RPM: 0, PWR: 0, VOLTAGE: 23.647V, TEMPERATURE: 37.39C, CURRENT: 0.000A, BOARD_VOLTAGE: 23.654V, BOARD_CURRENT: 0.016A
              [0.035] (2) RPM: 0, PWR: 0, VOLTAGE: 23.654V, TEMPERATURE: 37.97C, CURRENT: 0.000A, BOARD_VOLTAGE: 23.654V, BOARD_CURRENT: 0.016A
              [0.035] (3) RPM: 0, PWR: 0, VOLTAGE: 0.000V, TEMPERATURE: 0.00C, CURRENT: 0.000A, BOARD_VOLTAGE: 23.654V, BOARD_CURRENT: 0.016A
              [0.058] (0) RPM: 0, PWR: 0, VOLTAGE: 23.652V, TEMPERATURE: 31.38C, CURRENT: 0.000A, BOARD_VOLTAGE: 23.654V, BOARD_CURRENT: 0.016A
              [0.058] (1) RPM: 0, PWR: 0, VOLTAGE: 23.647V, TEMPERATURE: 37.39C, CURRENT: 0.000A, BOARD_VOLTAGE: 23.654V, BOARD_CURRENT: 0.016A
              [0.058] (2) RPM: 0, PWR: 0, VOLTAGE: 23.654V, TEMPERATURE: 37.97C, CURRENT: 0.000A, BOARD_VOLTAGE: 23.654V, BOARD_CURRENT: 0.016A
              [0.058] (3) RPM: 0, PWR: 0, VOLTAGE: 23.593V, TEMPERATURE: 31.06C, CURRENT: 0.000A, BOARD_VOLTAGE: 23.654V, BOARD_CURRENT: 0.016A
              [0.074] (0) RPM: 0, PWR: 0, VOLTAGE: 23.652V, TEMPERATURE: 31.38C, CURRENT: 0.000A, BOARD_VOLTAGE: 23.656V, BOARD_CURRENT: -0.104A

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

                OK, thanks for checking. maybe there was a typo before

                1 Reply Last reply
                0
                • Alex KushleyevA Alex Kushleyev has marked this topic as solved

                Reading along? Create a free ModalAI Forum account to join in.

                With an account you can reply, ask your own question, get an email when a ModalAI engineer answers, and mark the reply that solved it. Your place in each thread is saved between visits.

                Questions about VOXL, Flight Core, ESCs and ModalAI drones are answered here by the engineers who build them.

                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