ModalAI Forum
    • Categories
    • Recent
    • Tags
    • Popular
    • Users
    • Groups
    • Register
    • Login
    1. Home
    2. Zachary Lowell 0
    3. Posts
    • Profile
    • Following 0
    • Followers 1
    • Topics 4
    • Posts 231
    • Best 16
    • Controversial 0
    • Groups 1

    Posts made by Zachary Lowell 0

    • RE: GPS for Starling2

      @Nitin-Varma-Vegesna said in GPS for Starling2:

      I got the compass sensor missing error for my Starling2, and I think it's an issue with the GPS. I want to buy a new GPS for the Starling2 ASAP, and I didn't see it on the products on the website. Is there a way for me to do that?

      1 Reply Last reply a day ago Reply

      @Nitin-Varma-Vegesna https://store.3dr.com/mini-gps-ublox-max-m10s/ <-- this is the gps that comes default with the starlings.

      posted in VOXL Accessories
      Zachary Lowell 0Z
      Zachary Lowell 0
    • RE: No detections when running custom YOLOv8 model on voxl-tflite-server

      @svempati said in No detections when running custom YOLOv8 model on voxl-tflite-server:

      I just ran voxl-tflite-server directly from the command line instead of in the background via systemd - aka run voxl-tflite-server directly on the command line. I would recommend NOT quantizing your model as the directions in the train yolov8 do not recommend that.

      Zach

      posted in VOXL 2
      Zachary Lowell 0Z
      Zachary Lowell 0
    • RE: No detections when running custom YOLOv8 model on voxl-tflite-server

      https://gitlab.com/voxl-public/voxl-sdk/services/voxl-tflite-server/-/blob/master/include/tensor_data.h

      These are all the potential data types that voxl-tflite-server is expecting.

      posted in VOXL 2
      Zachary Lowell 0Z
      Zachary Lowell 0
    • RE: No detections when running custom YOLOv8 model on voxl-tflite-server

      @svempati said in No detections when running custom YOLOv8 model on voxl-tflite-server:

      "labels": "/usr/bin/dnn/yolov8_labels.txt",

      So running your model we get the following errors via voxl-tflite-server:

      Error in TensorData<float>: should not reach here
      Error in TensorData<float>: should not reach here
      Error in TensorData<float>: should not reach here
      Error in TensorData<float>: should not reach here
      Error in TensorData<float>: should not reach here
      Error in TensorData<float>: should not reach here
      Error in TensorData<float>: should not reach here
      Error in TensorData<float>: should not reach here
      

      Which means there is an issue in your model itself and most likely means you ran into an issue during the build process. Specifically this means that is a model issue, not a labels file issue. Your .tflite model has an output tensor with a different data type than what voxl-tflite-server expects

      The code itself shows the error when you hit this case statement:

      // Gets the uint8_t tensor data pointer
      template <>
      inline uint8_t *TensorData(TfLiteTensor *tensor, int batch_index)
      {
      int nelems = 1;

      for (int i = 1; i < tensor->dims->size; i++)
      {
          nelems *= tensor->dims->data[i];
      }
      
      switch (tensor->type)
      {
      case kTfLiteUInt8:
          return tensor->data.uint8 + nelems * batch_index;
      default:
          fprintf(stderr, "Error in %s: should not reach here\n",
                  __FUNCTION__);
      }
      
      return nullptr;
      

      }

      Which means the output tensor doesnt match the expected output in this header file. Please look into your model.

      zach

      posted in VOXL 2
      Zachary Lowell 0Z
      Zachary Lowell 0
    • RE: M0201 gimbal passthrough pinout

      @jonathankampia said in M0201 gimbal passthrough pinout:

      M0201

      https://forum.modalai.com/topic/4735/m0201-m0153-j2-pinout/3

      Please refer to this post for the pniout guide on the m0201

      posted in Ask your questions right here!
      Zachary Lowell 0Z
      Zachary Lowell 0
    • RE: No detections when running custom YOLOv8 model on voxl-tflite-server

      Hello @svempati can you paste your yolov8_labels and tflite file and I can test it out on my end?

      To confirm - you followed the instructions in this gitlab repository: https://gitlab.com/voxl-public/support/voxl-train-yolov8

      Zach

      posted in VOXL 2
      Zachary Lowell 0Z
      Zachary Lowell 0
    • RE: Ros2 Humble on Voxl2

      Confirmed - can run the dds with humble running in the docker container:

      voxl2 (M0054):~$ apt-get install voxl-microdds-agent
      Reading package lists... Done
      Building dependency tree
      Reading state information... Done
      The following NEW packages will be installed:
        voxl-microdds-agent
      0 upgraded, 1 newly installed, 0 to remove and 40 not upgraded.
      Need to get 0 B/4874 kB of archives.
      After this operation, 0 B of additional disk space will be used.
      Get:1 file:/data/voxl-suite-offline-packages ./ voxl-microdds-agent 3.0.0-0 [4874 kB]
      debconf: delaying package configuration, since apt-utils is not installed
      Selecting previously unselected package voxl-microdds-agent.
      (Reading database ... 104493 files and directories currently installed.)
      Preparing to unpack .../voxl-microdds-agent_3.0.0-0_arm64.deb ...
      Unpacking voxl-microdds-agent (3.0.0-0) ...
      Setting up voxl-microdds-agent (3.0.0-0) ...
      voxl2 (M0054):~$ systemctl start voxl-microdds-agent
      voxl2 (M0054):~$ systemctl status voxl-microdds-agent
      ● voxl-microdds-agent.service - voxl-microdds-agent
         Loaded: loaded (/usr/bin/MicroXRCEAgent; disabled; vendor preset: enabled)
         Active: active (running) since Tue 2025-11-25 15:13:37 UTC; 14s ago
       Main PID: 3370 (MicroXRCEAgent)
          Tasks: 28 (limit: 4915)
         CGroup: /system.slice/voxl-microdds-agent.service
                 └─3370 /usr/bin/MicroXRCEAgent udp4 -p 8888
      
      Nov 25 15:13:38 m0054 MicroXRCEAgent[3370]: [1764083618.308177] info     | ProxyClient.cpp    | create_datawriter        | datawriter created     | client_key: 0x00000001, datawriter_id: 0x0DF(5), publisher_id: 0x0DF(3)
      Nov 25 15:13:38 m0054 MicroXRCEAgent[3370]: [1764083618.308829] info     | ProxyClient.cpp    | create_topic             | topic created          | client_key: 0x00000001, topic_id: 0x0E6(2), participant_id: 0x001(1)
      Nov 25 15:13:38 m0054 MicroXRCEAgent[3370]: [1764083618.308994] info     | ProxyClient.cpp    | create_publisher         | publisher created      | client_key: 0x00000001, publisher_id: 0x0E6(3), participant_id: 0x001(1)
      Nov 25 15:13:38 m0054 MicroXRCEAgent[3370]: [1764083618.309525] info     | ProxyClient.cpp    | create_datawriter        | datawriter created     | client_key: 0x00000001, datawriter_id: 0x0E6(5), publisher_id: 0x0E6(3)
      Nov 25 15:13:38 m0054 MicroXRCEAgent[3370]: [1764083618.310013] info     | ProxyClient.cpp    | create_topic             | topic created          | client_key: 0x00000001, topic_id: 0x0EB(2), participant_id: 0x001(1)
      Nov 25 15:13:38 m0054 MicroXRCEAgent[3370]: [1764083618.310133] info     | ProxyClient.cpp    | create_publisher         | publisher created      | client_key: 0x00000001, publisher_id: 0x0EB(3), participant_id: 0x001(1)
      Nov 25 15:13:38 m0054 MicroXRCEAgent[3370]: [1764083618.310468] info     | ProxyClient.cpp    | create_datawriter        | datawriter created     | client_key: 0x00000001, datawriter_id: 0x0EB(5), publisher_id: 0x0EB(3)
      Nov 25 15:13:38 m0054 MicroXRCEAgent[3370]: [1764083618.310981] info     | ProxyClient.cpp    | create_topic             | topic created          | client_key: 0x00000001, topic_id: 0x0F0(2), participant_id: 0x001(1)
      Nov 25 15:13:38 m0054 MicroXRCEAgent[3370]: [1764083618.311145] info     | ProxyClient.cpp    | create_publisher         | publisher created      | client_key: 0x00000001, publisher_id: 0x0F0(3), participant_id: 0x001(1)
      Nov 25 15:13:38 m0054 MicroXRCEAgent[3370]: [1764083618.311488] info     | ProxyClient.cpp    | create_datawriter        | datawriter created     | client_key: 0x00000001, datawriter_id: 0x0F0(5), publisher_id: 0x0F0(3)
      voxl2 (M0054):~$ docker images
      REPOSITORY                               TAG        IMAGE ID       CREATED       SIZE
      ros2-image   ed11b766   1040efe3dc33   2 weeks ago   2.33GB
      voxl2 (M0054):~$ docker run -it --rm --net=host --ipc=host ros2-image /bin/bash
      root@m0054:/# cd
      root@m0054:~# ls
      root@m0054:~# source /opt/ros/humble/setup.bash
      root@m0054:~# ros2 topic list
      /fmu/in/obstacle_distance
      /fmu/in/offboard_control_mode
      /fmu/in/onboard_computer_status
      /fmu/in/sensor_optical_flow
      /fmu/in/telemetry_status
      /fmu/in/trajectory_setpoint
      /fmu/in/vehicle_attitude_setpoint
      /fmu/in/vehicle_command
      /fmu/in/vehicle_mocap_odometry
      /fmu/in/vehicle_rates_setpoint
      /fmu/in/vehicle_trajectory_bezier
      /fmu/in/vehicle_trajectory_waypoint
      /fmu/in/vehicle_visual_odometry
      /fmu/out/battery_status
      /fmu/out/failsafe_flags
      /fmu/out/position_setpoint_triplet
      /fmu/out/sensor_combined
      /fmu/out/timesync_status
      /fmu/out/vehicle_attitude
      /fmu/out/vehicle_control_mode
      /fmu/out/vehicle_local_position
      /fmu/out/vehicle_odometry
      /fmu/out/vehicle_status
      /parameter_events
      /rosout
      
      posted in ROS
      Zachary Lowell 0Z
      Zachary Lowell 0
    • RE: Ros2 Humble on Voxl2

      @jmltt said in Ros2 Humble on Voxl2:

      Are there instructions on installing docker on target? The modalai guide (https://docs.modalai.com/docker-on-voxl/) references to just use the docker instructions to install via apt, but the docker install instructions linked to require an ubuntu o.s. newer than 20.04 so I wasn't sure if it would work.

      @jmltt please find answers for your questions below:

      1. Are there instructions on installing docker on target? The modalai guide (https://docs.modalai.com/docker-on-voxl/) references to just use the docker instructions to install via apt, but the docker install instructions linked to require an ubuntu o.s. newer than 20.04 so I wasn't sure if it would work. --> I always just use this file to install docker on target on the voxl2 (works for any ubuntu device as well btw): https://github.com/docker/docker-install/blob/master/install.sh

      2. In switching to ros2 humble onboard the voxl2 do I need to update the dds client module and rebuild voxl-px4 and rebuild the voxl-microdds-agent as well? I'm assuming that if they're built to work with ros2 foxy they're going to be dependent on older versions of fast-dds than what humble would be using and might not be compatible -> No you do not need to reinstall the fast dds with a different instance. Keep in mind the DDS is ros2 agnostic and runs as the middleware BUT I will test this out this morning.

      3. For examples the best I can do is show you what I do when running something like ros2 docker containers:

      E.G:

                      -v /usr/include/modal_pipe_common.h:/usr/include/modal_pipe_common.h \
                      -v /usr/include/modal_pipe_client.h:/usr/include/modal_pipe_client.h \
                      -v /usr/include/c_library_v2:/usr/include/c_library_v2 \
                      -v /run/mpa:/run/mpa \
                      -v /usr/bin/voxl-list-pipes:/usr/bin/voxl-list-pipes \
                      -v /usr/include/voxl_cutils.h:/usr/include/voxl_cutils.h \
                      -v /usr/include/cJSON.h:/usr/include/cJSON.h \
                      -v /usr/include/modal_pipe_deprecated.h:/usr/include/modal_pipe_deprecated.h \
                      -v /usr/include/modal_pipe_interfaces.h:/usr/include/modal_pipe_interfaces.h \
                      -v /usr/include/modal_pipe_common.h:/usr/include/modal_pipe_common.h \
                      -v /usr/include/modal_pipe_client.h:/usr/include/modal_pipe_client.h \
                      -v /usr/include/modal_start_stop.h:/usr/include/modal_start_stop.h \
                      -v /usr/lib64/libvoxl_cutils.so:/usr/lib/libvoxl_cutils.so \
                      -v /usr/lib64/libmodal_json.so:/usr/lib/libmodal_json.so \
                      -v /usr/lib64/libmodal_pipe.so:/usr/lib/libmodal_pipe.so \
      		-v /usr/lib/libgbm.so:/usr/lib/aarch64-linux-gnu/libgbm.so \
                      -v /tmp:/tmp \
                      -v /etc/modalai:/etc/modalai \
                      -v /dev:/host/dev"
      
                  docker run --rm -it \
                      --privileged \
                      --net=host \
                      --ipc=host \
                      ${VOLUMES} \
                      -e ROS_DOMAIN_ID=$ROS_DOMAIN_ID \
                      --entrypoint "/bin/bash" \
                      DOCKER_IMAGE_NAME_AND_TAG -c /bin/bash
      
      posted in ROS
      Zachary Lowell 0Z
      Zachary Lowell 0
    • RE: Issues with custom Yolov8

      https://gitlab.com/voxl-public/support/voxl-train-yolov8

      I am assuming you followed this instruction set for training your model?

      posted in VOXL 2 Mini
      Zachary Lowell 0Z
      Zachary Lowell 0
    • RE: Issues with custom Yolov8

      @jeremyrbrown5 if you paste your model and upload it here i can download it and help troubleshoot the issue you are running into

      posted in VOXL 2 Mini
      Zachary Lowell 0Z
      Zachary Lowell 0
    • RE: Starling 2 Max for indoor

      @Jakub-Tvrz said in Starling 2 Max for indoor:

      We haven't bought anything yet, but we are deciding what will be the best for our warehouse inventory application. Of course, we considered the ToF option. But you still say: "however, it is not... great" - does that mean that Starling 2 is better for our application? Or does Dual vs Triple camera for Visual Inertial Odometry also have an impact?

      Reply

      Depends fully on your use case. I will say that PX4's instance of obstacle avoidance is not fantastic, but it is better than nothing. In my opinion I would go w/ the model that has all the bells and whistles in case you need the hardware and decide to develop your own collision avoidance or somethign of that nature.

      posted in Starling & Starling 2
      Zachary Lowell 0Z
      Zachary Lowell 0
    • RE: Issues with custom Yolov8

      @jeremyrbrown5 said in Issues with custom Yolov8:

      @Zachary-Lowell-0 we are using the yolo predict function inside the voxl-docker. I didn't know about voxl-inspect-detections, so I'll try that.

      Reply

      If you are running your model directly on voxl-tflite-server then you can leverage the voxl sdk to detect any outputs from the model. That SDK is what is showing the image on voxl-portal. My guess is since this images arent showing on voxl-portal then you are having an issue during startup.

      Can you run voxl-tflite-server directly on the command line and paste the output in here?

      posted in VOXL 2 Mini
      Zachary Lowell 0Z
      Zachary Lowell 0
    • RE: Issues with custom Yolov8

      @jeremyrbrown5 I will plan on testing this out tomorrow - how are you validatign that it is detecting the rpis? Are you running voxl-inspect-detections tflite_data -a?

      posted in VOXL 2 Mini
      Zachary Lowell 0Z
      Zachary Lowell 0
    • RE: VOXL Mapper and VOA Support on Starling 2 Max (C28 Configuration)

      You will need the SKU supporting the TOF to accurately run current versions of voxl-mapper and VOA.

      Zach

      posted in Ask your questions right here!
      Zachary Lowell 0Z
      Zachary Lowell 0
    • RE: External monitor

      The system has an HDMI out so you can plug it into an external monitor yes:

      https://docs.modalai.com/vrx-ground-unit-developer-guide/

      posted in Ask your questions right here!
      Zachary Lowell 0Z
      Zachary Lowell 0
    • RE: Adding yolo v8 to tflite server

      @Ido-Goldstein to run yolov8 run voxl-configure-tflite-server and then when it prompts you to select your model, you can select yolov8. YOLOV11 is also currently supported however is still CPU bound so I would recommend using yolov8 for GPU processing

      posted in Ask your questions right here!
      Zachary Lowell 0Z
      Zachary Lowell 0
    • RE: Starling 2 Max for indoor

      @Jakub-Tvrz said in Starling 2 Max for indoor:

      ● Next Generation PMD ToF image sensor for obstacle avoidance and 3D mapping

      @Jakub-Tvrz if you purchased the starling 2 Max version that comes with the PMD TOF then you will be capable of running PX4's instance of visual obstacle avoidance - however, it is not... great.

      ● Next Generation PMD ToF image sensor for obstacle avoidance and 3D mapping

      https://www.modalai.com/collections/all/products/starling-2-max?variant=49129974169904 <-- this the version you will had to buy for the TOF sensor

      posted in Starling & Starling 2
      Zachary Lowell 0Z
      Zachary Lowell 0
    • RE: Drone Not Stationary in Hover Mode

      @taiwohazeez unsure if I am following this "hover mode" are you attempting to put the drone into HOLD mode? If so HOLD mode on base PX4 isnt supported without a GPS hold, so if you are flying indoors, there is a high likely hood that the GPS is relaying poor data causing the drone to drift a bit. I would recommend in QGC to turn off the GPS via the parameters and instead of going into hold mode, just staying in position mode while letting go of the sticks and see if it holds then

      Zach

      posted in FPV Drones
      Zachary Lowell 0Z
      Zachary Lowell 0
    • RE: Update UDP Port for the voxl-mavlink-server

      @all - you can just change the SYS_ID of each drone and this should solve the port confliction.

      posted in VOXL SDK
      Zachary Lowell 0Z
      Zachary Lowell 0
    • RE: Apriltag relocalization not relocalizing?

      @tomverstappen I am unable to recreate the issue with a starling running 1.5.0 - the output from voxl-vision-hub shows the relative coordinate frame from the tag relative to the camera and was able to get the drone to offset correctly.

      Are there any logs you can paste in here or video?

      posted in AprilTag Relocalization
      Zachary Lowell 0Z
      Zachary Lowell 0