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

      Camera server: Preview stream stops when Large video activated

      Video and Image Sensors
      • • • Rowan Dempster
      8
      0
      Votes
      8
      Posts
      81
      Views

      Alex KushleyevA

      Hi @Rowan-Dempster , I actually tried this branch with both sources for roi (preview and large video stream). It seems to work fine.

      I did notice that there is a bug where we were not setting the frame id, this needs to be added right here : https://gitlab.com/voxl-public/voxl-sdk/services/voxl-camera-server/-/blob/feature-add-c2d-select-roi-src/src/hal3_camera_mgr.cpp#L1341

      roi_meta.frame_id = meta.frame_id;

      So, please try the code in the branch (with frame id fix) with different roi sources and let me know how it behaves. It should not matter whether the camera is IMX214 or IMX412, but i have not tried with IMX214. If this branch has the issue with IMX214 based on your testing, i can try it.

      Also, if you have not already done so on your branch, please lock voxl-camera-server to use only upper 4 cores, as it significantly improves camera server performance when the load is high (the low level ISP interrupts happen on lower cores only, so this way camera server is not interfering). The reason why i mention this is that you are using an old branch of camera server, so just double checking.

      Alex

    • Sam KileyS

      Starling 2 Max with Ublox F9P Ultralight

      Starling & Starling 2
      • • • Sam Kiley
      6
      0
      Votes
      6
      Posts
      49
      Views

      Eric KatzfeyE

      @Sam-Kiley Yeah, try dpkg --force-all -i <package-name>

    • A

      Adding a new camera sensor

      Video and Image Sensors
      • • • anttukoski
      5
      0
      Votes
      5
      Posts
      30
      Views

      A

      @Alex-Kushleyev I have access to Qualcomm tools and code (for example the chi-cdk code repository) and need to add a MIPI camera. I already got the HW, just replacing the imx678 with some other Sony camera modules. I'm also familiar with how to do the camera driver and tuning for Qualcomm platforms.

      I'm just looking for the build environment for this platform to compile those drivers and if any platform configuration is needed.

    • S

      Integration of Hadron 640R w/ VOXL2 Flight Deck on Sentinel

      Ask your questions right here!
      • • • shawn_ricardo
      5
      0
      Votes
      5
      Posts
      43
      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

    • S

      wlan0 does not exist with wifi add on

      VOXL 2
      • • • swickliff
      4
      0
      Votes
      4
      Posts
      35
      Views

      tomT

      @swickliff Interesting, have you had success with this hardware setup before?

    • A

      How to activate license for hexagon sdk 4.x on qpm3 for building the voxl-px4 docker image

      Support Request Format for Best Results
      • • • ashwin
      3
      0
      Votes
      3
      Posts
      22
      Views

      Eric KatzfeyE

      @ashwin I took a look at the Qualcomm developer site. My installation of Qualcomm Package Manager (QPM) 2.0 no longer works but they now say to use Qualcomm Software Center. So I was able to download and install v1.14.0 of that and by searching for "Hexagon" I was able to find the download link for "Qualcomm(R) Hexagon™ SDK 4.x"

    • I

      Camera specific tuning files and parsing binaries for fine-tuning

      Ask your questions right here!
      • • • IlkkaN
      3
      0
      Votes
      3
      Posts
      49
      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

    • V

      Hires image sensors and FPV goggles

      Video and Image Sensors
      • • • victochen
      3
      0
      Votes
      3
      Posts
      57
      Views

      V

      @Moderator That's exciting, I'll be on the lookout. Thanks!

    • K

      Missing Baro Calibration

      Ask your questions right here!
      • • • Kory4Drone
      2
      0
      Votes
      2
      Posts
      7
      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.

    • J

      Motor stalling/failing - VOXL2 Starling

      Starling & Starling 2
      • • • JoeAR_21
      2
      0
      Votes
      2
      Posts
      15
      Views

      Alex KushleyevA

      Hello @JoeAR_21 ,

      The debug log shows that the transition from the sinusoidal spin-up to closed-loop (based on back-emf) control is not working. There are several safety checks to prevent a bad motor from spinning up and the checks happen during this transition.

      Most likely the motor windings or leads are compromised, either one of the phases is disconnected or there may be a short between two phases.

      If you have a milliohm meter, you could accurately verify the phase resistance. A disconnected phase can be verified using a regular multi-meter by checking pairwise resistance between the 3 phases (should be the same and close to zero (in the range of 200-300 mOhm), depending on the specific motor used).

      While an ESC issue is also possible, however, it is less likely to occur during a crash, unless the ESC was mechanically damaged.

      Alex

    • H

      Starling 2: TOF sensor not recognized by VOXL Portal

      Starling & Starling 2
      • • • hgutier
      2
      0
      Votes
      2
      Posts
      14
      Views

      Alex KushleyevA

      Hello @hgutier ,

      Can you please provide output of voxl-camera-server -l, which will scan all the connected cameras? You can just list the top part, something like this (just an example). Please note that this command will stop the background camera server service, if it's running, which can be restarted using systemctl start voxl-camera-server or just rebooting voxl2.

      voxl-camera-server -l DEBUG: Attempting to open the hal module DEBUG: SUCCESS: Camera module opened on attempt 0 DEBUG: ----------- Number of cameras: 3 DEBUG: Cam idx: 0, Cam slot: 0, Slave Address: 0x0020, Sensor Id: 0x0214 DEBUG: Cam idx: 1, Cam slot: 1, Slave Address: 0x0030, Sensor Id: 0x0356 DEBUG: Cam idx: 2, Cam slot: 2, Slave Address: 0x0034, Sensor Id: 0x0077

      Also, please list the following contents:

      ls /usr/lib/camera/*sensormodule*

      We will just double check that the software is set up correctly to use the TOF module.

      Thank you

      Alex

    • R

      Starling 2 Max GPS Issue

      Ask your questions right here!
      • • • RyanH
      2
      0
      Votes
      2
      Posts
      23
      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.

      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

    • wilkinsafW

      Starling 2 Max Thrust

      Starling & Starling 2
      • • • wilkinsaf
      2
      0
      Votes
      2
      Posts
      24
      Views

      wilkinsafW

      From James (the guy who set the parameter)

      feel free to increase it. Starling 2 Max has a very high power to weight ratio so I artificially calmed it down by limiting throttle

    • kestrelsystemsbpK

      Camera access

      VOXL 2
      • • • kestrelsystemsbp
      2
      0
      Votes
      2
      Posts
      26
      Views

      Eric KatzfeyE

      @kestrelsystemsbp Take a look at Python MPA interface: https://gitlab.com/voxl-public/voxl-sdk/core-libs/libmodal-pipe/-/tree/dev/python?ref_type=heads

    • KnightHawk06K

      voxl-dfs-server source code

      VOXL SDK
      • • • KnightHawk06
      2
      0
      Votes
      2
      Posts
      35
      Views

      tomT

      @KnightHawk06 That is the source, yes.

    • V

      Modifying frames with OpenCV before writing to encoded video file

      Ask your questions right here!
      • • • voxluser12341
      2
      0
      Votes
      2
      Posts
      47
      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?

    • Randy MackayR

      Camera reports quality of 99 but altitude is incorrect vs baro (using ArduPilot-4.7)

      Starling & Starling 2
      • • • Randy Mackay
      1
      0
      Votes
      1
      Posts
      8
      Views

      No one has replied

    • KnightHawk06K

      Training custom yolov8 model

      Ask your questions right here!
      • • • KnightHawk06
      1
      0
      Votes
      1
      Posts
      4
      Views

      No one has replied

    • K

      Low feature indoor only flight

      Ask your questions right here!
      • • • Kory4Drone
      1
      0
      Votes
      1
      Posts
      7
      Views

      No one has replied

    • J

      Consistent Starling VIO failures

      Ask your questions right here!
      • • • JoeAR_21
      1
      0
      Votes
      1
      Posts
      26
      Views

      No one has replied