Skip to content

ESCs, Sensors and Accessories

392 Topics 2.3k Posts

ESCs, image sensors, ToF and tracking cameras, Microhard and cellular modems, power modules, GPS and other add-on boards.

  • RC connection/MH carrier directly to VOXL2, while using Flight core V2

    Unsolved microhard
    7
    0 Votes
    7 Posts
    2k Views
    Eric KatzfeyE
    @Jetson-Nano Here's some example code: https://gitlab.com/voxl-public/voxl-sdk/services/voxl-vision-hub/-/blob/master/src/autopilot_monitor.c?ref_type=heads#L514
  • Fisheye stereo

    Unsolved image-sensor
    10
    0 Votes
    10 Posts
    2k Views
    D
    @Alex-Kushleyev , this is fantastic. Thanks so much!
  • VOXL ESC FPV queries

    Unsolved esc
    32
    0 Votes
    32 Posts
    8k Views
    Alex KushleyevA
    @Jetson-Nano , I am sorry, I don't have this hardware set up right now, so I can't actually test what you are trying to do. I will check with the team regarding who can test it. Alex
  • Using MSU-0161 Hi-res camera with MMSU-M0014 tracking camera.

    Unsolved image-sensor
    4
    0 Votes
    4 Posts
    739 Views
    Alex KushleyevA
    @vaibhavswami , Ov7251 stereo pairs are supported on camera ports J6 or J8 on VOXL2. Since you have already occupied J6 and J7, you can connect one stereo pair to J8 (take note of the orientation of J8, since it's rotated compared to J6, J7). Cameras on J8 would have slot IDs 4 and 5, so you would need to copy the following files: cp /usr/share/modalai/chi-cdk/ov7251-combo/com.qti.sensormodule.ov7251_combo_4.bin /usr/lib/camera/ cp /usr/share/modalai/chi-cdk/ov7251-combo/com.qti.sensormodule.ov7251_combo_5.bin /usr/lib/camera/ (if you need to rotate the camera 180 degrees, there is the "flip" version of the sensormodules too: ov7251-combo-flip) After this you should be able to detect the stereo cameras using voxl-camera-server -l as camera ID 2 and 3 (since 0 and 1 are single ov7251 and IMX412). Finally, you would need to update your camera server config: camera-server-config-helper tracking:ov7251:0 hires:imx412:1 stereo:ov7251:2:3 Try it out and let me know if you run into any issues.. If you wanted to use dual stereo, that use case is very similar to the one described here : https://docs.modalai.com/voxl2-image-sensors/#sdk-10-usage-example but you would need to use non-coax version of IMX412 (M0107) M0084 dual camera Y flex or M0135 dual camera interposer in order to plug in tracking camera M0014 and IMX412 M0107 extension flex M0036 (long) or M0074 (short) for IMX412, Alex
  • Microhard module integration with VOXL2

    Unsolved
    12
    0 Votes
    12 Posts
    2k Views
    VinnyV
    Hi @Jetson-Nano No difference in data rate on any MH board. They are all USB2 rates. Hope that helped!
  • This topic is deleted!

    11
    0 Votes
    11 Posts
    371 Views
  • Mating connector for M0173

    Unsolved image-sensor
    2
    0 Votes
    2 Posts
    584 Views
    VinnyV
    Hi @Peter-Milani Yes, M0173 requires both J6 and J7 to operate as designed. The uCoax connectors are from Hirose as documented here: https://docs.modalai.com/micro-coax-user-guide/
  • Possibilities to use 2 hi-res on VOXL2 J8

    Unsolved image-sensor
    1
    0 Votes
    1 Posts
    511 Views
    No one has replied
  • Microhard PMDDL with Voxl2 mini... need help

    Unsolved microhard
    2
    0 Votes
    2 Posts
    1k Views
    tomT
    @v_v_ramarao I don't think we can answer this, it would likely be worth reaching out to the Microhard support team
  • Issues with multiple vehicles on Microhard network

    Unsolved microhard
    1
    0 Votes
    1 Posts
    1k Views
    No one has replied
  • M0149 camera refocusing and tuning parameters

    Unsolved image-sensor
    57
    1
    0 Votes
    57 Posts
    30k Views
    tomT
    @Aaky You'll have to use a nightly build of the SDK, here's a link to the latest one: https://storage.googleapis.com/platform-nightlies/voxl2/voxl2_SDK_nightly_20241208.tar.gz Keep in mind that these builds are untested so we can't promise any functionality
  • cam does not seem to be alive issue

    Unsolved image-sensor
    26
    2
    0 Votes
    26 Posts
    7k Views
    G
    @Alex-Kushleyev sorry for the delay, this sounds about right. I'm not sure about the 15 fps but we do use raw preview only for our application and no other stream this is my camera conf file: cat /etc/modalai/voxl-camera-server.conf /** * voxl-camera-server Configuration File * * Each camera has configurations for up to 4 HAL3 streams: * - `preview` stream for raw unprocessed images from CV cameras * - `small_video` 720p (ish) h264/h265 compressed for fpv video streaming * - `large_video` 4k (ish) h264/h265 for onboard video recording to disk * - `snapshot` ISP-processed JPG snapshots that get saved to disk * * on QRB5165 platforms (VOXL2 and VOXL2 mini) you can only have 3 of the 4 enabled * * This file is generated from default values by voxl-configure-cameras. * Do not expect arbitrary resolutions to work, the ISP and video compression * pipelines only support very specific resolutions. * * The default video compression mode is cqp or Constant Quantization Parameter * * * */ { "version": 0.1, "cameras": [{ "type": "ov7251", "name": "stereo", "enabled": true, "camera_id": 0, "camera_id_second": 1, "independent_exposure": false, "fps": 30, "en_rotate": false, "en_rotate_second": false, "en_preview": true, "preview_width": 640, "preview_height": 480, "en_raw_preview": true, "ae_mode": "lme_msv", "ae_desired_msv": 60, "exposure_min_us": 20, "exposure_max_us": 33000, "gain_min": 54, "gain_max": 8000, "exposure_soft_min_us": 5000, "ae_filter_alpha": 0.600000023841858, "ae_ignore_fraction": 0.20000000298023224, "ae_slope": 0.05000000074505806, "ae_exposure_period": 1, "ae_gain_period": 1 }, { "type": "imx412", "name": "hires2", "enabled": true, "camera_id": 2, "fps": 3, "en_rotate": true, "en_preview": true, "preview_width": 4056, "preview_height": 3040, "en_raw_preview": false, "en_small_video": false, "small_video_width": 1024, "small_video_height": 768, "small_venc_mode": "h265", "small_venc_br_ctrl": "cqp", "small_venc_Qfixed": 30, "small_venc_Qmin": 15, "small_venc_Qmax": 40, "small_venc_nPframes": 9, "small_venc_mbps": 2, "en_large_video": false, "large_video_width": 2048, "large_video_height": 1536, "large_venc_mode": "h265", "large_venc_br_ctrl": "cqp", "large_venc_Qfixed": 38, "large_venc_Qmin": 15, "large_venc_Qmax": 50, "large_venc_nPframes": 29, "large_venc_mbps": 30, "en_snapshot": false, "en_snapshot_width": 4056, "en_snapshot_height": 3040, "ae_mode": "lme_msv", "ae_desired_msv": 65, "exposure_min_us": 20, "exposure_max_us": 33000, "gain_min": 20, "gain_max": 250, "exposure_soft_min_us": 3000, "ae_filter_alpha": 0.700000023841858, "ae_ignore_fraction": 0.20000000298023224, "ae_slope": 0.05000000074505806, "ae_exposure_period": 1, "ae_gain_period": 0.5 }, { "type": "imx412", "name": "hires", "enabled": true, "camera_id": 3, "fps": 3, "en_preview": true, "preview_width": 4056, "preview_height": 3040, "en_raw_preview": false, "en_small_video": false, "small_video_width": 1024, "small_video_height": 768, "small_venc_mode": "h265", "small_venc_br_ctrl": "cqp", "small_venc_Qfixed": 30, "small_venc_Qmin": 15, "small_venc_Qmax": 40, "small_venc_nPframes": 9, "small_venc_mbps": 2, "en_large_video": false, "large_video_width": 4056, "large_video_height": 3040, "large_venc_mode": "h265", "large_venc_br_ctrl": "cqp", "large_venc_Qfixed": 38, "large_venc_Qmin": 15, "large_venc_Qmax": 50, "large_venc_nPframes": 29, "large_venc_mbps": 30, "en_snapshot": false, "en_snapshot_width": 4056, "en_snapshot_height": 3040, "ae_mode": "lme_msv", "ae_desired_msv": 65, "exposure_min_us": 20, "exposure_max_us": 33000, "gain_min": 20, "gain_max": 250, "exposure_soft_min_us": 3000, "ae_filter_alpha": 0.700000023841858, "ae_ignore_fraction": 0.20000000298023224, "ae_slope": 0.05000000074505806, "ae_exposure_period": 1, "ae_gain_period": 0.5 }, { "type": "ov7251", "name": "tracking", "enabled": true, "camera_id": 4, "fps": 30, "en_rotate": false, "en_preview": true, "preview_width": 640, "preview_height": 480, "en_raw_preview": true, "ae_mode": "lme_msv", "ae_desired_msv": 60, "exposure_min_us": 20, "exposure_max_us": 33000, "gain_min": 54, "gain_max": 8000, "exposure_soft_min_us": 5000, "ae_filter_alpha": 0.600000023841858, "ae_ignore_fraction": 0.20000000298023224, "ae_slope": 0.05000000074505806, "ae_exposure_period": 1, "ae_gain_period": 1 }] } hope this helps
  • ESC Boot mode?

    Unsolved esc
    3
    0 Votes
    3 Posts
    887 Views
    Stefan AmundarainS
    @Alex-Kushleyev this issue was due to poor amperage out of the shore power module. swapped for a different power source and issue was resolved.
  • voxl2 mini, ov9782 + hires on J6

    Unsolved image-sensor
    7
    0 Votes
    7 Posts
    2k Views
    modaltbM
    Hi @Trinadh Can you confirm (using voxl-version) what version you have? e.g. should paste this info: -------------------------------------------------------------------------------- system-image: kernel: -------------------------------------------------------------------------------- hw platform: mach.var: -------------------------------------------------------------------------------- voxl-suite: -------------------------------------------------------------------------------- To confirm, you are using: VOXL2 Mini -> J6 -> M0135 --> JL for ov9282, and JU for IMX214? We don't have a binary setup for IMX214 or ov9782 on J6 upper, which is "ID 1". ls /usr/share/modalai/chi-cdk/ov9782 com.qti.sensormodule.ov9782_0.bin com.qti.sensormodule.ov9782_2.bin com.qti.sensormodule.ov9782_3.bin com.qti.sensormodule.ov9782_4.bin voxl2:/usr/lib/camera$ ls /usr/share/modalai/chi-cdk/imx214 com.qti.sensormodule.imx214_0.bin com.qti.sensormodule.imx214_2.bin com.qti.sensormodule.imx214_3.bin com.qti.sensormodule.imx214_4.bin So it seems like you would need a binary built for imx214 on "slot1", correct?
  • MO173 Vision Sensor specs

    Unsolved voxl2 sensors image-sensor
    2
    0 Votes
    2 Posts
    1k Views
    ModeratorM
    @Jetson-Nano The M0173 kits include the IR filter on all sensors.
  • Switching between cameras in QGC

    Unsolved image-sensor
    3
    0 Votes
    3 Posts
    627 Views
    Eric KatzfeyE
    @LR If you just want to change the camera that is streaming then modify /etc/modalai/voxl-streamer.conf to specify the desired camera. If you want to stream two or more cameras then you need to start a voxl-streamer instance for each one and specify a different port for each one. Then use voxl-mavcam-manager to inform QGC of the availability of the multiple streams. See https://docs.modalai.com/voxl-mavcam-manager/
  • Next Gen Camera Connectors

    Unsolved image-sensor
    7
    0 Votes
    7 Posts
    991 Views
    Alex KushleyevA
    @Jetson-Nano , just to add to what Vinny said and answer your specific question about vibration affecting the micro coax connectors. The difficulty associated with removal is separate from the connector’s robustness under vibration. Once the connectors are inserted (mated), they are difficult to disconnect without applying significant force that might actually break the connector (that is why a tool is required, which correctly separates the connector). This type of stress is very unlikely in typical applications, unless the drone crashes and camera or board is somehow ejected from the vehicle.
  • Connecting the Image Sensor Micro-coax Adapter to a Walksnail Camera

    Unsolved image-sensor
    3
    2
    0 Votes
    3 Posts
    817 Views
    VinnyV
    Hi @TomP Absolutely No. Do Not use our Micro Coax cables or adapter boards with ANY sensor other than provided by ModalAI. We spent months designing this new ecosystem of connectors, pinouts, and adapter boards with a ton of thought and care. Part of that is complete incompatibility with other vendors' products. https://docs.modalai.com/micro-coax-user-guide/ Thanks!
  • IMX 327

    Unsolved image-sensor
    2
    0 Votes
    2 Posts
    458 Views
    Alex KushleyevA
    @wilkinsaf , IMX327 no, but IMX664 maybe I think IMX664 is close to or better than IMX327 for low light, what do you think? Alex
  • Camera advice

    Unsolved image-sensor
    2
    0 Votes
    2 Posts
    458 Views
    Alex KushleyevA
    @Magnus-Eide-Fredriksen Please take a look at the following spectral sensitivity plots for the cameras we support: IMX412: https://www.framos.com/wp-content/uploads/FSM-IMX412_V1B_Datasheet_v1.1c_Brief.pdf IMX678: https://www.framos.com/wp-content/uploads/FSM-IMX678_V1A_Datasheet_v1.0d_Brief.pdf It seems IMX678 is more sensitive at the 940nm (relative sensitivity at 940nm to normal color range). Also, IMX678 by itself has higher sensitivity / lower noise compared to IMX412. We currently sell the following camera, which integrates the Framos module. It is not recommended for new designs, as quantities may be limited. https://www.modalai.com/collections/image-sensors/products/mdk-m0061-2 We are also working on a new version of IMX678 , similar to this IMX412 module : https://www.modalai.com/collections/image-sensors/products/msu-m0161 , but i don't have the ETA. If you wanted to try something that we have now, the best option may be M0061 camera module, but please review the information I linked above. Additionally, you can review the following page for comparison ; https://www.sony-semicon.com/en/products/is/security/security.html -- check the SNR1s (lx) *2 column for the two cameras, which is the "index used to quantitatively evaluate picture quality at low illumination" - basically the lower the number, the less pixel noise in low light conditions and IMX678 has about 4x lower quanity (which may or may not translate to 4x less noise, but something along those lines). Please note the IMX678 has less pixels than IMX412 (8.3 vs 12.3 Mpix) and aspect ratios are different (16:9 vs 4:3). Both IMX412 and IMX678 are supported by our SDK and we can help with testing if needed. Alex