ModalAI Forum
    • Categories
    • Recent
    • Tags
    • Popular
    • Users
    • Groups
    • Register
    • Login
    1. Home
    2. Popular
    Log in to post
    • All Time
    • Day
    • Week
    • Month
    • All Topics
    • New Topics
    • Watched Topics
    • Unreplied Topics
    • All categories
    • Rowan DempsterR

      Minimizing voxl-camera-server CPU usage in SDK1.6

      Video and Image Sensors
      • • • Rowan Dempster
      26
      0
      Votes
      26
      Posts
      505
      Views

      Rowan DempsterR

      @Alex-Kushleyev Sounds good! I did not make any changes since the revisions you shared 5 days ago.

    • M

      tracking down pipe switching to images of traccking front camera

      Video and Image Sensors
      • • • mark
      14
      0
      Votes
      14
      Posts
      322
      Views

      Alex KushleyevA

      Hi @mark ,

      Thank you for the update. We will keep investigating the underlying issue that was a result of that questionable camera.

      Meanwhile, if you think that the camera is defective and has no damage, you can fill out an RMA request and send it back for an exchange. I cant really comment on what could be causing this on the camera itself (it would be interesting to try it), but the camera is not serviceable by the user.

      https://www.modalai.com/pages/rma

      Alex

    • Nitin Varma VegesnaN

      Preflight Fail: Compass Sensor 0 missing

      Starling & Starling 2
      • • • Nitin Varma Vegesna
      9
      0
      Votes
      9
      Posts
      150
      Views

      Eric KatzfeyE

      @Nitin-Varma-Vegesna If you are just flying in manual or altitude hold modes then those shouldn't be an issue.

    • Tanner MetzmeierT

      Python Programmatic GStreamer Access for Hardware Encoded Acceleration and Low Latency

      Ask your questions right here!
      • python voxl2 • • Tanner Metzmeier
      9
      0
      Votes
      9
      Posts
      205
      Views

      Alex KushleyevA

      Hi @joseph-vale , i tested the python script from FLIR help site (Radiometry.py). I just had to modify it to use the correct USB and Video devices. The script ran find, but since my Boson does not support radiometric output, the reported temperature was like 70 degrees colder than it should be (reporting -50C at room temperature). Are you able to get correct temperatures with your device using this script?

      As i mentioned before, there is a way of getting the image data from voxl-camera-server into python. I think it would be interesting to try running the same exact conversion and annotation code from the FLIR example. This would allow you to first check the temperatures using a USB connection and then check them using the VOXL2 pipeline.

      I am going to set up an example that that uses pympa (python wrapper for MPA) to get the 16bit data from Boson and plot + convert it to temperature using the reference code.

      Alex

    • A

      Using a GPS through SPI

      Ask your questions right here!
      • • • alan123
      8
      0
      Votes
      8
      Posts
      105
      Views

      Eric KatzfeyE

      @alan123 Are you starting voxl-px4 from the command line (e.g. voxl-px4 -d) or is it starting automatically from a systemd service file on startup. If you have started it from the command line you can enter commands from the px4 shell. So, after the script is done, you can enter gps status to see that the driver is doing. If the driver hasn't been started, try starting it directly from the command line.

    • Muqing CaoM

      Starling 2 max no odometry even with qvio enabled

      Ask your questions right here!
      • • • Muqing Cao
      8
      0
      Votes
      8
      Posts
      128
      Views

      Muqing CaoM

      @Zachary-Lowell-0 after turning off open-vins and rebooting it works. thanks!

    • S

      No detections when running custom YOLOv8 model on voxl-tflite-server

      VOXL 2
      • • • svempati
      8
      0
      Votes
      8
      Posts
      129
      Views

      S

      @Zachary-Lowell-0 Got it, I will try that out and will let you know if I have any more questions. Thanks for your help!

    • S

      Flir Boson+ Application v4.2 install file not available anymore - does anyone have it please?

      Ask your questions right here!
      • • • simiken1234
      6
      1
      Votes
      6
      Posts
      130
      Views

      S

      @Alex-Kushleyev
      Thank you very much for your reply!

      We bought the USB C adapter from Flir and followed your guide to enable MIPI. Now it works and I can get the video from the Boson over MIPI.

      Thanks for your help!

    • YUUJI INOUEY

      Persistent PX4 Sensor/Accel Failure on Stinger (D0013) with SDK 1.6.2 + Dev IMU/OV Servers

      Ask your questions right here!
      • • • YUUJI INOUE
      5
      0
      Votes
      5
      Posts
      78
      Views

      Eric KatzfeyE

      @YUUJI-INOUE I'm very confused by the voxl-px4.log file you attached. It is filled with a bunch of -- Reboot -- lines. Where do those lines come from? How did you generate voxl-px4.log? The only Accel #0 fail: TIMEOUT! I see is after a shutdown command has been issued to PX4. The Command failed is normal. The startup script attempts to do some auto-configuration by looking for devices that may not be attached to the drone and will produce those messages. Same with the i2c probe failed messages. The fact that you can fly in manual mode means that the IMU is fine.

    • Nitin Varma VegesnaN

      GPS for Starling2

      VOXL Accessories
      • • • Nitin Varma Vegesna
      5
      0
      Votes
      5
      Posts
      93
      Views

      Nitin Varma VegesnaN

      @Zachary-Lowell-0 thanks.

    • R

      Different package version from voxl-cross and Voxl2

      Ask your questions right here!
      • • • remill
      5
      0
      Votes
      5
      Posts
      100
      Views

      R

      @Eric-Katzfey
      Thanks Eric, building directly on the Voxl2 platform works.

    • Rowan DempsterR

      Migrating from QVIO to OpenVINS (SDK1.6)

      GPS-denied Navigation (VIO)
      • • • Rowan Dempster
      5
      0
      Votes
      5
      Posts
      221
      Views

      zauberflote1Z

      To clarify, our current platforms are shipped with voxl-open-vins-server as the default VINS solution; however, QVIO is still available (SDK 1.6.2).

    • H

      Starling2 :One motor fails when changing power from AC/DC adapter to battery

      Starling & Starling 2
      • • • HsinSWT
      4
      0
      Votes
      4
      Posts
      45
      Views

      Alex KushleyevA

      Hello @HsinSWT ,

      When i see results like this, i would say there is probably 90% chance that the motor is bad. Unfortunately, there is a chance that the ESC is bad as well, and there is no good way to check the ESC without a known good motor (however the ESC failure is unlikely).

      As I mentioned in the previous post, if you had a milli-ohm meter, you could test the motor winding resistance to confirm whether the motor is good or bad. A tool like that measures resistance with high precision (similar to a regular Ohm meter). However, if you don't have one, it may not be worth buying it..

      You will not be able to measure the winding resistance of these motors correctly with a regular Ohm meter. However, you will be able to detect a complete open circuit (which could be the case, maybe worth trying). If testing resistance using a regular Ohm meter, any two connections between the 3 motor phases will read 0 ohm (or close to that). If a wire is broken, then you can detect it.

      The Starling 2 motor (3000kV) has around 0.360 - 0.370 Ohm phase-to-phase winding resistance.

      In order to confirm that the ESC is working properly, you could temporarily connect one of the working motors to the ESC Channel 0 and do the same spin test (using voxl-esc tools), just to confirm that the ESC Channel 0 is working fine.

      In order to fix the issue, you could order a new motor and replace it yourself (will be a lot cheaper): https://www.modalai.com/products/starling-2-replacement-parts?variant=49707605393712

      You could also send the whole drone back for repair (https://www.modalai.com/rma)

      Alex

    • YUUJI INOUEY

      Critical VIO Instability and Calibration Failure on Stinger (D0013) with Brand New VOXL 2 Mini

      Ask your questions right here!
      • • • YUUJI INOUE
      4
      0
      Votes
      4
      Posts
      75
      Views

      YUUJI INOUEY

      @YUUJI-INOUE
      This is the setup I did for stable operation, please let me know if there are any mistakes.

      Stinger (VOXL 2 Mini) VIO Setup Guide

      This document provides instructions for setting up a stable VIO (Visual Inertial Odometry) environment on the ModalAI Stinger (equipped with VOXL 2 Mini).
      It focuses on SDK version selection and correct configuration commands for the D0013 build to ensure reliable autonomous flight.

      1. Prerequisites Drone: ModalAI Stinger (VOXL 2 Mini) Configuration ID: D0013 (Stinger V2) PC Environment: Linux/Ubuntu with ADB (Android Debug Bridge) installed Network: Internet connection required for the drone (via Wi-Fi) for apt-get operations 2. SDK Version Check and Installation

      IMPORTANT: Development versions (Alpha/Beta) of the SDK may cause unstable VIO behavior. It is strongly recommended to use the Stable SDK 1.6.2.

      2.1 Check Current Version

      Connect to VOXL via ADB and check the version:

      adb shell voxl-version # OR adb shell apt-cache policy voxl-suite

      If you see versions like 1.6.3~alpha, you must downgrade.

      2.2 Install SDK 1.6.2

      Force install the stable version:

      # Run inside VOXL shell or via adb shell adb shell "DEBIAN_FRONTEND=noninteractive apt-get install -y voxl-suite=1.6.2" 2.3 Install Required Libraries

      To fix dependency issues with OpenVINS in SDK 1.6.2, install the voxl-ceres-solver library (libceres.so.2😞

      adb shell "apt-get install -y voxl-ceres-solver"

      Note: Without this, voxl-open-vins-server will fail to start.

      3. Factory Reset and Configuration

      Apply the correct presets for Stinger (D0013). Using these commands is more reliable than manual configuration.

      3.1 Configure Extrinsics

      Load the camera and IMU geometry for Stinger V2 (D0013).

      adb shell "voxl-configure-extrinsics D0013_Stinger_V2" 3.2 Configure Vision Hub

      Configure how VIO data is sent to PX4 using the Stinger-specific preset.

      adb shell "voxl-configure-vision-hub factory_enable_vfc_pos_back_flow_d0013" 3.3 Configure OpenVINS

      Reset the VIO server configuration.

      adb shell "voxl-configure-open-vins factory_enable" 3.4 Configure PX4 Parameters

      Load optimized PID gains and flight parameters for Stinger (D0013).

      adb shell "voxl-configure-px4-params -n -p MRB-D0013" 3.5 Enable VIO (Official Helper)

      Load the official parameter helper file for indoor VIO flight without GPS.

      adb shell "voxl-configure-px4-params -n -f /usr/share/modalai/px4_params/v1.14/EKF2_helpers/indoor_vio_missing_gps.params" 3.6 Configure ESCs

      Upload Stinger-specific ESC parameters.

      adb shell "/usr/bin/voxl-esc setup_d0013"

      If you encounter invalid option errors, use the manual python script method:

      adb shell "systemctl stop voxl-px4 && cd /usr/share/modalai/voxl-esc-tools/ && python3 voxl-esc-upload-params.py --params-file ../voxl-esc-params/D0013/lumenier_2305_2400kv_GF_D90_4S.xml && systemctl start voxl-px4" 3.7 Change ESC Mode (Critical)

      Change ESC control from RPM mode (default) to Power mode to ensure reliable motor startup.

      adb shell "px4-param set VOXL_ESC_MODE 0" 3.8 Motor Test

      WARNING: REMOVE PROPELLERS BEFORE TESTING

      Spin Motor 0 (Front Right) for 2 seconds to verify ESC communication.

      adb shell "systemctl stop voxl-px4" adb shell "cd /usr/share/modalai/voxl-esc-tools/ && python3 voxl-esc-spin.py --id 0 --power 15 --timeout 2 --skip-prompt True" adb shell "systemctl start voxl-px4" 4. Advanced Optimization (Critical for Stability) 4.1 OpenVINS Optimization (Stinger Specific)

      To prevent data corruption and initialization errors on Stinger (D0013):

      Disable imu_body_frame_mode. Change configuration folder to fpv. adb shell "sed -i 's/\"imu_body_frame_mode\":\ttrue/\"imu_body_frame_mode\":\tfalse/' /etc/modalai/voxl-open-vins-server.conf" adb shell "sed -i 's/starling2/fpv/g' /etc/modalai/voxl-open-vins-server.conf" 4.2 Stabilize Connection After Reboot

      Prevent voxl-vision-hub from starting before voxl-open-vins-server is ready by adding a 10-second delay.

      Edit /etc/systemd/system/voxl-vision-hub.service:

      adb shell "sed -i 's/After=voxl-wait-for-fs.service/After=voxl-wait-for-fs.service voxl-open-vins-server.service/' /etc/systemd/system/voxl-vision-hub.service" adb shell "sed -i '/ExecStart=\/usr\/bin\/voxl-vision-hub/i ExecStartPre=\/bin\/sleep 10' /etc/systemd/system/voxl-vision-hub.service" 4.3 IMU Calibration

      If VIO is unstable or the Web Portal Health Check shows "IMU Calibration Missing", perform calibration:

      adb shell "voxl-calibrate-imu"

      Follow the on-screen instructions to place the drone in 6 orientations.

      5. Apply Changes and Reboot

      After applying all settings, reboot the drone. A hard power cycle (unplug battery) is recommended to ensure all sensors reset correctly.

      adb shell reboot 6. Verification 6.1 Check Services adb shell voxl-inspect-services

      Ensure voxl-open-vins-server, voxl-vision-hub, and voxl-px4 are Running.

      6.2 Check VIO in VOXL Portal

      Access the VOXL Portal (via IP address) and check the VIO (3D View):

      Orientation: Does the drone in the view verify Pitch/Roll/Yaw movements correctly? Position: Does the drone stay still in the view when the physical drone is stationary? (No drifting/divergence) 6.3 Check QGroundControl (QGC) Local Position: Is the drone icon visible on the map? Position Mode: Switch flight mode to Position. It should say "Ready to fly" or "Position mode enabled" (not "Rejected"). If you can enter Position mode without GPS, VIO is working. 7. Operational Best Practices Power On: After plugging in the battery, leave the drone static on a level surface for ~30 seconds. This allows the gyro to calibrate biases and services to start. Initialize VIO: Pick up the drone and move it in a large figure-8 motion to excite the IMU and cameras. Pre-flight Check: Do not take off until you can successfully switch to Position mode in QGC. Note: If initialization fails (rarely), perform a reboot. 8. Troubleshooting

      Q. Cannot enter Position Mode on the ground ("Not Ready")
      A. Check the following:

      Run voxl-inspect-pose vvhub_body_wrt_local to see if VIO data is streaming. If no data, perform a hard reboot (battery pull) to fix timestamp sync issues. Set en_voa to false in voxl-vision-hub.conf to disable obstacle avoidance (can cause extrinsics errors). Ensure vio_pipe is set to ov.
    • M

      Legacy Documentation for VOXL-Flight Deck (EOL) - Indoor Flight, VIO & Auto-Navigation

      VOXL Flight Deck
      • • • minhthinh
      4
      0
      Votes
      4
      Posts
      74
      Views

      Robbie McCueR

      @minhthinh Documentation for the original VOXL Flight can be found here. The guide will link back to the original VOXL and the original Flight Core as those are the boards it was built around. You can also refer to the release notes of the previous sdks to see what was available in the specific release that you are using

    • voxltesterV

      VOXL2 J19 QUP3

      Ask your questions right here!
      • • • voxltester
      4
      0
      Votes
      4
      Posts
      44
      Views

      Eric KatzfeyE

      @voxltester I would try qshell lightware_laser_i2c start -b 4

    • voxltesterV

      VOXL2 Time

      Ask your questions right here!
      • • • voxltester
      4
      0
      Votes
      4
      Posts
      95
      Views

      Eric KatzfeyE

      @voxltester Only if it is connected to a GCS that sends the Mavlink SYSTEM_TIME message.

    • Rowan DempsterR

      Running QVIO on a hires camera

      GPS-denied Navigation (VIO)
      • • • Rowan Dempster
      4
      0
      Votes
      4
      Posts
      101
      Views

      Alex KushleyevA

      @Rowan-Dempster , you should use a monochrome stream (_grey), since QVIO needs a RAW8 image.

      If you are not using MISP on hires cameras, that is fine, you can start off using the output of the ISP.

      You should calibrate the camera using whatever resolution you decide to try. This is to avoid any confusion, since if you using ISP pipeline, the camera pipeline may select a higher resolution and downscale + crop. So whenever you are changing resolutions, it is always good to do a quick camera calibration to confirm the camera parameters.

      When using MISP, we have more control over which camera mode is selected, because MISP gets the RAW data, not processed by the ISP, so we know the exact dimensions of the image sent from camera.

      Alex

    • T

      Camera Calibration issues

      Support Request Format for Best Results
      • • • taiwohazeez
      4
      0
      Votes
      4
      Posts
      122
      Views

      Alex KushleyevA

      Hello @taiwohazeez ,

      Thank you for sending updated images.

      Just for sanity checking, please double check that the other tracking camera on your drone is in focus and does not have this issue.. (i assume that is true).

      To me, it definitely looks likes either

      damaged or dirty lens on the external lens surface damaged or dirty lens on the internal lens surface (the back surface of the lens) dirty surface of the camera sensor itself (inside the camera module)

      If you are comfortable with unscrewing the lens completely and wiping it (front and back) with a new microfiber cloth (preferably long strand) and screw it back again to check if there is any improvement. Also, once you remove the lens, you can take a look at the sensor itself, any dirt or smudges should be very easy to detect because the surface of the camera sensor is very reflective and should be perfectly clean. I can't recommend cleaning the sensor itself on your own, since that would involve inserting something inside the camera module, which could lead to damage. Please dont keep the lens out of the lens holder for a long time (hours) as dust or dirt may get inside on the surface of the sensor (do not perform this procedure in a dusty environment).

      Please reach out to https://www.modalai.com/pages/rma if you need further help to get this fixed / replaced.

      Alex

    • C

      Running M0166 on VOXL 2

      Ask your questions right here!
      • • • cbay
      4
      0
      Votes
      4
      Posts
      105
      Views

      Alex KushleyevA

      @cbay ,

      We support any camera that is compatible with UVC (plugged into a usb port). Please look into voxl-uvc-server. https://docs.modalai.com/voxl-uvc-server/

      Regarding NIR, have you considered using a regular camera (most cameras are sensitive to NIR) and install a lens with a NIR pass filter (if you dont want to see visible light)? Then you could use one of our hi-res cameras like IMX412 or IMX664. I can get you spectral response plot of those sensors if you need.

      Alex