Skip to content

General Questions

2.2k Topics 11.3k Posts

Not sure where your question goes? Ask here. ModalAI engineers and the community answer questions about any VOXL product.

  • 0 Votes
    3 Posts
    587 Views
    R
    @Alex-Kushleyev thank you! It works now.
  • Flir Boson+ & IMX412 camera hookup on a VOXL 2 mini

    Unsolved
    2
    0 Votes
    2 Posts
    500 Views
    Alex KushleyevA
    @jonathankampia , yes IMX412 is supported on VOXL2 Mini J6 (either upper or lower). You can connect any two cameras to VOXL2 mini J6 using M0135 (double) or M0076 (single) adapter or for coax camera versions you can use M0155 (single) adapter. You would need to copy the correct sensormodule(s) to /usr/lib/camera/. see the following doc for help : https://docs.modalai.com/configure-cameras/#connect-a-new-camera Let me know if you need more details. Alex
  • How to stream sensor data from VOXL 2 to Unreal Engine?

    Unsolved
    2
    0 Votes
    2 Posts
    399 Views
    Eric KatzfeyE
    @Tyler-Scott The voxl-streamer application streams video via RTSP https://docs.modalai.com/voxl-streamer/
  • voxl-logger tflite

    Unsolved
    4
    0 Votes
    4 Posts
    943 Views
    T
    Hi @KnightHawk06. If you're looking for all the data stored in the ai_detection_t struct we've done it in the past by opening up a libmodal pipe to the tflite detection path defined like this: #define TFLITE_DETECTION_PATH (MODAL_PIPE_DEFAULT_BASE_DIR "tflite_data/") Let me know if that suits your needs and if you need help opening the pipe.
  • 0 Votes
    5 Posts
    2k Views
    Eric KatzfeyE
    @ashwin Unfortunately, Qualcomm does not allow others to distribute the Hexagon SDK. It has to come directly from them.
  • Yolov5 not working with HiRes Camera on VOXL2.

    Unsolved
    1
    0 Votes
    1 Posts
    293 Views
    No one has replied
  • Photogrammetric captures (esp. orthomosaics) with object avoidance

    Unsolved
    1
    0 Votes
    1 Posts
    285 Views
    No one has replied
  • Extrinsics and camera coordinate frames

    Unsolved
    1
    0 Votes
    1 Posts
    514 Views
    No one has replied
  • Servo actuation from VOXl 2 to flightcore V2

    Unsolved
    1
    0 Votes
    1 Posts
    294 Views
    No one has replied
  • Starling 2 Addons and more

    Unsolved
    2
    0 Votes
    2 Posts
    423 Views
    tomT
    @Daniel-Rincon The front and downward facing "tracking" cameras are used for VIO. The frontward and downward facing"hires" cameras are recommended for doing any sort of CV work. We don't supply a "shell" for the drone but have had customers do similar work
  • Training custom yolov8 model

    Unsolved
    2
    0 Votes
    2 Posts
    1k Views
    KnightHawk06K
    @KnightHawk06 ok, I think I found my problem, yolov8 doesn't support exporting with nms. Can a yolov5 model be exported and used on the voxl2? https://github.com/ultralytics/ultralytics/issues/10303
  • Integration of Hadron 640R w/ VOXL2 Flight Deck on Sentinel

    Unsolved
    5
    0 Votes
    5 Posts
    962 Views
    Alex KushleyevA
    @shawn_ricardo , The hardware configuration for your application should be as follows: J6 : tracking camera with either M0076 or M0135 interposer. Use J6L (lower camera port), which is the only port available on M0076 or JL port on M0135. This camera will be in HW Slot 0. J7 : Hadron, as described in the guide you already found. IR in HW slot 2, OV64B in slot 3 J8 : hires (any) camera. Use either M0076 or M0135. Use J8L (lower camea port). HW slot 4 note that J6U and J8U camera slots can only be used by the second stereo camera (in a stereo pair) due to custom I/O configuration that is default for VOXL2 varian 0 (which is what you have on Sentinel). If you want to swap tracking and hires camera locations, you can just swap all the instructions as well When connecting interposer and cameras, pay attention to pin1 orientaion, which is labeled on every camera connector, voxl2 connectors and interposers. In terms of software setup: back up (move) all sensormodule files from /usr/lib/camera/ copy the following sensormodule files that you will find in /usr/share/modalai/chi-cdk (i will assume that you are using imx214 hires camera): cp /usr/share/modalai/chi-cdk/ov7251/com.qti.sensormodule.ov7251_0.bin /usr/lib/camera/ cp /usr/share/modalai/chi-cdk/boson/com.qti.sensormodule.boson_2.bin /usr/lib/camera/ cp /usr/share/modalai/chi-cdk/ov64b40/com.qti.sensormodule.ov64b40_3.bin /usr/lib/camera/ cp /usr/share/modalai/chi-cdk/imx214/com.qti.sensormodule.imx214_4.bin /usr/lib/camera/ confirm the following are present in /usr/lib/camera/" com.qti.sensor.ov7251.so com.qti.sensor.ov64b40.so com.qti.sensor.boson.so com.qti.sensor.imx214.so Then, before updating /etc/modalai/voxl-camera-server.conf you can see if the cameras are detected: voxl-camera-server -l See output example here : https://docs.modalai.com/debugging-camera-issues/#checking-which-cameras-are-detected-by-camera-server https://docs.modalai.com/debugging-camera-issues/#sensor-id-to-sensor-type-mapping For camera server config, use the current config that you already have, wipe any cameras from it that are not tracking or hires. Then add the two camera entries for Hadron into your config, as shown here : https://docs.modalai.com/voxl2-hadron/#minimum-config . You will need to make sure the camera IDs specified in voxl-camera-server.conf are correct: 0: ov7251 1: boson 2: ov64b 3: imx214 At this point everything should work, once you get here, I can help you customize the video streams as you need. Alex
  • Missing Baro Calibration

    Unsolved
    2
    0 Votes
    2 Posts
    465 Views
    Eric KatzfeyE
    @Kory4Drone Barometer temperature calibration is optional, but in some cases it can improve performance. You can run the barometer temperature calibration directly from the command line on VOXL 2: baro_temp_cal. Or you can run it from voxl-portal.
  • Low feature indoor only flight

    Unsolved
    1
    0 Votes
    1 Posts
    323 Views
    No one has replied
  • Starling 2 Max GPS Issue

    Unsolved
    2
    0 Votes
    2 Posts
    854 Views
    Alex KushleyevA
    Hello @RyanH , The GPS interference work is still ongoing. Currently, the solution that works is elevating the GPS using a mast with some shielding right under the mast, as described in the thread you referenced. We recently added a feature to voxl-portal to allow you to see the individual satellite signal strengths in order to help with debugging the signal quality. The GPS page can be located under the Debug section of voxl-portal, you should get the recent nightly build of voxl-portal in order to try it. [image: 1747143966102-voxl-portal-gps-satellite-signal.jpg] Elevating the GPS receiver by about 4 inches with shielding has shown to completely eliminate the interference, but you will also need an extended cable that plugs between the GPS receiver and VOXL2. If you need more details about the workaround, I can prepare better documentation and I'll see if we can have replacement cables or extensions available to make the electrical connection easier. Alex
  • Camera specific tuning files and parsing binaries for fine-tuning

    Unsolved
    3
    0 Votes
    3 Posts
    1k Views
    Alex KushleyevA
    Hi @IlkkaN , The com.qti.tuned.imx412_fpv.bin tuning file was created in attempt to remove some of processing in order to reduce delay and tweak / reduce de-noise / smoothing. I believe the starting point was com.qti.tuned.cmk_imx577.bin which was provided by Qualcomm (you may be able to find that one). IMX577 and IMX412 are nearly identical cameras. We do not have a tuning file for IMX678 and currently the tuning file name is not specified in the IMX678 sensormodules, which means that com.qti.tuned.default.bin will be used. The default tuning file is the fallback in case the tuning file name specified in the sensormodule file is not found. The default tuning file is not tuned for any specific camera and should be used with caution :). If you want to confirm which tuning file is used by each camera / sensormodule, you can check this the following way: add to /vendor/etc/camera/camxoverridesettings.txt: logInfoMask=0x20000 then run logcat | grep -i tuning and then start voxl-camera-server, you should see output like this: 03-30 01:57:45.256 2705 2705 I CamX : [ INFO][HWL ] camxhwenvironment.cpp:1762 CreateTuningDataManager() Enter : sensor index: 0, sensor name: cmk_imx577, chromatix name: cmk_imx577 03-30 01:57:45.256 2705 2705 I CamX : [ INFO][HWL ] camxhwenvironment.cpp:1798 CreateTuningDataManager() Searching regular tuning file 03-30 01:57:45.262 2705 2705 I CamX : [ INFO][HWL ] camxhwenvironment.cpp:1839 CreateTuningDataManager() Loaded tuning file: /usr/lib/camera/com.qti.tuned.cmk_imx577.bin for sensor index: 0 03-30 01:57:45.301 2705 2705 I CamX : [ INFO][HWL ] camxhwenvironment.cpp:1762 CreateTuningDataManager() Enter : sensor index: 1, sensor name: ar0144, chromatix name: onsemi_ar0144 03-30 01:57:45.301 2705 2705 I CamX : [ INFO][HWL ] camxhwenvironment.cpp:1798 CreateTuningDataManager() Searching regular tuning file 03-30 01:57:45.310 2705 2705 I CamX : [ INFO][HWL ] camxhwenvironment.cpp:1839 CreateTuningDataManager() Loaded tuning file: /usr/lib/camera/com.qti.tuned.onsemi_ar0144.bin for sensor index: 1 Our approach is currently not to heavily rely on the ISP tuning, instead we are building our own light-weight image processing pipeline, called MISP, which does processing on the GPU (from RAW bayer frames). MISP also allows us to create up to 6 high resolution color video pipelines, as opposed to the limit of 2 cameras (in video mode) supported by Spectra480 ISP, since it has two separate full VFEs. By using MISP, we have full control over the algorithms that are running and we can easily share details with the customers. However, MISP definitely lacks many features that are present in the hardware ISP. Please let me know if you have any other questions. Alex
  • Consistent Starling VIO failures

    Unsolved
    1
    0 Votes
    1 Posts
    373 Views
    No one has replied
  • Interacting with apps proc i2c (j7) with camera also plugged in

    Unsolved
    1
    0 Votes
    1 Posts
    330 Views
    No one has replied
  • Camera config for M00015 stereo camera only

    Unsolved
    5
    0 Votes
    5 Posts
    702 Views
    KnightHawk06K
    @tom Is there a configuration for ov7251 stereo and IMX678 (MDK-M0061-2-06)? I don't see any config for the IMX678? https://www.modalai.com/products/mdk-m0061-2?variant=44563858850096 01 - ov7251 tracking ov7251 stereo 02 - ov7251 tracking 03 - ov7251 tracking ov7251 stereo imx214 hires 04 - ov7251 tracking imx214 hires 05 - pmd-tof ov7251 tracking 06 - D0005 Starling pmd-tof imx214 hires ov7251 tracking 08 - imx214 09 - pmd-tof 10 - ov7251 stereo 11 - D0006 Sentinel 12 - ov9782 stereo 13 - ov9782 stereo imx214 hires 14 - ov9782 stereo pmd-tof ov7251 tracking (copy) 15 - D0008 dual 9782 tracking 16 - pmd-tof ov7251 dual tracking imx214 hires 17 - D0010 pmd-tof imx412 hires ov7251 tracking ov9782 stereo 18 - D0008 triple ov9782 19 - D0005 without tof imx214 hires ov7251 tracking 20 - D0011 imx412 hires ar0144 tracking 21 - old C6 23 - D0010 without stereo 24 - pmd-tof LIOW2 (new TOF) 25 - dual ar0144 31 - D0013 Prototype M0135 dual ar0144 32 - D0008 triple ov9782 rotated C - use user-defined custom camera config in (/data/modalai/custom_camera_config.txt) q - Quit The Wizard
  • Modifying frames with OpenCV before writing to encoded video file

    Unsolved
    2
    0 Votes
    2 Posts
    426 Views
    V
    It seems that a similar functionality has been shown in an experimental python branch: https://gitlab.com/voxl-public/voxl-sdk/utilities/voxl-mpa-tools/-/blob/pympa-experimental/tools/python/pympa-resize.py. Is this a recommended way to go about this (if so, how do I get these libraries and their C-bindings onto my voxl2) or is there an easier approach?